作者: IPSES, XJTAG 生產后的中度復雜的印刷電路板(PCB)傳統上使用在線測試(ICT)和功能測試來進行檢測。其它的測試方法,例如昂貴的光學和X光檢查,經常是必須的,以來驗證BGA被正確地放置。然而,JTAG邊界掃描可以取代ICT,以作為功能測試的自然配對物,并且使光學與X光檢查不再必要。 ICT是一個隔離測試每個部件或者連接的方法。其使用例如用于簡單模擬部件的保護技術等技術。通過針床或者飛針對被測設備表面節點的訪問,被用來驗證與這些節點相連的已安裝的部件的正確性。 ![]() 圖1.使用保護技術測量電阻 盡管這類測試驗證了每個單一部件的正確性,它卻不能夠驗證一個板卡,當通電時,是否能作為一個整體正常運行。想要做到這點就必須進行功能測試。 盡管新測試方法在繁衍,功能測試依然是認定電子系統和板卡正常運行的支柱。從概念上來講,這類測試非常簡單-它在于檢測一個被測單元是否真正做到它所被設計的那樣。一個針床裝置也被融合進來以提供測試訪問。這個測試方法的中心單獨來講是有些局限的,因為我們只能確認每個系統運行正常,而不是被隔離的單獨部件 ![]() 圖2,一個典型的功能測試裝置 功能測試的一個特征是它可能需要集成許多儀器到測試平臺上。假設,例如,您需要測試一個被設計用來處理和無線通訊的板卡。為了執行功能測試,您需要使用其它與測試裝置有關的儀器例如電源,數字和模擬I/O,RF分析儀器(頻譜和矢量分析器,收發器,等等),與快速采集設備(示波器和數字轉換器)來激發和讀取單個信號。 或許一個例子最能揭示ICT與功能測試的區別。考慮一個串聯接口的MAX202驅動(見圖3)。ICT可能與檢查充電泵里電容的值有關,從而確認每個部件在隔離下運轉正常,而功能測試則可能會檢查發送和接收整個數據包。 ![]() 圖3.MAX232驅動典型的連接圖 直到最近,ICT才允許在執行功能測試之前,容易地驗證所有部件的正確安裝。然而,近來可達到部件密度的增長意味著PCB設計會經常不允許布置足夠數量的測試點。尤其是BGA部件的針腳在被焊接下后,完全不能被ICT訪問。其結果是ICT性價比越來越差,越來越不可持續,并且增加產品交貨期。這個問題最有革新的方案是邊界掃描。 JTAG邊界掃描 JTAG邊界掃描是一個電子測試方法,被設計用來克服通常與復雜的、高密度板卡所相關的測試訪問問題。邊界掃描,按照IEEE 1149.x標準,提供了芯片中一個可以使綜合數字測試協議在板卡層面就可適用的的電子線路。 這個線路把用在ICT中的物理探點用邊界掃描單元來替代。它們存在于器件核心邏輯與外部針腳之間,可以在芯片上每個輸入與輸出處捕獲或者驅入信號。 邊界掃描單元可以在一個物理探頭不能達到的地方提供虛擬探點,例如BGA下的焊點連接。一些細間距引線器件不能用物理探頭可靠地檢測,不過邊界掃描再一次可以為這些針腳提供數字測試訪問。 在器件的正常運作下,邊界掃描單元如透明一般。它們可以捕獲通過它們的數值,使可以觀測數據流,而不改變通過它們的信號成為可能。當一序列正確的指令 被送到控制針腳(測試模式選擇,TMS)上時,邊界掃描單元還可以通過與它們相連的針腳驅動出數值,像一個物理探點或者探針一樣激發電路。這允許工程師們, 用之前ICT測試同樣的方式,來驗證所有部件適當的互連(軌跡間短路的缺乏與連續性的驗證),以及這些器件的正確行為。 ![]() 圖4.邊界掃描部件的簡化圖 邊界掃描單元形成了一個串聯的掃描路徑,稱為邊界掃描寄存器。一序列需要寫入的數值可以通過TDI針腳被同步入這個寄存器中,而且一旦數據被邊界掃描單元捕獲,它可以通過TDO針腳被同步出去。JTAG器件可以被連接起來形成一個JTAG鏈。鏈中一個器件上的TDO針腳與另一個器件上的TDI針腳相連形成一個單一的寄存器。控制和時鐘信號(TMS和TCK)為鏈中的每個器件所共有。 正因為如此,ICT可以在一定程度上或者完全被侵入性更小的邊界掃描測試所取代,使用邊界掃描單元來代替物理探針。每個JTAG鏈都需要一個適當的測試訪問端口(TAP),包含四個針腳(TDI,TDO,TMS與TCK,以及一個可選的第五個TRST針腳)在一個外部連接器上。這與一個JTAG控制器相連,通常是一個伴有邊界掃描軟件套裝的小型USB硬件。 雖然JTAG邊界掃描被發現可以提高整體測試訪問,因而覆蓋率,但是它是一個數字協議,所以并不能直接測試模擬部分。邊界掃描訪問僅限于帶有至少一個JTAG器件的網(及與之相連的部件)。許多主導的JTAG邊界掃描系統含有“可測試設計”工具。它可以在設計階段顯示一個板卡的測試覆蓋率,突出顯示板卡上沒有足夠JTAG訪問的區域。在這個階段,或許可以將一個不支持JTAG的器件用一個支持的替換,以增加測試覆蓋率。 新方法:使邊界掃描與功能測試相結合 想要全面地測試一個系統,邊界掃描測試必須與功能測試一起運行。邊界掃描與ICT一樣,只能驗證每個部件放置正確以及運行正常。它不會驗證整個電路像設計的一樣工作。 當把ICT與功能測試(生產結束時最常見的)相結合時,工程師幾乎總會發現它們在兩個不同的工作臺上測試。因為對于每個JTAG鏈只需要一個單一連接器上的4個針腳,把邊界掃描融入到一個功能測試裝置上非常容易,并且能節約寶貴的時間與精力。事實上一些電子測試專家已經開始開發可以把功能和邊界掃描集成到一個工作臺的裝置和測試臺,以提供具有競爭力的總體成本以及開發時間的、更完全的設備。 ![]() 圖5(左)已將被測設備插入的集成功能測試與邊界掃描測試裝置 ![]() 圖6(右)裝置內部,功能測試設備與邊界掃描測試接口相集成的地方。 最大效率 集合功能與邊界掃描測試于一個系統帶來大量的和重要的好處。兩個方法相互補充,在于彌補每個技術可能的缺陷,以帶來更高的可靠性與有效性。兩個一起使用可能創造其它方式不可能取得的、良好的測試條件。 例如,通過用于功能測試的探針的激發,可能生成能被邊界掃描鏈所驗證的模式,然后可以激活電路中可以被功能測試所驗證的部分。集成方法的有效性意味著您不僅可以從一個設備中運行兩種測試類型,還意味著這些測試為板卡的設計與生產提供了更大的把握。 這些益處可以從一個測試直接與FPGA相連的DAC的簡單例子中看到。使用邊界掃描可以恰當地驅動FPGA的I/O來為DAC的模擬輸出編程,從而可以通過功能測試被捕獲板測量到。另一方面,如果我們考慮一個與FPGA直接相交互的ADC,在功能測試中可以使用一個生成卡來激活前者,然后使用邊界掃描來檢測被ADC讀數所編譯的位元。 以上的集成方法允許工程師們達到:
目前有可用的強大的工具來允許您擁有交互的硬件以及執行測試序列的開發環境,以用于集成測試系統的開發。只要簡單地把PXI JTAG模塊裝進PXI架里,它就能允許與邊界掃描鏈的交互。它可以和適用于具體應用的功能測試的幾個硬件裝備在一起。 盡管邊界掃描測試序列的開發應該用專業的工具(一個JTAG開發環境)來進行,生成的序列不僅可以與為功能測試所開發的序列相關聯,您還可以共同管理序列中提供兩類測試交互的部分。這樣,一旦功能和邊界掃描序列開發完成,并且集成一起,操作員接口將會被獨特地定制。 通過選擇一個可以允許不同類型硬件容易的結合模塊測試系統,包括第三方所開發的,您就有一個可以輕松升級與配置的、集成功能和邊界掃描測試的單一工作臺,不僅可以提供測試的可靠性,而且減少他們的成本與時間。 什么是邊界掃描? 硅設計方面的進步,例如增加器件密度和最近的BGA封裝,使傳統測試方法的功效大打折扣。為了克服這些問題,一些世界領先的硅生產商聯合起來成立了聯合測試小組。 這個小組的研究發現和建議被用來作為IEEE 1149.1標準,即標準測試訪問端口和邊界掃描結構的基礎。這個標準保留了和這個小組的聯系并且以縮寫JTAG被大家所俗知。 JTAG邊界掃描是一項被設計用來克服通常與復雜的、高密度的板相關聯之類的測試訪問問題的測試技術。通過激發位于例如FPGA與CPLD部件上的邊界掃描單元,工程師們可以用一個JTAG控制器對電路進行數碼地測試,并且使用強大的軟件套裝來精確地找到故障的位置與原因。 因為不再需要測試點,與ITC和功能測試相關的物理訪問問題不再是一個問題。測試系統與邊界掃描單元只通過一個4-5線測試總線相連。這必須在板卡設計中被考慮進來以確保可測性。許多領先的JTAG邊界掃描系統銷售商提供可測性設計指南來鼓勵設計工程師們去這樣做。 它是如何工作的? 所有器件核心邏輯與針腳間的信號都被一個稱為邊界掃描寄存器(Boundary Scan Register --- BSR)的串聯掃描路徑所截獲。在正常工作模式下,邊界掃描單元是隱形的,而在測試模式下,這些單元可以被用來設置和/或讀取數值。在邊界掃描過程中,一系列4-5個不同的信號被用來回報電路的性能。 |