作者:Ron Press,明導 對于許多現有的和未來的集成芯片器件來說,一項主要挑戰就是如何為龐大數量的設計創建測試圖案。對于有百萬門甚至數億門的設計,傳統上等到設計完成再創建測試圖案的方法是不切實際的,產生所有這些圖案需要龐大的計算能力和相當多的時間。分層可測試性設計通過在區塊或內核上完成了 DFT 插入和圖案生成解決了這個問題。這大大減少了圖案生成時間和所需的計算資源。它還能讓你在設計過程中提前完成大部分 DFT 和圖案生成,從而大幅提高可預測性并降低風險。本文將介紹分層 DFT 流程的:插入掃描包裝器 (Wrapper)、為內核生成灰盒圖像,將內核級圖案重定向到集成芯片頂層的簡單映射步驟。 傳統的全芯片 ATPG 正日漸衰退 在集成芯片設計在尺寸和性能上不斷改進的同時,ATPG(自動測試圖案生成)工具在與之并進上有著不俗的表現。伴隨著工藝節點的逐代往前發展,新的制造工藝缺陷也不斷迸發出來,相應的用于檢測新缺陷的新故障模型和測試圖案類型也隨之被開發。測試機臺上為了達到 必須數量的測試圖案所需要的測試周期數一度變得不太現實,于是有了嵌入式壓縮技術來解決這個問題。這種方法事效率有了百倍的提高,也讓 ATPG 得以跟得上現代設計的步伐。此外,分布式多進程和多線程的多重處理 ATPG 使得ATPG 的運行時間能夠得到很好的控制。然而,由于許多設計已經變得如此龐大而復雜,即便 ATPG 解決了眾多難題,但是等到集成芯片設計完成后再創建測試圖案傳統方法還是存在諸多挑戰。 整個設計完成后,對于創建測試圖案和測試芯片這個整體,還可能存在幾個更重要的問題:
除上述問題之外,有時把大部分的測試資源集中在某一區塊或內核上才更有意義。這是因為兩個區塊所需的測試圖案類型和時鐘可能完全不同,不能同時測試。讓我們來看一個簡單的例子,在一塊芯片中對內核1例化了兩次,對內核2例化了一次。下面的幾種情況可能會使同時測試內核1和內核2變得效率低下,甚至可能是無效的,例如:
為什么即插即用是合理的? 即插即用的總體思路在現代社會日益流行。這種方法使用起來非常方便,只需插入即可。隨著供應商和客戶變得更加分散和多元化,各類企業都希望在這種狀況下保持競爭力,那么它就成為了一種必然選擇,F如今,如果沒有供眾多外部供應商提供應用軟件的即插即用接口,那么任何手機都是沒有競爭力的。 對于集成芯片測試目前面臨的一些挑戰來說,即插即用讓整合變得簡單同樣也非常重要。甚至集成電路測試基礎架構也已經開始更多地采用IJTAG [IEEE P1687]來實現即插即用。針對內核和測試圖案的 DFT 同樣可以被視為即插即用型設計。 這種方法帶來的一個重要好處就是,在設計過程中你可以在內核層面提前完成所有工作。這降低了許多類型的風險,因為任何問題都可以提前解決,讓最終芯片測試架構和結果變得更可預見。在內核層面做更多的測試工作還能讓各單獨的開發團隊獨立工作,然后向做芯片集成工作的同事交付標準的 DFT 操作和測試圖案等數據。此外,一旦設計和圖案數據完成,同樣的數據可以被重新用于任何使用該內核的芯片設計。 即插即用方法同樣非常靈活。如果設計出現問題,需要進行工程更改(ECO),那么只需要對進行ECO的內核重新生成測試圖案。 使用包裝器鏈打造獨立內核 分層和內核的即插即用方法的基本要求之一是,確保每個內核可以獨立進行測試。關鍵是要使得對內核的控制和觀測的訪問如訪問內核的輸入輸出端口般方便。我們利用包裝器鏈這一特殊掃描鏈來實現這種訪問。 DFT 工具可以從內核IO開始,并橫穿內核邏輯直到找到第一個寄存器,然后將其包括在包裝器鏈中。這些單元由于同時執行功能性任務和測試任務,因而被稱為共享包裝器單元。許多設計包含寄存器IO,這樣進出內核的信號的時序能得到很好地確定。這使包裝器插入變得非常簡單。但是,IO和觸發器之間有太多的組合邏輯是很常見的。因此,在插入包裝器鏈前, DFT 工具讓用戶看到每個IO和觸發器之間有邏輯規模的評估。又或者,用戶可以設置一個閾值,在未超過該閾值情況下可以使用現有的功能觸發器,反之則將自動添加一個新的專用包裝器單元。高效的工具可以確定盡可能多的共享包裝器單元,而把添加專用包裝器單元作為最終手段。這可以節省大量的硅片面積并減少對功能時序的影響。 包裝器鏈會自動與內核內部掃描鏈進行平衡,使之能夠有效地用于嵌入式壓縮。包裝器鏈使用獨立的掃描使能 (scan_enable) 信號,所以無論有無外部鏈接都能支持內核的高速測試。它們使得包裝器能用于芯片頂層各個內核間的互連測試。 包裝器鏈不僅使內核變得獨立,同時還支持頂層IC建模和規則檢查。一旦包裝器鏈被插入, DFT 工具程序可以分析任何內核,并找出IO和包裝器鏈之間存在什么樣的邏輯。利用該邏輯,內核的部分圖像被寫出,我們稱之為灰盒(圖1);液斜挥脕眚炞C內核在頂層的連接是否正確(設計規則檢查),同時也被用來創建各種內核之間的簡單互連測試。因為灰盒僅使用少量的內核邏輯,設計圖像通常比完整的內核設計小一個數量級。因此,也不再需要把全部的內核網表包含到IC設計中。 ![]() 圖1:當掃描鏈插入內核,包裝器鏈的結構允許將內核隔離為一個完整的包裝器內核,如左圖所示。右圖顯示了一個灰盒模型,其中頂層測試只需要內核IO和包裝器鏈之間的邏輯。 片上時鐘控制器 (OCC) 有時在內核內,有時置于 IC 頂層。分層 DFT 支持支持以上兩種方法。但是,如果 OCC 位于內核內部,那么內核本身就更加獨立。否則,共享同一個 OCC的內核彼此依賴,使得多核同時測試受限。 灰盒生成具有額外的靈活性,用戶可以根據需求定義歸入(或排除出)灰盒的任何 DFT 邏輯或其他邏輯。 內核層面的模式生成 一旦包裝器鏈、內部掃描鏈和嵌入式壓縮被插入一個內核,那么它隨時可進行ATPG。如前所述,分層 DFT 的優點是,內核 DFT 和 ATPG 的進行能夠完全獨立于其他內核(圖2)。即便 IO 值未知,包裝器鏈也能使 ATPG 實現高覆蓋率。 ATPG 工具只需要得到測試圖形將重定向的指示,這樣未知值就可以通過IO賦值,同時恰當的數據被存出來,這些恰當的數據包括需要在IC頂層驗證的任何時鐘或被約束引腳。 ![]() 圖2:利用分層測試方法,所有區塊的 ATPG 工作可以在各內核上獨立完成。 如果一個內核在設計中被數次使用,那么該內核的 ATPG 只需要完成一次。重定向步驟可以將該測試圖案數據并行應用于所有 區塊。使用這種方法,只要內核設計完成,內核級 DFT 邏輯和測試圖案驗證即可完成。 將內核測試圖案重定向并整合到頂層 分層 DFT 方法可以便捷地實現頂層 IC 的測試圖案整合。第一步是執行一些基本的 DFT 設計規則檢查(DRC)。完成這一步只需要有頂層網表和所有內核的灰盒模型(圖3)。分層 DFT 方法常常使用IC 層測試訪問機制(TAM),將芯片的IO定向到需要測試的特殊區塊或區塊組。它既可以簡單到只需要幾個多路復用器,也可以復雜得多。復用的內核通常有并聯廣播到所有內核的輸入信道,這樣從一套輸入信道就得到同樣的測試。我們比較建議將TAM建立在 IJTAG 的基礎上,因為IJTAG是一個非常廣泛而靈活的標準,也最適用于即插即用。 ![]() 圖3:模式重定向需要獨立生成的內核測試圖案,并對其進行重新定向,使之可以從IC層執行。這張圖顯示了被重定向并整合的三個內核測試圖案,使其并行執行。對于一個典型的 IC來講,會有一些區塊的測試圖案被整合,而另一部分區塊需要被放到另一階段進行測試。 具有TAM和內核灰盒的設計圖要比完整的網表小得多,但它已經能夠提供足夠多的與內核 IO 和 DFT 邏輯相關的信息,可以進行完整的設計規則檢查。一旦完成設計規則檢查,內核測試圖案可以自動重新定向,使之得以在IC層執行。盡管內核層測試圖案是獨立生成的,測試圖案重定向可以整合并應用它們,只要 TAM 允許對區塊進行并行訪問,它們就可以并行執行,。 分層方法的最后一步是生成測試各內核之間互連的IC層測試圖案;液心P驮谶@里被應用。它是設計后期的 ATPG 步驟,因為所有內核設計和 TAM 首先必須在此之前完成。然而,它是一個很簡單的電路,ATPG 應該是快速而簡單的。 下一步是什么? 分層 DFT的掃描和包裝器插入、灰盒生成和測試圖案重定向等基本特性為許多設計提供了一個顯著優勢。但是選擇哪些模塊并行測試,哪些串行測試,使測試效率得到優化還需要很多做很多工作。有效的頂層規劃要求一些內核測試圖案信息必須是有效的。與幫助確定最佳壓縮配置的壓縮分析的功能類似,頂層 TAM 規劃在內核設計可用時更為高效。針對這個問題正在開發的方法之一是將IC信道帶寬動態分配給各個內核。這樣的話,在設計TAM前就不需要知道內核測試圖案的性質。此外,動態分配掃描信道將減少整個測試圖案集的大小。 總而言之,分層DFT方法正在被許多設計所采用。因為 ATPG 只在內核級進行,它顯著加快了 ATPG 的速度,降低了工作站的規模。這對于數億門或以上的超大規模設計來說至關重要。分層 DFT 的另一大優點是它很大程度上改進了工序,帶來了即插即用的便利。因此,只要內核設計完成,那么更多的 DFT 和 ATPG 工作可以在設計周期的更早階段進行,這些都有利于降低風險、提高可預見性、以及后期的 ECO。 作者簡介 Ron Press 是明導硅測試解決方案產品的的技術營銷經理。他在測試和 DFT(可測性設計)行業有著25年的經驗,曾多次出席全球各地的DFT和測試研討會。他出版了數十篇與測試相關的論文,是國際測試會議 (ITC) 指導委員會的成員,IEEE 計算機學會 (IEEE Computer Society) 的 Golden Core 成員,IEEE 的高級會員。Ron擁有多項減少引腳數測試和無干擾時鐘切換的專利。 |