過去數年,數位電路的測試方法一直隨著科技演進。其中,首次的最大改變是從晶片I/O的功能性測試(以邏輯模擬測試向量為基礎)轉變成以掃描(scan)為基礎的測試方法。當測試的複雜度增加時,以功能性測試法來檢測製程的缺陷(defect)將變得越來越困難(和昂貴)。功能性測試通常具有低的「黏著性測試(stuck-at test)」之覆蓋範圍,並需要大量的人力來開發。需要使用「可測試性設計(Design for Test;DFT)」的方法,才能解決功能性測試的限制問題,譬如:掃描測試和「自動測試樣本產生器(Automatic Test Pattern Generator;ATPG)」──這是針對「黏著性故障(stuck-at fault)」模型。這是一個普遍被接受的觀念:高的黏著性測試之覆蓋範圍是一種確保產品品質的最低要求。必須注意的是,不是所有的公司都同時從功能性測試轉換成以掃描為基礎的ATPG──有些公司具有額外的資源,能夠負擔追加的開銷,仍繼續使用功能性測試法來企求高品質的產品。
除了黏著性測試以外,IDDQ測試(測量一個處於靜態狀態下的裝置之無負載電流量)已經成為一種能確保產品品質的有效方法。大於130 nm的製程,若使用黏著性和IDDQ測試法,通常就足以維持出貨前的產品品質。這是因為過去的製程缺陷,在本質上,大都是屬於靜態的,而靜態的缺陷比較容易以黏著性測試法來發現和解決。此外,它們的無負載洩漏電流是很小的,因此IDDQ可以有效地檢測出許多非靜態的缺陷。
然而,許多公司已經注意到,當尺寸達到130 nm時,上述情況就改變了。在這個尺寸(或更小)中,線路密度、訊號完整性、高頻的需求都使晶片大小逼近於它的極限值。曾經是靜態的缺陷,現在不再是靜態的了;它們已經變成延遲缺陷。在許多案例中,有缺陷的節點雖然可以得到正確的邏輯準位,但是它們的功能性時脈速率會變慢。延遲缺陷的例子包括:電阻短路、電阻斷路和訊號完整性問題。延遲缺陷是比較難被檢測和診斷的,這暴露了傳統測試方法的極限。在130 nm和以下的製程,IDDQ測試法將無法檢測出細小的延遲缺陷,這是因為平均洩電流的增加使得測量的最小單位(resolution)無法再更小。黏著性測試和IDDQ測試仍然可以用來捕抓靜態的和大量的延遲缺陷,但是,它們還需要能有效檢測出延遲缺陷的測試方法來輔助。
因此,半導體業界必須擁有能有效檢測出延遲缺陷的測試方法,這是下一世代的測試方法和標準。本文將此方法定義為奈米測試;並在下面的探討中,就技術和成本的層面,來檢視這個方法。
奈米測試方法
奈米測試方法的基本成份是加入以掃描為基礎的延遲測試,它可以檢測出延遲缺陷。延遲測試也稱作AC測試、動態測試、或全速(at-speed)測試(以工作時脈的速率測試)。有兩種基本的延遲測試法:瞬變故障(transition fault)和路徑延遲(path delay)。瞬變故障法是黏著性故障法的延伸,它會檢查位於每一個邏輯閘的輸入端和輸出端上的「慢上升(slow-to-rise)」和「慢下降(slow-to-fall)」延遲。瞬變故障測試是檢測製程缺陷的主要測試方法,這些缺陷會使電路的傳輸速度變得非常慢──或者在某些情況下,變得非常快──因此,要縮短路徑就成為問題了。路徑延遲通常是用來描述一個設計的速率特性,這是在工作頻率下,或在速度分級(speed-binning)的多重頻率下,測試所選擇的重要路徑。
瞬變故障測試比路徑延遲測試更常被用來檢測製程缺陷的主要原因是:檢測一個設計中的所有可能路徑是不切實際的。瞬變故障模型可以保證每一個邏輯閘的輸入端和輸出端都有被檢測過,它會檢查訊號波形在上升與下降時的瞬間轉換。這個方法可能無法定出它所能檢測到的最小延遲缺陷是多少,但是它提供了一種系統方法,保證能使結構化測試全部完成。(以下若提到延遲測試,這都是指瞬變故障延遲測試,除非另有說明。)
延遲測試通常比黏著性故障測試複雜,因為它需要在目標節點(target node)上建立一個初始值、在那個節點上強制產生瞬間轉換,然後觀察此轉換是否真的有發生。因為每一次測試必須滿足更多的要求,一般而言,延遲測試會比黏著性測試包括更多的測試樣本(test pattern)。若要進行更多的測試,就需要更多的時間來使用測試器(tester),和更多的緩衝記憶體空間來儲存更大的測試樣本。與簡單的靜態測試相比,這表示如果添加(或轉換成)延遲測試,將會增加製造成本。這會增加測試時間和資料量,因此必須將測試資料壓縮,以降低測試成本。如果測試成本無法降低,則延遲測試的成本將會超越因改善產品品質所獲得的利潤。
奈米製程也促進了對自動診斷的需求,以迅速提高良率(time to yield)。例如:若缺陷密度保持不變,當晶片體積縮小時,良率會下降、成本會增加。為了保持穩定,必須降低缺陷密度。所以,必須改善失效分析(failure analysis)。此外,也要改善診斷的方式,不只是要找出比較難查的延遲缺陷,而是所有的缺陷,包含靜態的和動態的,在較新的製程技術中,這些缺陷會表現出更加複雜的行為。傳統的黏著性故障診斷對於尺寸較大的製程技術是有效的,但是,對於小尺寸的製程技術則是無效的。
延遲缺陷的行為
以下舉例說明延遲測試的必要性:Intel的工程師分析了一個輸出節點的行為,此節點在一個邏輯電路中,此電路和一個電橋(resistive bridge)連接,此電橋具有不同的電阻值。此節點的輸出電壓如(圖一)所示,有三種不同的行為會發生,它們是電橋電阻的函數。請注意,在高電阻值時,電路是無故障的(fault free);在低電阻值時,電路會有一個真正的(靜態的)邏輯失效。重要的是,會造成一個延遲缺陷(見附圖一的實心線)的電橋電阻。
檢測延遲缺陷:對時序的衝擊
圖一也呈現出能檢測延遲缺陷的不同測試方法。傳統的黏著性靜態測試配備完整,可以用來處理無故障或有邏輯失效的電路。一個傳統的黏著性測試應該能檢測出一個邏輯失效,但是它可能無法發現時序失效,除非額外的延遲時間是很長的(一個重大的延遲缺陷──在此情況下,延遲時間大約會大於18ns)。為了能檢測出在本質上不是很重大的時序失效,必須使用延遲測試。
不過不是所有的延遲測試都具有相同的效率,有些延遲測試法會自定額定延遲。這些測試法能檢測出部份的延遲缺陷,但是因為它們沒有精確的路徑時序,所以它們可能會遺漏掉許多較小的延遲缺陷。因此必須確保延遲測試是有效的──真的有依照它的覆蓋範圍量測報告進行完整的測試。將延遲測試方法定義為「真正的時間(True-Time)延遲測試」,它在特定的瞬變故障測試之覆蓋範圍內,努力地追求最大的測試成效。
真正的時間延遲測試需要知道佈線後的時序
使用延遲測試成功的三個重要因素是:高的瞬變故障之覆蓋範圍、精簡的測試樣本、和佈線後的時序(post-wiring timing)。瞬變故障測試的覆蓋範圍是和黏著性測試的覆蓋範圍不同的。黏著性測試的效率可以輕易地達到99.5%;而且如果還配合使用良好的「為測試而設計」的技術,其效率還可以更高。因為瞬變故障比靜態故障(如前面所介紹的)還要難檢測,所以延遲測試需要額外的調整參數值;與靜態故障ATPG相比,延遲測試的樣本數目(pattern count)增加很多。
為了使延遲測試的覆蓋範圍能夠變大,使用者必須存取和控制系統時脈。這個要求使得覆蓋範圍與設計的內容非常相關(design dependent),通常覆蓋值是位於60%到90%的範圍。為了達到高的瞬變故障測試之覆蓋範圍,ATPG必須支援數種技術,這包含:「寬面啟動(broadside launch)」、「上次偏移啟動(launch on last shift)」、「多週期路徑(multicycle path)」、「多個時脈域(multiple clock domain)」等等。
瞬變故障的樣本數目可能是黏著性測試的二至五倍。精簡能力和ATPG演算法息息相關,而且不同供應商所提供的精簡能力也不一樣。另一個需要考慮的因素是,瞬變測試處理黏著性故障之成效如何?瞬變測試的黏著性覆蓋範圍會影響到全部的(黏著性+延遲)測試資料量,如果高的黏著性覆蓋範圍需要將額外的靜態測試加入延遲測試中,這將使靜態故障的覆蓋範圍達到最大值。
高的瞬變故障覆蓋範圍不足以確保產品的品質。以時序來了解測試的成效是很重要的。也就是說,測試必須在最嚴厲的可能時間點內,檢查訊號是否存在。
一個延遲測試方法可以使用一個與時序無關的模型,或一個時序導向的(timing-oriented)模型。在一個與時序無關的模型中,ATPG所產生的邏輯閘轉換或路徑轉換,並不需要知道實際電路的延遲時間。當測試向量被輸入至測試器時,瞬變啟動和「採集限制(capture constraint)」必須小心運用。時脈時間可以不斷縮小,直到找到一個良好的「額定的」部份時序,然後稍微放寬,以進行邊際測試;不過,這是一種手動的操作過程,完全依賴測試工程師的經驗和知識。他們依靠某種經驗知道,從部份樣本中,經常可以得到時序,實際上,這就是在執行額定的時序。這也清楚表示,此種在時序上運行的測試方法,如果有使用多週期或非功能性路徑,則它的處理速率會比功能性路徑的速率慢很多。另一個替代方案是,本文所定義的「真正的時間延遲測試」,它是由IBM公司開發出來的,使用了逼真的時序和延遲模型,這些模型是利用合成或時序分析工具推論得到的。這些工具接受的輸入項目有:
- ˙製程技術的電路單元(cell),腳位至腳位(pin-to-pin)延遲模型。
- ˙一個互連的延遲計算器。
- ˙設計的時序限制條件。
- ˙工作條件,譬如:溫度和電壓。
然後,它們可以產生一個邏輯閘層級的延遲估算,這通常是供給邏輯閘層級的延遲模擬使用,它的格式稱為「標準延遲格式(Standard Delay Format;SDF)」。使用一個SDF之後,能夠讓延遲的ATPG選擇最佳的路徑,來傳送一個瞬變情況,並且也能自動調整啟動和採集的限制條件。
當ATPG工具從電路中存取了精準的時序後,它可以產生延遲測試,以測試接腳時序(pin timing),且能夠讓最長的路徑完成(complete)。另一方面,此工具能夠以使用者建議的時序(譬如:功能性時序)運行,它並且知道,當使用那些時序後,某些路徑將無法完成。然後,此工具會知道,從那些路徑中,會存在一個X值;或者,它會避免在那些路徑上發生瞬間轉換。由於許多種設計都有使用DFT技術----它能讓多個內部時脈域被極少數的晶片外部(測試)時脈接腳驅動,因此,單一時脈通常要提供許多種時域,這些時域具有不同的時序要求。如果沒有任何時序資料,測試就必須被計時,這樣才能讓最慢的時域完成。如果有時序資料,最快的時域可以使用它們的時序來測試;同時,最慢的時域可以使用比較寬鬆的時序來測試,這使得每一種時域可以共用一個相同的測試時脈,而且都能以最佳的時序來測試。
資料壓縮
如之前所說的,延遲測試的樣本數目可能是黏著性測試的二至五倍。當樣本數目增加時,為了保存全部的測試集合(test set),測試器會用掉更多的緩衝記憶體空間。而且,在製造時,要花費更長的時間來執行此測試集合。於是就以下列幾種方式,增加了測試成本:
- ˙由於測試時間增加,工作是按比例分配的自動測試設備(ATE)的每一個裝置的平均成本也會增加。
- ˙由於測試器需要更多的緩衝記憶體空間,所以這可能需要更昂貴的ATE;或需要額外的資金,用來增加ATE的緩衝記憶體容量。
- ˙勉強以可用的ATE的緩衝記憶體容量來進行測試,測試的成效可能就會下降──這會導致產品品質的下降,產品品質具有一個與緩衝記憶體容量相關的成本。
為了解決資料量和測試時間的問題,測試工程師和測試架構師已經開發出一些技術,運用晶片內和測試器內的硬體,來壓縮「測試激源(test stimulus)」和響應模式(response pattern),並將它們應用到待測晶片上。
原本為了開發「邏輯內建自我測試(Logic Built-In-Self-Test;LBIST)」的技術,後來用在建立「測試壓縮(test compression)」上。LBIST的假隨機模式是使用一個線性的回饋位移暫存器(Linear Feedback Shift Register;LFSR)產生的,並且同步地應用到待測電路上。待測電路的結果值被另一個LFSR採集,它稱作「多輸入特性記號暫存器(Multiple Input Signature Register;MISR)」,在此暫存器中,測試響應被壓縮成一個「特性記號(signature)」。這個特性記號可以用來判定製造品是處於好的或壞的狀態。一般而言,LBIST測試的覆蓋範圍沒有像決定論式的(deterministic)ATPG測試之覆蓋範圍一樣高,即使LBIST使用了大量的測試點(test point)。
這是因為某些電路的隨機電阻造成的,必須使用整潔的(clean-up)ATPG樣本來橋接(bridge)剩餘的覆蓋間隙,因此推翻了原先在晶片內生成樣本的準則。一個以BIST建立的測試資料壓縮方法是「產品內的(on-product)MISR(OPMISR)」,藉此,標準的ATPG技術可以用來產生測試。測試激源被儲存在ATE中,但測試結果是被一個晶片內的MISR採集。這種方法具有決定論式測試生成的優點,而且,測試樣本的儲存需求低。將測試激源壓縮後,還可以得到更多的壓縮資料,如「產品內的MISR+(OPMISR+)」所展現的功能。在這種情況下,掃描扇出(fan out)被用在電路的輸入端,與原先的測試結果相比,可以降低200倍的測試資料量,和減少130倍的測試時間。
通常ATPG會捨去「壓縮資料的特性記號」──包含未知值,這是因為一個X值無法被測試器測量。對一個待測的零組件而言,是有可能包含了許多個未知來源,使得必需的測試覆蓋範圍無法達到,這是因為樣本的高散落率(fallout rate)造成的。為了解決這個問題,具有特殊用途的通道遮罩邏輯(channel masking logic)可以加到壓縮資料的結構中,藉由序列(sequence)控制,以已知值取代未知值,避免採集到未知值。
在選擇壓縮的解決方案時,下列的要求項目是很重要的:
- ˙對指定的設計,儘可能地達到最大的壓縮效果。
- ˙對實體設計、佈線、面積的衝擊最小。
- ˙能夠處理不明的響應;但可以檢測出未模擬的缺陷之能力,不會因此減損。
- ˙確保此壓縮方案能夠和診斷方法正常運作。
診斷失效
建立一個延遲測試能力,以確保產品品質,並使用資料壓縮方案來降低測試成本,是奈米測試方法的重要成份。然而,除非使用者能夠準時出貨,並能獲得合理的利潤,否則總體而言,這個問題是沒有被解決的。所以,診斷技術就變成奈米測試的重要成份之一,它能自動地和迅速地完成缺陷的識別工作。診斷工具可以在兩個主要模式中使用:
- ˙在產品開發初期,當晶片失效時,診斷可以大幅縮短量產所需要的時間。
- ˙在一個測試器中,當晶片失效,且使用者能夠判定失效的原因時,生產線要能夠被調整,以避免在未來發生缺陷;良率因此提升。
耗費時間去研究晶片失效的原因,會衝擊及時上市和及時獲利的目標。在極端的情況下,一個產品可能永遠都無法上市;或永遠都無法獲取足夠的良率,以產生利潤。產業界迫切需要改善診斷和失效分析的循環流程。花費數週才能找出測試器失效的根本原因,是不尋常的。這不是一種能夠一直維持的情況。分析失效的根本原因所需要的時間,必須從數週降至數日。但是,這是行不通的,除非有精確的、自動化的方法,能夠從測試器失效移動至晶片的實體位置,這個位置是缺陷的實際(或可能)所在。當我們轉換至奈米製程,許多重要缺陷的行為將和黏著性故障的行為不同。如果現在使用者尋找缺陷有困難,未來將會更加困難。
在選擇診斷的解決方案時,精確的診斷預報(callout)、自動執行、高的預報率、高的預報準確度和解析度(resolution),都必須被考慮。此外,解析度必須能支援大範圍的缺陷模擬作業,這樣才能夠診斷延遲缺陷、橋接(bridge)、和其它複雜的失效機制。能夠產生診斷用的測試樣本也是很重要的,它可以協助我們診斷出製程用的測試樣本所無法解決的問題。這對未來的極高密度的設計尤其重要,因為越來越多的失效甚至會造成掃描鏈(scan chain)失效。一個有效的診斷工具必須具有合理的失效診斷能力,甚至當掃描鏈斷裂時,此能力仍能維持----這包括能夠產生額外的測試,以協助找出掃描鏈斷裂的地方。
商業動機
奈米製程的測試問題被定義了,且提出了解決此種挑戰的三個步驟方法之後,現在要轉移注意力去了解奈米測試對商業營運的影響。
成功地解決了三個主要的奈米測試技術之挑戰,能對營運績效帶來直接的影響。這些挑戰是:延遲測試法可以改善出貨前的(outgoing)產品品質;壓縮可以降低測試成本;診斷可以迅速改善良率。我們使用工業界能夠接受的良率方程式、檢測層級、良率知識,來模擬這些挑戰對商業營運的影響。其結果說明了奈米測試的動態變化情形,但無法對任何特定的設計做出實際的成本預測。
測試資料量和測試成本
(圖二)表示當延遲測試加入後,測試資料量和測試時間的變化。第一種行為想要表達的是,如何使20%的缺陷表現的像延遲缺陷一樣。解決方法是加入延遲測試。請注意,當加入延遲測試時,測試資料量和測試成本會大幅增加。為了舒緩這種效應而將測試資料壓縮。在此範例中使用只在輸出端壓縮(OPMISR)和在輸入端/輸出端壓縮(OPMISR+)的模型。值得注意的是,壓縮是非常有效的。藉由OPMISR,可以將測試成本降到和黏著性測試一樣的價位;而OPMISR+更可以將成本大幅地降低。
缺陷等級的下降
添加延遲測試的目的是為了改善產品品質。可以將它模擬成可以降低品質成本的模型;品質成本被定義為:每一個逃逸的缺陷會使得元件成本倍增。一旦使用者採用了延遲測試,能夠逃離測試的延遲缺陷數量將會減少,結果能使品質成本降低。附圖三是加入延遲測試後,「缺陷等級(defect level)」下降的情形。缺陷等級的測量單位是「每百萬個中有多少個缺陷(defects per million;dpm)」,它是用來計算逃離測試的缺陷數量,這些缺陷將會在供應鏈的後續步驟中被發現。因為黏著性測試無法檢測延遲缺陷,所以它的dpm值會很高。加入延遲測試後,產品出貨前的缺陷等級可以降低。就商業績效而言,品質成本可以從延遲缺陷中扣除。
《圖三 模擬結果──加入延遲測試後,缺陷等級會下降。》 |
|
加速型的診斷可以提高良率
為了瞭解診斷對良率管理的幫助,可採用一個指數型的(exponential)良率學習行為。這和其它提升品質的經驗是一致的。此模型有一個良率改善係數和比率。在過去的案例裡,良率學習率是被典型的失效分析循環流程(要耗費數週的時間)限制著。目前的技術已經可對自動的和精確的診斷作業施予加速的學習率,並開發出診斷演算法,比傳統的因果分析法更加精確和有效,可將良率學習率合理地提高三倍。(圖四)表示52週的生產結果。請注意,具備自動診斷功能的良率曲線會有一個急劇上升的變化,並能獲得較高的平均良率(實心線)。
淨節約的預估
有可能從採用的奈米測試方法中,預估「淨節約金額(net saving)」。(表二)表示成本節約的情形,是以每個元件的成本(cost-per-device)為計量單位。首先要建立一個基準,然後從此基準來估算每個元件的成本。表二中的良率欄位是表示額定良率,它是從額定的缺陷密度預測出來的平均良率。額定良率(nominal yield) 決定每晶圓的晶粒良率;並根據晶圓的測試成本,來決定元件的成本。在此範例中,額定良率是72.3%,而額定的每個元件的成本是$17.58。
初始良率(initial yield)是開始製造時的良率,這是在進行任何良率學習行為之前的狀態;有時,初始良率會比額定良率低。在此範例中,初始良率是比較小的,而且在良率沒有任何改善之下,將會使每個元件的成本達到$18.98。「基本改善的良率(base improved yield)」是使用標準的良率學習方法,得到的平均良率。我們使用「基本改善的良率」為基準,來估算節約的成本。在這個案例中,採用標準的良率學習法後,可以得到72.4%的平均良率,而每個元件的平均成本是17.56%。
當基準建立後,就能從奈米測試方法中建立能預估節約成效的模型。延遲測試的加入能夠使淨節約金額佔品質成本的1.31%。請注意,由於測試資料量的增加而造成測試成本的增加,這個增量是等於此淨節約的金額。
然後將測試資料壓縮。延遲測試和將測試資料壓縮,可以將淨節約金額增加到5.54%。這是因為品質成本和測試成本現在都被節約了。最後,加入自動的和精確的診斷效應,以及加速型的良率學習曲線。由於有比較快速的良率學習效果,平均良率可以增加到75.7%。這使得淨節約總額,以每個元件的平均成本計算,可達9.89%。
結語
如本文所介紹的,奈米測試方法是延遲測試、測試資料的壓縮、自動的精確診斷之組合。使用奈米科技設計晶片的公司,正面臨著許多種測試挑戰。奈米測試方法能夠協助這類公司克服這些挑戰,而且具有良好的經濟效益──在品質成本、測試成本、及時上市、良率管理上能夠獲得優異的成效。
|
|
為成功測試及驗證系統單晶片(SoC)設計軟硬體內容,須採用硬體的周期精確(cycle-accurate)驗證模型做為基準。相關介紹請見「SoC測試需要周期精確模型」一文。 |
|
隨著IC產業朝向0.13微米以下線寬與千萬閘級以上的SoC趨勢發展,EDA工具的配合對於IC設計業者來說重要性日益顯著;本文將位讀者剖析目前IC設計工具的技術趨勢與挑戰。你可在「IC設計工具技術趨勢與探索」一文中得到進一步的介紹。 |
|
借助於EDA技術,可以實現可測試性設計自動化,提高電路開發工作效率,並獲得高品質的測試向量,從而提高測試品質、低測試成本。在「可測試性設計與EDA技術」一文為你做了相關的評析。 |
|
|
|