Global Sources
電子工程專輯
 
電子工程專輯 > EDA/IP
 
 
EDA/IP  

利用統一的測試方法進行全晶片測試

上網時間: 2005年12月22日     打印版  Bookmark and Share  字型大小:  

關鍵字:統一的測試  全晶片測試  Unified test  full-chip  point test 

引言:要滿足如今複雜元件對投片時間、產品品質和測試成本的要求,基於掃描的測試方法和後端測試方法都已經不夠了。本文提出的統一的測試方法適用於定義、實現和驗證全晶片測試,包括掃描、壓縮、記憶體BIST、產品內時脈產生、邊界掃描和I/O測試。用這種方法開發更高品質測試架構的速度要比只採用單點測試工具更快。

為了在競爭激烈的電子市場中獲得成功,半導體公司要求按時上市的晶片其品質足以滿足目標應用的需求。晶片一般按照分層化或SoC流程設計,其中可能包含幾千萬個邏輯門、成百上千的記憶體模組、高速I/O和混合訊號模組。

目前要想對這些晶片進行全晶片測試,就需要在設計流程後端使用幾種不是最理想的單點工具,現在還沒有全晶片測試的自動化或最佳化方法。這就造成晶片測試日益成為延遲投片、製造成本過高和產品品質不佳的原因。本文將討論目前測試流程的缺點,並提出一種對全晶片測試進行規格定義、實現和驗證的統一方法。


圖1:時序收斂關鍵路徑上的測試。

圖2 :全晶片測試的測試結構。

圖3 全晶片測試方法流程。

表1:2004年的一個典型SoC設計計畫。

目前前端測試流程引發的問題

如今的晶片設計中可能包含許多核心、成百上千的記憶體以及多級邏輯層次。表1給出了一個目前支援著有線和無線通訊應用的典型SoC設計。

請注意,這個元件的複雜性來源於外來的知識產權(IP)核心、佔晶片面積近一半的記憶體以及多個時脈域和多級層次。這其中的許多部份又是由大型、分散的設計團隊設計。

複雜的元件一般採用分層化方法設計,測試對這樣的設計而言只是一個單調的後端實現步驟而已。這樣的測試方法所採用的測試結構並不十分理想,它需要在元件內的關鍵路徑上搭建測試結構,容易造成實體實現上的問題(例如透過改變佈局、佈線和時序最佳化來容納測試結構)。

如果設計邏輯、記憶體或者核心產生了任何重大變化,就需要增加設計團隊的在測試上的很多額外工作量。因此,當投入大量產或在系統開發時,採用這種方法就無法滿足對測試的要求。

為了製作必需的全晶片測試,現在測試團隊往往會分別對晶片的每個結構單元進行規格定義、實現和驗證(通常採用的工具也不盡相同),然後將一切整合起來手動製作全晶片測試的基本架構,這會使得問題更加複雜化。

圖1的例子描述了後端測試瓶頸對一個分層化設計流程的影響。其中的邏輯模組是分別設計,然後在全晶片級上組合起來,再將記憶體和IP模組整合進來。整個設計流程中,並沒有由上向下的測試規劃,除了流程後端的掃描插入,在單個模組級上也沒有測試行為。

在最後的晶片整合階段,還有一個繁重的測試步驟,用於處理所有的全晶片測試需求。設計師需要依次使用一些分離的單點工具插入不同的測試結構,例如邊界掃描、記憶體內建自測(BIST)和壓縮。然後再用合成工具來‘縫合’這些測試結構。

最後一步是驗證。如果在最終的測試驗證階段發現問題,所有測試活動就必須重新進行一遍。

這個繁重測試結構插入行為必須在時序收斂開始之前完成,因為一旦時序收斂開始之後,對設計分層或設計佈局所做的修改可能會導致測試步驟更多的反覆。這不但冗長耗時,而且易出錯,正日益成為造成延遲投片、晶片可能返工、測試成本過高以及產品品質不佳的原因。

解決方案:統一的全晶片測試方法

複雜晶片測試需要一種統一的方法來進行規格定義、實現和驗證全晶片測試,相較用目前單點測試工具,這樣才能更快地開發出品質更高的全晶片測試基礎架構。

1.全晶片測試

全晶片測試是指一個設計完整分層化測試基礎架構,其中包含設計所有測試結構(例如掃描、壓縮、記憶體BIST、產品內時脈產生以及IP核心封包)和將這些結構連接到設計I/O(例如層間互連、邊界掃描/抽頭控制器和測試I/O)的完整架構。

圖2所示為一個全晶片測試架構的例子。要形象化地表示全晶片測試的基本架構,可以將一個完成了的設計測試控制器抽頭拖出,隨之拖出的所有連接和模組就組成了全晶片測試的基本架構。

2.統一測試方法

全晶片測試的統一測試方法為定義、實現和驗證全晶片測試架構提供了一種單一的環境。這種多層的、相異的測試架構既支援自頂向下的設計方法也支援自底向上的設計方法。

在全晶片測試的實現階段,需要為一個特定的設計製作、插入和連接多個測試結構。實現測試的底層技術理論上基於測試結構編譯。

這就使設計團隊能夠利用幾個參數來定義測試結構,在不影響設計流程的情況下製作測試結構。設計團隊還能依靠一種底層的合成技術來插入和連接不同層次間的測試結構。圖3所示為一個採用統一方法學的全晶片測試流程。

3.測試規格

測試規格定義步驟用於為全晶片測試指定和傳達測試實現和驗證的要求。這一階段首先需要考慮的一點就是將測試結構從關鍵路徑上移開,以免影響投片時間。

因此,任何修改設計網表的測試實現都只能在設計流程的早期產生,並且必須與設計分層屬性保持一致。頂層的測試規格包括I/O測試、邊界掃描、頂層壓縮和掃描多工。在模組級,測試規格數據將每個模組的測試策略傳達給分散的設計團隊。

4.測試實現

測試實現步驟就是根據測試結構的插入和互連等測試規格來修改測試網表。如圖3所示,統一的測試方法要求頂層測試結構和模組層測試結構平行實現,以與設計流程的分層化特性保持同步。

頂層測試結構的實現中包括標準測試控制(如IEEE 1149.1邊界掃描控制器)、壓縮邏輯、I/O測試、產品內時脈產生等等的插入和驗證,以及對這些標準結構的額外定製功能或變種的支援。而在模組級,測試實現和驗證則包括模組中的所有測試行為。

測試實現的範例包括掃描插入、記憶體BIST插入和本地連接,以及IP核心封包。一旦頂層和模組層的插入和驗證完成之後,剩下的就是在晶片整合階段連接頂層和模組層測試結構。

測試實現必須能在對設計時間影響最小的前提下處理設計中的改動,例如多個記憶體BIST引擎的共享和縫合。這是一個與時序收斂步驟相關聯的複雜問題。測試實現需要最佳化以盡量減少所需的時間,並適應設計中逐步增加的改動而無需從頭開始。此外,與測試實現相關的問題還包括測試對面積、時序和功耗的影響。

5.測試驗證

測試驗證步驟用於驗證全晶片測試基礎架構的功能、設計可測試性以及測試架構自身是否可測。全晶片測試方法的測試驗證和分析必須確保具備以下幾個關鍵特性:

  • 所有插入測試的邏輯均正確無誤;

  • 滿足設計規則;

  • 具備特定品質目標所需的易測性;

  • 測試邏輯自身可測;

  • 測試邏輯符合自動測試設備(ATE)的要求。

總的來說,是否符合測試設計規則會在不同程度上影響自動測試模式產生(ATPG)過程。當出現違反規則的情況時,要麼無法產生測試模式,要麼產生的測試模式無法工作,或者會導致ATPG產生不良模式,而這種不良模式在測試儀上可能會造成良品率為零或者會減少測試覆蓋率或增加測試數據量。最終不但會在元件上市時間中徒增幾周的除錯時間,而且測試成本和返工成本增高,產品品質也會下降。

統一測試法的好處

統一的全晶片測試法對複雜SoC設計師們大有裨益,它不但能幫助設計師在設計週期的更早階段開始處理測試問題,而且支援分層化設計流程,支援頂層測試結構的插入和驗證、模組層測試結構的插入和驗證,以及所有本地和全局測試結構的自動連接。這樣將能幫助設計師們提高生產率,縮短投片時間,降低測試成本,並且提高最終產品的品質。

作者:Mick Tegethoff

測試市場部產品設計總監

Cadence設計系統公司





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


EE人生人氣排行
 
返回頁首