數字集成電路中測試數據的編碼壓縮方法
【技術領域】
[0001] 本發明設及一種編碼壓縮方法,尤其是數字集成電路中測試數據的編碼壓縮方 法,屬于集成電路測試技術,特別是對系統忍片(Sy stem-on-a-畑ip, SoC)的外建自測試 (Bui 1 t-Out Se 1 f-Test,BOST)方法中測試數據壓縮方法。
【背景技術】
[0002] 根據摩爾定律,集成在一塊半導體忍片上的晶體管數量約每18至24個月翻一番。 SoC的集成度越來越高,使得忍片體積越來越小,制造成本不斷降低,系統的性能大大提高。 但是,另一方面卻給忍片的測試帶來很多的問題,如:測試數據的量呈指數倍增長,測試復 雜度越來越高,測試功耗越來越大,測試應用時間越來越長等。
[0003] 測試數據壓縮技術能有效地減少測試數據量,一方面可W降低測試功耗,另一方 面可W減少測試引腳數目,縮短測試應用時間,節約ATE測試成本。它將預先計算的測試數 據,經過壓縮后存儲在ATE中,然后移入忍片,利用片上解壓器進行解壓,還原成原始測試數 據。
[0004] 常見的測試數據壓縮技術有:測試集緊縮技術、編碼壓縮技術、線性壓縮技術等。 [000引測試集緊縮(Test Set Compaction)技術運用自動測試模式生成算法,對部分確 定的測試向量實行緊縮,W達到減少測試數據量的目的。通常它不需要額外的硬件投資,測 試集緊縮的結果將使得用于忍片測試向量數目的減少,它的不利之處在于其非模型故障的 覆蓋率要受到影響。
[0006] 編碼壓縮技術就是壓縮預先計算的測試集Td,而得到比Td小的測試集Te,并將其存 儲在ATE的存儲器中。巧聯應用時,利用忍片上的硬件,解壓存儲在ATE中的Te而還原得到Td, 再將其應用到被測電路。由于只需傳輸最終壓縮后的編碼數據,因而更能節省測試時間,并 可有效降低對ATE數據傳輸帶寬的要求。編碼壓縮技術的優點是在不降故障覆蓋率的情況 下,降低了對ATE性能的要求,能有效地保護知識產權,其被測忍片上的解壓模塊可W重用。 但確定的測試數據的理論極限(賭)是確定的,編碼壓縮的效果不可能超過其理論極限 (賭)。
[0007] 線性壓縮技術通過線性方程的擴展來實現解碼過程。Koenemann首次提出利用 LFS時尋種子解碼成掃描測試向量,它的壓縮效果受到Smax的限制,其中Smax為測試集中向 量包含確定位的最大位數。Baryralaaroglu利用外部ATE通道驅動XOR網絡實現解碼過程, 它的壓縮效果和解壓結構受到不同掃描切片數量的約束。伊利諾伊大學香橫分校的研究人 員首先提出Illinois掃描結構,它采用一個外輸入來驅動多條內部掃描鏈。然而,無論是 LFSR、X0R網絡,還是Illinois掃描結構,都存在一定的線性相關性,可能造成向量的不編碼 性,雖然可W在ATPG中加入相應約束來保證向量的可編碼性,但結果往往會增加測試向量 的個數,不利于測試數據壓縮和測試時間的減少,同時解壓結構依賴確定測試集的特征,因 此測試移植性不強。
[0008] 其中,編碼壓縮技術具有如下優點:采用的是無損壓縮,不影響故障覆蓋率;解壓 結構獨立于被測電路,可W有效地保護IP核的知識產權;特別適用于不支持BIST的CUT,應 用性更廣泛。因此,被廣泛應用。
[0009] 中國發明專利201410640849.5提出一種基于變長-變長的動態字典編碼壓縮方 法,公開了一種字典編碼壓縮技術,利用最簡分數展開后的二進制形式實現對測試數據的 壓縮,編碼時只需存儲分子、分母和相容長度,解碼時無需存儲字典,通過計算得出原始測 試數據。
[0010] 運種編碼方法需要首先建立字典,然后逐條比較所有條目后找出一個局部壓縮率 最大的,對其索引進行編碼。然而,建立字典的大小難W把握,太大則逐條比較時耗時過長, 太小則不能得到最佳結果;壓縮時需要跟字典的每一條目比較一次,要耗費大量時間。
【發明內容】
[0011] 本發明要解決的技術問題是提供一種數字集成電路中測試數據的編碼壓縮方法, 將測試數據轉換成小數后,直接通過計算找到對應的最佳有理漸近分數,避免了建立字典 和逐條比較的過程。
[0012] 本發明是通過W下技術方案來實現的。
[0013] -種數字集成電路中測試數據的編碼壓縮方法,步驟包括:
[0014] a、生成確定的完全測試集T;
[0015] b、將所有測試向量級聯,即將一個向量的尾部接另一個向量的首部,記為S;
[0016] C、填充無關位,統計游程長度,將無關位全部填充為0,按照0游程統計游程長度, 得到游程長度序列R;
[0017] d、取游程長度序列R的前n位,在第一位游程長度后添加一個小數點,將n位游程長 度序列轉換成游程長度序列小數f;
[0018] e、查找最佳有理漸近分數x/y,使得x/y = f:
[0019] f、編碼,記錄其對應分子X和分母y,將x,y按偶數位標記編碼即為對應編碼;
[0020] g、將游程長度序列R除去前n位,若不為空,重復執行步驟d、e和f,否則,編碼結束。 [0021 ]進一步地,a:完全測試集T采用自動測試模式生成工具ATPG生成。
[0022] 進一步地,C:若游程長度大于等于9時,進行游程切分,即測試字段000000000的游 程長度為9。
[0023] 進一步地,d: n為整數,取8至20,逐步增大n,直至壓縮率不再增加,即獲得最終n的 數值。
[0024] 進一步地,查找最佳有理漸近分數x/y,使得x/y = f的步驟包括:
[002引 1)取曰=巧1(^-1,6 = 1(^-1;
[0026] 2)[a/b_l依次記為C1,C2,...,Cm,d = a%b;
[0027] 3)令 a = b,b = d;
[0028] 4)重復執行步驟2)和3),直到d = 0或者cm+i〉〉10,轉步驟5);
[0029] 5)取ei = Cm,62 = Cm*Cm-i+l; 6)依次按規律計算:ei = Cm+i-i*ei-i+ei-2,i = 3,…,m;7) 取X = Gm,y = Gm-I,則x/y = f O
[0030] 本發明的有益效果:
[0031] 直接通過計算即可將測試集對應的游程長度序列轉換為最佳有理漸近分數,壓縮 時,直接通過計算即可得到游程序列小數對應的最佳有理漸近分數,無需建立字典和逐條 查找,效率高;解壓時,通過簡單計算即可還原原始測試數據,解壓結構簡單。
【具體實施方式】
[0032] 下面根據實施例對本發明作進一步詳細說明。
[0033] 本發明的目的在于克服現有技術的不足,提出一種數字集成電路中測試數據的編 碼壓縮方法,將測試數據轉換成小數后,直接通過計算找到對應的最佳有理漸近分數,避免 了建立字典和逐條比較的過程。
[0034] 為了方便描述,舉一例進行說明。不失一般性,設原始測試集T=Uoxoxiox, 010XXX01,001XX00X,1X10XX00,X0100XX0,0XX0XXX0,00X0100X,0010X000,X101010X,