1 引言
國內從90年代中期開始研究邊界掃描技術,取得了一定的成果,但多是對完全BS (boundary scan)器件的邊界掃描測試,對由非BS器件組成的邏輯簇的測試還鮮見報道。本文所介紹的基于邊界掃描的邏輯簇測試診斷軟件以Borland C++ Builder為開發工具,能夠自動產生邏輯簇的串行測試矢量,準確進行故障定位,并附加有邊界掃描結構完備性測試功能模塊,提高了測試可靠性。
2 邏輯簇測試診斷軟件設計
一個邊界掃描測試診斷過程可以簡述為:首先輸入測試矩陣進行激勵,然后輸出響應矩陣,最后通過分析響應矩陣就可達到對故障進行診斷定位的目的。所以說,故障診斷問題就集中在測試矩陣的構造、列測試向量的并行加載、列響應向量的并行采集和響應矩陣的分析上。我們在進行軟件設計時,利用并行測試矢量描述與簇描述文件來構造完備的測試矩陣,將其以串行掃描方式由邊界掃描器件的TDI經BS鏈路串行移位送到與邏輯簇相連的相應BSC,然后通過TMS發送測試控制命令,經TAP控制器控制BSC完成測試碼的并行加載和響應碼的并行采集。測試響應碼則經BS鏈路串行移位從邊界掃描器件的TDO送到測試機處理得到響應矩陣,最后通過對響應矩陣的分析來進行邏輯簇電路故障的診斷定位。
2.1 軟件設計流程圖
邏輯簇測試的程序流程圖如圖1所示,其中各步驟的具體作用如下。
?
邊界掃描信息數據選擇與設置:設置PCB板邊界掃描鏈的組成、選擇PCB板的網絡表、選擇各BS器件的BSDL信息、選擇被測邏輯簇描述文件、輸入其并行測試矢量描述文件。
編譯信息:從BS器件信息數據庫中讀取各芯片的邊界掃描長度、指令碼、邊界掃描單元總數、邏輯簇與BS器件互連網絡總數及各網絡的組成,并根據 PCB板的BS鏈組成給各BSC從最靠近TDO端開始編排序號,然后譯出加載診斷矩陣和采集響應結果的對應BSC序號。
生成測試矩陣:根據邏輯簇與BS器件互連網絡總數及各網絡的組成,結合邏輯簇的并行測試矢量或簇描述文件,利用測試生成算法生成測試矢量集,構成測試矩陣。
邊界掃描結構完備性檢查:進行邊界掃描寄存器、指令寄存器等寄存器的功能測試和各TAP端口信號故障測試。
TAP控制器復位并控制其進入移位指令寄存器狀態:在測試時鐘的上升沿發送“11111”到TMS引腳,掃描鏈所有芯片TAP控制器處于復位狀態。然后再次發送“01100”到TMS引腳,TAP控制器進入移位指令寄存器狀態。
選擇邊界掃描寄存器連接在掃描鏈上:從TDI 引腳發送各芯片的SAMPLE指令至各芯片的指令寄存器。在測試時鐘的上升沿發送 “11100”到TMS端,各芯片選擇邊界掃描寄存器連接在掃描鏈上, TAP控制器進入移位數據寄存器狀態。
測試矢量輸入掃描鏈并串行移位到相應BSC:讀取測試矢量集中的列向量送入對應邊界掃描單元(即邏輯簇的虛擬輸入端)等待加載。
向掃描鏈各BS器件輸入對應的EXTEST指令:在測試時鐘的上升沿發送“111100”至TMS端,TAP控制器進入移位指令寄存器狀態,發送各芯片 EXTEST指令至各芯片的指令寄存器。發送“111100”至TMS端,通過各芯片輸出端口上的BSC將數據加載到網絡,TAP控制器處于移位指令寄存器狀態。
掃描鏈各BS器件輸入對應的SAMPIE指令:發送各芯片的SAMPLE指令至指令寄存器。在測試時鐘的上升沿發送“11100”至TMS端,各芯片從互連網絡上獲取數據并存入輸入端口的BSC中,各芯片TAP控制器進入移位數據寄存器狀態。
從邊界掃描鏈TDO端串行輸出響應數據并存儲:連續發送N(BSC總數)個測試時鐘到TCK端,并在每個測試時鐘的下降沿采集TDO引腳移出的數據,提取并保存各邏輯簇虛擬輸出端對應的響應數據構成響應向量。
組成響應矩陣分析測試結果:將所有的響應向量組成響應矩陣,與正確測試響應相比較和分析,判斷邏輯簇是否存在故障。
2.2 邏輯簇測試的設置
在進行邊界掃描測試時,首先要對測試矢量自動生成所需的若干信息進行設置。對于BS器件之間的互連測試,其設置只需填寫掃描鏈信息和選擇網絡表文件。而對邏輯簇的測試因為涉及到簇的定義及針對其功能的并行測試矢量,設置所需信息相對復雜,包括有:
?、艗呙桄溌返慕M成芯片、各芯片的邊界掃描指令與其BSC單元信息;
?、票粶y電路板的網絡表文件*.edf;
⑶邏輯簇的并行測試矢量描述文件*.vdf;
⑷簇描述文件*.cld。
?
本軟件邏輯簇設置界面如圖2所示。掃描鏈路設置要依次選擇或填寫組成掃描鏈的芯片總數、芯片序號(第*片)、芯片標稱(網絡表中芯片的名稱 U1、U2等)以及芯片的具體名稱和相關邊界掃描信息。芯片的邊界掃描相關信息是一個可以編輯、增添、修改信息的數據庫,選擇了芯片名稱即可調用其數據庫信息?!斑壿嫶販y試選擇”一欄用來選擇被測的是單個非BS器件還是由非BS器件組成的簇,對于單個非BS器件,只需填寫器件標稱,而對于簇測試,還需編寫一個定義簇的輸入輸出、端口名稱的簇描述.cld(cluster description)文件。另外,它們的并行測試矢量文件.vdf(vector description file)也需由用戶編寫輸入。cld與vdf文件都是自行設計的有一定語法規范的的文件編輯格式,簡捷易用,用戶只需了解邏輯簇的組成和功能就可以容易地編輯。
邏輯簇測試所有信息選擇填寫完成后,點擊 “確定”開始測試或選擇“保存設置”、“載入設置”等命令。
評論
查看更多