梁曉琳
(湖南科技學(xué)院 電子工程系,湖南 永州 425100)
隨著電子系統(tǒng)中時(shí)鐘頻率的迅速提高以及信號(hào)邊沿不斷變陡,使得電子系統(tǒng)朝著大規(guī)模、小體積、高速度的方向快速發(fā)展,而且發(fā)展速度越來越快。而在性能不斷攀升的背后,信號(hào)完整性問題已經(jīng)成為電子設(shè)計(jì)的一個(gè)瓶頸。信號(hào)完整性問題日益嚴(yán)重,尤其串?dāng)_問題對(duì)系統(tǒng)電氣性能的影響也越來越重要。串?dāng)_噪聲的時(shí)延測(cè)試已經(jīng)成為一個(gè)不可忽視的問題,尤其是臨界通路上的線間串?dāng)_問題,將嚴(yán)重降低芯片的性能。
在布局布線時(shí)注意采用抑制串?dāng)_噪聲產(chǎn)生的方法,如差分技術(shù)、job走線等等。但不能完全避免串?dāng)_噪聲的產(chǎn)生,必須有一種串?dāng)_故障的激勵(lì)模型能夠把潛在的串?dāng)_故障激勵(lì)并檢測(cè)出來,使得芯片制造成本降低,研發(fā)周期縮短。
串?dāng)_是指信號(hào)在傳輸線上傳播時(shí),因電磁耦合對(duì)毗鄰的傳輸線產(chǎn)生不期望的電壓噪聲干擾。過大的串?dāng)_可能引起電路的誤觸發(fā),導(dǎo)致系統(tǒng)無法正常工作。串?dāng)_由電磁耦合形成的,耦合分為電場(chǎng)耦合和磁場(chǎng)耦合兩種。串?dāng)_時(shí)延主要是耦合電容的影響[1]。當(dāng)攻擊線和受害線同時(shí)或者幾乎同時(shí)跳變時(shí),容易引起串?dāng)_時(shí)延。時(shí)延故障的存在將導(dǎo)致在某些輸入下,電路的一個(gè)或多個(gè)原始輸出在給定的時(shí)間限制內(nèi)得不到正確的響應(yīng)。如果攻擊線和受害線向相反的方向跳變,會(huì)使受害線的跳變的時(shí)間增加,形成時(shí)延減速。相反,如果受害線和攻擊線向相同的方向跳變,跳變的時(shí)間會(huì)減少,則形成時(shí)延加速。圖1列出了各種情況下串?dāng)_引起時(shí)延噪聲的激勵(lì)檢測(cè)模型[2]。
圖 1 串?dāng)_噪聲引起時(shí)延模型
FAN算法[3,4,5]是H.FujiWara和T.Shimono在1983年提出的,是一種基于電路結(jié)構(gòu)的測(cè)試生成算法,是對(duì)PODEM算法的改進(jìn)。與PODEM相比,它成功地減少了反向追蹤中的回溯次數(shù),加快了回推過程,從而提高了速度。
2.1.ODEM算法
PODEM算法[3,4,5]首先也是激活故障,再將故障激活條件反向跟蹤,待給滿足激活條件的原始輸入賦值以后,再進(jìn)行正向驅(qū)趕,每驅(qū)趕一個(gè)門,就對(duì)滿足驅(qū)趕條件和賦值逐個(gè)反向追蹤,直到驅(qū)趕到原始輸出為止。
其基本思想如下:
(1)假定所有原始輸入都沒有賦值,給其中滿足激活條件的一個(gè)輸入賦邏輯值0或1,并把最初賦值為0或1的原始輸入記入判決樹中。如果最初賦值在測(cè)試過程中被拒絕,則對(duì)其賦另外一個(gè)值,但此時(shí)要對(duì)該原始輸入設(shè)置標(biāo)記b。如果一個(gè)原始輸入的第二次賦值又被拒絕,則從判決樹彈出該輸入,并令其為x。
(2) 對(duì)當(dāng)前的原始輸入進(jìn)行五值模擬,看是否把故障敏化到原始輸出,若是,則停止。
(3) 將剩余的未賦值的輸入賦以0或1,檢查是否可能構(gòu)成一個(gè)測(cè)試。若有可能,則到步驟(1)繼續(xù)執(zhí)行。
(4)尋找是否還有未檢查過的輸入組合。若有,則轉(zhuǎn)到(1)繼續(xù)執(zhí)行;否則該故障不可測(cè)。
2.2.AN算法
FAN算法與PODEM算法的基本思想不同主要體現(xiàn)如下方面:
(1)D驅(qū)趕與唯一敏化,F(xiàn)AN算法在對(duì)故障門賦值(故障激活)之后,如果 D邊界由多個(gè)門構(gòu)成時(shí),則選離PO最近的門傳播 D/D,并且傳播一個(gè)門之后即對(duì)敏化條件反向回推,只回推到扇出線和端線即進(jìn)行蘊(yùn)含,并且 FAN優(yōu)先進(jìn)行唯一敏化。
(2)隱含操作,F(xiàn)AN算法每當(dāng)給扇出線和端線定值之后,均需執(zhí)行正反向隱含操作,以給網(wǎng)絡(luò)中更多的引線定值。隱含可能使D邊界消失,這說明在此之前所賦值的引線值,即扇出線和端線值已隱藏著矛盾,需要改變賦值組合。這種做法可縮短回溯過程。
(3)反向追蹤, FAN算法一次對(duì)一個(gè)初始目標(biāo)集進(jìn)行反向追蹤,亦稱多重回推?;赝浦胁捎脵M向優(yōu)先策略,即一個(gè)目標(biāo)一次只回推一個(gè)門?;赝频慕K結(jié)目標(biāo)是扇出線和端線。因此,故障門的賦值,一個(gè)門的敏化條件,敏化通路上的全部唯一敏化條件和 D/D傳到 PO之后網(wǎng)絡(luò)中那些未經(jīng)驗(yàn)證的線值等等,都可成為FAN算法回推的初始目標(biāo)集。
(4)回溯,當(dāng)隱含結(jié)果出現(xiàn)D邊界消失的情況時(shí),F(xiàn)AN算法只需對(duì)判定表中扇出線和端線的賦值組合進(jìn)行重試。
FAN算法采用五值{0,1,X,D,D}描述電路中每個(gè)結(jié)點(diǎn)的取值。故障初始 D矢量[6]描述了故障點(diǎn)的故障表現(xiàn),由故障點(diǎn)的故障值與測(cè)試所加正常值所產(chǎn)生的D矢量。初始D矢量中的D在無故障時(shí)取1值,有故障時(shí)取0值;D則反之,在無故障時(shí)取0值,有故障時(shí)取1值。X表示可能為{0,1,D,}中任意的一個(gè)。表1為五值邏輯與運(yùn)算。
表1.值邏輯運(yùn)算與運(yùn)算
但是時(shí)延故障的測(cè)試向量一般采用雙向量模式
根據(jù)串?dāng)_時(shí)延噪聲的激勵(lì)檢測(cè)模型的特點(diǎn),一個(gè)七值表{0,1,x,p0,p1,g0,g1}[7]被使用,代替五值表 {0,1,D,,X},如表2.
表2.值表
在表3中是AND操作,可以推導(dǎo)出NAND、OR、XOR和NOT等操作。
表3.ND操作
另外,主要輸入端的值僅僅從{0,1,P0,P1}中分配。
因此對(duì)于電路中的邊界線、扇出線和端線等等都按照七值表的值進(jìn)行分配。但是,在一定意義上,與傳統(tǒng)的 FAN算法相似。信號(hào)值被明確地分配在輸入端和其它的值通過蘊(yùn)含被分配。并且利用FAN算法的多路回退和回溯等主要特色,提高了測(cè)試生成算法的效率。
在PentiumⅣ2. 5GHz的PC機(jī)上,對(duì)標(biāo)準(zhǔn)電路ISCAS’85進(jìn)行驗(yàn)證。用verilog源代碼描述的標(biāo)準(zhǔn)電路使用synopsys軟件在0.18um工藝庫下綜合,獲取通路時(shí)延信息。然后建立時(shí)延故障目標(biāo)集,并且采用數(shù)組的形式根據(jù)引起延時(shí)嚴(yán)重性至上而下的排列,利用FAN算法完成了對(duì)標(biāo)準(zhǔn)電路時(shí)延故障的測(cè)試矢量生成。
[1]Satyendra R. Crosstalk delay analysis in very deep sub-micron VLSI circuits[D].USA: Southern Mehodist University, 2004. 7-9.
[2]Ba X. L. Modeling and testing for signal integrity in nanometer system-on-chips[D].USA: San Diego State University, 2003.
[3]雷紹充,邵志標(biāo),梁峰.VLSI測(cè)試方法學(xué)和可測(cè)性設(shè)計(jì)[M].北京:電子工業(yè)出版社,2004.
[4]時(shí)萬春.現(xiàn)代集成電路測(cè)試技術(shù)[M].北京:化學(xué)工業(yè)出版社,2006.
[5]曾芷德編.數(shù)字系統(tǒng)測(cè)試與可測(cè)性[M].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué)出版社,1992.
[6]陳光衤禹,張世箕.數(shù)字系統(tǒng)的故障診斷及可測(cè)試性[M].成都:電子科技大學(xué)出版社,2001.
[7] Arunachalam R, Blanton R D, Pileggi L T. False coupling interactions in static timing analysis[C]. Asia and South Pacific: Design Automation Conference, 2001.