資料介紹
調(diào)試ARM,要遵循ARM的調(diào)試接口協(xié)議,JTAG就是其中的一種。當(dāng)仿真時(shí),IAR、KEIL、ADS等都有一個(gè)公共的調(diào)試接口,RDI就是其中的一種,那么我們?nèi)绾瓮瓿蒖DI--》ARM調(diào)試協(xié)議(JTAG)的轉(zhuǎn)換呢?有以下兩種做法:
1.在電腦上寫一個(gè)服務(wù)程序,把IAR、KEIL和ADS中的RDI命令解析成相關(guān)的JTAG協(xié)議,然后通后一個(gè)物理轉(zhuǎn)換接口(注意,這個(gè)轉(zhuǎn)換只是電氣 物理層上的轉(zhuǎn)換,就像RS232那樣的作用)發(fā)送你的的目標(biāo)板。H-JTAG就是這樣的。H-JTAG的硬件就僅是一個(gè)物理電平的轉(zhuǎn)換接口,所以很簡(jiǎn)單。 而電腦中裝的h-JTAG軟件就是前面說到的服務(wù)程序,負(fù)責(zé)協(xié)議轉(zhuǎn)換的。
2.做一個(gè)板,用此板直接接收來自IAR、KEIL和ADS等軟件的調(diào)試命令,由此板做RDI-》JTAG協(xié)議的轉(zhuǎn)換。然后與目標(biāo)板通信,這就是JLINK的工作原理。
由上可以看出H-JTAG由于是軟件作協(xié)議轉(zhuǎn)換的,所以速度較慢,但是硬件簡(jiǎn)單。而第二種方法的JLINK一般帶一個(gè)強(qiáng)勁的CPU,作硬件協(xié)議轉(zhuǎn)換,把以硬件復(fù)雜,但速度快。
JTAG的基本原理
JTAG(JointTestActionGroup,聯(lián)合測(cè)試行動(dòng)組)是一種國際標(biāo)準(zhǔn)測(cè)試協(xié)議(IEEE1149.1兼容)。標(biāo)準(zhǔn)的JTAG接口是4線——TMS、TCK、TDI、TDO,分別為模式選擇、時(shí)鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出線。
JTAG的主要功能有兩種,或者說JTAG主要有兩大類:
1)一類用于測(cè)試芯片的電氣特性,檢測(cè)芯片是否有問題;
2)另一類用于Debug,對(duì)各類芯片以及其外圍設(shè)備進(jìn)行調(diào)試;一個(gè)含有JTAGDebug接口模塊的CPU,只要時(shí)鐘正常,就可以通過JTAG接口訪問CPU的內(nèi)部寄存器、掛在CPU總線上的設(shè)備以及內(nèi)置模塊的寄存器。本文主要介紹的是Debug功能。
JTAG原理分析
簡(jiǎn)單地說,JTAG的工作原理可以歸結(jié)為:在器件內(nèi)部定義一個(gè)TAP(TestAccessPort,測(cè)試訪問口),通過專用的JTAG測(cè)試工具對(duì)內(nèi)部節(jié)點(diǎn)進(jìn)行測(cè)試和調(diào)試。首先介紹一下邊界掃描和TAP的基本概念和內(nèi)容。
邊界掃描
邊界掃描(Boundary-Scan)技術(shù)的基本思想是在靠近芯片的輸入/輸出引腳上增加一個(gè)移位寄存器單元,也就是邊界掃描寄存器(Boundary-ScanRegister)。
當(dāng)芯片處于調(diào)試狀態(tài)時(shí),邊界掃描寄存器可以將芯片和外圍的輸入/輸出隔離開來。通過邊界掃描寄存器單元,可以實(shí)現(xiàn)對(duì)芯片輸入/輸出信號(hào)的觀察和控制。對(duì) 于芯片的輸入引腳,可以通過與之相連的邊界掃描寄存器單元把信號(hào)(數(shù)據(jù))加載到該引腳中去;對(duì)于芯片的輸出引腳,也可以通過與之相連的邊界掃描寄存器“捕 獲”該引腳上的輸出信號(hào)。在正常的運(yùn)行狀態(tài)下,邊界掃描寄存器對(duì)芯片來說是透明的,所以正常的運(yùn)行不會(huì)受到任何影響。這樣,邊界掃描寄存器提供了一種便捷 的方式用于觀測(cè)和控制所需調(diào)試的芯片。另外,芯片輸入/輸出引腳上的邊界掃描(移位)寄存器單元可以相互連接起來,在芯片的周圍形成一個(gè)邊界掃描鏈 (Boundary-ScanChain)。邊界掃描鏈可以串行地輸入和輸出,通過相應(yīng)的時(shí)鐘信號(hào)和控制信號(hào),就可以方便地觀察和控制處在調(diào)試狀態(tài)下的芯 片。
測(cè)試訪問口TAP
TAP(TestAccessPort)是一個(gè)通用的端口,通過TAP 可以訪問芯片提供的所有數(shù)據(jù)寄存器(DR)和指令寄存器(IR)。對(duì)整個(gè)TAP的控制是通過TAP控制器(TAPController)來完成的。下面先 分別介紹一下TAP的幾個(gè)接口信號(hào)及其作用。其中,前4個(gè)信號(hào)在IEEE1149.1標(biāo)準(zhǔn)里是強(qiáng)制要求的。
TCK:時(shí)鐘信號(hào),為TAP的操作提供了一個(gè)獨(dú)立的、基本的時(shí)鐘信號(hào)。
TMS:模式選擇信號(hào),用于控制TAP狀態(tài)機(jī)的轉(zhuǎn)換。
TDI:數(shù)據(jù)輸入信號(hào)。
TDO:數(shù)據(jù)輸出信號(hào)。
TRST:復(fù)位信號(hào),可以用來對(duì)TAPController進(jìn)行復(fù)位(初始化)。這個(gè)信號(hào)接口在IEEE1149.1標(biāo)準(zhǔn)里并不是強(qiáng)制要求的,因?yàn)橥ㄟ^TMS也可以對(duì)TAPController進(jìn)行復(fù)位。
STCK:時(shí)鐘返回信號(hào),在IEEE1149.1標(biāo)準(zhǔn)里非強(qiáng)制要求。
簡(jiǎn)單地說,PC機(jī)對(duì)目標(biāo)板的調(diào)試就是通過TAP接口完成對(duì)相關(guān)數(shù)據(jù)寄存器(DR)和指令寄存器(IR)的訪問。
系統(tǒng)上電后,TAPController首先進(jìn)入Test-LogicReset狀態(tài),然后依次進(jìn)入Run-Test/Idle、Selcct-DR- Scan、Select-IR-Scan、Capture-IR、Shift-IR、Exitl-IR、Update-IR狀態(tài),最后回到Run- Tcst/Idle狀態(tài)。在此過程中,狀態(tài)的轉(zhuǎn)移都是通過TCK信號(hào)進(jìn)行驅(qū)動(dòng)(上升沿),通過TMS信號(hào)對(duì)TAP的狀態(tài)進(jìn)行選擇轉(zhuǎn)換的。其中,在 Capture-IR狀態(tài)下,一個(gè)特定的邏輯序列被加載到指令寄存器中;在Shift-IR狀態(tài)下,可以將一條特定的指令送到指令寄存器中;在 Update—IR狀態(tài)下,剛才輸入到指令寄存器中的指令將用來更新指令寄存器。最后,系統(tǒng)又回到Run—Test/Idle狀態(tài),指令生效,完成對(duì)指令 寄存器的訪問。當(dāng)系統(tǒng)又返回到Run—Test/Idle狀態(tài)后,根據(jù)前面指令寄存器的內(nèi)容選定所需要的數(shù)據(jù)寄存器,開始執(zhí)行對(duì)數(shù)據(jù)寄存器的工作。其基本 原理與指令寄存器的訪問完全相同,依次為seIect—DR—Scan、Capture—DR、Shift—D、Exitl一DR、Update—DR, 最后回到Run-Tcst/Idle狀態(tài)。通過TDl和TDO,就可以將新的數(shù)據(jù)加載到數(shù)據(jù)寄存器中。經(jīng)過一個(gè)周期后,就可以捕獲數(shù)據(jù)寄存器中的數(shù)據(jù),完 成對(duì)與數(shù)據(jù)寄存器的每個(gè)寄存器單元相連的芯片引腳的數(shù)據(jù)更新,也完成了對(duì)數(shù)據(jù)寄存器的訪問。
目前,市場(chǎng)上的JTAG接口有14引腳和20引腳兩種。其中,以20引腳為主流標(biāo)準(zhǔn),但也有少數(shù)的目標(biāo)板采用14引腳。經(jīng)過簡(jiǎn)單的信號(hào)轉(zhuǎn)換后,可以將它們通用。
?
1.在電腦上寫一個(gè)服務(wù)程序,把IAR、KEIL和ADS中的RDI命令解析成相關(guān)的JTAG協(xié)議,然后通后一個(gè)物理轉(zhuǎn)換接口(注意,這個(gè)轉(zhuǎn)換只是電氣 物理層上的轉(zhuǎn)換,就像RS232那樣的作用)發(fā)送你的的目標(biāo)板。H-JTAG就是這樣的。H-JTAG的硬件就僅是一個(gè)物理電平的轉(zhuǎn)換接口,所以很簡(jiǎn)單。 而電腦中裝的h-JTAG軟件就是前面說到的服務(wù)程序,負(fù)責(zé)協(xié)議轉(zhuǎn)換的。
2.做一個(gè)板,用此板直接接收來自IAR、KEIL和ADS等軟件的調(diào)試命令,由此板做RDI-》JTAG協(xié)議的轉(zhuǎn)換。然后與目標(biāo)板通信,這就是JLINK的工作原理。
由上可以看出H-JTAG由于是軟件作協(xié)議轉(zhuǎn)換的,所以速度較慢,但是硬件簡(jiǎn)單。而第二種方法的JLINK一般帶一個(gè)強(qiáng)勁的CPU,作硬件協(xié)議轉(zhuǎn)換,把以硬件復(fù)雜,但速度快。
JTAG的基本原理
JTAG(JointTestActionGroup,聯(lián)合測(cè)試行動(dòng)組)是一種國際標(biāo)準(zhǔn)測(cè)試協(xié)議(IEEE1149.1兼容)。標(biāo)準(zhǔn)的JTAG接口是4線——TMS、TCK、TDI、TDO,分別為模式選擇、時(shí)鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出線。
JTAG的主要功能有兩種,或者說JTAG主要有兩大類:
1)一類用于測(cè)試芯片的電氣特性,檢測(cè)芯片是否有問題;
2)另一類用于Debug,對(duì)各類芯片以及其外圍設(shè)備進(jìn)行調(diào)試;一個(gè)含有JTAGDebug接口模塊的CPU,只要時(shí)鐘正常,就可以通過JTAG接口訪問CPU的內(nèi)部寄存器、掛在CPU總線上的設(shè)備以及內(nèi)置模塊的寄存器。本文主要介紹的是Debug功能。
JTAG原理分析
簡(jiǎn)單地說,JTAG的工作原理可以歸結(jié)為:在器件內(nèi)部定義一個(gè)TAP(TestAccessPort,測(cè)試訪問口),通過專用的JTAG測(cè)試工具對(duì)內(nèi)部節(jié)點(diǎn)進(jìn)行測(cè)試和調(diào)試。首先介紹一下邊界掃描和TAP的基本概念和內(nèi)容。
邊界掃描
邊界掃描(Boundary-Scan)技術(shù)的基本思想是在靠近芯片的輸入/輸出引腳上增加一個(gè)移位寄存器單元,也就是邊界掃描寄存器(Boundary-ScanRegister)。
當(dāng)芯片處于調(diào)試狀態(tài)時(shí),邊界掃描寄存器可以將芯片和外圍的輸入/輸出隔離開來。通過邊界掃描寄存器單元,可以實(shí)現(xiàn)對(duì)芯片輸入/輸出信號(hào)的觀察和控制。對(duì) 于芯片的輸入引腳,可以通過與之相連的邊界掃描寄存器單元把信號(hào)(數(shù)據(jù))加載到該引腳中去;對(duì)于芯片的輸出引腳,也可以通過與之相連的邊界掃描寄存器“捕 獲”該引腳上的輸出信號(hào)。在正常的運(yùn)行狀態(tài)下,邊界掃描寄存器對(duì)芯片來說是透明的,所以正常的運(yùn)行不會(huì)受到任何影響。這樣,邊界掃描寄存器提供了一種便捷 的方式用于觀測(cè)和控制所需調(diào)試的芯片。另外,芯片輸入/輸出引腳上的邊界掃描(移位)寄存器單元可以相互連接起來,在芯片的周圍形成一個(gè)邊界掃描鏈 (Boundary-ScanChain)。邊界掃描鏈可以串行地輸入和輸出,通過相應(yīng)的時(shí)鐘信號(hào)和控制信號(hào),就可以方便地觀察和控制處在調(diào)試狀態(tài)下的芯 片。
測(cè)試訪問口TAP
TAP(TestAccessPort)是一個(gè)通用的端口,通過TAP 可以訪問芯片提供的所有數(shù)據(jù)寄存器(DR)和指令寄存器(IR)。對(duì)整個(gè)TAP的控制是通過TAP控制器(TAPController)來完成的。下面先 分別介紹一下TAP的幾個(gè)接口信號(hào)及其作用。其中,前4個(gè)信號(hào)在IEEE1149.1標(biāo)準(zhǔn)里是強(qiáng)制要求的。
TCK:時(shí)鐘信號(hào),為TAP的操作提供了一個(gè)獨(dú)立的、基本的時(shí)鐘信號(hào)。
TMS:模式選擇信號(hào),用于控制TAP狀態(tài)機(jī)的轉(zhuǎn)換。
TDI:數(shù)據(jù)輸入信號(hào)。
TDO:數(shù)據(jù)輸出信號(hào)。
TRST:復(fù)位信號(hào),可以用來對(duì)TAPController進(jìn)行復(fù)位(初始化)。這個(gè)信號(hào)接口在IEEE1149.1標(biāo)準(zhǔn)里并不是強(qiáng)制要求的,因?yàn)橥ㄟ^TMS也可以對(duì)TAPController進(jìn)行復(fù)位。
STCK:時(shí)鐘返回信號(hào),在IEEE1149.1標(biāo)準(zhǔn)里非強(qiáng)制要求。
簡(jiǎn)單地說,PC機(jī)對(duì)目標(biāo)板的調(diào)試就是通過TAP接口完成對(duì)相關(guān)數(shù)據(jù)寄存器(DR)和指令寄存器(IR)的訪問。
系統(tǒng)上電后,TAPController首先進(jìn)入Test-LogicReset狀態(tài),然后依次進(jìn)入Run-Test/Idle、Selcct-DR- Scan、Select-IR-Scan、Capture-IR、Shift-IR、Exitl-IR、Update-IR狀態(tài),最后回到Run- Tcst/Idle狀態(tài)。在此過程中,狀態(tài)的轉(zhuǎn)移都是通過TCK信號(hào)進(jìn)行驅(qū)動(dòng)(上升沿),通過TMS信號(hào)對(duì)TAP的狀態(tài)進(jìn)行選擇轉(zhuǎn)換的。其中,在 Capture-IR狀態(tài)下,一個(gè)特定的邏輯序列被加載到指令寄存器中;在Shift-IR狀態(tài)下,可以將一條特定的指令送到指令寄存器中;在 Update—IR狀態(tài)下,剛才輸入到指令寄存器中的指令將用來更新指令寄存器。最后,系統(tǒng)又回到Run—Test/Idle狀態(tài),指令生效,完成對(duì)指令 寄存器的訪問。當(dāng)系統(tǒng)又返回到Run—Test/Idle狀態(tài)后,根據(jù)前面指令寄存器的內(nèi)容選定所需要的數(shù)據(jù)寄存器,開始執(zhí)行對(duì)數(shù)據(jù)寄存器的工作。其基本 原理與指令寄存器的訪問完全相同,依次為seIect—DR—Scan、Capture—DR、Shift—D、Exitl一DR、Update—DR, 最后回到Run-Tcst/Idle狀態(tài)。通過TDl和TDO,就可以將新的數(shù)據(jù)加載到數(shù)據(jù)寄存器中。經(jīng)過一個(gè)周期后,就可以捕獲數(shù)據(jù)寄存器中的數(shù)據(jù),完 成對(duì)與數(shù)據(jù)寄存器的每個(gè)寄存器單元相連的芯片引腳的數(shù)據(jù)更新,也完成了對(duì)數(shù)據(jù)寄存器的訪問。
目前,市場(chǎng)上的JTAG接口有14引腳和20引腳兩種。其中,以20引腳為主流標(biāo)準(zhǔn),但也有少數(shù)的目標(biāo)板采用14引腳。經(jīng)過簡(jiǎn)單的信號(hào)轉(zhuǎn)換后,可以將它們通用。
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- JLink引腳定義、JTAG引腳定義、SWD引腳定義
- JLINK-ARM-OB使用手冊(cè)
- JLINK下載Hex文件的詳細(xì)步驟 0次下載
- FPGA JTAG工具設(shè)計(jì)的教程說明 18次下載
- JTAG各類接口針腳定義和含義是怎么樣的
- 如何使用Jlink實(shí)現(xiàn)虛擬串口功能
- Jlink仿真器的SWD與JTAG下載模式如何進(jìn)行接線詳細(xì)方法說明 20次下載
- MPLAB REAL ICE 在線仿真器JTAG適配器的中文使用說明書
- jlink-v8固件修復(fù)工具下載 24次下載
- Jlink最新驅(qū)動(dòng)Setup_Jlink_V512e 198次下載
- stm32的JTAG和SWD的使用區(qū)別 36次下載
- SWD與JTAG之間的區(qū)別 7次下載
- IAR下用Jlink_調(diào)試STM32心得詳解 57次下載
- Setup_Jlink_V496最新Jlink驅(qū)動(dòng) 204次下載
- jlink-AXD仿真調(diào)試實(shí)驗(yàn)手冊(cè)
- jlink調(diào)試器的工作原理 3261次閱讀
- Jlink.exe(Jlink commander)的常用命令 6135次閱讀
- JTAG經(jīng)典問題解析 932次閱讀
- JTAG的基本原理 1.4w次閱讀
- JTAG 連接器和接口 4962次閱讀
- MIMXRT1060 EVK JTAG接口修改方法 1342次閱讀
- 構(gòu)建多電壓JTAG鏈 995次閱讀
- ARM的JTAG接口基礎(chǔ)知識(shí) 4368次閱讀
- JTAG的作用和原理分析 1.4w次閱讀
- 解析J-Link、J-Trace、Open JTAG原理以及其區(qū)別 1.8w次閱讀
- jtag和swd有什么不同_jtag和swd的區(qū)別 13.5w次閱讀
- jtag接口是什么_jtag接口定義 3.1w次閱讀
- JLink和JTAG接口詳細(xì)及接線 8.8w次閱讀
- jtag與jlink有什么區(qū)別 1.1w次閱讀
- jtag的基本原理與調(diào)試原理 1.1w次閱讀
下載排行
本周
- 1DC電源插座圖紙
- 0.67 MB | 2次下載 | 免費(fèi)
- 2AN158 GD32VW553 Wi-Fi開發(fā)指南
- 1.51MB | 2次下載 | 免費(fèi)
- 3AN148 GD32VW553射頻硬件開發(fā)指南
- 2.07MB | 1次下載 | 免費(fèi)
- 4AN111-LTC3219用戶指南
- 84.32KB | 次下載 | 免費(fèi)
- 5AN153-用于電源系統(tǒng)管理的Linduino
- 1.38MB | 次下載 | 免費(fèi)
- 6AN-283: Σ-Δ型ADC和DAC[中文版]
- 677.86KB | 次下載 | 免費(fèi)
- 7SM2018E 支持可控硅調(diào)光線性恒流控制芯片
- 402.24 KB | 次下載 | 免費(fèi)
- 8AN-1308: 電流檢測(cè)放大器共模階躍響應(yīng)
- 545.42KB | 次下載 | 免費(fèi)
本月
- 1ADI高性能電源管理解決方案
- 2.43 MB | 450次下載 | 免費(fèi)
- 2免費(fèi)開源CC3D飛控資料(電路圖&PCB源文件、BOM、
- 5.67 MB | 138次下載 | 1 積分
- 3基于STM32單片機(jī)智能手環(huán)心率計(jì)步器體溫顯示設(shè)計(jì)
- 0.10 MB | 130次下載 | 免費(fèi)
- 4使用單片機(jī)實(shí)現(xiàn)七人表決器的程序和仿真資料免費(fèi)下載
- 2.96 MB | 44次下載 | 免費(fèi)
- 53314A函數(shù)發(fā)生器維修手冊(cè)
- 16.30 MB | 31次下載 | 免費(fèi)
- 6美的電磁爐維修手冊(cè)大全
- 1.56 MB | 24次下載 | 5 積分
- 7如何正確測(cè)試電源的紋波
- 0.36 MB | 17次下載 | 免費(fèi)
- 8感應(yīng)筆電路圖
- 0.06 MB | 10次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935121次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420062次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73810次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評(píng)論