一種并行折疊計數器狀態向量的選擇生成方法及其硬件電路的制作方法
【技術領域】
[0001] 本發明涉及一種基于硬件的高效測試向量生成技術,屬于集成電路測試與計算機 應用技術領域。
【背景技術】
[0002] 隨著設計和工藝技術的發展,集成電路的規模和復雜度越來越高,測試數據量膨 脹導致測試應用時間和測試成本大幅上升。內建自測試技術(BIST)通過在芯片內部集成 測試向量生成、應用和測試響應分析電路,可以有效降低測試對自動測試設備的依賴,降低 測試成本。同時,BIST支持全速測試,且有利于保護集成電路測試方法和技術的知識產權。
[0003] 嵌入式硬件測試向量生成是集成電路BIST的關鍵技術。偽隨機測試向量生成作 為一種低成本技術,利用線性反饋移位寄存器(LFSR)的狀態變換生成隨機狀態向量,用于 測試電路中大量的易測故障。針對電路難測故障,也稱為硬故障,提出基于LFSR的重播種 技術。通過故障模擬獲得確定性測試向量,利用LFSR編碼技術對確定性測試向量進行長度 方向(橫向)壓縮,得到對應的種子向量集。再通過折疊計數器(Folding Counters),對種 子向量集進行數量方向(縱向)壓縮。另一方面,針對傳統LFSR和折疊計數器測試向量串 行生成的缺點,提出并行LFSR和并行折疊計數器的測試向量生成技術。
[0004] 現有的并行折疊計數器技術的最大缺點是,對給定的折疊種子向量,只能順序地 生成其對應的狀態向量。例如,對于長度大于或等于4的折疊種子向量,要生成折疊距離3 對應的狀態向量,必須先順序地生成折疊距離分別為〇、1和2對應的狀態向量,從而導致用 于電路的BIST會產生大量的冗余數據,造成電路測試時間和測試功耗增加。
【發明內容】
[0005] 本發明為了克服現有并行折疊計數器狀態向量只能順序生成的不足之處,提出一 種并行折疊計數器狀態向量的選擇生成方法及其硬件電路開銷結構設計簡單的硬件電路, 以期能對給定的折疊種子向量和折疊距離值,直接生成該折疊距離值所對應的狀態向量, 從而顯著提高確定性BIST測試向量的生成效率,避免冗余狀態向量生成,降低電路測試時 間和測試功耗。
[0006] 本發明為解決技術問題采用如下技術方案:
[0007] 本發明一種并行折疊計數器狀態向量的選擇生成方法,包括:n位的二進制數的 折疊種子向量和與所述折疊種子向量對應的η個狀態向量;記所述η位的二進制數的折疊 種子向量為S = [S1S2. . . Sj. . . Sn] ;Sj表示所述折疊種子向量S中第j個二進制位;s i表示 第1個二進制位,即最高二進制位;Sn表示第η個二進制位,即最低二進制位;I < j < η ; 記與所述折疊種子向量s對應的η個狀態向量為X = (X1, χ2,. . .,Xi,. . .,χη} ^1表示與所 述折疊種子向量s對應的第i個狀態向量;K i < η ;記與所述η個狀態向量X中的每個 狀態向量依次對應的折疊距離值為{〇, 1,. . .,i_l,. . .,n-1} ;i-l表示與第i個狀態向量Xi 對應的折疊距離值;其特點是,
[0008] 所述選擇生成方法是按如下步驟進行目標狀態向量的選擇生成:
[0009] 步驟1、假設目標狀態向量為第i個狀態向量xi;
[0010] 步驟2、定義初始翻轉控制向量為Vtl= [V J2. .. Vi. .. vn] Wi表示所述初始翻轉控 制向量v〇中第i個二進制位;V i表示第1個二進制位,即最高二進制位;Vn表示第η個二進 制位,即最低二進制位;η表示所述初始翻轉控制向量V ci的長度,當i為奇數時,V i= 1 ;當 i為偶數時,Vi= 〇 ;
[0011] 步驟3、用所述折疊距離值i-Ι的二進制數中最低二進制位分別替換所述初始翻 轉控制向量%中從第i個二進制位V i到第η個二進制位V n的所有η-i+l位二進制位;從 而獲得翻轉控制向量Vc/ =Iiv1V2...?/ ...Vn' ];ν/表示替換后的第i個二進制位;
[0012] 步驟4、將所述翻轉控制向量VtZ與所述折疊種子向量s按位依次進行異或運算, 從而獲得所述第i個狀態向量X i,即所述目標狀態向量。
[0013] 本發明一種基于并行折疊計數器狀態向量選擇生成方法的硬件電路的特點是包 括:η位用于寄存二進制數的折疊種子向量的種子寄存器、「bg 2?_l位用于寄存折疊距離值 的距離寄存器、η位用于寄存初始翻轉控制向量的參考寄存器、η個二選一多路器、η個異或 門以及位替換控制電路;
[0014] 記所述距離寄存器的「l〇g2?]位從高位到低位依次為iU,,外。以-2,···,A);
[0015] 記所述種子寄存器的η位從高位到低位依次為S1, S2, ...,Sn;
[0016] 記所述參考寄存器的η位從高位到低位依次為V1, V2, ...,Vn;
[0017] 記η個所述二選一多路器的使能端從高位到低位依次為E1, E2, ...,En;
[0018] 記η個所述二選一多路器的一路輸入端從高位到低位依次為A1, A2, ...,An;
[0019] 記η個所述二選一多路器的另一路輸入端從高位到低位依次為B1, B2, ...,Bn;
[0020] 記η個所述二選一多路器的輸出端從高位到低位依次為F1, F2, ...,Fn;
[0021] 記所述位替換控制電路的輸入端從高位到低位依次為
[0022] 記所述位替換控制電路的輸出端從高位到低位依次為O1, 02, ...,0n;
[0023] 所述距離寄存器的「1〇§2?·|位從高位到低位D卜卜g2" V2,…,A與所述位替換 控制電路的「l〇g2 個輸入端從高位到低位1,7I i〇g2? 1-2,…,依次相連;
[0024] 所述位替換控制電路的η個輸出端從高位到低位O1, 02, ...,On與所述η個二選一 多路器的使能端從高位到低位E1, E2, ...,En依次相連;
[0025] 所述η個二選一多路器的一路輸入端從高位到低位A1, A2,...,八"與所述參考寄存 器的η位從高位到低位V1, V2, ...,Vn依次相連;
[0026] 所述η個二選一多路器的另一路輸入端從高位到低位B1, B2, ...,Bn與所述距離寄 存器的Dtl位分別相連;
[0027] 所述二選一多路器的輸出端從高位到低位F1, F2, ...,Fn與所述種子寄存器的η位 從高位到低位S1, S2, ...,5"通過所述η個異或門進行異或運算,從而獲得目標狀態向量。
[0028] 本發明所述的基于并行折疊計數器狀態向量選擇生成方法的硬件電