劉軍 中國(guó)電子科技集團(tuán)第38研究所數(shù)字技術(shù)部 230031
基于邊界掃描技術(shù)的PCB測(cè)試
劉軍 中國(guó)電子科技集團(tuán)第38研究所數(shù)字技術(shù)部 230031
現(xiàn)代雷達(dá)中使用的PCB中大量采用集成度很高的IC,尤其是BGA器件。傳統(tǒng)的測(cè)試方法無法進(jìn)行或者測(cè)試效率低下,并且測(cè)試的覆蓋率也不高,PCB調(diào)試工作極為困難,迫切需要一種高效的測(cè)試手段來解決硬件測(cè)試中遇到的難題。邊界掃描測(cè)試結(jié)構(gòu)提供了一種方法,可以高效的測(cè)試PCB上面的器件,采用邊界掃描技術(shù)設(shè)計(jì)的PCB自動(dòng)測(cè)試設(shè)備(ATE)很好的解決了高性能PCB測(cè)試的難題。
自動(dòng)測(cè)試設(shè)備;BGA器件;邊界掃描
我們知道早期雷達(dá)的數(shù)字處理技術(shù)水平較低,我國(guó)第一代采用脈沖壓縮技術(shù)的警戒雷達(dá)甚至是用模擬器件(聲表面波濾波器)而非數(shù)字器件來壓縮雷達(dá)回波。隨著大規(guī)模集成電路和計(jì)算機(jī)技術(shù)的發(fā)展,越來越多的高性能通用及專用CPU、DSP、FPGA等超大規(guī)模數(shù)字器件在雷達(dá)中被廣泛使用。雷達(dá)中使用的PCB越來越復(fù)雜,器件安裝密度也越來越高,我們以往采用的電裝檢測(cè)方法已經(jīng)不能滿足要求。本文介紹了邊界掃描技術(shù)的原理、優(yōu)勢(shì),以及基于邊界掃描技術(shù)設(shè)計(jì)的一種PCB自動(dòng)測(cè)試設(shè)備(ATE),并通過實(shí)際的測(cè)試報(bào)告說明了這種設(shè)備的實(shí)用性及先進(jìn)性。
上世紀(jì)八十年代,聯(lián)合測(cè)試行動(dòng)工作組(JTAG)開發(fā)出邊界掃描的測(cè)試規(guī)范,這個(gè)規(guī)范后來被制定為IEEE1149.1-1990標(biāo)準(zhǔn)。邊界掃描測(cè)試結(jié)構(gòu)提供了一種方法,可以高效的測(cè)試PCB上面的器件。它提供了對(duì)設(shè)備的觀察和控制能力,1149. 1標(biāo)準(zhǔn)被設(shè)計(jì)用來改進(jìn)電路錯(cuò)誤檢查和隔離的能力。
大多數(shù)復(fù)雜數(shù)字器件以這種或那種方式用到了IEEE1149.1(JTAG)標(biāo)準(zhǔn)。如FPGA或CPLD,幾乎可以肯定這些硬件是通過JTAG端口來進(jìn)行配置、加載的。實(shí)際上,許多CPLD和FPGA制造商都將JTAG作為其器件在系統(tǒng)編程與配置的標(biāo)準(zhǔn)方法。目前,利用仿真工具來進(jìn)行調(diào)試的硬件,如ADI的虎鯊系統(tǒng)高性能浮點(diǎn)DSP——TS101和TS201,也是通過JTAG端口與處理器對(duì)話。說明了JTAG端口在幾乎所有使用高性能數(shù)字器件的印刷電路板中都會(huì)出現(xiàn),這就為采用基于邊界掃描技術(shù)來測(cè)試PCB提供了基本條件。
邊界掃描技術(shù)的基本思想是在靠近芯片的輸入輸出管腳上增加一個(gè)移位寄存器單元。因?yàn)檫@些移位寄存器單元都分布在芯片的邊界上(周圍),所以被稱為邊界掃描寄存器。當(dāng)芯片處于調(diào)試狀態(tài)的時(shí)候,這些邊界掃描寄存器可以將芯片和外圍的輸入輸出隔離開來。通過這些邊界掃描單元,可以實(shí)現(xiàn)對(duì)芯片輸入輸出信號(hào)的觀察和控制。
對(duì)于芯片的輸入管腳,可以通過與之相連的邊界掃描單元把信號(hào)(數(shù)據(jù))加載到該管腳中去;對(duì)于芯片的輸出管腳,也可以通過與之相連的邊界掃描寄存器“捕獲”(CAPTURE)該管腳上的輸出信號(hào)。在正常的運(yùn)行狀態(tài)下,這些邊界掃描寄存器對(duì)芯片來說是透明的,所以正常的運(yùn)行不會(huì)受到任何影響。這樣,邊界掃描寄存器提供了一個(gè)便捷的方式用以觀察和控制所需要調(diào)試的芯片。另外,芯片輸入輸出管腳上的邊界掃描(移位)寄存器單元可以相互連接起來,在芯片的周圍形成一個(gè)邊界掃描鏈(Boundary-Bcan Chain)。一般的芯片都會(huì)提供幾條獨(dú)立的邊界掃描鏈,用來實(shí)現(xiàn)完整的測(cè)試功能。邊界掃描鏈可以串行的輸入和輸出,通過相應(yīng)的時(shí)鐘信號(hào)和控制信號(hào),就可以方便的觀察和控制處在調(diào)試狀態(tài)下的芯片。
圖1展示了一個(gè)芯片的邊界掃描邏輯結(jié)構(gòu)。
圖1 邊界掃描邏輯結(jié)構(gòu)
邊界掃描單元信號(hào)(Boundaryscan cell signals)
在并行輸入端PI俘獲數(shù)據(jù)
在并行輸出端PO更新數(shù)據(jù)
串行掃描數(shù)據(jù)從SO到與它相鄰的SI
行為透明:PI到達(dá)PO
TAP控制器信號(hào)(TAP controller signals)
測(cè)試信號(hào)輸入TDI
測(cè)試信號(hào)輸出TDO
測(cè)試模式選擇TMS
測(cè)試時(shí)鐘TCK
可選擇的測(cè)試復(fù)位信號(hào)TRST
在IEEE1149.1標(biāo)準(zhǔn)里面,寄存器被分為兩大類:數(shù)據(jù)寄存器(DR)和指令寄存器(IR)。邊界掃描鏈屬于數(shù)據(jù)寄存器中很重要的一種,邊界掃描鏈用來實(shí)現(xiàn)對(duì)芯片的輸入輸出的觀察和控制。而指令寄存器用來實(shí)現(xiàn)對(duì)數(shù)據(jù)寄存器的控制,例如:在芯片提供的所有邊界掃描鏈中,選擇一條指定的邊界掃描鏈作為當(dāng)前的目標(biāo)掃描鏈,并作為訪問對(duì)象。
TAP(Test Access Port)是一個(gè)通用的端口,通過TAP可以訪問芯片提供的所有數(shù)據(jù)寄存器和指令寄存器。而對(duì)整個(gè)TAP的控制是通過TAP Controller(測(cè)試訪問端口控制器)來完成的。TAP總共包括5個(gè)信號(hào)接口:TCK、TMS、TDI、TDO和TRST。測(cè)試訪問端口控制器,本身是一個(gè)狀態(tài)機(jī),有16個(gè)狀態(tài),通過三個(gè)控制信號(hào)(TMS,TCK,TRST)來對(duì)它進(jìn)行控制,在圖2中說明了此狀態(tài)機(jī)各個(gè)狀態(tài)遷移的流程。
圖2 測(cè)試訪問端口控制器狀態(tài)機(jī)
圖3展示了一塊擁有四個(gè)邊界掃描器件的PCB。你能夠發(fā)現(xiàn):
TDI、TDO是串聯(lián)在一起的;
TMS、TCK分布到每一個(gè)邊界掃描器件上。
圖3 擁有四個(gè)邊界掃描器件的PCB
我們來分析圖3,通過邊界掃描鏈這種結(jié)構(gòu)我們能實(shí)現(xiàn)哪些類型的測(cè)試:
(一)內(nèi)部結(jié)構(gòu)測(cè)試
首先,我們可以對(duì)掃描鏈的完整性進(jìn)行測(cè)試,如果掃描鏈路斷開,測(cè)試工具會(huì)知道當(dāng)前的掃描鏈不是完整的;
TAP controller,可以檢查它是否正常工作;
器件缺失;
器件錯(cuò)誤安裝,通過讀取器件的ID號(hào)來了解器件安裝是否正確。
(二)互連測(cè)試
固定電平(0/1)測(cè)試;
開路/短路測(cè)試;
邊沿連接器測(cè)試;
(三)簇器件(本身不支持邊界掃描)測(cè)試
功能測(cè)試;
存儲(chǔ)器測(cè)試。
目前PCB測(cè)試面臨的困難:電路規(guī)模越來越大,電路物理節(jié)點(diǎn)的可訪問性正逐漸削弱以至于消失。BGA(ball grid array)器件封裝是伴隨著日益提高的器件內(nèi)時(shí)鐘速度發(fā)展起來的一種封裝技術(shù)。這種元器件的管腳全部集中在器件下面,管腳數(shù)量及密度不斷提高,在這種情況下對(duì)管腳測(cè)試點(diǎn)的訪問極為困難。
采用普通的光學(xué)手段無法觀察BGA器件的物理管腳,想要觀察這種封裝的器件管腳只能采用X光照相手段,含鉛材料對(duì)X光的阻擋是X光照相測(cè)試的基礎(chǔ)。圖4展示了一個(gè)BGA器件的X光照相頂視圖,從這張照片中我們發(fā)現(xiàn)含鉛元件對(duì)X光起到了阻擋作用,所以我們很難從照片中區(qū)分良好焊點(diǎn)和虛焊。雖然目前多維X光機(jī)可以從多種角度觀察BGA器件管腳的焊接情況,但也要依賴人眼,使用久了容易疲勞。和所有光學(xué)的檢測(cè)方法一樣,X光照相僅僅得到了焊點(diǎn)的靜態(tài)圖像,而不是提供確保連接性所需的動(dòng)態(tài)電氣報(bào)告,因而極難判斷虛焊和可靠焊點(diǎn)之間的差異。所以,傳統(tǒng)光學(xué)測(cè)試的方法已經(jīng)不能滿足目前PCB常規(guī)測(cè)試的需求了。
圖4 BGA器件的X光照相
在使用針床夾具這項(xiàng)歷史悠久的傳統(tǒng)PCB測(cè)試方法來測(cè)試目前PCB的時(shí)候會(huì)遇到哪些困難呢?
a)在產(chǎn)品設(shè)計(jì)過程中不斷增加測(cè)試點(diǎn),致使多次制作PCB板,延長(zhǎng)了產(chǎn)品開發(fā)周期,從而延遲了產(chǎn)品上市時(shí)間,喪失了占領(lǐng)市場(chǎng)的先機(jī);
b)每一次在PCB上增加測(cè)試點(diǎn),都會(huì)導(dǎo)致重新制作昂貴的ICT測(cè)試針床,代價(jià)巨大;
c)PCB上設(shè)置了大量的測(cè)試點(diǎn),導(dǎo)致電路信號(hào)完整性、電磁兼容性能嚴(yán)重下降,產(chǎn)品設(shè)計(jì)風(fēng)險(xiǎn)增加;
d)PCB上的測(cè)試點(diǎn)引發(fā)大量過孔、埋孔、盲孔,增加焊接故障。這些故障通常表現(xiàn)為:PCB易分層、爆板、過孔撕裂,PCB翹曲導(dǎo)致焊點(diǎn)橋接、開路故障,球形焊點(diǎn)中出現(xiàn)空洞、開路故障;
e)BGA芯片陰影效應(yīng),從而導(dǎo)致隱蔽焊點(diǎn),易發(fā)生虛焊、冷焊故障;
f)PCB測(cè)試覆蓋率不高,產(chǎn)品可靠性風(fēng)險(xiǎn)增加。
所以采用表面測(cè)試針技術(shù)——針床夾具,同樣不能適應(yīng)目前PCB測(cè)試的需求了。
基于boundary scan(JTAG)的PCB測(cè)試能以非傳統(tǒng)的方式獲得PCB電氣連接性的信息,它有幾大優(yōu)點(diǎn):
a)一個(gè)是方便芯片的故障定位,迅速、準(zhǔn)確地測(cè)試兩個(gè)芯片管腳的連接是否可靠,提高測(cè)試、檢驗(yàn)效率;
b)另一個(gè)是采用無物理接觸的“虛”導(dǎo)通訪問,無需外加硬件電路,測(cè)試起來簡(jiǎn)潔快速,且準(zhǔn)確安全;
c)從測(cè)試成本上評(píng)估,這種測(cè)方式非常低廉,因?yàn)樗恍枰厥獾脑O(shè)備,如針床、X-ray機(jī)等。只需要把故障PCB插在測(cè)試臺(tái)上,然后運(yùn)行測(cè)試工程,幾十秒,最多幾分鐘就可以得到準(zhǔn)確、詳細(xì)的測(cè)試報(bào)告,經(jīng)濟(jì)效益顯著。
自動(dòng)測(cè)試設(shè)備分軟件和硬件兩大部分:
測(cè)試軟件的開發(fā)工具為法國(guó)Tomento Systems公司的DiaTem。針對(duì)一塊PCB,較為完整的測(cè)試軟件開發(fā)流程大致可以分為四個(gè)步驟:
a)在DiaTem開發(fā)環(huán)境中創(chuàng)建PCB系統(tǒng)板的工程,建立同類器件庫文件;
依據(jù)原理圖構(gòu)造JTAG鏈,并核檢JTAG鏈的完整性;
在相應(yīng)的類庫中導(dǎo)入新的元器件及其對(duì)應(yīng)的BSDL文件;
如果是FPGA器件,還需要根據(jù)FPGA的管腳文件*.pin,使用轉(zhuǎn)換腳本程序把器件的BSDL文件轉(zhuǎn)換成新的BSDL文件,然后導(dǎo)入進(jìn)DiaTem。
b)建立板級(jí)鏈后,導(dǎo)入設(shè)計(jì)文件,并設(shè)定相應(yīng)規(guī)則;
分析網(wǎng)表,檢查記錄測(cè)試覆蓋率;
開始自動(dòng)運(yùn)行僅JTAG類器件的測(cè)試-ATPG。
c)在JTAG類器件進(jìn)行ATPG后在添加cluster類器件進(jìn)行測(cè)試;
測(cè)試及調(diào)試PCB板;
得到出錯(cuò)報(bào)告及相應(yīng)的處理建議。
d)編程元器件;
導(dǎo)出測(cè)試結(jié)果。
在整個(gè)流程中,設(shè)定規(guī)則是重要的一個(gè)環(huán)節(jié),規(guī)則有錯(cuò)誤會(huì)導(dǎo)致測(cè)試報(bào)告出錯(cuò),嚴(yán)重的時(shí)候會(huì)損壞PCB本身。對(duì)某些cluster器件需要添加適當(dāng)?shù)臏y(cè)試腳本來設(shè)置測(cè)試條件(如開放總線等),這類腳本可以歸入初始化腳本。另外針對(duì)一些比較特殊的器件或使用者的特殊用法,在測(cè)試開發(fā)工具無法自動(dòng)生成測(cè)試向量的情況下,需要設(shè)計(jì)師自己閱讀器件手冊(cè)并在領(lǐng)會(huì)PCB設(shè)計(jì)師設(shè)計(jì)意圖(通過原理圖)的情況下編寫出測(cè)試腳本,來完成測(cè)試。如果器件是自設(shè)計(jì)的器件,需要測(cè)試設(shè)計(jì)師充分了解其時(shí)序關(guān)系后,編寫出符合要求的測(cè)試腳本方可得到正確的測(cè)試結(jié)果。
自動(dòng)測(cè)試設(shè)備的硬件部分包括一個(gè)測(cè)試底板,一個(gè)JTAG適配器,一臺(tái)PC機(jī)。如圖5所示,圖中的邊界掃描測(cè)試接口就是JTAG適配器,I/O適配器就是一塊測(cè)試底板。每部分的作用是:
a)JTAG適配器,它提供了一個(gè)或多個(gè)測(cè)試端口;
b)測(cè)試底板,它為被測(cè)試PCB提供電源,以及提供接插件測(cè)試時(shí)需要的測(cè)試激勵(lì);
c)PC機(jī),在上面運(yùn)行測(cè)試軟件。
將JTAG適配器引出的測(cè)試接頭插在被測(cè)試PCB的JTAG端口上,然后再將PCB插在測(cè)試底板上就可以測(cè)試了。測(cè)試時(shí)間從幾十秒到幾分鐘不等,這主要取決于測(cè)試時(shí)鐘速度(由器件本身或由PCB的SI特性來決定)、被測(cè)PCB的復(fù)雜程度、測(cè)試覆蓋率、功能測(cè)試的難易及校驗(yàn)次數(shù)等因素。
圖5 自動(dòng)測(cè)試設(shè)備的硬件構(gòu)成
運(yùn)行測(cè)試軟件后就可以得到PCB測(cè)試報(bào)告,測(cè)試報(bào)告是基于PCB電氣連接性的電子文檔,內(nèi)容非常詳細(xì),不僅包括對(duì)整個(gè)測(cè)試工程的描述(表格1),還有對(duì)所有出錯(cuò)的網(wǎng)絡(luò)及器件管腳的描述及分析。
表格1
如下部分報(bào)出了一個(gè)開路故障:
Net at cluster pin Address[8]connected to jtag pin(s) D22/230 (/ DSP_BOARD) is Open/stuck at 0
Related Net: AD48
根據(jù)報(bào)告中的提示,測(cè)試人員很容易定位故障點(diǎn)。
基于邊界掃描的測(cè)試技術(shù)在PCB生命周期的每個(gè)階段都可以發(fā)揮巨大作用,如:
工程階段(Engineering Station)
借助邊界掃描和JTAG標(biāo)準(zhǔn)帶來的潛在優(yōu)勢(shì),在工程階段,PCB設(shè)計(jì)師和測(cè)試工程師可以驗(yàn)證和排除電路板和系統(tǒng)中的錯(cuò)誤。
在這個(gè)階段允許你在兩天之內(nèi)定義你的電路板并且建立一個(gè)測(cè)試工程,從而留出更多的時(shí)間去做調(diào)試。然后,你可以靜態(tài)的分析測(cè)試覆蓋率和檢測(cè)PCB的易測(cè)性。這種分析就像網(wǎng)絡(luò)瀏覽器,讓你很快的了解怎樣能夠在JTAG易測(cè)性方面做出改進(jìn),確認(rèn)你的設(shè)計(jì)可以在生產(chǎn)之前就得到優(yōu)化。
產(chǎn)品階段(Production Station)
邊界掃描測(cè)試設(shè)備可以高效的完成批量產(chǎn)品的硬件測(cè)試工作。生產(chǎn)、加工部門可以用它來完成產(chǎn)品最初的測(cè)試及檢驗(yàn),查出問題立刻返修,不讓存在硬件故障隱患的PCB流入下一個(gè)環(huán)節(jié)。
維修和維護(hù)階段(Repair and Maintenance Station)
售后服務(wù)部門可以使用邊界掃描測(cè)試設(shè)備測(cè)試用戶返修的故障PCB。通過準(zhǔn)確、快速的故障定位不僅可以節(jié)約大量的人力資源,還可以避免物料的浪費(fèi)。
通過測(cè)試報(bào)告說明了基于邊界掃描測(cè)試技術(shù)設(shè)計(jì)的PCB自動(dòng)測(cè)試設(shè)備是先進(jìn)、可靠、有效的,很好的解決了雷達(dá)中使用的復(fù)雜數(shù)字PCB測(cè)試?yán)щy的問題。
[1]System Test with Boundary Scan (JTAG),By David Bonnett Technical Product Manager ASSET InterTech, Inc.
[2]IEEE Standard Test Access Port and Boundary-Scan Architecture.
[3]Tomento System,Scan and JTAG concepts.
10.3969/j.issn.1001-8972.2010.16.062
劉軍 男,1974年生于安徽淮南,學(xué)士,工程師?,F(xiàn)在中國(guó)電子科技集團(tuán)第38研究所數(shù)字技術(shù)部從事雷達(dá)信號(hào)處理研究,研究方向?yàn)槔走_(dá)信號(hào)處理實(shí)時(shí)處理平臺(tái)和高性能PCB測(cè)試技術(shù)。