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