柳 穎 徐小杰
(海軍七○二廠 上海 200434)
某引俄指控系統(tǒng)具有態(tài)勢顯示、評估、決策、武器射擊參數(shù)的解算和輸入、武器發(fā)射、控制等功能,是引俄潛艇的核心指揮控制系統(tǒng)。它擯棄了前蘇聯(lián)專有的計算機體系和硬件架構(gòu),采用了VME總線、QNX實時操作系統(tǒng)、1553B軍用總線等較先進的歐美技術(shù),集成化程度非常高,大部分的板件由大規(guī)模集成電路CPLD、FPGA及DSP芯片組成。近年來,該引俄指控系統(tǒng)進入故障高發(fā)期,修理時通常采取更換部件或整件的方法來排除故障,備件消耗較大。而現(xiàn)有的ATE設(shè)備采用人工編制測試激勵、采集輸出波形比對的維修手段,顯然不適應(yīng)該類板件的修理,需要一種新的測試?yán)砟詈蜏y試技術(shù)來解決傳統(tǒng)測試方法所無法解決的問題。邊界掃描技術(shù)應(yīng)運而生[8]。邊界掃描技術(shù)作為一種國際標(biāo)準(zhǔn),提供了一套完整的、標(biāo)準(zhǔn)化的超大規(guī)模集成電路測試性設(shè)計方法,能克服測試復(fù)雜數(shù)字電路的技術(shù)障礙,利用它可以對被測電路板,大規(guī)模集成電路進行靜態(tài)測試、功能測試、故障隔離和定位[9]。能有效提高該指控系統(tǒng)故障板件的維修效率、維修質(zhì)量,提升該型裝備復(fù)雜電路板檢測、修理的技術(shù)能力。
邊界掃描測試技術(shù)是聯(lián)合測試行動組(JTAG)于1987年提出了一種新型的電路板可測性設(shè)計方法。1988年,IEEE和JTAG組織達(dá)成協(xié)議,共同開發(fā)邊界掃描測試架構(gòu),并于1990年形成了IEEE 1149.1標(biāo)準(zhǔn),也稱為JTAG標(biāo)準(zhǔn)[5]。目前,JTAG已成為一種國際標(biāo)準(zhǔn)測試協(xié)議,主要用于各類芯片的內(nèi)部測試[6]?,F(xiàn)在大多數(shù)高級器件(包括FPGA、MCU、DSP以及CPU等)都支持JTAG協(xié)議。標(biāo)準(zhǔn)的JTAG接口是四線接口:TCK、TMS、TDI以及TDO,分別為時鐘、模式選擇、數(shù)據(jù)輸入和數(shù)據(jù)輸出信號線[7]。
圖1 數(shù)字電路邊界掃描結(jié)構(gòu)
邊界掃描測試(BOUNDARY SEAN TEST)的應(yīng)用示意圖見圖2所示。其基本思想是在靠近芯片的輸入輸出管腳上增加一個移位寄存器單元,因為這些移位寄存器單元都分布在芯片的邊界上(周圍),所以被稱為邊界掃描寄存器(Boundary-Scan Register Cell)。當(dāng)芯片處于測試或調(diào)試狀態(tài)的時候,這些邊界掃描寄存器可以將芯片和外圍的輸入輸出隔離開來。通過這些邊界掃描寄存器單元,可以實現(xiàn)對芯片輸入輸出信號的觀察和控制。在正常的運行狀態(tài)下,這些邊界掃描寄存器對芯片來說是透明的,所以正常的運行不會受到任何影響[1]。
圖2 邊界掃描測試應(yīng)用的示意圖
邊界掃描技術(shù)對于含有支持邊界掃描功能的器件的電路板的測試,是一種快速有效的方法。在引俄指控系統(tǒng)的板件中不僅含有帶邊掃功能的器件,還包含一定數(shù)量的與這些可編程器件相關(guān)聯(lián)的非邊界掃描器件[10]。因此在應(yīng)用邊界掃描技術(shù)對電路板進行測試時總體上分兩種方法進行實現(xiàn),以期提高邊界掃描技術(shù)測試時的故障覆蓋率和隔離率。
1)可編程器件邊掃測試
被測的指控系統(tǒng)板件的主要器件為CPLD和FPGA,這些帶有JTAG測試接口的芯片可采用邊界掃描測試的方法進行測試。通過加載邊界掃描器件的BSDL文件,建立鏈路,進行鏈路功能測試。通過鏈路掃描檢測讀取可編程器件的IDCODE與期望的IDCODE做比較,可以判定IC電源是否正常、IC的型號,生產(chǎn)廠家信息是否跟期望的一致[4]。鏈路測試通過后,再進行互聯(lián)測試。在互聯(lián)測試過程,掃描鏈路上輸出引腳的邊掃單元利用指令置0或1,然后讓掃描鏈上的對應(yīng)輸入引腳捕捉預(yù)置值,通過對比結(jié)果,可迅速判定可編程器件每個引腳的好壞以及可編程器件間兩兩互聯(lián)是否出現(xiàn)開路、短路、虛焊等問題。
2)非邊界掃描元器件的檢測
復(fù)雜電路板的一般結(jié)構(gòu)中,邊界掃描器件及其關(guān)聯(lián)器件構(gòu)成一個相對獨立的網(wǎng)絡(luò),關(guān)聯(lián)器件的部分引腳可以從邊緣連接器到達(dá),其狀態(tài)能夠通過邊緣連接器來獲取或改變;而另一部分引腳連接在邊界掃描鏈路上,并且其狀態(tài)與邊界掃描器件核心邏輯相關(guān),其狀態(tài)能夠通過邊界掃描鏈路來獲取或改變[7]。
在該引俄指控系統(tǒng)中,1553B總線適配板及數(shù)字跟蹤系統(tǒng)兩種電路板,裝機量比較大,電路特點比較典型。涵蓋了可編程大規(guī)模器件、總線收發(fā)器、SRAM存儲器、HI1567收發(fā)器、驅(qū)動器電路及串口通信器件。在開發(fā)板件的TPS時,需要根據(jù)每種板件的功能和特點具體分析電路板的測試方案。
圖3 1553B總線適配板可編程器件測試連接圖
1553B總線適配板是一塊VME總線的TX1-BV-2M板,主要組成包括總線接口模塊,中斷處理模塊,地址選擇模塊,編碼/解碼模塊,雙口存儲器模塊,收發(fā)器模塊,變壓器模塊。其中總線接口模塊,中斷處理模塊,地址選擇模塊由CPLD實現(xiàn),CPLD選用XILINX公司XC95288-HQ208-15C。編碼/解碼模塊由FPGA實現(xiàn),F(xiàn)PGA選用XILINX公司XC5210-PC84-6I。MC05板的測試方案分為可編程器件測試、HI1567收發(fā)器測試、SRAM存儲器測試三部分。該板的可編程器件測試連接圖見圖3。
收發(fā)器HI1567是滿足MIL-STD-1153/1760協(xié)議的低功耗的CMOS雙收發(fā)器。HI-1567發(fā)射器的功能是把互補的CMOS/TTL數(shù)字信號轉(zhuǎn)換成曼徹斯特信號,傳送原理波形圖如圖4,每一路傳送器都有使能信號。TXATXA#是一對相反信號,如果TXA是高電平TXA#是低電平,那么BUSA與BUSA#之間的差值大于0。如果TXA是低電平,TXA#是高電平,BUSA與BUSA#之間的差值小于0。
圖4 傳送波形圖
相反,HI-1567接收器可以將曼徹斯特信號轉(zhuǎn)變成TTL信號,接收原理波形圖如圖5,如果BUSA-BUSA#>0那么RXA就是高電RXA#就是低電平,如果BUSA-BUSA#<0那么RXA就是低電平RXA#就是高電平。
圖5 接收波形圖
在1553B總線適配板上有四個HI1567,一個HI1567有兩個通道,每個通道都有收發(fā)功能,HI1567每一個通道的TX、RX,控制引腳都與FPGA(XC5210)的I/O引腳相連,連接方式如圖6。測試前把每個通道的收、發(fā)端通過短路線連到一起,測試時測試平臺的上位機軟件把HI1567的測試程序下載到對應(yīng)的FPGA中自動運行。該測試程序的主要功能是讓每個通道進行自發(fā)自收測試,并對測試結(jié)果進行對比,判斷數(shù)據(jù)有沒有誤碼。選取與FPGA相連的CPLD(XC95288)的4個IO引腳標(biāo)記測試結(jié)果,如0011表示測試通過、1001表示U1A有問題、1011代表U1B有問題等。最終通過JTAG接口讀出測試結(jié)果傳送到上位機上進行顯示。
圖6 HI1567檢測連接圖
針對板件中SRAM的檢測,測試連接圖如圖7所示。K6T0808C1D是三星公司生產(chǎn)的靜態(tài)RAM,存儲器的數(shù)據(jù)線、地址線,控制線分別與FPGA芯片XC5210PC84的IO引腳相連。
圖7 SRAM檢測硬件連接圖
測試平臺通過JTAG接口控制FPGA的IO引腳發(fā)送控制指令,多次對同一個地址寫不同的數(shù)據(jù),同時讀取對應(yīng)地址的SRAM數(shù)據(jù)與寫入的數(shù)據(jù)做比較、運算,從而可以判讀出具體是哪位數(shù)據(jù)線有問題。多次對不同的地址線寫數(shù)據(jù),同時讀取相對應(yīng)的地址線的數(shù)據(jù)與寫入的數(shù)據(jù)做比較,可以判斷出具體哪位地址線有問題,從而可以實現(xiàn)對SRAM的測試與診斷[11]。
該板主要控制芯片是EPM7128S,EPM7128S為ALTERA公司的MAX7000系列產(chǎn)品,此系列產(chǎn)品支持邊界掃描功能。數(shù)字跟蹤系統(tǒng)板的測試主要分三部分:可編程器件(EPM7128S)測試、驅(qū)動器電路測試(主要包括54HC14和54HC243)、串口芯片測試(MAX1480)。該板的可編程器件的測試連接圖如圖8所示。
數(shù)字跟蹤系統(tǒng)板驅(qū)動器電路主要包括4個54HC14和2個54HC243。54HC14的邏輯功能為六路施密特觸發(fā)反相器,在數(shù)字跟蹤系統(tǒng)板中54HC14的作用是把接插件的接口信號取反輸入到EPM7128S(U5)中進行運算處理。54HC243的邏輯功能為四路總線收發(fā)器,在數(shù)字跟蹤系統(tǒng)板中54HC243的主要功能是EPM7128S(U5)與外部接口進行數(shù)據(jù)交換的同時,將數(shù)據(jù)輸入到EPM7128S(U4)內(nèi)部。驅(qū)動器電路測試連接框圖如圖9所示。
圖8 數(shù)字跟蹤系統(tǒng)板可編程器件測試連接框圖
圖9 驅(qū)動器測試連接框圖
測試的時候需要在上位機軟件中給54HC14和54HC243導(dǎo)入一個模型,模型的主要功能是描述器件的邏輯功能,上位機軟件會根據(jù)模型自動生成測試向量。測試向量由邊界掃描控制卡通過JTAG接口控制ATE的IO板卡往外發(fā)送,經(jīng)過54HC14輸入到 EPM7128S(U5),EPM7128收到的數(shù)據(jù)通過JTAG接口輸入到邊界掃描控制卡,軟件會自動對比發(fā)送的測試向量與收到的測試向量,從而判斷出該部分電路的好壞,并可以定位到具體的網(wǎng)絡(luò)。
MAX1480B是具備電器隔離的RS485/RS232數(shù)據(jù)通信接口芯片,DE為邏輯數(shù)據(jù)輸入使能端,DE為低電平驅(qū)動器輸出高阻態(tài)。DI為邏輯數(shù)據(jù)輸入端,當(dāng)DE為高時,若DI為低,則A端輸出為低而B端輸出為高;同理,若DI為高,則A端輸出為高而B端輸出為低。收發(fā)器的接收器輸出。如果A-B>200mV,則/RO為低;如果 A-B<200mV,則/RO為高。MAX1480B的引腳功能如圖10所示。
圖10 MAX1480引腳功能圖
對MAX1480芯片進行測試時需要在適配板上加一個MAX1480芯片用來接收差分信號A、B,并把差分信號轉(zhuǎn)換成TTL信號輸入到ATE的IO板卡。測試的時候利用邊界掃描控制器控制ATE的IO板向MAX1480的控制引腳和數(shù)據(jù)引腳發(fā)送測試向量,測試向量轉(zhuǎn)化為差分的信號A和B通過接插件輸入到ATE適配板上面的MAX1480差分輸入端A和B中,轉(zhuǎn)化為TTL信號后輸入到ATE內(nèi)部。ATE把接收的測試向量與輸出的測試向量做比較,判斷器件的好壞。串口芯片測試連接圖如圖11所示。
圖11 串口芯片測試連接框圖
邊界掃描技術(shù)的出現(xiàn)是可測試性設(shè)計和測試思想的一次飛躍,它提供了一種完整的、標(biāo)準(zhǔn)化的電路板可測試性設(shè)計和測試方法[2]。采用邊界掃描測試技術(shù)實現(xiàn)某引俄指控復(fù)雜電路板的互連性、簇測試以及器件功能的測試,達(dá)到故障定位的目的。開發(fā)典型板件的TPS,不僅解決了大規(guī)模集成器件的檢測難題,還能兼顧電路中其他功能模塊的測試,提高了電路測試的故障覆蓋率。該測試診斷方法的研究及運用同樣適用于其他高集成度、高性能的復(fù)雜電路板件的維修測試與故障診斷,具有非常重要的實用價值[3]。