晶片錯誤型別以及解決方案(一)

五、半導體晶片的defects、Faults

晶片在製造過程中,會出現很多種不同型別的defects,比如柵氧層針孔、擴散工藝造成的各種橋接、各種預期外的高阻態、寄生電容電阻造成的延遲等等,如下面圖(1)所示,大概展示了各種基本的defects。

晶片錯誤型別以及解決方案(一)

圖(1)

這些defects單獨、或者組合一起,造成了電路的表現不符預期,這就是造成了Faults。而且各種Faults的表現也是不一樣的;

永久的Faults,就是徹底的壞品,各種不同的條件下都會表現出來,易於測試發現。

間或的Faults,時有發生的不符合預期,不是總能發現,需要一定的外部條件刺激。

偶然的Faults,只是偶然的,在特定的外部硬體或者工作模式條件下才表現出來。

可靠性問題的Faults,這種一般不會表現出來,只會在一些極端條件才會表現出來,比如高低溫或者偏壓情況下。

為了更有效地檢測出各種faults、避免浪費更多晶片的資源、節省費用,業界定義了很多種Faults Model,並提供了各種測試方法論。

Stuck At Faults

工藝製造過程中造成的硬體defects,使得某個節點Stuck At 0或者Stuck At 1, 如下面圖(2)所示的一個或非門:輸入節點x1發生了Stuck At 0的defect; x1和x2輸入了00時候,Q1和Q2斷開,Q3和Q4導通, z輸出為H,正確;x1和x2輸入了01時候,Q1和Q3斷開,Q2和Q4導通, z輸出為L,正確;x1和x2輸入了10時候,此時x1被Stuck At 0了,等同於輸入00,結果還是Q1和Q2斷開,Q3和Q4導通,z輸出為H,錯誤;至此,透過輸入00,01,10就發現了這個defect。這種順序輸入00,01,10,而比較z輸出的結果與預期的值進行判斷的方法,就是所謂的Function測試。

晶片錯誤型別以及解決方案(一)

圖(2)

那對於一個電路,需要生成多少pattern,能達到多少的測試覆蓋率呢?下面圖(3)就以一個與門為例,說一下生產測試向量及計算測試覆蓋率的基本理念。

晶片錯誤型別以及解決方案(一)

圖(3)

如上面圖示,一個與門,有三個節點a、b、c, 每個節點都有兩種fault的情況(Stuck At 0或者1),那麼一共就有6種stuck-at faults情況:a0,a1,b0,b1,c0,c1。

那麼如上面圖中列出的,需要輸入(1,0),(0,1),(1,1)可以完全測試出所有的6種可能的Stuck-at Faults的情況,測試覆蓋率為:可以發現的faults/所有可能的Faults,上面的輸入的測試覆蓋率為100%。

Stuck Open(off)/Short(on) Faults

製造過程種造成的電晶體的defects,使得某個電晶體常開或者常閉了,如下面圖(4)所示的時一個電晶體發生了Stuck Open(off)的錯誤了。

晶片錯誤型別以及解決方案(一)

圖(4)

如上圖,這種Stuck open可以用兩組Stuck At的向量進行測試,AB輸入從10變換到00,可以檢測出這種Stuck Open的fault,也就是說大部分的Stuck Open/Short的faults都是可以透過Stuck At model的測試向量覆蓋的。

這種透過向量(function)的方式來測試Stuck Open/short,可能需要非常多的測試圖形,需要的測試時間和成本都很多。還有一種測量電流的方式,也可以有效的測試一些這種Stuck open/short的faults,但是會節省很多測試時間和測試成本。

如下面圖(5)上半部分所示,右邊的那個P溝道MOS管發生了Stuck short(on)的faults,圖的下半部分展示了輸入AB的四種不同的情況,當AB輸入為00時,看起來這個電晶體表現的正常;但是當AB輸入為11時,地和電源間存在一個直接導通的電路,輸出端Z的狀態是異常的。

晶片錯誤型別以及解決方案(一)

圖(5)

此時VDD上的漏電比較大,也可以透過測量VDD上面的電流來判斷正誤,即IDDQ的測試方法,後面會詳細的介紹這種方法。

TAG: Stuckfaults測試輸入defects