專利名稱:嵌入式dram陣列的測試方法
技術(shù)領(lǐng)域:
本發(fā)明涉及集成電路芯片領(lǐng)域;更具體地說,它涉及使用基于處理器的內(nèi)置自測試(BIST)對在邏輯電路中嵌入有動態(tài)隨機(jī)存取存儲器(DRAM)的集成電路芯片進(jìn)行測試的方法。
背景技術(shù):
具有諸如門陣列、微處理器、數(shù)字信號處理器(DSP)和專用集成電路(ASIC)等邏輯功能的高級集成芯片需要DRAM嵌入實(shí)現(xiàn)其功能的邏輯中。BIST開始時是為測試邏輯電路開發(fā)的并已擴(kuò)展成還測試嵌入的DRAM。
典型的嵌入式DRAM包含多個存儲器單元陣列塊。測試嵌入式DRAM需要特殊的測試模式,被設(shè)計成識別特殊類型的故障。對使用電容存儲節(jié)點(diǎn)器件的嵌入式DRAM單元特別重要的一種測試是保持時間測試。保持時間是在由于存儲節(jié)點(diǎn)電荷泄漏使得單元狀態(tài)變得不確定之前存儲器單元將保持其狀態(tài)的時間。
保持時間測試需要向一個塊中讀入一個模式(pattern),測試暫停一段固定長的時間,然后讀出一個模式并將讀出的模式與一個預(yù)期的模式進(jìn)行比較。對嵌入式DRAM中的每塊存儲器單元陣列順序地重復(fù)這一寫、暫停、讀和比較序列。暫停時間通常比寫步驟或讀與比較步驟長1000倍。
隨著嵌入式DRAM尺寸的增大,特別是每個DRAM中存儲器單元陣列塊數(shù)的增加,測試時間也增加了。測試時間已成為門陣列、微處理器、DSP及ASIC成本的重要增加者。增加的測試時間還對生產(chǎn)率產(chǎn)生相反作用。
所以,在工業(yè)界需要一種方法,以減少在諸如門陣列、微處理器、DSP和ASIC之類集成電路芯片中對嵌入式DRAM進(jìn)行測試的時間。
發(fā)明內(nèi)容
本發(fā)明的第一方面是測試DRAM的方法,該DRAM包含多個DRAM塊,該方法包含在一個基于處理器的內(nèi)置自測試系統(tǒng)中產(chǎn)生一個測試數(shù)據(jù)模式;對每個DRAM塊,將該測試數(shù)據(jù)模式寫入該DRAM塊,暫停一段預(yù)先確定的時間并從該DRAM塊中讀出結(jié)果數(shù)據(jù)模式;其中對每個DRAM塊,將測試模式寫入DRAM塊是在暫停一段預(yù)先確定的時間之前進(jìn)行的,而從DRAM塊中讀出結(jié)果數(shù)據(jù)模式是在暫停一段預(yù)先確定的時間之后進(jìn)行的;而且其中兩個或更多個DRAM塊的預(yù)先確定的暫停時間段至少有一部分在時間上是重疊的。
本發(fā)明的第二方面是測試嵌入式DRAM的基于處理器的內(nèi)置自測試系統(tǒng),該嵌入式DRAM包括多個DRAM塊,每個DRAM塊包含多個字線和位線,該測試系統(tǒng)包含產(chǎn)生測試數(shù)據(jù)模式的裝置;同時將測試數(shù)據(jù)模式寫入每個DRAM塊的裝置;在從測試數(shù)據(jù)寫入每個DRAM塊起已經(jīng)經(jīng)過預(yù)先確定的時間段之后從每個DRAM塊讀出結(jié)果數(shù)據(jù)模式的裝置,這種讀出是從這多個DRAM塊的第一個DRAM塊到最后一個DRAM塊順序發(fā)生的,這多個DRAM塊中任何前一個DRAM塊的讀出都是在讀這多個DRAM塊中的隨后一個DRAM塊之前完成的;把對每個DRAM塊掃描出的數(shù)據(jù)存儲到寄存器上的裝置,掃描出的數(shù)據(jù)包含每個DRAM塊的結(jié)果數(shù)據(jù)模式或根據(jù)結(jié)果數(shù)據(jù)模式得到的信息;以及掃描出這些掃描出數(shù)據(jù)的裝置,對多個DRAM塊的前一個DRAM塊的任何先前掃描出數(shù)據(jù)的掃描出都是在這多個DRAM塊中的隨后一個DRAM塊的掃描出數(shù)據(jù)的掃描入之前完成的。
本發(fā)明的第三方面是測試嵌入式DRAM的基于處理器的內(nèi)置自測試系統(tǒng),該嵌入式DRAM包括多個DRAM塊,每個DRAM塊包含多個字線和位線,該測試系統(tǒng)包含產(chǎn)生測試數(shù)據(jù)模式的裝置;從多個DRAM塊的第一個DRAM塊到最后一個DRAM塊順序向每個DRAM塊寫入測試數(shù)據(jù)模式的裝置;向多個DRAM塊中的前一個DRAM塊寫數(shù)據(jù)是在向其隨后的一個DRAM塊寫數(shù)據(jù)之前完成的;在從測試數(shù)據(jù)寫入每個DRAM塊起已經(jīng)經(jīng)過預(yù)先確定的時間段之后從每個DRAM塊讀出結(jié)果數(shù)據(jù)模式的裝置,這種讀出是從這多個DRAM塊的第一個DRAM塊到最后一個DRAM塊順序發(fā)生的,這多個DRAM塊中任何前一個DRAM塊的讀出都是在讀這多個DRAM塊中的隨后一個DRAM塊之前完成的;把對每個DRAM塊掃描出的數(shù)據(jù)存儲到多個存儲寄存器中的不同存儲寄存器上的裝置,掃描出的數(shù)據(jù)包含每個DRAM塊的結(jié)果數(shù)據(jù)模式或根據(jù)結(jié)果數(shù)據(jù)模式得到的信息,對這多個DRAM塊的前一個DRAM塊進(jìn)行的掃描出數(shù)據(jù)的存儲是在對這多個DRAM塊中的隨后一個DRAM塊的掃描出數(shù)據(jù)的存儲之前完成的。
在所附權(quán)利要求中提出了本發(fā)明的特性。然而,結(jié)合附圖參考下文中對實(shí)施例的詳細(xì)描述將會最好地理解發(fā)明本身,其中圖1是一個嵌入式DRAM存儲器及根據(jù)本發(fā)明第一實(shí)施例的測試系統(tǒng)的示意方框圖;圖2顯示根據(jù)本發(fā)明第一實(shí)施例測試一個嵌入式DRAM的寫-暫停-讀序列;圖3是一個嵌入式DRAM存儲器和根據(jù)本發(fā)明第二實(shí)施例的測試系統(tǒng)的示意方框圖;圖4是根據(jù)圖3的冗余分配存儲裝置存儲的示意方框圖;圖5是示意方框圖,顯示根據(jù)圖4的冗余分配存儲裝置在存儲時使用的時鐘信號;圖6是圖5電路的時鐘信號的時序圖;圖7是圖4的冗余分配寄存器和串行接口寄存器之間互連的示意圖;圖8顯示根據(jù)本發(fā)明第二實(shí)施例測試一個嵌入式DRAM的寫-暫停-讀序列;圖9是本發(fā)明第二實(shí)施例的物理實(shí)現(xiàn)的示意圖。
具體實(shí)施例方式
一個DRAM是由按行和列排列的存儲單元陣列構(gòu)成的。DRAM通過沿行方向安排的字線編址,而數(shù)據(jù)通過沿列方向安排的位線寫入DRAM。為訪問DRAM進(jìn)行讀或?qū)懀枰せ钸m當(dāng)?shù)淖志€和選擇適當(dāng)?shù)奈痪€(往往稱作列選擇)。若干組字線組合形成存儲器塊。通常,每個存儲器塊能單獨(dú)地接收地址信息。DRAM包括冗余的字線和位線,它們可以“代替”含有失效單元的原始字線和位線?!按妗笔峭ㄟ^斷掉熔絲對地址信息進(jìn)行重定向完成的。
圖1是一個嵌入式DRAM存儲器和根據(jù)本發(fā)明第一實(shí)施例的測試系統(tǒng)的示意方框圖。在圖1中,嵌入式DRAM 100包含多個DRAM塊105A、105B、105C至105N。按地址順序,DRAM塊105A是嵌入式DRAM 100的第一個DRAM塊,DRAM塊105N是最后一個DRAM塊。盡管圖1中顯示的DRAM塊105A至105N被安排成一個在另一個之上的堆疊,但DRAM塊的物理布局可以是不同的,例如,DRAM塊可以安排在相鄰的兩堆疊中。嵌入式DRAM 100與一個內(nèi)置自測試(BIST)系統(tǒng)110耦合。用于嵌入式DRAM的基于BIST的測試器已在美國專利5,961,653中描述,該專利在這里被納入作為參考。測試系統(tǒng)110由定序器115、地址發(fā)生器120、測試數(shù)據(jù)發(fā)生器125、控制器130、多路轉(zhuǎn)換器135、比較器140、冗余分配邏輯145及冗余分配寄存器150構(gòu)成,它們都與測試總線155耦合。另一種作法是,寄存器135可納入DRAM 100。
定序器115包含測試指令,定序器在內(nèi)部或外部處理器或微處理器控制下把這些測試指令匯編到測試模式中。地址發(fā)生器120包括列地址計數(shù)器(位線)、行地址計數(shù)器(字線)以及DRAM塊地址計數(shù)器,每個由測試總線155驅(qū)動,用于對測試周期計數(shù)。測試數(shù)據(jù)發(fā)生器125包括進(jìn)數(shù)據(jù)發(fā)生器用于把測試模式的物理的0/1寫入DRAM 100以及出數(shù)據(jù)(預(yù)期值)發(fā)生器用于在讀周期產(chǎn)生由比較器140使用的物理的0/1??刂破?30在測試總線155指示下將適于特定的測試模式和應(yīng)用的測試周期的控制信號選通到DRAM 100。比較器140將數(shù)據(jù)發(fā)生器125提供的預(yù)期值與在輸出總線160上的觀測值做比較。冗余分配邏輯145根據(jù)比較器140進(jìn)行的比較,確定DRAM的哪些陣列元件已經(jīng)失效。冗余分配邏輯確定特定的冗余字線或位線代替有失效單元的字線和位線。冗余分配寄存器150存儲冗余分配邏輯的結(jié)果并允許掃描出掃描總線165上的結(jié)果至芯片上的焊盤或模塊管腳。
控制器130還有向全部DRAM塊105A至150N發(fā)送塊允許信號170的功能,該信號允許從測試數(shù)據(jù)發(fā)生器125向全部DRAM塊105A至105N同時(并行)寫測試數(shù)據(jù)。
對于保持時間測試,在數(shù)據(jù)同時寫入全部DRAM塊105A至105N之后,測試暫停一段預(yù)先確定的時間量,然后順序讀出每個DRAM塊105A至105N中的數(shù)據(jù)。換言之,在預(yù)先確定的暫停時間結(jié)束之后,塊105A中的數(shù)據(jù)被讀出到比較器140中,冗余分配邏輯145確定使用哪些替代字線/位線(如果存在的話)并把該信息傳送給冗余分配寄存器150,在那里該信息被掃描出。下一個DRAM塊105B被讀出,過程續(xù)續(xù)到DRAM塊105N已被讀出而且關(guān)于替代字線/位線的信息(如果存在的話)被掃描出為止。這一事件順序在圖2中說明并在下文中描述。
圖2顯示根據(jù)本發(fā)明第一實(shí)施例測試嵌入式DRAM的寫-暫停-讀序列。在圖2中,每行說明單個DRAM塊的寫、暫停和讀序列。垂直方向是測試時間。如將指出的那些,全部DRAM塊被同時寫和同時暫停相同的預(yù)先確定的暫停時間。然而,由于讀是順序進(jìn)行的,在前一個DRAM塊的讀完成之前其下一個DRAM塊的讀不會開始,所以在第一個DRAM塊之后每個DRAM塊的總暫停時間增加為讀出前面所有DRAM塊所需的時間。然而,因?yàn)闀和r間能是寫和讀的時間的例如1000倍的量級,所以這增加的暫停時間可以忽略。
以包含8個DRAM塊的一個DRAM陣列為例,那里讀和寫的時間是80微秒,暫停時間是80,000微秒,總測試時間是80+80,000+(8×80)=80720微秒(80.72毫秒)。如果按傳統(tǒng)方式測試這同一個DRAM,則總測試時間會是8×(80+80,000+80)=641,280微秒(641.28毫秒)。這樣,本發(fā)明第一實(shí)施例只用了傳統(tǒng)測試時間的12.6%,或者說大約快8倍。對于一個16塊DRAM,本發(fā)明約快16倍。在本例中,對于8DRAM塊的DRAM陣列,最長附加測試暫停時間是7×80或560微秒。這樣,最長附加暫停時間只是預(yù)先確定的暫停時間的0.675%,如前所述,這是可以忽略的。
圖3是嵌入式DRAM存儲器和根據(jù)本發(fā)明第二實(shí)施例的測試系統(tǒng)的示意方框圖。在圖3中,嵌入式DRAM 100與一個內(nèi)置自測試(BIST)系統(tǒng)210耦合。測試系統(tǒng)210由定序器215、地址發(fā)生器220、測試數(shù)據(jù)發(fā)生器225、控制器230、多路轉(zhuǎn)換器235、比較器240、冗余分配邏輯245以及冗余分配寄存器250,它們?nèi)c測試總線255耦合。另一種作法是,寄存器235可納入DRAM 100。DRAM 100還通過輸出總線260與比較器240耦合。
定序器215、地址發(fā)生器220、測試數(shù)據(jù)發(fā)生器225、控制器230、多路轉(zhuǎn)換器235、比較器240、冗余分配邏輯245、冗余分配寄存器250、測試總線255、輸出總線260以及掃描總線265與圖1中的定序器115、地址發(fā)生器120、測試數(shù)據(jù)發(fā)生器125、控制器130、多路轉(zhuǎn)換器135、比較器140、冗余分配邏輯145、冗余分配寄存器150、測試總線155、輸出總線160以及掃描總線165分別相似且實(shí)現(xiàn)與它們相似的功能,其差別是(1)控制器230不向全部DRAM塊105A至105A發(fā)送塊允許信號。(2)冗余分配寄存器250沒有直接“掃描出”功能。
測試系統(tǒng)210進(jìn)一步包括一個冗余分配存儲裝置275,它通過傳輸總線270與冗余分配寄存器250耦合。冗余分配存儲寄存器275存儲由冗余分配寄存器250產(chǎn)生的替換信息。冗余分配存儲寄存器275示于圖4并在下文中描述。
定序器215還產(chǎn)生同步信號280,由冗余分配邏輯245、冗余分配寄存器250以及冗余分配存儲裝置275使用,如圖5、6中所示并在下文中描述。
對于保持時間測試,在數(shù)據(jù)順序?qū)懭朊總€DRAM塊105A至105N之后,每個DRAM塊的測試暫停一段預(yù)先確定的時間量,然后順序讀出每個DRAM塊105A至105N中的數(shù)據(jù)。然而,前一個DRAM塊剛被寫入,其下一個DRAM塊便被寫入,而且任何DRAM塊的暫停時間剛一結(jié)束,那個DRAM塊上的數(shù)據(jù)便被讀出。所以,每個DRAM塊的暫停時間是重疊的。這一事件序列由定序器270通過測試總線255和同步信號280控制。換言之,當(dāng)數(shù)據(jù)剛被寫入DRAM塊105A并開始它的暫停,則數(shù)據(jù)接下來便被寫入DRAM塊105B并開始它的暫停,如此下去直至DRAM塊105N被寫入為止。在DRAM塊105A的預(yù)先確定的暫停時間結(jié)束后,DRAM塊105A中的數(shù)據(jù)被讀出到比較器240中。在DRAM塊105B的預(yù)先確定的暫停時間結(jié)束后,在DRAM塊105B中的數(shù)據(jù)被讀出到比較器240中。這一序列繼續(xù)到DRAM塊105N中的數(shù)據(jù)被讀到比較器240中為止。這一事件序列示于圖8并在下文中討論。
因?yàn)槿哂喾峙浼拇嫫?50只夠保持單個DRAM塊的冗余分配數(shù)據(jù),所以每塊的數(shù)據(jù)在其下一DRAM塊被讀出時被傳送到冗余分配存儲裝置275。當(dāng)測試完成時,全部DRAM塊105A至105N的冗余分配信息被從冗余分配寄存器275中掃描出來。
在詳細(xì)討論冗余分配寄存器275和控制信號280之前,轉(zhuǎn)到圖8更詳細(xì)地考察寫-暫停-讀序列是有用的。圖8顯示根據(jù)本發(fā)明第二實(shí)施例測試嵌入式DRAM的寫-暫停-讀序列。在圖8中,每行說明單個DRAM塊的讀、暫停和讀序列,垂直方向是測試時間。如將指出的那樣,全部DRAM塊被順序?qū)?,而在寫之后全都立即暫停相同的預(yù)先確定的暫停時間。每個單個DRAM塊的讀是在暫停時間結(jié)束后立即開始。
以包含8個DRAM塊的一個DRAM陣列為例,那里讀和寫的時間是80微秒,暫停時間是80,000微秒,總測試時間是(8×80)+80,000+80=80720微秒(80.72毫秒),與本發(fā)明第一實(shí)施例的例子相同(見圖2)。因?yàn)闀和r間重疊,如果塊數(shù)特別多的話,則有可能“用光”暫停時間。在本例中,當(dāng)DRAM塊數(shù)超過999時便會發(fā)生那種情況。在這種情況中,對于超過999之后每個再增加的DRAM塊,測試時間的增量將為80微秒。
圖4是根據(jù)圖3的冗余分配存儲裝置進(jìn)行存儲的示意方框圖。在圖4中,包含行冗余分配邏輯285和位線分配邏輯290的冗余分配寄存器245通過測試總線255與冗余分配存儲裝置275耦合。
冗余分配存儲寄存器包括接口寄存器300,與多個存儲寄存器305A、305B、305C至305N耦合。對于每個DRAM塊,105A至105N(見圖3)有相應(yīng)的存儲寄存器305A至305N。在每個對DRAM塊的讀之后,那個特定DRAM塊的被寫入冗余分配寄存器的冗余分配信息(如前文描述的那樣)與接口移位寄存器300的當(dāng)前內(nèi)容進(jìn)行交換。這一操作示于圖7并在下文中描述。
在內(nèi)容交換之后,接口寄存器300保持最后一次讀(最后完成的測試)DRAM塊的分配信息。然后,接口移位寄存器300的內(nèi)容被寫入存儲寄存器305A至305N之一。該讀、寫序列通過同步信號280由輸入多路轉(zhuǎn)換器310A、310B、310C至310N以及輸出多路轉(zhuǎn)換器315A、315B、315C至315N進(jìn)行選通。對于每個存儲寄存器305A至305N,有相應(yīng)的輸入多路轉(zhuǎn)換器310A至310N以及相應(yīng)的輸出多路轉(zhuǎn)換器315A至315N。同步信號280還加到每個存儲寄存器305A至305N的時鐘線,如圖5中所示并在下文中描述。
冗余分配存儲裝置275的操作周期性地發(fā)生。當(dāng)?shù)谝恢芷陂_始時,在冗余分配寄存器250中含有DRAM塊105A(見圖3)的冗余分配信息,該分配信息與接口移位寄存器300的內(nèi)容(為“空”或包含先前測試的數(shù)據(jù))交換。于是存儲寄存器305N的內(nèi)容被移到接口移位寄存器300,而接口移位寄存器的內(nèi)容被移到存儲寄存器305A中。
當(dāng)?shù)诙芷陂_始時,現(xiàn)在在冗余分配寄存器250中含有DRAM塊105B(見圖3)的冗余分配信息,該分配信息與接口移位寄存器300的內(nèi)容交換。于是存儲寄存器305A的內(nèi)容被移到接口移位寄存器300,而接口移位寄存器的內(nèi)容被移到存儲寄存器305B中。
當(dāng)?shù)谌芷陂_始時,現(xiàn)在在冗余分配寄存器250中含有DRAM塊105C(見圖3)的冗余分配信息,該分配信息與接口位移寄存器300的內(nèi)容交換。于是存儲寄存器305B的內(nèi)容被移位到接口移位寄存器300,而接口移位寄存器的內(nèi)容被移到存儲寄存器305C中。
第四周期到倒數(shù)第二個周期與前面的周期相似。
當(dāng)最后一個周期開始時,現(xiàn)在在冗余分配寄存器250中含有DRAM塊105N(見圖3)的冗余分配信息,該分配信息與接口移位寄存器300的內(nèi)容交換。于是倒數(shù)第二個存儲寄存器305N-1(見圖3)的內(nèi)容被移位到接口移位寄存器300中,而接口移位寄存器的內(nèi)容被移位到存儲寄存器305N中。在這最后一個周期之后,全部存儲寄存器305A至305N的內(nèi)容被順序地在掃描總線265上掃描出。
圖5是示意方框圖,顯示根據(jù)圖4的冗余分配存儲裝置的存儲的時鐘信號。圖中只顯示了存儲寄存器305A。在圖5中,一個特定的控制信號280A(對應(yīng)于存儲寄存器305A)被口到輸入多路轉(zhuǎn)換器310A、輸出多路轉(zhuǎn)換器315A以及AND(與)門320和325的第一輸入端。對于存儲寄存器305B至305N,將施加特定控制信號280B至280N。第一時鐘信號CLK1被加到AND門320的第二輸入端,第二時鐘信號CLK2被加到AND門325的第二輸入端。AND門320的輸出端與AND門330的第一輸入端耦合,一個電平敏感掃描設(shè)計(LSSD)A CLK信號被加到AND門330的第二輸入端。AND門325的輸出端與AND門335的第一輸入端耦合,一個LSSD B CLK信號被加到AND門335的第二輸入端。CLK1、CLK2、LSSDA CLK以及LSSD B CLK是全局信號,提供給所有存儲寄存器。LSSD ACLK和LSSD B CLK還用于掃描入和掃描出操作。AND門330和335的輸出端與存儲寄存器305A耦合,以控制存儲寄存器位的串行移位。
圖6是圖5電路的時鐘信號的時序圖。如圖6中所見,只有當(dāng)CLK2斷時CLK1才通,反之亦然。當(dāng)LSSD A CLK或LSSB B CLK為高電平或控制信號280A為低電平時,CLK1和CLK2都不處于有效狀態(tài)。
圖7是圖4的冗余分配寄存器和串行接口寄存器之間互連的示意圖。在圖7中,冗余分配寄存器250包含多個鎖存器340,每個鎖存器340有兩個時鐘輸入CA和CB。接口移位寄存器300包含多個鎖存器345,每個鎖存器345有兩個時鐘輸入CA和CB。CA時鐘為向鎖存器340和345的第一半(上方的矩形)輸入數(shù)據(jù)定時,而CB時鐘為從每個鎖存器的第一半向每個鎖存器的第二半(下方的矩陣)以及向輸出端Q傳送數(shù)據(jù)定時。鎖存器340的個數(shù)與鎖存器345的個數(shù)相同。
鎖存器340的所有CA輸入端都與第三時鐘信號CLK3耦合。鎖存器340的所有CB輸入端都與第四時鐘信號CLK4耦合。鎖存器345的所有CA輸入端都與第五時鐘信號CLK5耦合。鎖存器345的所有CB輸入端都與第六時鐘信號CLK6耦合。每個鎖存器340的輸出端Q與每個鎖存器345的相應(yīng)輸入端D耦合。每個鎖存器345的輸出端Q與每個鎖存器340的相應(yīng)輸入端D耦合。為使圖形簡化,在圖7中沒有畫出當(dāng)冗余分配寄存器250和接口移位寄存器300處于移位寄存器方式時對它們進(jìn)行寫操作所使用的數(shù)據(jù)線。
當(dāng)冗余分配寄存器250和接口移位寄存器300之間進(jìn)行數(shù)據(jù)交換時,在所有鎖存器中的數(shù)據(jù)在相應(yīng)鎖存器之間同時被傳送。這種傳送按下述序列進(jìn)行(1)冗余分配信息被傳送到鎖存器340中(CLK3、CLK4、CLK5、CLK6全為低電平)。(2)當(dāng)CLK5為高電平時,數(shù)據(jù)從鎖存器345的第一半傳送到鎖存器345的第二半。(3)當(dāng)CLK3為高電平時,數(shù)據(jù)從鎖存器345的第二半傳送到鎖存器340的第一半。(4)當(dāng)CLK4和CLK6為高電平時,數(shù)據(jù)從鎖存器340的第一半傳送到鎖存器340的第二半而且數(shù)據(jù)從鎖存器345的第二半傳送到鎖存器340的第一半。(6)冗余分配寄存器250被調(diào)整為接收下一個要測試的DRAM塊的冗余分配數(shù)據(jù)(CLK3、CLK4、CLK5、CLK6全為低電平)。
圖9是本發(fā)明第二實(shí)施例的物理實(shí)現(xiàn)的示意圖。在圖9中,嵌入式DRAM宏(macro)400包括DRAM 100、BIST 110以及多個熔絲鎖存器405A、405B、405C至405N。在DRAM 100中每個DRAM的塊105A至105N各有一個熔絲鎖存器405A至405N。每個DRAM塊105A至105N包括一個熔絲塊和一個冗余的字線和位線陣列(未畫出)。在本發(fā)明的一個實(shí)現(xiàn)中,存儲寄存器305A至305N(見圖4)是熔絲鎖存器405A至405N。在測試過程中,熔絲鎖存器405A至405N用于存儲冗余分配信息,該信息在被掃描出之后將被掃描回去以斷掉熔絲塊,以從冗余陣列中選出的字線和位線代替失效的字線和位線。這一實(shí)現(xiàn)節(jié)省eDRAM宏400的“不動產(chǎn)”,而且存儲寄存器隨eDRAM宏的伸縮而自動地伸縮,節(jié)省了設(shè)計時間。
上文給出本發(fā)明實(shí)施例的描述供理解本發(fā)明之用。應(yīng)該理解,本發(fā)明不限于這里描述的特定實(shí)施例,而是如本領(lǐng)域技術(shù)人員將清楚看到的那樣,本發(fā)明能有各種修改、重組和替換而不脫離本發(fā)明的范圍。例如,本發(fā)明是用BIST說明的,但容易適應(yīng)于傳統(tǒng)的測試方法。所以,下列權(quán)利要求要覆蓋所有這些修改和改變,作為落入本發(fā)明的真正精神和范圍之中。
權(quán)利要求
1.一種測試DRAM的方法,該DRAM包含多個DRAM塊,該方法包含在一個基于處理器的內(nèi)置自測試系統(tǒng)中產(chǎn)生一個測試數(shù)據(jù)模式;對每個DRAM塊,將所述測試數(shù)據(jù)模式寫入所述DRAM塊,暫停一段預(yù)先確定的時間并從所述DRAM塊中讀出結(jié)果數(shù)據(jù)模式;其中對每個DRAM塊,將所述測試模式寫入所述DRAM塊是在所述暫停一段預(yù)先確定的時間之前進(jìn)行的,從所述DRAM塊中讀出所述結(jié)果數(shù)據(jù)模式是在所述暫停一段預(yù)先確定的時間之后進(jìn)行的;而且其中兩個或更多個所述DRAM塊的所述預(yù)先確定的暫停時間段至少有一部分在時間上是重疊的。
2.權(quán)利要求1的方法,其中將所述測試模式寫入所述DRAM的步驟對所述DRAM的所有DRAM塊是同時進(jìn)行的。
3.權(quán)利要求1的方法,其中將所述測試模式寫入所述DRAM塊的步驟是對所述多個DRAM塊從第一個DRAM塊到最后一個DRAM塊順序進(jìn)行的,對所述多個DRAM塊中前一個DRAM塊的寫是在對所述多個DRAM塊中的隨后一個DRAM塊寫之前完成的。
4.權(quán)利要求1的方法,其中暫停所述預(yù)先確定的時間段的步驟是對所述DRAM的所有DRAM塊同時進(jìn)行的。
5.權(quán)利要求1的方法,其中所述DRAM的至少一個DRAM塊的所述暫停的預(yù)先確定時間段的至少一部分與把所述測試模式寫入所述DRAM的至少一個其他DRAM的步驟在時間上重疊。
6.權(quán)利要求1的方法,其中從所述DRAM塊讀出所述結(jié)果模式的步驟是從所述多個DRAM塊的第一個DRAM塊到最后一個DRAM塊順序進(jìn)行的,讀所述多個DRAM塊中的任何前一個DRAM塊都是在讀所述多個DRAM塊中隨后一個DRAM塊之前完成的。
7.權(quán)利要求1的方法,進(jìn)一步包含對每個DRAM塊,根據(jù)所述結(jié)果數(shù)據(jù)模式確定冗余分配信息;以及將每個所述DRAM的冗余分配信息存儲到單獨(dú)的寄存器中,對所述多個DRAM中的前一個DRAM塊的任何前一個冗余分配信息的存儲是在對所述多個DRAM中隨后一個DRAM的隨后一個冗余分配信息存儲之前完成的。
8.權(quán)利要求7的方法,其中所述寄存器的個數(shù)等于所述DRAM塊的個數(shù)。
9.權(quán)利要求7的方法,其中所述寄存器串行耦合,并進(jìn)一步包括順序掃描出每個寄存器。
10.權(quán)利要求7的方法,進(jìn)一步包括將基于所述冗余分配信息的熔絲斷掉信息寫回到所述寄存器中。
11.一種用于測試嵌入式DRAM的基于處理器的內(nèi)置自測試系統(tǒng),所述嵌入式DRAM包括多個DRAM塊,每個DRAM塊包含多個字線和位線,該測試系統(tǒng)包含產(chǎn)生測試數(shù)據(jù)模式的裝置;同時將所述測試數(shù)據(jù)模式寫入每個DRAM塊的裝置;在從所述測試數(shù)據(jù)寫入每個所述DRAM塊起已經(jīng)經(jīng)過預(yù)先確定的時間段之后從每個所述DRAM塊讀出結(jié)果數(shù)據(jù)模式的裝置,所述讀出是從所述多個DRAM塊的第一個DRAM塊到最后一個DRAM塊順序發(fā)生的,對所述多個DRAM塊中任何前一個DRAM塊的讀是在所述多個DRAM塊中的隨后一個DRAM塊的讀之前完成的;把對每個所述DRAM塊掃描出的數(shù)據(jù)存儲到一個寄存器上的裝置,所述掃描出的數(shù)據(jù)包含每個所述DRAM塊的所述結(jié)果數(shù)據(jù)模式或根據(jù)所述結(jié)果數(shù)據(jù)模式得到的信息;以及掃描出所述掃描出數(shù)據(jù)的裝置,對所述多個DRAM塊中的前一個DRAM塊的任何先前掃描出數(shù)據(jù)的掃描出都是在所述多個DRAM中的隨后一個DRAM塊的掃描出數(shù)據(jù)的掃描入之前完成的。
12.權(quán)利要求11的測試系統(tǒng),進(jìn)一步包括將所述結(jié)果數(shù)據(jù)模式與所述測試數(shù)據(jù)模式進(jìn)行比較并根據(jù)所述結(jié)果數(shù)據(jù)模式與所述測試數(shù)據(jù)模式之間的比較結(jié)果建立冗余分配信息的裝置;而且其中所述掃描出數(shù)據(jù)包含所述冗余分配信息。
13.一種用于測試嵌入式DRAM的基于處理器的內(nèi)置自測試系統(tǒng),所述嵌入式DRAM包括多個DRAM塊,每個DRAM塊包含多個字線和位線,該測試系統(tǒng)包含產(chǎn)生測試數(shù)據(jù)模式的裝置;從所述多個DRAM塊的第一個DRAM塊到最后一個DRAM塊將所述測試數(shù)據(jù)模式順序?qū)懭朊總€DRAM塊的裝置,對所述多個DRAM塊中的前一個DRAM塊的寫是在對隨后一個DRAM塊的寫之前完成的;在從所述測試數(shù)據(jù)寫入每個所述DRAM塊起已經(jīng)經(jīng)過預(yù)先確定的時間段之后從每個所述DRAM塊讀出結(jié)果數(shù)據(jù)模式的裝置,所述讀出是從所述多個DRAM塊的第一個DRAM塊到最后一個DRAM塊順序發(fā)生的,對所述多個DRAM塊中任何前一個DRAM塊的讀是在所述多個DRAM塊中的隨后一個DRAM塊的讀之前完成的;把對每個所述DRAM塊掃描出的數(shù)據(jù)存儲到多個存儲寄存器中的不同存儲寄存器上的裝置,所述掃描出的數(shù)據(jù)包含每個所述DRAM塊的所述結(jié)果數(shù)據(jù)模式或根據(jù)所述結(jié)果數(shù)據(jù)模式得到的信息,對所述多個DRAM塊中的前一個DRAM塊掃描出數(shù)據(jù)的存儲是在對所述多個DRAM塊中隨后一個DRAM塊掃描出數(shù)據(jù)進(jìn)行存儲之前完成的。
14.權(quán)利要求13的系統(tǒng),進(jìn)一步包括從所述多個存儲寄存器順序掃描出所述掃描出數(shù)據(jù)的裝置,對所述多個存儲寄存器中前一個存儲寄存器的任何掃描出數(shù)據(jù)進(jìn)行的掃描出都是在對所述多個存儲寄存器中的隨后一個存儲寄存器的掃描出數(shù)據(jù)進(jìn)行掃描出之前完成的。
15.權(quán)利要求13的測試系統(tǒng),其中所述存儲寄存器的個數(shù)等于所述DRAM塊的個數(shù)。
16.權(quán)利要求13的系統(tǒng),進(jìn)一步包含將所述結(jié)果數(shù)據(jù)模式與所述測試數(shù)據(jù)模式進(jìn)行比較并根據(jù)所述結(jié)果數(shù)據(jù)模式與所述測試數(shù)據(jù)模式之間的比較結(jié)果建立冗余分配信息的裝置;而且其中所述掃描出數(shù)據(jù)包含所述冗余分配信息。
17.權(quán)利要求16的測試系統(tǒng),將基于所述冗余分配信息的熔絲斷掉信息寫回到所述多個存儲寄存器中的裝置。
18.權(quán)利要求16的測試系統(tǒng),它進(jìn)一步包括與冗余分配存儲裝置耦合的冗余分配寄存器,所述冗余分配存儲裝置包括與所述多個存儲寄存器的每個所述存儲寄存器耦合的接口移位寄存器。
19.權(quán)利要求18的測試系統(tǒng),其中在所述冗余分配寄存器內(nèi)的各鎖存器的狀態(tài)與所述接口移位寄存器內(nèi)各鎖存器的狀態(tài)同時進(jìn)行交換。
20.權(quán)利要求18的測試系統(tǒng),其中所述接口寄存器的內(nèi)容被寫入所述多個存儲寄存器中的前一個存儲寄存器與所述多個存儲寄存器中的隨后一個存儲寄存器的內(nèi)容被寫入所述接口寄存器是同時進(jìn)行的。
全文摘要
一種測試DRAM的方法和系統(tǒng),該DRAM包含多個DRAM塊。該方法包含在一個基于處理器的內(nèi)置自測試系統(tǒng)中產(chǎn)生一個測試數(shù)據(jù)模式;對每個DRAM塊,將該測試數(shù)據(jù)模式寫入該DRAM塊,暫停一段預(yù)先確定的時間并從該DRAM塊中讀出結(jié)果數(shù)據(jù)模式;其中對于每個DRAM塊,將測試模式寫入DRAM塊是在暫停一段預(yù)先確定的時間之前進(jìn)行的,而從DRAM塊中讀出結(jié)果數(shù)據(jù)模式是在暫停一段預(yù)先確定的時間之后進(jìn)行的;而且其中兩個或更多個DRAM塊的預(yù)先確定的暫停時間段至少有一部分在時間上是重疊的。
文檔編號G11C29/26GK1499533SQ20031010345
公開日2004年5月26日 申請日期2003年11月3日 優(yōu)先權(quán)日2002年11月11日
發(fā)明者L·S·查德威克, W·R·科爾賓, J·H·德雷拜爾貝斯, B·R·凱斯勒, E·A·納爾遜, T·E·奧布雷姆斯基, 齊藤俊晴, D·L·威特爾, L S 查德威克, 凱斯勒, 奧布雷姆斯基, 威特爾, 德雷拜爾貝斯, 晴, 科爾賓, 納爾遜 申請人:國際商業(yè)機(jī)器公司