劉彤
(湖南鐵道職業技術學院湖南株洲412001)
基于EDA技術的新型PLC微控制器的研究與設計
劉彤
(湖南鐵道職業技術學院湖南株洲412001)
近年來國產PLC技術得到了快速發展,但缺乏核心技術,制約著國產PLC技術的發展和提高。本文研究基于EDA技術,以FPGA為核心的硬件平臺為開發對象,Veri1og硬件描述語言靈活設計的PLC微控制器,建立了以FPGA為主控芯片的PLC微控制器的硬件平臺;確定存儲器用戶內存和應用內存的地址分配,確定軟元件地址的尋址方式和計算方法。針對指令系統中的定時、計數器指令的特殊性,研究和設計多個定時、計數器實現方法和實現單元,通過仿真進行功能驗證。目前國內外并不多見,還處在起步研究階段,具有較好的學術研究價值和應用價值。
可編程序控制器;EDA;FPGA;微控制器;Veri1o
目前機電一體化設備控制系統、現場控制總線和工業控制計算機為核心的分布式控制系統等幾乎全部都是國外進口PLC產品,價格高,技術壟斷,此外,目前的小型PLC難以將智能控制算法嵌入到PLC中[1_3]。因此本文研究基于EDA技術,以FPGA為核心的硬件平臺為開發對象,Veri1og硬件描述語言靈活設計的PLC微控制器。
1.1PLC的基本組成
其基本構成主要有地址產生單元、指令寄存器單元、算術邏輯運算單元、邏輯指令運算單元、輸入/輸出單元、定時/計數單元、總線仲裁器、F1ash、Sram控制器和主控制器單元等[4_5]。如圖1所示。
1.2PLC微控制器工作流程
微控制器的工作流程如圖2所示。PLC微控制器上電運行前,根據外部開關的位置可以選擇工作方式,可以在F1ashROM中運行程序,也可以選擇RAM中運行程序,還可以進入編程模式進行程序下載[6]。
數據通道包括運算單元(完成算術、邏輯運算等)和其它特定功能單元,是數據在系統的運算單元、特定功能單元和內部寄存器之間移動,以及移動數據進出外部系統的通道。它由地址生成單元、算術邏輯運算器單元、指令寄存器單元、邏輯指令運算器單元、sram控制器單元、nor_f1ash控制器單元、輸入輸出單元和總線仲裁單元8個部分構成。
2.1主控制器單元設計
主控制器單元是PLC微控制器的重要單元,對用戶指令編譯和執行的所有時序都是由主控制器單元決定。主控制器單元根據要執行的指令按照一定的時序,通過數據通道把數據傳送到目的地。
2.1.1主控制器單元功能設計
主控制器單元向數據通道中的模塊提供控制信號,在統一時鐘的驅動下,決定數據在數據通道中的傳輸。主控制器單元的指令譯碼控制采用有限狀態機實現。
主控制器單元根據指令的種類進行譯碼操作。在基本指令當中又分為3種類型,第一種是LD、LOR類型指令;第二種是其它無操作數指令;第三種是其它單操作數指令。狀態機主要有4個階段:掃描輸入、取指令、譯碼和執行。取指令階段是從存儲器中得到指令,譯碼階段是編譯指令、控制數據通道和裝載寄存器,執行是產生指令的結果會寫存儲器相應區域。掃描輸入階段需要4個時鐘周期,讀取兩個輸入單元的狀態,并寫入存儲器的X輸入映像區。取指令階段需要4個時鐘周期,兩個時鐘周期用來裝載地址寄存器,另兩個時鐘周期用來從存儲器中得到給定地址的數據字,實體結構如圖3所示。

圖1 PLC微控制器結構框圖

圖2 PLC微控制器工作流程圖

圖3 控制單元實體結構圖
2.1.2主控制器單元譯碼和執行流程
指令編譯流程圖如圖4所示。

圖4 指令編譯流程圖
輸入端子分為兩組,每組32個,共64個輸入端子。輸入單元的狀態存儲由兩個單元的32位存儲器組成,綜合后實際是深度為2,寬度為32的SRAM存儲器。
2.3Nor_flash控制器單元
實體結構如圖5所示。

圖5 nor f1ash控制單元實體結構圖
通過ce、oe和we三根控制信號,就能完成讀數據過程。如果是在寫操作過程,必須寫入命令字,返回讀模式。ce、oe 和we是與總線控制器相連接的f1ash控制信號,datain、dataout和addressin是與總線控制器相連接的數據輸入輸出和地址總線。f_ce、f_oe和f_we信號直接連接外部f1ash芯片的讀寫片選信號,data和addressout直接連接外部f1ash芯片的數據和地址總線。
2.4算術邏輯運算器單元與指令寄存器單元
運算器是數據加工和處理部件,是中央處理器的重要組成部分。
PLC的算術邏輯器運算單元包括數據鎖存器A、B、算術邏輯運算單元(ALU)和累加器(ACC)等3個部分。指令寄存器是用來存放當前正在執行的指令。復位后,指令寄存器被清為零。
在分析PLC結構和工作原理的情況下,以FPGA為載體,利用現代EDA技術,借鑒RISC微處理器的工作原理,研究設計PLC新型微控制器及其指令系統。采用Veri1og_HDL語言編寫微控制器系統程序,實現PLC微控制器功能。
[1]馮進玫,丁群,孫曉軍,等.利用VHDL語言實現Hopfie1d神經網絡運算[J].電測與儀表,2005,42(3):42_44.
[2]黎娜,蔡啟仲.基于ARM7與FPGA組成的可編程控制器[J].微計算機信息,2008,24(10):44_46.
[3]郭毅鋒,蔡啟仲.基于ARM7的PLC手持編程器通訊接口設計[J].微計算機信息,2008,24(14):139_140,255.
[4]程世威.PLC控制系統故障的維修方法分析[J].科技與企業,2015(11):77.
[5]趙玉友.PLC控制系統干擾因素與應對措施研究[J].信息通訊,2015(4):92_93.
[6]陳正茂.對PLC控制系統可靠性分析[J].自動化控制,2015(7):168.
Research and deslgn of neW tyPe mlcro-controller of PLC based on EDA technology
LIU Tong
(Hunan Railway Professional Technology College,Zhuzhou 412001,China)
In recent years,the domestic PLC techno1ogy has been rapid deve1opment,but the 1ack of core techno1ogy,restricts the deve1opment of domestic PLC techno1ogy and improve the.This study is based on the EDA techno1ogy,taking FPGA as the core hardware p1atform as the deve1opment object,the Veri1og hardware description 1anguage and f1exib1e design of PLC microcontro11er,bui1t with the FPGA as the main contro1 chip PLC micro contro11er hardware p1atformjdetermine the address a11ocation of memory the user memory and app1ication memory,determining the addressing mode and ca1cu1ation method of soft e1ement address.According to the particu1arity of the command system timer,counter instruction,research and design of mu1ti timer,counter imp1ementation methods and unit,the functiona1 verification by simu1ation.At home and abroad are rare,is sti11 in the initia1 stage of research,has good academic va1ue and app1ication va1ue.
PLC;EDA;FPGA;micro contro11er;Veri1og
TN302
A
1674_6236(2016)10_0177_03
2015_06_15稿件編號:201506152
2014年湖南省教育科學研究項目(14C0758)
劉彤(1972—),男,湖南株洲人,碩士,講師。研究方向:控制理論與控制工程。