專利名稱:系統(tǒng)芯片外建自測試數(shù)據(jù)的壓縮方法及專用解碼單元的制作方法
系統(tǒng)芯片外建自測試數(shù)據(jù)的壓縮方法及專用解碼單元
技術(shù)領(lǐng)域:
本發(fā)明涉及集成電路測試技術(shù),特別是對系統(tǒng)芯片(System-on-a-Chip,簡稱 SoC)的外建自測試(Built-Off Self-Test,BOST)方法中測試數(shù)據(jù)壓縮方法及專用解碼單 元。
背景技術(shù):
集成電路技術(shù)的發(fā)展使得可在一個芯片中集成數(shù)以億計的器件,并且可以集成預(yù)
先設(shè)計和經(jīng)過驗證的IP,如存儲器,微處理器,DSP等。這種多元化的集成芯片已經(jīng)成為能
處理各種信息的集成系統(tǒng),被稱為片上系統(tǒng)或系統(tǒng)芯片。SoC大大降低了系統(tǒng)成本,縮短了
設(shè)計周期,加快了產(chǎn)品上市時間,但是SoC產(chǎn)品的測試面臨越來越多的挑戰(zhàn),如 1、芯片測試點少,可直接控制或觀測的測試點有限,通常只能通過芯片有限的輸
入/輸出引腳進(jìn)行測試而芯片內(nèi)部節(jié)點很難通過宏觀機(jī)械裝置直接控制或觀測。 2、自動測試設(shè)備(簡稱ATE)價格昂貴,芯片的設(shè)計和制造技術(shù)發(fā)展速度比ATE的
設(shè)計和制造技術(shù)發(fā)展快,芯片的時鐘頻率已超過了目前最先進(jìn)的ATE的頻率,無法進(jìn)行全
速領(lǐng)lj試。 3、測試數(shù)據(jù)量大,SoC中集成的IP越多,所需測試數(shù)據(jù)量就越大。預(yù)計到2014年 存儲測試向量所需存儲器的容量是1999年的150倍,將會超過ATE的存儲深度。
芯片的測試已成為制約集成電路發(fā)展的一個"瓶頸"。已有大量的文獻(xiàn)對集成電路 的測試方法展開研究,主要有內(nèi)建自測試(Built-In Self-Test,簡稱BIST)和外建自測試 兩種方法。內(nèi)建自測試方法,依靠芯片自身的資源完成對芯片的測試。此方法將測試模式 生成器TPG、測試過程控制和測試響應(yīng)評價功能模塊嵌入在被測電路CUT上,擺脫了對ATE 的依賴,減少了測試費(fèi)用。但由于BIST生成的多是偽隨機(jī)測試向量,測試時通常存在著抗 隨機(jī)故障(Random Resistant Fault,簡稱RRF),故BIST存在故障覆蓋率不高、測試序列較 長的弊端。雖然可以通過加權(quán)或采用混合模式的BIST等方法來進(jìn)一步提高測試效率,但隨 著電路規(guī)模的擴(kuò)大,RRF的增多,要付出的硬件開銷將顯著增加。 外建自測試方法又稱為測試源劃分技術(shù),此方法將所需的測試向量經(jīng)過壓縮存儲 在ATE中,測試期間,通過片上的解壓電路將其還原施加到被測電路上。它同樣是將一些測 試資源從ATE移入到芯片中,以達(dá)到減少測試數(shù)據(jù)量、縮短測試時間的目的,并能允許使用 低速ATE而不降低測試質(zhì)量。該方法不需要了解被測設(shè)計(Design Under Test,簡稱DUT) 的具體內(nèi)部結(jié)構(gòu),可以很好的保護(hù)知識產(chǎn)權(quán),因而得到了廣泛地應(yīng)用。 由于SoC測試數(shù)據(jù)的特殊性, 一個好的測試源劃分技術(shù),需要在壓縮率、解碼硬件 開銷和控制協(xié)議三個方面做出權(quán)衡。經(jīng)典的方法有基于游程的編碼方法,基于統(tǒng)計的編碼 方法、基于字典的編碼方法和基于折疊計數(shù)器的方法。基于游程的編碼方法有Golomb碼、 FDR碼、EFDR碼、交替碼、交替連續(xù)碼等編碼方法,但這類方法都存在著控制協(xié)議復(fù)雜等問 題;基于統(tǒng)計的編碼方法有選擇哈夫曼編碼、變長哈夫曼編碼,但這類方法存在解壓硬件 開銷大,解碼過程復(fù)雜等問題;基于字典的編碼方法有LZ77、 LZ78、 LZW等,但這類方法需要存儲字典開銷大,同時大量的變長索引使解碼非常復(fù)雜。基于折疊計數(shù)器的方法能夠?qū)?整個測試集嵌入到多個折疊集中,這樣將整個測試集的存儲變成了多個折疊種子的存儲, 是一種非常優(yōu)秀的方法,然而由于折疊集的翻轉(zhuǎn)規(guī)律的單一性,使得單個折疊集所能嵌入 的測試向量個數(shù)非常少,最后需要的折疊集的數(shù)量仍然很大;折疊集的另一缺點是從折疊 種子到折疊向量之間的還原是串行的,因此其應(yīng)用時間很長,這增加了測試過程。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是為避免上述現(xiàn)有技術(shù)所存在的不足之處,提供一種 非侵入式的外建自測試測試數(shù)據(jù)壓縮方法及專用解碼單元,無需改變被測試的電路結(jié)構(gòu), 即可達(dá)到并行還原翻轉(zhuǎn)序列的目的,降低所需測試數(shù)據(jù)的存儲容量,縮短測試應(yīng)用時間。
本發(fā)明是通過以下技術(shù)方案解決上述技術(shù)問題的系統(tǒng)芯片外建自測試數(shù)據(jù)的壓 縮方法,具體步驟如下 a、采用自動測試模式生成工具ATPG,生成確定的完全測試集T,其測試向量個數(shù) 為N; b、通過所述完全測試集T構(gòu)建序列圖頂點表示測試向量,邊表示兩個頂點所對 應(yīng)測試向量之間的翻轉(zhuǎn)關(guān)系,邊上的數(shù)值代表兩個頂點所對應(yīng)測試向量之間需要翻轉(zhuǎn)的位 置; c、尋找最大可嵌入翻轉(zhuǎn)序列從包含最大確定位的測試向量所對應(yīng)的頂點開始遍 歷圖,遍歷原則首先選取該頂點所有直接相連的邊上的數(shù)值個數(shù)最小的邊,若該邊上所 對應(yīng)的數(shù)值與其以前遍歷的路徑上的所有對應(yīng)的邊上的數(shù)值無相同值,則該邊即為遍歷路 徑;若該邊上所對應(yīng)的數(shù)值與其以前遍歷的路徑上的所有對應(yīng)的邊上的數(shù)值有相同值,則 選擇判斷該頂點直接相連的剩下的邊的數(shù)值情況,直到該邊上所對應(yīng)的數(shù)值與其以前遍歷 的路徑上的所有對應(yīng)的邊上的數(shù)值無相同值;此過程一直重復(fù)到所有頂點全部遍歷或某一 頂點所有對應(yīng)邊上的對應(yīng)數(shù)值均與其以前遍歷的路徑上的所有對應(yīng)的邊上的數(shù)值有相同 值,所有頂點所對應(yīng)的測試向量集即為所得最大可嵌入翻轉(zhuǎn)序列,記為1\ ;
d、無關(guān)位填充無關(guān)位的填充在遍歷過程中動態(tài)完成。每成功遍歷一條邊,則該邊 相連的兩個頂點所對應(yīng)的兩個測試向量的無關(guān)位需要填充,首先按該邊上的數(shù)值所對應(yīng)的 位置以相反值填充無關(guān)位,對其它位置的無關(guān)位的填充則是判斷是否有一個向量在該對應(yīng) 位置有確定位,若是則該無關(guān)位按相同值填充,否則,無關(guān)位不需要填充;
e、尋找可嵌入翻轉(zhuǎn)序列數(shù)量將1\中所包含的測試向量從T中刪除,記為T',即 T' = T-L,對T'按步驟b構(gòu)建序列圖,并在T'中按步驟c尋找最大可嵌入翻轉(zhuǎn)序列T2 ;重 復(fù)上述過程,一直到剩下序列全部嵌入到可翻轉(zhuǎn)序列Tn,即T = {1\,T2,……,TJ ,其中1\,
T2,……,Tn均為可翻轉(zhuǎn)序列,其中^^!.然后利用自動測試設(shè)備將壓縮的數(shù)據(jù)導(dǎo)入被測
2 ,
芯片,由被測芯片的解壓縮電路來進(jìn)行解壓,最后將解壓縮后的數(shù)據(jù)傳輸?shù)奖粶y電路的掃 描鏈。 本發(fā)明還提供了一種用于實現(xiàn)所述系統(tǒng)芯片外建自測試數(shù)據(jù)壓縮方法的專用解 碼單元,包括用于展開翻轉(zhuǎn)序列個數(shù)的計數(shù)器,譯碼器,或門,用于控制從種子到生成測試向量翻轉(zhuǎn)位置的可配置網(wǎng)絡(luò),帶輸出反饋的D觸發(fā)器,所述計數(shù)器的輸出端連接所述譯碼 器的輸入端,所述譯碼器的輸出端連接所述或門的輸入端,所述或門的輸出端連接所述可 配置網(wǎng)絡(luò)的輸入端,所述可配置網(wǎng)絡(luò)的輸出端連接所述D觸發(fā)器。數(shù)據(jù)輸出信號在時鐘控 制下將解壓縮的數(shù)據(jù)傳輸出被測設(shè)計的掃描鏈,完成整個解壓縮過程。所述可配置網(wǎng)絡(luò)由 翻轉(zhuǎn)序列的翻轉(zhuǎn)順序來配置,而不是確定不變的 本發(fā)明的優(yōu)點在于本發(fā)明通過將整個測試集嵌入到幾種不同的翻轉(zhuǎn)序列中,這 樣只用存儲幾種翻轉(zhuǎn)序列的種子,從而達(dá)到壓縮數(shù)據(jù)的目的,翻轉(zhuǎn)序列的翻轉(zhuǎn)規(guī)律可以不 同,增加了壓縮的靈活性。
下面參照附圖結(jié)合實施例對本發(fā)明作進(jìn)一步的描述。
圖1為本發(fā)明的原始測試集; 圖2是由本發(fā)明原始測試集生成的完整序列圖;
圖3為本發(fā)明專用解碼單元的結(jié)構(gòu)示意圖。
具體實施方式
所述壓縮方法步驟a中的完全確定測試集的生成方法如下 采用ATPG工具生成確定的完全測試集T,測試集T中所含的測試向量能夠測試到 所有的故障。對ATPG工具的選擇,要使其生成的測試向量含有無關(guān)位,接下來的步驟就是 對生成的確定的完全測試集T進(jìn)行壓縮。構(gòu)建序列圖 參見圖1、圖2,所述壓縮方法步驟b中的序列圖是通過將圖1中的t。、 t2、 t3、
^作為頂點,邊表示兩個頂點所對應(yīng)測試向量之間的翻轉(zhuǎn)關(guān)系,將他們之間需要翻轉(zhuǎn)的位
置記錄在邊上,如t。到t2需要翻轉(zhuǎn)第一位。尋找最大可嵌入翻轉(zhuǎn)序列 選擇頂點t。作為起始地點,到頂點t2、 t3、 t4邊上所對應(yīng)的值的數(shù)量分別是3,
1 , 2, 2,到頂點t2邊上對應(yīng)的值的數(shù)量最少,選取該邊作為遍歷路徑;同樣,對頂點t2選取到
頂點t3的邊作為遍歷路徑;對頂點^選取到頂點^的邊作為遍歷路徑;整個遍歷的路徑為
t。 一 t2 — t3 — V如圖2中虛線所示。 所述壓縮方法步驟C中尋找可嵌入翻轉(zhuǎn)序列數(shù)量的具體步驟如下首先通過 所述完全測試集T構(gòu)建序列圖,再在該序列圖中尋找最大可嵌入翻轉(zhuǎn)序列,如圖2中 t。 一 t2 — t3 — ^序列即為最大可嵌入序列,將該最大可嵌入翻轉(zhuǎn)序列全部從序列圖中刪 除,并刪除與該最大可嵌入序列頂點直接相連的邊,構(gòu)成新圖,本例中只剩下頂點t4,再在 該序列中尋找最大可嵌入翻轉(zhuǎn)序列,此過程一直到所有頂點全部嵌入到翻轉(zhuǎn)序列。本例中, 只剩下頂點^,其可以做成單獨(dú)的翻轉(zhuǎn)序列。本例中,可嵌入翻轉(zhuǎn)序列的數(shù)量為2。
所述壓縮方法的壓縮效果分析 從尋找最大可嵌入翻轉(zhuǎn)序列算法中,可以看出,任意兩個序列均可以嵌入到一個 可翻轉(zhuǎn)序列,即對于一個完整的測試集(設(shè)測試向量的個數(shù)為N,測試向量的長度為m),即
最壞情況下,所能得到的可嵌入翻轉(zhuǎn)序列數(shù)量為
2
,同樣,最好情況下,對于一個翻轉(zhuǎn)序到
附之
列,最多所能嵌入的向量個數(shù)為m+l個。因此,本方案所能得到的壓縮率在
TV Tw + l
間,優(yōu)于現(xiàn)有技術(shù)。 專用解碼單元的實現(xiàn) 參見圖3,專用解碼單元包括計數(shù)器、譯碼器、或門、可配置網(wǎng)絡(luò)和帶輸出反饋的 D觸發(fā)器計數(shù)器用于展開翻轉(zhuǎn)序列的個數(shù),如對于序列t。 一 t2 — t3 — t"共4個序列,選 擇2位的計數(shù)器即可。當(dāng)計數(shù)器的值為k時,在譯碼器控制下選中前k個或門,該電路結(jié)構(gòu) 規(guī)律性強(qiáng),易于實現(xiàn)。可配置網(wǎng)絡(luò)用于控制從種子到生成測試向量的翻轉(zhuǎn)位置,如對于序列 t。 一 t2 — t3 — 其翻轉(zhuǎn)的位置分別是第1位、第3位、第2位,因此可配置網(wǎng)絡(luò)的第1根 線直接相連,第2根線與第3根線交叉相連,如圖3所示。帶輸出反饋的D觸發(fā)器由傳統(tǒng)的 D觸發(fā)器增加兩個二選一電路構(gòu)成。 需要說明的是,本發(fā)明公開的非侵入式的外建自測試測試數(shù)據(jù)壓縮方法除了應(yīng)用 在系統(tǒng)芯片(SoC)上,本領(lǐng)域技術(shù)人員只要對其稍加修改,還可以應(yīng)用在其他集成電路上。 因此本發(fā)明的應(yīng)用并不只限于系統(tǒng)芯片(SoC),應(yīng)用在其他集成電路的類似方法也落入本 發(fā)明保護(hù)范圍。 盡管已經(jīng)示出和描述了本發(fā)明的實施例,對于本領(lǐng)域的普通技術(shù)人員而言,可以 理解在不脫離本發(fā)明的原理和精神的情況下可以對這些實施例進(jìn)行多種變化、修改、替換 和變型,本發(fā)明的范圍由所附權(quán)利要求及其等同物限定。
權(quán)利要求
系統(tǒng)芯片外建自測試數(shù)據(jù)的壓縮方法,其特征在于采取以下步驟a、采用自動測試模式生成工具,生成確定的完全測試集T,其測試向量個數(shù)為N;b、用所述完全測試集T構(gòu)建序列圖頂點表示測試向量,邊表示兩個頂點所對應(yīng)測試向量之間的翻轉(zhuǎn)關(guān)系,邊上的數(shù)值代表兩個頂點所對應(yīng)測試向量之間需要翻轉(zhuǎn)的位置;c、尋找最大可嵌入翻轉(zhuǎn)序列從包含最大確定位的測試向量所對應(yīng)的頂點開始遍歷圖,遍歷原則首先選取該頂點所有直接相連的邊上的數(shù)值個數(shù)最小的邊,若該邊上所對應(yīng)的數(shù)值與其以前遍歷的路徑上的所有對應(yīng)的邊上的數(shù)值無相同值,則該邊即為遍歷路徑;若該邊上所對應(yīng)的數(shù)值與其以前遍歷的路徑上的所有對應(yīng)的邊上的數(shù)值有相同值,則選擇判斷該頂點直接相連的剩下的邊的數(shù)值情況,直到該邊上所對應(yīng)的數(shù)值與其以前遍歷的路徑上的所有對應(yīng)的邊上的數(shù)值無相同值;此過程一直重復(fù)到所有頂點全部遍歷或某一頂點所有對應(yīng)邊上的對應(yīng)數(shù)值均與其以前遍歷的路徑上的所有對應(yīng)的邊上的數(shù)值有相同值,所有頂點所對應(yīng)的測試向量集即為所得最大可嵌入翻轉(zhuǎn)序列,記為T1;d、無關(guān)位填充無關(guān)位的填充在遍歷過程中動態(tài)完成。每成功遍歷一條邊,則該邊相連的兩個頂點所對應(yīng)的兩個測試向量的無關(guān)位需要填充,首先按該邊上的數(shù)值所對應(yīng)的位置以相反值填充無關(guān)位,對其它位置的無關(guān)位的填充則是判斷是否有一個向量在該對應(yīng)位置有確定位,若是則該無關(guān)位按相同值填充,否則,無關(guān)位不需要填充;e、尋找可嵌入翻轉(zhuǎn)序列數(shù)量將T1中所包含的測試向量從T中刪除,記為T’,即T’=T-T1,對T’按步驟b構(gòu)建序列圖,并在T’中按步驟c尋找最大可嵌入翻轉(zhuǎn)序列T2;重復(fù)上述過程,一直到剩下序列全部嵌入到可翻轉(zhuǎn)序列Tn,即T={T1,T2,……,Tn},其中T1,T2,……,Tn均為可翻轉(zhuǎn)序列,其中 <mrow><mi>n</mi><mo>≤</mo><mfrac> <mi>N</mi> <mn>2</mn></mfrac><mo>;</mo> </mrow>然后利用自動測試設(shè)備將壓縮的數(shù)據(jù)導(dǎo)入被測芯片,由被測芯片的解壓縮電路來進(jìn)行解壓,最后將解壓縮后的數(shù)據(jù)傳輸?shù)奖粶y電路的掃描鏈。
2. —種用于實現(xiàn)所述系統(tǒng)芯片外建自測試數(shù)據(jù)壓縮方法的專用解碼單元,其特征在于所述解碼單元包括用于展開翻轉(zhuǎn)序列個數(shù)的計數(shù)器,譯碼器,或門,用于控制從種子到生成測試向量翻轉(zhuǎn)位置的可配置網(wǎng)絡(luò),帶輸出反饋的D觸發(fā)器,所述計數(shù)器的輸出端連 接所述譯碼器的輸入端,所述譯碼器的輸出端連接所述或門的輸入端,所述或門的輸出端 連接所述可配置網(wǎng)絡(luò)的輸入端,所述可配置網(wǎng)絡(luò)的輸出端連接所述D觸發(fā)器。
3. 所述根據(jù)權(quán)利要求2所述一種用于實現(xiàn)所述系統(tǒng)芯片外建自測試數(shù)據(jù)壓縮方法的專用解碼單元,其特征在于所述可配置網(wǎng)絡(luò)由翻轉(zhuǎn)序列的翻轉(zhuǎn)順序來配置。
4. 所述根據(jù)權(quán)利要求2所述一種用于實現(xiàn)所述系統(tǒng)芯片外建自測試數(shù)據(jù)壓縮方法的 專用解碼單元,其特征在于帶輸出反饋的D觸發(fā)器由傳統(tǒng)的D觸發(fā)器增加兩個二選一電路 構(gòu)成。
全文摘要
本發(fā)明涉及集成電路測試技術(shù),特別是對系統(tǒng)芯片(System-on-a-Chip,簡稱SoC)的外建自測試(Built-Off Self-Test,BOST)方法中測試數(shù)據(jù)壓縮方法及專用解碼單元。本發(fā)明通過將整個測試集嵌入到幾種不同的翻轉(zhuǎn)序列中,這樣只用存儲幾種翻轉(zhuǎn)序列的種子,從而達(dá)到壓縮數(shù)據(jù)的目的,翻轉(zhuǎn)序列的翻轉(zhuǎn)規(guī)律可以不同,增加了壓縮的靈活性。本發(fā)明還提供了一種用于實現(xiàn)所述系統(tǒng)芯片外建自測試數(shù)據(jù)壓縮方法的專用解碼單元,包括用于展開翻轉(zhuǎn)序列個數(shù)的計數(shù)器,譯碼器,或門,用于控制從種子到生成測試向量翻轉(zhuǎn)位置的可配置網(wǎng)絡(luò),帶輸出反饋的D觸發(fā)器。
文檔編號G01R31/3183GK101762782SQ20101004653
公開日2010年6月30日 申請日期2010年1月13日 優(yōu)先權(quán)日2010年1月13日
發(fā)明者詹文法, 馬俊 申請人:詹文法;馬俊