黃小妹
(江蘇省啟東市第二中等專業(yè)學(xué)校,江蘇啟東,226200)
數(shù)字電路系統(tǒng)與其自身規(guī)模的大小和芯片使用的型號有直接關(guān)系。PPC、DSP、FPGA 等是目前市面上使用較多的梳子芯片。大多數(shù)芯片采用的都是BGA 封裝,這類芯片不但間距小,而且引腳數(shù)量多,且導(dǎo)致數(shù)字電路系統(tǒng)上可測試的節(jié)點(diǎn)距離也逐漸縮小,該問題的出現(xiàn)非常不利用芯片生產(chǎn)和系統(tǒng)檢測。對于數(shù)字電路系統(tǒng)可測試節(jié)點(diǎn)的縮小,使邏輯分析儀器和傳統(tǒng)示波器在系統(tǒng)測試方面效率急劇下降,難度急劇上升,為后期的故障檢測及定位工作帶來了一定難度。為了進(jìn)一步提高數(shù)字電路系統(tǒng)的可測試性和步驟簡化性,在該系統(tǒng)的設(shè)計(jì)過程中就要對該問題就行充分考慮。文章通過與數(shù)字電路系統(tǒng)優(yōu)勢的結(jié)合,重點(diǎn)對邊界掃描原理的結(jié)構(gòu)性、可測性設(shè)計(jì)在數(shù)字系統(tǒng)硬件中的實(shí)現(xiàn)做了深入探究。
邊界掃描標(biāo)準(zhǔn)是聯(lián)合測試小組在1985 年制定的檢測PCB 和IC 芯片的一個(gè)標(biāo)準(zhǔn),該標(biāo)準(zhǔn)在1990 年被修改成為一個(gè)IEEE 的標(biāo)準(zhǔn),這就是IEEE1149.1。隨著科技時(shí)代的發(fā)展,IEEE1149.1 已逐漸成為測試數(shù)字電路系統(tǒng)的主要技術(shù)。這種測試標(biāo)準(zhǔn)的使用,不僅能監(jiān)測數(shù)字芯片輸入和輸出的管腳狀態(tài),還對芯片的工作情況和斷、開路故障實(shí)施精準(zhǔn)定位[1]。數(shù)字芯片的內(nèi)部與管腳都是以邊界掃描測試為背景,并在此基礎(chǔ)上添加掃描單元,最終利用邊界掃描單位來監(jiān)控芯片的引腳狀態(tài)。通過上述原理對邊界單元進(jìn)行掃描,將邊界單元的指定狀態(tài)從測試數(shù)據(jù)端口進(jìn)行輸入,然后串行移位到輸出引腳,在邊界掃描工作狀態(tài)不變的情況下,采集輸入引腳的響應(yīng),最后將響應(yīng)值和輸入數(shù)值相比對,以此判斷芯片之間的故障。數(shù)字電路系統(tǒng)中大部分使用的數(shù)字芯片在標(biāo)準(zhǔn)選擇方面都是符合IEEE1149.1 測試規(guī)范的。而PPC、DSP、FPGA 等芯片由于BGA 封裝原因的不同,導(dǎo)致物理探針和管腳之間的距離狹窄,無法接觸。該情況的出現(xiàn)為數(shù)字電路系統(tǒng)邊界掃描故障測試帶來了困難,也正是因?yàn)檫@種現(xiàn)象的出現(xiàn),所以在數(shù)字電路系統(tǒng)硬件設(shè)計(jì)過程,必須充分考慮DFT 技術(shù)的結(jié)構(gòu)性,為后期簡化測試步驟提供有力支撐。
DFT 可測試性設(shè)計(jì)是針對數(shù)字電路系統(tǒng)展開的全面測試,是對整個(gè)系統(tǒng)結(jié)構(gòu)性的測試,不單單指系統(tǒng)和電路設(shè)計(jì)過程中的測試問題。數(shù)字電路系統(tǒng)芯片之間的互聯(lián)故障測試主要依靠該系統(tǒng)提供的結(jié)構(gòu)性邊界測試標(biāo)準(zhǔn)來實(shí)現(xiàn)的。所以,在數(shù)字電路系統(tǒng)設(shè)計(jì)過程中,有關(guān)邊界測試性的設(shè)計(jì),首先,邊界掃描器件要滿足IEEE1149.1 標(biāo)準(zhǔn);其次,還要對邊界掃描器件的管理連接方法進(jìn)行完善。比如:PPC、DSP、FPGA 等類型的芯片,在工作狀態(tài)下也可進(jìn)行邊界掃描,但其設(shè)計(jì)并不完全符合IEEE1149.1 標(biāo)準(zhǔn)[2]。通過以上闡述,充分印證了要想保障數(shù)字電路系統(tǒng)在正常工作狀態(tài)下實(shí)現(xiàn)模式切換自如,還有無法全部實(shí)現(xiàn)。
在電路系統(tǒng)中,邊界掃描的基礎(chǔ)測試是以掃描鏈路為背景,然后通過并行、串行以及獨(dú)立路徑的連接方式進(jìn)行測試。串行的方式很簡單,不需在模塊上增加額外的電路,只需要一個(gè)JTAG 接口直接連接到邊界掃描控制器上即可。串行方式比較適用于功能模塊少的,且各個(gè)組件之間的連接關(guān)系比較簡單的系統(tǒng)。采用這種串聯(lián)方式可實(shí)現(xiàn)最簡單的系統(tǒng)級邊界掃描測試環(huán)路,如圖 1 所示。
圖1 串行邊界掃描鏈
串行連接方式的邊界掃描只適用電路連接簡單的系統(tǒng),如果系統(tǒng)中有鏈路的芯片損壞或者空槽的問題的出現(xiàn),那么整個(gè)系統(tǒng)的邊界掃描鏈路就會(huì)斷開,無法繼續(xù)工作。除此以外,當(dāng)需要對某個(gè)器件進(jìn)行重復(fù)掃描時(shí),這時(shí)會(huì)進(jìn)行串行移位操作,該操作非常繁瑣,且時(shí)間較長。還有一種可能發(fā)生的問題就是,進(jìn)行反復(fù)的邊界掃描時(shí),部分?jǐn)?shù)據(jù)會(huì)涉及到手動(dòng)修改,在手動(dòng)修改過程中,不僅容易出錯(cuò),還比較浪費(fèi)時(shí)間。因此,邊界掃描在串行連接方式中使用較多,若系統(tǒng)連接較為復(fù)雜、器件多的情況下不建議使用[3]。
并行連接的方式是對鏈路進(jìn)行分割管理,這種連接方式明確了鏈路。簡化了芯片對各鏈路條的管理,簡化程序尤其體現(xiàn)在串行移位操作步驟,增加了鏈路掃描的靈敏性。如圖2 所示,在整個(gè)數(shù)字電路系統(tǒng)中,所有需要處理的模塊都是并聯(lián)在測試總線上,若其中的一個(gè)模塊有損壞,其他模塊也會(huì)正常工作,不會(huì)受影響。這種并行鏈路掃描方法是實(shí)現(xiàn)稍微有一點(diǎn)復(fù)雜,具體操作步驟是將每個(gè)通用處理模塊都添加掃描芯片。掃描芯片的作用是將通用模塊內(nèi)部的掃描鏈路有序區(qū)分開來,最后按照每個(gè)區(qū)域規(guī)則分配獨(dú)立掃描鏈路。
圖2 并聯(lián)連接邊界掃描鏈
圖3 所示為獨(dú)立邊界掃描鏈,該掃描鏈的組織方式是為各個(gè)模塊提供單獨(dú)的掃描測試,其中每個(gè)模塊的掃描連接測試口和測試總線都是獨(dú)立的,這也是實(shí)現(xiàn)模塊級邊界掃描測試的方式之一。獨(dú)立邊界掃描鏈中,各個(gè)模塊之間的鏈路都是相互隔開的,相互配合實(shí)現(xiàn)系統(tǒng)級邊界掃描測試難度較高,操作復(fù)雜。若電路系統(tǒng)規(guī)模較大,那么系統(tǒng)內(nèi)部的模塊數(shù)量也逐漸增多,那么背板用于測試總線的空間不足,所以這種情況下不太適用改方式進(jìn)行掃描。
圖3 獨(dú)立邊界掃描鏈
邊界掃描的測試和工作模式來回切換,都離不開數(shù)字芯片的支持。為了保證數(shù)字電路系統(tǒng)各個(gè)模塊的正常工作,在通用處理模塊設(shè)計(jì)環(huán)節(jié),應(yīng)通過數(shù)字芯片的特性,來延伸邊界掃描模式和系統(tǒng)工作模式的切換的兼容性設(shè)計(jì)。
傳統(tǒng)的數(shù)字芯片在對數(shù)字電路系統(tǒng)進(jìn)行邊界掃描時(shí),可在原有的芯片基礎(chǔ)上增加額外的JTAG 引腳,而系統(tǒng)需要對增加的引腳進(jìn)行兼容性設(shè)計(jì),使其能夠正常的工作。如:TI公司DSP 芯片增加JTAG 引腳,是以IEEE1149.1 標(biāo)準(zhǔn)為基礎(chǔ)增加的,而增加的引腳可對系統(tǒng)的工作狀態(tài)進(jìn)行切換,同時(shí),實(shí)現(xiàn)JTAG 邊界掃描。當(dāng)對DSP 芯片進(jìn)行仿真試驗(yàn)和正常工作狀態(tài)進(jìn)行調(diào)試時(shí),兩個(gè)信號均需向上拉,此時(shí)JTAG 接口處是無效的。對于 XILINX 公司的XC4000E/EX/XL 等類型的 FPGA,在添加邊界掃描模塊時(shí)需在系統(tǒng)配置之前進(jìn)行設(shè)計(jì),這是與其他類型芯片不一樣的地方[4]。
簇(Cluster) 是非邊界掃描器件。具體指符合邊界掃描標(biāo)準(zhǔn)的數(shù)字芯片,其中還包括電子轉(zhuǎn)換器、傳輸器和緩沖器的數(shù)字芯片。簇測試采用的測試方法一般是建立虛擬測試通道。該通道主要是為了給兩種器件提供掃描測試通道。這兩種分別是不具備邊界掃描和具備邊界掃描的器件,詳情可見圖4。
圖4 簇測試原理
根據(jù)圖4 的簇測試原理可見,簇件器1 和2 都與邊界掃描器相連接。簇器件1 的輸出可以通過邊界測試器的測試總線在簇器件2 進(jìn)行讀取。同樣的測試方法,簇器件2的輸出也可在簇器件1 讀取。簇模型是一種軟件器件模型,這種模型主要是在邊界掃描控制器無法獲取被觀測網(wǎng)表面簇器件性質(zhì)而設(shè)計(jì)的。對于該模型的使用不僅是為了給非邊界掃描器件提供信息,還間接增加電路故障測試覆蓋率。非邊界掃描器件中,有的具有直通特性,比如:驅(qū)動(dòng)器、串聯(lián)電阻等。鑒于該情況的存在,對于器件邏輯值的輸出可以不變。但為了使利用簇模型合并的網(wǎng)表規(guī)模達(dá)到理想目標(biāo),可以充分利用器件的這個(gè)特點(diǎn)[5]。
利用邊界掃描測試對數(shù)字電路系統(tǒng)進(jìn)行故障診斷,詳情如圖5 所示。邊界掃描測試系統(tǒng)主要可劃分為三部分,分別為主控計(jì)算機(jī)、邊界掃描控制器和待測模塊。將待測模塊與邊界掃描控制器相連接,然后利用USB 和PCI 總線將連接好的邊界控制器與主控計(jì)算機(jī)連接。
圖5 邊界掃描測試系統(tǒng)
DFT 技術(shù)使用前后,在故障覆蓋率、定位精準(zhǔn)度、時(shí)間以及測試范圍數(shù)據(jù)方面的對比都有不同程度的差距。DFT技術(shù)在使用后,數(shù)字電路系統(tǒng)的測試性幅度大大提升。DFT技術(shù)使用前,由于數(shù)字電路系統(tǒng)內(nèi)部邊界掃描沒有規(guī)律和組織性,導(dǎo)致芯片無法實(shí)現(xiàn)協(xié)同掃描,同時(shí),獲取的管腳值也無法進(jìn)行對比。由于DD R等存儲(chǔ)芯片均被當(dāng)做普通器件,通過控制與之相連的數(shù)字芯片的邊界掃描寄存器,產(chǎn)生測試序列,選取地址并進(jìn)行讀寫內(nèi)容校驗(yàn)即可,所以采用通用測試程序即可完成存儲(chǔ)器測試。
為了驗(yàn)證待測系統(tǒng)在應(yīng)用DFT 技術(shù)后對邊界掃描系統(tǒng)實(shí)現(xiàn)管腳級故障定位的準(zhǔn)確性,可在DFT 設(shè)計(jì)后的待測系統(tǒng)中某個(gè)模塊的 DSP 與 FPGA 之間的某條互連線通過跳線設(shè)置為短路,利用邊界掃描系統(tǒng)進(jìn)行測試,并與實(shí)際情況相比較,觀察位置是否相符。個(gè)方面研究了超大規(guī)模數(shù)字電路的結(jié)構(gòu)性可測性(DFT)設(shè)計(jì)實(shí)現(xiàn)方法,并在某大規(guī)模數(shù)字系統(tǒng)中成功應(yīng)用了該技術(shù),實(shí)現(xiàn)了一鍵式互連故障診斷及可掃描網(wǎng)絡(luò)故障精確定位。該技術(shù)對邊界掃描測試技術(shù)在大規(guī)模數(shù)字電路故障測試中應(yīng)用具有一定的指導(dǎo)作用。
數(shù)字電路系統(tǒng)的整體結(jié)構(gòu)較為復(fù)雜,集成難度非常高,再加之其使用的芯片間距小和物理探測點(diǎn)少的問題,充分證明了該系統(tǒng)的診斷難度和復(fù)雜程度。借助IEEE1149.1 兼容的這類數(shù)字芯片在測試方面的優(yōu)勢與數(shù)字電路系統(tǒng)的可測性(DFT)技術(shù)的配合,可搭建結(jié)構(gòu)簡單、診斷精度高的故障測試系統(tǒng)。全文通過掃描鏈路、模塊兼容性等方面對數(shù)字電路系統(tǒng)的結(jié)構(gòu)可測性(DFT)設(shè)計(jì)方法進(jìn)行延伸分析,并成功的將其技術(shù)應(yīng)用至該系統(tǒng),進(jìn)一步實(shí)現(xiàn)了對數(shù)字電路系統(tǒng)互聯(lián)障礙的診斷及準(zhǔn)確定位。同時(shí),該技術(shù)對邊界掃描測試技術(shù)在數(shù)字電路故障測試中還具有一定的指導(dǎo)作用。