專利名稱:用于在集成電路裝置上存儲陣列冗余數(shù)據(jù)的裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及一種改進(jìn)的數(shù)據(jù)處理系統(tǒng)及方法。更具體地說,本發(fā)明涉及使用單組電熔絲(eFuses)連續(xù)地存儲來自多個測試階段的測試數(shù)據(jù)的裝置和方法。
背景技術(shù):
傳統(tǒng)地,具有元件陣列的復(fù)雜集成電路的制造商使用多個測試階段來測試各種元件的操作。例如,制造商可以以晶片形式首先在常溫和常壓下測試集成電路的元件。然后制造商可以在應(yīng)力條件下進(jìn)行良好元件的附加測試,即,通過初始測試的哪些元件。然后當(dāng)該集成電路被封裝時,制造商可以再次測試該集成電路。在測試制度中也可以包括其它測試,以檢查各種條件下集成電路的元件的操作。
例如,大集成電路和處理器典型地包括作為它們的設(shè)計的一部分的存儲器單元的大陣列。為了保證合理的產(chǎn)量,這些陣列具有內(nèi)建備用單元,即,冗余單元,該單元可以代替任意較不完美的單元。當(dāng)這些大陣列被測試時,確定哪些單元需要被映射到存儲器單元陣列的備用或冗余單元。該信息被轉(zhuǎn)變成數(shù)據(jù),該數(shù)據(jù)被稱為陣列冗余數(shù)據(jù)。
每個單元替換所需的該數(shù)據(jù)被稱為修復(fù),基于該數(shù)據(jù)執(zhí)行的校正被稱為修復(fù)活動。這些修復(fù)活動需要跳過陣列中的無功能單元,以及映射到冗余單元。這些修復(fù)活動相繼地被連續(xù)加載。一旦陣列測試器確定需要的陣列冗余數(shù)據(jù)或需要的修復(fù)活動,則在集成電路裝置或處理器的通電時,該數(shù)據(jù)必須被重新加載。
每個測試可以產(chǎn)生陣列冗余數(shù)據(jù),該數(shù)據(jù)可以用來校正通電時的元件陣列。該陣列冗余數(shù)據(jù),一旦證實,典型地被存儲在測試時可以被編程的集成電路裝置或處理器的區(qū)域中,如一組激光熔絲、電熔絲(eFuses)或其它類型的存儲器件。在大集成電路裝置或處理器上,有大量的陣列冗余數(shù)據(jù),該數(shù)據(jù)可能占用大量eFuses。大量eFuses占據(jù)裝置的較大面積。
此外,對于每個測試階段,需要位于集成電路上的eFuses的特定專用的分立組,來存儲由測試階段產(chǎn)生的陣列冗余數(shù)據(jù)。eFuses的這些分立組的每一個,需要在集成電路上的它自己的分立器件區(qū)以及它自己的控制邏輯。而且,如果從一個測試階段留下任意eFuses,那么它們在后續(xù)測試階段中不能被使用。
因此,當(dāng)從一個測試階段至下一個階段eFuses不能被利用時,用于存儲和使用來自集成電路裝置的多個測試階段的陣列冗余數(shù)據(jù)的已知機(jī)制導(dǎo)致用于Fuses組的集成電路裝置或處理器的區(qū)域過多以及導(dǎo)致浪費的空間。這是不合需要的,其中過多的區(qū)域和邏輯影響整個集成電路裝置或處理器的功能和成本。而且,如果裝置越大,那么操作它所需要的功率越多。
鑒于到上述情況,提供一種用于減小提供eFuses組需要的集成電路裝置上的面積量的裝置和方法將是有益的。而且,提供一種減小在一系列的多個測試階段中從一個測試至下一個測試不能使用eFuses而產(chǎn)生的浪費空間量的裝置和方法將是有益的。
發(fā)明內(nèi)容
本發(fā)明提供了一種使用單組電熔絲(eFuses)、激光熔絲或其它類型的存儲器件來連續(xù)地存儲由多個測試階段獲得的測試數(shù)據(jù)的裝置和方法。在本發(fā)明的一個示例性實施例中,該裝置和方法用來在單組efuses中存儲由多個測試階段獲得的壓縮陣列冗余數(shù)據(jù)。
利用本發(fā)明的裝置和方法,為了在相同的eFuses組中編碼和存儲來自每個后續(xù)測試的陣列冗余數(shù)據(jù),使用基于一對一與掃描鏈的eFuses相關(guān)的鎖存器來保持用于每個eFuse的編程信息。這些鎖存器提供一機(jī)構(gòu),用于識別哪些eFuses已被編程,以便在每個測試階段期間,僅僅組內(nèi)的部分eFuses需要被編程。通過用未編程的值,例如,邏輯“0”簡單地加載這些鎖存器,可以容易地識別大量未編程的eFuses。
eFuses中編程的數(shù)據(jù)可以被檢測和讀出作為掃描鏈的一部分。因此,容易確定eFuses組的哪些部分已被先前測試階段編程和在哪里開始將下一組數(shù)據(jù)編程在eFuses組中。結(jié)果,單組eFuses存儲來自多個測試階段的多組數(shù)據(jù)。
此外,本發(fā)明提供一種數(shù)據(jù)壓縮編碼技術(shù)以簡明地編碼全部冗余環(huán)。具體地,提供一跳躍命令,用于跳躍到eFuses組的適當(dāng)部分,用于將數(shù)據(jù)寫到eFuses組和/或從eFuses組讀取數(shù)據(jù)。跳躍命令執(zhí)行兩件事(1)它允許通過跟隨規(guī)定跳躍多少位(高達(dá)255或高達(dá)15位)的8或4位的長或短跳躍命令簡明地編碼該冗余數(shù)據(jù);以及(2)當(dāng)加載實際冗余環(huán)時,它允許多遍(pass),因為每遍可以容易地跳躍大批數(shù)據(jù),保留先前數(shù)據(jù)在適當(dāng)?shù)奈恢糜糜谀男┰?br>
因此,每個測試階段,在單組eFuses中編碼整個冗余環(huán)的冗余數(shù)據(jù)。如果來自三個不同測試的冗余數(shù)據(jù)已被編碼和存儲,那么在集成電路裝置的通電時,加載該陣列冗余環(huán)三遍。通過跳躍命令,后續(xù)遍將“跳躍”任意先前寫入的數(shù)據(jù),以便每遍僅僅增加附加的故障/校正。
在本發(fā)明的一個示例性實施例中,提供了一種在集成電路裝置上的用于在集成電路裝置上存儲陣列冗余數(shù)據(jù)的裝置。該裝置包括用于存儲用于集成電路裝置的多個測試階段的陣列冗余數(shù)據(jù)的單組存儲器件,和用于控制編碼陣列冗余數(shù)據(jù)的解碼的控制邏輯,該編碼陣列冗余數(shù)據(jù)存儲在單組存儲器件中。在單組存儲器件中存儲的編碼陣列冗余數(shù)據(jù)是由集成電路裝置上提供的一個或多個器件陣列的多個測試階段產(chǎn)生的陣列冗余數(shù)據(jù)。
單組存儲器件可以是電熔絲(eFuses)組。該單組存儲器件可以被布置為存儲器件的掃描鏈。每個存儲器件可以具有相關(guān)的鎖存器,該鎖存器存儲表示存儲器件是否已被預(yù)先編程或未被編程的值。
編碼的陣列冗余數(shù)據(jù)可以包括識別編碼的陣列冗余數(shù)據(jù)的壓縮方法(methodology)的位代碼。該位代碼可以包括跳躍位代碼,用于跳躍存儲器件組的一部分,由此訪問除第一測試階段以外的測試階段的編碼陣列冗余數(shù)據(jù)。
一個或多個器件陣列中的每個器件陣列包括至少一個冗余器件,用于代替陣列中的其它器件。此外,陣列冗余數(shù)據(jù)可以識別一個或多個器件陣列中的故障器件,故障器件需要用冗余器件代替??刂七壿嬁梢越獯a該編碼的陣列冗余數(shù)據(jù)以及可以將解碼的陣列冗余數(shù)據(jù)加載到一個或多個器件陣列中,以便在一個或多個器件陣列上執(zhí)行一個或多個修復(fù)活動。
該裝置還可以包括測試裝置和連接到一個或多個器件陣列和測試裝置的測試接口。該測試裝置可以通過測試接口在一個或多個器件陣列時執(zhí)行多個測試階段,由此產(chǎn)生多組陣列冗余數(shù)據(jù)。該測試裝置可以通過測試接口輸出多組陣列冗余數(shù)據(jù)到用于分析的外部計算裝置。
該裝置還可以包括連接到存儲器件組和外部計算裝置的存儲器件接口。外部計算裝置中的控制邏輯可以通過存儲器件接口編碼該陣列冗余數(shù)據(jù)和將編碼的陣列冗余數(shù)據(jù)寫入存儲器件組。此外,外部計算裝置中的控制邏輯可以讀取在與存儲器件組中的存儲器件相關(guān)的鎖存器中存儲的值,以識別未編程的第一存儲器件以及在未編程的第一存儲器件處開始將來自測試階段的編碼陣列冗余數(shù)據(jù)寫入存儲器件組。
在本發(fā)明的另一實施例中,提供了一種在數(shù)據(jù)處理系統(tǒng)中用于將編碼的陣列冗余數(shù)據(jù)存儲在集成電路裝置上的單組存儲器件中的方法。該方法包括接收來自外部計算裝置的編碼陣列冗余數(shù)據(jù),其中該編碼陣列冗余數(shù)據(jù)用于集成電路裝置上的一個或多個器件陣列的多個測試階段的一個測試階段。該方法還包括識別單組存儲器件的第一未編程存儲器件以及在第一未編程的存儲器件處開始在單組存儲器件中存儲該編碼陣列冗余數(shù)據(jù)。該單組存儲器件可以存儲用于多個測試階段的每個階段的編碼陣列冗余數(shù)據(jù)。
在本發(fā)明的另一實施例中,提供一種集成電路裝置,該集成電路裝置包括電熔絲組、多個存儲器陣列、通電控制和陣列冗余解壓縮單元以及陣列內(nèi)建自測試單元。每個存儲器陣列可以包括多個存儲器單元,該存儲器單元包括至少一個冗余存儲器單元。通電控制和陣列冗余解壓縮單元可以被連接到eFuses組和多個存儲器陣列中的至少一個存儲器陣列。該陣列內(nèi)建自測試(ABIST)單元可以被連接到多個存儲器陣列。
該ABIST單元可以在多個存儲器陣列上執(zhí)行多個測試階段以產(chǎn)生陣列冗余數(shù)據(jù)。用于所有測試階段的陣列冗余數(shù)據(jù)可以被編碼和存儲在eFuses組中。在集成電路裝置通電時,通電控制和陣列冗余解壓縮單元可以解碼eFuses組中的編碼陣列冗余數(shù)據(jù)以及將該解碼的陣列冗余數(shù)據(jù)加載到多個存儲器陣列中,以執(zhí)行一個或多個修復(fù)活動。
此外,集成電路裝置可以包括連接到多個存儲器陣列中的至少一個存儲器陣列的陣列測試接口和連接到eFuses組的eFuse測試接口。該陣列測試接口可以將陣列冗余數(shù)據(jù)從多個存儲器陣列輸出到用于分析的外部計算裝置。該eFuse測試接口可以接收來自外部計算裝置的編碼陣列冗余數(shù)據(jù),用于存儲在eFuses組中。
本發(fā)明的這些及其它特點和優(yōu)點將在優(yōu)選實施例的下列詳細(xì)描述中描述,或鑒于優(yōu)選實施例的下列詳細(xì)描述,本發(fā)明的這些及其它特點和優(yōu)點對于所屬領(lǐng)域的普通技術(shù)人員來說將顯而易見。
在所附權(quán)利要求書中闡述了屬于本發(fā)明的特征的新穎性特點。但是,通過參考下列說明性實施例的詳細(xì)描述,同時結(jié)合附圖閱讀時,將很好理解本發(fā)明本身以及使用的優(yōu)選方式、其更多目的和優(yōu)點,其中圖1是用于具有多個存儲器陣列的復(fù)雜多處理器的改進(jìn)陣列冗余環(huán)裝置的示例性示圖;圖2是說明根據(jù)本發(fā)明的一個示例性實施例,可以用來實現(xiàn)壓縮/解壓縮算法的命令圖表的示例性示圖;圖3是說明根據(jù)本發(fā)明的一個示例性實施例的eFuses組的示例性示圖;圖4是概述根據(jù)本發(fā)明的一個示例性實施例,用于在單組eFuses中存儲陣列冗余數(shù)據(jù)的示例性操作的流程圖;以及圖5是概述根據(jù)本發(fā)明的一個示例性實施例,用于從單組eFuses讀取陣列冗余數(shù)據(jù)和將該陣列冗余數(shù)據(jù)加載到陣列冗余數(shù)據(jù)環(huán)中的示例性操作的流程圖。
具體實施例方式
如上所述,本發(fā)明涉及一種使用單組存儲器件諸如電熔絲(eFuses)或激光熔絲連續(xù)地存儲由多個測試階段獲得的測試數(shù)據(jù)的裝置和方法。本發(fā)明可以用于任意裝置,其中,在陣列中的元件出現(xiàn)故障的情況下,為元件陣列提供在陣列中提供的一個或多個冗余元件,用于代替。這種裝置例如可以采用集成電路裝置、微處理器等的形式。在下列示例性實施例中,假定該裝置是具有多個存儲器陣列的微處理器。但是,應(yīng)該理解這些僅僅是示例性實施例以及本發(fā)明不局限于這些實施例。
參考圖1,提供一個示圖,說明根據(jù)本發(fā)明的一個示例性實施例,用于具有多個存儲器陣列的復(fù)雜微處理器的改進(jìn)陣列冗余數(shù)據(jù)環(huán)裝置的示例性框圖。如圖1所示,處理單元150和存儲器陣列132,134,136,138,139和140構(gòu)成微處理器。在測試時,存儲器陣列132,134,136,138,139和140被測試,以確定是否任何一個單元是無功能的。例如,通過運(yùn)行陣列內(nèi)建自測試(ABIST)引擎160可以確定故障單元。外部制造測試器計算裝置將初始化和啟動ABIST引擎160,ABIST引擎160將在存儲器陣列132-140上進(jìn)行測試,例如,通過陣列測試接口102,以及將結(jié)果存儲在ABIST引擎160內(nèi)。一旦測試完成,制造測試器計算裝置將故障信息掃描出微處理器,如通過陣列測試接口102。通過外部制造計算裝置執(zhí)行芯片外的故障信息的分析。最終結(jié)果是確定哪些存儲器單元需要被映射到備用或冗余單元。該數(shù)據(jù)稱為陣列冗余數(shù)據(jù)或修復(fù)活動數(shù)據(jù),以及用來產(chǎn)生修復(fù)活動。
然后通過陣列冗余環(huán)測試接口106,將未編碼的陣列冗余數(shù)據(jù)或修復(fù)活動數(shù)據(jù)直接掃描到陣列冗余數(shù)據(jù)環(huán)104。一旦該數(shù)據(jù)被掃描到陣列冗余數(shù)據(jù)環(huán)104,ABIST引擎160重新進(jìn)行該測試,以確保產(chǎn)生的修復(fù)活動校正存儲器陣列132-140中的故障存儲器單元。一旦確定修復(fù)活動校正了故障存儲器單元,則使用此后將參考圖2描述的壓縮方法編碼該陣列冗余數(shù)據(jù)環(huán)104的圖像,即修復(fù)活動數(shù)據(jù)或陣列冗余數(shù)據(jù)。
當(dāng)陣列冗余數(shù)據(jù)的編碼完成時,通過外部制造測試器計算裝置,經(jīng)由eFuse測試接口114將該編碼的陣列冗余數(shù)據(jù)編程到eFuses120中。eFuse測試接口114可以用來在eFuses120中存儲該壓縮的陣列冗余數(shù)據(jù),以及對于無功能的eFuses,還可以用來測試eFuses120,該無功能的eFuses可能包含需要被跳過的缺陷數(shù)據(jù)。
當(dāng)在工作模式中接通微處理器100時,通過通電控制和陣列冗余解壓縮單元110讀入該編碼的陣列冗余數(shù)據(jù),即,修復(fù)活動數(shù)據(jù),此后使用圖2中概述的方法解碼該編碼的數(shù)據(jù)。然后解壓縮的陣列冗余數(shù)據(jù)可以被重新加載到陣列冗余數(shù)據(jù)環(huán)104中,以確定哪些存儲器單元需要被映射到冗余單元。在解壓縮處理之后,該陣列冗余數(shù)據(jù)環(huán)104包含完全地解碼的陣列冗余數(shù)據(jù)且因此可以將故障存儲器單元映射到存儲器陣列132-140中的冗余存儲器單元。
在圖1中,實際上圖示了兩個陣列冗余環(huán)。第一陣列冗余環(huán)由存儲器陣列132-140構(gòu)成并共同地稱為陣列冗余數(shù)據(jù)環(huán)104。第二陣列冗余環(huán)是在eFuses120中收集、壓縮以及存儲的陣列冗余數(shù)據(jù)的組合,表示陣列冗余數(shù)據(jù)環(huán)104的測試結(jié)果。本發(fā)明使用壓縮方法將陣列冗余數(shù)據(jù)存儲到eFuses120的第二陣列冗余環(huán)中和從該eFuses120讀出該數(shù)據(jù),以配置第一陣列冗余數(shù)據(jù)環(huán)104的存儲器陣列132-140。
在2004年11月4日申請的,名稱為″Algorithm to Encode and CompressArray Redundancy Data″的共同轉(zhuǎn)讓和共同待審的美國專利申請序列號10/981,158(代理案號AUS920040679US1)中描述了本發(fā)明使用的壓縮方法,因此將其引入作為參考。如該共同待審的美國專利申請所述,用來執(zhí)行陣列冗余數(shù)據(jù)到eFuses中的壓縮和編碼的命令有四種主要類型控制、移動零、移動實際數(shù)據(jù)和跳躍數(shù)據(jù)。有三種不同的控制命令。在圖2中提供的示例性圖表200中描繪了這些命令類型。
應(yīng)當(dāng)注意圖2所示的控制命令被外部計算機(jī)用來編碼陣列冗余數(shù)據(jù),即修復(fù)活動數(shù)據(jù),如先前所述。此外,控制命令也被eFuse解碼器(未示出)用來解碼該編碼的陣列冗余數(shù)據(jù),eFuse解碼器可以是例如通電控制和陣列冗余解壓縮單元110或分立單元的一部分。為了解釋各種控制命令,將描述在解碼過程中翻譯這些控制命令的方法。為了執(zhí)行陣列冗余數(shù)據(jù)的編碼,陣列冗余數(shù)據(jù)被分析,以確定滿足各種控制代碼的條件,以便控制代碼用來編碼陣列冗余數(shù)據(jù)的這些識別部分。
如圖2的示例性實施例所示,有三個不同的控制命令。由位代碼0000定義的控制命令表示eFuse數(shù)據(jù)的結(jié)束。由位1110定義的控制命令表示移動存儲在eFuses120或陣列冗余數(shù)據(jù)環(huán)104中的陣列冗余環(huán)數(shù)據(jù)的恢復(fù),從下一個4-位代碼開始。由位代碼1111定義的控制命令表示eFuses120中存儲的陣列冗余數(shù)據(jù)的讀取,但是不移動陣列冗余數(shù)據(jù)環(huán)104中的數(shù)據(jù)。該最后的二個命令控制有缺陷的eFuse數(shù)據(jù)的跳躍。存儲在有故障或有缺陷的eFuses中的數(shù)據(jù)是缺陷數(shù)據(jù),其可以致使器件不可用。當(dāng)eFuse解碼器遇到1111代碼時,eFuse數(shù)據(jù)繼續(xù)被讀取,但是該數(shù)據(jù)被忽略,即不被移動到陣列冗余數(shù)據(jù)環(huán)104中。當(dāng)遇到1110控制命令時,eFuse解碼器恢復(fù)正常操作。
在共同待審的美國專利申請序列號10/981,158(代理案號AUS920040679US1)中闡述的算法是基于大多數(shù)陣列冗余數(shù)據(jù)或修復(fù)活動數(shù)據(jù)是非必要的假定,即,陣列冗余數(shù)據(jù)的合理數(shù)量將是零。修復(fù)活動的性質(zhì)是“0”之后跟隨幾個“0”表示沒有修復(fù)活動。另外,“1”之后跟隨地址表示修復(fù)活動。
因為在芯片上的島之間有附加的管道(piping)鎖存器(latch)(用于計時),有時在某些修復(fù)活動之間還有額外的虛擬鎖存器。亦即,當(dāng)用千兆赫邏輯信號工作時,并不總是可能從點A走到點B而沒有分級(staging)信號。管道線(pipeline)鎖存器被插入數(shù)據(jù)通路中,以“橋接(bridge)”長距離。例如,在圖1中,可能需要管道線鎖存器,以獲取從存儲器陣列136至存儲器陣列138的陣列冗余數(shù)據(jù)環(huán)104數(shù)據(jù)。在編碼/解碼過程中,這些額外的虛擬鎖存器也應(yīng)該被跳過。
第二組命令涉及將零移動到陣列冗余環(huán)中,移動到eFuses120中的陣列冗余環(huán)或陣列冗余數(shù)據(jù)環(huán)104。位代碼0001表示將一個零移動到陣列冗余環(huán)中,以及位代碼0010表示將兩個零移動到陣列冗余環(huán)中。這些命令用來調(diào)整陣列冗余數(shù)據(jù)的邊界,僅僅使用4-位命令。
位代碼0011表示將七個零移動到陣列冗余環(huán)中,以及位代碼0100表示將八個零移動到陣列冗余環(huán)中。位代碼0101表示將九個零移動到陣列冗余環(huán)中。該編碼例子假定修復(fù)活動由7,8和9位的長度構(gòu)成。這是最后的三個命令涉及將7,8和9個零移動到冗余環(huán)中的理由。如果該陣列冗余數(shù)據(jù),即,修復(fù)活動數(shù)據(jù),由不同的長度構(gòu)成,那么不同數(shù)目的零可以被移動到陣列冗余環(huán)中。
第三組命令涉及將實際的數(shù)據(jù)移動到陣列冗余環(huán)中。位代碼0110表示將下一個七個實際位移動到陣列冗余環(huán)中,以及位代碼0111表示將下一個八個實際位移動到陣列冗余環(huán)中。位代碼1000表示將下一個九個實際位移動到陣列冗余環(huán)中,以及位代碼1001表示將下一個十四個實際位移動到陣列冗余環(huán)中。位代碼1010表示將下一個十六個實際位移動到陣列冗余環(huán)中,以及位代碼1011表示將下一個十八個實際位移動到陣列冗余環(huán)中。
如上所述,該示例性實施例中的陣列冗余數(shù)據(jù),即,修復(fù)活動數(shù)據(jù)由7,8和9位的長度構(gòu)成。因此,這些命令涉及將7,8,9,14,16和18位移動到陣列冗余環(huán)中。由此,7位的移動將移動修復(fù)活動數(shù)據(jù)的一部分到陣列冗余環(huán)中,以及14位的移動將移動修復(fù)活動數(shù)據(jù)的兩個部分到陣列冗余環(huán)中。
第四組命令涉及當(dāng)讀取數(shù)據(jù)和加載數(shù)據(jù)到陣列冗余數(shù)據(jù)環(huán)104中時跳躍來自eFuses120的數(shù)據(jù)位。位代碼1100表示跳躍下一個4-位字段中規(guī)定的位數(shù)目(這也稱為短跳躍)。位代碼1101表示跳躍下一個8-位字段中規(guī)定的位數(shù)目(這也稱為長跳躍)。對于這兩種命令,陣列冗余環(huán)被簡單地移動和沒有插入新數(shù)據(jù)。冗余數(shù)據(jù)環(huán)最初一直被初始化為零。因此,跳躍可以有效地將大量零移動到陣列冗余環(huán)中。
這四種命令允許壓縮的陣列冗余數(shù)據(jù),即,修復(fù)活動數(shù)據(jù),被解壓縮和移動到陣列冗余數(shù)據(jù)環(huán)104中。該壓縮算法基于已知陣列冗余數(shù)據(jù)或修復(fù)活動的大小,以及簡單性,以便在通電時解碼是不困難的。該算法也是靈活的,因為在集成電路裝置或微處理器上可以修改存儲器陣列的數(shù)目,而不影響壓縮/解壓縮算法的設(shè)計/實施。
如果用于其它器件的修復(fù)活動的大小是不同的,那么某些基本零點和實際壓縮命令可能需要被修改。由此,本發(fā)明不局限于如上所述的示例性實施例,以及在不脫離本發(fā)明的精神和范圍的條件下可以進(jìn)行許多改進(jìn)。
本發(fā)明還使用該壓縮/解壓縮算法,以允許在單組eFuses中存儲由多個測試階段產(chǎn)生的陣列冗余數(shù)據(jù),而不是現(xiàn)有技術(shù)裝置所需要的多組eFuses。利用本發(fā)明,eFuses組中的efuses被布置為掃描鏈,掃描鏈中的每個eFuse具有相關(guān)的鎖存器。鎖存器中存儲的值表示相關(guān)的eFuse被編程與否。基于與該eFuse相關(guān)的鎖存器的值,可以通過與eFuses組相關(guān)的控制邏輯確定在陣列冗余數(shù)據(jù)的編碼過程中該eFuse是否應(yīng)該被跳躍或?qū)懭雃Fuses組中。先前論述的解壓縮方法可以用來從eFuses讀取陣列冗余數(shù)據(jù),以便確定將在元件的陣列上,例如,在陣列冗余數(shù)據(jù)環(huán)104中的存儲器單元的陣列上執(zhí)行修復(fù)活動。
圖3是說明根據(jù)本發(fā)明的一個示例性實施例的eFuses組的示例性示圖。如圖3所示,eFuses組300包括eFuses320的掃描鏈310,掃描鏈310基于元件陣列的測試階段的結(jié)果可以被編程。如上所述,該測試階段表示有故障或有缺陷的元件需要被代替,或被陣列中的冗余元件代替。該信息被輸出作為該測試階段的結(jié)果,作為陣列冗余數(shù)據(jù)。該陣列冗余數(shù)據(jù)被寫入用于之后在集成電路裝置的通電時在加載元件的陣列中使用的部分eFuses組300中。以此方式,可以執(zhí)行修復(fù)活動,用于用冗余陣列元件代替測試過程中識別的有缺陷或有故障的陣列元件。
如上所述,在測試過程中,可能有許多測試階段,每個測試階段產(chǎn)生需要被存儲在集成電路裝置上的陣列冗余數(shù)據(jù),用于之后在集成電路裝置的通電過程中使用。在已知的集成電路裝置中,這種陣列冗余數(shù)據(jù)必須被存儲在用于每個測試階段的eFuses或激光熔絲的分立組中。但是,利用本發(fā)明,提供允許將來自多個測試階段的陣列冗余數(shù)據(jù)存儲在相同的單組eFuses中的機(jī)制。
如圖3所示,提供讀取掃描鏈310和寫入掃描鏈315。讀取掃描鏈310用來確定什么被寫入eFuses320。寫入掃描鏈315用來更新eFuses320中存儲的數(shù)據(jù)。
使用鎖存器350-385允許當(dāng)將附加的陣列冗余數(shù)據(jù)寫入eFuses組300時,測試計算機(jī)的控制邏輯399以確定eFuses組300的哪些部分應(yīng)該跳過。因此,例如,在第一測試階段過程中,掃描鏈315可以加載有編程(寫入)eFuses320中的冗余數(shù)據(jù)。當(dāng)eFuses320被讀取時,鎖存器350-360返回存儲的編碼值,該編碼值表示它們的相應(yīng)eFuses320已經(jīng)用陣列冗余數(shù)據(jù)編程。在后續(xù)測試階段中,附加的陣列冗余數(shù)據(jù)可能需要被寫入eFuses組300。在確定在哪里開始寫入這種陣列冗余數(shù)據(jù)中,控制邏輯399可以讀取來自的鎖存器350-385的值,以確定在eFuses組300中存在掃描鏈310中的第一未編程的efuse320。另外,具有代碼“FE”的標(biāo)記可以被寫入,例如,以表示特定測試階段的數(shù)據(jù)的結(jié)束。然后控制邏輯390可以在第一未編程的eFuse320處開始寫入來自后續(xù)測試階段的陣列冗余數(shù)據(jù)。對于每個后續(xù)測試階段,該處理可以被重復(fù),以便在單組eFuses300中存儲來自多個測試階段的陣列冗余數(shù)據(jù)。
在陣列冗余數(shù)據(jù)寫入eFuses組300的過程中,使用先前所述的命令,將陣列冗余數(shù)據(jù)壓縮并存儲在eFuses組300的掃描鏈315中。此后,如上所述的各種位代碼被寫入eFuses組300,作為編碼的陣列冗余數(shù)據(jù)。因此,例如,如果9位的實際數(shù)據(jù)被寫入eFuses組300,那么位代碼1000被寫入與該實際數(shù)據(jù)相關(guān)的eFuses組300。
在解壓縮和加載時,通過簡單地將適當(dāng)?shù)奈淮a寫入存儲器以使零被移動到陣列冗余數(shù)據(jù)環(huán)中,可以消除大批零被寫入eFuses組300。因此,例如,代替將9個零寫入eFuses組300中,位代碼0101可以被寫入eFuses組300中,使得9個零被移動到陣列冗余數(shù)據(jù)環(huán)中,而不必須從eFuses組300讀取零。這允許實際數(shù)據(jù)串被連續(xù)地存儲在eFuses組300中,通過相應(yīng)的位代碼插入零串。因此,從寫入eFuses組300的數(shù)據(jù)除去零串,以及在eFuses組300中存儲的整個陣列冗余數(shù)據(jù)被壓縮。
用于eFuse的缺省未編程值是0。當(dāng)用于特定測試階段的所有陣列冗余數(shù)據(jù)被寫入eFuse組300時,相應(yīng)的“e-Fuse數(shù)據(jù)的結(jié)束”位代碼被寫入eFuses組300,以表示對于該測試階段,陣列冗余數(shù)據(jù)的結(jié)束。為了清楚地定義數(shù)據(jù)的結(jié)束,例如,可以使用“FE“的標(biāo)記。該標(biāo)記簡單地使控制邏輯399更容易清楚地識別特定測試階段的數(shù)據(jù)的結(jié)束。然后可以以類似的方式使用下一個未編程的eFuse320,將用于下一個測試階段的陣列冗余數(shù)據(jù)寫到eFuses組300。在將下一個測試階段的陣列冗余數(shù)據(jù)寫到eFuses組300時,已用來自前一測試階段的陣列冗余數(shù)據(jù)編程的哪些eFuses必須被跳過。結(jié)果,圖2中所示的跳躍命令可以被寫入,用于對于該測試階段從eFuses組300讀出陣列冗余數(shù)據(jù)時,識別將要跳躍的eFuses組300的一部分。因此,例如,使用位代碼1101的長跳躍命令可以用來跳躍eFuses組300的一部分,以便從后續(xù)測試階段解壓縮和加載陣列冗余數(shù)據(jù)。然后基于為eFuses組300的所述部分存儲的位代碼的特定組,可以以如上所述的類似方式開始陣列冗余數(shù)據(jù)的解壓縮和加載。
跳躍命令執(zhí)行兩件事。首先,它允許通過跟隨8或4位的長或短跳躍命令簡明地編碼該陣列冗余數(shù)據(jù),該長或短跳躍命令規(guī)定跳躍多少位(上至255或上至15位)。其次,當(dāng)加載實際陣列冗余數(shù)據(jù)環(huán)時,它允許多遍,因為每遍可以容易地跳躍大批數(shù)據(jù),保留先前數(shù)據(jù)在合適位置用于哪些元件。因此,對于每個測試階段,可以在eFuses組中編碼用于整個陣列冗余數(shù)據(jù)環(huán)的整個陣列冗余數(shù)據(jù)。然后可以在多遍中加載該陣列冗余數(shù)據(jù),一遍對于用于產(chǎn)生陣列冗余數(shù)據(jù)的每個測試階段。后續(xù)遍將“跳躍”任意先前寫入的數(shù)據(jù),以便每遍僅僅加載附加的故障/缺陷元件。
因此,利用本發(fā)明,與eFuses組中的掃描鏈的eFuses相關(guān)的鎖存器允許識別哪些eFuses已被當(dāng)前或先前測試階段預(yù)先編程。本發(fā)明的編碼/解碼機(jī)制的跳躍命令允許跳躍部分eFuses組300,以便訪問由不同的測試階段產(chǎn)生的陣列冗余數(shù)據(jù)。這兩種機(jī)制的結(jié)合允許在單組eFuses 300中存儲由集成電路裝置或微處理器中的元件陣列的多個測試階段產(chǎn)生的陣列冗余數(shù)據(jù)。結(jié)果,通過本發(fā)明的機(jī)制節(jié)省芯片上的面積,導(dǎo)致裝置的成本減少以及降低操作裝置需要的功率。
作為本發(fā)明的示例性實施例的操作實例,假定有兩遍測試處理,以及在第一遍測試中,未編碼的陣列冗余數(shù)據(jù)串是00000000RA000000000RARA00000000000000000000000000。零是陣列冗余數(shù)據(jù)環(huán)的缺省值,因此,跳躍命令可以用來壓縮/編碼該數(shù)據(jù)。編碼上述陣列冗余數(shù)據(jù)將產(chǎn)生1100 1000 0111 RA 1100 1001 1010 RARA 110100011010。
在第二遍測試中,可以探測存儲器陣列中的新故障。例如,在第二遍中,以下未編碼的陣列冗余數(shù)據(jù)串可以是00000000RARA000000000RA000000000000000,具有用粗體示出的新故障數(shù)據(jù)。編碼該陣列冗余數(shù)據(jù)將產(chǎn)生1100 1000 0111 RA 1100 1001 1010RARA 0101 RA 1100 1111。應(yīng)當(dāng)注意移動9個零代碼也可以跳躍9個代碼,由于陣列冗余數(shù)據(jù)環(huán)的缺省值是零。
利用上面的兩遍,寫入eFuses組的數(shù)據(jù)如下1100 1000 0111 RA 11001001 1010 RARA 1101 00011010 1100 1000 0111 RA 1100 1001 1010 RARA0101 RA 1100 1111,粗體代碼表示第二遍測試的編碼陣列冗余數(shù)據(jù)。
利用該編碼的陣列冗余數(shù)據(jù),通電控制和陣列冗余解壓縮單元110可以兩次經(jīng)過eFuses組120中存儲的陣列冗余環(huán),以解碼和重新加載用于在存儲器陣列132-140上執(zhí)行修復(fù)活動的陣列冗余數(shù)據(jù)。在第一遍過程中,上面非加粗的數(shù)據(jù)被讀取、解碼和加載到陣列冗余數(shù)據(jù)環(huán)104中。在第二遍過程中,上面加粗的數(shù)據(jù)被讀取、解碼和加載到陣列冗余數(shù)據(jù)環(huán)104中。如果第三次測試已經(jīng)被執(zhí)行,那么編碼的陣列冗余數(shù)據(jù)可以連接在上面編碼的數(shù)據(jù)上,以使得冗余數(shù)據(jù)環(huán)被經(jīng)過三次。
對于陣列冗余數(shù)據(jù)環(huán)的每次編碼,整個陣列冗余環(huán)被編碼,以便保持用于解碼的數(shù)據(jù)的對準(zhǔn)。上面的實例是簡單遍,后續(xù)遍測試被連接到來自先前測試階段的先前編碼的數(shù)據(jù)結(jié)果。本發(fā)明的編碼方案也允許提供執(zhí)行更復(fù)雜的更新的能力??梢詢H僅增加新的故障數(shù)據(jù)或新的修復(fù)活動和/或代替先前的故障數(shù)據(jù)或修復(fù)活動。跳躍、移動零和移動實際數(shù)據(jù)命令可以允許,以產(chǎn)生這種編碼算法。該編碼方案是靈活的和允許多種方法產(chǎn)生多遍修復(fù)。
圖4和5是說明根據(jù)本發(fā)明的一個示例性實施例,用于將陣列冗余數(shù)據(jù)寫到單組eFuses和/從單組eFuses讀取陣列冗余數(shù)據(jù)的操作的流程圖。應(yīng)當(dāng)理解所示的流程圖的每個方框和流程圖中的方框的組合可以通過計算機(jī)程序指令來實現(xiàn)。這些計算機(jī)程序指令可以提供給處理器或其它可編程數(shù)據(jù)處理裝置,以產(chǎn)生一機(jī)器,以便在處理器或其它可編程數(shù)據(jù)處理裝置上執(zhí)行的指令產(chǎn)生用于實現(xiàn)流程圖方框或多個方框中規(guī)定的功能的手段。這些計算機(jī)程序指令也可以被存儲在計算機(jī)可讀存儲器或存儲介質(zhì)中,其可以指示處理器或其它可編程數(shù)據(jù)處理裝置以特定的方式執(zhí)行功能,以便在計算機(jī)-可讀存儲器或存儲介質(zhì)中存儲的指令產(chǎn)生包括指令手段的制造品,指令手段實現(xiàn)流程圖方框或多個方框中規(guī)定的功能。
由此,所示的流程圖的方框支持用于執(zhí)行規(guī)定功能的手段的組合、用于執(zhí)行規(guī)定功能的步驟的組合和用于執(zhí)行規(guī)定的功能的程序指令手段。也應(yīng)該理解圖示的流程圖的每個方框和圖示的流程圖中的方框組合可以通過基于計算機(jī)系統(tǒng)的專用硬件或通過專用硬件和計算機(jī)指令的結(jié)合實現(xiàn),基于計算機(jī)系統(tǒng)的專用硬件執(zhí)行規(guī)定的功能或步驟。
圖4是概述根據(jù)本發(fā)明的一個示例性實施例,用于在單組eFuses中存儲陣列冗余數(shù)據(jù)的示例性操作的流程圖。圖4中概述的操作可以通過與測試計算機(jī)相關(guān)的控制邏輯來執(zhí)行,用于將編碼的陣列冗余數(shù)據(jù)存儲在eFuses組中,如上所述。
如圖4所示,通過測試元件陣列開始操作,以確定哪些元件是有缺陷的(步驟410)。該步驟可以用公知技術(shù)中的公知方式通過陣列測試接口102來完成。然后產(chǎn)生陣列冗余數(shù)據(jù)環(huán)(步驟420)。陣列冗余數(shù)據(jù)環(huán)包含例如確定哪些有缺陷的元件被映射到集成電路裝置上的冗余元件的數(shù)據(jù)。
此后,陣列冗余數(shù)據(jù)被壓縮/編碼(步驟430)。該壓縮/編碼可以使用如上所述的命令來執(zhí)行,參考圖2。在壓縮/編碼之后,用此后論述的步驟440-480中概述的方式,將陣列冗余數(shù)據(jù)寫到eFuses組。
讀取與eFuses組的下一個eFuse相關(guān)的鎖存器中存儲的值(步驟440)。確定該值是否表示eFuse已被預(yù)先編程(步驟450)。倘若如此,該操作返回步驟440并讀取用于下一個eFuse的鎖存器的值。該處理繼續(xù),直到一個eFuse被識別,沒有被當(dāng)前或先前測試階段編程。
如果與下一個eFuse相關(guān)的鎖存器中存儲的值表示該eFuse沒有被預(yù)先編程,那么該陣列冗余數(shù)據(jù)被連續(xù)地寫入eFuses組中,以識別的第一未編程eFuse位置為起點(步驟460)。
然后當(dāng)用于該測試階段的所有陣列冗余數(shù)據(jù)被寫入eFuses組時,該操作終止。對于每個后續(xù)的測試階段,該處理可以被重復(fù),步驟440和450保證來自后續(xù)測試階段的陣列冗余數(shù)據(jù)被寫到相同eFuses組的不同部分。
作為已知技術(shù),將數(shù)據(jù)寫到eFuses涉及燒斷eFuses表示“1”和在它們的缺省狀態(tài)中保留eFuses表示“0”值。但是,可以采取相反的方法,在例如其中eFuse的燒斷實際地能夠電接觸的反eFuses的情況下,由此表示“0”,缺省狀態(tài)表示“1”。盡管依據(jù)單組eFuses的使用描述了本發(fā)明,但是本發(fā)明的機(jī)制還可以應(yīng)用于包括激光熔絲、標(biāo)準(zhǔn)存儲器件等的其它存儲器件,該器件可以被設(shè)置在集成電路裝置或微處理裝置自身上。
圖5是概述根據(jù)本發(fā)明的一個示例性實施例,用于從單組eFuses讀取陣列冗余數(shù)據(jù)和將陣列冗余數(shù)據(jù)加載到陣列冗余數(shù)據(jù)環(huán)中的示例性操作的流程圖。每當(dāng)集成電路裝置或微處理裝置被通電時可以執(zhí)行圖5中概述的操作。圖5中概述的操作可以通過圖1中的通電控制和陣列冗余數(shù)據(jù)解壓縮邏輯110來執(zhí)行。
如圖5所示,該操作從集成電路裝置或微處理裝置的通電開始(步驟510)。來自整個eFuses組的陣列冗余數(shù)據(jù)被加載到通電控制和陣列冗余解壓縮邏輯裝置中(步驟520)。然后通電控制和陣列冗余解壓縮邏輯裝置解壓縮(解碼)該數(shù)據(jù)并重新加載該數(shù)據(jù)到陣列冗余數(shù)據(jù)環(huán)中(步驟530)。
該解壓縮(解碼)處理可以包括基于在eFuses組中存儲的位代碼執(zhí)行操作,eFuses組中存儲的位代碼用于eFuses組中的陣列冗余數(shù)據(jù)。因此,上面參考圖2論述的各種命令可以被執(zhí)行,以便適當(dāng)?shù)卦L問來自各個測試階段的陣列冗余數(shù)據(jù)并將該數(shù)據(jù)加載到陣列冗余數(shù)據(jù)環(huán)中。例如,可以基于被執(zhí)行以產(chǎn)生eFuses組中存儲的陣列冗余數(shù)據(jù)的測試階段的數(shù)目以多遍執(zhí)行該解壓縮(解碼)處理。因此,如果在eFuses組中存儲的陣列冗余數(shù)據(jù)用于三個測試階段,那么可以執(zhí)行三遍將陣列冗余數(shù)據(jù)加載到陣列冗余數(shù)據(jù)環(huán)中。每遍可以包括跳躍命令的使用,以跳過由先前測試階段產(chǎn)生的陣列冗余數(shù)據(jù)。結(jié)果,對于每附加遍,僅僅增加附加的故障/有缺陷的元件數(shù)據(jù)。
然后使用陣列冗余數(shù)據(jù)環(huán)來映射有缺陷的元件到集成電路裝置或微處理器裝置上的冗余元件(步驟540)。然后該操作終止。
因此,本發(fā)明提供一種用于允許單組eFuses、激光熔絲或其它存儲器件存儲來自集成電路裝置或微處理器裝置的多個測試階段的陣列冗余數(shù)據(jù)的機(jī)制。由于本發(fā)明的操作僅僅需要單組eFuses,用于陣列冗余數(shù)據(jù)的存儲的芯片上的面積和浪費的空間被最小化。而且,通過減小這種芯片上的存儲器件需要的面積,器件的成本和功耗被最小化。
如上所述的電路是集成電路芯片的設(shè)計的一部分。芯片設(shè)計用圖形的計算機(jī)程序語言產(chǎn)生,并存儲在計算機(jī)存儲介質(zhì)(如盤、帶、物理硬驅(qū)動器或如在存儲存取網(wǎng)絡(luò)中的虛擬硬驅(qū)動器)中。如果設(shè)計者沒有制造芯片或用來制造芯片的光刻掩模,那么設(shè)計者通過物理裝置(例如通過提供存儲該設(shè)計的存儲介質(zhì)的拷貝)或電子地(例如,通過互聯(lián)網(wǎng))直接或間接地將所得的設(shè)計傳送到這種實體。然后存儲的設(shè)計被轉(zhuǎn)變?yōu)橛糜诠饪萄谀5闹圃斓暮线m格式(例如,GDSII),典型地包括將要在晶片上形成的正被討論的芯片設(shè)計的多個拷貝。光刻掩模用來限定將被刻蝕或另外處理的晶片(和/或其上的層)的區(qū)域。
所得的集成電路芯片可以被制造商以原始晶片形式(亦即,如具有多個未封裝芯片的單個晶片)作為裸管芯或以封裝形式分配。在后一種情況中,芯片被安裝在單芯片封裝(如塑料載體,具有固定到母板或其它高層載體的引線)中或安裝在多芯片封裝(如具有兩個表面互連或掩埋的互連的陶瓷載體)中。在任何情況下,然后該芯片與其它芯片、分立電路元件和/或其它信號處理器件集成作為(a)中間產(chǎn)品如母板或(b)最終產(chǎn)品的一部分。最終產(chǎn)品可以是包括集成電路芯片的任意產(chǎn)品,范圍從玩具及其它低端應(yīng)用到具有顯示器、鍵盤或其它輸入裝置的高級計算機(jī)產(chǎn)品和中央處理器。
應(yīng)該理解本發(fā)明的編碼/解碼機(jī)制可以采取完全硬件實施例、完全軟件實施例或包含硬件和軟件元件的實施例的形式。此外,本發(fā)明的編碼/解碼機(jī)制可以采取可由提供程序代碼的計算機(jī)可用或計算機(jī)可讀介質(zhì)訪問的計算機(jī)程序產(chǎn)品的形式,與計算機(jī)或任意指令執(zhí)行系統(tǒng)結(jié)合使用。為了該說明書的描述,計算機(jī)可用或計算機(jī)可讀的介質(zhì)可以是包含、存儲、通信、傳播或傳輸該程序的任意裝置,與指令執(zhí)行系統(tǒng)、裝置或設(shè)備結(jié)合使用。
該介質(zhì)可以是電、磁、光、電磁、紅外或半導(dǎo)體系統(tǒng)(或裝置或設(shè)備)或傳播介質(zhì)。計算機(jī)可讀介質(zhì)的例子包括半導(dǎo)體或固態(tài)存儲器、磁帶、可移動的計算機(jī)磁盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、硬磁盤和光盤。光盤的當(dāng)前例子包括光盤-只讀存儲器(CD-ROM),光盤-讀/寫(CD-R/W)和DVD。
在優(yōu)選實施例中,編碼機(jī)制可以包括適合于存儲和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng),其包括通過系統(tǒng)總線直接或間接地連接到存儲器元件的至少一個處理器。該存儲器元件可以包括程序代碼的實際執(zhí)行過程中采用的本地存儲器、大容量存儲和高速緩存存儲器,其提供至少某些程序代碼的臨時性存儲,以便減小在執(zhí)行過程中必須從大容量存儲取回(retrieved)的時間代碼的數(shù)目。
本發(fā)明的描述為了說明和描述目的,并不旨在詳盡或局限公開的發(fā)明形式。許多改進(jìn)和變化對所屬領(lǐng)域的普通技術(shù)人員來說是顯而易見的。選擇和描述實施例以最好地解釋本發(fā)明的原理和實際應(yīng)用,并使所屬領(lǐng)域的其它普通技術(shù)人員能夠理解,具有各種改進(jìn)的各個實施例適于所希望的特定使用。
權(quán)利要求
1.一種集成電路裝置上的裝置,用于在所述集成電路裝置上存儲陣列冗余數(shù)據(jù),包括單組存儲器件,用于存儲用于所述集成電路裝置的多個測試階段的陣列冗余數(shù)據(jù);以及控制邏輯,用于控制在所述單組存儲器件中存儲的編碼陣列冗余數(shù)據(jù)的解碼,其中在所述單組存儲器件中存儲的所述編碼陣列冗余數(shù)據(jù)是由在所述集成電路裝置上提供的一個或多個器件陣列的多個測試階段產(chǎn)生的陣列冗余數(shù)據(jù)。
2.根據(jù)權(quán)利要求1的裝置,其中所述單組存儲器件是電熔絲組。
3.根據(jù)權(quán)利要求1的裝置,其中所述編碼陣列冗余數(shù)據(jù)包括識別所述編碼陣列冗余數(shù)據(jù)的壓縮方法的位代碼。
4.根據(jù)權(quán)利要求1的裝置,其中所述單組存儲器件被布置為存儲器件的掃描鏈,以及其中每個存儲器件具有相關(guān)的鎖存器,所述鎖存器存儲表示所述存儲器件是否已被預(yù)先編程或未編程的值。
5.根據(jù)權(quán)利要求3的裝置,其中所述位代碼包括跳躍位代碼,用于跳躍所述存儲器件組的一部分,以由此訪問除第一測試階段以外的測試階段的編碼陣列冗余數(shù)據(jù)。
6.根據(jù)權(quán)利要求1的裝置,其中在所述一個或多個器件陣列中的每個器件陣列包括至少一個冗余器件,用于代替所述陣列中的另一器件,以及其中,所述陣列冗余數(shù)據(jù)識別所述一個或多個器件陣列中的故障器件,所述故障器件需要用冗余器件來代替。
7.根據(jù)權(quán)利要求6的裝置,其中所述控制邏輯解碼所述編碼陣列冗余數(shù)據(jù)并將所述解碼的陣列冗余數(shù)據(jù)加載到所述一個或多個器件陣列中,以便在所述一個或多個器件陣列上執(zhí)行一個或多個修復(fù)活動。
8.根據(jù)權(quán)利要求6的裝置,還包括測試裝置;以及測試接口,連接到所述一個或多個器件陣列和所述測試裝置,其中所述測試裝置通過所述測試接口在所述一個或多個器件陣列上執(zhí)行多個測試階段,由此產(chǎn)生多組陣列冗余數(shù)據(jù),并通過所述測試接口將所述多組陣列冗余數(shù)據(jù)輸出到用于分析的外部計算裝置。
9.根據(jù)權(quán)利要求8的裝置,還包括存儲器件接口,連接到所述存儲器件組和所述外部計算裝置,其中在所述外部計算裝置中的控制邏輯編碼所述陣列冗余數(shù)據(jù)并通過所述存儲器件接口將所述編碼的陣列冗余數(shù)據(jù)寫到所述存儲器件組。
10.根據(jù)權(quán)利要求9的裝置,其中在所述外部計算裝置中的控制邏輯讀取在與所述存儲器件組中的存儲器件相關(guān)的鎖存器中存儲的值,以識別未編程的第一存儲器件并在所述未編程的第一存儲器件處開始將來自測試階段的所述編碼陣列冗余數(shù)據(jù)寫到所述存儲器件組。
11.一種在數(shù)據(jù)處理系統(tǒng)中用于在集成電路裝置上的單組存儲器件中存儲編碼陣列冗余數(shù)據(jù)的方法,包括以下步驟接收來自外部計算裝置的編碼陣列冗余數(shù)據(jù),其中所述編碼陣列冗余數(shù)據(jù)用于在所述集成電路裝置上的一個或多個器件陣列的多個測試階段中的一個測試階段;識別所述單組存儲器件中的第一未編程的存儲器件;以及在所述第一未編程的存儲器件處開始在所述單組存儲器件中存儲所述編碼陣列冗余數(shù)據(jù),其中所述單組存儲器件存儲用于所述多個測試階段的每個階段的編碼陣列冗余數(shù)據(jù)。
12.根據(jù)權(quán)利要求11的方法,其中所述單組存儲器件是電熔絲組。
13.根據(jù)權(quán)利要求11的方法,其中所述編碼陣列冗余數(shù)據(jù)包括識別所述編碼陣列冗余數(shù)據(jù)的壓縮方法的位代碼。
14.根據(jù)權(quán)利要求11的方法,其中所述單組存儲器件被布置為存儲器件的掃描鏈,以及其中每個存儲器件具有相關(guān)的鎖存器,所述鎖存器存儲表示所述存儲器件是否已被預(yù)先編程或未編程的值,以及其中識別第一未編程的存儲器件包括掃描所述掃描鏈,以檢測在所述單組存儲器件的所述鎖存器中存儲的所述值。
15.根據(jù)權(quán)利要求13的方法,其中所述位代碼包括跳躍位代碼,用于跳躍所述存儲器件組的一部分,以由此訪問除第一測試階段以外的測試階段的編碼陣列冗余數(shù)據(jù)。
16.根據(jù)權(quán)利要求11的方法,其中在所述一個或多個器件陣列中的每個器件陣列包括至少一個冗余器件,用于代替所述陣列中的另一器件,以及其中,所述陣列冗余數(shù)據(jù)識別所述一個或多個器件陣列中的故障器件,所述故障器件需要用冗余器件來代替。
17.根據(jù)權(quán)利要求16的方法,還包括以下步驟解碼所述單組存儲器件中的所述編碼陣列冗余數(shù)據(jù);以及將所述解碼的陣列冗余數(shù)據(jù)加載到所述一個或多個器件陣列中,以便在所述一個或多個器件陣列上執(zhí)行一個或多個修復(fù)活動。
18.根據(jù)權(quán)利要求17的方法,其中所述解碼和加載步驟執(zhí)行多遍,以及其中所述遍數(shù)等于用于產(chǎn)生在所述單組存儲器件中存儲的所述編碼陣列冗余數(shù)據(jù)的測試階段的數(shù)目。
19.一種集成電路裝置,包括電熔絲組;多個存儲器陣列,其中每個存儲器陣列包括多個存儲器單元,以及其中所述多個存儲器單元包括至少一個冗余存儲器單元;通電控制和陣列冗余解壓縮單元,連接到所述電熔絲組和所述多個存儲器陣列中的至少一個存儲器陣列;以及陣列內(nèi)建自測試單元,連接到所述多個存儲器陣列,其中所述陣列內(nèi)建自測試單元在所述多個存儲器陣列上執(zhí)行多個測試階段,以產(chǎn)生陣列冗余數(shù)據(jù),所述用于所有測試階段的陣列冗余數(shù)據(jù)被編碼并存儲在所述電熔絲組中,以及在所述集成電路裝置通電時,所述通電控制和陣列冗余解壓縮單元解碼所述電熔絲組中的編碼陣列冗余數(shù)據(jù)并將所述解碼的陣列冗余數(shù)據(jù)加載到所述多個存儲器陣列中,以執(zhí)行一個或多個修復(fù)活動。
20.根據(jù)權(quán)利要求19的集成電路裝置,還包括陣列測試接口,連接到所述多個存儲器陣列中的至少一個存儲器陣列;以及電熔絲測試接口,連接到所述電熔絲組,其中所述陣列測試接口將陣列冗余數(shù)據(jù)從所述多個存儲器陣列輸出到用于分析的外部計算裝置,以及其中所述電熔絲測試接口接收來自所述外部計算裝置的編碼陣列冗余數(shù)據(jù),用于存儲在所述電熔絲組中。
全文摘要
提供了一種使用單組電熔絲(eFuses)連續(xù)地存儲由多個測試階段獲得的測試數(shù)據(jù)的裝置和方法。為了在相同eFuses組中編碼和存儲來自每個后續(xù)測試的陣列冗余數(shù)據(jù),使用掃描鏈上的鎖存器,保持用于每個eFuse的編程信息。所述鎖存器允許在每個測試階段過程中僅僅編程部分eFuses。而且,在eFuses中編程的數(shù)據(jù)可以被檢測和讀出作為掃描鏈的一部分。因此,可以容易地確定eFuses組的哪些部分已被先前測試階段編程和在哪里開始將下一組數(shù)據(jù)編程到eFuses組中。結(jié)果,單組eFuses存儲來自多個測試階段的多組數(shù)據(jù)。
文檔編號G11C29/44GK1881476SQ20061008854
公開日2006年12月20日 申請日期2006年6月2日 優(yōu)先權(quán)日2005年6月6日
發(fā)明者M·W·賴?yán)?申請人:國際商業(yè)機(jī)器公司