SoC設(shè)計(jì)中結(jié)構(gòu)測(cè)試儀的矢量生成原理
現(xiàn)代矢量生成技術(shù)通過(guò)采用比過(guò)去更多的故障模型,能夠在短得多的進(jìn)度時(shí)間內(nèi)利用更少的測(cè)試矢量完成故障覆蓋率更大的測(cè)試。然而,既采用功能測(cè)試矢量也采用其他測(cè)試矢量又會(huì)帶來(lái)新的問(wèn)題,例如矢量數(shù)目增多、不同類(lèi)型的矢量(功能性矢量和結(jié)構(gòu)矢量)應(yīng)如何選擇和組合、如何支持各種各樣的故障和缺陷類(lèi)型、如何決定測(cè)量的規(guī)格和品質(zhì),以及如何將這些測(cè)試矢量應(yīng)用到現(xiàn)代ATE中去。
現(xiàn)代設(shè)計(jì)過(guò)程要求針對(duì)不同目的采用多種不同類(lèi)型的測(cè)試矢量,因此矢量提供已不再是一個(gè)簡(jiǎn)單的程序。矢量的用途貫穿了整個(gè)設(shè)計(jì)、驗(yàn)證、質(zhì)量緩慢提高(ramp up)和生產(chǎn)過(guò)程,甚至在附加的庫(kù)描述、工藝描述、故障分析、老化測(cè)試(burn-in)和硅片級(jí)評(píng)估等方面都有其作用。但最常見(jiàn)的矢量應(yīng)用還是測(cè)試程序。1965年,Gordon Moore提出了著名的摩爾定律“每18個(gè)月處理能力將翻一番”,這一定律對(duì)矢量也同樣適用。根據(jù)已應(yīng)用的矢量數(shù)目的增長(zhǎng)曲線(xiàn),我們已經(jīng)得到了包含上億個(gè)測(cè)試矢量的測(cè)試程序。
什么是測(cè)試矢量?
矢量的一個(gè)基本定義是:矢量是每個(gè)時(shí)鐘周期應(yīng)用于器件管腳的用于測(cè)試或者操作的邏輯1和邏輯0數(shù)據(jù)。這一定義聽(tīng)起來(lái)似乎很簡(jiǎn)單,但在真實(shí)應(yīng)用中則復(fù)雜得多。因?yàn)檫壿?和邏輯0是由帶定時(shí)特性和電平特性的波形代表的,與波形形狀、脈沖寬度、脈沖邊緣或斜率以及上升沿和下降沿的位置都有關(guān)系。在ATE(自動(dòng)測(cè)試設(shè)備)語(yǔ)言中,這些波形是通過(guò)上升和下降沿加上器件管腳對(duì)建立時(shí)間和保持時(shí)間的要求這種格式化描述方式表示的。RZ(歸零)、NRZ(非歸零)和環(huán)繞補(bǔ)碼(SBC,surround by complement)信號(hào)就是幾個(gè)用來(lái)表示邏輯1和邏輯0的不同信號(hào)波形的例子。
數(shù)據(jù)波形和定時(shí)波形中的一個(gè)難點(diǎn)就是在一個(gè)周期中精確、準(zhǔn)確和清晰地定位波形上升沿和下降沿的位置。昂貴的傳統(tǒng)ATE通常通過(guò)采用增大長(zhǎng)度來(lái)支持這一功能,同時(shí),增大長(zhǎng)度還有利于評(píng)估那些帶高速接口的各部分之間的準(zhǔn)確I/O定時(shí)。
結(jié)構(gòu)測(cè)試儀
結(jié)構(gòu)測(cè)試儀是一種新型ATE,它通過(guò)優(yōu)化其操作和特性集來(lái)支持“結(jié)構(gòu)測(cè)試”范例,從而降低傳統(tǒng)ATE的相關(guān)成本。結(jié)構(gòu)化優(yōu)化是指設(shè)計(jì)測(cè)試儀時(shí),更多地考慮到掃描矢量和BIST矢量應(yīng)用的方式——掃描方式采用直線(xiàn)矢量,在位移過(guò)程中利用一組已經(jīng)定義好的掃描通道,以低數(shù)據(jù)率進(jìn)行評(píng)估;BIST則采用芯片內(nèi)部提供的矢量序列,通過(guò)一個(gè)片上PLL,BIST可以實(shí)速運(yùn)行,但喚醒時(shí)必須采用一個(gè)慢速聲明信號(hào)加一個(gè)慢速報(bào)告和/或成功-失敗(pass-fail)信號(hào)。若BIST需要實(shí)速運(yùn)行或需要進(jìn)行數(shù)據(jù)率過(guò)高的AC操作(超出測(cè)試儀所能提供的數(shù)據(jù)率),可采用矢量對(duì)時(shí)鐘,該時(shí)鐘能剛好產(chǎn)生一個(gè)實(shí)速時(shí)鐘周期而不影響應(yīng)用于管腳處的數(shù)據(jù)。
此外,不論用作驅(qū)動(dòng)還是用來(lái)進(jìn)行比較/捕獲,結(jié)構(gòu)測(cè)試儀均支持比傳統(tǒng)ATE更大的存儲(chǔ)器。
測(cè)試矢量從何而來(lái)?
現(xiàn)代測(cè)試程序中使用的測(cè)試矢量有三個(gè)基本來(lái)源:大多數(shù)功能矢量由循環(huán)仿真(cycle-ized simulation)生成;幾乎所有掃描矢量均由測(cè)試模式自動(dòng)生成(ATPG)或工程設(shè)計(jì)自動(dòng)化(EDA)工具生成;而JTAG、邏輯BIST和存儲(chǔ)器BIST這類(lèi)專(zhuān)門(mén)技術(shù)矢量則由目標(biāo)EDA工具生成。此外還有第四類(lèi)直接在ATE上生成或直接由人工操作員生成的矢量,本文對(duì)此類(lèi)矢量不作討論。
功能矢量
功能矢量也叫行為矢量或操作矢量,這種矢量通常由HDL或RTL行為模型仿真得到。行為仿真后得到一個(gè)文件,其中既包含激勵(lì)也包含電路響應(yīng)。之所以采用行為模型仿真是因?yàn)樗砹俗羁斓姆抡娣绞?,而?xì)節(jié)信息越多,仿真越詳細(xì),運(yùn)行仿真所需的時(shí)間就越長(zhǎng)。最常見(jiàn)的用作測(cè)試矢量的仿真輸出是VCD(Verilog Change Dump)文件。而實(shí)際上,驗(yàn)證仿真是一種“基于事件”的仿真,它能夠識(shí)別觀察點(diǎn)的邏輯改變,但ATE并不能使用這種仿真。理想的方法是將這種仿真與一個(gè)時(shí)鐘聯(lián)系起來(lái)應(yīng)用,從而產(chǎn)生一個(gè)與 “測(cè)試儀周期”有關(guān),并且同步于“測(cè)試儀周期”的輸出文件。這種方法叫做“環(huán)化 (cyclization)”。但不論是行為仿真還是驗(yàn)證仿真,不論是否采用環(huán)化方式(cyclized),要想將這些“格式化設(shè)計(jì)”矢量應(yīng)用到目標(biāo)ATE中,都必須對(duì)其進(jìn)行翻譯。如果仿真矢量沒(méi)有采用環(huán)化方式,那么翻譯過(guò)程就會(huì)復(fù)雜很多。通過(guò)翻譯,可以把與每個(gè)時(shí)鐘周期相關(guān)的數(shù)據(jù)映射為目標(biāo)測(cè)試儀所支持的波形。
通常,想要將功能矢量應(yīng)用到一臺(tái)ATE上時(shí)總會(huì)出現(xiàn)一個(gè)問(wèn)題,因?yàn)楣δ苁噶啃枰喾N“邊緣集”或“定時(shí)集”的支持。所謂“邊緣集”或“定時(shí)集”指的是在某個(gè)給定的模式下可能與一個(gè)給定管腳有關(guān)的多種不同的定時(shí)方式(每種不同的電平、邊緣位置、周期、脈沖寬度等都代表了一組不同的邊緣集或定時(shí)集)。原始仿真都是事件驅(qū)動(dòng)的,翻譯時(shí)必須為目標(biāo)模式指配波形,不同的模式通常需要不同的波形。但有時(shí),某部分的設(shè)計(jì)允許當(dāng)數(shù)據(jù)發(fā)生改變時(shí),在幾個(gè)時(shí)鐘周期之間,在某個(gè)給定的管腳上執(zhí)行多項(xiàng)不同的非同步操作(例如控制一個(gè)紋波計(jì)數(shù)器或one-h(huán)ot狀態(tài)機(jī))。
功能矢量是針對(duì)行為模型構(gòu)造的,設(shè)計(jì)功能矢量的目的是利用其對(duì)事務(wù)處理、操作或邏輯設(shè)計(jì)設(shè)定的行為進(jìn)行練習(xí)。這是對(duì)被測(cè)設(shè)計(jì)的門(mén)級(jí)或電路圖級(jí)的一級(jí)抽象,是對(duì)其物理層、布線(xiàn)層或硅片層的二級(jí)抽象。要評(píng)估功能矢量的質(zhì)量,必須對(duì)其評(píng)分,或者利用故障模型在門(mén)級(jí)對(duì)其進(jìn)行“故障仿真”,或利用缺陷模型在物理層對(duì)其進(jìn)行仿真。而最常用的評(píng)分方式則是利用綁定(stuck-at)故障模型進(jìn)行仿真。此外,在對(duì)功能矢量進(jìn)行評(píng)分時(shí)還需要進(jìn)行另一種仿真,那就是針對(duì)門(mén)級(jí)模型的仿真。然后,根據(jù)仿真的結(jié)果選取那些能夠達(dá)到最佳故障覆蓋率,或能達(dá)到目標(biāo)覆蓋率的矢量或模式,而剔除那些覆蓋率冗余的模式(所謂覆蓋率冗余,指并未發(fā)現(xiàn)任何獨(dú)特的或新的故障)。
在現(xiàn)代的復(fù)雜設(shè)計(jì)中,基本的“結(jié)構(gòu)級(jí)”或“示意圖級(jí)”驗(yàn)證都采用更高效的基于掃描的綁定矢量來(lái)進(jìn)行生產(chǎn)測(cè)試和質(zhì)量評(píng)估,功能矢量就只能用于定時(shí)、速度性能或頻率驗(yàn)證了。但即使是在這種用法上,功能矢量也面臨基于掃描的矢量的挑戰(zhàn)。
功能矢量也能在結(jié)構(gòu)測(cè)試儀上使用,但結(jié)構(gòu)測(cè)試儀是針對(duì)掃描類(lèi)矢量更簡(jiǎn)單的應(yīng)用格式和更低的數(shù)據(jù)率進(jìn)行了優(yōu)化的,因此功能矢量在用于結(jié)構(gòu)測(cè)試儀上時(shí),必須對(duì)其所支持的邊緣集/定時(shí)集的數(shù)目加以限制。
結(jié)構(gòu)矢量
隨著IC密度和復(fù)雜性日益增大以及上市時(shí)間持續(xù)縮短,繼續(xù)追求傳統(tǒng)的功能測(cè)試方法就變得前景堪憂(yōu)。設(shè)計(jì)和測(cè)試團(tuán)隊(duì)在上市時(shí)間的壓力下,對(duì)操作系統(tǒng)所知更少的情況下,必須在更短時(shí)間內(nèi)增大故障覆蓋率,并考慮更多的故障類(lèi)型。他們?cè)趺纯赡茉谶@樣的環(huán)境中抽出時(shí)間來(lái)為復(fù)雜SoC開(kāi)發(fā)功能測(cè)試矢量(我們購(gòu)買(mǎi)第三方的IP內(nèi)核不也是因?yàn)槲覀儾痪邆渥约涸O(shè)計(jì)這種內(nèi)核的時(shí)間和專(zhuān)業(yè)技術(shù)嗎)?
在IC設(shè)計(jì)量日益增大的情況下,結(jié)構(gòu)化測(cè)試方法為我們提供了一種更加有效的選擇。采用結(jié)構(gòu)化測(cè)試方法時(shí),工程師使用的是基于硅片結(jié)構(gòu)驗(yàn)證的故障模型,而不是基于硅片行為驗(yàn)證的測(cè)試矢量。這種測(cè)試通過(guò)靜態(tài)綁定(static stuck-at)故障模型就可以完成。門(mén)和連線(xiàn)通過(guò)芯片中的DFT來(lái)校驗(yàn),而自動(dòng)矢量生成和矢量評(píng)分則由EDA工具來(lái)處理。測(cè)試過(guò)程如下:首先在門(mén)的輸入賦一個(gè)值,將疑似缺陷節(jié)點(diǎn)的值綁定為與其應(yīng)有值相反的值(例如將1強(qiáng)加給一個(gè)綁定0的節(jié)點(diǎn)),然后在支撐門(mén)的輸入賦一個(gè)值,使前面的值能夠傳遞到觀測(cè)點(diǎn)。如果觀測(cè)點(diǎn)的值與期望值不同,那么就認(rèn)為檢測(cè)到一個(gè)故障。
雖然結(jié)構(gòu)化測(cè)試法并不是什么新方法,但它已經(jīng)開(kāi)始成為一種越來(lái)越受歡迎的測(cè)試方法,原因是:1. 自動(dòng)化EDA工具能夠用比生成傳統(tǒng)功能測(cè)試矢量更短的時(shí)間生成結(jié)構(gòu)測(cè)試矢量;2. 已經(jīng)有一些EDA工具能夠針對(duì)綁定、延遲、橋接、開(kāi)路、存儲(chǔ)器缺陷、泄漏和其他的復(fù)雜故障模型來(lái)生成矢量,這些故障模型可使測(cè)試變?yōu)楦邔哟蔚钠焚|(zhì)測(cè)試。并且這類(lèi)相關(guān)工具也對(duì)生成與掃描、內(nèi)建邏輯自測(cè)(BIST)、存儲(chǔ)器GIST和Iddq(泄漏測(cè)試)相關(guān)的邏輯有所幫助。
此外,結(jié)構(gòu)化測(cè)試中使用的矢量均非常靈活,而且也攜帶了更多固有的設(shè)計(jì)信息。這一優(yōu)點(diǎn)對(duì)基于IP內(nèi)核的IC設(shè)計(jì)而言非常關(guān)鍵。有了更全面的測(cè)試矢量,工程師就能在對(duì)芯片了解更少的情況下組織測(cè)試、開(kāi)發(fā)測(cè)試程序并進(jìn)行診斷。而且,如果工程師們正確地貫徹了結(jié)構(gòu)化測(cè)試的整個(gè)結(jié)構(gòu),就能利用較少的測(cè)試矢量達(dá)到較大的測(cè)試覆蓋率。
結(jié)構(gòu)測(cè)試法假設(shè)在芯片內(nèi)插入有DFT功能,而且要求嚴(yán)格遵守設(shè)計(jì)規(guī)則中的測(cè)試規(guī)則。采用這種方法的開(kāi)發(fā)人員必須延長(zhǎng)其時(shí)間進(jìn)度,將添加和驗(yàn)證DFT以及運(yùn)行ATPG所需的時(shí)間考慮進(jìn)去。有些人認(rèn)為DFT和ATPG很費(fèi)時(shí)間,這種想法是錯(cuò)誤的,因?yàn)槭聦?shí)上DFT和ATPG正在取代過(guò)去通常在下單后才完成的一些任務(wù)。其實(shí),相對(duì)于在后設(shè)計(jì)階段再來(lái)生成功能矢量并編寫(xiě)測(cè)試程序而言,將這些任務(wù)調(diào)整到設(shè)計(jì)早期來(lái)完成能夠節(jié)省相當(dāng)多的時(shí)間。
采用結(jié)構(gòu)矢量進(jìn)行測(cè)試還有另一個(gè)優(yōu)點(diǎn),那就是現(xiàn)今的所有主流EDA工具都是以IEEE 1450.1標(biāo)準(zhǔn)規(guī)定的STIL(標(biāo)準(zhǔn)測(cè)試互換語(yǔ)言)輸出的,而如今的結(jié)構(gòu)測(cè)試儀可以直接理解這種設(shè)計(jì)語(yǔ)言,無(wú)需翻譯,這就消除了測(cè)試程序開(kāi)發(fā)過(guò)程中錯(cuò)誤的一個(gè)主要來(lái)源,解決了一個(gè)大難題。
綁定(stuck-at)掃描矢量
最常見(jiàn)的一種結(jié)構(gòu)矢量是掃描矢量。絕大多數(shù)掃描矢量都是由ATPG工具生成的DC掃描矢量或綁定掃描矢量。如果被測(cè)設(shè)計(jì)是一個(gè)全掃描設(shè)計(jì),那么所有觸發(fā)器都是掃描結(jié)構(gòu)的一部分,都被組織后編入掃描鏈,或編入可從該部分的管腳處直接訪(fǎng)問(wèn)的掃描移位寄存器中。這時(shí),矢量生成是組合進(jìn)行的。如果被測(cè)設(shè)計(jì)是“大部分掃描”或“局部掃描”設(shè)計(jì),那么有一些觸發(fā)器就不屬于掃描鏈,這時(shí)矢量生成就必須包含序列分析功能(即矢量生成器必須清楚應(yīng)怎樣使觸發(fā)器工作)。另外,如果掃描矢量被用來(lái)測(cè)試或驗(yàn)證設(shè)計(jì)在實(shí)速運(yùn)行時(shí)的特性或行為,或者設(shè)計(jì)的AC特性或行為,那么要么必須進(jìn)行一次順序時(shí)間幀分析,要么必須進(jìn)行一次偽順序時(shí)間幀分析,以生成實(shí)速樣本周期。
如果掃描矢量是隨機(jī)創(chuàng)建的(即分配給掃描鏈元素的值是隨機(jī)的邏輯值),那么不論這些矢量是來(lái)自測(cè)試儀還是片上模式發(fā)生器(例如一個(gè)線(xiàn)性反饋移位寄存器,LFSR),這一應(yīng)用都被認(rèn)為是一次BIST。許多時(shí)候,掃描矢量是由某些確定性的工具創(chuàng)建的,所謂確定性是指這些矢量都是針對(duì)某些特定的故障而開(kāi)發(fā)的。綁定故障模型是最簡(jiǎn)單的ATPG故障模型,在這種模型中,邏輯電路的一個(gè)網(wǎng)點(diǎn)或一個(gè)節(jié)點(diǎn)(門(mén)的輸入或輸出)必須被指定一個(gè)綁定0或綁定1的條件(就好像這個(gè)網(wǎng)點(diǎn)或節(jié)點(diǎn)被短路到VDD或VSS一樣)。在測(cè)試這一網(wǎng)點(diǎn)或節(jié)點(diǎn)時(shí),必須將其輸入驅(qū)動(dòng)到與其綁定值相反的值上(即綁定1的節(jié)點(diǎn)或網(wǎng)點(diǎn)必須被驅(qū)動(dòng)為邏輯0),而將疑似缺陷節(jié)點(diǎn)的值唯一地連接到一個(gè)觀測(cè)點(diǎn)(只有當(dāng)錯(cuò)誤的結(jié)果被傳送出來(lái)時(shí),觀測(cè)點(diǎn)才能觀測(cè)到)。而且還要將邏輯1賦給AND型邏輯的off-path輸入,將邏輯0賦給OR型邏輯的off-path輸入,借此開(kāi)通信號(hào)的傳輸通道,從而使故障演練能夠完成(圖2)。
如果故障后果的前向追蹤過(guò)程以及使能和故障演練路徑的后向追蹤過(guò)程都得出了結(jié)論,那么就可以認(rèn)為邏輯值要么在輸入管腳處結(jié)束,要么在掃描觸發(fā)器內(nèi)結(jié)束。用于實(shí)施掃描鏈中所分布測(cè)試的數(shù)據(jù)比特叫做“測(cè)試立方(test-cube)”,其他比特可以進(jìn)行隨機(jī)填充(padding)。掃描鏈可以以任何頻率填充,其工作頻率通常只有幾十兆赫茲。一旦某個(gè)狀態(tài)被加載到掃描鏈之后,掃描使能信號(hào)就被取消,以允許出現(xiàn)為期一個(gè)時(shí)鐘周期的“功能響應(yīng)”,然后再次打開(kāi)掃描使能,將這次“取樣”的結(jié)果移出。移出的結(jié)果中能夠表現(xiàn)測(cè)試結(jié)果的那些數(shù)據(jù)比特叫做“有效位”。
AC掃描矢量
隨著深亞微米(DSM)和納米制造工藝不斷發(fā)展,工藝改變和工藝缺陷已經(jīng)成為與定時(shí)相關(guān)的故障條件產(chǎn)生的主要因素。因此,綁定模型開(kāi)始使某些特定設(shè)計(jì)市場(chǎng)上的芯片得免除更大量的測(cè)試。但在深亞微米和納米設(shè)計(jì)中,一個(gè)象綁定模型一樣的靜態(tài)故障模型是不可能描述所有故障的。相比而言,動(dòng)態(tài)評(píng)估延遲故障模型更好。
延遲故障模型與綁定型故障模型非常相似,但前者內(nèi)嵌有定時(shí)特征,當(dāng)它發(fā)現(xiàn)一個(gè)定時(shí)上的缺點(diǎn)時(shí),它會(huì)將其轉(zhuǎn)換為一個(gè)布爾錯(cuò)誤(即在采樣時(shí)刻,觀察點(diǎn)會(huì)出現(xiàn)一個(gè)錯(cuò)誤的邏輯值)。有一種延遲故障模型叫做門(mén)延遲故障模型或轉(zhuǎn)換(transition)延遲故障模型。這種模型可以用一個(gè)門(mén)元件的管腳值來(lái)表示,它具備慢升(STR)或慢降(STF)邏輯轉(zhuǎn)換特性,或者可以說(shuō)它的傳輸延遲遠(yuǎn)大于正常值。另一種延遲故障模型是“路徑(path)”延遲故障模型,它和門(mén)延遲故障模型類(lèi)似,但它是通過(guò)一條包含幾個(gè)門(mén)和幾個(gè)節(jié)點(diǎn)連接的傳輸路徑工作,而且它要到某個(gè)已知路徑的最后一個(gè)門(mén)才具備慢升和慢降特性。
許多種造成定時(shí)不確定行為的缺陷都可以用延遲故障模型來(lái)建模。其中包括:阻性柵極氧化物短路和摻雜不足,這兩種缺陷會(huì)導(dǎo)致晶體管開(kāi)關(guān)速度變慢;布線(xiàn)錯(cuò)誤,包括過(guò)孔斷路和過(guò)孔堵塞以及走線(xiàn)斷路或畸形的(例如狗骨形),這種布線(xiàn)錯(cuò)誤會(huì)導(dǎo)致傳輸路徑受阻。金屬橋或短路線(xiàn)連接可能會(huì)與其他信號(hào)產(chǎn)生競(jìng)爭(zhēng),因而也可以用延遲模型建模對(duì)其建模。此外,還有一種必須接受評(píng)估的“軟故障”條件,那就是由互電容引發(fā)的串?dāng)_類(lèi)信號(hào)完整性問(wèn)題。
一些其他的缺陷也可能造成邏輯上類(lèi)似延遲的行為,例如在電源通路無(wú)法提供足夠能量以驅(qū)動(dòng)邏輯模塊時(shí)出現(xiàn)的電源垮降,或在時(shí)鐘樹(shù)驅(qū)動(dòng)器的驅(qū)動(dòng)能力不足或時(shí)鐘邊沿速率重疊時(shí)造成的時(shí)鐘衰弱。這其中有一些延遲十分微小,當(dāng)他們出現(xiàn)在非關(guān)鍵路徑中時(shí)可能不會(huì)被發(fā)現(xiàn)。這種微小的延遲看似一種可接受的缺陷或故障,但它們卻可能最終導(dǎo)致芯片出現(xiàn)可靠性問(wèn)題,或是引發(fā)額外資源泄漏之類(lèi)的一些其他缺陷。
AC掃描就是為達(dá)到驗(yàn)證定時(shí)一致性的目的,而利用基于掃描的技術(shù)來(lái)實(shí)現(xiàn)實(shí)速采樣周期。AC掃描也可以用來(lái)驗(yàn)證頻率一致性(速度分級(jí))、管腳定義一致性(IO定時(shí))或者檢查由制造引入的延遲缺陷。工程師們驗(yàn)證頻率一致性的方法是保證生產(chǎn)后,設(shè)計(jì)中,凡是在規(guī)定范圍內(nèi)的所有關(guān)鍵的定時(shí)通路都滿(mǎn)足他們對(duì)硅片級(jí)的規(guī)定要求。而這一分析是在對(duì)每一個(gè)端點(diǎn)進(jìn)行分析的基礎(chǔ)上進(jìn)行的(一個(gè)端點(diǎn)就是一個(gè)寄存器或一個(gè)輸出管腳),采用從靜態(tài)定時(shí)分析(STA)中提取的關(guān)鍵路徑。而管腳定時(shí)規(guī)范的規(guī)定,例如輸入建立時(shí)間、輸入保持時(shí)間以及輸出有效時(shí)間,都是通過(guò)保證每個(gè)管腳上最壞情況下的最長(zhǎng)路徑和最好情況下的最短路徑都在規(guī)定的建立-保持定時(shí)范圍內(nèi)來(lái)實(shí)現(xiàn)的。與進(jìn)行頻率驗(yàn)證和管腳驗(yàn)證時(shí)一樣,為了定位出現(xiàn)延遲缺陷的位置,需采用AC掃描來(lái)測(cè)試每個(gè)端點(diǎn)上的大量路徑,只是需注意,有些非關(guān)鍵路徑也可能因?yàn)榇嬖谘舆t而變成關(guān)鍵路徑。
以上兩種AC掃描故障模型中,轉(zhuǎn)換延遲模型能夠檢測(cè)門(mén)和網(wǎng)點(diǎn)處的STR和STF信號(hào),更適合測(cè)試總延遲,而路徑延遲模型能夠檢測(cè)一條經(jīng)過(guò)完整描述的,由多個(gè)網(wǎng)點(diǎn)和門(mén)組成的路徑上的STR和STF信號(hào),更適合監(jiān)測(cè)關(guān)鍵路徑上的微小延遲。二者結(jié)合起來(lái)就能完成所有定時(shí)和頻率驗(yàn)證任務(wù)。
對(duì)轉(zhuǎn)換延遲故障模型和路徑延遲故障模型都可以進(jìn)行分析,并且可根據(jù)對(duì)矢量對(duì)的需要在兩個(gè)時(shí)間幀內(nèi)完成這兩種模型分析。第一個(gè)時(shí)間幀用于建立錯(cuò)誤值并發(fā)起一次轉(zhuǎn)換,第二個(gè)時(shí)間幀用于捕捉轉(zhuǎn)換的結(jié)果。所有公開(kāi)可用的ATPG工具從一段時(shí)間以前,就都開(kāi)始支持這種對(duì)轉(zhuǎn)換進(jìn)行的觸發(fā)-捕捉分析了。AC掃描中采用的矢量生成技術(shù)已經(jīng)成熟,但其應(yīng)用卻仍不夠成熟。
綁定掃描和AC掃描的主要區(qū)別在于時(shí)鐘定時(shí)。能實(shí)現(xiàn)時(shí)鐘定時(shí)的方法有很多種,但此處只需要一個(gè)實(shí)速時(shí)鐘脈沖。多路D觸發(fā)器型掃描的測(cè)試時(shí)鐘通常采用系統(tǒng)時(shí)鐘,而LSSD型掃描的測(cè)試時(shí)鐘則通常采用專(zhuān)用的測(cè)試時(shí)鐘。時(shí)鐘定時(shí)原本應(yīng)該并不復(fù)雜,但現(xiàn)代的設(shè)計(jì)中多存在多個(gè)時(shí)鐘區(qū)域、多種時(shí)鐘頻率、由時(shí)鐘演變而得的時(shí)鐘,以及龐大的可能負(fù)荷有上萬(wàn)個(gè)寄存器的時(shí)鐘分布樹(shù),這就使得時(shí)鐘設(shè)計(jì)決不可能簡(jiǎn)單了事。 對(duì)有些器件而言,大多數(shù)常用測(cè)試儀的時(shí)鐘定時(shí)能力已經(jīng)能夠滿(mǎn)足要求,在測(cè)試這樣的器件時(shí),測(cè)試所使用的時(shí)鐘通常由芯片外部,經(jīng)由系統(tǒng)時(shí)鐘管腳灌入芯片內(nèi)部,既用做移位時(shí)鐘也用做捕捉時(shí)鐘。這種定時(shí)方式對(duì)那些工作在200-400MHz以下的設(shè)計(jì)是相當(dāng)簡(jiǎn)單的。然而當(dāng)測(cè)試儀的定時(shí)能力無(wú)法滿(mǎn)足器件對(duì)頻率的要求時(shí),或者當(dāng)需要添加昂貴的高速焊盤(pán)才能從芯片外部引入時(shí)鐘時(shí),最常用的辦法就是利用片上的鎖相環(huán)或延遲鎖相環(huán)(DLL)提供系統(tǒng)時(shí)鐘。這時(shí),外部提供的時(shí)鐘更符合測(cè)試儀的定時(shí)能力,只作為參考時(shí)鐘;作用于系統(tǒng)(很多時(shí)候也作用于掃描結(jié)構(gòu))的內(nèi)部時(shí)鐘是PLL提供的時(shí)鐘。在這種情況下,實(shí)速移位和采樣耗費(fèi)的功率就成了人們最關(guān)心的問(wèn)題。掃描轉(zhuǎn)換(toggling)的功耗可能超過(guò)預(yù)計(jì)值,但為解決“測(cè)試功耗”問(wèn)題而對(duì)這部分進(jìn)行額外仔細(xì)的設(shè)計(jì)并不經(jīng)濟(jì),而且可能導(dǎo)致晶圓尺寸過(guò)大。要解決這一問(wèn)題,可以只提供一個(gè)頻率較低的移位時(shí)鐘,然后再允許使用一個(gè)實(shí)時(shí)采樣時(shí)鐘。為器件提供這種類(lèi)型定時(shí)時(shí)鐘的方法有很多。
還有一個(gè)與時(shí)鐘定時(shí)相關(guān)聯(lián)的問(wèn)題,那就是掃描移位使能(SE)信號(hào)的聲明和消除。“移位時(shí)觸發(fā)”和 “捕捉時(shí)觸發(fā)”這兩種方法均能解決SE信號(hào)的應(yīng)用問(wèn)題。所有主流EDA矢量生成(ATPG)工具都支持這兩種方法,但它們各有各的折衷和局限。
LOS技術(shù)和LOC技術(shù)
業(yè)界對(duì)這兩種方法有一種普遍的誤解,認(rèn)為不論LOS還是LOC方法都可以用在現(xiàn)有的設(shè)計(jì)掃描結(jié)構(gòu)上。這種看法是錯(cuò)誤的。因?yàn)閼?yīng)用不同的方法時(shí),物理掃描結(jié)構(gòu)(即掃描位的順序和掃描使能)會(huì)有不同的要求。LOS方法不論表面看起來(lái)還是實(shí)際運(yùn)作起來(lái)都與常規(guī)DC掃描十分相似,只是采樣間隔有所不同。采用LOS法時(shí),首先向掃描鏈中壓入一對(duì)測(cè)試矢量,為掃描鏈中的倒數(shù)第二次移位(第n-1次移位)安排一個(gè)狀態(tài)。最后一次移位會(huì)復(fù)制所有的狀態(tài)數(shù)據(jù),并從觸發(fā)位開(kāi)始觸發(fā)。然后將掃描移位使能信號(hào)取消,這時(shí),采得的樣本就是捕捉到的值。ATPG工具很容易計(jì)算出應(yīng)該為掃描鏈中剩余的n-1個(gè)空間安排怎樣的狀態(tài)。
對(duì)于那些應(yīng)用頻率較低的設(shè)計(jì),移位時(shí)鐘和采樣時(shí)鐘可采用同一頻率,整個(gè)操作看起來(lái)與綁定掃描別無(wú)二致。而對(duì)于那些頻率要求較高的設(shè)計(jì),則可以采用較慢速度進(jìn)行移位操作,然后在最后一次移位和采樣操作之間開(kāi)始引入實(shí)速周期。如果實(shí)速周期比移位周期的時(shí)間間隔要短,那么這種技術(shù)就叫做周期切換(cycle-switching)或叫做周期縮短(cycle-shrinking)。如果通過(guò)控制占空比來(lái)實(shí)現(xiàn)實(shí)速周期,到達(dá)最后一次移位時(shí),啟動(dòng)時(shí)鐘出現(xiàn)在本周期的后部分,而捕捉周期的捕捉時(shí)鐘出現(xiàn)在下一個(gè)周期的前半部分,那么這種技術(shù)就叫做時(shí)鐘交替(clock-chopping)或占空比調(diào)制(duty-cycle modulation)。LOS技術(shù)中關(guān)鍵的問(wèn)題就在于SE信號(hào)必須在最后一次移位和引入實(shí)速采樣時(shí)鐘之間被取消。在高頻情況下,這一要求就可能導(dǎo)致SE信號(hào)變成一個(gè)十分關(guān)鍵的信號(hào),無(wú)法再由測(cè)試儀提供。這時(shí)就只能將其看作一個(gè)時(shí)鐘,為它建立一個(gè)分布樹(shù),并且在可能時(shí)將其寄存在芯片內(nèi)部(這又給ATPG工具帶來(lái)了一個(gè)問(wèn)題)。
與LOS處于競(jìng)爭(zhēng)低位的LOC方法其實(shí)是由LOS衍變而來(lái)的,只是LOS只需一個(gè)采樣周期就可完成,而LOC需要兩個(gè)采樣周期。首先要將一個(gè)狀態(tài)掃描入被測(cè)部分,然后進(jìn)行一次采樣,改變寄存器中的觸發(fā)位,然后再進(jìn)行第二次采樣,捕捉轉(zhuǎn)換后的實(shí)時(shí)結(jié)果。與LOS類(lèi)似,采樣時(shí)鐘也可以用作實(shí)時(shí)時(shí)鐘,或時(shí)鐘交替和占空比控制。但與LOS最大的不同是,LOC只要求“俘獲時(shí)觸發(fā)”時(shí)鐘為實(shí)時(shí)時(shí)鐘,而且SE信號(hào)在前一個(gè)時(shí)鐘周期內(nèi)就已經(jīng)被取消,不會(huì)變成關(guān)鍵信號(hào)。
LOS和LOC各有其優(yōu)缺點(diǎn),但總的來(lái)說(shuō),他們對(duì)軟件ATPG工具或?qū)τ布呙杞Y(jié)構(gòu)都是比較有利的。二者相比而言,LOS在ATPG工具上比較容易實(shí)施,因此運(yùn)行時(shí)間比較短,矢量緊縮度也較好。但要求移位位具備獨(dú)立性(這就可能導(dǎo)致掃描路線(xiàn)不是最佳路線(xiàn))才能保證故障覆蓋率較高,LOC則要求ATPG工具進(jìn)行更多操作(即運(yùn)行時(shí)間更長(zhǎng)、矢量緊縮度更差),但并不要求在掃描鏈中進(jìn)行任何比特排序。而且采用LOC方法后,可以進(jìn)行更大面積的硬件優(yōu)化。
掃描結(jié)構(gòu)
掃描結(jié)構(gòu)的配置會(huì)對(duì)矢量的最終形式和它們對(duì)ATE存儲(chǔ)器大小的要求產(chǎn)生至關(guān)重要的影響。盡管結(jié)構(gòu)測(cè)試儀是針對(duì)掃描矢量?jī)?yōu)化過(guò)的,但仍不能排除產(chǎn)生阻礙矢量使用或使矢量使用復(fù)雜化的配置或條件。例如創(chuàng)建一種要求以PLL頻率(可能在幾百兆赫茲范圍)進(jìn)行移位操作的掃描結(jié)構(gòu),或者需要多種邊緣集的掃描結(jié)構(gòu)。有的掃描結(jié)構(gòu)對(duì)存儲(chǔ)器的要求甚至可能超出當(dāng)前結(jié)構(gòu)測(cè)試儀所支持的深度掃描驅(qū)動(dòng)存儲(chǔ)器。
過(guò)去,由于對(duì)掃描矢量存在一些普遍的誤解和實(shí)現(xiàn)上的問(wèn)題,構(gòu)造出的掃描結(jié)構(gòu)效率較差,所以人們總認(rèn)為掃描矢量很難管理。例如,若在一條掃描鏈上放置6萬(wàn)個(gè)觸發(fā)器,以便將需要的專(zhuān)用測(cè)試管腳數(shù)縮減到兩個(gè)(一個(gè)用作掃描數(shù)據(jù)輸入,另一個(gè)用作掃描數(shù)據(jù)輸出),結(jié)果測(cè)試儀只能使用一個(gè)數(shù)據(jù)通道,這時(shí),如果采用2,000個(gè)掃描矢量,那么這個(gè)數(shù)據(jù)通道就需要12億時(shí)鐘周期的存儲(chǔ)能力。
但EDA掃描插入工具已經(jīng)日益成熟,人們也開(kāi)始了解掃描測(cè)試法能夠帶來(lái)的經(jīng)濟(jì)效益,因而,更高效的掃描結(jié)構(gòu)隨之產(chǎn)生。許多掃描鏈都放棄了專(zhuān)用的測(cè)試管腳,轉(zhuǎn)而開(kāi)始使用借用的輸入和輸出管腳,而各掃描鏈本身也被配置得更加平衡(即所有的掃描鏈都被配置成同樣大小)。此外,還有一些其他優(yōu)化措施,如將時(shí)間域分割后劃入掃描域、不再支持加載和停放(load-and-park)以及將掃描長(zhǎng)度變?yōu)榭膳渲谩?
為保證掃描結(jié)構(gòu)能夠提供矢量,同時(shí)也為了保證所生成矢量的安全性,在矢量生成過(guò)程中采用了許多測(cè)試規(guī)則(DRC):禁止驅(qū)動(dòng)競(jìng)爭(zhēng)、禁止時(shí)鐘信號(hào)用作數(shù)據(jù)也禁止數(shù)據(jù)用作時(shí)鐘并且不支持組合反饋。
在已經(jīng)出現(xiàn)的問(wèn)題中,納米技術(shù)對(duì)掃描結(jié)構(gòu)的影響是最應(yīng)引起注意。因?yàn)樵诩{米工藝中,布線(xiàn)缺陷是最常見(jiàn)的問(wèn)題,而掃描則是一種對(duì)布線(xiàn)十分敏感的結(jié)構(gòu)?,F(xiàn)代設(shè)計(jì)中常會(huì)出現(xiàn)大量這樣的問(wèn)題:由于掃描鏈斷裂而導(dǎo)致掃描鏈?zhǔn)茏瑁瑪?shù)據(jù)移位被迫停止,或者掃描鏈出現(xiàn)保持時(shí)間問(wèn)題,從而導(dǎo)致比特跳過(guò)和數(shù)據(jù)模糊出現(xiàn)。要解決這些問(wèn)題,就需要?jiǎng)?chuàng)建一種新的矢量來(lái)驗(yàn)證掃描鏈并對(duì)其進(jìn)行快速診斷。
本文小結(jié)
對(duì)尺寸和復(fù)雜度均驚人的現(xiàn)代ASIC和SoC而言,要想實(shí)現(xiàn)全面測(cè)試,使其達(dá)到我們要求的品質(zhì)等級(jí),必須采用一個(gè)相當(dāng)可觀的測(cè)試矢量陣才行。今天的設(shè)計(jì)測(cè)試既需要功能矢量也需要結(jié)構(gòu)矢量,必須將二者結(jié)合起來(lái)使用。然而事實(shí)已經(jīng)證明,在矢量生成、故障覆蓋率,甚至在應(yīng)用中,結(jié)構(gòu)化方式都比功能化方式更有效。采用結(jié)構(gòu)矢量需要DFT支持,但在芯片中插入DFT的技術(shù)和生成矢量的技術(shù)都已經(jīng)成熟起來(lái),所有主流EDA廠(chǎng)商都支持這兩種功能。
評(píng)論