常用的可測(cè)性設(shè)計(jì)方法包括基于掃描鏈(scan chain)的測(cè)試方法和內(nèi)建自測(cè)試電路。
掃描鏈(SC)設(shè)計(jì)
時(shí)序電路的直接測(cè)試往往是難以實(shí)現(xiàn)的,掃描設(shè)計(jì)通常能很好的解決之一問(wèn)題。
掃描設(shè)計(jì)的主要思想就是把難以進(jìn)行測(cè)試的電路轉(zhuǎn)化為可測(cè)的電路。要實(shí)現(xiàn)這一目標(biāo),需要把電路中原有的一般觸發(fā)器用可觀測(cè)可控制的掃描觸發(fā)器進(jìn)行代替,這些掃描觸發(fā)器串接到一起形成掃描鏈(Scan Chain,SC),那么,在測(cè)試模式下,就可以通過(guò)掃描鏈來(lái)串行移入移出測(cè)試數(shù)據(jù),實(shí)現(xiàn)對(duì)整個(gè)電路的控制和觀測(cè)。單個(gè)掃描觸發(fā)器代替一般觸發(fā)器的例子如圖:
從上圖可以看到,掃描觸發(fā)器在原始觸發(fā)器的基礎(chǔ)上在數(shù)據(jù)輸入端D 增加了一個(gè)多路選擇器,用以實(shí)現(xiàn)對(duì)輸入數(shù)據(jù)的選擇,其中Scan in 是掃描數(shù)據(jù)輸入端口,Scan enable 是輸入選擇控制端,Scan out 復(fù)用原始輸出端Q。常見(jiàn)的掃描觸發(fā)器的工作模式有正常工作模式和掃描移位模式兩種:
(1) 正常工作模式:Scan enable 為0 時(shí),此時(shí)為正常工作模式,D 輸入端選通,Q 作為輸出端,數(shù)據(jù)從D 輸入,從Q 輸出;
(2) 掃描移位模式:Scan enable 為1 時(shí),此時(shí)為掃描移位模式,Scan in輸入端選通,Scan out 作為掃描輸出,測(cè)試數(shù)據(jù)由Scan in 輸入,由Scan out 輸出。
將掃描觸發(fā)器單元連接在一起,就構(gòu)成了掃描設(shè)計(jì)的基本結(jié)構(gòu)。根據(jù)是否所有的寄存器都是掃描單元并已連接到掃描鏈,可以將掃描設(shè)計(jì)分為全掃描和部分掃描。通常為了提高電路的性能,我們往往排除那些不符合可測(cè)性設(shè)計(jì)規(guī)則的寄存器,這樣設(shè)計(jì)得到的電路一般介于全掃描和部分掃描之間。
對(duì)加入掃描設(shè)計(jì)后的電路進(jìn)行測(cè)試時(shí),我們首先設(shè)置模式選擇端sc_en 為1,電路處于掃描移位模式,向掃描輸入端口sc_in 打入測(cè)試向量,比如101,通過(guò)掃描鏈傳至每個(gè)掃描寄存器;然后我們?cè)O(shè)置sc_en 端口為0,電路進(jìn)入正常工作模式,并行向三個(gè)原始輸入端口A,B,C 打入激勵(lì);從輸出端口Q 捕獲響應(yīng)數(shù)據(jù),分析響應(yīng)數(shù)據(jù)就可以達(dá)到測(cè)試目的。