- 相關推薦
單片機軟硬件聯合仿真解決方案
本文介紹一種嵌入式系統仿真方法,通過一種特殊設計的指令集仿真器ISS將軟件調試器軟件Keil uVision2和硬件語言仿真器軟件Modelsim連接起來,實現了軟件和硬件的同步仿真。
縮略詞解釋:
BFM:總線功能模塊。在HDL硬件語言仿真中,BFM完成抽象描述數據和具體的時序信號之間的轉換。
PLI:Verilog編程語言接口,是C語言模塊和Verilog語言模塊之間交換數據的接口定義。
TCL:字面意思是工具命令語言,是一種解釋執行語言,流行EDA軟件一般都集成有TCL。使用TCL用戶可以編寫控制EDA工具的腳本程序,實現工具操作自動化。
ISS:CPU指令集仿真器,可以執行CPU的機器碼。
TFTP:簡單文件傳輸協議,Windows的tftp.exe既是該協議的客戶端實現。
SMART MEDIA:一種存儲卡,常用于數碼相機、MP3。
DMA:直接內存訪問。用于外部設備之間高速數據轉移。
MAC:媒體接入控制器。本文中是指網卡芯片。
前言
傳統的嵌入式系統中,設計周期、硬件和軟件的開發是分開進行的,并在硬件完成后才將系統集成在一起,很多情況下,硬件完成后才開始進行實時軟件和整體調試。軟硬件聯合仿真是一種在物理原型可用前,能盡早開始調試程序的技術。
軟硬件聯合仿真有可能使軟件設計工程師在設計早期著手調試,而采用傳統的方法,設計工程師直到硬件設計完成才能進行除錯處理。有些軟件可在沒有硬件支持的情況下完成任務的編碼,如不涉及到硬件的算法。與硬件相互作用的編碼在獲得硬件之前編寫,但只有在硬件上運行后,才能真正對編碼進行調試。通過采用軟硬件聯合仿真技術,可在設計早期開始這一設計調試過程。由于軟件的開發通常在系統開發的后段完成,在設計周期中較早的開始調試有可能將使這一項目提早完成,該技術會降低首次將硬件和軟件連接在一起時出現意外而致使項目延期完成所造成的風險。
在取得物理原型前,采用軟硬件聯合仿真技術對硬件和軟件之間的接口進行驗證,將使你不會花太多的時間在后期系統調試上。當你確實拿到物理原型開始在上面跑軟件的時候,你會發現經過測試的軟件部分將會正常工作,這會節省項目后期的大量時間及努力。
軟硬件聯合仿真系統由一個硬件執行環境和一個軟件執行環境組成,通常軟件環境和硬件環境都有自己的除錯和控制界面,軟件通過一系列由處理器啟動的總線周期與硬件的交互作用。本文以一個Mini Web卡的開發介紹一種軟硬件聯合仿真系統。
該方案的核心是采用一個51單片機仿真引擎GoldBull ISS51(以下簡稱ISS51),ISS51是51單片機開發環境Keil uVision2的一個插件,ISS51具有連接Keil和硬件仿真環境Modelsim的接口,可以實現軟硬件同步仿真。在該系統中,Keil作為軟件調試界面,Modelsim作為硬件仿真和調試界面,ISS51負責軟件執行、監控軟件斷點、單步執行、內存和寄存器數據返回給Keil、CPU總線時序產生和捕獲、內部功能模塊(如定時器,串口)的運行等功能。
Mini Web卡介紹
Mini Web卡是一個運行在單片機上的Web服務器,提供網口連接,有大容量文件系統,提供TFTP和HTTP服務。盡管軟件系統比較復雜,但優化編譯后,執行代碼還不足25K,為后續升級留下了足夠空間。
51CPU采用SST89系列,這種CPU具有ISP功能,可以通過RS232串口,直接將目標碼下載到CPU。
DMA控制邏輯是一個可編程邏輯器件,采用的是ALTERA的CPLD EPM240,主要功能是實現外圍器件之間的DMA傳遞。因為51CPU進行IO訪問是很低效的,需要24個時鐘周期才能進行一次IO訪問,在外圍設備之間轉移數據則需要更多的時鐘周期,使用DMA控制邏輯可以達到3個時鐘周期就能轉移一個字節。本系統中處理多種網絡協議,需要大量報文收發和文件系統訪問,采用DMA可以極大地提高51單片機的數據處理速度。DMA通道主要有MAC芯片與RAM之間的數據塊轉移,SMART MEDIA和RAM之間的數據塊轉移。
網卡芯片采用的是AX88796,主要的優點是可以和51CPU方便地接口;支持100M以太網,速度高;有較大的接收報文緩存,能夠平滑網絡流量,減少因51CPU處理速度慢導致的報文丟棄和重發。
SMART MEDIA是一個移動存儲卡,主要用于存儲文件,Mini Web卡支持8M到256M的SMD卡。
文件系統是Mini Web卡的新開發模塊,文件系統的測試主要通過TFTP來進行,為此Mini Web卡上的TFTP服務程序進行了特殊設計,支持格式化SMART MEDIA,獲取剩余空間,獲取文件名列表,上傳、下載和刪除文件。
軟硬件聯合仿真的必要性:
Mini Web卡軟件模塊多,軟件開發風險較大。軟件對硬件的依賴較強,FLASH存儲器的訪問驅動、網卡驅動、DMA驅動,需要軟硬件協同調試。
文件系統的開發,在仿真環境下更容易和快捷。比如在仿真結束時,可以將SMART MEDIA仿真模型中的數據倒換到磁盤文件中,在仿真開始時,將磁盤文件中的數據加載到SMART MEDIA仿真模型中,在定位文件系統的問題時,這一個功能很有用。
采用軟硬件聯合仿真,便于系統前期設計。51單片機的外部RAM訪問效率較低,內存拷貝、外部器件之間的數據塊轉移很浪費時間。將大量數據的拷貝操作或數據塊校驗、比較操作在CPLD內實現,可以大大改進51單片機處理數據的能力。通過軟硬件聯合仿真,可以評估CPLD處理數據對性能的改進。
Mini Web卡軟硬件聯合仿真系統:
軟硬件聯合仿真主要解決的問題是系統功能設計與驗證
【單片機軟硬件聯合仿真解決方案】相關文章:
聯合教育實驗中校校聯合新模式研究論文12-02
一種基于ISS的軟硬件協同驗證環境03-07
單片機的參考文獻05-27
論聯合庫存控制12-08
AVR單片機GCC編程03-18
ABC對輸入MV文件的解決方案11-20
企業留住人才的系統解決方案03-24