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