新聞中心

EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 一種可以提高DFT設(shè)計(jì)測(cè)試覆蓋率的有效方法

一種可以提高DFT設(shè)計(jì)測(cè)試覆蓋率的有效方法

作者: 時(shí)間:2008-10-08 來(lái)源:網(wǎng)絡(luò) 收藏

伴隨著現(xiàn)代大規(guī)模集成電路制造工藝的快速發(fā)展,設(shè)計(jì)工程師必需直面芯片制造過(guò)程中可能產(chǎn)生的物理缺陷。現(xiàn)今流行的可測(cè)試性設(shè)計(jì)(DFT:Design For Testability)應(yīng)運(yùn)而生,并為保證芯片的良品率擔(dān)任著越來(lái)越重要的角色。

在DFT設(shè)計(jì)中,測(cè)試覆蓋率及其測(cè)試效率是最重要的指標(biāo)。一方面,理想的設(shè)計(jì)目標(biāo)當(dāng)然希望測(cè)試能夠遍及整個(gè)芯片的邏輯,盡管理想值100%是不容易達(dá)到的;另一方面,測(cè)試效率亦非常重要,設(shè)計(jì)工程師總希望用最少的測(cè)試向量達(dá)到預(yù)期的測(cè)試覆蓋率,來(lái)降低芯片的測(cè)試成本。

當(dāng)然,DFT設(shè)計(jì)必須保證正常的邏輯功能為前提。不幸的是,功能設(shè)計(jì)總會(huì)忽略一些潛在的問(wèn)題,導(dǎo)致最終的測(cè)試覆蓋率往往不盡如人意。這種情況下,設(shè)計(jì)中有一些邏輯無(wú)論如何都不能被觀測(cè)到或控制到,因此即使測(cè)試矢量的數(shù)量有很大的增幅,也不能使結(jié)果改善很多。

在實(shí)際的DFT設(shè)計(jì)中,存在對(duì)測(cè)試覆蓋率有較大損害的兩種情況:一種存在于數(shù)字邏輯-模擬邏輯(包括存儲(chǔ)器)輸入-輸出處之陰影部分,另一種存在于特定的多芯片封裝情況下未綁出的輸入-輸出焊墊處。二者的共同點(diǎn)在于:測(cè)試模式下部分邏輯的不可控或不可觀測(cè)。
設(shè)計(jì)背景

本文探討的設(shè)計(jì)目標(biāo)是一個(gè)來(lái)自意法半導(dǎo)體的數(shù)字音頻信號(hào)處理芯片,要求對(duì)數(shù)字功能邏輯進(jìn)行掃描鏈測(cè)試,覆蓋率達(dá)到98%以上。其功能邏輯中存在一些模擬模塊,如鎖相環(huán)、模數(shù)轉(zhuǎn)換器和一些存儲(chǔ)器單元等。更為重要的是,該芯片需要基于不同的應(yīng)用系統(tǒng)需要,不但需要單獨(dú)封裝形式,也需要多芯片共享同一封裝。這樣,在某些多芯片封裝中,就有部分焊墊未引出或接地。而測(cè)試的設(shè)計(jì)初衷是產(chǎn)生一組測(cè)試向量適用于所有封裝形,就要求考慮最嚴(yán)格的封裝下可用的管腳資源。

DFT設(shè)計(jì)有兩個(gè)基本原則:可控制性和可觀測(cè)性,即DFT設(shè)計(jì)要求所有輸入邏輯是可控的和輸出邏輯是可測(cè)的。顯然,考慮到本設(shè)計(jì)中的模擬模塊接口和封裝形式的資源有限性,不可控邏輯和不可觀測(cè)邏輯對(duì)不小于98%的目標(biāo)測(cè)試覆蓋率給出了很大的挑戰(zhàn)。

如圖1所示,在某種芯片封裝情況下,除信號(hào)test_si和test_so外,其余焊墊并未綁出(接地或懸空),從而造成信號(hào)port_A、port_B、port_C和port_D的不可控,以及信號(hào)port_Z1、port_Z2和port_Z3的不可觀測(cè)(懸空)。導(dǎo)致很多相關(guān)邏輯不能正常參于DFT測(cè)試,測(cè)試覆蓋率受到較大的損害。

圖1 封裝造成的測(cè)試邏輯不可控和不可測(cè)

DFT設(shè)計(jì)的可控制性和可觀測(cè)性是通過(guò)原始的管腳來(lái)實(shí)現(xiàn)的,事實(shí)上功能設(shè)計(jì)不可能專(zhuān)門(mén)為DFT保留足夠多的管腳。如圖2所示的數(shù)字-模擬接口,由于PLL模塊的存在,顯然信號(hào)net_1、net_2和net_3上得到的測(cè)試結(jié)果不可直接觀測(cè)(不可測(cè)),組合邏輯1相應(yīng)的測(cè)試覆蓋率降低了;同時(shí),由于PLL模塊的存在,信號(hào)net_4、net_5和的net_6不能直接賦值(不可控),導(dǎo)致組合邏輯2的部分邏輯不能正常參于DFT測(cè)試,相應(yīng)的測(cè)試覆蓋率受到較大的損害。總的來(lái)說(shuō),芯片的測(cè)試覆蓋率降低了。

圖2 模擬模塊造成的測(cè)試邏輯不可控和不可測(cè)

解決方案

針對(duì)設(shè)計(jì)中的上述情況,可以通過(guò)適當(dāng)添加測(cè)試點(diǎn)的方式,使原來(lái)不可控和不可測(cè)的邏輯變化反映到掃描鏈上,使之變得間接可控和可測(cè),以期提高整個(gè)芯片的測(cè)試覆蓋率和測(cè)試效率。

對(duì)于圖1所示的某些封裝中,不可控和不可測(cè)的未綁出(接地或懸空)管腳,圖3給出了相應(yīng)的定制的解決方案。


圖3 添加控制點(diǎn)和觀測(cè)點(diǎn)提高測(cè)試覆蓋率(封裝部分管腳未綁出情況)


對(duì)于輸入管腳,添加一個(gè)帶有選擇端的寄存器。當(dāng)控制選擇信號(hào)為“0”時(shí),電路處于正常工作狀態(tài),功能邏輯從輸入端接收到正常的輸入數(shù)值。當(dāng)選擇控制為“1”時(shí),電路處于測(cè)試狀態(tài)。在移位過(guò)程中,這些點(diǎn)由測(cè)試鏈預(yù)置相應(yīng)的值;在捕獲過(guò)程中,將之接地防止不定態(tài)在設(shè)計(jì)中的傳播。

在輸出管腳處,添加少量異或門(mén)和選擇器件。當(dāng)控制選擇信號(hào)為“0”時(shí),電路處于正常工作狀態(tài),輸出管腳正常輸出功能信號(hào)。當(dāng)選擇控制為“1”時(shí),電路處于測(cè)試狀態(tài),用異或門(mén)將未能綁出的管腳的變化引出,相當(dāng)于這些管腳也可以被觀測(cè)了。

針對(duì)圖2所示的數(shù)字-模擬接口,部分模擬模塊輸入信號(hào)通過(guò)組合邏輯給出,但在測(cè)試時(shí)并沒(méi)有邏輯將這些“終點(diǎn)”的信號(hào)影響引出觀察,因此這些點(diǎn)是不可觀測(cè)的。這與DFT設(shè)計(jì)可觀測(cè)要求(需管腳直接輸出)不相符,可能造成測(cè)試覆蓋率的損害。同時(shí),部分模擬模塊輸出信號(hào)控制相應(yīng)的組合邏輯,但在測(cè)試中,這些點(diǎn)是“浮空”(不可控制)的。這與DFT設(shè)計(jì)可控要求(需管腳直接輸入)不相符,造成測(cè)試覆蓋率的降低。圖4給出了類(lèi)似前者的定制解決方案,其實(shí)質(zhì)也是把這些不可控和不可測(cè)點(diǎn)連到測(cè)試鏈上去,讓這些邏輯間接可觀測(cè)或可控制以改善測(cè)試結(jié)果。

圖4添加控制點(diǎn)和觀測(cè)點(diǎn)提高測(cè)試覆蓋率(數(shù)字-模擬接口情況)

如圖所示,在模擬模塊輸入信號(hào)處添加少量異或門(mén)和選擇器件,并將它們連到掃描鏈上去。當(dāng)控制選擇信號(hào)為“0”時(shí),電路處于正常工作狀態(tài),模擬模塊的輸入管腳正常接收功能信號(hào)。當(dāng)選擇控制為“1”時(shí),電路處于測(cè)試狀態(tài),用異或門(mén)或者其他器件將未能觀測(cè)管腳的變化引出,相當(dāng)于這些管腳間接可以被觀測(cè)了。

如圖所示,在模擬模塊輸出信號(hào)處添加一個(gè)帶有選擇端的寄存器。當(dāng)控制選擇信號(hào)為“0”時(shí),電路處于正常工作狀態(tài),模擬模塊信號(hào)正常輸出到后續(xù)的功能邏輯。當(dāng)選擇控制為“1”時(shí),電路處于測(cè)試狀態(tài):在移位過(guò)程中,這些點(diǎn)由測(cè)試鏈預(yù)置相應(yīng)的值;在捕獲過(guò)程中,將之接地防止不定態(tài)在設(shè)計(jì)中的傳播。

對(duì)于其他的模擬模塊如ADC, 存儲(chǔ)器等,采用類(lèi)似的方法可改善整個(gè)芯片的測(cè)試覆蓋率和測(cè)試效率,達(dá)到目標(biāo)測(cè)試效果。

結(jié)語(yǔ)

在前面提及的實(shí)際項(xiàng)目DFT設(shè)計(jì)中,功能邏輯部分含有萬(wàn)余寄存器。為提高測(cè)試覆蓋率,添加僅12個(gè)寄存器及很少部分組合邏輯作為測(cè)試點(diǎn)后,即可將測(cè)試覆蓋率從原來(lái)的95%提高到 98.3%。由此看來(lái),這種方法是很有效率的。并且可根據(jù)項(xiàng)目實(shí)際需要,添加更多點(diǎn)以期達(dá)到更高覆蓋率,理論上測(cè)試覆蓋率可接近100%。

推薦RTL功能設(shè)計(jì)時(shí)就能考慮這種測(cè)試結(jié)構(gòu)。這樣做設(shè)計(jì)工程師之間能夠了解彼此的設(shè)計(jì)需求,功能測(cè)試結(jié)構(gòu)明晰,在DFT設(shè)計(jì)過(guò)程中省去很多麻煩。如果發(fā)現(xiàn)這類(lèi)問(wèn)題在RTL完成之后,一些DFT工具也提供用戶(hù)自定義的測(cè)試點(diǎn)插入,但是要注意測(cè)試控制信號(hào)選取一定要與需要的測(cè)試模式匹配,否則無(wú)法完成相應(yīng)的測(cè)試期望。這種方法的關(guān)鍵是了解在哪里加測(cè)試點(diǎn)更為有效。

linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)


評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉