1 引 言
現代電子技術的高速發展對傳統的電路測試技術提出了新的挑戰。器件封裝的小型化、表面貼裝(SMT)技術的應用,以及由于板器件密度的加大而出現的多層印制板技術使得電路節點的物理可訪問性逐步減低,原來借助于針床的在線測試(ICT)的局限性日益增大。電路和系統可測試性的急劇降低導致測試費用占電路和系統總費用的比重越來越高。人們已意識到,單靠改善測試方法來實現電路的測試及故障診斷是遠遠不夠的。要從根本上解決問題,提高電路的可觀測性和可控制性,在電路系統設計之初就要充分考慮測試及故障診斷的要求,即進行可測性設計(design-for-testability,DFT)。基于IEEE 1149.1標準(又被稱為JTAG協議)制定的邊界掃描技術是對DFT的一個飛躍發展。邊界掃描技術的應用使得電路板上需要的測試節點數目減少,用于測試夾具的費用減少,比傳統的ICT測試節省了時間,縮短了產品推向市場的周期。另外,邊界掃描也支持CPLD、FPGA和Flash的 在線編程(ISP)。但是,在現實情況中,真正考慮到邊界掃描測試的電路設計并不普遍。
2 邊界掃描機制的引入
邊界掃描技術的基本思想是在芯片管腳和內部邏輯之間增加了串聯在一起的移位寄存器組,在邊界掃描測試模式下,寄存器單元在相應的指令下控制引腳狀態,從而對外部互連及內部邏輯進行測試。邊界掃描結構定義了4個基本硬件單元:測試存取口(TAP)、TAP控制器、指令寄存器和測試數據寄存器組。其中,TAP一般包括4條測試總線:測試數據輸入總線(TDI)、測試數據輸出總線(TDO)、測試模式選擇總線(TMS)和測試時鐘輸入總線(TCK)。還有一個可選擇的測試復位輸入端(TRST*)。FAP控制器是邊界掃描的核心部分,整個測試邏輯都是由它按一定順序調用的。在測試時鐘TCK的作用下,從TDI加入的數據可以在移位寄存器鏈中移動進行掃描。
目標板是一個中央資源板子系統,其結構如圖1所示。主要作用是為數字通道子系統提供精確的時序信息,為數字通道板之間提供定時和控制信號,分析處理數字通道子系統和探筆子系統返回的數據。該電路板上有4個邊界掃描器件:EPLD(EPM7256AETC144)、FPGA(EP1S25F780)、Flash EPROM(EPC8)和DSP(TMS320C6203B)。
在電路設計時,引入邊界掃描結構首要考慮的問題就是盡可能地選擇符合IEEE 1149.1標準的器件。目前大部分VLSI器件都帶邊界掃描結構,而對于小型芯片,在實現的功能相同的前提下,要盡量選用符合IEEE 1149.1標準的。
在此目標板上,我們將Flash EPROM(N30)、DSP(N31)、EPLD(N14)和FPGA(N24)依次連接起來,成為一個完整的掃描鏈路。TAP控制信號(TCK、TMS、TRST*)并聯,前一器件的TDO和后一器件的TDI依次連接成鏈。其中只有DSP有TRST*信號。對于TRST*信號,因為它是低電平有效,若在器件內部或者電路板上已經上拉,則在測試時可以不加以控制。而在該目標板的DSP內部此引腳處于下拉狀態,為使其進人邊界掃描狀態,必須外加激勵信號,因此本文把它單獨引出來。如圖2所示。
為保證信號的完整性,本文對來自測試裝置的主TAP控制信號進行了緩沖處理,同時用上拉電阻將TDI、TMS信號拉至邏輯1狀態,將TCK下拉接地。另外,在最后一個器件的TDO和被測板的TDO端口之間放置一個20 Ω的電阻以衰減反射。緩沖器類型的選用要參考電路板上器件的電平類型。如圖3所示,被測板上邊界掃描器件工作電壓為3.3 V,本文選用的緩沖器SN74LV244的工作電壓為2.7 V~5.5 V,可以滿足需要。
這樣做可以解決測試裝置和被測板之間的阻抗不匹配及提升TCK的速度,可增加測試裝置和被測板之間電纜的長度,也使得在測試裝置和被測板間的電纜沒有連接的情況下,功能模式和測試模式時信號可以保持安全狀態。
3 電路板互連測試
BSDL(boundary scan description language)是硬件描述語言(VHDL)的一個子集,是對邊界掃描器件的邊界掃描特性的描述,主要用來溝通邊界掃描器件廠商、用戶與測試工具之間的聯系。每一個邊界掃描器件都附有特定的BSDL文件。在測試進行之前,有必要查看電路板上邊界掃描器件的BSDL文件,以確保器件能夠正常地進入到邊界掃描測試狀態。以N24為例,其BSDL文件中提到:
attribute COMPLIANCE _ PATTERNS ofTMS320C6203:entity is“(EMU1,EMU0)(00)”;
由此可知,器件的EMU1和EMU0引腳處于邏輯0狀態時,器件才能處于邊界掃描模 式。這種引腳被稱為邊界掃描服從使能引腳(簡稱為BSCE引腳)。因此本文通過跳線將EMU0和EMU1接地。
另外,如果器件除了支持取樣/預載(SAMPLE/PRELOAD)、互連測試(EXTEST)、旁路(BYPASS)這些IEEE 1149.1強制的指令外,還支持IDCODE、CLAMP、HIGHZ等指令,就能給測試帶來更多方便。有些器件,內部功能不同但有著相同的封裝,IDCODE指令能對此加以很好的區分,確保正確的器件安裝在正確的位置。CLAMP和HIGHZ指令可以使器件的輸出引腳處于一個固定狀態,從而避免總線競爭。
3.1 掃描鏈完整性測試
掃描鏈連接完畢后,為保證后續工作的進行,要測試它的連通性,包括BYPASS測試和IDCODE測試。在TAP控制器處于復位狀態時,BST電路無效。器件已處于正常工作狀態,這時指令寄存器也已完成了初始化。如果器件支持IDCODE,則初始化的指令為IDCODE,否則為BYPASS。在TCK控制下,IDCODE或BYPASS寄存器中的內容就從TDO端口移出,測試軟件將讀到的數據與正確數據對比,從而判定掃描鏈的通斷和器件型號的正確性。對于BYPASS測試,器件的BYPASS寄存器初始值為0;對于IDCODE測試,器件的標準IDCODE從BSDL文件中提取。
3.2 包含非邊界掃描器件的互連測試
對于一個電路板來說,相當部分的器件都是非邊界掃描器件,如何有效利用掃描鏈來測試連接在邊界掃描器件之間的非邊界掃描器件是提高故障覆蓋率的關鍵。可以說,故障覆蓋率與邊界掃描器件的邊界掃描寄存器提供給非邊界掃描器件的可控制性和可觀測性的程度息息相關。
3.2.1 可控制性的提高
為了增加可控制性,對于非邊界掃描器件的重要的控制信號,如片選端和使能端,盡可能地直接控制,或者通過邊界掃描器件的邊界掃描單元進行控制。這樣在測試時,為了避免信號沖突可以把相應的器件禁用或者改變信號輸入輸出的方向。如圖4所示,器件N17(SN74LVC4245A)的/OE端和DIR端與N14(EPLD)的引腳相連。N50(74F245)的/E端也受N14控制,而DIR端接地,N50的/E端選通時,固定的B端為輸入而A端為輸出。N17和N50的A端引腳共享VXI總線的D00-D07,但B端引腳分別連在不同的總線上。如果N17的/OE端選通,DIR端置0時,A端為輸入,與N50的A端為輸出相矛盾;DIR端置1時,B端為輸入,不同的總線信號發送到同一引腳上,引起沖突。因此,通過N14的BS引腳控制N17和N50,讓兩個器件不同時選通,使測試順利進行。
3.2.2 可觀測性的提高
為了增加可觀測性,本文要給測試軟件提供這些非邊界掃描器件的基本信息,如器件的電源Vcc和接地GND引腳、I/O引腳的性質(是輸入、輸出、三態輸出還是雙向的)、器件的邏輯功能等,也就是對非邊界掃描器件進行建模,編寫測試軟件能識別的MODEL。以74F245為例,其MODEL如下:
在此MODEL中,描述了器件的引腳性質及各種狀態下的邏輯功能。MODEL被分成了若干PART,要根據電路板上器件的具體連接情況來選取相應的PART。對于N50和N51來說,因DIR引腳接地,固定為低,我們就選取PARTBtoA_with_DIR_fixed
在做互連測試時,建模的器件越多,故障覆蓋率就越高。本文做了一個對比實驗。如圖5所示。N14的109、110和111這3個引腳分別與3個上拉電阻相連,同時與插針J6相連。通過跳線可以使3個引腳處于001~111這7個狀態中的某一個,從而確定被測板電路響應VXI總線中7根中斷線中的某一根。在向測試軟件輸入被測板的信息時,我們默認109~111這3個引腳正常狀態為邏輯高。那么,當我們用跳線將J6的1、2 腳短接時,就人為制造了N14的109腳與地短路的故障。
第一階段,本文只對電路板上的179個電阻進行了建模,測試得到的與邊界掃描器件引腳相關的故障覆蓋率為56.78%,沒有檢測到故障。第二階段,本文在第一階段的基礎上又對39個與邊界掃描器件相連的非邊界掃描器件進行建模,測試得到的故障覆蓋率為67.03 %,有了明顯提高,且故障檢出,結果顯示如圖6所示。
4 結束語
復雜數字電路板的可測試性設計是電路和器件設計領域研究的重要課題。本文介紹了通過在復雜數字電路板中設計和利用器件的邊界掃描結構,提高電路板的可測試性,及通過增加邊界掃描器件對非邊界掃描器件的可控制性與可觀測性,獲得更高的故障診斷覆蓋率的方法。
邊界掃描技術實現了可測性設計的一次變革,但它并不能解決所有的可測性問題。邊界掃描的長處在于器件引腳之間的互連測試。由于TCK速度的限制,邊界掃描對于器件內部的動態故障顯得無能為力。而自建內測試技術(BIST)則是針對器件功能性測試的。把BIST結構置入芯片內,結合IEEE 1149.1中可選擇的RUNBIST指令可以達到高的故障覆蓋率。因此,要全方位地對故障類型進行考慮,利用現有的DFT技術,混合采用傳統的ICT,取長補短,才能更好地解決DFT問題,當代的ICT設備,大多也都支持邊界掃描測試。
評論
查看更多