基于單片機軟硬件聯(lián)合仿真解決方案
縮略詞解釋:
本文引用地址:http://m.butianyuan.cn/article/173277.htmBFM:總線功能模塊。在HDL硬件語言仿真中,BFM完成抽象描述數(shù)據(jù)和具體的時序信號之間的轉(zhuǎn)換。
PLI:Verilog編程語言接口,是C語言模塊和Verilog語言模塊之間交換數(shù)據(jù)的接口定義。
TCL:字面意思是工具命令語言,是一種解釋執(zhí)行語言,流行EDA軟件一般都集成有TCL。使用TCL用戶可以編寫控制EDA工具的腳本程序,實現(xiàn)工具操作自動化。
ISS:CPU指令集仿真器,可以執(zhí)行CPU的機器碼。
TFTP:簡單文件傳輸協(xié)議,Windows的tftp.exe既是該協(xié)議的客戶端實現(xiàn)。
MEDIA:一種存儲卡,常用于數(shù)碼相機、MP3。
DMA:直接內(nèi)存訪問。用于外部設備之間高速數(shù)據(jù)轉(zhuǎn)移。
MAC:媒體接入控制器。本文中是指網(wǎng)卡芯片。
前言
傳統(tǒng)的嵌入式系統(tǒng)中,設計周期、硬件和軟件的開發(fā)是分開進行的,并在硬件完成后才將系統(tǒng)集成在一起,很多情況下,硬件完成后才開始進行實時軟件和整體調(diào)試。軟硬件聯(lián)合仿真是一種在物理原型可用前,能盡早開始調(diào)試程序的技術(shù)。
軟硬件聯(lián)合仿真有可能使軟件設計工程師在設計早期著手調(diào)試,而采用傳統(tǒng)的方法,設計工程師直到硬件設計完成才能進行除錯處理。有些軟件可在沒有硬件支持的情況下完成任務的編碼,如不涉及到硬件的算法。與硬件相互作用的編碼在獲得硬件之前編寫,但只有在硬件上運行后,才能真正對編碼進行調(diào)試。通過采用軟硬件聯(lián)合仿真技術(shù),可在設計早期開始這一設計調(diào)試過程。由于軟件的開發(fā)通常在系統(tǒng)開發(fā)的后段完成,在設計周期中較早的開始調(diào)試有可能將使這一項目提早完成,該技術(shù)會降低首次將硬件和軟件連接在一起時出現(xiàn)意外而致使項目延期完成所造成的風險。
在取得物理原型前,采用軟硬件聯(lián)合仿真技術(shù)對硬件和軟件之間的接口進行驗證,將使你不會花太多的時間在后期系統(tǒng)調(diào)試上。當你確實拿到物理原型開始在上面跑軟件的時候,你會發(fā)現(xiàn)經(jīng)過測試的軟件部分將會正常工作,這會節(jié)省項目后期的大量時間及努力。
軟硬件聯(lián)合仿真系統(tǒng)由一個硬件執(zhí)行環(huán)境和一個軟件執(zhí)行環(huán)境組成,通常軟件環(huán)境和硬件環(huán)境都有自己的除錯和控制界面,軟件通過一系列由處理器啟動的總線周期與硬件的交互作用。本文以一個Mini Web卡的開發(fā)介紹一種軟硬件聯(lián)合仿真系統(tǒng)。
該方案的核心是采用一個51單片機仿真引擎GoldBull ISS51(以下簡稱ISS51),ISS51是51單片機開發(fā)環(huán)境Keil uVision2的一個插件,ISS51具有連接Keil和硬件仿真環(huán)境Modelsim的接口,可以實現(xiàn)軟硬件同步仿真。在該系統(tǒng)中,Keil作為軟件調(diào)試界面,Modelsim作為硬件仿真和調(diào)試界面,ISS51負責軟件執(zhí)行、監(jiān)控軟件斷點、單步執(zhí)行、內(nèi)存和寄存器數(shù)據(jù)返回給Keil、CPU總線時序產(chǎn)生和捕獲、內(nèi)部功能模塊(如定時器,串口)的運行等功能。
評論