JTAG接口是什么?他的作用是什么?
一直以來,JTAG接口都是大家的關(guān)注焦點(diǎn)之一。因此針對(duì)大家的興趣點(diǎn)所在,小編將為大家?guī)鞪TAG接口的相關(guān)介紹,詳細(xì)內(nèi)容請(qǐng)看下文。
一、JTAG接口是什么
JTAG最初是用來對(duì)芯片進(jìn)行測(cè)試的,JTAG的基本原理是在器件內(nèi)部定義一個(gè)TAP(Test Access Port,測(cè)試訪問口)通過專用的JTAG測(cè)試工具對(duì)內(nèi)部節(jié)點(diǎn)進(jìn)行測(cè)試。JTAG測(cè)試允許多個(gè)器件通過JTAG接口串聯(lián)在一起,形成一個(gè)JTAG鏈,能實(shí)現(xiàn)對(duì)各個(gè)器件分別測(cè)試。如今,JTAG接口還常用于實(shí)現(xiàn)ISP(In-System Programmer,在線系統(tǒng)編程),對(duì)FLASH等器件進(jìn)行編程。
JTAG編程方式是在線編程,傳統(tǒng)生產(chǎn)流程中先對(duì)芯片進(jìn)行預(yù)編程然后再裝到板上,簡(jiǎn)化的流程為先固定器件到電路板上,再用JTAG編程,從而大大加快工程進(jìn)度。JTAG接口可對(duì)DSP芯片內(nèi)部的所有部件進(jìn)行編程。
JTAG引腳定義
具有JTAG口的芯片都有如下JTAG引腳定義:
TCK——測(cè)試時(shí)鐘輸入;
TDI——測(cè)試數(shù)據(jù)輸入,數(shù)據(jù)通過TDI輸入JTAG口;
TDO——測(cè)試數(shù)據(jù)輸出,數(shù)據(jù)通過TDO從JTAG口輸出;
TMS——測(cè)試模式選擇,TMS用來設(shè)置JTAG口處于某種特定的測(cè)試模式。
可選引腳TRST——測(cè)試復(fù)位,輸入引腳,低電平有效。
含有JTAG口的芯片種類較多,如CPU、DSP、CPLD等。
JTAG內(nèi)部有一個(gè)狀態(tài)機(jī),稱為TAP控制器。TAP控制器的狀態(tài)機(jī)通過TCK和TMS進(jìn)行狀態(tài)的改變,實(shí)現(xiàn)數(shù)據(jù)和指令的輸入。
JTAG芯片的邊界掃描寄存器
JTAG標(biāo)準(zhǔn)定義了一個(gè)串行的移位寄存器。寄存器的每一個(gè)單元分配給IC芯片的相應(yīng)引腳,每一個(gè)獨(dú)立的單元稱為BSC(Boundary-Scan Cell)邊界掃描單元。這個(gè)串聯(lián)的BSC在IC內(nèi)部構(gòu)成JTAG回路,所有的BSR(Boundary-Scan Register)邊界掃描寄存器通過JTAG測(cè)試激活,平時(shí)這些引腳保持正常的IC功能。
JTAG在線寫Flash的硬件電路設(shè)計(jì)
JTAG在線寫Flash的硬件電路設(shè)計(jì)和與PC的連接方式
以含JTAG接口的StrongARM SA1110為例,F(xiàn)lash為Intel 28F128J32 16MB容量。SA1110的JTAG的TCK、TDI、TMS、TDO分別接PC并口的2、3、4、11線上,通過程序?qū)?duì)JTAG口的控制指令和目標(biāo)代碼從PC的并口寫入JTAG的BSR中。在設(shè)計(jì)PCB時(shí),必須將SA1110的數(shù)據(jù)線和地址線及控制線與Flash的地線、數(shù)據(jù)線和控制線相連。因SA1110的數(shù)據(jù)線、地址線及控制線的引腳上都有其相應(yīng)BSC,只要用JTAG指令將數(shù)據(jù)、地址及控制信號(hào)送到其BSC中,就可通過BSC對(duì)應(yīng)的引腳將信號(hào)送給Flash,實(shí)現(xiàn)對(duì)Flash的操作。
根據(jù)查閱資料及本人的一些實(shí)踐經(jīng)驗(yàn)所得,在使用JTAG下載接口的過程中,請(qǐng)不要隨意帶電插拔,否則會(huì)損壞FPGA芯片的JTAG口信號(hào)管腳。那么如何去確認(rèn)JTAG口已經(jīng)損壞了呢。首先你要去排除基本的幾項(xiàng)因素,一是,是否匹配連接,有很多設(shè)備會(huì)對(duì)應(yīng)很多接口,在實(shí)際條件下要匹配正確,否則也會(huì)出現(xiàn)上述情況;二是,排除下載線的問題,如果是下載線壞了,可以使用多根下載線去嘗試,排除這類問題。如果還是不能訪問FPGA的JTAG口,那么很有可能你的FPGA芯片的JTAG口已經(jīng)損壞。此時(shí)請(qǐng)用萬用表檢查TCK,TMS,TDO和Tdi是否和GND短路,如果任何一個(gè)信號(hào)對(duì)地短路則表示JTAG信號(hào)管腳已經(jīng)損壞。
至于JTAG口是什么,這里我們也來探討一下,JTAG英文全稱是 Joint Test Action Group,翻譯過來中文就是聯(lián)合測(cè)試工作組。JTAG是一種IEEE標(biāo)準(zhǔn)用來解決板級(jí)問題,誕生于20世紀(jì)80年代。今天JTAG被用來燒錄、debug、探查端口。當(dāng)然,最原始的使用是邊界測(cè)試。
二、JTAG接口的主要作用是什么
JTAG接口的主要作用是用來傳輸調(diào)試信息。簡(jiǎn)單說它就是一種專用的串行通訊口,配合專用的設(shè)備與上位機(jī)進(jìn)行通訊交換數(shù)據(jù),在芯片內(nèi)有專門的硬件部分與這個(gè)接口配合,可以讓上位機(jī)通過這個(gè)口的信息來下載程序、控制芯片動(dòng)作、調(diào)試程序、讀出或設(shè)置芯片內(nèi)寄存器、相關(guān)存儲(chǔ)器、外設(shè)等等。
最后,小編誠(chéng)心感謝大家的閱讀。你們的每一次閱讀,對(duì)小編來說都是莫大的鼓勵(lì)和鼓舞。希望大家對(duì)JTAG接口已經(jīng)具備了初步的認(rèn)識(shí),最后的最后,祝大家有個(gè)精彩的一天。