引言
隨著便攜式設(shè)備和無線通訊系統(tǒng)在現(xiàn)實生活中越來越廣泛的使用,可測性設(shè)計(DFT)的功耗問題引起了VLSI設(shè)計者越來越多的關(guān)注。因為在測試模式下電路的功耗要遠遠高于正常模式,必將帶來如電池壽命、芯片封裝、可靠性等一系列問題。隨著集成電路的發(fā)展,內(nèi)建自測試(BIST)因為具備了諸多優(yōu)越性能(如降低測試對自動測試設(shè)備在性能和成本上的要求、可以進行At—speed測試及有助于保IP核的知識產(chǎn)權(quán)等),已成為解決SoC測試問題的首選可測性設(shè)計手段。
在BIST中常用線性反饋移位寄存器(LFSR)作為測試模式生成器(TPG)。LFSR必須產(chǎn)生很長的測試矢量集才能滿足故障覆蓋率的要求,但這些矢量消耗了大量的功率。
另外,在系統(tǒng)工作模式下,應(yīng)用于給定電路的連續(xù)功能輸入矢量具有重要的相關(guān)性,而由LFSR產(chǎn)生的連續(xù)測試模式之間的相關(guān)性很低。因此,在自測試期間會增加電路中節(jié)點的翻轉(zhuǎn)活動,導(dǎo)致功耗增大。
2 功耗分析和WSA模型
CMOS電路中功耗的來源主要分為靜態(tài)功耗和動態(tài)功耗兩種。漏電流或從電源供給中持續(xù)流出的其它電流導(dǎo)致靜態(tài)功耗。動態(tài)功耗則是因為短路電流和負載電容的充放電,從而由電路正常工作時的功能跳變所引起的,它包括功能跳變、短路電流、競爭冒險等。對于CMOS工藝來說,目前動態(tài)功耗是電路功耗的主要來源。
對于節(jié)點i上每次開關(guān)上的功耗為:
式中,Si是單周期內(nèi)翻轉(zhuǎn)的次數(shù),F(xiàn)i是節(jié)點i的扇出,C0是最小輸出負載電容,VDD是電源電壓。
從式(1)看出,門級的功耗估計與Si和Fi的乘積和節(jié)點i的翻轉(zhuǎn)次數(shù)有關(guān)。節(jié)點的扇出由電路拓撲決定,而它的翻轉(zhuǎn)次數(shù)由邏輯模擬器來估計。這個乘積即稱為節(jié)點i的權(quán)重翻轉(zhuǎn)活動(Weighted Switching Activity,WSA)。在測試過程中WSA是節(jié)點i功耗Ei的唯一變量,所以WSA可作為該節(jié)點的功耗估計。對于一對連續(xù)的輸入矢量TPk=(Vk-1,Vk),電路總的WSA為:
式中i是電路中所有節(jié)點的個數(shù),S(i,k)是由TPk所激勵節(jié)點i的翻轉(zhuǎn)次數(shù)。
根據(jù)式(2),考慮長度為L的測試矢量TS作為電路的輸入矢量,電路總的WSA為:
根據(jù)以上功率和能量消耗的表達式,再給定一個電路設(shè)計為CMOS的工藝和供給電源,可得以下結(jié)論:
(1)電路中節(jié)點i的跳變數(shù)成為唯一的影響能量、最大功耗和平均功耗的參數(shù)。
(2)測試中時鐘的頻率也影響著平均功耗和最大功耗。
(3)測試長度,即施加在待測電路(CUT)上的測試向量的數(shù)目一只影響總的能量的消耗。
3 LFSR優(yōu)化的低功耗方法
通過對測試過程的功耗分析可知,選擇BIST低功耗的方案時,一方面可以通過減少測試序列長度來實現(xiàn)(但該方法往往以犧牲故障覆蓋率為代價),另一方面降低WSA值也可實現(xiàn)系統(tǒng)功耗的降低。
在BIST結(jié)構(gòu)中,線性反饋移位寄存器(LFSR)由于結(jié)構(gòu)的簡單性、規(guī)則性、非常好的隨機測試矢量生成特性、用來壓縮測試響應(yīng)時的混淆概率非常小等特點,在DFT的掃描環(huán)境中很容易集成,所以當從掃描DFT設(shè)計升級成BIST設(shè)計時,LFSR因其硬件開銷很小而成為BIST中應(yīng)用最廣的矢量生成結(jié)構(gòu)。
基于LFSR優(yōu)化的BIST結(jié)構(gòu)可分為test—per-一scan和test—per—clock兩類結(jié)構(gòu)。test—per—scan技術(shù)引起的面積開銷較小,測試結(jié)構(gòu)簡單,易于擴展:而test—per—clock在一個周期內(nèi)可實現(xiàn)矢量的生成和響應(yīng)壓縮,能夠完成快速的測試。
3.1 基于掃描的test—per—scan方式
3.1.1 基本結(jié)構(gòu)
test—per一scan內(nèi)建自測試的目標是盡可能的降低硬件開銷。這種結(jié)構(gòu)在每個輸入輸出端口處使用LFSR與寄存器的組合來代替LFSR。圖l是test—per-scan內(nèi)建自測試的基本電路結(jié)構(gòu)。在內(nèi)建自測試矢量下,LFSR生成測試矢量并且通過掃描移位寄存器(shift register)將測試矢量移位到待測電路(CUT)的輸入端,同時響應(yīng)被移入LFSR并壓縮。
3.1.2 原理
全掃描或部分掃描設(shè)計中由于移位會產(chǎn)生比較大的功耗。基于掃描的test一per-scan低功耗設(shè)計方法需要修改標準的掃描設(shè)計,降低狀態(tài)轉(zhuǎn)換活動率。沒計修改包括在移位期間用于屏蔽掃描路徑活動的一些門控邏輯,以及對用于抑制隨機模式的附加邏輯進行綜合等。
3.1. 3 部分掃描算法
根據(jù)以上掃描設(shè)計原理,在消除測試序列中的冗余模式之后,采用圖2所示的部分掃描算法對待測電路進行部分掃描設(shè)計。其步驟如下:
①首先刪除所有自反饋時序邏輯對應(yīng)的頂點。
②在數(shù)據(jù)流圖中查找所有的強連通單元(Strongly Connected Components,簡稱SCC)。
③依次刪除SCC所有頂點中最大的頂點。
參考文獻采用上述算法對ISCA89基準電路掃描BIST測試,并采用ATPG工具和仿真工具VCS故障模擬和功能模擬,表1列出測試覆蓋率、平均功耗和峰值功耗數(shù)據(jù)。
由表l數(shù)據(jù)可見,部分掃描對待測電路測試覆蓋率影響非常小(《3.5%),且對電路進行部分掃描設(shè)計后,掃描寄存器數(shù)目大大減少,所以在掃描移位周期需要同時觸發(fā)寄存器的數(shù)目也大大減少,由此引起待測電路內(nèi)部節(jié)點的翻轉(zhuǎn)數(shù)目也大大減少,可達到降低BIST的平均功耗和峰值功耗的目的。
3.2 基于時鐘的test—per-clock方式
3.2.1 基本結(jié)構(gòu)
一個test-per-clock內(nèi)建自測試基本結(jié)構(gòu)如圖3所示。每一個測試時鐘L2SR生成一個測試矢量。多輸人特征寄存器(Multiple-一Input Signature Register,簡稱MISR)壓縮一個響應(yīng)矢量。
3.2.2 原理
在掃描測試中,主要功耗包括邏輯功耗、掃描功耗和時鐘功耗。前面給出的方法主要集中在降低邏輯功耗或掃描功耗,但沒有降低時鐘功耗。基于時鐘的低功耗test—per—clock方式可以同時降低這3種功耗。該方法采用低功耗的test—per-一clock BIST結(jié)構(gòu)。對LFSR進行修改后,用作TPG以生成低功耗的測試矢量。使用這種經(jīng)過修改的時鐘方案會降低被測電路、TPG和饋給TPG的時鐘樹的跳變密度。通過降低被測電路、TPG和時鐘樹的狀態(tài)轉(zhuǎn)換活動率來降低BIST期間的功耗。
由于來源于標準掃描結(jié)構(gòu)的測試模式可直接用于低功耗掃描結(jié)構(gòu),這種方法與采用傳統(tǒng)掃描結(jié)構(gòu)所達到的故障覆蓋率和IC測試時間基本一致。與傳統(tǒng)掃描結(jié)構(gòu)相比,面積開銷很小,在電路性能方面也沒有損失。
3.2.3 低功耗測試矢量生成
對于test—per—clock結(jié)構(gòu)來說,減少測試功耗主要通過優(yōu)化測試矢量來實現(xiàn),而測試矢量生成技術(shù)是指產(chǎn)生確定性測試矢量的技術(shù)。
測試矢量生成方式在生成測試模式時,除了要達到傳統(tǒng)的ATPG目的,還需考慮降低測試期間的功耗。基于ATPG的方法又分為2種:①集成的ATPG優(yōu)化方法,該方法的測試模式在測試生成期間進行低功耗優(yōu)化;②ATPG之后的優(yōu)化方法,該方法的測試模式首先由傳統(tǒng)的ATPG生成,然后再進行功耗優(yōu)化。
(1)與模擬退火算法相結(jié)合測試矢量生成的步驟是:首先根據(jù)模擬退火算法將測試模式分組成若干個有效測試矢量組與無效測試矢量組兩部分;然后根據(jù)算法原理,生成控制LFSR運行的控制碼;在這些控制碼的作用下,LFSR就跳過大量的無效測試矢量,生成由有效測試矢量構(gòu)成的精簡的測試矢量序列。其基本流程如圖4所示。
(2)與進化算法相結(jié)合依據(jù)測試矢量生成技術(shù)原理,采用基于遺傳算法的測試模式生成器,用于計算冗余的測試模式。在冗余測試模式中,一個故障由幾個不同的序列覆蓋。然后使用一個優(yōu)化算法,從前面已計算過的測試序列組合中選擇一個最佳子集,使其峰值功率最小,而不影響故障覆蓋率。參考文獻采用ISCAS’85Bench—mark中的組合電路作為實驗電路,在保持故障覆蓋率不變的情況下,對待測電路的測試功耗a與使用模擬退火算法的BIST結(jié)構(gòu)的測試功耗b相比較,得到的結(jié)果如表2所示。
由表2可知,滿足相同故障覆蓋率時,采用模擬退火算法分組測試矢量后,WSA大幅降低,總的WSA改善率在73.44%~94.96%之間。由于減少測試矢量,測試時間也大為縮短。
4 結(jié)語
采用線性反饋移位寄存器生成測試矢量的BIST結(jié)構(gòu)可分為test—per—scan和test—per—clock兩大類,相應(yīng)的實現(xiàn)低功耗BIST測試方法也分別針對test一per—scan和test—per一clock結(jié)構(gòu)。對tesl—per-scan結(jié)構(gòu)模式,減少測試功耗主要通過優(yōu)化掃描鏈來實現(xiàn);對于test—per-clock結(jié)構(gòu)模式,減少測試功耗主要通過優(yōu)化測試矢量來實現(xiàn)。test—per—scan技術(shù)引起的面積開銷較小,測試結(jié)構(gòu)簡單,易于擴展;而test—per—clock在一個周期內(nèi)可實現(xiàn)矢量的生成和響應(yīng)壓縮,能夠完成快速的測試。當然,隨著測試功耗研究的深入,將會有更好的方法使功耗、故障覆蓋率、系統(tǒng)性能等問題達到最優(yōu)。
責任編輯:gt
評論
查看更多