IEEE 1149.1標準規(guī)定的邊界掃描技術(shù)是針對復(fù)雜數(shù)字電路而制定的。標準中的自治測試技術(shù)現(xiàn)已成為數(shù)字系統(tǒng)可測性設(shè)計的主流。在利用邊界掃描技術(shù)對芯片印刷電路板進行測試時,單芯片與多芯片電路板雖有相同點,但也有不同點。因為多芯片的電路板可以將幾個芯片分別作為測試向量進行發(fā)送和接收,而單芯片電路板則只需要一個集發(fā)送、接收于一體的芯片。本文在以PC機作為邊界掃描測試向量生成和故障診斷的基礎(chǔ)上,對單芯片EPM9320LC84的印刷電路板故障診斷進行了討論。
1 EPM9320LC84的結(jié)構(gòu)和性能
1.1 主要性能
EPM9320LC84是Altera公司生產(chǎn)的EPLD器件,它的主要性能如下:
內(nèi)含JTAG邊界掃描測試電路。
在5V電源條件下,JTAG接口可編程。
所有的I/O均可在3.3V或5V電源下工作,并且在引腳處都有輸入/輸出寄存器。
Altera MAX+PLUSⅡ 開發(fā)系統(tǒng)可提供軟件設(shè)計支持,該開發(fā)系統(tǒng)可工作在486PC機、奔騰PC機、Sun SPARC工作站、HP9000系列700工作站、IBM RISC系統(tǒng)/6000或DEC Alpha AXP工作站上。
利用EDIF、Verilog HDL、VHDL和其它軟件可通過CAE工具(如OrCAD)提供仿真支持。
1.2 管腳說明
圖1是EPM9320LC84的引腳圖,其功能如下:
VCC、VPP:芯片電源端。
GND:芯片地端。
I/O:輸入/輸出引腳。
IN1~IN4:專用輸入引腳。
TCK,TMS:分別為時鐘測試和測試模式選擇端。
:測試模式選擇端。
TDI,TDO?分別為測試數(shù)據(jù)輸入、輸出端。
其中,TCK、TMS、TDI、TDO為JTAG邊界掃描接口,它們和芯片內(nèi)部的邊界掃描寄存器?504個數(shù)據(jù)捕獲寄存器,168個數(shù)據(jù)更新寄存器,一個指令捕獲寄存器,一個指令更新寄存器?鏈形成的邊界掃描結(jié)構(gòu)一起可用于芯片內(nèi)部和外部測試。
2 測試系統(tǒng)配置
把ByteBlaster 下載電纜連到PC機的打印并口可實現(xiàn)PC機并口與JTAG接口的互連。PC機可用軟件來控制邊界掃描接口以完成邊界掃描測試任務(wù)。
利用VC++語言可編寫MFC應(yīng)用程序(內(nèi)容主要包括:TAP控制類、測試向量生成、發(fā)送、采集類、故障診斷類等)?以達到人機交互、故障診斷、數(shù)據(jù)管理三個方面的要求。 3 數(shù)據(jù)發(fā)送與數(shù)據(jù)采集
3.1 數(shù)據(jù)發(fā)送
通過extest模式發(fā)送數(shù)據(jù)時。可在移位階段將捕獲寄存器的數(shù)據(jù)移出,同時將測試圖形移入。而在更新階段,測試圖形從捕獲寄存器傳送到更新寄存器,再由更新寄存器驅(qū)動測試信號并將其輸出至I/O引腳。對于單芯片電路板來說,無論是輸入引腳,還是在引腳發(fā)送測試圖形時,其控制三態(tài)均應(yīng)為輸出狀態(tài),即令OEJ更新寄存器為1。
3.2 數(shù)據(jù)采集
數(shù)據(jù)采集的目的是得到引腳對測試圖形的響應(yīng)。如果引腳正確,輸出的測試圖形就等于采集到的測試圖形,如果引腳出現(xiàn)故障,兩者必有差異。由于采集到的測試數(shù)據(jù)就是故障診斷的依據(jù),所以能否正確、合理地采集到數(shù)據(jù)是數(shù)據(jù)采集的關(guān)鍵。單芯片電路板不像多芯片那樣利用sample模式采集數(shù)據(jù),而是仍舊利用extest模式來采集數(shù)據(jù)。
圖2是利用sample模式采集數(shù)據(jù)的原理圖。在捕獲階段,由OEJ和OUTJ來控制三態(tài)門狀態(tài),以使電路板上三態(tài)輸入引腳為高阻狀態(tài),三態(tài)輸出引腳為輸出狀態(tài)。由于采集的數(shù)據(jù)是引腳的實際狀態(tài),而不是引腳對輸出測試圖形的響應(yīng),故用sample模式不能正確地采集測試圖形以用于故障診斷。
圖3是利用extest模式在捕獲階段進行數(shù)據(jù)采集的示意圖,圖中的三態(tài)門受OEJ、OUTJ更新寄存器控制,而這兩個寄存器的數(shù)值是發(fā)送測試圖形時的值,三態(tài)有效。所以它所采集的數(shù)據(jù)即為引腳對測試圖形的響應(yīng),可以滿足采集要求。
4 測試算法
電路板常見故障模型有呆滯型故障、固定開路故障和短路故障。為了消除誤判和混淆故障及提高診斷速度,可在算法上結(jié)合電路結(jié)構(gòu)對自適應(yīng)算法和CX-TB導(dǎo)通測試算法以及二進制計數(shù)測試序列進行改進,以對引腳全部的短路故障、呆滯故障進行完備診斷。具體步驟如下:
(1)引腳分類
電路圖中的引腳可分為輸入、輸出、輸入/輸出、空閑、專用輸入、地/電源、NC幾類。由于專用輸入引腳邊界掃描結(jié)構(gòu)沒有更新寄存器,所以測試圖形無法輸出到引腳?因此不能用此方法測試。而地/電源引腳、NC引腳不帶有邊界掃描結(jié)構(gòu)所以也不能測試。故此,真正能進行測試的引腳只有前四類。可令n等于前四類引腳數(shù)目的總和。
(2)生成測試向量
按照引腳號對前四類引腳進行從小到大排序,序號為:0到n-1,然后計算log2(n+2)的值,再根據(jù)有余進一的原則算出并行測試向量個數(shù)m。為避免出現(xiàn)誤判,可從000……1開始進行二進制計數(shù),以形成測試向量,其行數(shù)為n,列數(shù)為m。
(3)發(fā)送測試向量
(4)采集測試結(jié)果
(5) 添加測試圖形
比較測試序列與采集到的結(jié)果,確定異常行(總數(shù)W)。為避免混淆和誤判故障,可進一步添加C個為全0或全1碼的測試圖形。
(6)故障診斷
該算法具有故障定位準確,測試周期短,測試效率高等特點。
5 故障診斷
由于EPM9320LC84芯片采用CMOS工藝制作,因此,它的引腳與地、電源短路分別歸為呆滯于0和呆滯于1;器件引腳懸空也歸為呆滯于0。其引腳互連測試圖形是“與”邏輯。
具體診斷時,可比較輸出測試圖形與采集測試圖形的差異,相同即為正常行,不同則為異常行。診斷過程如下:
若異常行和正常行的測試向量相同,則添加測試圖形令異常行并行測試向量為全0,其余行測試向量為全1,而對于發(fā)送、采集添加的測試向量,若正常行采集結(jié)果為全0,則正常行與異常行對應(yīng)引腳互連。否則必有其它腳與異常行對應(yīng)腳互連。
如果異常行向量是全1,判斷異常行對應(yīng)引腳呆滯于1。
如果異常行向量為全0,則可添加測試圖形令所有測試向量為全1,同時發(fā)送、采集添加的測試
向量,此時若異常行測試結(jié)果為全0,則異常行對應(yīng)引腳呆滯于0。否則必有其它腳與該異常行對應(yīng)引腳互連。
如果兩個異常行測試向量相同且為全0,則可添加測試圖形以令所有測試向量為全1,同時發(fā)送、采集添加的測試向量,如果異常行為全0,則異常行對應(yīng)引腳呆滯于0;如果測試結(jié)果是兩行都為全1,則添加測試圖形令兩個異常行測試向量分別為全1和全0,其余向量為全1,再一次發(fā)送、采集添加的測試向量,如果采樣結(jié)果是兩個異常行為全0,則兩異常行對應(yīng)引腳互連;否則兩異常行對應(yīng)引腳無關(guān),必有其它引腳與異常行對應(yīng)引腳互連。
如果兩個異常行測試向量相同,且既非全0又非全1,則兩異常行對應(yīng)引腳互連。
6 結(jié)束語
利用芯片邊界掃描結(jié)構(gòu),采用本文介紹的算法,不需要附加其它芯片,就能完成EPM9320LC84所有I/0引腳的印刷電路板故障診斷?它所覆蓋的故障包括引腳呆滯,引腳互連等。而且這種算法對多引腳互連故障也能準確診斷。其測試方法簡單易行,測試時間不超過1秒,而且診斷十分準確。