ARM仿真調(diào)試技術(shù)_第1頁
ARM仿真調(diào)試技術(shù)_第2頁
ARM仿真調(diào)試技術(shù)_第3頁
ARM仿真調(diào)試技術(shù)_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

在嵌入式系統(tǒng)的設(shè)計(jì)中,仿真應(yīng)用的范圍主要集中在對(duì)程序的仿真上。在RM的開發(fā)過程中,一種最簡(jiǎn)單和原始的開發(fā)流程是:編寫程序,然后燒寫到芯片上驗(yàn)證功能這,種方法對(duì)于簡(jiǎn)單的小系統(tǒng)是可以對(duì)付的,但在大系統(tǒng)中使用這種方法則是完全不可能的。所以很多時(shí)候我們需要在不燒寫代碼的情況下調(diào)試程序,這就是仿真調(diào)試技術(shù)?,F(xiàn)代調(diào)試技術(shù)可以分為軟件仿真調(diào)試和硬件仿真調(diào)試兩種:一.軟件仿真(指令集仿真):概念:用數(shù)據(jù)結(jié)構(gòu)描述目標(biāo)機(jī)CPU中各個(gè)寄存器和其他資源(內(nèi)存等),通過軟件模擬,可以逐條指令解釋執(zhí)行目標(biāo)機(jī)可執(zhí)行映象中的程序。應(yīng)用場(chǎng)合:當(dāng)嵌入式軟件開發(fā)在目標(biāo)硬件平臺(tái)不存在的情況下進(jìn)行,就要使用這種軟件來模擬目標(biāo)PU,以驗(yàn)證代碼邏輯。是學(xué)習(xí)嵌入式開發(fā)有效地工具,可以讓學(xué)習(xí)者從底層具體硬件細(xì)節(jié)中解脫出來,專注于軟件,尤其是與具體硬件無關(guān)的系統(tǒng)軟件TCP/IP協(xié)議棧)。幾個(gè)不錯(cuò)的硬件模擬平臺(tái):Skyeye:清華大學(xué)計(jì)算機(jī)系博士后陳渝發(fā)起,開源項(xiàng)目,主要模擬RM內(nèi)核CPU。ARMulator:ARM公司推出,ARM指令集模擬器(ADS,RealviewMDK上就用這個(gè))。ZIX:—個(gè)快捷高效、功能強(qiáng)大、易于配置的嵌入式Linux開發(fā)環(huán)境。軟件仿真的缺點(diǎn):無法完全仿真與硬件相關(guān)的部分,最終還要通過硬件仿真來完成最終的設(shè)計(jì)。二.硬件仿真調(diào)試:以前的芯片沒有JTAG調(diào)試邏輯,要向仿真它就必須要有專門的仿真器,這種仿真器成本較高,而且每種芯片都不一樣,現(xiàn)在這種仿真器已經(jīng)不存在了?,F(xiàn)在的芯片一般都內(nèi)置了JTAG調(diào)試邏輯,并不需要CPU仿真器,需要的只是一個(gè)JTAG協(xié)議轉(zhuǎn)接器(現(xiàn)在還稱其為仿真器,其實(shí)叫做調(diào)試器比較合適)。所以下面主要介紹JTAG及其仿真技術(shù)。JTAG簡(jiǎn)介JTAG是JointTestActionGroup的簡(jiǎn)稱,該組織致力于統(tǒng)一芯片的測(cè)試標(biāo)準(zhǔn),它們最初向EEE提出了IEEE1149.1標(biāo)準(zhǔn),后來經(jīng)過IEEE批準(zhǔn)并且標(biāo)準(zhǔn)化,所以IEEE1149.1標(biāo)準(zhǔn)又叫JTAG標(biāo)準(zhǔn),它是一套芯片測(cè)試接口和標(biāo)準(zhǔn),現(xiàn)在幾乎所有的CPU核里面都會(huì)實(shí)現(xiàn)JTAG邏輯單元。JTAG原本是用來測(cè)試芯片設(shè)計(jì)是否正確,其基本原理就是在芯片的各個(gè)管腳上放置鎖存器,然后串聯(lián)起來構(gòu)成移位寄存器,可以監(jiān)控芯片管腳的輸入和輸出。后來大家發(fā)現(xiàn)用JTAG在線調(diào)試芯片非常方便(其實(shí)就是利用JTAG控制CPU內(nèi)核),還不需要設(shè)計(jì)專門的仿真芯片,因此就出現(xiàn)了用TTAG調(diào)試風(fēng)行的局面。邊界掃描技術(shù)(Boundary-Scan):JTAG調(diào)試主要就是基于這種邊界掃描技術(shù)。邊界掃描技術(shù)的基本思想是在靠近芯片的輸入輸出管腳上增加一個(gè)移位寄存器單元因。為這些移位寄存器單元都分布在芯片的邊界上,所以被稱為邊界掃描寄存器(Boundary-ScanRegisterCell)。當(dāng)芯片處于調(diào)試狀態(tài)的時(shí)候,這些邊界掃描寄存器可以將芯片和外圍的輸入輸出隔離開來。通過這些邊界掃描寄存器單元,可以實(shí)現(xiàn)對(duì)芯片輸入輸出信號(hào)的觀察和控制。JTAG的主要作用:檢測(cè)芯片是否良好■這是JTAG最初設(shè)計(jì)的目標(biāo)鏡像文件的燒寫功能■可以燒寫編譯出來的二進(jìn)制或者十六進(jìn)制可執(zhí)行文件到目標(biāo)板的Flahs芯片上■當(dāng)開發(fā)板為裸板(沒有固化任何程序)的時(shí)候,通常需要通過TAG接口下載bootloader■調(diào)試功能■JTAG接口為宿主機(jī)和目標(biāo)系統(tǒng)之間的通信、控制提供了方便的途徑ARM7TDMI調(diào)試架構(gòu):一個(gè)調(diào)試系統(tǒng)通常包含三個(gè)部分:

?調(diào)試主機(jī)■是一臺(tái)運(yùn)行調(diào)試軟件(ADS,Keil等)的計(jì)算機(jī)■可以發(fā)出一些高層的調(diào)試命令,設(shè)置斷點(diǎn),訪問內(nèi)存等?協(xié)議轉(zhuǎn)換器■將調(diào)試主機(jī)發(fā)出的高層調(diào)試命令轉(zhuǎn)換為底層的ARMJTAG調(diào)試命令■調(diào)試目標(biāo)■基于目標(biāo)芯片的開發(fā)板ARM7TDMI典型的調(diào)試架構(gòu)如下圖所示:HoslComputsr(PC.SunorHP)PratMdDetugIsrget—^rg&1Systemw岀ARklTTD肚I□

□□□□

□□口口HoslComputsr(PC.SunorHP)PratMdDetugIsrget—^rg&1Systemw岀ARklTTD肚I□

□□□□

□□口口經(jīng)過協(xié)議轉(zhuǎn)換器進(jìn)行命令解釋,主機(jī)上運(yùn)行的調(diào)試軟件就可以通過JTAG接口直接和目標(biāo)芯片對(duì)話了為了支持底層的調(diào)試,ARM7TDMI提供了硬件上的調(diào)試擴(kuò)展,包括:停止程序的運(yùn)行?檢查和修改ARM7TDMI的內(nèi)核狀態(tài)觀察和修改內(nèi)存恢復(fù)程序的運(yùn)行常見ARM調(diào)試工具:BDI1000/2000/3000■非常好的調(diào)試工具,可以調(diào)試ARM、MIPS、PowerPC、Xscale等多種架構(gòu)處理器■JTAG下載速度可以上兆,以太網(wǎng)接口■性能優(yōu)越但是價(jià)格不菲,可以調(diào)試Linux內(nèi)核這種復(fù)雜的代碼U-LinkU-Link是Keil公司做的用于ARM和某些增強(qiáng)型8051單片機(jī)調(diào)試的工具■由于Keil公司做的時(shí)候沒有加密,導(dǎo)致現(xiàn)在盜版滿天飛U-link僅僅支持Keil,JTAG下載速度20K~30KU-Link下載程序不是簡(jiǎn)單通過JTAG,而是先用JTAG下載一段固件程序到目標(biāo)板,然后再用這個(gè)固件程序和JTAG把用戶代碼寫入Flash以提高速度J-LinkJ-Link是IAR公司為ARM芯片開發(fā)的調(diào)試工具■支持RDI協(xié)議的調(diào)試工具,如Keil、ADS、IAR等J-Link不支持ARM10以上的內(nèi)核JTAG下載速度400K~500KMulti-ICEARM公司原創(chuàng)調(diào)試工具,支持全系列ARM芯片JTAG下載速度130K左右

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論