基于掃描的電路設(shè)計
多輸入特征寄存器(Multiple Input Signature Reg—ister,MISR)是線性反饋移位寄存器的一種。如圖3所示,將待測電路的輸出部分加入線性反饋移位寄存器里,就成為一個多輸入特征寄存器。
多輸入特征寄存器最主要的特性是它的狀態(tài)。即其寄存器的值,不僅與現(xiàn)在的狀態(tài)有關(guān),還與當時的輸入值有關(guān),可以表示為:Next state=MISR(Cur—renLstate,Input),而其中MISR(……)可以代表特征式不同的多輸入特征寄存器。
3 基于掃描的測試架構(gòu)的改進
為了減少基于掃描的電路設(shè)計的測試時間,就必須深入了解它的電路設(shè)計,了解為何其會消耗那么多的測試時間,然后來改進測試架構(gòu)。
3.1 用向量壓縮來減少測試時間
在測試過程中,我們有時可以發(fā)現(xiàn),我們將要傳入掃描鏈的測試向量,已經(jīng)部分地包含在已經(jīng)傳入的測試向量序列中了,如圖4所示。V1向量的后半部分剛好等于V2向量的前半部分“1010”,如果在傳輸向量的時候,先傳輸V1再傳輸V2,那么我們就只需要將V2的后半段向量信息傳入掃描鏈就可以讓V2原本的信息在掃描鏈中完整地呈現(xiàn),如圖中V3所示。很明顯,我們原來要輸入的測試向量的長度為16位,壓縮后只有12位,節(jié)省了V2的前半部分傳入掃描鏈的時間,從而減少了測試的時間,而且測試信息也沒有減少,不會影響故障覆蓋率。
3.2 用Test—Per-Clock來縮短測試時間
我們對造成測試時間不夠理想的原因進行分析:
傳統(tǒng)的基于掃描的測試電路是采取Test—Per—Scan的方式來進行測試的,也就是說要先將測試向量掃描到電路內(nèi)的由掃描寄存器所組成的掃描鏈內(nèi)。然后才可以完成一次測試;將測試向量掃描到待測電路這個步驟是一位一位地進行的,所以如果一個電路需要長度較大的測試的向量時,那么在這整個測試過程里。將會花很多的時間在將測試向量輸入到掃描鏈的這個步驟上,從而增加了測試時間。這個結(jié)構(gòu)的測試向量的產(chǎn)生是利用LFSR產(chǎn)生出的偽隨機向量,并將其送入電路做測試。用LFSR產(chǎn)生測試向量會產(chǎn)生出許多沒有作用的測試向量,而這些沒有作用的測試向量又會產(chǎn)生大量多余的時間將其送入掃描鏈中,造成測試時間更嚴重的浪費。如果采用Test—Per—Clock的方式做測試,在掃描鏈里原本的測試向量,在用一個時鐘的時間移進來一位之后,掃描鏈所含的值即是測試向量,對待測電路而言,其實都是一個新的測試向量,而且也具有偽隨機向量的特性,如果此測試向量是有效的,我們的測試時間就只用了一個時鐘的時間,而如果此測試向量無效,原本測試到?jīng)]有作用的測試向量時所需的付出的時間代價,由于用了新的測試向量填滿整個掃描鏈所需的時間,減少到只需一個時鐘移進一位的時間。
如圖5所示,每個時鐘周期。Slot會往左移動一位,即在Slot內(nèi)產(chǎn)生一個新的測試向量,而Slot大小可以看成掃描鏈的大小。
不過,由于每個時鐘都要作測試,所以每個時鐘在測試后都會產(chǎn)生新的測試結(jié)果。傳統(tǒng)的基于掃描的測試環(huán)境里,電路輸出結(jié)果傳送出來的同時也將新的測試傳進掃描鏈里。
如果輸出的向量只有一位就不會有這樣的問題。
因為我們現(xiàn)在要產(chǎn)生一個新的測試向量所需要的時間只有一個時鐘周期,所以時問剛剛好。但是一般而言,待測電路的輸出向量都會超過一位。所以我們在觀察電路輸出結(jié)果這個步驟上就會有問題。為了解決這個問題,需要對傳統(tǒng)的基于掃描的測試電路做些修改。在待測電路的輸出部分,可以用MISR來取代原來的掃描鏈電路,也就是將輸出送到MISR做特征分析,如圖6所示。
但是由于電路越來越復(fù)雜,電路的主要輸入與輸出的個數(shù)就會很多,如果對這樣的待測電路加測試電路,將會出現(xiàn)外加電路面積過大的問題。所以我們針對MISR的部分提出一個方法,使得因測試而增加得MISR可以盡量地縮小。
縮小MISR的大小最直接的想法是將主要輸出經(jīng)組合電路壓縮變小,但是這樣會使錯誤覆蓋率降低,使測試向量變多,這些問題在文獻中談到了。造成錯誤覆蓋率降低的原因是如果我們將有共同輸入向量的兩個主要輸出通過組合電路合并的話。將可能會造成原本可以測試到的錯誤,在合并后就測試不到了,所以造成了錯誤覆蓋率的降低。
為了避免這個情況的發(fā)生,我們在向量壓縮的過程中。只有將沒有共同輸入向量的主要輸出合并在一起,就不會有問題出現(xiàn)了。如圖6所示,兩個不同的待測電路的主要輸出經(jīng)過合并以后輸出到MISR,這樣用一個與門代替了一個寄存器以便減少面積,而錯誤覆蓋率則因為兩兩合并的主要輸出端都沒有相同的主要輸出資料,所以就沒有錯誤覆蓋率降低的問題存在,即原來可以被偵測到的錯誤,在經(jīng)過主要輸出端合并之后仍然可以被偵測到。
4 結(jié)論
經(jīng)過改進后的基于掃描的測試架構(gòu),用向量壓縮來減少測試時間,并且將Test—Per-Scan的測試方式改成了Test—Per-Clock的測試方式,加快了測試的速度。
評論