在單片機(jī)應(yīng)用開發(fā)過程中,當(dāng)源文件的編譯成功后,就要進(jìn)行仿真調(diào)試工作。仿真調(diào)試可分為兩大類--芯片級(jí)仿真和代碼級(jí)仿真。芯片級(jí)仿真是指使用仿真軟件和ICE硬件工具相配合,在實(shí)際硬件上進(jìn)行仿真調(diào)試工作;而代碼級(jí)仿真則完全在計(jì)算機(jī)上完成,不需要硬件的參與。兩種類型的仿真各有特點(diǎn),使用的場(chǎng)合不同。本文基于VMLAB,講述了進(jìn)行AVR單片機(jī)硬件/軟件協(xié)同仿真的方法。
在VMLAB中進(jìn)行協(xié)同仿真
首先,先介紹兩個(gè)概念:
1)虛擬原型(virtualprototype)
虛擬原型是一個(gè)具體應(yīng)用的集中體現(xiàn),是包括軟件和硬件在內(nèi)的一個(gè)集合體。虛擬原型的作用是在實(shí)現(xiàn)這種應(yīng)用之前,將其行為實(shí)現(xiàn)模擬出來。
2)硬件/軟件協(xié)仿真(hw/swco-simulation)
硬件/軟件協(xié)仿真是指對(duì)于某一個(gè)特定應(yīng)用而言,包括硬件和軟件在內(nèi)的全部特性都用一個(gè)虛擬原型來模擬實(shí)現(xiàn)。VMLAB是基于一個(gè)叫做CCCP(ConcurrentCo-simulatorofCircuitsandProcessors)的協(xié)仿真引擎來實(shí)現(xiàn)協(xié)仿真的。
采用基于具體應(yīng)用的虛擬原型的一大好處就是:硬件部分可以通過虛擬原型來模擬仿真,這無疑會(huì)提高開發(fā)速度不再需要在線仿真器(ICE)工具,成本無疑會(huì)大大降低。
在VMLAB中,仿真是通過工程文件*。prj來管理的。工程文件的一些語法關(guān)鍵字如表1所示。
表1:VMLAB工程文件語法關(guān)鍵字