基于指令的處理器時延測試產(chǎn)生方法
發(fā)布時間:2020-08-28 17:29
【摘要】: 隨著半導體工藝向超深亞微米推進,處理器的設計復雜度隨之提高。這使得處理器的測試面臨著越來越多的挑戰(zhàn),特別是處理器的時延測試已成為工程應用的需要和測試研究領域的熱點。同時隨著基于知識產(chǎn)權(Intellectual Property, IP)核的系統(tǒng)芯片(System-on-Chip, SOC)設計越來越普及,為了有效地測試深嵌在片內的處理器核,基于指令的處理器測試是一個很有前景的研究方向。本文從時延測試和基于指令的處理器測試入手,綜述了這兩個領域內已有的研究成果和成熟技術,并分析了基于結構的通路分類與基于功能的通路分類之間的聯(lián)系和區(qū)別。在此基礎上,本文針對處理器的數(shù)據(jù)通路部分的通路時延故障提出一種基于指令的處理器時延測試產(chǎn)生方法。它能在不增加任何硬件開銷的情況下,在處理器的正常操作模式運行處理器自身的指令來進行測試。本文的主要貢獻如下: 1.建立了一種以數(shù)據(jù)流-狀態(tài)矩陣表征的新指令集模型。從待測處理器(Processor Under Test,簡稱PUT)的指令集結構和寄存器傳輸級(Register Transfer Level,簡稱RTL)描述中,提取出每條指令的數(shù)據(jù)流-狀態(tài)矩陣,記錄指令執(zhí)行過程中狀態(tài)的轉換和寄存器間數(shù)據(jù)的傳輸。指令集的數(shù)據(jù)流-狀態(tài)矩陣模型很好地反映了執(zhí)行處理器指令時信號傳播所經(jīng)過的數(shù)據(jù)通路,基于這些矩陣可以很方便地在RTL進行通路分類。 2.提出了一種基于數(shù)據(jù)流-狀態(tài)矩陣的通路分類算法。在RTL將處理器數(shù)據(jù)通路部分寄存器間通路分成功能不可測通路(Functional Untestable Paths,簡稱FUPs)和潛在功能可測通路(Potential Functional Testable Paths,簡稱PFTPs)。在RTL就將這些功能不可測通路識別出來,無疑為接下來的測試產(chǎn)生節(jié)省了很多計算開銷。另外,在通路分類時,就對PFTPs記錄下潛在測試指令(序列),降低從門級測試向量對到測試指令序列轉換的復雜度。 3.研究并實現(xiàn)了約束提取及約束下的非強健通路時延測試產(chǎn)生算法。從PUT的RTL描述里提取出控制約束和數(shù)據(jù)約束,并結合這些約束在門級進行有約束的測試產(chǎn)生。為了提取控制約束,根據(jù)PUT的RTL描述創(chuàng)建一個instr-state-ctrlsig表,來記錄每條指令的每個狀態(tài)下值為高的那些控制信號名。數(shù)據(jù)約束的提取分為兩類:一類是某些寄存器的非法取值;另一類是控制約束下相應寄存器的值,對這種情況我們提出了4種提取依據(jù)。最后,在一個門級非強健通路時延自動測試生成(Automatic Test Pattern Generation,簡稱ATPG)工具中,將測試不同通路的寄存器取值約束分別施加到PUT的門級組合網(wǎng)絡中相應的偽原始輸入上,實現(xiàn)了對所有潛在功能可測通路的帶約束的非強健通路時延測試產(chǎn)生。 對Parwan處理器的實驗結果表明我們的通路分類和有約束的ATPG算法非常有效。在RTL的通路分類識別出70.93%的通路是功能不可測的。約束對ATPG的結果也產(chǎn)生
【學位授予單位】:中國科學院研究生院(計算技術研究所)
【學位級別】:碩士
【學位授予年份】:2005
【分類號】:TP332
【圖文】:
37圖 4.3 Parwan 處理器控制器部分狀態(tài)轉換圖兩種尋址模式,可認為Parwan處理器一共有23條指令。主要的且唯一是累加器(AC),它被用來連接大多數(shù)指令。Parwan 處理器的指令集編。第四列直接/間接位表示尋址模式直接尋址還是間接尋址。
圖4.2 Parwan處理器[20] 處理器的控制器部分以有限自動狀態(tài)機的形式描述。它包含有 9持它選定的控制信號激活一個時鐘周期。它的 9 個狀態(tài)之間的轉
產(chǎn)生必要約束的下的測試向量。4.3.4 測試指令序列的產(chǎn)生圖4.5 測試向量到測試指令序列的轉換有約束的 ATPG 后,得到了 PFTPs 的潛在測試指令(序列)和測試向量。我們的目標是要為 PFTPs 找到最終的測試指令(序列), 它由控制指令(序列)、潛在測試指令(序列)和觀測指令(序列)構成。 測試向量到測試指令序列的轉換如圖 4.5 所示。通過把測試向量對的值賦給相應的控制信號、內部寄存器和存儲器,可以得到控制指令(序列)和觀測指令(序列)。例如,parwan里的第7931條通路是 從databus_i[0] 到 ac_out[5]的一條通路,也就是說,是從 IN 到 AC 的一條通路。 它的潛在測試指令是 I4(SUB)。用測試向量對給相應的控制信號、內部寄存器和存儲器賦值,得到測試向量對的分解{V1={alu[2:0]=000, asl=0, asr=0, IN[7:0]=xxxxxxx, AC[7:0] = xxxxxxxx, …}, V2={alu[2:0]=111, asl=0, asr=0, IN[7:0]=xxxxxx0, AC[7:0] = xx110011, …}}。AC 的值能用指令 LDAmem[1] 確認(justified),從 AC 出來的結果能用指令 STA mem[2]傳輸。所以為了測試
本文編號:2807913
【學位授予單位】:中國科學院研究生院(計算技術研究所)
【學位級別】:碩士
【學位授予年份】:2005
【分類號】:TP332
【圖文】:
37圖 4.3 Parwan 處理器控制器部分狀態(tài)轉換圖兩種尋址模式,可認為Parwan處理器一共有23條指令。主要的且唯一是累加器(AC),它被用來連接大多數(shù)指令。Parwan 處理器的指令集編。第四列直接/間接位表示尋址模式直接尋址還是間接尋址。
圖4.2 Parwan處理器[20] 處理器的控制器部分以有限自動狀態(tài)機的形式描述。它包含有 9持它選定的控制信號激活一個時鐘周期。它的 9 個狀態(tài)之間的轉
產(chǎn)生必要約束的下的測試向量。4.3.4 測試指令序列的產(chǎn)生圖4.5 測試向量到測試指令序列的轉換有約束的 ATPG 后,得到了 PFTPs 的潛在測試指令(序列)和測試向量。我們的目標是要為 PFTPs 找到最終的測試指令(序列), 它由控制指令(序列)、潛在測試指令(序列)和觀測指令(序列)構成。 測試向量到測試指令序列的轉換如圖 4.5 所示。通過把測試向量對的值賦給相應的控制信號、內部寄存器和存儲器,可以得到控制指令(序列)和觀測指令(序列)。例如,parwan里的第7931條通路是 從databus_i[0] 到 ac_out[5]的一條通路,也就是說,是從 IN 到 AC 的一條通路。 它的潛在測試指令是 I4(SUB)。用測試向量對給相應的控制信號、內部寄存器和存儲器賦值,得到測試向量對的分解{V1={alu[2:0]=000, asl=0, asr=0, IN[7:0]=xxxxxxx, AC[7:0] = xxxxxxxx, …}, V2={alu[2:0]=111, asl=0, asr=0, IN[7:0]=xxxxxx0, AC[7:0] = xx110011, …}}。AC 的值能用指令 LDAmem[1] 確認(justified),從 AC 出來的結果能用指令 STA mem[2]傳輸。所以為了測試
【參考文獻】
中國期刊全文數(shù)據(jù)庫 前2條
1 李華偉,李忠誠,閔應驊;雙倍可變觀測點的時滯測試[J];電子學報;1999年11期
2 趙著行,閔應驊,李忠誠;布爾過程在通路敏化中的應用[J];計算機學報;1996年08期
本文編號:2807913
本文鏈接:http://www.sikaile.net/kejilunwen/jisuanjikexuelunwen/2807913.html
最近更新
教材專著