專利名稱:合成傳輸器和壓實工具以測試基于掃描的集成電路的方法
合成傳輸器和壓實工具以測試基于掃描的集成電路的方法
技術領域:
本發明專利申請是國際申請號為PCT/US03/00(^9,國際申請日為2003年01月16 日,進入中國國家階段的申請號為03802114. 5,名稱為“用于在基于掃描的集成電路中傳輸掃描圖案的方法和裝置”的發明專利申請的分案申請。技術領域
本發明通常涉及利用用于測試的設計(DFT)技術的邏輯設計和測試領域。具體的,本發明涉及利用掃描或建立自測試(BIST)技術用于集成電路的邏輯測試和診斷領域。
背景技術:
隨著集成電路的復雜性的增加,在獲得非常高的錯誤覆蓋的同時最小化測試成本變得越來越重要。盡管在過去幾十年中用于次百萬門設計的傳統基于掃描的(scan-based) 方法已非常成功的滿足了這些目標,但對于超過現在百萬門的基于掃描的設計,在合理的造價下獲得這樣高的錯誤覆蓋就變得非常困難。這主要是由于它需要將掃描圖案存儲于自動測試設備(ATE)上的大量測試數據存儲量的事實。此外,測試數據存儲量的增加還導致與測試實施時間相關的成本相應增加。
解決該問題的傳統方法集中于在ATE上添加更多的存儲器或截去部分掃描數據圖案。但這些方法不能充分地解決該問題。這是因為前一種方法增加了附加的測試成本因而不能滿足電路的錯誤覆蓋,而后一種方法則犧牲了電路的錯誤覆蓋來節省測試成本。
為了解決該問題,已經提出了許多現有的用于測試設計的(DFT)技術。這些解決方法集中于增加內部掃描鏈的數量,以減小測試數據量并因此不增加測試實施時間,并且在一些情況下同時減小或消除外部可達到的掃描鏈的數量。這消除了內部掃描鏈的個數上的包裝限制,在一些情況下,其可以超過包裝探針數量。
這種DFT技術的一個例子是內建自測試(BIST)。見授權McArmey (1985)的美國專利No. 4,503,537。BIST實施片上(on-chip)產生偽隨機掃描圖案并將其施加于被測電路, 消除了外部到掃描鏈的全部入口,并因此消除了內部掃描鏈所能使用個數上的任何限制。 可是,BIST不能確保非常高的錯誤覆蓋并常常必須與掃描ATPG(自動測試圖案產生設備) 一起結合使用,以覆蓋任何剩余的很難檢測的錯誤。
人們已經提出了幾種測試數據傳輸至被測電路之前用于壓縮測試數據的不同方法。見由 Koenemann 等人(1991),Hellebrand 等人(1995),Rajski 等人(1998),Jas 等人 0000),Bayraktaroglu等人Q001)合著的文獻以及授予Rajski等人Q001)的美國專利 No. 6,327,687。這些方法基于對測試立方體(也就是將掃描數據圖案設置存儲進被測電路的掃描鏈中)的觀測,經常包含大量未指定(不必注意)的位置。可以利用基于減壓設置的LFSR(線性回饋移位寄存器)對這種測試立方體用較少數量的比特進行編碼,然后對它們進行單片減壓。每次利用掃描ATPG產生一個測試立方體該設置需要解一組線性方程,。 由于解這些線性方程依賴于測試立方體內的未指定比特的個數,這些以LFSR為基礎的解壓方案在壓實之前不將一個ATPG圖案分成幾個單獨的圖案情況下壓實ATPG圖案常常是有困難的,因此在添加太多的附加掃描圖案時,確保非常高的錯誤覆蓋是有困難的。
一種減少測試數據量的不同的DFT技術是基于傳播掃描。見由Lee(1999)等人, Hamzaoglu等人(1999)和Pandey等人^00 合著的文獻。傳輸掃描設置直接連接多路掃描鏈、即所謂的傳輸通道至一個的掃描輸入或者將掃描鏈分成不同的部分并通過一個掃描輸入將相同的圖案移進每個部分,在這些設置中,利用線或緩沖器,其中間沒有任何邏輯門,比如AND, OR, NAND, NOR, XOR, XNOR, MUX(多路器)或NOT (變換器)可以做到多個和每個掃描輸入和它各自傳輸通道之間的連接。盡管可以實際實現這種設置額外的硬件開支的情況下,但它使掃描鏈在不同掃描鏈數據比特之間具有非常大的相關性,這導致了輸入限制,該輸入限制太強不能獲得非常高的錯誤覆蓋。
因此,需要發展一種用于確保非常高的錯誤覆蓋的同時最小化測試數據量和測試實施時間的改進方法和裝置。本發明中我們提出的方法基于傳輸掃描,因此在掃描ATPG之后就不需解任何線性方程的分離步驟。我們還提出了傳輸掃描重新排序方法以進一步提高電路的錯誤覆蓋。發明內容
因此,本發明的一個首要目標是提供這樣一種方法和裝置。我們提出的方法基于傳輸掃描,但添加了一個設置于ate(自動測試設備)輸出和被測電路的掃描鏈輸入之間的傳輸器電路。該傳輸器能插入單片中或將其設計進ATE中。為了簡化,在討論中我們假設將傳輸電路設置于ATE和被測集成電路之間,而不具體指定其具體放置位置。下面的描述不考慮實施應用中傳輸器被插入的位置。
依照本發明的方法,產生一個施加給被測集成電路設計的掃描單元(存儲器元件)的傳輸掃描圖案。該處理包括將存儲在一個ATE中的虛擬掃描圖案轉換成利用傳輸器施加給集成電路的包裝掃描輸入探針的傳輸掃描圖案。該傳輸器將虛擬掃描圖案構圖成用于測試各種錯誤比如集成電路中的粘連錯誤、延遲錯誤、和橋接錯誤的各種錯誤的相應傳輸掃描圖案。被測試的集成電路包含多路掃描鏈,每個掃描鏈包括大量耦合在一起存儲傳輸掃描圖案的掃描單元。
本發明的一個重要方面是傳輸器電路的設計。該傳輸器可以如一個組合邏輯電路的網絡(組合邏輯網絡)一樣簡單,或者可能包括一個除組合邏輯電路網絡之外的虛擬掃描控制器(請參照圖4和圖6結合附圖的詳細描述做進一步說明)。添加一個虛擬掃描控制器允許傳輸器實施的構圖根據控制器的內部狀態而改變。利用可編程的邏輯陣列也可實施傳輸器,在這種設置中,通過組合邏輯網絡將每個ATE輸出連接至掃描鏈(或掃描部分) 輸入的一個子集。如果可以,組合邏輯網絡的任何剩余輸入可直接連接至虛擬掃描控制器的輸出。在掃描測試過程中,首先利用邊界掃描或其它外部裝置對虛擬掃描控制器裝載一個預定值。這用于初始化傳輸器的功能。隨后在測試中,它可能并常常期望將不同的預定值裝載入虛擬掃描控制器,從而改變傳輸器的功能,并且這可重復任意次。這允許傳輸器的輸出實施不同或全部邏輯功能的組合。由于傳輸器的功能是存儲進虛擬掃描控制器中值的可編程功能,因此不會限制能夠實施的構圖的數量。這緩和了傳統傳輸掃描的強輸入限制并增加了產生測試更多和更全的錯誤傳輸掃描圖案的能力。由于存儲進虛擬掃描控制器中的值決定了施加于產生傳輸掃描圖案上的輸入限制,因此它是成立的。
盡管由于組合邏輯網絡的簡化和低成本,組合邏輯網絡是傳輸器的優選實施例。 但在本發明中所描述的傳輸器也可以包括一個虛擬虛擬掃描控制器和任一組合邏輯網絡。 該虛擬虛擬掃描控制器可以是任一通用有限狀態機器,比如LFSR(線性反饋移位寄存器), 只要能將預定值裝載入有限狀態機器的全部存儲器元件,比如D觸發器或D鎖存器中即可。 該組合邏輯網絡可以包括一個或多個邏輯門,比如AND,OR, NAND, NOR, XOR, MUX, NOT門,或上述的任意組合。該組合邏輯網絡增加了產生測試附加錯誤的傳輸掃描圖案的機會,比如與傳統傳輸掃描相比抵抗錯誤的圖案。
本發明的另一個方面是形成和產生滿足傳輸器施加的輸入限制的傳輸掃描圖案。 當采用組合邏輯網絡實現傳輸器時,傳輸器施加的輸入限制任一時間僅允許掃描單元的一個子集接受一個預定邏輯值,該值等于或與ATE輸出互補。不同于僅允許全部為零和全部為一的圖案施加給傳輸器通道的先前文獻中的傳輸器掃描設置,本發明允許邏輯值的不同組合在不同的時間出現在這些通道上。產生這些測試圖案僅需要擴大通常采用的ATPG工具,從而實現這些附加輸入限制。因此,產生傳輸掃描圖案的過程將利用一組初始輸入限制產生圖案并分析獲得的覆蓋。如果獲得的錯誤覆蓋不滿意,就施加不同的一組輸入限制并產生一組新的矢量。重復該過程直至滿足預定限制標準。
為了減少獲得非常高的錯誤覆蓋所需要的輸入限制的數量,本發明可以在ATPG 發生之前包括一個傳輸掃描鏈的重新排序的步驟。我們的方法是實施從每個尖峰輸出向后 (掃描單元輸入)跟蹤到所有尖峰輸入(掃描單元輸出)的輸入尖峰分析,然后利用最大覆蓋法重新排序全部的尖峰輸入(掃描單元輸出),從而使在任何移位時鐘周期過程中僅有一個限制的掃描單元位于一個傳輸通道上。如果不能消除的話,這些傳輸掃描次序限制減少了與一個ATE輸出相關聯的傳輸通道之間的數據依賴性。這給了 ATPG工具產生獲得目標錯誤覆蓋而不必使用不同的一組輸入限制的傳輸掃描圖案的更好機會,從而。需要注意, 這僅僅是應用在仍然處于發展階段中的集成電路上,因此應該在取出芯片之前實施傳輸掃描重新排序。
盡管該處理給ATPG處理增加了 CPU時間,但它要比在ATPG之后解成組的線性方程簡單得多和計算強度小得多。與基于LFSR的減壓/分解設置相比,單步驟“傳輸ATPG” 處理更容易產生傳輸掃描圖案。此外,有可能利用最大化的動態壓縮(其為組合ATPG的必要部分)來填充盡可能多的未指定位置(不關心位置),從而致力于使用單個掃描圖案來檢測最大可能的錯誤。這與基于LFSR的減壓/分解設置形成強烈對比,它是期望得到未指定 (不必注意)的位置,為了能夠解所需的線性方程,獲得一個壓縮測試圖案。需要以一組具有較少壓縮量的ATPG矢量開始基于LFSR的減壓/分解設置中的基本概念和規律,為了能夠產生一組更緊密的矢量。缺點是與一個測試相同錯誤的一組矛盾減壓/分解ATPG矢量相比,這減小了獲得的實際的壓縮量。并且允許本發明中所述的基于虛擬掃描控制器傳輸掃描方法比任何基于LFSR的減壓/分解設置在每個掃描測試圖案覆蓋更多的錯誤。
隨著結合下面的描述和附圖,本發明的上述和其它目的、優點和特征將變得更加清楚,其中
圖1給出了利用自動測試設備(ATE)用于測試基于掃描的集成電路的通用系統的結構圖。
圖2給出了依照本發明利用ATE用于測試基于掃描的集成電路的傳輸掃描測試系統的結構圖。
圖3給出了僅具有單純線路的現有技術的傳輸器設計。
圖4給出了依照本發明的傳輸器的結構圖,其包括一個組合邏輯網絡和一個任意的掃描連接器。
圖5A給出了依照本發明圖4中所示的傳輸器的第一實施例,其包括一個組合邏輯網絡。
圖5B給出了由圖5A所示的傳輸器的實施例施加的輸入限制。
圖5C給出了依照本發明圖4所示的傳輸器的第二實施例,其包括一個組合邏輯網絡和一個掃描連接器。
圖5D給出了由圖5C所示的傳輸器的實施例施加的輸入限制。
圖6給出了依照本發明的傳輸器的結構圖,其包括虛擬一個虛擬掃描控制器、一個組合邏輯網絡和一個任意的掃描連接器。
圖7給出了依照本發明圖6所示的傳輸器的第一實施例。
圖8給出了依照本發明圖6所示的傳輸器的第二實施例。
圖9給出了依照本發明圖6所示的傳輸器的第三實施例。
圖10給出了依照本發明圖6所示的傳輸器的第四實施例。
圖11給出了依照本發明圖6所示的傳輸器的第五實施例。
圖12給出了依照本發明圖6所示的傳輸器的第六實施例。
圖13給出了依照本發明的壓縮工具的結構圖,其包括一個掩碼網絡和一個XOR網絡或一個多路輸入簽名寄存器(MISR)。
圖14給出了依照本發明圖13所示的壓實工具的第一實施例。
圖15給出了依照本發明圖13所示的壓實工具的第二實施例。
圖16A給出了依照本發明在用于產生測試更多錯誤的傳輸掃描圖案重新排序掃描單元或改變掃描鏈長度之前的方法實施例。
圖16B給出了依照本發明在用于產生測試更多錯誤傳輸掃描圖案重新排序掃描鏈之后的方法實施例。
圖16C給出了依照本發明在用于產生測試更多錯誤的傳輸掃描圖案改變掃描鏈長度之后的方法實施例。
圖17給出了依照本發明用于錯誤覆蓋提高的重新排序掃描單元的方法流程圖。
圖18給出了依照本發明用于產生用在測試基于掃描的集成電路中的傳輸掃描圖案的方法流程圖。
圖19給出了依照本發明用于合成一個傳輸器和一個壓實工具以測試基于掃描的集成電路的方法流程圖。
圖20給出了依照本發明和可以實施傳輸掃描測試方法的系統舉例。
具體實施方式
目前期望下面的描述作為實施本發明的最佳方式。該描述不是用于限制本發明的,其僅是用于描述本發明的原理。通過參照附加權利要求書將確定本發明的范圍。
圖1給出了利用ATE用于測試基于掃描的集成電路的通用系統的結構圖。系統 101包括一個測試器或外部自動測試設備(ATE) 102以及一個被測電路(CUT) 107,該被測電路包括掃描鏈109。
ATE102從外部掃描輸入探針111以及從外部初級(primary)輸入探針113通過掃描鏈109以掃描模式一個接一個的施加一組完全指定的測試圖案103至⑶T107。然后利用施加的測試圖案作為輸入該CUT進入標準模式,并將對測試圖案的響應俘獲進入掃描鏈。該CUT然后再次返回進入掃描模式,而且從外部掃描輸出探針112以及外部初級輸出探針114通過掃描鏈將測試響應移出至ATE。然后通過比較器105對移出的測試響應104 和相應預期的測試響應106進行比較以測定CUT中是否存在錯誤,并通過合格/錯誤信號 115顯示出結果。
在常規的系統101中,⑶T107中掃描鏈109的數量等于外部掃描輸入探針111的或者外部掃描輸出探針112的數量。由于一個集成電路中的有限外部探針的數量,因此在通用系統中的掃描鏈數量也是有限制的。結果,具有大量掃描單元(SC)IOS的大型集成電路常常包括用于掃描測試的非常長的掃描鏈,這將導致不可接受的大量測試數據和耗時長的測試實施時間。
圖2給出了依照本發明利用ATE用于測試基于掃描的集成電路的傳輸掃描測試系統的結構圖。該系統201包括ATE202和一個電路207,該電路207包括一個傳輸器208、一個⑶T209和一個壓實工具213。該⑶T包括掃描鏈211。
傳輸器208可以僅包括一個如在圖4所示的組合邏輯網絡或者一個如圖6所示的除組合邏輯網絡之外的虛擬掃描控制器。傳輸器用于將虛擬掃描圖案203繪制成傳輸掃描圖案,其中虛擬掃描圖案的比特(bits)數通常小于傳輸掃描圖案的比特數。如果傳輸器僅包含一個組合邏輯網絡就固定傳輸器的構圖功能。可是,如果傳輸器還包含一個虛擬掃描控制器,構圖功能就可以改變。在這種情況下,虛擬掃描控制器的輸出值能夠改變組合邏輯網絡實現的構圖功能,這樣就可以實現了從外部掃描輸入探針215到內部掃描鏈輸入219 之間的不同構圖關系。壓實工具213是一個組合邏輯網絡,比如XOR網絡,被設計用來將內部掃描鏈輸出220映射至外部掃描輸出探針216。在實踐中需要注意,外部掃描輸入或輸出探針的數量小于內部掃描鏈輸入或輸出探針的數量。
需要注意的是,可用任一種空間壓實工具和一個多路輸入簽名寄存器(MISR)取代元件213。在這種情況下,可將全部測試響應壓實成一個簽名,在已經施加全部傳輸掃描圖案之后,與電路207或ATE202中的一個參考信號進行比較。
此外,壓實工具213通常包括一個用于阻止幾個輸出流進入XOR壓實網絡或MISR 的掩碼網絡。這在錯誤診斷中是有用的。
圖3給出了僅具有單純線路的現有技術的傳輸器設計。該例傳輸器設計301具有兩個傳輸掃描輸入314和315。傳輸掃描輸入314直接連接至掃描鏈303到307,而傳輸掃描輸入315直接連接至掃描鏈308到312。盡管該單純線路傳輸設計的造價非常低,但由相同的傳輸掃描輸入供給的掃描鏈中測試圖案的依賴性是非常高的。從自動測試圖案產生設備(ATPG)的觀點來看,該純粹線傳輸設計對給掃描鏈的輸入有很強的限制。結果,該設置常常遭受嚴重的錯誤覆蓋損失。
圖4給出了依照本發明的傳輸器的結構圖,其包括一個組合邏輯網絡和一個可選的掃描連接器。通過傳輸器401的傳輸掃描輸入407施加虛擬掃描圖案至組合邏輯網絡 402。組合邏輯網絡執行固定的構圖功能,其將一個虛擬掃描圖案轉換成一個傳輸掃描圖案。然后通過一個任意掃描連接器403,將傳輸掃描圖案施加給CUT404中的全部掃描鏈 409。
傳輸器401用于通過少量外部傳輸掃描輸入探針407為大量內部掃描鏈406提供測試圖案。結果,可將CUT404中的所有掃描單元SC405構造成大量的較短的掃描鏈。這將有助于減少測試數據量和測試實施時間。通過正確設計組合邏輯網絡402,就有可能減少由于掃描鏈的輸入探針所施加的額外限制所導致的錯誤覆蓋損失。
圖5A給出了依照本發明圖4所示的傳輸器的第一實施例,其包括一個組合邏輯網絡。在該例中,通過傳輸器501將一個3比特的虛擬掃描圖案轉換成一個8比特傳輸掃描圖案。
傳輸器501包括一個組合邏輯網絡502,該網絡包括兩個反相器503和507、一個 XOR門504、一個OR門505和一個NOR門506。通過傳輸掃描輸入施加虛擬掃描圖案X2 518 至XO 520。組合邏輯網絡實施一個固定的構圖功能,其將一個虛擬掃描圖案轉換成一個傳輸掃描圖案。然后通過Y7 521到YO 528,將傳輸掃描圖案施加給CUT508中的全部掃描鏈 510 至Ij 517。
圖5B給出了由圖5A所示的傳輸器的實施例施加的輸入限制。
圖5A中的傳輸器501具有三個傳輸掃描輸入X2 518到XO 520。這樣,就有如表 531的<X2、X1、X0>下列出的用于傳輸掃描輸入的8種輸入組合。這些是對圖5A中的組合邏輯網絡502的全部可能的輸入值組合。因此,作為組合邏輯網絡的輸出,這里有表531中列出的<Y7、Y6、Y5J4、Y3、Y2、Y1、Y0>下列出的8種值組合。這些是能圖5A的掃描鏈510 到517的輸入處出現的全部邏輯值組合,并且它們是ATPG處理的輸入限制。
圖5C給出了依照本發明圖4中所示的傳輸器的第二實施例,其包括一個組合邏輯網絡和掃描連接器。在該例中,通過傳輸器561將一個3比特虛擬掃描圖案轉換成一個8 比特傳輸掃描圖案。
傳輸器561包括一個組合邏輯網絡562和一個掃描連接器566,該組合邏輯網絡包括一個反相器565、一個M)R門563和一個OR門564。通過傳輸掃描輸入X2581到X0583 施加虛擬掃描圖案。組合邏輯網絡實施一個固定的構圖功能,其將一個虛擬掃描圖案轉換成一個傳輸掃描圖案。然后通過掃描連接器566,將傳輸掃描圖案施加給所有的掃描鏈573 到580。掃描連接器包括一個緩沖器567、一個反相器570、一個鎖定元件LE569和一個備用單元SC568。通常,利用掃描連接器中的緩沖器、反相器或鎖定元件將兩個掃描鏈連接成一個。此外,為了減小不同的掃描鏈之間的依賴性可將備用單元添加進存在的掃描鏈中,以改變它的長度,這將有助于改進錯誤覆蓋。
圖5D給出了由圖5C所示的傳輸器的實施例施加的輸入限制。
圖5C中的傳輸器561具有三個傳輸掃描輸入X2 581到XO 583。這樣,就有如表 591中的<X2,X1,X0>下列出的用于傳輸掃描輸入的8種輸入組合。這些是圖5C中的組合邏輯網絡562的全部可能的輸入值組合。因此,作出組合邏輯網絡的輸出,就有表591中的 <Y4,Υ3,Υ2,Yl, Υ0>下列出的8種值組合。這些是ATPG處理中的輸入限制。
圖6給出了依照本發明的傳輸器的結構圖,其包括一個虛擬掃描控制器、一個組合邏輯網絡和一個任意掃描連接器。
傳輸器601包括一個虛擬掃描控制器602、一個組合邏輯網絡603和一個任選的掃描連接器604。通過兩種類型的輸入探針傳輸掃描輸入608和虛擬掃描輸入609施加虛擬掃描圖案。傳輸掃描輸入直接連接至組合邏輯網絡,而虛擬掃描輸入直接連接至虛擬掃描控制器。此外,虛擬掃描控制可以具有任意虛擬掃描輸出613。
需要注意,虛擬掃描控制器602可以是比如解碼器的組合電路,或者是比如移位寄存器的時序電路。盡管通過傳輸掃描輸入608施加的邏輯值在每個時鐘周期中會改變, 但通過虛擬掃描輸入609施加的邏輯值在每個時鐘周期中是可以或不可以改變的。施加虛擬掃描輸入值的作用是改變和存儲在虛擬掃描控制器中合適的設置值組合。通過601將該設置值組合施加給組合邏輯網絡603,從而改變組合邏輯網絡執行的構圖功能。由于一個構圖功能相應于用于ATPG的一組輸入限制因此提供的改變構圖功能的能力,將導致用于 ATPG的更加靈活輸入限制。結果,由傳輸設置將被基本上減少錯誤覆蓋誤差。
通常,在測試過程中傳輸器601起到兩個作用。一個作用是通過少量外部傳輸掃描輸入探針608和虛擬掃描輸入探針609為大量內部掃描鏈607提供測試圖案。結果,可將電路中的全部掃描單元SC606構造成大量較短的掃描鏈。這將有助于減小測試數據量和測試實施時間。另一個作用是提高從組合邏輯網絡603施加給全部掃描鏈的傳輸掃描圖案的質量,從而獲得較高的錯誤覆蓋。這可通過改變裝載進虛擬掃描控制器的值而獲得。由于該靈活性,組合邏輯網絡可以實現不同的構圖功能,而不是固定的一種。
圖7給出了依照本發明圖6中所示的傳輸器的第一實施例,傳輸器701包括一個虛擬掃描控制器702和一個組合邏輯網絡705。虛擬掃描控制器包括兩個反相器703和 704,組合邏輯網絡由8個M)R門706到713組成。在該例中,通過傳輸器將一個4比特虛擬掃描圖案轉換成一個8比特傳輸掃描圖案。
明顯地,虛擬掃描控制器702的輸出730和731必須具有互補值。此外,虛擬掃描控制器的輸出732和733也必須具有互補值。假設施加給兩個傳輸掃描輸入7 和729的值分別是Vl和V2。在這種情況下,在掃描鏈輸入734至743處出現的值將分別是P1、 P1、 P2、 P2、V1、V2、P3、 P3、P4、 P4。在這里,Pl和 Pl是互補的,P2和 P2是互補的, P3和 P3是互補的,P4和 P4是互補的。此外,Pl和P2可以和Vl —樣,也可以與Vl互補,同時,P3和P4可以和Vl —樣,也可以與V2互補。這就是用于ATPG的輸入限制。
圖8給出了依照本發明在圖6所示的傳輸器的第二實施例,傳輸器801包括一個虛擬掃描控制器802和一個組合邏輯網絡804。虛擬掃描控制器包括一個2比4的解碼器 803,組合邏輯網絡由8個M)R門805到812組成。在該例中,通過傳輸器將一個4比特虛擬掃描圖案轉換成一個8比特傳輸掃描圖案。
明顯地,存在用于2到4個解碼器803的輸出8 到832的四種可能邏輯值組合。 它們是分別用于輸出829到832的1000,0100,0010和0001。假設2到4個解碼器的輸出值組合是1000。也假設施加給兩個傳輸掃描輸入827和828的邏輯值分別是Vl和V2。在這種情況下,在掃描鏈輸入833到842處出現的值將分別是 V1、V1、V1、V1、V1、V2、 V2、 V2、V2、V2。這里的Vl和 Vl是互補的,同時V2和 V2是互補的。這是用于ATPG的輸入限制。明顯地,通過改變虛擬掃描輸入825和826的值,可以得到用于ATPG的不同組輸入限制。這將有助于提高錯誤覆蓋。
圖9給出了依照本發明在圖6所示的傳輸器的第三實施例。
傳輸器901包括一個虛擬掃描控制器902和一個組合邏輯網絡911。虛擬掃描控制器包括一個具有存儲器元件903到910的8級移位寄存器。這里有一個虛擬掃描輸入 932,其是移位寄存器的輸入。這里有一個任意虛擬掃描輸出935,其是移位寄存器的輸出。 任意地,可將虛擬掃描輸入和虛擬掃描輸出分別連接至邊界掃描設計中的TDI和TD0。組合邏輯網絡由8個M)R門912到919組成。這里有兩個傳輸掃描輸入933和934。通過輸入 933施加的測試圖案被傳輸至掃描鏈922到926 ;同時,通過輸入934施加的測試圖案被傳輸至掃描鏈927到931。
從傳輸掃描輸入933和934分別直接裝載掃描鏈擬6和927,同時分別通過XOR門 912到915以及916到919裝載掃描鏈922到925以及掃描鏈928到931。如果存儲器元件903的值是邏輯0,掃描鏈922就將得到與從傳輸掃描輸入933施加的那些值相等的值。 如果存儲器元件903的值是邏輯1,那么掃描鏈922就將得到與從傳輸掃描輸入933施加的那些值互補的值。對掃描鏈923到925以及擬8到931施加相同的監測。這意味著通過對虛擬掃描控制器902中的移位寄存器施加一組合適的測定值,可能在任何移位周期中的掃描鏈922到931施加IOM種邏輯值組合中的任何一種值。結果,通過裝載一組合適的測定邏輯值給移位寄存器和通過輸入933和934施加傳輸掃描圖案就可以檢測到⑶T920中的任何可檢測出的錯誤。
從ATPG的觀點來看,其試圖產生傳輸掃描圖案以驅動全部掃描鏈,為了測試 CUT920,由虛擬掃描控制器902的移位寄存器中存儲器元件的值決定的傳輸器結構代表輸入限制。假定用于存儲器元件903到910的值分別是0、1、0、1、0、1、0、1。在這種情況下,用于⑶T的ATPG將滿足這樣一種輸入限制,即在任何移位周期,掃描鏈922、擬4和擬6具有相等的值V,掃描鏈923和925具有相等的值 V,其是V的互補,掃描鏈927、擬8和930具有相等的值P,掃描鏈9 和931具有相等的值 P,其是P的互補。
圖10給出了依照本發明圖6中所示的傳輸器的第四實施例。
傳輸器1001包括一個虛擬掃描控制器1002和一個組合邏輯網絡1006。虛擬掃描控制器包括一個具有存儲器元件1003到1005的3級移位寄存器。這里有一個虛擬掃描輸入1023,其是移位寄存器的輸入。這里有一個任意虛擬掃描輸出1026,其是移位寄存器的輸出。任意地,可將虛擬掃描輸入和虛擬掃描輸出分別連接至邊界掃描設計中的TDI和 TDO0組合邏輯網絡由4個M)R門1007到1010組成。這里有兩個傳輸掃描輸入IOM到 1025。通過輸入IOM施加的測試圖案被傳輸至掃描鏈1013至1017 ;通過輸入1025施加的測試圖案被傳輸至掃描鏈1018和1022。
圖9中的傳輸器901與圖10中的傳輸器1001之間的主要區別在于測試圖案被直接傳輸給一些掃描鏈而沒有通過傳輸器1001中的M)R門。取代經過傳輸器1001中的XOR 門直接傳輸測試圖案至一些掃描鏈。直接驅動由傳輸掃描輸入IOM的掃描鏈1013、1015 和1017。這意味著在任何移位周期中,掃描鏈1013、1015和1017將獲得相等的值。此外, 直接驅動由傳輸掃描輸入1025的掃描鏈1018、1020和1022。這意味著在任何移位周期中, 掃描鏈1018、1020和1022將具有相等的值。結果,通過施加一組合適的測定值給虛擬掃描控制器1002中的移位寄存器,其僅可能在任何移位周期施加64種邏輯值組合的任何一種給掃描鏈1013到1022。即在給掃描鏈的輸入更強限制的代價下,傳輸器1001需要較小的硬件造價。
圖11給出了依照本發明圖6所示的傳輸器的第五實施例。
傳輸器1101包括一個虛擬掃描控制器1102和一個組合邏輯網絡1106。虛擬掃描控制器包括一個具有存儲器元件1103到1105的3級移位寄存器。這里有一個虛擬掃描輸入1127,其是移位寄存器的輸入。這里有一個任意虛擬掃描輸出1130,其是移位寄存器的輸出。任意地,可將虛擬掃描輸入和虛擬掃描輸出分別連接至邊界掃描設計中的TDI和 TDO0組合邏輯網絡由4個XOR門(1108、1109、1112、1114)、兩個反相器(1107、1113)、一個 AND門(1110)和一個OR門(1111)組成。這里有兩個傳輸掃描輸入11 和11四。通過輸入11 施加的測試圖案被傳輸至掃描鏈1117至1121 ;通過輸入11 施加的測試圖案被傳輸至掃描鏈1122 M 1126.
傳輸器1101實現了從傳輸掃描輸入11 和11 到掃描鏈1117到11 的輸入之間的更加復雜的傳輸構圖關系。由分別對應于掃描鏈1117到11 的輸入的<VB,VC,V, VC, V*P,V+P,PCI, PB, PC2,P>代表構圖關系的通常形式。在這里,V和P是在任何移位周期中分別從傳輸掃描輸入11 和11 施加的兩個邏輯值。VB和PB分別是V和P的互補。 如果存儲器元件1103的輸出值是邏輯0或1,VC分別等于V或VB。如果存儲器元件1104 的輸出值是邏輯0或1,PC1分別等于P或PB。如果存儲器元件1105的輸出值是邏輯0或 1,PC2分別等于P或PB。明顯地,通過裝載不同組的邏輯值進入虛擬掃描控制器1102中的移位寄存器,改變VC、PCl和PC2,從而可以改變傳輸構圖關系。結果,可對CUTl 115施加交互依賴較少的測試激勵,從而可以達到較高的錯誤覆蓋。
從ATPG的觀點來看,其為了測試⑶T1115,試圖產生傳輸掃描圖案以驅動所有掃描鏈1117到1126,由虛擬掃描控制器1102的移位寄存器中存儲器元件的值決定的傳輸器結構代表輸入限制。其通常形式是<VB,VC,V,VC,V&P,V+P,PC1,PB,PC2,P>。如果在測定存儲器元件的值之后轉換初始順序的CUT1115至反映限制的組合電路模型,可以實施該限制的ATPG。
圖12給出了依照本發明圖6所示的傳輸器的第六實施例。
傳輸器1201包括一個虛擬掃描控制器1202、一個組合邏輯網絡1203和掃描連接器1207。組合邏輯網絡除了包括一個OR門1205之外還包括兩個反相器1204和1206。通過傳輸掃描輸入12 和1227以及一個虛擬掃描輸入TDI 1224施加虛擬掃描圖案。將來自虛擬掃描控制器的一個輸出X212^施加給組合邏輯網絡,使其能夠執行不同的構圖功能。然后通過掃描連接器1207然后施加來自于組合邏輯網絡的輸出值1232到1236給全部掃描鏈1215到1223。該掃描連接器由一個緩沖器1209 —個反相器1212、一個鎖定元件 LE1211、一個備用單元SC1210和一個多路轉換器1208組成。通常,通過利用掃描連接器中的緩沖器、反相器或鎖定元件可將兩個掃描鏈連接成一體。此外,可將備用單元添加進入存在的掃描鏈以減少不同掃描鏈之間的依賴性。這將有助于改進錯誤覆蓋。進一步地,多路轉換器可用于將掃描鏈分離成兩部分。如圖12所示,如果多路轉換器1208的選擇信號12 是邏輯1,掃描鏈1215和1216就將得到不同的輸入值流。可是,如果多路轉換器1208的選擇信號12 是邏輯0,就可將掃描鏈1215和1216看作成一個掃描鏈,并且僅有一個輸入值流經過它們。明顯地,掃描連接器可用于調節CUT中掃描鏈的長度,從而縮短測試時間或改進錯誤覆蓋。
圖13給出了依照本發明的壓實工具的結構圖,其包括一個掩碼網絡和一個XOR網絡或一個MISR。
響應于施加在⑶T的輸入1307上的傳輸掃描圖案⑶T輸出1308上的測試響應通過壓實工具1304,該壓實工具1304包括一個掩碼網絡1305和一個M)R網絡或MISR1306。 MC1311是用于控制掩碼網絡的信號,其可由ATE施加或由虛擬掃描控制器產生。掩碼網絡用于遮蔽一些至XOR網絡或MISR的輸入。這在錯誤診斷中是有用的。XOR網絡用于實施空間壓實,也就是減少離開電路的測試響應線的數量。另一方面,MISR用于在區域和時域中壓實測試響應。也就是在利用MISR時,不需一個周期接一個周期的檢查測試結果。相反, 僅需要比較在整個測試時間結束時獲得的信號。可是需要指出,不允許未知值(X’ s)進入 MISR。這意味著將應該遵守允許更嚴格的設計原則。
圖14給出了依照本發明在圖13所示的壓實工具的第一實施例。
輸出1441到1448上的測試響應經過掩碼網絡1412,然后經過M)R網絡1422。掩碼網絡包括兩組AND門1414到1417以及1418到1421,通過由修正的2比4的解碼器1413 產生的四個輸出控制每一組門。在該診斷模式中,其中模式信號1449是邏輯1時,該解碼器構圖MC11^9和MC21430上的邏輯值至下述組合中的一個1000,0100,0010和0001。很明顯,在這些邏輯組合的任一種下任何一組AND門都將僅允許一個測試響應流到達1431或 1432。明顯地,這將有助于錯誤診斷。在該測試模式中,其中模式信號1449是邏輯0時, 該解碼器將產生一個全部為1的邏輯組合,這將允許全部的測試響應流到達1431或1432。 XOR網絡1422包括兩組4比1的XOR次網絡,該4比1的XOR次網絡分別包括M)R門1423 到 1425 以及 1426 到 1428。
圖15給出了依照本發明圖13所示的壓實工具的第二實施例。
輸出1540到1547上的測試響應經過掩碼網絡1512,然后經過MISR1525。掩碼網絡包括兩組AND門1517到1520以及1521到15M,通過由存儲器元件1513到1516構成的移位寄存器的四個輸出控制每一組門。在該診斷模式中,該移位寄存器可從上裝載下述組合中的一個1000,0100,0010和0001。很明顯,在這些邏輯組合的任一組下任何一組AND門都將僅允許一個測試響應流到達MISR。明顯地,這將有助于錯誤診斷。在該測試模式中,將全部為1的邏輯組合裝載進入移位寄存器。這將允許全部的測試響應流到達 MISR。可從TDO 15 移出在測試時間結束時MISR的內容以與預期的信號進行比較。
圖16A給出了依照本發明的在重新排序掃描單元或改變掃描鏈長度之前用于產生測試更多錯誤的傳輸掃描圖案的方法的實施例。傳輸器1601具有一個傳輸掃描輸入 1614、該傳輸掃描輸入傳輸邏輯值給三個掃描鏈1606、1608和1611。
由于邏輯值通過適當裝載虛擬掃描控制器1602中的移位寄存器,并通過M)R門 1604施加給掃描鏈1611,就可能在任何移位周期施加不同于通過掃描鏈1606和1608施加的值的任何邏輯值。而在任何周期可將相同的邏輯值裝載進入掃描鏈1606和1608。結果, 掃描單元A3 1607和B3 1610在任何傳輸測試圖案中將具有相同的邏輯值。由于來自于掃描單A31607和B31610的輸出連接至相同的組合邏輯塊1612,因此就可能由于測試圖案依賴性強而不能檢測到組合邏輯塊中的一些錯誤。例如,為了檢測組合邏輯塊中的一些錯誤, 就可能必須具有邏輯0作為掃描單元A31607的輸出以及邏輯1作為掃描單元B31610的輸出。明顯地,這將不能檢測到這些錯誤。
圖16B給出了依照本發明的在用于產生測試更多的錯誤的傳輸掃描圖案重新排序掃描鏈之后依照本發明的方法實施例。傳輸器1601具有一個傳輸掃描輸入1614,該傳輸掃描輸入傳輸邏輯值給三個掃描鏈1606、1608和1611。
圖16A和圖16B之間僅有的不同是在掃描鏈1608中,掃描單元B21609和B31610 的次序是改變的。現在,盡管掃描單元A31607和B21609的輸出在任何移位周期中具有相同的邏輯值,但是掃描單元A31607和B31610的輸出也可以具有不同的邏輯值。結果,這就有可能檢測到一些以圖16A所示的掃描次序檢測不到的錯誤。
圖16C給出了依照本發明在用于產生測試更多的錯誤的傳輸掃描圖案改變掃描鏈長度之后的方法實施例。傳輸器1601具有一個傳輸掃描輸入1614,該傳輸掃描輸入傳輸邏輯值給三個掃描鏈1606、1608和1611。
圖16A和圖16C之間僅有的不同是通過一個多路轉換器1618將一個備用掃描單元B01617添加給掃描鏈1608。明顯地,如果選擇信號1619是邏輯1,就將備用掃描單元添加給掃描鏈1608。結果,盡管掃描單元A31607和B21609的輸出在任何移位周期中具有相同的邏輯值,但掃描單元A31607和B31610的輸出也可以具有不同的邏輯值。結果,這就有可能檢測到一些以圖16A所示的掃描次序檢測不到的錯誤。
圖17給出了依照本發明用于錯誤覆蓋提高的重新排序掃描單元的方法流程圖。 該方法1700接受用戶提供的HDL編碼1701以及選擇出的鑄造庫1702。HDL編碼代表由圖 2所示的傳輸器、完全掃描CUT和壓實工具構成的時序電路。然后將HDL編碼和庫施加進入一個內部時序電路模型1704,然后該模型轉變成一個組合電路模型1706。此后,基于原始掃描次序信息1709和掃描次序限制1710,實施輸入尖峰分析1707以識別次序需要改變的掃描單元。然后實施掃描鏈重新排序。在這之后,產生HDL測試工作臺和測試程序1711,同時將全部報告和錯誤保存進1712。
圖18給出了依照本發明用于產生用在測試基于掃描的集成電路中的傳輸掃描圖案的方法流程圖。該方法1800接受用戶提供的HDL編碼1801和選擇出的鑄造庫1802。 HDL編碼代表由在圖2中給出的傳輸器、完全掃描DUT和壓實工具構成的時序電路。然后將 HDL編碼和庫施加進入內部時序電路模型1804,然后將其傳輸進入組合電路模型1806。此后,基于輸入限制1810,執行組合錯誤模擬1807,如果需要,其可用于從錯誤列表中移出多個隨機圖案和全部檢測錯誤。在這之后,執行組合ATPG1808以產生從錯誤列表中移出的虛擬掃描圖案和全部檢測錯誤。如果適合預定的限制標準,比如預先選擇出的錯誤覆蓋目標, 產生HDL測試工作臺和測試程序1811,同時將全部報告和錯誤保存進數據傳送外存儲器 1812。如果不適合預定的限制標準,將使用新的輸入限制1810。例如可將一組新值裝載進入虛擬掃描控制器以規定新的輸入限制,在這之后,實施可選擇的隨機圖案錯誤模擬1807 和ATPG1808。持續這種反復直至適合預定的限制標準。
圖19給出了依照本發明用于合成傳輸器和壓實工具以測試基于掃描的集成電路的方法流程圖。該方法1900接受用戶提供的HDL編碼1901和選擇出的鑄造庫1902。HDL 編碼代表由在圖2中給出的傳輸器、完全掃描DUT和壓實工具構成的時序電路。然后將HDL 編碼和庫施加進入內部時序電路模型1904,此后,基于傳輸限制1908和壓實限制1909,分別實施傳輸合成1905和壓實合成1906。在這之后,基于縫合限制1910、實施縫合1907以將傳輸器和壓實工具集成到原始電路。最后產生合成HDL編碼1911,并將全部報告和錯誤保存進數據傳送外存儲器1912。
圖20給出了依照本發明在傳輸掃描測試方法中使用的系統舉例。該系統2000包括處理器2002,該處理器和存儲器2001 —起工作以運轉一組傳輸掃描測試設計軟件。處理器2002可以代表個人計算機、工作站、主機計算機或其它合適的數字處理裝置的中央處理單元。該存儲器2001可以是電子存儲器或磁或任意以磁盤為基礎的存儲器或各種它們的組合。設計者通過處理器2002結合傳輸掃描測試設計軟件以通過輸入裝置2003提供合適的輸入,輸入裝置2003可以是鍵盤、磁盤裝置或其它合適的設計信息源。通過輸出裝置 2004處理器2002對設計者提供輸出,輸出裝置2004可以是顯示器、打印機、磁盤驅動器或這些或其它元件的各種組合。
具有了目前給出的本發明的優選實施例,現在已經可以完全獲得本發明的目標。 本發明的熟練技術人員可以理解在構造&電路中可有許多改變,而且只要不脫離本發明的精神和范圍可以提出本發明的廣泛的不同實施例&和應用。在這里的揭示和描述僅是描述性的,其不會限制本發明,通過下面的權利要求優選限定本發明的范圍。
權利要求
1.一種合成傳輸器和壓實工具以測試基于掃描的集成電路的方法,所述基于掃描的集成電路包含多路掃描鏈,每個掃描鏈包括連續連接的多個掃描單元,掃描鏈輸入連接至傳輸器并且掃描鏈輸出連接至壓實工具,所述方法包括步驟a)將RTL級或者門級模擬的代表所述基于掃描的集成電路的HDL編碼編譯到時序電路模型中;b)建立對于所述傳輸器、所述壓實工具、以及進行縫合的限制;c)依照規定于所述傳輸器之上的所述限制合成所述傳輸器;d)依照規定于所述壓實工具之上的所述限制合成所述壓實工具;e)依照規定用于縫合的所述限制在所述時序電路模型之上縫合所述傳輸器和所述壓實工具;以及f)產生在RTL或門級水平上模擬的合成HDL編碼。
2.權利要求1的方法,其中所述傳輸器進一步包括從選擇出的掃描鏈移出選擇出的掃描單元,并依照規定于所述傳輸器之上的所述限制重新縫合所述選擇出的掃描鏈中的所述選擇出的掃描單元。
3.權利要求1的方法,其中所述傳輸器是單純的組合邏輯網絡,該組合邏輯網絡包括一個或多個邏輯門,該邏輯門包括AND門、OR門、NAND門、NOR門、M)R門、XNOR門、多路轉換器、緩沖器、轉換器或上面結構的任意組合。
4.權利要求3的方法,其中所述傳輸器進一步包括使用多個掃描連接器將所述組合邏輯網絡的輸出連接至在所述基于掃描的集成電路中的選擇出的掃描鏈輸入,其中所述多個掃描連接器包括一個或多個緩沖器、反相器、鎖定元件,每個鎖定元件包括比如D觸發器或 D鎖存器的反相器和存儲器元件、備用掃描單元、多路轉換器或上面結構的任一組合。
5.權利要求3的方法,其中所述傳輸器進一步包括利用虛擬掃描控制器控制所述組合邏輯網絡,其中在每個移位周期過程中或在測試期間所述虛擬掃描控制器控制所述傳輸器的操作。
6.權利要求5的方法,其中所述虛擬掃描控制器進一步包括一個或多個緩沖器或反相ο
7.權利要求5的方法,其中所述虛擬掃描控制器是解碼器。
8.權利要求5的方法,其中所述虛擬掃描控制器是包括比如D觸發器或D鎖存器的一個或多個存儲器元件的有限狀態機器,其中在測試開始之前對所述有限狀態機器裝載預定狀態。
9.權利要求8的方法,其中所述虛擬掃描控制器是移位寄存器。
10.權利要求1的方法,其中將所述傳輸器有選擇地設置于所述基于掃描的集成電路內部、所述ATE內部,或設置在所述ATE和所述基于掃描的集成電路之間。
11.權利要求1的方法,其中所述壓實工具是可選擇的M)R網絡或多路輸入簽名寄存器MISR,其中所述多路輸入簽名寄存器MISR進一步包括多個M)R門和多個存儲器元件,比如D觸發器或D鎖存器。
12.權利要求1的方法,其中所述壓實工具進一步包括使用掩碼網絡允許或禁止測試或診斷選擇出的掃描鏈中的選擇出的掃描單元,其中所述掩碼網絡包括一個或多個AND 門。
13.權利要求1的方法,其中將所述壓實工具有選擇的設置于所述基于掃描的集成電路內部、所述ATE內部,或設置在所述ATE和所述基于掃描的集成電路之間。
全文摘要
本發明公開了合成傳輸器和壓實工具以測試基于掃描的集成電路的方法,包括用于減少基于掃描集成電路中的ATE(自動測試設備)(202)的測試數據量和測試實施時間。基于掃描集成電路包含多路掃描鏈、每個掃描鏈包括連續連接的多個掃描單元。傳輸器(208)是連接至任意虛擬掃描控制器和任意掃描連接器的組合邏輯網絡。虛擬掃描控制器控制傳輸器的操作。該系統傳輸存儲進ATE(202)中的虛擬掃描圖案并通過傳輸器產生傳輸掃描圖案(219)以用于測試基于集成電路中的測試制造錯誤。該方法進一步用于重新排序在選擇出的掃描鏈中的掃描單元,以產生傳輸掃描圖案和虛擬掃描圖案,并合成在基于掃描集成電路中的傳輸器和壓實工具。
文檔編號G01R31/3185GK102495362SQ201110377919
公開日2012年6月13日 申請日期2003年1月16日 優先權日2002年1月16日
發明者K·S·埃布德爾-哈非茨, 葉大嘉, 林仕鴻, 林孟祺, 溫曉青, 王信博, 王榮騰, 蔡森煒 申請人:美國華騰科技股份有限公司