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