專利名稱:一種邊界掃描芯片容錯測試方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信及微電子領(lǐng)域,尤其涉及在容錯測試中邊界掃描芯片故障插入的一種方法和系統(tǒng)。
在實際應(yīng)用中,系統(tǒng)出現(xiàn)故障的原因是由于芯片異常引起的,原因是1、任何器件都有一定的失效率,哪怕失效率很低。
2、有些器件由于生產(chǎn)廠家的原因,會出現(xiàn)批次性失效。
3、器件都有一定生命周期,到達(dá)一定使用時間后也必然會逐步失效。
為了避免上述缺陷給系統(tǒng)造成嚴(yán)重的后果,業(yè)界通常通過各種測試手段發(fā)現(xiàn)這類問題,將故障隱患消滅在萌芽狀態(tài)。
芯片異常測試是一種攻擊性容錯測試方法,通過模擬芯片的各種故障方式,測試芯片故障對電路板及系統(tǒng)的影響,評估芯片故障對電路板及系統(tǒng)的影響程度,使得在電路板內(nèi)某器件失效時,技術(shù)人員能通過該方法了解該器件對電路板或系統(tǒng)的各種影響,去驗證是否有保護措施,各種保護措施能否啟動。
在數(shù)字信號處理芯片中,較常見的故障模式有芯片整體失效、某管腳輸出常高/常低、輸入/輸出管腳短路、輸出管腳高阻態(tài)、輸出信號電平過低、多電源工作芯片上電順序混亂、輸入指標(biāo)越限、地址/數(shù)據(jù)總線故障、無法復(fù)位或異常、中斷故障、無法初始化、存儲器控制功能故障、串口故障、主機接口故障、工作環(huán)境異常(高低溫)時未考慮散熱及加熱設(shè)計等。
芯片異常測試的前提必須是一個可以實現(xiàn)完整功能的電路板或系統(tǒng)。通過電路板或系統(tǒng)工作狀態(tài)、輸出指標(biāo)的變化,可以判斷芯片異常對于電路板或系統(tǒng)的影響程度。電路板或系統(tǒng)的選擇,由被測試芯片實現(xiàn)的功能而定。例如測試晶振異常對于系統(tǒng)定時的影響,需要以系統(tǒng)時鐘性能做為驗證考察對象;而測試晶振異常對于鎖相環(huán)時鐘跟蹤性能的影響,則以電路板時鐘性能做為驗證考察的對象。
在目前的芯片故障模擬中,由于缺乏合適的方法和工具,一般只能采用外部施加故障的方法。
在模擬芯片的輸入數(shù)據(jù)異常時,主要是將其輸入數(shù)據(jù)管腳強行拉高或拉低這樣,容易造成人為的損壞。
在模擬芯片無輸入/輸出的情況時,強行將芯片的輸入/輸出管腳撬開,用導(dǎo)線將開關(guān)串聯(lián)在芯片的輸入/輸出管腳和輸入/輸出信號線之間。將開關(guān)首先閉合,然后當(dāng)電路板處于正常工作狀態(tài)時,打開開關(guān),使芯片的輸入/輸出信號中斷。檢查此時電路板工作狀態(tài)是否異常,檢查與此異常芯片相關(guān)的性能指標(biāo)是否劣化,檢查電路板是否有故障告警產(chǎn)生。這種方法不僅麻煩,而且可能隨之帶來器件的損壞。
在模擬寄存器讀寫異常時,首先使得電路板處于正常工作狀態(tài)下,然后修改單板軟件,增加測試部分,測試部分應(yīng)完成的功能是讀出關(guān)鍵寄存器內(nèi)容,將錯誤的內(nèi)容寫入寄存器,同時可由后臺控制。通過測試軟件修改芯片關(guān)鍵寄存器的內(nèi)容。再檢查此時電路板工作狀態(tài)是否異常,檢查與此異常芯片相關(guān)的性能指標(biāo)是否劣化,檢查電路板是否有故障告警產(chǎn)生,非常煩瑣。
模擬使能控制信號線異常的時候,首先將芯片(如驅(qū)動器件、晶振等)的使能控制信號線通過開關(guān)和電阻接高電平或低電平。使能控制信號線是使芯片使能,回到初始狀態(tài)的控制線,在電路板正常工作之后,控制開關(guān)使芯片的控制信號線保持常高或常低電平。使芯片的所有輸出無效,模擬芯片整體失效。然后檢查此時電路板工作狀態(tài)是否異常,檢查與此異常芯片相關(guān)的性能指標(biāo)是否劣化,檢查電路板是否有故障告警產(chǎn)生,同樣,這種方法也非常煩瑣。
而且,現(xiàn)有的方法如果要模擬寄存器讀寫異常,則需要編寫比較復(fù)雜的單板軟件才能完成。
當(dāng)前,邊界掃描芯片應(yīng)用越來越多,在芯片生產(chǎn)、使用及測試領(lǐng)域,都帶來很大的方便,現(xiàn)簡單介紹一下相關(guān)的知識。
如圖1所示,是現(xiàn)有技術(shù)中一個邊界掃描器件的結(jié)構(gòu)圖,帶邊界掃描結(jié)構(gòu)的芯片和不帶邊界掃描結(jié)構(gòu)的芯片相比較,主要是多了5個測試訪問端口TAP引腳測試時鐘信號TCK、測試數(shù)據(jù)輸入信號TDI、測試數(shù)據(jù)輸出信號TDO、測試模式選擇信號TMS和測試復(fù)位TRST,其中測試復(fù)位引腳可選,同時多了一個TAP控制器、一個指令寄存器和一組數(shù)據(jù)寄存器,其中,數(shù)據(jù)寄存器又包括邊界掃描單元寄存器、旁路(BYPASS)寄存器,還可能包括器件代碼(IDCODE)寄存器、用戶代碼(USERCODE)寄存器或其余用戶自定義寄存器。下面以一個簡單的六D觸發(fā)器為例進行圖示說明。
圖2是一個不帶邊界掃描結(jié)構(gòu)的六D觸發(fā)器結(jié)構(gòu)圖,圖3是一個帶邊界掃描結(jié)構(gòu)的六D觸發(fā)器結(jié)構(gòu)圖,圖2及圖3的對比中可以看出,帶邊界掃描結(jié)構(gòu)的芯片和不帶邊界掃描結(jié)構(gòu)的芯片相比較,在外部引腳和芯片內(nèi)核之間,多了一些邊界掃描單元,這些掃描單元的一般結(jié)構(gòu)如圖4所示。
JTAG(Joint Test Action Group)也就是指的邊界掃描技術(shù),JTAG接口是內(nèi)置調(diào)試工具,通過該JTAG接口,設(shè)計人員能夠觀察到該處理器中待處理信息的一個有限的子集,比如該處理器中寄存器的內(nèi)容。
一種邊界掃描芯片容錯測試方法,其特征在于包括如下步驟a、向邊界掃描芯片發(fā)送測試命令,模擬邊界掃描芯片故障狀態(tài);b、通過模擬故障狀態(tài)與該芯片真實狀態(tài)做對比,得出測試數(shù)據(jù)。
所述的測試命令是通過JTAG接口來發(fā)送的。
當(dāng)所述的測試命令為外部測試指令時,可將邊界掃描芯片的外部引腳和內(nèi)核電路從邏輯上斷開,從而模擬整個芯片失效。
當(dāng)所述的測試命令為內(nèi)部測試指令時,可通過輸入型掃描單元向邊界掃描芯片內(nèi)部寫入確定的數(shù)值,改寫該芯片的內(nèi)部寄存器值,從而模擬芯片局部故障。
一種測試系統(tǒng),包括終端機、故障插入測試板,所述的終端上安裝有輸入裝置,該輸入裝置可完成測試信息的讀寫,其特征在于還包括一個測試頭,所述的測試頭上帶有一個芯片,該芯片中存儲有驅(qū)動程序,用來產(chǎn)生JTAG信號驅(qū)動,所述的終端機通過并行端口與測試頭相連,所述的測試頭通過測試電纜與測試板相連。
所述的并行端口為25針端口。
所述的測試信息,是通過終端機發(fā)送給JTAG接口,進而加在測試芯片上的。
利用本發(fā)明的邊界掃描容錯故障測試方法及系統(tǒng),不需要進行強行將器件引腳拉高或拉低的操作,也不需要操作人員強行撬開器件的引腳,只是通過JTAG接口發(fā)送測試指令,所以不會對電路板有任何損傷。而且還能在電子集成度不斷提高,器件引腳密度越來越大,電路板上有的器件引腳甚至成為隱性結(jié)點的情況下,克服現(xiàn)有物理接觸方法不再適用的缺點,并利用邊界掃描進行芯片的故障插入,順利完成故障測試。同時,因為邊界掃描芯片的公有特性,可以做成專門的工具來完成芯片故障插入,所以,用戶不必了解邊界掃描的知識,不需要編寫專門的程序,只需要簡單操作就可以完成芯片故障插入,進而使得故障測試更加方便和簡捷。
圖1是現(xiàn)有技術(shù)中邊界掃描器件的結(jié)構(gòu)圖;圖2是一個不帶邊界掃描結(jié)構(gòu)的六D觸發(fā)器結(jié)構(gòu)圖;圖3是一個帶邊界掃描結(jié)構(gòu)的六D觸發(fā)器結(jié)構(gòu)圖;圖4是一個邊界掃描單元的結(jié)構(gòu)圖;圖5是TAP控制器的十六狀態(tài)機;圖6是外部測試指令期間數(shù)據(jù)流示意圖;圖7是內(nèi)部測試指令執(zhí)行期間信號流示意圖;圖8是本發(fā)明利用邊界掃描進行芯片故障插入測試的系統(tǒng)結(jié)構(gòu)圖。
對于一個功能正常的邊界掃描芯片,在正常工作時,外部引腳和芯片內(nèi)核在邏輯上是直通的,在進行芯片外部測試或內(nèi)部測試時,外部引腳和芯片內(nèi)核在邏輯上是斷開的。
而控制邊界掃描邏輯,主要是通過TCK、TMS和TDI三根輸入線來完成的,TAP控制器的工作原理依據(jù)如圖5所示的十六狀態(tài)機,該十六狀態(tài)機的功能是控制器跟蹤原理基礎(chǔ),系統(tǒng)將根據(jù)需要,進入某個狀態(tài),可以在各狀態(tài)之間進行切換。
在芯片生產(chǎn)領(lǐng)域,器件(IC)生產(chǎn)廠家可以自己定義公用指令(PublicInstruction)或?qū)S弥噶?Private Instruction)。專用指令只能供生產(chǎn)廠家使用,專用指令的操作不必形成文件。公用指令(Public Instruction)由生產(chǎn)廠家隨同器件一起以邊界掃描描述語言BSDL(Boundary Scan DescriptionLanguage)文件的方式提供。這些指令為用戶提供測試器件特性的方法。
公用指令(Public Instruction)可分為器件廠家必須提供的指令和器件廠家可選擇的指令。器件廠家必須提供的指令有三個旁路(BYPASS)指令、采樣/預(yù)置(SAMPLE/PRELOAD)指令和外部測試(EXTEST)指令。器件廠家可選擇提供的指令有器件標(biāo)志代碼(IDCODE)指令、用戶代碼(USERCODE)指令、內(nèi)部測試(INTEST)指令、運行內(nèi)建自測試(RUNBI ST)指令、高阻態(tài)(HIGHZ)指令等。
外部測試(EXTEST)指令是器件廠家必須提供的公用指令,利用它來進行芯片的整體失效模擬是最適合的。外部測試指令將選擇串行連接在TDI與TDO之間的邊界掃描寄存器構(gòu)成的掃描鏈,同時器件內(nèi)核邏輯從輸入/輸出管腳中隔離出來。外部測試(EXTEST)指令本意主要用于電路板上芯片的互連測試。
如圖6所示,在外部測試(EXTEST)指令執(zhí)行期間(1)Mode信號為‘1’,表示器件輸入/輸出管腳與核心邏輯之間的直接通路被隔離開。
(2)TAP控制器在捕獲數(shù)據(jù)寄存(Capture_DR)狀態(tài)下,在TCK時鐘脈沖的上升沿,器件輸入管腳所接受的信號將被裝入邊界掃描寄存器。
(3)TAP控制器在移位數(shù)據(jù)寄存(Shift_DR)狀態(tài)下,TCK時鐘脈沖的上升沿,串行連接在TDI與TDO之間的邊界掃描寄存器里的數(shù)據(jù)向數(shù)據(jù)輸出端串行移位。
(4)TAP控制器在更新數(shù)據(jù)寄存(Update_DR)狀態(tài)下,TCK時鐘脈沖的下降沿,邊界掃描寄存器的移位寄存器里的數(shù)據(jù)將被裝入邊界掃描寄存器的并行輸出寄存器或鎖存器里,并通過器件輸出管腳輸出。
圖6的粗線示出了外部測試(EXTEST)指令執(zhí)行期間,器件內(nèi)部的邊界掃描單元之間的數(shù)據(jù)流,從圖上也可以看出EXTEST指令期間,沒有任何信號流經(jīng)芯片內(nèi)核。
利用外部測試(EXTEST)指令可以完成以下功能進行芯片之間的互連測試,這是目前的常規(guī)應(yīng)用;模擬芯片整體失效功能,這是本發(fā)明的創(chuàng)新應(yīng)用;可以控制邊界掃描器件對其余器件進行讀寫等操作,這也是本發(fā)明的創(chuàng)新應(yīng)用。
內(nèi)部測試(INTEST)指令是器件廠家可選擇提供的公用指令。在器件安裝到PCB電路板上后,內(nèi)部測試(INTEST)指令允許對器件內(nèi)部的核心邏輯進行測試。在執(zhí)行這條指令期間,移入邊界掃描寄存器的信號值可以被施加到器件內(nèi)部的核心邏輯上,核心邏輯輸出的測試結(jié)果也可以被捕獲進邊界掃描寄存器里,然后通過邊界掃描寄存器串行移出到計算機進行分析。
如圖7所示,在內(nèi)部功能測試(INTEST)指令執(zhí)行期間(1)Mode信號為‘1’,表示器件輸入和輸出管腳與核心邏輯之間的直接通路被隔離開。
(2)TAP控制器在移位數(shù)據(jù)寄存(Shift_DR)狀態(tài)下,在TCK時鐘脈沖的上升沿,通過TDI引腳將指定的測試數(shù)據(jù)串行移入邊界掃描寄存器里。
(3)TAP控制器在更新數(shù)據(jù)寄存(Update_DR)狀態(tài)下,TCK時鐘脈沖的下降沿,邊界掃描寄存器的移位寄存器里的數(shù)據(jù)將被裝入邊界掃描寄存器的并行輸出寄存器或鎖存器里,并把數(shù)據(jù)施加到核心邏輯上。
(4)進入TAP控制器的運行-測試/空閑(Run_Test/Idle)狀態(tài),等待核心邏輯完成測試。
(5)TAP控制器在捕獲數(shù)據(jù)寄存(Capture_DR)狀態(tài)下,在TCK時鐘脈沖的上升沿,核心邏輯輸出的測試結(jié)果被捕捉進邊界掃描寄存器里。
(6)TAP控制器在移位數(shù)據(jù)寄存(Shift_DR)狀態(tài)下,在TCK時鐘脈沖的上升沿,串行連接在TDI與TDO之間的邊界掃描寄存器里的測試結(jié)果通過TDO引腳串行移出。
圖中的粗線表示了內(nèi)部測試(INTEST)指令執(zhí)行期間,器件內(nèi)部的邊界掃描單元之間的數(shù)據(jù)流,由圖可以看出此時內(nèi)核邏輯和外部引腳是斷開的,而且可以通過邊界掃描單元操作和控制內(nèi)核電路。
利用外部測試(INTEST)指令可以完成以下功能測試芯片的內(nèi)部邏輯功能(常規(guī)應(yīng)用);
控制或操作芯片內(nèi)核電路,完成故障預(yù)置(本發(fā)明創(chuàng)新應(yīng)用)。
本發(fā)明就是基于以上的理論而設(shè)計的測試系統(tǒng)及測試方法。
如圖8所示,是本發(fā)明利用邊界掃描進行芯片故障插入測試的系統(tǒng)結(jié)構(gòu)圖。本發(fā)明使用的測試系統(tǒng),包括終端機、故障插入測試板,在該終端機上安裝有輸入裝置,該輸入裝置可完成測試信息的讀寫,這樣可以通過該終端機發(fā)送各種測試信息及各種控制命令。
在該測試系統(tǒng)中,還包括一個測試頭,該測試頭上帶有一個芯片,該芯片中存儲有驅(qū)動程序,用來產(chǎn)生JTAG信號驅(qū)動。
該終端機通過25針的并行端口與測試頭相連,該測試頭通過測試電纜與測試板相連。
在使用過程中,終端機發(fā)送測試命令給JTAG接口,JTAG接口在將該測試命令發(fā)送給芯片,進而從芯片上讀取所需的信息給終端機,完成數(shù)據(jù)的交互。
本發(fā)明使用的邊界掃描芯片容錯測試方法如下首先向邊界掃描芯片發(fā)送影響芯片正常功能的測試命令,這是由終端機發(fā)送該影響芯片正常功能的測試命令,經(jīng)JTAG接口加到芯片上的。其中,影響邊界掃描芯片正常功能的測試命令包括內(nèi)部測試命令(INTEST)和外部測試命令EXTEST等,具體使用哪一種測試命令可以依據(jù)測試用戶不同的測試目的而定。JTAG接口加載前述的測試命令后,實際上就使被測試芯片模擬了故障狀態(tài),這樣,就通過測試命令使芯片產(chǎn)生與物理故障相同的癥狀。
如果發(fā)送的測試命令為外部測試指令,就將使邊界掃描芯片的外部引腳和內(nèi)核電路從邏輯上斷開,從而模擬整個芯片失效,這種現(xiàn)象與芯片物理損壞的現(xiàn)象是完全一致的。
如果發(fā)送的測試命令為內(nèi)部測試指令,就可以通過輸入型掃描單元向芯片內(nèi)部寫入確定的數(shù)值,這些新寫入的數(shù)值將改寫芯片的內(nèi)部寄存器值,從而模擬芯片局部故障。
通過前面故障模擬,可以產(chǎn)生與芯片出現(xiàn)物理故障完全一樣的癥狀,對這些模擬物理故障進行分析,即可得出與真實物理故障完全一致的測試結(jié)論。將這些模擬物理故障的各種特征狀態(tài)進行概括,與芯片正常狀態(tài)做對比,即可得出測試數(shù)據(jù)。
本發(fā)明利用電路板上的邊界掃描器件本身的特性完成芯片的故障插入,成本很低,操作簡單方便,是一種高效低成本的芯片故障插入方法,不會對電路板造成任何損傷,而且本發(fā)明不需要編寫專門的程序,經(jīng)過簡單的說明就可以使用該方法完成故障插入。給使用者帶來了巨大的方便,并且在經(jīng)濟上大大削減了成本。
以上所述,僅為本發(fā)明較佳的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)該以權(quán)利要求書的保護范圍為準(zhǔn)。
權(quán)利要求
1.一種邊界掃描芯片容錯測試方法,其特征在于包括如下步驟a、向邊界掃描芯片發(fā)送測試命令,模擬邊界掃描芯片故障狀態(tài);b、通過模擬故障狀態(tài)與邊界掃描芯片正常狀態(tài)做對比,得出測試數(shù)據(jù)。
2.如權(quán)利要求1所述的邊界掃描芯片容錯測試方法,其特征在于所述的測試命令是通過JTAG接口來發(fā)送的。
3.如權(quán)利要求1或2所述的邊界掃描芯片容錯測試方法,其特征在于所述的測試命令為外部測試指令時,可將邊界掃描芯片的外部引腳和內(nèi)核電路從邏輯上斷開,從而模擬整個邊界掃描芯片失效。
4.如權(quán)利要求1或2所述的邊界掃描芯片容錯測試方法,其特征在于所述的測試命令為內(nèi)部測試指令時,可通過輸入型掃描單元向邊界掃描芯片內(nèi)部寫入確定的數(shù)值,改寫邊界掃描芯片的內(nèi)部寄存器值,從而模擬邊界掃描芯片局部故障。
5.一種邊界掃描芯片容錯測試系統(tǒng),包括終端機、故障插入測試板,所述的終端機上安裝有輸入裝置,可完成測試信息的讀寫,其特征在于還包括一個測試頭,所述的測試頭上帶有一個芯片,該芯片中存儲有驅(qū)動程序,用來產(chǎn)生JTAG信號驅(qū)動,所述的終端機通過并行端口與測試頭相連,所述的測試頭通過測試電纜與測試板相連。
6.如權(quán)利要求5所述的測試系統(tǒng),其特征在于所述的并行端口為25針端口。
7.如權(quán)利要求5所述的測試系統(tǒng),其特征在于所述的測試信息,是通過終端機發(fā)送給JTAG接口,進而加在被測試的邊界掃描芯片上的。
全文摘要
本發(fā)明涉及在容錯測試中邊界掃描芯片故障插入的一種方法和系統(tǒng)。一種邊界掃描芯片容錯測試方法,其特征在于包括如下步驟向邊界掃描芯片發(fā)送測試命令,模擬邊界掃描芯片故障狀態(tài);將模擬故障狀態(tài)與邊界掃描芯片正常狀態(tài)做對比,得出測試數(shù)據(jù)。一種測試系統(tǒng),包括終端機、故障插入測試板,其特征在于還包括一個測試頭,所述的測試頭上帶有一個芯片,該芯片中存儲有驅(qū)動程序,用來產(chǎn)生JTAG信號驅(qū)動,所述的終端機通過并行端口與測試頭相連,所述的測試頭通過測試電纜與測試板相連。利用本發(fā)明將更加方便和簡捷地實現(xiàn)對芯片的故障插入。
文檔編號G01R31/26GK1463031SQ0212172
公開日2003年12月24日 申請日期2002年5月28日 優(yōu)先權(quán)日2002年5月28日
發(fā)明者李穎悟, 游志強 申請人:華為技術(shù)有限公司