3C科技 娛樂遊戲 美食旅遊 時尚美妝 親子育兒 生活休閒 金融理財 健康運動 寰宇綜合

Zi 字媒體

2017-07-25T20:27:27+00:00
加入好友
師爺之前講過關於集成電路設計、晶圓代工、封裝等,但對於晶元測試這一塊較少涉及,今天就來給大家科普下吧!為什麼要進行晶元測試?晶元測試是一個比較大的問題,直接貫穿整個晶元設計與量產的過程中。首先晶元fail可以是下面幾個方面:功能fail,某個功能點點沒有實現,這往往是設計上導致的,通常是在設計階段前模擬來對功能進行驗證來保證,所以通常設計一塊晶元,模擬驗證會佔用大約80%的時間。性能fail,某個性能指標要求沒有過關,比如2G的cpu只能跑到1.5G,數模轉換器在要求的轉換速度和帶寬的條件下有效位數enob要達到12位,卻只有10位,以及lna的noise figure指標不達標等等。這種問題通常是由兩方面的問題導致的,一個是前期在設計系統時就沒做足余量,一個就是物理實現版圖太爛。這類問題通常是用后模擬來進行驗證的。生產導致的fail。這個問題出現的原因就要提到單晶硅的生產了。學過半導體物理的都知道單晶硅是規整的面心立方結構,它有好幾個晶向,通常我們生長單晶是是按照111晶向進行提拉生長。但是由於各種外界因素,比如溫度,提拉速度,以及量子力學的各種隨機性,導致生長過程中會出現錯位,這個就稱為缺陷。缺陷產生還有一個原因就是離子注入導致的,即使退火也未能校正過來的非規整結構。這些存在於半導體中的問題,會導致器件的失效,進而影響整個晶元。所以為了在生產後能夠揪出失效或者半失效的晶元,就會在設計時加入專門的測試電路,比如模擬裡面的testmux,數字裡面的scan chain(測邏輯),mbist(測存儲),boundry scan(測io及binding),來保證交付到客戶手上的都是ok的晶元。而那些失效或半失效的產品要麼廢棄,要麼進行閹割后以低端產品賣出。這些晶元fail要被檢測出來,就必須要進行晶元測試了。晶元測試在什麼環節進行?現在晶元面積越來越大,測試相當具有挑戰性。所以如何測試其實是一門很深的學問。由於信號過多,不可能把每個信號都引出來測試,所以肯定在設計的時候就要做可測性實際,就是DFT。DFT簡而言之,DFT就是通過某種方法間接觀察內部信號的情況,例如scan chain之類。然後通過特定的測試儀器來測試——這種儀器不是簡單的示波器,它要能產生各種測試波形並檢測輸出,所以一套平台大概要上百萬。而且這些DFT比較適合於小晶元,大晶元像CPU之類的還會使用內建自測試(built-in self test),讓晶元自己在上電后可以執行測試,這樣就大大減小了測試人員的工作量。DFT測試通過之後,就到正式的晶元測試環節了。一般是從測試的對象上分為WAT、CP、FT三個階段,簡單的說, 因為封裝也是有cost的, 為了儘可能的節約成本, 可能會在晶元封裝前, 先進行一部分的測試, 以排除掉一些壞掉的晶元. 而為了保證出廠的晶元都是沒問題的, final test也即FT測試是最後的一道攔截, 也是必須的環節.WAT: Wafer Acceptance Test,是晶圓出廠前對testkey的測試。採用標準製程製作的晶圓,在晶元之間的划片道上會放上預先一些特殊的用於專門測試的圖形叫testkey。這跟晶元本身的功能是沒有關係的,它的作用是Fab檢測其工藝上有無波動。因為代工廠只負責他自己的工作是無誤的,晶元本身性能如何那是設計公司的事兒。只要晶圓的WAT測試是滿足規格的,晶圓廠基本上就沒有責任。如果有失效,那就是製造過程出現了問題。WAT的測試結果多用這樣的圖表示:CP:Circuit Probe,是封裝前晶圓級別對晶元測試。這裡就涉及到測試晶元的基本功能了。不同項目的失效,會分別以不同顏色表示出來。失效的項目反映的是晶元設計的問題。通過了這兩項后, 晶圓會被切割. 切割后的晶元按照之前的結果分類. 只有好的晶元會被送去封裝廠封裝. 封裝的地點一般就在晶圓廠附近, 這是因為未封裝的晶元無法長距離運輸. 封裝的類型看客戶的需要, 有的需要球形BGA, 有的需要針腳, 總之這一步很簡單, 故障也較少. 由於封裝的成功率遠大於晶元的生產良品率, 因此封裝后不會測試.FT:Final test,封裝完成後的測試,也是最接近實際使用情況的測試,會測到比CP更多的項目,處理器的不同頻率也是在這裡分出來的。這裡的失效反應封裝工藝上產生的問題,比如晶元打線不好導致的開短路。FT是工廠的重點,需要大量的機械和自動化設備。它的目的是把晶元嚴格分類。以Intel的處理器來舉例,在FinalTest中可能出現這些現象:雖然通過了WAT,但是晶元仍然是壞的。封裝損壞。晶元部分損壞。比如CPU有2個核心損壞,或者GPU損壞,或者顯示介面損壞等。晶元是好的,沒有故障。這時,工程師需要和市場部一起決定,該如何將這些晶元分類。打比方說,GPU壞了的,可以當做無顯示核心的"賽揚"系列處理器。如果CPU壞了2個的,可以當"酷睿i3"系列處理器。晶元工作正常,但是工作頻率不高的,可以當"酷睿i5"系列處理器。一點問題都沒有的,可以當"酷睿i7"處理器。那這裡的FinalTest該怎樣做?以處理器舉例,FinalTest可以分成兩個步驟:自動測試設備(ATE)系統級別測試(SLT)2是必要項,1一般小公司用不起。ATE的測試一般需要幾秒,而SLT需要幾個小時,ATE的存在大大的減少了晶元測試時間。ATE負責的項目非常之多,而且有很強的邏輯關聯性。測試必須按順序進行,針對前列的測試結果,后列的測試項目可能會被跳過。這些項目的內容屬於公司機密,比如電源檢測,管腳DC檢測,測試邏輯(一般是JTAG)檢測,burn-in,物理連接PHY檢測,IP內部檢測(包括Scan,BIST,Function等),IP的IO檢測(比如DDR,SATA,PLL,PCIE,Display等),輔助功能檢測(比如熱力學特性,熔斷等)。這些測試項都會給出Pass/Fail,根據這些Pass/Fail來分析晶元的體質,是測試工程師的工作。SLT在邏輯上則簡單一些,把晶元安裝到主板上,配置好內存,外設,啟動一個操作系統,然後用軟體烤機測試,記錄結果並比較。另外還要檢測BIOS相關項等。圖片是測試廠房的布置而所有的這些工作,都需要晶元設計工程師在流片之前都設計好。測試工作在晶元內是由專屬電路負責的,這部分電路的搭建由DFT工程師來做,在流片后,DFT工程師還要生成配套輸入矢量,一般會生成幾萬個。這些矢量是否能夠正常的檢測晶元的功能,需要產品開發工程師來保證。此外還需要測試工程師,產品工程師,和助手來一同保證每天能夠完成幾萬片晶元的生產任務不會因為測試邏輯bug而延遲。考慮到每一次測試版本迭代都是幾十萬行的代碼,保證代碼不能出錯。需要涉及上百人的測試工程師協同工作,這還不算流水線技工,因此測試是費時費力的工作。實際上,很多大公司晶元的測試成本已經接近研發成本。WAT與FT比較WAT需要標註出測試未通過的裸片(die),只需要封裝測試通過的die。FT是測試已經封裝好的晶元(chip),不合格品檢出。WAT和FT很多項目是重複的,FT多一些功能性測試。WAT需要探針接觸測試點(pad)。測試的項目大體有:開短路測試(Continuity Test)漏電流測試(Stress Current Test)數字引腳測試(輸入電流電壓、輸出電流電壓)交流測試(scan test)功能性測試所以如果有什麼大問題,設計階段就解決了(或者比較慘的情況下放棄產品,重新設計)。如果生產過程有大的問題,從圓片測試開始也層層篩選掉了。所以剩下的晶元都是精英中的精英,一眼看過去都是完美的成品。接著主要由探針測試來檢驗良率,具體是通過專業的探針上電,做DFT掃描鏈測試。這些掃描鏈是開始設計時就放好的,根據設計的配置,測試機簡單的讀取一下電信號就之後這塊晶元是不是外強中乾的次品。其實好的、成熟的產品,到這一步良品率已經很高了(98%左右),所以更多時候抽檢一下看看這個批次沒出大簍子就行了。具體晶元測試項目流程如下接到客戶的晶元資料,通常是正在開發的晶元,資料嚴格保密,有時候晶元還在design階段就會開始聯繫合作的測試公司開始準備測試項目,以縮短整個開發周期;根據晶元資料設計測試方案(test plan),這個過程經常會有晶元功能或者邏輯不明確的地方,所以需要與設計工程師反覆溝通review。根據測試方案需要設計硬體介面電路板(DIB:Device Interface Board)。根據測試方案開發軟體程序,如果項目巨大會分成多個module由多名工程師合作完成。3和4一般會同步進行。第3和4步準備好后,就開始在tester上進行調試,一般是在測試公司的demo room進行。Bin1后release到工廠開始產線調試。以上各步驟偶爾會出現錯誤,就需要不斷調整返回到出現錯誤的地方更正。我經歷的最嚴重的錯誤是發現晶元設計有問題,項目推倒重來。final release上幾張測試照片給大家一個感性認識以上是WAP測試以上是CP測試以上是FT測試當然具體是研發過程更為複雜和折騰,這裡就不一一展開了。最後說一下,測試非常辛苦,晶元可測性設計以及測試方法論是非常重要也非常深刻的話題。歡迎各位芯粉留言討論。來源 | 網路芯師爺獨家整理

本文由yidianzixun提供 原文連結

寫了 5860316篇文章,獲得 23313次喜歡
精彩推薦