AVR IP核復(fù)用的FSPLC微處理器SOC設(shè)計
圖3 AVRIP復(fù)用測試平臺Testbench框圖
4.1 SOC硬件結(jié)構(gòu)
根據(jù)FSPLCSOC系統(tǒng)功能定義,設(shè)計完成FSPLC微處理器硬件結(jié)構(gòu),如圖4所示。
圖4 FSPLCSOC硬件結(jié)構(gòu)框圖
FSPLCSOC由AT90S1200、布爾處理器BP、存儲器位接口MBI、邏輯處理器LP,CAN總線1。0接口CBI、底板總線接口BBI等6個模塊組成。AT90S1200模塊是SOC的核心,實現(xiàn)PLC指令的執(zhí)行;BP模塊由兩個位累加器和一個位邏輯堆淺BLS組成,該結(jié)構(gòu)可以有效處理IEC61131-3(國際電工委員會制訂的基于Windows編程語言標準)PLC指令表語句中復(fù)雜的嵌套邏輯運算,使運行頻率最高的位指令達到最大的執(zhí)行速度;存儲器位接口模塊由一個存儲器位尋址接口邏輯和一個8選1選擇器組成,為布爾處理器和數(shù)據(jù)存儲器之間的位訪間接口;CAN總線1。0接口CBI模塊和外部基于Atmega8515的USB-CAN適配器相連,通過此適配器FSPLC可以和其他帶有CAN接口的PLC實現(xiàn)CAN通訊;通過底板總線接口BBI模塊可以在FSPLC片外擴展模塊,最多可以達到8個,包括I/0擴展模塊、AID模塊、D/A模塊、計數(shù)模塊等。其中AT90S1200,MBI,LP,CBI,BBI模塊通過內(nèi)部總線連接,BP通過MBI模塊轉(zhuǎn)換實現(xiàn)和其他模塊的連接。
4.2 FSPLCSOC仿真、綜合、驗證
由于SOC設(shè)計是一種面向IP核集成的設(shè)計,整合后的SOC模塊同第三方IP核復(fù)用一樣需要進行模塊的仿真、綜合和驗證。FSPLC SOC同復(fù)用AT90SI200核一樣借助ModelSim進行功能仿真和驗證后時序仿真,借助Synplify Pro進行綜合。
下面具體描述FSPLCSOC的驗證,SOC設(shè)計中包含了系統(tǒng)設(shè)計和模塊設(shè)計,因此SOC驗證一般包含了模塊驗證、芯片驗證和系統(tǒng)驗證三個部分。由于FSPLCSOC涉及到的主要是數(shù)字IP核,文中采用Altera NioslI開發(fā)板作為設(shè)計的驗證平臺,該開發(fā)板帶有一個20多萬門的Altera EP20K200EFC484-2的FPGA芯片、撥碼開關(guān)、數(shù)碼顯示器等,用一個實際PLC應(yīng)用程序在此開發(fā)板上對FSPLCSOC進行了可行性驗證,同時通過對AVR編譯器Avral。0的編譯代碼變量中增加PLC指令代碼,使之能夠?qū)L(:指令進行編譯。圖5,圖6分別為PLC控制程序的梯形圖及其匯編程序。
圖5 PLC控制程序的梯形圖
開發(fā)板的撥碼開關(guān)SWl的1、2、3、4來模擬上述開關(guān)的閉合,觀察數(shù)碼顯示器Dl數(shù)碼段明暗,驗證設(shè)計的可行性。FSPLCSOC在Altera Nios開發(fā)板的FPGA芯片上進行了可行性驗證,獲得了理想的運行效果:在33MHz晶振下,執(zhí)行基本邏輯指令速度為0。09μ/條,達到了國際上大中型PLC的處理速度。
圖6 PSPLC匯編程序
5 結(jié)束語
目前IC產(chǎn)業(yè)中,SOC已成為最主要的集成電路設(shè)計方法8位RISC微處理器芯片設(shè)計正在向SOC化發(fā)展,通過IP核復(fù)用方法以縮短周期、降低成本、提高效率。文中基于IP核復(fù)用和SOC技術(shù)借助ModelSim、Synplify Pro、QuartusⅡ等EDA軟件設(shè)計了擁有自主知識產(chǎn)權(quán)的專用PLC微處理器SOC模塊FSPLC,在復(fù)用了第三方AVRAT90SI200IP核基礎(chǔ)上集成了自行設(shè)計的LP、BP、MBI、CBI、BBI等模塊,具有快速處理PLC梯形圖程序、快速處理IL語句表中復(fù)雜的嵌套邏輯運算、PLC之間CAN總線通訊等優(yōu)點。最后采用Altera NiosII作為驗證平臺,對實際的PLC應(yīng)用程序做了可行性驗證,獲得了理想的效果。
評論