Global Sources
電子工程專輯
 
電子工程專輯 > 測試與測量
 
 
測試與測量  

改善ATPG性能的正確衡量方法

上網時間: 2007年03月15日     打印版  Bookmark and Share  字型大小:  

關鍵字:ATPG  自動測試圖樣產生  IF  改善因子  缺陷覆蓋率 

積體電路測試的目的是希望在一批元件中找出有缺陷的元件,將DPPM(每百萬元件中的缺陷元件數量)降低至100以下。要想達到如此低的缺陷率,必須產生對元件的各種可能缺陷具有高覆蓋率的測試圖樣。而透過修改自動測試圖樣產生(ATPG)演算法,將可能在合理的測試圖樣數量下達到較高的缺陷覆蓋率。正如同其他多種自動化應用,可透過基準測試仔細分析ATPG的結果,而且可透過改良工具以實現更有效的自動化IC測試。

雖然ATPG似乎是一種應在設計流程末期才被執行的程式,但事實上,在整個設計實現階段中,它會以試驗模式執行許多次。在設計過程中執行ATPG的目的是希望盡早確定程式所期望的測試覆蓋面能否真正達到,並為設計驗證產生樣本圖樣。目標是糾正缺陷模型中的不足,以便在設計週期的末端需要時,能產生最緊密,覆蓋面最大的測試圖樣。

但若ATPG的執行時間過長,就不可能在設計中有效執行多次。於是,ATPG的執行時(run-time)性能特性及其改良就成為廣受關注的問題。事實證明,ATPG執行時性能與缺陷效率(fault efficiency)和產生的測試圖樣數目密切相關,而執行時性能是由產生結果所需的總CPU時間所呈展現。缺陷效率參數反映了ATPG已成功解決的缺陷佔總缺陷的百分比,而測試圖樣個數則代表ATPG演算法為達到缺陷覆蓋率而產生的測試個數。當然,大家都希望執行時間越短越好,缺陷覆蓋率越高越好,測試圖樣個數越少越好,但演算法必須在這三個因素間進行一系列折衷。例如,我們實際上可透過犧牲缺陷覆蓋率來縮短CPU執行時間和減少測試圖樣個數。類似的,也能透過採用複雜的緊密方案來減少測試圖樣個數,這是以犧牲CPU執行時間為代價的。

因此,在執行完全不同的工具或不同工具的不同版本時,很難進行切實準確的ATPG性能分析,確定執行時間、缺陷效率和測試圖樣個數。只有當這三個因素中有兩個的值相同時,才可能進行比較。但這種情況幾乎不可能產生。因此,本文將討論在幾次不同的執行過程後,如何比較ATPG缺陷效率、執行時間和測試圖樣個數這三項因素,達到對不同ATPG工具或同一工具之不同版本進行比較的目的。

ATPG數值間的關係

當兩次ATPG執行的執行時間相差不超過某個特定百分比時,一種比較ATPG性能的簡單方法就是比較執行時間與缺陷覆蓋率的關係。當兩次ATPG執行的測試圖樣個數彼此相差在合理範圍內時,這種方法較有用。但事實往往並非如此。對大多數適用於比較的ATPG執行而言,我們都不能做此假設,因此需要一種方法來平衡不同ATPG執行間的性能度量標準。

為此,我們設計了一種平衡了缺陷覆蓋率和測試圖樣個數差異的衡量標準。圖1提供了在一次執行範例後統計得到的ATPG執行時間、缺陷覆蓋率和測試圖樣個數。

從圖1中可看出,這兩個曲線在執行時間的90%範圍內線性度都非常高。缺陷覆蓋率在初始緩升之後,實際上就是一條直線,但達到最後10%覆蓋率所佔用的時間卻佔整個執行時間的90%。與此類似,測試圖樣的產生個數在執行時間的90%內也都是線性成長的,只在曲線末端附近呈現不規則性。因此我們可以認為這種設計具備線性特性。但在不同設計之間,曲線的斜率卻有差別。


圖1:缺陷效率和測試圖樣個數與執行時間的關係。

改善因子

善加利用這種線性特性對我們是有好處的。假設我們執行的是同一工8I具的兩個不同版本:執行舊版本得到的執行時間為t,產生p個測試圖樣,達到的缺陷覆蓋率為f;執行同樣設置的新版本得到的執行時間為T,產生P個測試圖樣,達到的缺陷覆蓋率為F。假設這兩次執行得到的缺陷覆蓋率和產生的測試圖樣個數相同,那麼我們就可以利用一種稱為改善因子(IF)的比值來描述ATPG性能的改善情況。如果新版本的工具性能更佳,那麼IF就是舊版本執行時間與新版本執行時間的比:


然而,若兩次執行所達到的缺陷覆蓋率有差別,那麼在計算改善因子時就必須考量達到二者相差之缺陷覆蓋率所需耗費的時間。由於缺陷覆蓋率與執行時間之間存在線性關係,而且據觀察,90%的執行時間被用來達到最後10%的缺陷覆蓋率,因此,我們可將兩次執行在缺陷覆蓋率方面的差異轉換為一個時間‘係數(credit)’。圖2提供了ATPG執行時間線及其在線性區(即缺陷覆蓋率f為90%~100%,執行時間t為10%~90%)內的等式。


圖2:基於缺陷覆蓋率和執行時間之間的線性關係,缺陷覆蓋率間的區別可轉化成一個時間係數。

可根據下式確定執行時間的偏移量,即達到缺陷覆蓋率F所額外耗費的ATPG執行時間:


此時,改善因子中就包含一個已恰當考慮了缺陷覆蓋率差異的時間係數:


兩次執行間測試圖樣個數的差異也可以用類似方式轉換到執行時間上。然而,在平衡缺陷覆蓋率時,檢測額外缺陷所需的時間已經考慮了一次,如果此時只是簡單地再考慮一次測試圖樣個數差異導致的時間係數,那麼那些為檢測額外缺陷而產生的測試圖樣就考慮了兩次。因此,我們計算了檢測額外缺陷所需的測試圖樣個數,然後在總測試圖樣中減去這些測試圖樣,於是得到了以下改善因子:


改善因子的平衡結果

為了觀察改善因子等式的校正情況,我們首先在兩種不同的向量精簡(vector compaction)條件下執行同一版本的ATPG工具,結果如下:

1. 當向量精簡功能打開時,在t=147個CPU秒時間內,為達到f=97.11%的缺陷覆蓋率,產生了p=422個測試圖樣;

2. 當向量精簡功能關閉時,在T=134個CPU秒時間內,為達到F=96.96%的缺陷覆蓋率,產生了P=444個測試圖樣。

這樣算來,在第二個條件下的執行時間比第一個條件下快了147/134=1.1倍。但根據IF等式,等效改善因子的計算結果為1.0,事實也確實如此,因為這兩次執行採用的都是同樣的ATPG程式,只是參數有所變更。

然後,我們再利改善因子公式4來比較同一ATPG工具之兩種不同版本間的性能改善情況:版本1是舊版本,版本2是新版本。下表是根據採集到的數據和不同IF標準繪出的IF圖:


表1:當考慮到缺陷覆蓋率和圖樣個數的變化因素時,IF衡量標準顯示了性能的重大提升。

設計A和設計B採用新版本工具所花費的ATPG CPU執行時間比用舊版本有所所改善(設計A的改善為1.62倍,設計B為1.07倍)。但正如表中所顯示的,這種簡單的執行時間比較並未充分展現真正的性能改善情況。當我們考量到缺陷覆蓋率和測試圖樣個數的變化後,新的IF標準顯示性能提升程度要大得多:設計A改善了1.83倍,而設計B改善了2.05倍。

本文小結

本文中提出了在評估不同工具或同一工具不同版本的性能差異時,必須適當考慮缺陷效率、執行時間和測試圖樣個數等三種基本ATPG性能特徵。我們還研究了一個新公式,該公式將不同次ATPG執行間的缺陷效率和測試圖樣個數的差異進行關聯,並對其進行一致和可靠的比較,評估ATPG執行時間的改善情況。

Synopsys利用這一改善因子的各種形式對其ATPG產品TetraMAX不同版本間的性能改善進行了連續評估。如圖3所示,從TetraMAX 2004.12版到2006.06版,固定(stuck-at)和躍遷延遲(transition-delay)測試圖樣產生的執行時間平均都提升了12倍。可以說,若非有一種穩定可靠的方法測量ATPG性能的真正改善情況,開發人員在評估每個中間版本的程式碼效率時可能會遭遇更多困難。


圖3:使用IF,TetraMAX的2004.12和2006.06版本的固定和躍遷延遲平均實現了12倍的執行時速度提升。

作者:Rohit Kapur

科學家

Chris Allsup

自動測試產品行銷經理

Synopsys公司





投票數:   加入我的最愛
我來評論 - 改善ATPG性能的正確衡量方法
評論:  
*  您還能輸入[0]個字
*驗證碼:
 
論壇熱門主題 熱門下載
 •   將邁入40歲的你...存款多少了  •  深入電容觸控技術就從這個問題開始
 •  我有一個數位電源的專利...  •  磷酸鋰鐵電池一問
 •   關於設備商公司的工程師(廠商)薪資前景  •  計算諧振轉換器的同步整流MOSFET功耗損失
 •   Touch sensor & MEMS controller  •  針對智慧電表PLC通訊應用的線路驅動器
 •   下週 深圳 llC 2012 關於PCB免費工具的研討會  •  邏輯閘的應用


EE人生人氣排行
 
返回頁首