探討基于JTAG技術的嵌入式系統測試的各個階段
引言
本文引用地址:http://www.j9360.com/article/193150.htmIEEE 1149.1邊界掃描測試標準(通常稱為JTAG、1149.1或dot 1)是一種用來進行復雜IC與電路板上的特性測試的工業標準方法,大多數復雜電子系統都以這種或那種方式用到了IEEE1149.1(JTAG)標準。為了更好地理解這種方法,本文將探討在不同年代的系統開發與設計中是如何使用JTAG的,通過借助過去有關JTAG接入的經驗或投入,推動設計向新一代發展。
大多數復雜電子系統都以這種或那種方式用到了IEEE1149.1(JTAG)標準。如果系統采用的是復雜FPGA或CPLD,那么幾乎可 以肯定這些硬件是通過JTAG端口設置的。如果系統利用仿真工具來調試硬件或軟件,那么仿真工具也很可能是通過JTAG端口與微處理器對話。而且,如果系 統中采用了球柵陣列(BGA)封裝的IC,那么JTAG也是測試BGA器件與底層印制電路板之間連接的最有效方法。
支持EEE 1149.1邊界掃描測試標準的IC與電路板都具備一個支持JTAG測試的4線串行總線(第5條線為可選的復位線)-TDI(測試數據輸入)、TDO(測 試數據輸出)、TMS(測試模式選擇)與TCK(測試時鐘)。該總線主要支持對焊點、電路板過孔、短路和開路等連接進行結構測試。此外,許多CPLD和 FPGA制造商也將JTAG作為其器件在系統編程與配置的標準方法。JTAG不但支持結構(互連)測試,如今還是一種用于在系統級實現配置、編程以及混合 信號測試的標準方法。
但大多數設計團隊都在新設計中對JTAG的應用更傾向于不一步到位,而是以一種更易掌控的方式慢慢轉為全面利用JTAG接口。有些團隊規則(discipline)中廣泛利用了JTAG接口,有些則只利用了其中很有限的一部分。但每種規則都根據其自身的需要調整JTAG。在各種規則的共同 作用下,發展出了幾代不同的JTAG應用,每一代JTAG應用都有各自的特點,具有某種增強功能。
圖1:第二代JTAG應用:利用JTAG多支路復用器簡化對多個JTAG鏈的接入。
由于存在各種各樣的JTAG接入要求,所以開發團隊必需采用一種跨規則的JTAG接入策略以最大程度地發揮JTAG接入的功能。這種策略對 于實現一種標準方法非常必要,這種標準方法可以復用,并且下一代產品可以基于其構建。為了更好地理解這種方法,我們將探討在不同年代的系統開發與設計中是 如何使用JTAG的,目的是通過借助過去有關JTAG接入的經驗或投入,推動設計向新一代發展。
JTAG應用的各個階段
在JTAG應用的第一階段,只用到了某些有關電路板的特性和功能,有關該方法的整理和標準化工作卻做得很少。
這是一種最簡單的方法,幾乎甚至完全不需要進行任何軟件工具投資,通常使用IC廠商提供的免費工具即可。該階段的JTAG通常不具備或者只 具備很有限的診斷功能,也沒有可用于生成測試或編程的矢量的軟件。這時的JTAG接入只在生產時用于配置CPLD或對閃存編程。稍復雜一些的板卡也可以用 它來做測試。
然而,這并不是成本最低的方法。因為每種規則都有可能會為其自身的需要用一個單獨的JTAG接頭(header),于是一塊電路板上就得 用多個JTAG接頭,從而增加了成本,也占用了電路板空間。而且,每種規則可能都會開發它們自己的“自制”軟件工具和硬件,以實現與JTAG特性的交互, 而這些軟件工具和硬件對其他規則(discipline)而言卻是多余的。所以,采用這種方法開發的產品受其定制開發的影響,很難轉移到新一代的產品中 去。如果在生產中采用,這種方法也會增加成本,因為它需要進行多次插入。
許多開發團隊都被這一代JTAG應用綁住了手腳。最終,當系統復雜性持續增大時,要保持產品的競爭力,就必需采用一種JTAG接入策略。
第二代JTAG應用
在第二代JTAG應用中, 不同的開發團隊規則對在新板卡設計上采用JTAG功能進行管理。該階段的JTAG應用需要一定程度的ATPG(自動測試程序生成)軟件工具(這類軟件工具 具有穩健的診斷功能)投資,用于對編程和測試矢量的開發和傳送進行管理。這類ATPG工具的供應商提供從簡單的針對每一任務的矢量生成的支持與咨詢服務, 也提供生產用的多任務(multi-seat)全套軟件支持。
在每塊電路板上添加一個策略性IC器件-JTAG復用器件,目的是去除電路板上的多個1149.1接頭并管理多個JTAG通路。這個JTAG復用器件所占用的電路板空間通常比一個JTAG接頭還小,但卻簡化了元件的隔離,也簡化了提高接入效率所需掃描路徑的組織。
例如,開發人員可能會希望將不同廠商的FPGA隔離在不同的掃描鏈中,以便簡化利用每個廠商提供的工具接入JTAG的過程。另外,我們可能 還希望將微處理器放在一個單獨的掃描鏈中,從而在仿真工具調試軟件或在閃存寫程序時,最大程度提高微處理器的運行速度。ATPG廠商對這些器件都提供了很 好的支持,因此軟件支持通常很簡單,直接提供交鑰匙的方案。
評論