本文通過對一種控制芯片的測試,證明通過采用插入掃描鏈和自動(dòng)測試向量生成(ATPG)技術(shù),可有效地簡化電路的測試,提高芯片的測試覆蓋率,大大減少測試向量的數(shù)量,縮短測試時(shí)間,從而有效地降低芯片的測試成本。
基于掃描的DFT方法掃描設(shè)計(jì)的基本原理
時(shí)序電路中時(shí)序元件的輸出不僅由輸入信號決定,還與其原始狀態(tài)有關(guān),因此,對它的故障檢測比組合電路要困難的多。掃描設(shè)計(jì)就是將時(shí)序電路轉(zhuǎn)化為組合電路,然后使用已經(jīng)很成熟的組合電路測試生成系統(tǒng),來完成測試設(shè)計(jì)。
掃描設(shè)計(jì)可將電路中的時(shí)序元件替換為相應(yīng)的可掃描的時(shí)序元件(也叫掃描觸發(fā)器),然后把它們串起來,形成一個(gè)從輸入到輸出的測試串行移位寄存器(即掃描鏈),以實(shí)現(xiàn)對時(shí)序元件和組合邏輯的測試。
![](/article/UploadPic/2010-9/2010921020370777.jpg)
如圖1所示,采用掃描設(shè)計(jì)技術(shù)后,通過掃描輸入端,可以把需要的數(shù)據(jù)串行地移位到掃描鏈的相應(yīng)單元中,以串行地控制各個(gè)單元;同時(shí),也可以通過掃描輸出端串行地觀測它們。這樣就消除了時(shí)序電路的不可控制性和不可觀測性,提高了電路的可測性。需要注意的是,可測性設(shè)計(jì)的前提是不能改變原始設(shè)計(jì)的功能。
掃描設(shè)計(jì)的基本流程
掃描設(shè)計(jì)測試的實(shí)現(xiàn)過程是:
1) 讀入電路網(wǎng)表文件,并實(shí)施設(shè)計(jì)規(guī)則檢查(DRC),確保設(shè)計(jì)符合掃描測試的設(shè)計(jì)規(guī)則;
2) 將電路中原有的觸發(fā)器或者鎖存器置換為特定類型的掃描觸發(fā)器或者鎖存器(如多路選擇D觸發(fā)器),并且將這些掃描單元鏈接成一個(gè)或多個(gè)掃描鏈,這一過程稱之為測試綜合;
3) 測試向量自動(dòng)生成(ATPG)工具根據(jù)插入的掃描電路以及形成的掃描鏈自動(dòng)產(chǎn)生測試向量;
4) 故障仿真器(Fault Simulator)對這些測試向量實(shí)施評估,并確定故障覆蓋率情況。
DFT對芯片的影響
DFT是為了簡化芯片測試而采用的技術(shù),對芯片的功能沒有影響,但不可避免地會(huì)增加邏輯,對芯片產(chǎn)生一些影響。
對芯片面積的影響
DFT以增加邏輯來達(dá)到簡化測試的目的,增加的邏輯勢必會(huì)增加芯片面積。一般,采用DFT會(huì)增加10%"15%的芯片面積。
對芯片性能的影響
邊界掃描要在每個(gè)輸入輸出端口處插入邊界掃描寄存器(BSC),因此,在正常工作時(shí),信號要多通過一個(gè)多路開關(guān),這就帶來了額外延時(shí),降低了芯片原本可以達(dá)到的工作頻率。
對芯片故障覆蓋率的影響
芯片測試的要求就是要盡可能地將有故障的芯片檢測出來,從而降低芯片的逃逸率(Escape)。DFT的目的在于方便測試,提高故障覆蓋率,從而降低逃逸率。故障覆蓋率并非越高越好,因?yàn)樘岣吖收细采w率可能會(huì)大大增加測試成本,所以應(yīng)該在測試成本與取得的逃逸率之間進(jìn)行折衷。
對芯片上市時(shí)間的影響
產(chǎn)品的上市時(shí)間對于企業(yè)至關(guān)重要,與芯片測試相關(guān)的影響上市時(shí)間的因素有:測試電路的設(shè)計(jì)時(shí)間、測試準(zhǔn)備(ATPG,Test仿真)及工藝測試時(shí)間。
在上述因素中,測試電路設(shè)計(jì)時(shí)間的增加無疑會(huì)延遲芯片的上市時(shí)間,但DFT設(shè)計(jì)軟件的不斷完善能夠縮短該設(shè)計(jì)時(shí)間。測試準(zhǔn)備包括測試向量的編寫和仿真,一個(gè)高效的測試向量集可以大大縮短工藝測試時(shí)間。若不采用DFT技術(shù),就要付出相當(dāng)長的時(shí)間來編寫測試向量集,而且,隨著VLSI的快速發(fā)展,由人工提供測試向量將越來越不現(xiàn)實(shí)。如果采用DFT技術(shù),就可以縮短測試準(zhǔn)備和工藝測試時(shí)間。因此,從總體上看,DFT是可以縮短芯片上市時(shí)間的。
兩種測試方法的比較
本文針對某一種控制芯片,對采用DFT和不采用DFT的兩種測試方法進(jìn)行了比較,以說明DFT技術(shù)對芯片故障覆蓋率及測試向量集的影響。對芯片進(jìn)行“結(jié)構(gòu)測試”時(shí)的測試激勵(lì)來源有兩種:一種是直接根據(jù)芯片的功能測試激勵(lì)得到芯片的生產(chǎn)測試向量;另一種就是采用DFT技術(shù),通過對設(shè)計(jì)插入掃描鏈,采用ATPG的方法得到測試向量。
不采用DFT技術(shù)的芯片測試測試工具與測試流程
Cadence公司的Verifault_XL工具可以統(tǒng)計(jì)一個(gè)測試向量集能測出多少故障,從而給出該測試向量集的故障覆蓋率。采用該工具的測試流程為:
1) 用芯片功能測試激勵(lì)中的部分激勵(lì)對芯片的RTL級代碼進(jìn)行代碼覆蓋率的測試;
2) 在激勵(lì)中調(diào)用Verifault的系統(tǒng)任務(wù),實(shí)現(xiàn)故障的管理、注入等工作;
3) 使用Verilog_XL運(yùn)行本組測試激勵(lì),得到Verifault統(tǒng)計(jì)結(jié)果;
4) 根據(jù)統(tǒng)計(jì)結(jié)果報(bào)告的故障覆蓋率調(diào)整測試激勵(lì),直至達(dá)到滿足要求的故障覆蓋率;
5) 對達(dá)到要求的測試激勵(lì)進(jìn)行測試向量的提取。
需要注意的是流程中第3步,由于受機(jī)器內(nèi)存的限制,Verifault能復(fù)制的設(shè)計(jì)數(shù)量有限,為了驗(yàn)證所有的prime故障,Verifault會(huì)重復(fù)進(jìn)行多遍測試(pass),這是對Verifault仿真時(shí)間影響最大的因素。每測試完一遍,Verifault會(huì)報(bào)告一次統(tǒng)計(jì)結(jié)果。
測試結(jié)果
本文經(jīng)過對測試激勵(lì)的不斷調(diào)整,最終可達(dá)到的最高故障覆蓋率為81.3%,在時(shí)鐘的下降沿提取測試向量,得到了超過88萬個(gè)的測試向量,其位數(shù)為54b。
采用DFT技術(shù)的芯片測試測試工具與測試流程
因?yàn)樵撔酒壿嬍侨皆O(shè)計(jì),所以采用ATPG+掃描鏈的DFT技術(shù)可以得到高效的測試向量集和較高的故障覆蓋率。Synopsys公司的DC和TetraMAX工具是完成該可測性設(shè)計(jì)的最佳選擇。
DC用來完成掃描鏈的插入,同時(shí)生成TetraMAX需要的約束文件(.spf文件)和插入掃描鏈后的網(wǎng)表文件。TetraMAX是用來實(shí)現(xiàn)ATPG的工具,需要與DC配合使用。 采用這些工具的測試流程為:
1) 首先把不符合可測性設(shè)計(jì)要求的邏輯模塊從邏輯內(nèi)核中分離出來,保證邏輯內(nèi)核的時(shí)鐘可以直接使用管腳輸入的時(shí)鐘,而非門生時(shí)鐘;
2) 增加test_en端口,以及一些必要的邏輯門;
3) 在綜合后的網(wǎng)表基礎(chǔ)上插入掃描鏈;
4) 使用TetraMAX做ATPG,生成測試向量;
5) 用得到的測試向量測試邏輯內(nèi)核;
在最后一步中,由于TetraMAX生成測試激勵(lì)的時(shí)候,掃描鏈的數(shù)據(jù)是并行加載的,與實(shí)際情況不同,所以需要重新編寫測試激勵(lì)對得到的測試向量的可靠性進(jìn)行測試。
測試結(jié)果
TetraMAX生成的測試向量共有324個(gè),其位數(shù)為359b。測試覆蓋率達(dá)到92.86%。掃描器件的使用以及與DFT相關(guān)的附加邏輯的加入,導(dǎo)致了芯片面積的增長,據(jù)輸出報(bào)告可知,采用DFT技術(shù)后,芯片面積增加了大約13%。
結(jié)語
通過兩種測試方法的對比,可以看到,不采用DFT技術(shù),不必增加邏輯,但僅使用功能驗(yàn)證時(shí)的測試激勵(lì)可能無法達(dá)到要求的故障覆蓋率,而且測試深度(生產(chǎn)測試用向量)也容易超過測試機(jī)的存儲(chǔ)量。本文對該控制芯片進(jìn)行測試時(shí),如果不采用DFT技術(shù),雖然測試覆蓋率可以達(dá)到80%以上,但測試向量卻高達(dá)80多萬,若以人工的方法修改測試向量,將大大延長芯片開發(fā)周期,推遲芯片上市時(shí)間。采用DFT技術(shù)雖然增加了芯片面積,但可以自動(dòng)生成高效簡潔的測試向量,且故障覆蓋率能達(dá)到90%以上,極大地提高了芯片的測試效率,降低了測試成本。
評論