浙江大學(xué)ARM8課件_第1頁(yè)
浙江大學(xué)ARM8課件_第2頁(yè)
浙江大學(xué)ARM8課件_第3頁(yè)
浙江大學(xué)ARM8課件_第4頁(yè)
浙江大學(xué)ARM8課件_第5頁(yè)
已閱讀5頁(yè),還剩48頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

ARM調(diào)試方案

議程基本的調(diào)試需求你需要什么樣的功能?ARM公司的調(diào)試和開(kāi)發(fā)工具。嵌入式核的調(diào)試實(shí)現(xiàn)和利用JTAG的調(diào)試方案停止模式和監(jiān)控模式嵌入式跟蹤使用ETMARM開(kāi)發(fā)板?基本的調(diào)試需求運(yùn)行控制設(shè)置數(shù)據(jù)訪問(wèn)斷點(diǎn)設(shè)置指令斷點(diǎn)代碼的單步執(zhí)行狀態(tài)控制處理器狀態(tài)讀寫(xiě)寄存器值系統(tǒng)狀態(tài)系統(tǒng)內(nèi)存訪問(wèn)下載代碼執(zhí)行歷史執(zhí)行跟蹤信息內(nèi)存訪問(wèn)歷史議程基本的調(diào)試需求你需要什么樣的功能?ARM公司的調(diào)試和開(kāi)發(fā)組成工具。

嵌入式核調(diào)試實(shí)現(xiàn)和利用JTAG的調(diào)試方案停止模式和監(jiān)控模式嵌入式跟蹤整體化和利用ETMARM開(kāi)發(fā)板嵌入式核調(diào)試5線JTAG被調(diào)試的系統(tǒng)可以是最終的系統(tǒng)!也可以用第三方的協(xié)議轉(zhuǎn)換工具:DataAddressControlBREAKPTCPUARM調(diào)試器和Multi-ICEserver(可以運(yùn)行在不同的機(jī)器上)TAPEmbeddedICELogic-RT嵌入式ICE邏輯兩個(gè)觀察點(diǎn)單元可以通過(guò)監(jiān)控地址總線,數(shù)據(jù)總線和控制信號(hào)來(lái)探測(cè)觀察點(diǎn)(watchpoint)和斷點(diǎn)。每個(gè)單元可以用來(lái)提供1觀察點(diǎn),或1個(gè)ROM或RAM里的硬件斷點(diǎn),或RAM里的多個(gè)軟件斷點(diǎn)調(diào)試控制和狀態(tài)寄存器調(diào)試通訊通道注意:ARM10ARM10家族的調(diào)試結(jié)構(gòu)是不同的,雖然原理是一樣的。一共包括8個(gè)觀察點(diǎn)單元6個(gè)在指令地址總線上2個(gè)在數(shù)據(jù)地址總線上這個(gè)將在另外一個(gè)課題中講解硬件斷點(diǎn)0x8000ARM-0x3

Thumb-0x10xffffffffOpcodefetch0x8000MemoryBreakpointtobesethereControlAddrValueDataValueControlValueAddrMaskDataMaskControlMaskA[31:0]ComparatorBreakpointD[31:0]當(dāng)內(nèi)核試圖執(zhí)行內(nèi)存里一個(gè)特定地址的指令時(shí),將會(huì)觸發(fā)一個(gè)硬件斷點(diǎn).這個(gè)例子里,當(dāng)要執(zhí)行從地址0x8000索取的指令時(shí),將會(huì)觸發(fā)一個(gè)硬件斷點(diǎn).硬件斷點(diǎn)可以在RAM或ROM里設(shè)置.每個(gè)觀察點(diǎn)單元可以被用來(lái)設(shè)置一個(gè)硬件斷點(diǎn),而且只能一個(gè).軟件斷點(diǎn)Memory0xffffffff0xeeeeeeee0x0OpcodefetchControlAddrValueDataValueControlValueAddrMaskDataMaskControlMaskA[31:0]ComparatorBreakpointD[31:0]1.Readandstoreopcode2.Write“special”value一個(gè)軟件斷點(diǎn)是當(dāng)一個(gè)特定的指令從任何地址被預(yù)取時(shí)觸發(fā)的一個(gè)斷點(diǎn).這個(gè)例子表明了觀察點(diǎn)單元的配置–這對(duì)所有的軟件斷點(diǎn)都是一樣的.為了設(shè)置一個(gè)斷點(diǎn),可以使用Multi-ICE在特定的地方寫(xiě)一個(gè)特別的指令.這些只能在RAM里在操作.每一個(gè)觀察點(diǎn)單元可以用來(lái)設(shè)置無(wú)數(shù)的軟件斷點(diǎn).(The“special”value)命中一個(gè)斷點(diǎn)停止模式調(diào)試由標(biāo)準(zhǔn)的EmbeddedICE&EmbeddedICE-RT支持內(nèi)核進(jìn)入調(diào)試狀態(tài)和停止?fàn)顟B(tài)內(nèi)核與系統(tǒng)的其余部分分離發(fā)出DBGACK信號(hào)(調(diào)試器通過(guò)JTAG而檢測(cè)到)沒(méi)有中斷處理,除非調(diào)試器重新啟動(dòng)執(zhí)行代碼處理器和系統(tǒng)的狀態(tài)可以通過(guò)掃描內(nèi)核的指令來(lái)察看和修改,緊接著執(zhí)行它們.監(jiān)控模式調(diào)試只由增強(qiáng)功能的EmbeddedICE-RT支持在ARM9E,ARM10和稍后的ARM7TDMI版本上有內(nèi)核通過(guò)一個(gè)異常中斷而進(jìn)入常駐軟件監(jiān)控程序可以連續(xù)處理中斷處理器和系統(tǒng)的狀態(tài)可以通過(guò)監(jiān)控程序的調(diào)試命令來(lái)察看和修改.DebuggerRMHost(RealMonitor.dll)主機(jī)RMTargetApplication

Code+Data目標(biāo)板經(jīng)過(guò)DCC傳送的實(shí)時(shí)監(jiān)控協(xié)議監(jiān)控模式調(diào)試主機(jī)-在AXD和Multi-ICE之間的控制器實(shí)時(shí)監(jiān)控協(xié)議

非常簡(jiǎn)單的協(xié)議快速–沒(méi)有出錯(cuò)檢查允許后臺(tái)命令實(shí)際目標(biāo)板小的調(diào)試監(jiān)控程序(<2k代碼字節(jié))集成在目標(biāo)里.以目標(biāo)代碼和原代碼的形式提供調(diào)試通訊通道在ARM和主機(jī)調(diào)試器之間通過(guò)JTAG的通訊信息是由簡(jiǎn)單串行通訊口來(lái)實(shí)現(xiàn)的.不進(jìn)入調(diào)試模式和停止程序執(zhí)行.ARM上運(yùn)行的應(yīng)用代碼經(jīng)過(guò)協(xié)處理器14來(lái)訪問(wèn).三個(gè)寄存器通訊數(shù)據(jù)讀寄存器(CommsDataReadRegister)主機(jī)到ARM的通訊通訊數(shù)據(jù)寫(xiě)寄存器(CommsDataWriteRegister)ARM到主機(jī)的通訊通訊數(shù)據(jù)控制寄存器(CommsDataControlRegister)提供在ARM和主機(jī)之間同步的握手信號(hào)位1–寫(xiě)位-當(dāng)ARM寫(xiě)入新數(shù)據(jù)時(shí)清掉位0–讀位–當(dāng)ARM有新數(shù)據(jù)讀時(shí)設(shè)置DCC查詢模式通訊WriteRegisterRW10ControlRegister

Scanchain2;拷貝DCC控制寄存器到r2MRCp14,0,r2,c0,c0,0;檢查DCC控制寄存器的位1TSTr2,#0x2;如果位1清掉了,拷貝數(shù)據(jù)從r1到DCC寫(xiě)寄存器

MCREQp14,0,r1,c1,c0,0;拷貝DCC控制寄存器到r2MRCp14,0,r2,c0,c0,0;檢查DCC控制寄存器的位0TSTr2,#0x1;如果位0設(shè)置,拷貝數(shù)據(jù)從DCC寫(xiě)寄存器

到r3

MRCNEp14,0,r3,c1,c0,0調(diào)試器查詢控制寄存器利用掃描鏈2來(lái)察看什么時(shí)候?qū)懳槐辉O(shè)置,讀位被清掉.接著數(shù)據(jù)可以被掃描進(jìn)入或者輸出.r1

r3ReadRegister向量捕獲允許沒(méi)有處理軟件的異常機(jī)制的捕獲在ARM7TDMI上執(zhí)行利用斷點(diǎn)當(dāng)從ROM地址0x0調(diào)試時(shí)關(guān)閉在ARM9TDMI/ARM10和后來(lái)的版本上執(zhí)行利用專(zhuān)門(mén)的硬件只對(duì)硬件異常敏感.到向量表里的跳轉(zhuǎn)將不被捕獲留下觀察點(diǎn)單元作為一般使用.一旦有你自己的處理,則關(guān)掉向量捕獲.AXD:sppvector_catch0%RUsPDaifFIQIRQ(Reserved)DataAbortPrefetchAbortSoftwareInterruptUndefinedInstructionReset0x1C0x180x140x100x0C0x080x040x00ARM目標(biāo)上運(yùn)行的庫(kù)代碼,但是任何需要的底層的I/O是由主機(jī)提供的.

SWI機(jī)制提供的主機(jī)訪問(wèn).SWI接口是ARMulator,Angel和Multi-ICE通用的組成部分.Semihosted程序?qū)⑦\(yùn)行在所有的ARM目標(biāo)板上,而不需要移植.需要連接的調(diào)試工具提供這些功能.Semihosting:printf(“hello\n”);:應(yīng)用代碼:SWI:庫(kù)代碼SWI服務(wù)程序與主機(jī)上運(yùn)行的調(diào)試器通訊hello通過(guò)JTAG的Semihostingspp

semihosting_vector0x8spp

semihosting_enabled1關(guān)掉:sppsemihosting_enabled0Breakpoint0x1080x1040x100…….....SWI,,,,,…......pc=0x8

lr=0x108MOVSpc,lrMulti-ICE仿真的SWI服務(wù)程序0x000x1C0x180x140x100x0C0x080x04ResetUndefinedSoftwareInterruptPrefetchAbortDataAbortReservedIRQFIQspp

semihosting_dcchandler_address0x70000spp

semihosting_vector0x8spp

semihosting_enabled20x000x1C0x180x140x100x0C0x080x040x1080x1040x100…….....SWI,,,,,…......pc=0x8

lr=0x108MOVSpc,lrDCCSemihosting0x70000DCCDCCSemihostingHandlerCode

ResetUndefinedSoftwareInterruptPrefetchAbortDataAbortReservedIRQFIQ直接對(duì)EmbeddedICE訪問(wèn)AXD允許直接對(duì)EmbeddedICE邏輯寄存器訪問(wèn)可以直接通過(guò)GUI或如下的命令行察看

REGisters”EICEWatch0”在地址0x4000寫(xiě)時(shí)設(shè)置一個(gè)觀察點(diǎn):

sreg"EICEWatch0|AddressValue"0x00004000

sreg"EICEWatch0|AddressMask"0

sreg"EICEWatch0|DataValue"0

sreg"EICEWatch0|DataMask"0xFFFFFFFF

sreg"EICEWatch0|ControlValue"0x10D

sreg"EICEWatch0|ControlMask"0x0F8注釋:ARM調(diào)試器優(yōu)先與ADS1.1通過(guò)協(xié)處理器0訪問(wèn)EmbeddedICE邏輯寄存器.利用Multi-ICE調(diào)試設(shè)計(jì)確信DBGEN是接高電平!Thumb代碼上的軟件斷點(diǎn)需要半字訪問(wèn)RAM必須總是字/半字/字節(jié)訪問(wèn)內(nèi)存Multi-ICE可以在1.0V到5.0V時(shí)調(diào)試系統(tǒng)自適應(yīng)到目標(biāo)邏輯電壓目標(biāo)板可以在>2.0V時(shí)工作在3.3V時(shí),啟動(dòng)電流是~400mA,一般操作時(shí)是~120mAMulti-ICE2.1出售時(shí)跟隨一個(gè)適當(dāng)?shù)碾娫碝ulti-ICE用20-針連接器多個(gè)接地點(diǎn)靈活的時(shí)鐘配置可以與不同的時(shí)鐘速度設(shè)備同步

長(zhǎng)JTAG電纜也可以僅僅利用5個(gè)信號(hào)來(lái)調(diào)試請(qǐng)小心停止系統(tǒng)時(shí)鐘復(fù)位考慮…..測(cè)驗(yàn)1) EmbeddedICE邏輯一共包括多少個(gè)觀察點(diǎn)單元?

2)ROM上可以設(shè)置多少個(gè)斷點(diǎn)?3)利用DCCsemihosting比一般的semihosting有什么優(yōu)勢(shì)?4) 為了激活A(yù)RM的調(diào)試功能,DBGEN的信號(hào)應(yīng)該怎么連接?5) 為什么Multi-ICE需要半字訪問(wèn)內(nèi)存?6)EmbeddedICE-RT提供了哪些額外的調(diào)試功能?議程基本調(diào)試需求你需要什么樣的功能?ARM公司的調(diào)試和開(kāi)發(fā)集成工具。

嵌入式核調(diào)試實(shí)現(xiàn)和利用JTAG的調(diào)試方案停止模式和監(jiān)控模式嵌入式跟蹤整體化和利用ETMARM開(kāi)發(fā)板ETM的機(jī)制

(嵌入式跟蹤宏單元)為什么需要實(shí)時(shí)跟蹤功能?

實(shí)時(shí)系統(tǒng)不允許停止!傳統(tǒng)的調(diào)試(斷點(diǎn)和單步執(zhí)行)不能滿足必須利用捕獲的實(shí)際代碼運(yùn)行來(lái)調(diào)試為什么不用其它的調(diào)試工具而用ETM?EmbeddedICE-RT為調(diào)試通訊通道提供了低的帶寬只適用于程序狀態(tài)信息外部的指令需要寫(xiě)到通訊通道里獨(dú)立的處理器比嵌入式處理器容易調(diào)試一個(gè)獨(dú)立的處理器,或者:用外部的ICE單元代替處理器,或者用邏輯分析儀探測(cè)處理器的信號(hào)當(dāng)用嵌入式ARM內(nèi)核時(shí)兩個(gè)都不可能時(shí)怎么辦???問(wèn)題沒(méi)有外部可見(jiàn)的片上ASIC總線帶緩存的處理器(例如,ARM920T)帶有與設(shè)備內(nèi)部相連的核/緩存總線ICE版本必須在全速系統(tǒng)速度下運(yùn)行隨著處理器速度的增加,ICE越來(lái)越難.同時(shí)必須提供ICE工具(例如,觸發(fā)器)實(shí)時(shí)跟蹤需要確定的高帶寬的接口

需要地址總線,數(shù)據(jù)總線和控制信號(hào)對(duì)于ARM7TDMI,有80多個(gè)引腳很多ASICs使用相同的處理器核ICE必須為每一個(gè)ASIC定做ARM實(shí)時(shí)跟蹤嵌入式跟蹤單元(ETM)實(shí)時(shí)指令跟蹤實(shí)時(shí)數(shù)據(jù)訪問(wèn)跟蹤包含ICE功能(觸發(fā)和過(guò)濾邏輯)MultiTrace跟蹤端口分析器(TPA)深度緩沖器捕獲跟蹤跟蹤調(diào)試工具通過(guò)JTAG/Multi-ICE配置ETM跟蹤從ETM/MultiTrace里接收壓縮的跟蹤數(shù)據(jù)利用拷貝原代碼映象來(lái)對(duì)ETM跟蹤5ARMcoreETM…RAMROM…TAPcontrollerTraceTrigger/Filter9,13,21線跟蹤接口5線JTAG接口串口/以太網(wǎng)口并口運(yùn)行跟蹤調(diào)試工具的主機(jī)(ADS的附件)ETM結(jié)構(gòu)TRACECLK3(ETMv1)4(ETMv2)PIPESTAT[2:0](ETMv1)PIPESTAT[3:0](ETMv2)ARMCore到和來(lái)自ARM的數(shù)據(jù)可綜合的ETM塊n=4,8or16跟蹤端口(9,13or21引腳)ETM監(jiān)控器和簡(jiǎn)要的ARM總線信號(hào)JTAG接口Trigger&FilterLogicPipeline

Status

GenerationTrace

Packet

CapturenTRACEPKT[n-1:0]TRACESYNC(ETMv1only)FIFOTAPController5到ARM的控制來(lái)自ARM的控制來(lái)自ARM的地址確定的ETM-ARM接口

(只在ETMv2)跟蹤端口說(shuō)明TRACECLK:與處理器時(shí)鐘有相同的頻率PIPESTAT(流水線狀態(tài))

表明:程序流是否有一個(gè)相關(guān)聯(lián)的TRACEPKTETM狀態(tài)TRACEPKT(跟蹤包)

可能包含以下一個(gè)或多個(gè)特征:數(shù)據(jù)地址數(shù)據(jù)值指令地址TRACESYNC(只在ETMv1有):用來(lái)在ETM和TPA之間進(jìn)行同步*可以參考ETM規(guī)范得到更多的信息n=4,8or16跟蹤端口(9,13or21引腳)TRACECLKPIPESTAT[2:0](ETMv1)PIPESTAT[3:0](ETMv2)TRACEPKT[n-1:0]TRACESYNC(ETMv1only)指令跟蹤與指令跟蹤有關(guān)的跟蹤端口部分:PIPESTAT–表明內(nèi)核的流水線狀態(tài)(例如,一個(gè)指令是否被執(zhí)行)TRACEPKT–當(dāng)需要時(shí),包含一個(gè)跳轉(zhuǎn)目標(biāo)地址以上兩條和代碼映象相結(jié)合,就可以進(jìn)行調(diào)試了指令跟蹤能夠被高度壓縮

典型地,一個(gè)9-位的跟蹤端口可以處理只有指令的跟蹤ETMv1最好的情形:3位的跟蹤信息來(lái)跟蹤32位的代碼ETMv2最好的情形:4位的跟蹤信息來(lái)跟蹤64位的代碼可以用過(guò)濾和觸發(fā)器:只對(duì)內(nèi)存地址和/或區(qū)域進(jìn)行跟蹤只有在特定的ETM順序狀態(tài),計(jì)數(shù)器等才進(jìn)行跟蹤技術(shù)注解:TraceEnable(一個(gè)ETM內(nèi)部信號(hào))可以激發(fā)指令跟蹤。它是由觸發(fā)器/過(guò)濾器事件和資源控制的。數(shù)據(jù)跟蹤與數(shù)據(jù)跟蹤有關(guān)的跟蹤端口部分:TRACEPKT–包含數(shù)據(jù)地址或數(shù)據(jù)值只有數(shù)據(jù)地址改變的位被廣播(目的是節(jié)省帶寬)每一次跟蹤運(yùn)行都可以配置ETM:數(shù)據(jù)地址或數(shù)據(jù)值(或兩個(gè)都有)讀或?qū)懀ɑ騼蓚€(gè)都有)需要一個(gè)高的帶寬跟蹤所有數(shù)據(jù)(有程序相關(guān))一個(gè)帶有45個(gè)字節(jié)FIFO的13-位跟蹤端口可以跟蹤大部分?jǐn)?shù)據(jù)傳輸如果想跟蹤更多數(shù)據(jù)訪問(wèn)則需要一個(gè)21-位的跟蹤端口過(guò)濾器和觸發(fā)器對(duì)保持跟蹤數(shù)據(jù)的管理很重要如果在跟蹤信息里有一個(gè)FIFO溢出標(biāo)記,那么就表示有部分的跟蹤信息被丟掉推薦使用可編程的過(guò)濾器和觸發(fā)邏輯技術(shù)注解:ViewData(一個(gè)ETM的內(nèi)部信號(hào))激發(fā)了數(shù)據(jù)跟蹤(如果TraceEnable是假時(shí)被忽略掉).它是由觸發(fā)器/過(guò)濾事件和資源控制的。跟蹤例子0x1010MOVr0,#30x1014SUBSr0,r0,#10x1018BNE0x10140x101CLDRr1,#0x4000...0x40000x4321{data}IEIEIEr0=2IEIEIEINID...r0=1r0=00x101CLDRr1,#0x4000r1?ID?0x1018BNE0x10140x1010SUBSr0,r0,#10x1018BNE0x10140x1014SUBSr0,r0,#10x1018BNE0x10140x1014SUBSr0,r0,#10x1010MOVr0,#3CorrespondingInstructionnonenonenonenonenonenonenoneTRACEPKTbranchnottakenINCommentPIPESTATr0=0IEdirectbranchtakenIEr0=1IEdirectbranchtakenIEr0=2IEr0=3IE?假設(shè)數(shù)據(jù)跟蹤是激活的(ViewData

被聲明了)基本指令和直接跳轉(zhuǎn)的ETM跟蹤由PIPESTAT=IE或

IN來(lái)解碼直接跳轉(zhuǎn)指令跟蹤局限調(diào)試器需要一個(gè)代碼的拷貝來(lái)做參考自動(dòng)修改代碼部分將不能和ETM一起工作調(diào)試器必須知道代碼映象的地址映射代碼必須在連接時(shí)的地址執(zhí)行帶有固定代碼地址的虛擬內(nèi)存配置是可以的現(xiàn)在不支持動(dòng)態(tài)重定位代碼請(qǐng)注意“覆蓋”(例如:把代碼調(diào)入片上RAM)如果有很多代碼段運(yùn)行在相同的地址,跟蹤不能區(qū)分哪一部分在運(yùn)行。這個(gè)例子里,跟蹤解壓是不可能的。解決辦法是給內(nèi)存區(qū)域命名(見(jiàn)下一頁(yè))重疊和命名硬件的命名將每一個(gè)段都映射到相同的實(shí)際存儲(chǔ)器上用不同的“別名”連接每一個(gè)重疊的段執(zhí)行PC值標(biāo)識(shí)了哪一個(gè)段在執(zhí)行AAAAAAABCBBBBABCCCCCABC外部ROM片上RAM

(命名的)注意:必須用命名的方法設(shè)計(jì)存儲(chǔ)器系統(tǒng)AAA16K片上RAM016K32K48K64K16KRAMA[13:0]A[14]A[15]ARMDecoderA[31:16]SELIGNORED控制跟蹤ETM里的資源是可以被過(guò)濾和控制的:要跟蹤的指令要跟蹤的數(shù)據(jù)訪問(wèn)外部跟蹤端口分析器的觸發(fā)ETM的資源由以下部分組成:8個(gè)數(shù)據(jù)比較器8對(duì)全范圍地址比較器16個(gè)地址解碼器4個(gè)16-位計(jì)數(shù)器1個(gè)3-狀態(tài)序列器對(duì)于ASIC:最多4用戶輸入,4個(gè)用戶輸出一個(gè)事件可以由任何兩個(gè)資源邏輯組成:例如“withinaddressrange1

AND

datavalueequals0xFFFFFFFF”不同的ETM實(shí)現(xiàn)有不同數(shù)量的觸發(fā)資源可以看技術(shù)文檔得到更詳細(xì)的資料.哪一個(gè)ETM?根據(jù)你的ARM內(nèi)核來(lái)選擇ETM7,ETM9,或者ETM10選擇小的,中等的或大的模式選擇跟蹤端口的寬度(4/8/16)如果高的吞吐率(數(shù)據(jù)跟蹤)很重要的時(shí)候,可以選擇更寬的端口可以考慮與其它引腳的多路復(fù)用技術(shù)(例如GPIO)調(diào)試時(shí)可以使用大的寬的,產(chǎn)品時(shí)可以使用簡(jiǎn)單的,窄的ETM使用ATPG和插入掃描來(lái)對(duì)產(chǎn)品進(jìn)行測(cè)試ETM提供了驗(yàn)證環(huán)境套件下一頁(yè)將總結(jié)配置和數(shù)據(jù)的大小ETM配置4/8/164/8/164/8Portwidth4518or209or10FIFODepth60k35k25kGatecount大的中等的小的ETMv1(ETM7,9)603015FIFODepth4/8/164/8/164/8/16Portwidth75k50k35kGatecount大的中等的小的ETMv2(ETM10)16848411682AddrComparators大的中等的小的 功能RangeComparatorsAddrDecodersCountersExt.Outputs124014820DataComparatorsSequencers011Ext.Inputs244實(shí)現(xiàn)跟蹤(1)所有需要的信號(hào)連接到ARM核沒(méi)有緩存的內(nèi)核與地址/數(shù)據(jù)總線和控制信號(hào)相連有緩存的內(nèi)核輸出內(nèi)核信號(hào)到宏單元邊緣

(例如:ARM920T版本1)ASIC上提供跟蹤端口經(jīng)過(guò)基座上輸出的最高頻率是多少?ASIC上要支持多個(gè)ARM內(nèi)核嗎?考慮跟蹤端口與別的引腳多路復(fù)用嗎?最終產(chǎn)品中去除以減少引腳數(shù)量嗎?ARM跟蹤捕獲和JTAG的標(biāo)準(zhǔn)連接器38-路的AMPMICTOR連接器(高密度)ARM7TDMIARM7TDMI-SARM720Trev3ARM7EJARM9TDMIARM9E-S/9EJ-SARM920Trev1/922TARM966E-SARM946E-SARM926EJ-SETM7ETM9ARM1020EETM10實(shí)現(xiàn)跟蹤(2)對(duì)ARM7和ARM9內(nèi)核:CPU時(shí)鐘應(yīng)該自由運(yùn)行(利用nWAIT,而不是時(shí)鐘延長(zhǎng)),但不是至關(guān)重要的FIFOFULL信號(hào)可以被用來(lái)停止處理器但是如果FIFO滿了時(shí),將影響實(shí)時(shí)性能.ETM設(shè)計(jì)的目標(biāo)不是低功耗在正常運(yùn)行操作(沒(méi)有跟蹤)模式下,ETM不應(yīng)該被時(shí)鐘驅(qū)動(dòng)ETMCLKPWRDOWN(通過(guò)JTAG控制)ARMCLKJTAG更多更詳細(xì)的信息請(qǐng)看:ETM規(guī)范ETM7/9/10技術(shù)參考手冊(cè)(TRM’s)ETMEN跟蹤捕獲需要一個(gè)外部的跟蹤端口分析儀(TPA)來(lái)捕獲ETM的輸出TPA’s可以在觸發(fā)事件之前,發(fā)生時(shí)或之后來(lái)跟蹤TPA’s帶有很深的跟蹤捕獲緩沖器TPA的緩沖器通過(guò)很高速度的上行連接(通常是以太網(wǎng))來(lái)把數(shù)據(jù)返回給主機(jī)PC當(dāng)前可選擇的TPA:Multi-Trace**Agilent邏輯分析儀(需要Multi-ICE或者AgilentJTAG探測(cè)器)AgilentARM(E5904B)的跟蹤端口分析儀

Tektronix邏輯分析儀****需要Multi-ICE2.0或更新的Lauterbach也提供跟蹤工具、仿真器、調(diào)試器ARMMultiTrace與Multi-ICE(2.0+)連接一起工作通過(guò)以太網(wǎng)跟蹤,通過(guò)JTAG口控制運(yùn)行支持9,13和21引腳的跟蹤端口,頻率可高達(dá)200MHz1.0V-3.3V目標(biāo)電壓支持將跟蹤時(shí)鐘速率降低一半,在上升和下降沿捕獲數(shù)據(jù)也可以從第三方那獲得跟蹤分

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論