電路板快速測試系統(tǒng)設(shè)計需求及應(yīng)用
摘要:本文設(shè)計了一套基于邊界掃描的電路板快速測試系統(tǒng),該系統(tǒng)利用計算機并行端口,通過適配器發(fā)送、接收測試向量,然后對采集數(shù)據(jù)進行分析,顯示測試結(jié)果。本文主要介紹了該系統(tǒng)的硬件結(jié)構(gòu)、軟件思想和診斷策略。經(jīng)實驗,該系統(tǒng)能夠為維修人員提供有力的支持。
1 引 言
隨著電子技術(shù)的不斷發(fā)展,電子設(shè)備中越來越多的使用大規(guī)模可編程數(shù)字邏輯器件,如 FPGA 等。這種器件的使用提高了電子設(shè)備的性能,增加了可靠性,但是與此同時復(fù)雜的邏 輯關(guān)系、細密的引腳也給設(shè)備的維修帶來了巨大的壓力。維修人員無法通過探針來測量芯片 引腳上的波形,而使用“針床”等專用測試平臺又需要付出很高的成本。邊界掃描技術(shù)的誕 生為這一問題提供了一個新的解決途徑。邊界掃描協(xié)議是聯(lián)合測試工作組(JTAG:Joint test action group)提出了,并于1990 年形成了IEEE 1149.1 工業(yè)標準。該標準通過設(shè)置在器件 輸入輸出引腳與內(nèi)核電路之間的邊界掃描單元對器件及外圍電路進行測試,從而提高了電路 板的可測性。邊界掃描就像一根“虛擬探針”,能夠在不影響電路板正常工作的同時,采集 芯片引腳的狀態(tài)信息,通過分析這些信息達到故障診斷功能。本文針對當前復(fù)雜數(shù)字電路板 快速測試難的現(xiàn)狀,設(shè)計了一套基于邊界掃描的電路板測試系統(tǒng),利用該系統(tǒng)可以對含有邊 界掃描接口的復(fù)雜數(shù)字電路板進行快速診斷,幫助維修人員進行維修。
2 基于邊界掃描的電路板測試系統(tǒng)設(shè)計
2.1 設(shè)計需求
(1)對于包含邊界掃描接口的電路均可測試,用戶需根據(jù)實際情況自定義被測電路板JTAG 掃描鏈結(jié)構(gòu)。
(2)既能在線對電路板上邊界掃描鏈路及接口信號進行采集,又能在離線狀態(tài)實現(xiàn)對電路 板上模塊的測試功能。
(3)能夠?qū)崿F(xiàn)數(shù)據(jù)的顯示、錄制、分析,預(yù)置系統(tǒng)觸發(fā)、停止條件的功能。
(4)對采集到的信號進行快速分析,產(chǎn)生測試報告供維修人員使用。
2.2 基本結(jié)構(gòu)及工作原理
該系統(tǒng)包括一臺計算機和一個邊界掃描適配器,兩者使用計算機并口相連,其整體結(jié)構(gòu)框圖如圖1 所示。
使用該邊界掃描測試系統(tǒng)進行測試時應(yīng)首先進行電路板上掃描鏈的測試,確保掃描鏈正 常。然后根據(jù)實際情況選擇進行在線功能測試或者離線功能測試。在線功能測試即電路板不 脫離設(shè)備,通過采集電路板內(nèi)邊界掃描單元及電路板接口的數(shù)據(jù)判斷電路板工作狀態(tài)和故障 分布情況。此步驟適合于對電路板進行快速診斷、快速維修時使用。離線功能測試即電路板 脫離設(shè)備,在連接好電源后,由測試系統(tǒng)對電路板進行信號加載,分模塊對整個電路進行測 試。此步驟適合于對故障電路板維修時使用。如果懷疑系統(tǒng)自身出現(xiàn)故障,可以通過自測試 進行診斷。
2.3 邊界掃描適配器設(shè)計
邊界掃描適配器采用Altera 公司的EPM7128SLC84-15 芯片作為控制器,負責與計算機 相連,上傳、下載測試數(shù)據(jù)和控制字,按時鐘產(chǎn)生邊界掃描控制時序及測試向量。芯片內(nèi)部 按功能分應(yīng)包含通信接口、指令寄存器、數(shù)據(jù)寄存器、TAP 控制器、信號采集模塊、信號發(fā) 生模塊和分頻模塊。結(jié)構(gòu)框圖如圖2 所示。
從計算機傳來的指令信號和數(shù)據(jù)信號通過通信接口分別保存在邊界掃描適配器內(nèi)部的 寄存器中,然后適配器中的其它模塊如TAP 控制器、信號采集模塊和信號發(fā)生模塊將依據(jù) 指令寄存器中的指令字進行相應(yīng)的工作,包括發(fā)送JTAG 總線時序、移位、并行采集數(shù)據(jù)和 并行發(fā)送數(shù)據(jù)等。采集的數(shù)據(jù)通過通信接口上傳給計算機以供分析時使用。分頻器用來產(chǎn)生 各模塊工作所需要的時鐘信號。本文在MAX+Plus II 環(huán)境下,使用VHDL 語言對各模塊進 行設(shè)計,頂層文件使用圖形輸入方式將各模塊連接起來。
2.4 計算機軟件設(shè)計
本系統(tǒng)的計算機軟件采用Visual Basic 6.0 高級編程語言開發(fā),其主要功能是通過計 算機并行端口實現(xiàn)計算機與邊界掃描適配器之間的實時通信,將指令信號和測試數(shù)據(jù)發(fā)送給 邊界掃描適配器,同時將測試響應(yīng)數(shù)據(jù)上傳至計算機,并完成對數(shù)據(jù)的處理、顯示、存儲等 操作。
(1)系統(tǒng)的軟件組成
系統(tǒng)軟件包含下列組件:系統(tǒng)主程序、物理接口程序、硬件設(shè)置程序、實時采集程序、 離線測試程序、自測試程序和數(shù)據(jù)庫管理程序。軟件組成框圖如圖3 所示。
系統(tǒng)主程序:顯示系統(tǒng)主界面,并與系統(tǒng)中其它模塊進行切換。
物理接口模塊:控制計算機端口,負責從計算機端口讀取數(shù)據(jù)和將數(shù)據(jù)發(fā)送到端口上。
系統(tǒng)硬件設(shè)置模塊:設(shè)置系統(tǒng)的各種參數(shù),包括掃描鏈路的結(jié)構(gòu)、芯片型號,同時進 行總線故障測試和內(nèi)部邊界掃描鏈測試,以驗證掃描鏈路是否暢通。
在線測試模塊:使用外測試命令,對電路板上邊界掃描器件引腳以及電路板接口信號 進行采集、顯示與分析。
離線測試模塊:依次向電路板接口或者板上邊界掃描器件輸入激勵測試信號,觀察其 響應(yīng)信號是否與標準結(jié)果一致,判斷板上連線、功能模塊是否正常。
自測試模塊:輸出系統(tǒng)自測試向量,觀察系統(tǒng)自響應(yīng)是否與標準一致,檢查系統(tǒng)是否 工作正常。
數(shù)據(jù)庫管理模塊:保存系統(tǒng)數(shù)據(jù)、測試向量、標準測試結(jié)果等數(shù)據(jù),用以查詢比較等 操作。
(2)物理接口模塊
由于在 VB 中不能直接使用命令對計算機端口進行操作,本文中選擇動態(tài)鏈接庫 inpout32.dll 幫助系統(tǒng)軟件實現(xiàn)對底層硬件的控制。在開發(fā)計算機端Windows 應(yīng)用程序時只 需在開發(fā)前將其驅(qū)動程序相關(guān)文件拷貝到計算機,并且在開發(fā)過程中注冊其動態(tài)鏈接庫相應(yīng) 的API 函數(shù),即可實現(xiàn)并行端口的應(yīng)用。本文物理接口模塊中引用了動態(tài)連接庫中的兩個函 數(shù):Inp32 和Out32 用于并行端口的輸入和輸出,相關(guān)程序代碼如下所示。
寫入操作:Out add, reg
讀出操作:reg = Inp(add) 其中,add 為寫入/讀出的地址,reg 為寫入/讀出的數(shù)據(jù)。
(3)在線測試模塊 在線測試模塊主要實現(xiàn)對掃描鏈信號的循環(huán)采集,同時將采集到的結(jié)果顯示在屏幕上。 采集數(shù)據(jù)的同時對掃描鏈上信號的變化頻率進行統(tǒng)計,實時顯示統(tǒng)計結(jié)果??深A(yù)置中斷暫停 條件,使用虛擬工具箱單獨顯示關(guān)鍵信號狀態(tài),儲存采集數(shù)據(jù),進行信號分析,生成報告表 供維修人員使用。
(4)離線測試模塊 離線測試模塊主要實現(xiàn)電路板單獨測試功能。用戶可選擇進行自動測試或是手動測試。 自動測試時,系統(tǒng)將已生成的測試向量依次送入被測電路板,然后采集電路板響應(yīng)向量,將 其與標準響應(yīng)進行比較。手動測試時,用戶可根據(jù)需要利用系統(tǒng)提供的工具手動編寫測試向 量,系統(tǒng)將一步步執(zhí)行用戶的指令。
3 故障分析策略
在邊界掃描測試系統(tǒng)進行循環(huán)采集時,一般采集頻率較低。例如使用10MHz 的時鐘對邊 界掃描鏈上的數(shù)據(jù)進行移位輸出,如果掃描鏈上有500 個單元,則采集數(shù)據(jù)頻率最高只能達 到20KHz。而電路板上信號的脈寬有的很短,如何對采集到的數(shù)據(jù)進行故障分析成為系統(tǒng)設(shè) 計中的難點。本系統(tǒng)主要采取下列兩個方法進行分析。
如果掃描鏈的采集間隔遠大于信號脈寬,系統(tǒng)可能很長時間無法采集到信號的變化,因 此信號統(tǒng)計法需要運行相當?shù)臅r間才能保證分析的準確性。
方法二:數(shù)據(jù)分析法
記錄采集到的數(shù)據(jù),計算每路信號之間的差異,著重觀察相同的信號,如全0、全1 或 者其它。出現(xiàn)全0、全1 的引腳易發(fā)生呆滯故障,而出現(xiàn)信號的變化且采集信號完全相同的 引腳易發(fā)生斷路故障。
上述兩種方法僅適合于對周期信號的分析。如果電路板某模塊的輸入輸出引腳上信號為 單脈沖信號,且脈寬較短,則在線測試很難采集到它們的脈沖。對于這類模塊電路的測試一 般采用離線測試的方法人為輸入測試向量分析模塊輸出是否正常。
4 結(jié)論
通過實驗,該系統(tǒng)能夠成功實現(xiàn)對含邊界掃描器件(如FPGA 等)電路板的在線測試、 離線測試等功能,而且系統(tǒng)的體積小,測試時與電路板的連接線少,雖然由于測試點有限, 不能提供100%的故障覆蓋率,但該系統(tǒng)仍能夠為維修人員對含邊界掃描器件電路板的快速 維修提供有效支持。
本文作者創(chuàng)新點是:將邊界掃描技術(shù)應(yīng)用在電路板快速測試系統(tǒng)中,設(shè)計了一套具有自 主知識產(chǎn)權(quán)的邊界掃描測試系統(tǒng),并對系統(tǒng)的故障分析策略進行了討論研究,提出對周期信 號采用信號統(tǒng)計法和數(shù)據(jù)分析法的故障分析策略。