在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 單片機仿真器的原理介紹

            單片機仿真器的原理介紹

            作者: 時間:2016-11-17 來源:網(wǎng)絡 收藏
            一個理想的單片機仿真器使開發(fā)者能觀察到單片機內(nèi)部的操作,仿真器是使替代單片機并使單片機操作可視化的硬件工具。
            一個ICE應包括兩個接口,一個是連接到目標板上的MCU插座,另一個與PC相連。仿真器應該與目標MCU在電氣及物理上等價,并能在開發(fā)系統(tǒng)中替代MCU。目標系統(tǒng)的操作可由PC得以控制及觀察。在開發(fā)初期,開發(fā)系統(tǒng)依靠仿真器工作,當目標功能完善后,仿真器將被真正的MCU取代。

            ICE的功能及特性:
            在主機與目標系統(tǒng)間產(chǎn)生對應的程序區(qū),host memory作為仿真程序區(qū)(emulator memory)或Shadow memory
            脫離目標硬件實時測試代碼
            單步(Step),全速(Run),從特定的狀態(tài)運行到特定的狀態(tài)或到斷點(BreakPoint)。這通常指特定的地址,但也可以是特定的觸發(fā)條件。
            修改MCU Register值
            在線修改Memory內(nèi)容
            實時跟蹤記錄已執(zhí)行的程序(Trace)

            本文引用地址:http://www.biyoush.com/article/201611/315380.htm

            ICE設計中的難點及局限性:
            ICE功能的實現(xiàn)需要與MCU的data bus,address bus,control bus相連,而實際芯片三總線往往不連外部引腳
            電氣上:ICE的驅動能力及時序需要與MCU完全相同,而ICE的外加電纜及電路必將降低負載能力及改變時序特性,引起一些目標系統(tǒng)在極限狀態(tài)下與ICE聯(lián)調(diào)往往會失敗。
            一個常見的現(xiàn)象是一個系統(tǒng)用ICE調(diào)試完成最終用實際MCU取代ICE可保證運行,但若硬件開發(fā)過程中未用ICE,為了調(diào)試軟件問題在中途使用了ICE,往往會在時序及負載上出現(xiàn)問題。
            理想的是所以的引腳的所以功能與MCU相同,而實際上不少低端仿真器占用了一個中斷資源以控制監(jiān)控程序的運行

            使用ICE的主要優(yōu)點在于:
            軟件設計及實時測試可先于實際硬件完成
            提供了修改,顯示memory及register的功能,提供了系統(tǒng)的開發(fā)效率

            bond-out
            MCU是芯片設計公司為實現(xiàn)其商用MCU的仿真功能,將內(nèi)部的數(shù)據(jù),地址及控制總線連接到芯片封裝的管腳上,使得外部仿真邏輯可以監(jiān)視和控制MCU內(nèi)部的狀態(tài)。一個ICE的質量很大程度上依賴于它與其要仿真的MCU之間的吻合程度,bond-out
            MCU能最大程度上提供ICE與商用MCU的無差別替換。

            基于bond-out MCU的在線仿真器的結構
            見圖1。系統(tǒng)包括三部分,bond-out MCU,存貯用戶程序的SRAM及仿真監(jiān)控電路。bond-out
            MCU的數(shù)據(jù),地址總線連接到SRAM,作為外部程序儲存器。同時數(shù)據(jù),地址及控制總線連接到仿真監(jiān)控電路,使ICE可以監(jiān)視和控制bond-out
            MCU的運行狀態(tài)。與PC相連的通訊接口根據(jù)速度及成本可選用串口,并口或USB接口。bond-out
            MCU從本質上將是商用MCU的一種擴展,它包括所有商用MCU上的I/O并提供給用戶使用,其電氣與時序上應保證與商用MCU對應管腳完全一致。


            在線仿真器基本功能的實現(xiàn)
            單步(Step),全速(Run)
            仿真監(jiān)控電路將A/D總線的控制權交給bond-out MCU,bond-out
            MCU先給出指令地址,再使能SRAM讀信號,得到程序代碼,依次解碼并執(zhí)行。

            斷點(BreakPoint)
            見圖2。斷點電路由存貯斷點位置的SRAM和斷點監(jiān)控電路組成。存貯斷點位置的SRAM與存貯用戶程序的SRAM的地址總線并接,SRAM的某個數(shù)據(jù)位作為斷點信息存貯位,在下載用戶程序的同時將設置有斷點的地址上該位置為1,其余為0。當仿真器在全速運行時,該SRAM設為讀狀態(tài),斷點判斷電路監(jiān)控此數(shù)據(jù)位,當其為高時停止仿真器全速運行。

            跟蹤記錄已執(zhí)行的程序(Trace)
            見圖3。Trace電路由存貯Trace內(nèi)容的SRAM和Trace監(jiān)控電路組成。Trace SRAM的數(shù)據(jù)總線與bond-out
            MCU地址總線并接,Trace SRAM的地址控制信號由Trace監(jiān)控電路產(chǎn)生。在仿真器初始化時Trace
            SRAM的地址被設置為0,當用戶要求開始記錄已執(zhí)行的程序,在每個指令周期中,Trace SRAM的地址自加一并將bond-out
            MCU地址寫入SRAM中。在PC要讀取Trace內(nèi)容時,bond-out
            MCU依次執(zhí)行過的程序地址被上載到PC端并對應列出該地址上的指令代碼。Trace
            的記錄長度受SRAM大小限制,當超出記錄長度時前面的數(shù)據(jù)會被覆蓋。

            讀取修改Register/Memory
            使bond-out
            MCU將Register/Memory的值從數(shù)據(jù)總線上輸出,例如要讀取20H地址上的值,仿真監(jiān)控電路取得總線控制權,首先執(zhí)行一條指令使20H地址上的值送入A,再將A寫到數(shù)據(jù)總線上,仿真監(jiān)控電路就能讀到20H地址上的值。修改Register/Memory的方法,例如要改20H地址上的值,仿真監(jiān)控電路送出該值,控制bond-out
            MCU執(zhí)行讀取數(shù)據(jù)總線到A的指令,再執(zhí)行將A送人20H地址的指令。

            希望對大家用仿真器有幫助,還望各位討論和指正。



            評論


            技術專區(qū)

            關閉