一種嵌入式系統(tǒng)實(shí)現(xiàn)的JTAG調(diào)試器
JTAG 作為一個通用的標(biāo)準(zhǔn)器件功能測試接口, 具有靈活高效、易于實(shí)現(xiàn)等優(yōu)點(diǎn), 是微控制器、微處理器、DSP、SoC 等器件的重要外部接口。它不但可以用來測試內(nèi)部功能模塊狀態(tài), 而且可以實(shí)現(xiàn)在線調(diào)試(ICE)功能。arm系列處理器正是通過JTAG 接口使用內(nèi)部集成的ICE 功能, 并采用這種方式實(shí)現(xiàn)在線調(diào)試。此外CPLD、FPGA 等器件大多都可以使用JTAG 接口實(shí)現(xiàn)在線編程或下載。因此,JTAG 接口已經(jīng)成為復(fù)雜芯片系統(tǒng)的必備接口, 在芯片測試、調(diào)試及實(shí)現(xiàn)其他特殊功能方面發(fā)揮著重要作用。
本文引用地址:http://cafeforensic.com/article/152297.htm基本原理
JTAG 標(biāo)準(zhǔn)即IEEE 1149.1 標(biāo)準(zhǔn)。聯(lián)合測試行動組JTAG(Joint Test Action Group )起草了邊界掃描測試BST(Boundary Scan Testing)規(guī)范, 該標(biāo)準(zhǔn)為數(shù)字集成電路規(guī)定了一個測試訪問口(TAP)和邊界掃描結(jié)構(gòu),解決了由于數(shù)字電路高度集成化帶來的一些測試難題。它還提供了一種訪問和控制芯片內(nèi)部仿真(ICE) 模塊的方法, ICE 模塊一般包括內(nèi)部掃描和自測試的功能, 可以很好地支持集成電路的開發(fā)。
JTAG標(biāo)準(zhǔn)工作原理
邊界掃描技術(shù)的基本思想是在靠近芯片的輸入輸出管腳增加一個移位寄存器單元。通過這些邊界掃描寄存器單元,可以實(shí)現(xiàn)對芯片輸入輸出信號的觀察和控制。另外, 靠近芯片輸入輸出管腳的邊界掃描(移位) 寄存器單元可以相互連接起來,在芯片的周圍形成一個邊界掃描鏈(Boundary- Scan Chain) .一般的芯片都會提供幾條獨(dú)立的邊界掃描鏈, 用來實(shí)現(xiàn)完整的測試功能。
在JTAG標(biāo)準(zhǔn)中, 寄存器被分為兩大類: 數(shù)據(jù)寄存器(DR- Data Register)和指令寄存器(IR- Instruction Register),邊界掃描鏈寄存器即為一種很重要的數(shù)據(jù)寄存器,邊界掃描鏈可用來觀察和控制芯片的輸入輸出。指令寄存器用來實(shí)現(xiàn)對數(shù)據(jù)寄存器的控制。TAP 是一個通用的端口, 通過TAP 可以訪問芯片提供的所有數(shù)據(jù)寄存器和指令寄存器, 對整個TAP的控制是通過TAP控制器完成的。TAP包括5個信號接口: (1)TCK(Test Clock), 為TAP操作提供了一個獨(dú)立的基本的時(shí)鐘信號。(2)TMS(Test-Mode Selector) ,用來控制TAP狀態(tài)機(jī)的轉(zhuǎn)換。(3)TDI(TestData Input), 是JTAG指令和數(shù)據(jù)的串行輸入端。在TCK的上升沿被采樣,結(jié)果送到JTAG寄存器中。(4)TDO(Test Data Output),是JTAG指令和數(shù)據(jù)的串行輸出端。在TCK的下降沿被輸出到TDO.(5)TRST, 是JTAG電路的復(fù)位輸入信號, 低電平有效。
通過TAP控制器的狀態(tài)轉(zhuǎn)移即可實(shí)現(xiàn)對數(shù)據(jù)寄存器和指令寄存器的訪問, 從而實(shí)現(xiàn)對JTAG測試電路的控制。TAP控制器共有16 種狀態(tài)。通過測試模式選擇TMS 和時(shí)鐘TCK可控制狀態(tài)的轉(zhuǎn)移。
指令寄存器允許特定的指令被裝載到指令寄存器當(dāng)中, 用來選擇需要執(zhí)行的測試,或者選擇需要訪問的測試數(shù)據(jù)寄存器。每個支持JTAG調(diào)試的芯片必須包含一個指令寄存器。JTAG標(biāo)準(zhǔn)要求芯片支持的基本指令有:EXTEST、 INTEST、SAMPLE/PRELOAD、BYPASS、HIGHZ等。
arm7TDMI調(diào)試原理
從功能上看, arm7TDMI 處理器主要包括三大部分:
(1)arm CPU Main Processor Logic , 包括了對調(diào)試的硬件支持; (2)嵌入式ICE- RT Logic , 包括了一組寄存器和比較器, 用來產(chǎn)生調(diào)試異常、設(shè)置斷點(diǎn)和觀察點(diǎn); (3)TAP控制器, 它通過JTAG接口控制和操作掃描鏈。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論