什么是JTAG及其使用方法?
JTAG不僅僅用于調(diào)試和下載程序
你可能熟悉JTAG是因為你使用過帶有JTAG接口的工具。
處理器經(jīng)常使用JTAG來實現(xiàn)調(diào)試/仿真功能,而且所有的FPGA和CPLD都利用JTAG來實現(xiàn)下載程序功能。
JTAG不僅僅是一種用于處理器調(diào)試/仿真的技術(shù)
JTAG不僅僅是一種為FPGA/CPLD下載程序的技術(shù)
通常與JTAG有關(guān)的調(diào)試和編程工具僅僅利用了潛在技術(shù)的一個方面即四線JTAG通訊協(xié)議。這四種信號,作為測試訪問端口(TAP)而廣為人知。它是IEEE 1149.1. 標(biāo)準(zhǔn)的一部分。開發(fā)該標(biāo)準(zhǔn)的目的在于提供一種印刷電路板組件(PCBA)測試的技術(shù)。這種技術(shù)不需要針床測試的物理訪問,也不像功能測試那樣需要定制開發(fā)量。設(shè)計TAP來與新的寄存器進行交互,這些新的寄存器被添加到器件中,以便實現(xiàn)這種測試方法。但是很快半導(dǎo)體制造商就意識到了使用TAP來訪問寄存器,可以提供其它功能如調(diào)試和編程。專門用于JTAG測試而加入到器件中的寄存器主要是邊界掃描寄存器(BSR)。正如它的名字所示,這個寄存器的單獨的位或單元位于器件的邊界,處于功能核心與引腳或焊球之間,通過引腳連接到板上——JTAG測試經(jīng)常被稱作邊界掃描。
JTAG / 邊界掃描是如何用于測試一個板的
邊界掃描單元 (如上所示)可以運行在兩種模式下。在功能模式下它們對器件的運行沒有影響,進行測試時板子可以正常運行。在測試模式下,它們將器件的功能核心與引腳斷開。通過把邊界掃描單元加入到測試模式中,就可以控制從一個使能器件傳入到網(wǎng)絡(luò)的值,同時也可以監(jiān)視網(wǎng)絡(luò)的值。將使能器件的功能與引腳控制斷開,使得邊界掃描測試開發(fā)比傳統(tǒng)功能測試更加容易,因為使用引腳時不需要器件配置或者引導(dǎo)。通過四引腳TAP,可以提供一種機制來控制和監(jiān)視器件中的所有使能信號,JTAG可以顯著減少測試電路板需要的物理訪問。我們主要以兩種方式來使用邊界掃描功能測試電路板。第一種方式是連接測試(如下所述) 。它提供了很好的測試覆蓋范圍, 特別是對于短路故障。連接測試完全基于電路板上的JTAG器件能力,連接,網(wǎng)絡(luò),以及(在XJTAG情況下)電路板上的邏輯功能。第二種方式擴展了使用范圍,因為它可以令電路板上的JTAG使能器件與非JTAG外設(shè)如DDR RAM 和 flash進行通訊。
什么是JTAG連接測試?
正如設(shè)計中所描述的那樣,JTAG連接測試會檢查電路板上JTAG使能器件周圍的連通性。連接到測試中的兩個JTAG使能引腳所在區(qū)域?qū)_保一個引腳可以被另一個控制。如果使能引腳沒有被連接,則可以通過驅(qū)動一個引腳并檢查到那些值不能被其它引腳讀取,從而測出短路故障。缺少拉電阻以及固定型故障也可以通過連接測試來發(fā)現(xiàn),而前提是
故障涉及到的邏輯器件的行為可以用真值表來描述。XJTAG會根據(jù)電路板上網(wǎng)表以及使能器件的JTAG信息自動生成向量,這些向量可以運行一次連接測試。
沒有JTAG使能的器件該怎么辦?
雖然主要的器件如處理器,F(xiàn)PGA通常具有JTAG能力,但是在每一個設(shè)計中仍有許多器件沒有JTAG能力。 DDR, SDRAM, SRAM, flash, MDIO 控制以太網(wǎng)物理層, SPI 和 I2C 溫度傳感器, 實時RTC, ADC和 DAC就是這些器件中的一些例子。連接測試可以很好地對非JTAG器件與JTAG使能器件的網(wǎng)絡(luò)連接進行短路故障檢測,但是他不能檢查JTAG器件或者非JTAG器件的開路故障。為了添加開路故障檢測的功能,在使能器件上,邊界掃描必須要能夠與外設(shè)進行通訊。如果通訊能被證實,就不會出現(xiàn)開路故障。這種類型的測試是非常簡單的,例如點亮一個LED并請求一個操作符來確認它被激活,或者更復(fù)雜一點如寫數(shù)據(jù)到RAM存儲器陣列并讀取回來。
創(chuàng)建一個JTAG測試系統(tǒng)需要耗費很多工作嗎?
使用XJTAG公司提供的標(biāo)準(zhǔn)非JTAG器件庫,你可以進行一系列的測試,不需要開發(fā)代碼來運行你的電路板。庫文件包含所有類型的非JTAG器件模型,從簡單的電阻和緩沖器到復(fù)雜的存儲器如DDR3。因為邊界掃描斷開了JTAG器件上的引腳控制與功能,所以可以使用相同的模型來控制一個外設(shè)而不用考慮JTAG器件。大多數(shù)板子都包含了JTAG接口來用于編程或調(diào)試,所以不需要額外設(shè)計。
從哪里可以得到我的器件的JTAG信息?
為了運行任何基于測試的邊界掃描,必須要了解一些關(guān)于電路板上使能器件的JTAG應(yīng)用信息。這些信息來自于那些器件的BSDL(邊界掃描描述語言)文件。為了與IEEE1149.1標(biāo)準(zhǔn)兼容,半導(dǎo)體廠商必須為其器件提供BADL文件。
JTAG測試僅僅用于產(chǎn)品嗎?
完全不是。邊界掃描測試的一個重要優(yōu)點是只需要一個JTAG控制器。其它的產(chǎn)品測試技術(shù)如飛針測試,自動光學(xué)/ X射線檢查或者針床測試都需要專業(yè)的測試設(shè)備,這些設(shè)備在工程師的工作臺上無法獲得。在電路板開發(fā)中使用邊界掃描可以去除不確定性–硬件工程師可以在系統(tǒng)測試前甚至在固件完成之前就可以測試樣機板的制作缺陷。在產(chǎn)品生命周期的早期階段開發(fā)的測試系統(tǒng)很容易重復(fù)使用,也可以延伸到產(chǎn)品中。
為什么我應(yīng)該使用JTAG/邊界掃描來測試我的電路板?
3個簡單的字母–BGA
越來越多的器件以BGA(球柵陣列)封裝的形式供應(yīng)。電路板上的每一個BGA器件在測試上都有嚴(yán)格的限制,我們可以使用傳統(tǒng)的針床或飛針機來完成。
JTAG/邊界掃描使用了簡單的四引腳接口,允許使能器件上的信號被控制和監(jiān)視而不需要任何直接的物理訪問
另外3個字母–NRE
制作測試裝置的一次性工程費用(NRE)可能會非常高。在許多情況下使用JTAG/邊界掃描后就不會再需要這種裝置。在其它情況下,這種裝置可以被極大地簡化,從而顯著減少費用。
更短的測試時間
對于小批量生產(chǎn)的電路板,很難評估測試裝置開發(fā)的費用是否合適。在這種情況下,可以選擇飛針測試。但是這種技術(shù)的測試周期比較長,而JTAG/邊界掃描測試的測試時間很短,并且不需要測試裝置。
更低的測試開發(fā)費用
因為不同的處理器/FPGA與外設(shè)的交互方式不同,傳統(tǒng)的功能測試需要為每一個電路板定制開發(fā)。JTAG/邊界掃描可以顯著減少這種開發(fā)費用,因為它提供了一個簡化的接口來控制這些與外設(shè)進行交互的IO引腳。這種標(biāo)準(zhǔn)接口在所有JTAG使能器件中都是相同的。這也意味著當(dāng)構(gòu)建測試系統(tǒng)時,可以使用及重復(fù)使用一系列通用的模型。
測試和編程僅需一個工具
在產(chǎn)品生產(chǎn)研發(fā)中我們經(jīng)常使用JTAG來進行下載程序這一步驟。同時我們也可以使用JTAG來進行邊界掃描測試,它可以減少生產(chǎn)過程中的步驟和操作數(shù)量。
在工程師的工作臺上為原型機提供產(chǎn)品級測試
傳統(tǒng)的測試技術(shù)需要體積大且價格昂貴的設(shè)備。JTAG/邊界掃描測試只需要一個JTAG控制器,例如XJTAG公司的XJLink2控制器,其大小與電腦鼠標(biāo)相似。
卓越的故障診斷
JTAG/邊界掃描與功能測試不同,它可以提供高精度的故障信息以幫助工程師進行快速修復(fù)。XJTAG不僅可以觀測到電路板布局上的實際物理方位上的故障,也可以觀測到電路區(qū)域的邏輯設(shè)計錯誤,這種錯誤存在于原理圖中。
功能測試不起作用時能使‘死’板重獲新生
JTAG/邊界掃描測試可以運行在任何帶有JTAG接口的電路板上。如果電路板不引導(dǎo)的話,傳統(tǒng)的功能測試就不能正常運行。重要的外設(shè)如RAM或者時鐘上的簡單故障可以使用JTAG發(fā)現(xiàn),但是功能測試卻不能提供任何診斷信息。
關(guān)于XJTAG
XJTAG公司是一個全球領(lǐng)先的IEEE 1149.x 標(biāo)準(zhǔn)兼容的邊界掃描軟件和硬件系統(tǒng)供應(yīng)商。XJTAG致力于創(chuàng)新產(chǎn)品的開發(fā)與高質(zhì)量的技術(shù)支持。公司總部位于英國劍橋,在全球與超過50家專業(yè)供應(yīng)商及技術(shù)伙伴合作緊密。XJTAG為客戶提供多種多樣的邊界掃描測試解決方案。方案覆蓋多種產(chǎn)業(yè),包括航空航天,汽車業(yè),安防,醫(yī)療,制造業(yè),網(wǎng)絡(luò)通訊等。
編輯:admin 最后修改時間:2019-07-31