亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

使用線性反饋移位寄存器在存儲器內(nèi)建自測試環(huán)境中的故障診斷的制作方法

文檔序號:6748902閱讀:410來源:國知局
專利名稱:使用線性反饋移位寄存器在存儲器內(nèi)建自測試環(huán)境中的故障診斷的制作方法
使用線性反饋移位寄存器在存儲器內(nèi)建自測試環(huán)境中的故
障診斷相關(guān)申請本申請要求于2007年9月18日依照35U. S. C. § 119提交的題為“在存儲器BIST 環(huán)境中的故障診斷”并以 Nilanjan Mukherjee、Artur Pogiel、Janusz Rajski 和 Jerzy Tyszer作為發(fā)明人的、美國臨時專利申請?zhí)枮?0/973,432的專利申請的優(yōu)先權(quán),在此通過 參考將其整體合并入本申請中。本發(fā)明的領(lǐng)域本發(fā)明用于存儲器BIST環(huán)境中的存儲器故障診斷。本發(fā)明的各方面對于測試數(shù) 據(jù)的采集和分析有特定的適用性,以便為集成電路器件中嵌入式存儲器的連續(xù)全速測試作 準備。本發(fā)明的背景嵌入式存儲器經(jīng)常是許多集成電路器件的組成部分。例如,系統(tǒng)級芯片 (System-on-a-Chip, SoC)器件通常包含多個嵌入式存儲器系統(tǒng)。嵌入式存儲器系統(tǒng)包括 一組存儲器單元,這些存儲器單元是能夠保持某一狀態(tài)的組件,所述狀態(tài)通常由可分別表 示二進制位(比特)0或1的高電壓值或低電壓值表征。存儲器單元以陣列形式布置在嵌 入式存儲器內(nèi),陣列通常由行和列加以規(guī)定。數(shù)據(jù)線可以在指定單元施加或讀取電壓值,以 分別存儲或取出比特值。存儲器單元通常進一步排列為字,即作為一個單位被同時尋址的 固定數(shù)目的單元。

圖1示出了可在嵌入式存儲器中采用的存儲器架構(gòu)100的實施例。存儲器中的每 一個字均有一個地址。行解碼器IOla接收被尋址字的地址數(shù)據(jù)102a,在對地址數(shù)據(jù)解碼 時,為被尋址行占用一條數(shù)據(jù)線或互連線。類似地,列解碼器IOlb接收被尋址字的地址數(shù) 據(jù)102b。根據(jù)地址數(shù)據(jù),列解碼器IOlb為對應(yīng)于被尋址字的列占用一條數(shù)據(jù)線或互連線。 例如在收到一時鐘信號時,存儲器地址會被訪問,以便在存儲器陣列104中存儲或檢索數(shù) 據(jù)字103。每行包含W個字,每個字有B位,總共有R行。屬于同一字的連續(xù)位既可以被依次 放置,也可被交叉存取,形成如圖1所示的片段105。也就是說,屬于連續(xù)字的位可以在相應(yīng) 的存儲器陣列行中被交叉存取。由此,在交叉存取形式中,各個字的對應(yīng)位被配置在一起, 組成片段105。在所示的示例存儲器架構(gòu)中,當(dāng)存儲器中某一行的某一個字被尋址時,每一 片段中將確實有一位被尋址。即在任何給定行中,當(dāng)該行的第一個字被尋址時,該行的第一 片段的第一 k、第二片段的第一 bp ...,以此類推至第B片段的第一 Iv1將被尋址。近期,已觀察到存儲器陣列所占據(jù)的芯片區(qū)域有快速的增加。根據(jù)這一趨勢,國際 半導(dǎo)體技術(shù)路線圖(International Technology Roadmap for Semiconductors)予頁計,在 十年內(nèi)某些芯片的硅片面積中有90%以上將被存儲器占用。由于其極大規(guī)膜的集成,存儲 器陣列已開始引入新的產(chǎn)量損失機制,其引入速度、幅度和復(fù)雜度已經(jīng)大到足夠要求測試 策略發(fā)生重大改變。事實上,經(jīng)常無法早期發(fā)現(xiàn)的許多類型的故障(如與時間相關(guān)或復(fù)雜 的讀取故障)源自于半導(dǎo)體芯片的最高密度區(qū)域內(nèi)。因此,與先前各代嵌入式存儲器系統(tǒng)相比,在當(dāng)前和未來的嵌入式存儲器系統(tǒng)中,對系統(tǒng)進行測試的能力的要求更為重要。然而,相比獨立式存儲單元,嵌入式存儲器系統(tǒng)的測試和診斷更加困難。這種困難 不僅來源于嵌入式存儲器更為復(fù)雜的結(jié)構(gòu),還因為可用于訪問和控制這些電路的輸入和輸 出的數(shù)量的減少,導(dǎo)致測試通道帶寬降低。存儲器內(nèi)建自測試(MBIST)已成為進行高質(zhì)量 測試的一種可取的解決方案。在眾多理由中,MBIST通??勺鳛榭扇〉谋贿x方案的部分理 由如下(1)嵌入式存儲器包括不需要應(yīng)用復(fù)雜測試模式的常規(guī)結(jié)構(gòu),因此測試激勵和預(yù) 期測試響應(yīng)可以由硬件開銷小的相對簡單的測試電路進行生成、壓縮和存儲;(2)縮減的 輸入/輸出通道數(shù)量通常足以控制例如激活、掃描輸入、掃描輸出以及其他必要的BIST操 作;(3)整個測試邏輯電路可以置于芯片上,這樣能使測試可以全速進行,由此可檢測與時 間相關(guān)的故障。存儲器BIST測試的一種實施例在專利號為6,421,794的美國專利中進行 了說明,所述專利名為“采用自檢測電路對存儲器進行診斷的方法和裝置”,發(fā)明人為John Τ. Chen和Janusz Rajski,于2002年7月16日公布,在此通過參考將其整體合并入本申請 中。盡管某些MBIST控制器被設(shè)計為硬連線有限狀態(tài)機(FSM),通常還是需要一定的 靈活性。因此,許多MBIST實施例是可編程(微碼)器件。所述電路可以被方便地編程,以 應(yīng)對最新的嵌入式存儲器結(jié)構(gòu)的挑戰(zhàn)。用于嵌入式存儲器的故障診斷,稱為內(nèi)建自診斷(BISD),通常涉及在一常規(guī) MBIST流中的特定修改,修改的主要目的是確定不正確的測試響應(yīng)(有時通稱為故障模 式),以便由此提示有故障的存儲器單元、有故障的存儲器陣列列或有故障的存儲器陣列 行。識別存儲器陣列中故障地址的過程既可以在芯片上進行,也可以在從芯片下載經(jīng)壓縮 的測試響應(yīng)(有時稱為“標(biāo)記”)后在諸如自動測試設(shè)備(ATE)或其他診斷工具中離線進行。 對應(yīng)于不正確測試響應(yīng)的標(biāo)記不論是否被壓縮,均可以在本文中被稱為“故障標(biāo)記”。進行 故障診斷主要用于“修理”有故障的存儲器陣列,即在內(nèi)建自修理(BISR)過程中用備用的 行或列替換故障行或列。進行故障診斷還用于為現(xiàn)有加工工藝的改進提供便利,例如,以提 高未來產(chǎn)量。為測試存儲器電路有無與時間相關(guān)的故障,理想的方式是以“全速”即以存儲器電 路的額定運行速度進行測試。然而,集成電路器件輸入/輸出通道相對較低的帶寬使快速 下載故障標(biāo)記或?qū)η度胧酱鎯ζ鞴收系刂穼ぶ冯y以或無法進行。而在下載先前獲得的診斷 數(shù)據(jù)時又檢測到另一故障的情況下,這一問題就更加嚴重。因此,許多經(jīng)修改以測試存儲器 電路的BIST方案或采用“暫停和恢復(fù)”運行模式,或采用“停機和重啟動”運行模式。在“暫停和恢復(fù)”模式中,如果存在諸如僅有一個寄存器用以存儲不正確的測試響 應(yīng)等情況,BIST控制器將在遇到故障時進入保持模式。一旦不正確的測試響應(yīng)被從該單一 寄存器掃描輸出至ATE,BIST控制器將恢復(fù)其操作。在一些BIST方案中,配有多個寄存器 以存儲多個不正確的測試響應(yīng)。在上述情況下,BIST控制器可以在遇到故障時繼續(xù)測試, 直至寄存器被填滿。之后BIST控制器將進入保持模式,直至所有故障存儲寄存器的內(nèi)容已 被完全掃描輸出,隨后將恢復(fù)其測試操作。在“停機和重啟動”模式中,一旦檢測到故障,且相應(yīng)的診斷數(shù)據(jù)被掃描輸出,BIST 控制器將轉(zhuǎn)入初始測試狀態(tài)。其根本原因在于,如果不這樣,BIST控制器可能會錯過從最 近一次檢測到故障的地址到下一目標(biāo)位置(BIST控制器可在此處恢復(fù)其操作)之間涉及時序的問題。在相繼的重復(fù)中,BIST控制器不會監(jiān)測存儲器輸出,直至通過最近檢測到故障 的地址。值得指出的是,某些單一故障可能產(chǎn)生出大量的診斷數(shù)據(jù)。例如,僅僅一條信號 線或“互連線”的故障就能導(dǎo)致存儲器陣列的一整行或一整列不正確工作,產(chǎn)生大量的出錯 數(shù)據(jù)。因此,對于常規(guī)的存儲器BIST,有兩個涉及大量診斷數(shù)據(jù)的主要問題。首先,將數(shù)據(jù) 掃描輸出可能需要相當(dāng)大量的時間。其次,ATE存儲器可能很快被填滿,特別是在所有存儲 器故障均被記錄的情況下。因此,或者必須對數(shù)據(jù)進行刪減,或者必須停止存儲器BIST控 制器的工作,方可對ATE存儲器進行上載。從診斷角度而言,刪減數(shù)據(jù)通常不可接受。事實 上,通常需要所有診斷數(shù)據(jù)來分析故障,以確定給定存儲器是否可以修理。另外,由于時間 限制,時間過長的ATE存儲器上載經(jīng)常也不可接受。本發(fā)明的概要本發(fā)明的各個方面涉及為在存儲器內(nèi)建自測試環(huán)境中對失敗的存儲器測試的測 試響應(yīng)標(biāo)記進行暫時壓縮的技術(shù)和器件,該發(fā)明的目的是即使在檢測到多個與時間相關(guān)的 存儲器測試故障時也能夠進行存儲器內(nèi)建自測試操作。在本發(fā)明的一些實施例中,被壓縮 的測試響應(yīng)標(biāo)記在自動化測試設(shè)備(ATE)上與存儲器位置信息一起給出。診斷工具可以從 ATE接收到經(jīng)壓縮的測試響應(yīng)標(biāo)記和存儲器位置信息。此時,通過使用存儲器位置信息,診 斷工具可以對經(jīng)壓縮的測試響應(yīng)標(biāo)記選擇合適的診斷程序,以提供用于從經(jīng)壓縮的測試響 應(yīng)標(biāo)記安全恢復(fù)故障數(shù)據(jù)的時間效率非常高的離線例程。根據(jù)本發(fā)明的各種實施例,帶有嵌入式存儲器的集成電路以及存儲器BIST控制 器還包括用作標(biāo)記寄存器的線性反饋結(jié)構(gòu),該結(jié)構(gòu)可在存儲器測試的某一測試步驟中對來 自嵌入式存儲器陣列的測試響應(yīng)標(biāo)記進行暫時壓縮。所述線性反饋結(jié)構(gòu)可以是,例如線性 反饋移位寄存器等。在各種實施例中,集成電路還可能包括失效字計數(shù)器、失效列指示器和 /或失效行指示器。任何時候只要線性反饋結(jié)構(gòu)對失效測試響應(yīng)進行壓縮,失效字計數(shù)器、 失效列指示器和失效行指示器就會收集存儲器位置信息。通過這些實施例,對診斷數(shù)據(jù)即 測試響應(yīng)數(shù)據(jù)和位置數(shù)據(jù)的芯片上壓縮可以縮短將診斷數(shù)據(jù)傳送至ATE的時間。根據(jù)本發(fā)明的各種其他實施例,一個診斷工具會從ATE接收診斷數(shù)據(jù),并通過使 用查詢表來選擇合適的診斷技術(shù)。由失效字計數(shù)器、失效列指示器和失效行指示器存儲的 值可用作查詢表的索引。此外,所述診斷工具還可以采用額外的查詢表來加快從被壓縮的 測試響應(yīng)中提取診斷數(shù)據(jù)的速度。通過這種方式,測試時間和提供給ATE并由診斷工具從 ATE接收的測試數(shù)據(jù)的量能夠顯著減少。在考慮以下詳細說明的情況下,本發(fā)明的這些乃至 其他特點和方面將顯而易見。附圖簡要說明圖1所示為可用于嵌入式存儲器的存儲器架構(gòu)的一個示例;圖2為包含嵌入式存儲器的集成電路器件、MBIST控制器以及用于壓縮測試響應(yīng) 標(biāo)記和收集存儲器位置信息的組件的框圖;圖3示出了顯示圖2中集成電路器件運行方法的一種實施例的流程圖;圖4示出了作為圖2中集成電路的標(biāo)記寄存器實施的多輸入鈴流發(fā)生器(MIRG);圖4示出了可用作具有各種實施方式的標(biāo)記寄存器的多輸入鈴流發(fā)生器(MIRG) 的一個示例;
圖5示出了以0. .. 001狀態(tài)初始化的基于鈴流發(fā)生器的失效字計數(shù)器,其中實心 黑色處表示寄存器中一個邏輯1的位置;圖6示出了圖1中集成電路的失效列指示器的實施方式;圖7示出了帶有失效行檢測器實施方式的圖2中的集成電路器件;圖8A示出了失效行指示器的一種實現(xiàn)方式;圖8B示出了一種增強型失效行指示器的實現(xiàn)方式;圖9示出了一個帶有增強型失效行指示器的存儲器測試和診斷環(huán)境;圖10示出了存儲器陣列中對角線單元故障的示例;圖11示出了存儲器陣列中有故障的列的示例;圖12示出了一存儲器陣列中同時存在一個故障行和故障列的示例;圖13示出了由于存儲器單元失效而向標(biāo)記寄存器進行的錯誤信息注入;圖14詳細示出了離散對數(shù)方式的預(yù)計算階段;圖15示出了離散對數(shù)方式中對查詢表的搜索;圖16示出了一多輸入鈴流發(fā)生器內(nèi)的標(biāo)記寄存器軌跡;圖17示出了單列故障Cx和基準列C。;圖18示出了一個采用特征多項式x4+x3+l的內(nèi)部異或線性反饋移位寄存器(LFSR) 的快速LFSR仿真的數(shù)據(jù)結(jié)構(gòu)示例;圖19示出了一個快速LFSR仿真的示例;圖20示出了一個存儲器陣列內(nèi)兩列故障的示例;圖21所示為對應(yīng)于圖20中故障的一組線性方程;圖22a和圖22b示出了一行和一列故障;圖23示出了用于為相鄰單元內(nèi)故障獲取標(biāo)記的MIRG擬合;圖24示出了產(chǎn)生相同m-序列的鈴流發(fā)生器(RG)和內(nèi)部異或LFSR ;圖25示出了 LFSR與鈴流發(fā)生器兩者狀態(tài)之間的映射;圖26為示出存儲器診斷流程實施例的簡圖;圖27為一種根據(jù)診斷存儲器測試故障的方法的實施例的流程圖;圖28示出了根據(jù)一個實施例的診斷工具。本發(fā)明的詳細說明概述如下文中更詳細的討論所述,本發(fā)明的各種實施例涉及一種存儲器BIST環(huán)境中 的嵌入式存儲器電路故障診斷。首先,給出存儲器BIST環(huán)境中測試和診斷流程的簡述。接 下來,將對一種帶有嵌入式存儲器的集成電路器件和一種存儲器BIST控制器以及用以支 持全速測試的附加組件的實施例進行討論,并附帶一種操作方法的實施例。給出一種可接 收并壓縮測試響應(yīng)標(biāo)記的標(biāo)記寄存器的各種實施例。更多組件,即失效字計數(shù)器、失效行指 示器以及失效列指示器也將被詳細討論,并附以支持存儲器位置信息收集并為存儲器測試 故障數(shù)據(jù)的芯片上壓縮做準備的邏輯組件。在討論集成電路器件之后,將對所公開的集成電路器件的運行方法的實施例進行 更詳細的討論。本討論將展示上述組件在各種實施例中如何協(xié)同工作,以便在即使存在多 個與時間相關(guān)的存儲器測試故障時也能實現(xiàn)連續(xù)、全速的存儲器內(nèi)建自測試運行的結(jié)果。本討論還將展示各組件在各種實施例中如何協(xié)同工作以壓縮診斷數(shù)據(jù)量(即測試響應(yīng)數(shù) 據(jù)和位置數(shù)據(jù)),由此縮短將診斷數(shù)據(jù)傳送至自動測試設(shè)備器件的時間。之后,給出一種對測試響應(yīng)標(biāo)記進行診斷的方法的實施例的詳細說明。具體而言, 將給出一個診斷失效測試模式的查詢表,并附以一些診斷示例。本討論還包括用以通過使 用線性反饋結(jié)構(gòu)確認失效單元存儲器地址的附加查詢表和計算的詳細說明。最后,將討論 可以實施測試響應(yīng)標(biāo)記診斷方法的實施例的診斷工具。以下所公開的電子電路測試技術(shù)及相關(guān)裝置的實施例僅作為代表,不應(yīng)理解為具 有任何限定性。相反,本公開內(nèi)容系面向各種所公開方法、裝置及其等效物單獨和以相互間 的各種組合和子組合形式體現(xiàn)的所有新的、不明顯的特點和方面。所公開的技術(shù)并不局限 于任何特定方面或特征或其組合,所公開的方法和裝置也不要求任何一項或多項特定優(yōu)勢 存在,亦不要求解決任何問題。在本中請中,除非上下文有明確規(guī)定,單數(shù)形式冠詞“一個(a、an)”和“該(the)” 均包含復(fù)數(shù)形式的含義。此外,術(shù)語“包含”或“包括”(include)意為“由...組成”,但并 不意味著不能存在其他任何元件。此外,除非上下文有規(guī)定,“聯(lián)結(jié)”(coupled) —詞表示以 電氣或電磁方式連接或聯(lián)系,包括通過一個或多個不影響電路預(yù)期運行的中間元件進行的 直接連接和間接連接。盡管為了方便表述,對一些所公開的方法和裝置的操作采用了特定的順序進行說 明,但應(yīng)該認為該說明包含重新安排,除非下述的特定語言要求采用特定的順序。例如,按 順序描述的操作在某些情況下可能會被改變順序或同時進行。此外,為簡單起見,附圖可能 不會示出所公開的方法及裝置可能與其他方法和裝置結(jié)合使用的各種方式。另外,說明中 有時會使用如“確定”和“選擇”等詞來描述所公開的方法。這些術(shù)語是對所進行的實際操 作的高度抽象。對應(yīng)于這些術(shù)語的實際操作將根據(jù)具體實施例變化,但本領(lǐng)域的技術(shù)人員 可以很容易地進行辨識。本發(fā)明的各種實施例可采用諸如帶有嵌入式存儲器的集成電路(例如,專用集成 電路(ASIC)(包括混合信號式ASIC)、系統(tǒng)級芯片(SoC)或諸如現(xiàn)場可編程門陣列(FPGA) 等可編程邏輯器件(PLD))等多種方式實現(xiàn)。此外,任何所公開器件均可在一種或多種計算機可讀介質(zhì)上存儲為電路設(shè)計信 息。例如,可以創(chuàng)建(或更新)和存儲一種或多種包含設(shè)計信息的數(shù)據(jù)結(jié)構(gòu)(例如,網(wǎng)表、 HDL文件或GDSII文件),以包含對任何所公開裝置進行說明的設(shè)計信息。所述數(shù)據(jù)結(jié)構(gòu)可 以在本地計算機上或通過網(wǎng)絡(luò)進行創(chuàng)建(或更新),并在本地計算機上或通過網(wǎng)絡(luò)進行存 儲(例如,由服務(wù)器計算機進行)。所述的計算機可讀取介質(zhì)被視為在所公開的技術(shù)范圍 內(nèi)。此外,本發(fā)明的一個或多個方面可通過執(zhí)行可編程計算器件上用以完成符合本發(fā) 明的一項或多項功能的軟件指令的方式進行實施。作為替代或補充方式,本發(fā)明的一個或 多個方面還可通過存儲在計算機可讀介質(zhì)上、用以執(zhí)行符合本發(fā)明的一項或多項功能的計 算機可執(zhí)行的軟件指令加以實施。再者,任何所公開方法均可用于一種計算機仿真或其他EDA環(huán)境,其中測試模式、 測試響應(yīng)和診斷結(jié)果通過存儲在一種或多種計算機可讀介質(zhì)上的電路表現(xiàn)形式加以確定 或分析。而為了表述的目的,本公開內(nèi)容有時會用電路或電路組件的實際對應(yīng)物指代其表現(xiàn)方式(例如,存儲器陣列、計數(shù)器、寄存器、邏輯門,或其他此類術(shù)語)。然而應(yīng)該理解的 是,本公開內(nèi)容中對物理組件的任何引用均包括在仿真或其他此類EDA環(huán)境中使用的此類 電路組件的表現(xiàn)方式。診斷流程在一種有代表性的存儲器測試和診斷流程中,通常采用一種有時被稱為“行進”測 試的全面測試來檢查存儲器陣列有無缺陷。行進測試是一個依次應(yīng)用于每一存儲器地址的 測試步驟序列。每一個測試步驟通常由至少一個寫和/或讀操作組成。在對行進測試的說 明中,例如表1頂行中所示,每一測試步驟均由一個圓括號內(nèi)的表達式表示,該表達式規(guī)定 了在測試步驟中進行的操作。每一個測試步驟由一個分號與前一步驟隔開。此外,在測試 步驟的表達式中,箭頭將規(guī)定測試步驟中存儲器被訪問的順序。一個測試步驟可能以地址 升序(以向上箭頭ff表示)或地址降序(以向上箭頭U表示)訪問存儲器。表1的行進測試包含一個初始化步驟,以ff (w0)表示,其中由“0”表示的“數(shù)據(jù) 背景”字以升序?qū)懭胫撩恳淮鎯ζ髯值刂?。所述?shù)據(jù)背景字可以是完全由0或1組成的位 模式,或可以是兩者的某些組合,例如,00110011,針對某一特定8位字。相反地,“1”表示 對數(shù)據(jù)背景模式的逆,例如,當(dāng)數(shù)據(jù)背景字完全由0組成時,即為一個完全由1組成的字,或 者采用上述另一例,當(dāng)數(shù)據(jù)背景字為00110011,字則為11001100。為保證確定性,在以下討 論中,除非特別指明,數(shù)據(jù)背景字是一個完全由B個0組成的位模式,而數(shù)據(jù)背景字的逆字 則為完全由B個1組成的位模式。相應(yīng)地,下文中將省略0和1兩邊的引號。初始化步驟之后是一個測試步驟,Ifl (r0, wl),其間將以地址升序?qū)σ荒繕?biāo)存儲 器進行訪問。在這一測試步驟中,對每一存儲器地址依次進行兩項操作。在第一項操作(r0) 中,一個存儲器字被讀取。r之后的0表示正確的測試響應(yīng)為數(shù)據(jù)背景字,即000. . . 0,而其 他任何響應(yīng)均為不正確的響應(yīng)。在第二項操作(wl)中,逆字即111. . . 1被寫入至存儲器字。 在測試步驟轉(zhuǎn)至下一存儲器地址之前,對一特定地址進行這兩項操作。在后續(xù)測試步驟ff (rl,w0)中,將再次以地址升序?qū)δ繕?biāo)存儲器進行訪問。在這 一測試步驟中,將對每一存儲器地址依次進行兩項操作。在第一項操作(rl)中,一個存儲 器字被讀取。r之后的1表示正確的測試響應(yīng)為數(shù)據(jù)背景字的逆字,即111. . . 1,而其他任何 響應(yīng)均為不正確的響應(yīng)。在第二項操作(《O)中,數(shù)據(jù)背景字000... 0被寫入至存儲器字。 在測試步驟轉(zhuǎn)至下一存儲器地址之前,對一特定地址進行這兩項操作。第四個測試步驟U1 (r0,wl)與第二個測試步驟(r0,wl)的區(qū)別僅在于存儲器
訪問的順序,即以地址降序?qū)δ繕?biāo)存儲器進行訪問。類似地,第五個測試步驟.U (rl, w0)
與第三個測試步驟ff (rl,w0)的區(qū)別也在于此,即以地址降序?qū)δ繕?biāo)存儲器進行訪問。表1.行進測試IFA9N的故障詞典 行進測試可用于檢測存儲器陣列中多種類型的故障。表1是將可能由行進測試觀 察到的錯誤與所觀察到的錯誤的可能原因之間建立關(guān)聯(lián)的故障詞典。通常,故障詞典是行由故障標(biāo)示、列由測試步驟操作標(biāo)示的表。如果測試步驟操作 檢測到故障,該表將在對應(yīng)于一特定故障和一特定測試步驟操作的表單元中包含一個1。而 如果測試步驟操作未檢測到故障,表單元將包含0。例如,表1中寫操作下的列中被填入0, 因為寫操作未檢測到故障。故障詞典的創(chuàng)建能基于諸如對存儲器電路的分析、仿真或?qū)嶒灥?。?第一列中 所列的故障包括諸如“固定0”故障(stuck-at-0 fault) SAFO和“固定1”故障(stuck-at-1 fault) SAFl。TFO和TFl為轉(zhuǎn)變故障(transition fault),而命名以CF開始的故障 則為耦合故障(coupling fault)。命名為S0F0、SOFl和S0F2的故障為固定開路故障 (stuck-openfault)。AFO 和 AFl 故障為地址解碼器故障(address decoder fault)。由此, 例如,在一個測試步驟中,在111. . . 1被寫入至一個字地址后,任何包含0的位模式均由該 字地址讀取,此時SAFO可被診斷。存儲器故障診斷的一個應(yīng)用是構(gòu)建對應(yīng)于存儲器陣列的二維圖(位圖)。構(gòu)建過 程使用存儲器測試響應(yīng)來選擇每一位圖像素的值,以使每一像素代表一個存儲器單元的狀 態(tài)(即良好或失效)。在單色位圖中,白色像素表示正常的單元,而黑色像素表示存儲器陣 列的失效之處。這些位圖會從故障類型的特定類別(例如,固定故障)進行自然抽象,在進 行讀取操作的條件下僅提供一單元是否良好的基本信息。另一方面,彩色位圖可以采用不同的像素顏色表示不同的故障類別。例如,固定故障可能由一種顏色表示,轉(zhuǎn)變故障則由另一種不同的顏色表示。彩色位圖可以在諸如以 BIST模式應(yīng)用一組行進測試之后獲得,每一行進測試中采用不同的測試步驟和/或數(shù)據(jù)背 景。作為補充或替代方式,彩色位圖還可以在對表示存儲器陣列同一副本的一組單色位圖 進行的離線后處理期間獲得。在某些實施例中,可以使用故障詞典(例如見表1)幫助創(chuàng) 建存儲器陣列的顏色錯誤位圖。所述詞典歸納了基于一特定行進測試例程的推理過程的 結(jié)果。可隨所公開技術(shù)使用的詞典示例及詞典生成方法在L. -T. Wang、C-ff. Wu、X. Wen的 "VLSI Test Principles and Architectures. Design for Testability”(VLSI 測試原理 和架構(gòu).可測試性設(shè)計,摩根考夫曼出版公司,紐約,2006年)中進行了介紹。應(yīng)該理解 的是,除行進測試外的其他存儲器測試也可應(yīng)用于存儲器內(nèi)建自測試環(huán)境,例如,Galpat, Walking、Butterfly、Sliding diagonal、NPSF及其他測試。已有數(shù)百種算法變種被提 出。介紹測試算法的文獻包括AJ. van de Goor, "Testing Semiconductor Memories Theory and Practice”(測試半導(dǎo)體存儲器理論和實踐),John ffiley&Sons Inc.,紐約, 1998 年;以及 R. Dean Adams, "High Performance Memory Testing :Design Principles, Fault Modeling, and Self-test"(高性能存儲器測試設(shè)計原理、故障建模和自檢測), Springer,紐約,2002年。在配合非行進測試的存儲器測試中使用本文所述方法和設(shè)備應(yīng)被 理解為屬于本公開的范圍。采用臨時壓縮的集成電路器件在各種實施例中,故障診斷可以生成顯示失效存儲器單元的非常精確的單色錯誤 位圖。例如,圖2為集成電路器件207的框圖,所述器件包括嵌入式存儲器陣列204、MBIST 控制器206以及組件210、211、213和214,用于壓縮測試響應(yīng)標(biāo)記并收集存儲器位置信息。 組件210是標(biāo)記寄存器,將在下文中詳述。組件211、213和214分別是失效字計數(shù)器(FWC)、 失效列指示器(FCI)和失效行指示器(FRI),也將在下文中詳述。FffC 21UFCI 213和FRI 214在本文中可能被稱為位置數(shù)據(jù)收集器。標(biāo)記寄存器210和位置數(shù)據(jù)收集器211、213及 214在本文中還可能被稱為測試數(shù)據(jù)收集器或寄存器。對新硬件功能以及本架構(gòu)特定擴展 內(nèi)容的詳細說明在下文中給出。盡管以下所討論的集成電路器件207的具體示例僅有一個嵌入式存儲器陣列204 和一個MBIST控制器206,但應(yīng)該認識到,集成電路器件207可以有多個嵌入式存儲器,也 可以有多個存儲器BIST控制器,以使每個存儲器BIST控制器能夠測試多個嵌入式存儲器。 嵌入式存儲器陣列204可以具有諸如上文圖1中所示的存儲器架構(gòu)。對存儲器陣列中的存 儲器單元可采用快速列或快速行尋址模式進行尋址。在快速列尋址模式中,會對一列中相 繼的字進行尋址,之后轉(zhuǎn)至下一列。在快速行尋址模式中,會對一行中相繼的字進行尋址, 之后轉(zhuǎn)至下一行。為表述方便,假定以快速列模式對存儲器陣列204進行尋址,且各個位在 存儲器字中被交叉存取。盡管如此,本文中所討論步驟的實施例仍可以很容易地擴展至其 他存儲器組織方式。圖3所示的流程圖300示出了集成電路器件207 (見圖2)的一種運行方法的實施 例。方法300的步驟與集成電路器件207的更詳細說明一起討論。在本例中,存儲器BIST 控制器206被配置為應(yīng)用特定行進測試和特定數(shù)據(jù)背景字。存儲器BIST控制器206生成 測試模式字203,以應(yīng)用于存儲器陣列,并生成時鐘信號212a,以便對片上測試硬件的操作 進行同步。方法300可以作為對自動測試設(shè)備器件所發(fā)信號的響應(yīng)而啟動。此外,方法300的單個步驟可作為對存儲器BIST控制器206所發(fā)信號或ATE器件所發(fā)時鐘信號212b的響 應(yīng)而執(zhí)行。在初始化步驟323中,此方法開始于諸如行進測試的第一個測試步驟,行進測試 為例如表1頂行所示的行進測試。存儲器BIST控制器206 (見圖2)開始324執(zhí)行測試步 驟。當(dāng)開始測試步驟時,控制器206選擇325存儲器陣列204的相應(yīng)的字地址202,以啟動 測試步驟。例如,如果測試步驟要求以地址升序?qū)Υ鎯ζ麝嚵?04的字進行尋址,則相應(yīng)的 起始字地址為存儲器陣列的最低字地址。相反,如果測試步驟是以地址降序?qū)Υ鎯ζ麝嚵?204的字進行尋址,則相應(yīng)的起始字地址為存儲器陣列的最高字地址。BIST控制器206 (見圖2)對字地址的存儲器單元應(yīng)用326測試字203。如上所述, 測試字可以是“數(shù)據(jù)背景”,例如,一個完全由0組成的字,或一些其他預(yù)定義字;或者,測試 字也可以是數(shù)據(jù)背景的逆,也就是說,例如,當(dāng)數(shù)據(jù)背景為完全由0組成的字時,測試字為 完全由1組成的字。此外,在將測試字應(yīng)用于存儲器地址時,可進行多項操作,而在有些情 況下可能會應(yīng)用不止一個測試字,或者在多個操作中可能應(yīng)用同一測試字。例如,在表1的 第二個測試步驟中,首先進行一次讀操作,其中正確的測試響應(yīng)為0,然后在同一個字地址 上進行一次寫1操作。在其他類型的測試步驟中,可以對同一存儲器地址進行多次讀取和 /或多次寫入。當(dāng)進行讀取操作時,一個測試響應(yīng)字可能被獲取327。與此同時,存儲器BIST控制 器206(見圖2)可能會生成或提供一個預(yù)期測試響應(yīng)字208,以便與被獲取的測試響應(yīng)字一 起被應(yīng)用328于比較器209。也就是說,使用比較器209等方式將一個或多個測試響應(yīng)字 (例如,每個測試響應(yīng)字)與預(yù)期響應(yīng)字進行比較。在各種實施例中,比較器209是一個組 合邏輯網(wǎng)絡(luò),例如,XOR或XNOR網(wǎng)絡(luò)。比較器209會識別測試響應(yīng)字與預(yù)期響應(yīng)字有區(qū)別 的位位置。例如,如果預(yù)期響應(yīng)字為11111111,且觀察到的測試響應(yīng)字為11011111,則比較 器輸出為00100000。由此比較器209會為當(dāng)前所訪問的字地址生成測試標(biāo)記。需要注意的 是,在每一次讀操作之后,比較器209將生成329 —個測試標(biāo)記,之后再對下一字地址進行 訪問。由比較器209按上述方式生成的測試響應(yīng)標(biāo)記在本公開內(nèi)容中也可能被稱為錯誤向 量。在比較器209 (見圖2)生成測試標(biāo)記的操作329之后,標(biāo)記會被暫時壓縮330,并 存儲在標(biāo)記寄存器210中。在各種實施例中,暫時壓縮330在諸如多輸入鈴流發(fā)生器(MIRG) 等器件中采用時序邏輯,以便按順序?qū)⒈痪幋a的標(biāo)記存儲為鈴流發(fā)生器的狀態(tài)。(為保持方 法300的討論的連續(xù)性,以下將給出MIRG的詳細說明。)在各種實施例中,比較器209輸出 位被應(yīng)用331于位置數(shù)據(jù)收集器,例如FWC 211和FCI 213。方法步驟331可以與暫時壓縮 330同時進行。此外,如果滿足適當(dāng)?shù)臈l件,如下文所述,B輸入與門221可能會作為失效行 檢測器,并可能對FRI 214占用一個邏輯1。由此,比較器209 (見圖2)輸出端所示的合成差將驅(qū)動四個測試數(shù)據(jù)收集器210、 211、213和214,它們被配置為在全速測試中連續(xù)工作。應(yīng)該理解的是,在各種實施例中,可 以由除比較器209提供的合成差之外的其他錯誤模式驅(qū)動四個測試數(shù)據(jù)收集器210、211、 213和214。例如,由于測試模式字本身已知(例如作為行進測試規(guī)范的一部分),在各種實 施例中,測試響應(yīng)字可能會被直接采集至標(biāo)記寄存器中,以供后續(xù)診斷分析使用。在屬于后 者的各種實施例中,片上比較器可被省略。
在步驟331之后,BIST控制器206 (見圖2)可以確定332是否存儲器陣列的所有 字地址在此測試步驟中均已被訪問。如果此測試步驟仍有字地址需要測試,則下一個需測 試的字地址將被選擇333,此方法可以返回步驟326。如果此測試步驟的所有字地址均已 被訪問,則可從標(biāo)記寄存器210傳送334被壓縮的標(biāo)記數(shù)據(jù)。在各種實施例中,收集在FWC 21UFCI 213和FRI 214中的數(shù)據(jù)與被壓縮的標(biāo)記數(shù)據(jù)同時被傳送。在各種實施例中,傳 送目的地可以是一個ATE器件。由此,測試數(shù)據(jù)收集器210、211、213和214會經(jīng)歷對其內(nèi) 容的定期下載,例如,在每一測試步驟結(jié)束時。測試數(shù)據(jù)收集器210、211、213和214允許在 測試步驟中對測試響應(yīng)數(shù)據(jù)進行連續(xù)全速收集。在各種實施例中,測試數(shù)據(jù)的傳送334可能因采用“影子寄存器”而獲得促進。在 圖2所示的實施例中,每一個測試數(shù)據(jù)收集器210、211、213和214均分別有一個相關(guān)的影 子寄存器,215、216、217和218。其他各種實施例中也應(yīng)該理解為可能存在影子寄存器。一 旦某一測試步驟完成,測試數(shù)據(jù)收集器的內(nèi)容或者被下載至前述的ATE,或者在存在影子寄 存器的情況下被載入至相應(yīng)的影子寄存器215、216、217和218中。也就是說,在方法步驟 334中,測試數(shù)據(jù)或者被下載至ATE,或者可被載入至相應(yīng)的影子寄存器。在采用影子寄存器的各種實施例中,測試數(shù)據(jù)收集器210、211、213和214(見圖2) 將繼續(xù)以全速收集測試響應(yīng)和位置數(shù)據(jù),例如針對一個連續(xù)的測試步驟,而同時影子寄存 器215、216、217和218將以外部ATE可接受的采樣速率被卸載。影子寄存器215、216、217 和218的卸載可由來自ATE的獨立時鐘信號212b控制。值得指出的是,在本示例方式中,無 需用以傾卸或下載測試數(shù)據(jù)的測試步驟的額外中斷。在方法300的另一個步驟中,控制器 206可以確定行進測試是否已完成最終的測試步驟,如果沒有,測試將進行至下一測試步驟 335,然后返回方法步驟324。否則,行進測試結(jié)束336。繼續(xù)對圖2中的各種組件進行更詳細的討論。標(biāo)記寄存器210用于收集所有測試 響應(yīng),并生成實際的暫時壓縮錯誤標(biāo)記。在各種實施例中,標(biāo)記寄存器210從初始狀態(tài)開始 連續(xù)工作。應(yīng)該理解的是,在各種實施例中,初始狀態(tài)是標(biāo)記寄存器的所有位保持為0的狀 態(tài)。在其他各種實施例中,可能會采用標(biāo)記寄存器至少有一位非零的初始狀態(tài)。假定在本 公開內(nèi)容的其余部分,標(biāo)記寄存器被初始化為非零狀態(tài)。因此在初始狀態(tài)中,標(biāo)記寄存器的內(nèi)容處于一種指定的非零狀態(tài),表示未壓縮任 何錯誤。應(yīng)該理解的是,任何非零的“種子”均可被加載至標(biāo)記寄存器,以建立初始狀態(tài)。標(biāo) 記寄存器采用時序邏輯而非單純的組合邏輯,以使由比較器209通過比較器輸出提供給標(biāo) 記寄存器的測試響應(yīng)標(biāo)記輸出以標(biāo)記寄存器210的狀態(tài)(S卩,暫時壓縮)被按順序存儲。標(biāo) 記寄存器210的內(nèi)容被定期卸載(例如,每個測試步驟一次),以使在測試步驟中檢測到的 錯誤可以被識別和診斷。標(biāo)記寄存器210的內(nèi)容將提示在存儲器陣列中是否檢測到故障。在一些實施例中,標(biāo)記寄存器210(見圖2)可通過采用由測試響應(yīng)比較器209的 輸出驅(qū)動的多輸入鈴流發(fā)生器(MIRG)的方式實現(xiàn)。鈴流發(fā)生器是一種內(nèi)部扇出減少、邏輯 電平降低的線性有限狀態(tài)機,其經(jīng)常通過對諸如線性反饋移位寄存器等“正規(guī)”線性有限狀 態(tài)機應(yīng)用特殊變換來獲得。正規(guī)線性反饋移位寄存器是一種可滿足特定性能和架構(gòu)要求的 寄存器。MIRG相對正規(guī)線性反饋移位寄存器可以提供速度及其他優(yōu)勢。圖4示出了可在本 發(fā)明的各種實施例中用作標(biāo)記寄存器的MIRG 410的示例。各個鎖存器437被相互連接,使 一個鎖存器的輸出被作為另一鎖存器的輸入和/或邏輯網(wǎng)絡(luò)(例如邏輯網(wǎng)絡(luò)438中的任何一個)的輸入。任何邏輯網(wǎng)絡(luò)438均可以是例如XOR或XNOR等網(wǎng)絡(luò),且不需要完全相同的 邏輯網(wǎng)絡(luò)。MIRG中鎖存器438中的一些被連接,以便從邏輯網(wǎng)絡(luò)(例如XOR或XN0R)而非 直接從另一鎖存器接收輸入,以實現(xiàn)與相關(guān)“正規(guī)”線性反饋移位寄存器完全相同的性能。 此外,XOR或XNOR網(wǎng)絡(luò)438中有一些被配置為“注入器”網(wǎng)絡(luò)439。注入器運行以接收 MIRG外部的輸入,或從MIRG提供輸出。在圖4中,注入器網(wǎng)絡(luò)439運行以接收來自比較器 209(見圖2)的輸入??捎糜谒_的實施例中的鈴流發(fā)生器的示例在以下文獻中有進一 步說明G. Mrugalski, J. Rajski, J. Tyszer, "Ring generators-Newdevices for embedded deterministic test”(鈴流發(fā)生器-用于嵌入式確定性測試的新器件),IEEE Trans, on CAD,第23卷,第9期,2004年9月,1306-1453頁,在此通過參考將其整體合并入本申請中。繼續(xù)對集成電路器件207(見圖2)的討論。失效字計數(shù)器(FWC)211可在一些實 施例中用于對不正確的測試響應(yīng)字計數(shù)。B輸入或門219和與門220這兩個門電路依次置 于比較器209與FWC 211之間,可用于對時鐘線212a進行開閉,以使FWC 211僅在至少有 一個錯誤經(jīng)比較器輸出傳播時才被觸發(fā)。一旦一個完整的測試步驟完成,F(xiàn)WC 211將提供 關(guān)于失效存儲器字數(shù)量的非常精確的信息。概括而言,任何計數(shù)器件均可用來作為FWC 211(見圖2)。然而由于時間上的限 制,線性反饋移位寄存器(LFSR)可被用作高效率的事件計數(shù)器,其遞增功能僅通過寄存器 的一次移位即可實現(xiàn)。具體而言,鈴流發(fā)生器可以在高于常規(guī)事件計數(shù)器和正規(guī)LFSR的速 度下運行。圖5所示為以0. . . 001狀態(tài)初始化的基于鈴流發(fā)生器的失效字計數(shù)器511,其中 實心黑色處表示寄存器中一個邏輯1的位置。鈴流發(fā)生器相比正規(guī)形式LFSR,顯著降低的 與或邏輯電平數(shù)值、最大幅度減少的內(nèi)部扇出以及簡化的電路設(shè)計和布線可以實現(xiàn)更高的 運行速度。因此,在所公開技術(shù)的某些實施例中,采用了一個小型鈴流發(fā)生器511來對不 正確的測試響應(yīng)字計數(shù)。在某些情況下,此電路以一種特定方式運行,以實現(xiàn)其計數(shù)功能。 鈴流發(fā)生器運行的更多詳情在下文中結(jié)合圖14和圖24進行討論。如圖2的實施例所示,集成電路器件207還包括一個失效列指示器(FCI)213。失 效列指示器213在一單一測試步驟的整個過程中存儲失效輸出位的位置,僅在錯誤會影響 比較器209所有輸出的情況下例外。后一種情況可由置于比較器209的輸出與FCI 213的 時鐘輸入之間的兩個與門221和222進行處理。在一些實施例中,每次有一測試步驟完成時,F(xiàn)CI 213(見圖2)的內(nèi)容即被下載。 在追蹤類似單一單元/列的故障模式時,F(xiàn)CI 213可以示出應(yīng)被視為失效單元的垂直存儲 器段。此外,F(xiàn)CI 213還可以縮短確定準確故障位置所需的時間。圖6所示為一種失效列指示器(FCI)的實施例613。FCI 613包含B個或門640, 分別針對測試響應(yīng)字的每一位。每個或門640的一個輸入從比較器209 (見圖2)接收一個 測試響應(yīng)標(biāo)記位?;蜷T640的輸出被輸入至D型觸發(fā)器641。D型觸發(fā)器輸出被作為或門 的第二輸入返回至或門640。通過此方式,F(xiàn)CI 613將以累積方式動作,即一旦一特定列被 確定為存在故障,F(xiàn)CI 613將保留一個表示該列中一個錯誤的數(shù)值,直至測試步驟結(jié)束。返回圖2,F(xiàn)CI 213的時鐘通常取決于對特定故障模式的檢測。對于涉及屬于同一 行的所有單元的錯誤,僅使用一個B輸入與門221即足以檢測一個行故障并阻止FCI 213 占用其所有位,如圖2所示。然而,對形成行中部分故障的錯誤的檢測和記錄卻更為復(fù)雜,需要一個失效行檢測器,如圖7所示。盡管在圖7電路中未示出存儲器BIST控制器,但應(yīng) 該理解的是,圖7的實施例還包括一個與圖2中控制器206配置類似的BIST控制器。圖7的電路可使所有在至少三個相鄰垂直段上延伸的行中部分故障被檢測到,但 不會被FCI 713記錄。失效行檢測器721在圖742中被放大。如其所示,失效行檢測器721 包括三個或門743。任何時候只要有三個連續(xù)位呈現(xiàn)故障,這三個或門743全部會在其輸出 端呈現(xiàn)邏輯1。在此情況下,與門744也會在其輸出端呈現(xiàn)邏輯1,提示檢測到失效行(在此 失效行是指行中有三個或更多位存在故障)。與此同時,任何一位的單一故障將被或門743 之一傳遞至或門745,并由此傳遞至或門745的輸出。這樣,圖7的失效行檢測器721將取 代圖2的門電路219和221,并執(zhí)行不太嚴格的“失效行”定義。其結(jié)果是,此類失效行將不 會被錯誤地作為多列故障處理。如前文所提到的,所公開技術(shù)的各種實施例均包含一個可作為FCI 213之補充的 失效行指示器(FRI) 214。其他各種實施例可能包含一個FRI 714,用以對上述FCI 713加 以補充。在包含F(xiàn)RI 714的各種實施例中,F(xiàn)RI會存儲與行中出現(xiàn)的錯誤相關(guān)的信息。圖8A所示為失效行指示器814的一種形式,其中觸發(fā)器847從圖7的失效行檢測 器721或圖2的與門221接收一個邏輯1,并保持邏輯1,直至其被轉(zhuǎn)移至FRI移位寄存器 849。由此,失效行指示器814將追蹤哪些行被檢測為失效行,哪些行不是。移位寄存器849 是一個至少R位的移位寄存器,其每一位分別對應(yīng)于存儲器陣列204 (見圖2)的每一行。典 型情況下,B > R,因此可以采用B位移位寄存器,如圖所示。當(dāng)一個測試步驟中的測試轉(zhuǎn)至另一行時,存儲在移位寄存器849中的位將與寄存 器一同推進。當(dāng)對一行內(nèi)的字的測試完成時,通過檢測到行地址寄存器850內(nèi)的溢出(ovf, 848)來完成移位寄存器849的計時。例如,假設(shè)每一行包含四個字。第一個字的地址可 能是,例如00000000。下一字的地址可能是00000001。第三個和第四個字的地址分別為 00000010和00000011。此后,使地址寄存器遞增,以推進至存儲器中的下一個字地址,存儲 器將給出地址00000100。也就是說,隨著存儲器地址推進至下一行,對地址寄存器的最低 兩位進行遞增已產(chǎn)生溢出(這兩位的溢出)。地址寄存器850每次由以11結(jié)尾的地址轉(zhuǎn) 至下一后續(xù)地址時,就會發(fā)生這種溢出。由此,ovf信號848可以觸發(fā)觸發(fā)器847的復(fù)位, 也可以觸發(fā)移位寄存器849,以追蹤存儲器內(nèi)的哪一行當(dāng)前在接受測試中,以及哪些行有或 沒有故障。也就是說,移位寄存器849中的連續(xù)位與包含特定行數(shù)的存儲器陣列204(見圖 2)的水平段有一一對應(yīng)的關(guān)系。其結(jié)果是,保留在FCI 213和FRI 214內(nèi)的獨立信息可用 于隔離存儲器陣列204中出現(xiàn)實際故障的部分。失效行指示器(E-FRI)846的一種增強型的實施例在圖8B中示出。增強型失效行 指示器846可用于提高對與行相關(guān)的錯誤的辨識度。由于行地址寄存器850的兩位寄存器 L所引入的延遲,每次在連續(xù)三個時幀內(nèi)比較器209(見圖2)的任何輸出出現(xiàn)至少三個錯誤 時,右側(cè)觸發(fā)器將收到一個邏輯1。它還使延伸不超過三個相鄰垂直段的行中部分故障可以 被增強型失效行指示器檢測到并報告。更詳細地講,增強型失效行指示器846包含一個B位移位寄存器849,任何時候只 要行地址寄存器850發(fā)生溢出,該寄存器就被計時。D型觸發(fā)器851a、851b和851c被配置 為對同一行內(nèi)三個連續(xù)的字故障進行寄存。當(dāng)這種情況發(fā)生時,D型觸發(fā)器851c將向移位 寄存器849提供一個邏輯1輸出,以便在移位寄存器849被行地址寄存器850的溢出848計時時記錄行故障。圖9示出了與圖8中E_FRI 846類似的增強型失效行指示器946在一內(nèi)建自診斷 (BISD)環(huán)境中的應(yīng)用。盡管存儲器BIST控制器在圖9電路中未示出,但應(yīng)該理解的是,圖 9的實施例也包含一個配置與圖2中控制器206類似的BIST控制器。應(yīng)注意,盡管失效行 檢測器721 (見圖7)和921具有相同的電路742和942,但失效行檢測器921和增強型失 效行指示器946之間的連接卻與失效行檢測器721和失效行指示器714之間的連接不同。 其區(qū)別在于,增強型失效行指示器946接收來自失效行檢測器921的或門945的輸入,而失 效行指示器714接收來自與門744的輸入?;乜瓷衔?,在圖7的實現(xiàn)方式中,失效行檢測器 721被配置為在同一字的相鄰三位發(fā)生故障時作出檢測。而在圖8的實施例中,失效行檢測 器921與增強型失效行指示器946 —起檢測一行中三個連續(xù)的失效字。對一行中三個失效 字的檢測又一次成為嚴格程度比采用與門221的圖2中所實施的條件要低的寄存失效行的 條件。集成電路器件207(見圖2)的三種具體實施例已經(jīng)被討論圖2本身所示的實施 例、圖7所示的實施例以及圖9所示的實施例。每一種實施例均支持用于失敗的存儲器測 試的被壓縮測試標(biāo)記和存儲器位置數(shù)據(jù)的收集。在下文對故障模式和故障診斷的討論中, 將參考圖9中所示的實施例。如上文所討論,在一測試步驟結(jié)束時,被壓縮的測試響應(yīng)標(biāo)記數(shù)據(jù)和存儲器位置 數(shù)據(jù)被提供給ate。隨后,被壓縮的測試響應(yīng)標(biāo)記數(shù)據(jù)和存儲器位置數(shù)據(jù)可由ATE送至診斷 工具(2800,見圖28)。所述診斷工具對被壓縮的標(biāo)記數(shù)據(jù)應(yīng)用診斷規(guī)程,以確定失效存儲 器單元的位置。所述診斷規(guī)程基于對故障模式的分析,下文中結(jié)合表2進行討論。所述診 斷規(guī)程還利用線性反饋結(jié)構(gòu)的特性實現(xiàn)對失效存儲器單元位置的高效率確定,如下文所介 紹。如下文討論所述,還可采用查詢表實現(xiàn)對故障模式和位置的高效率搜索,以記錄相應(yīng)的 失效存儲器單元。首先轉(zhuǎn)至故障模式分析。故障模式可被歸類,各類間即可通過存儲器陣列中故障 模式的布局加以區(qū)別,又可通過在存在這些類型的故障模式的情況下所收集的FWC、FCI和 FRI的值加以區(qū)別。在表2及下文更多的討論中,F(xiàn)WC、FCI和FRI可以指代由FWC211、FCI 213和FRI 214所收集的值。在FWC 211(見圖2)、FCI 213和FRI 214中收集數(shù)據(jù)的根本目的是要基于被壓縮 的測試響應(yīng)標(biāo)記實現(xiàn)對存儲器測試故障的高效率診斷。以下參照故障模式類別對FCI、FRI 和FWC的可能組合進行了歸納。故障模式類別以及FCI、FRI和FWC的相應(yīng)內(nèi)容在表2中 給出。此外,下文還給出了能夠產(chǎn)生FCI、FRI、FWC的一些組合的若干故障示例。表2.故障模式類別與FCI、FWC和FRI的相應(yīng)內(nèi)容 在故障模式類別被列入表2中的故障的第一個示例中,兩個對角單元呈現(xiàn)故障。 這對應(yīng)于表2中的3號故障模式類別。有兩種如圖10中所示的可能情況。在此圖中,存儲 器陣列中的斜線表示失效存儲器單元。在第一種情形即A中,兩個失效單元均屬于同一垂 直段1005a。因此,F(xiàn)CI 828 (見圖8)僅在比較器822的一個輸出上提示錯誤(見表2中第 3行的第一部分)。在第二種情形即B中,失效單元屬于兩個相鄰垂直段1005a和1005b。 此時,F(xiàn)CI 828的兩個相鄰觸發(fā)器在比較器822輸出上提示錯誤(見表2中第3行的第二 部分)。在兩種情形下,兩個錯誤均在不同的時隙內(nèi)出現(xiàn)在比較器822的輸出端,因此FWC 826的值為2。由于在任何三個連續(xù)的時幀內(nèi)比較器的任何輸出端均無“1”出現(xiàn),F(xiàn)RI 946不會報告任何錯誤。在第二個示例中,同一列中的所有單元均顯示故障。這對應(yīng)于表2中的7號故障 模式類別。這種情況的一個示例在圖11中示出。對于此類故障模式,所有故障均將傳播至 比較器822(見圖8)的同一輸出,因此只有一個FCI 828觸發(fā)器提示錯誤。準確存在R個 失效存儲器單元,因此FWC 826的值為R。與前例類似,F(xiàn)RI 946不會受到影響。在故障模式類別被列入表2中的故障的第三個示例中,一行及一列中的所有單元 均呈現(xiàn)故障,如圖12所示。這對應(yīng)于表2中的12號故障模式類別。對于此類故障模式,F(xiàn)CI 828(見圖8)僅提示一個錯誤位,因為僅有不完整的字故障被存儲在FCI中。一般而言,有 W個完全錯誤的字僅影響一個FRI 946位。盡管不正確的測試響應(yīng)字的數(shù)量可能達到W+R, 但僅有W+R-1個錯誤字會被FWC計數(shù)。這是因為一個失效單元也屬于失效行。診斷技術(shù)現(xiàn)在轉(zhuǎn)向關(guān)于如何按照各種實施例進行故障診斷的討論。在不同情況下可以應(yīng)用 若干種診斷技術(shù)來確定失效存儲器單元的位置。在本公開內(nèi)容中,將討論四種通用診斷技 術(shù),它們可單獨使用或相互組合使用,在MBIST環(huán)境中進行精確的故障診斷。應(yīng)該理解的 是,這些診斷技術(shù)在有些實施例中可以在芯片上實施。在其他實施例中,診斷技術(shù)可能在處 于受試集成電路器件之外的獨立的診斷工具內(nèi)應(yīng)用。在本公開內(nèi)容中,診斷技術(shù)還會被稱 為診斷方案。通常,所公開的診斷技術(shù)實施例遵循前文所示的全速測試數(shù)據(jù)收集方式。根據(jù)存 儲器故障類型(例如由FCI 828、FRI 946和FWC 826(見圖8)的內(nèi)容進行提示),可以采 用此處所述的方案之一使診斷過程具備高時間效率且精確。在本公開內(nèi)容的其余部分,將 采用以下標(biāo)記法每當(dāng)有觸發(fā)器在圖中示出時,其內(nèi)容就由分別對應(yīng)于邏輯值1和0的黑色 和白色框表示。與前文討論類似,存儲器陣列中的斜線表示失效存儲器單元。第一種診斷技術(shù)在本文中稱為離散對數(shù)方式(DELTA),可用于診斷在存儲器陣列 中最常出現(xiàn)的大多數(shù)故障。作為示例,考慮圖13中所給出的故障,圖中示出了由于存儲器 單元失效而向標(biāo)記寄存器1310注入錯誤的情況。假設(shè)由失效基準單元C。生成的標(biāo)記已知, 且其最初被存儲在標(biāo)記寄存器1310中。將故障單元Cx的位置移離基準單元(即增加距離 x) 1對應(yīng)于將標(biāo)記寄存器1310推進一個時鐘周期。此時診斷規(guī)程的主要目的是確定基準單 元與故障單元間的距離X。在另一種替代方式中,必須獲得自一個錯誤被標(biāo)記寄存器記錄起 已被應(yīng)用于標(biāo)記寄存器1310的時鐘周期數(shù)。根據(jù)時鐘周期數(shù)、測試算法和尋址方案,可以 確定距離X?,F(xiàn)在討論的診斷技術(shù)DELTA采用的是基于離散對數(shù)的方法。關(guān)于基于離 散對數(shù)的方法的更多詳情在以下文獻中提供D. W. Clark, L-J. ffeng, "Maximal and near-maximal shift register sequences :efficient event counters and easy discrete logarithms”(最高和接近最高的移位寄存器順序高效率的事件計數(shù)器和簡便 的離散對數(shù)),IEEE Trans. onComputers,第 43 卷,第 5 期,1994 年 5 月,第 560-568 頁,在 此通過參考將其整體合并入本申請中?;陔x散對數(shù)的方法可解決以下問題在給定一個 內(nèi)部異或LFSR(伽羅瓦LFSR)及其特定狀態(tài)的條件下,假設(shè)LFSR最初被置為0. . . 001,確 定達到該狀態(tài)所需的時鐘周期數(shù)。此方法采用中國剩余定理,并需要對LFSR狀態(tài)的合理數(shù) 量進行預(yù)計算,這些狀態(tài)一經(jīng)產(chǎn)生,即可存儲在查詢表(LUT)中。需要預(yù)計算的LFSR狀態(tài)數(shù)由H^m2+. . . +mk給出,其中乘積Hi1 · m2 · · · · · mk給出了 LFSR的周期m。此周期應(yīng)謹慎選 擇,以確保較小的系數(shù)值Hii (每一周期有不同的因數(shù)分解)。預(yù)計算可以采用以下所介紹的 快速LFSR仿真高效率地進行。例如,在2. 4GHz CPU上生成55位壓縮器所需的所有值需要 約5秒鐘。DELTA的時間效率非常高,通常適用于在固定時間內(nèi)使用。預(yù)計算階段通常僅在診 斷工具中執(zhí)行一次。預(yù)計算的一種具體實施例可以歸納為執(zhí)行以下方法(可單獨執(zhí)行,或 以相互間的各種組合和子組合的方式執(zhí)行)1.找出LFSR周期m的質(zhì)因數(shù)分解Hi1I2*... ^mk-見圖14中的步驟1,該圖詳細 示出了離散對數(shù)方式的預(yù)計算階段。此處k為m的質(zhì)因數(shù)的數(shù)目。例如,在圖14中,m = 21,k = 2,其中 Hi1 = 3,m2 = 7。2.對于一個或多個周期Hii (例如對于每個Hii),通過對初始化為0. . . 001的LFSR 進行仿真,生成一個大小為Hii的LUT (應(yīng)注意每一個LUT項均需要HiAii的計算步驟-見圖 14中的箭頭)。對圖14中所示的LFSR 1452的連續(xù)狀態(tài)進行評價很簡單。例如,在轉(zhuǎn)變 中,自從最右側(cè)觸發(fā)器中的1位在時鐘作用下進入緊鄰最右側(cè)的觸發(fā)器中(其他所有觸發(fā) 器均保持為0,如圖所示),LFSR由狀態(tài)00001向狀態(tài)00010轉(zhuǎn)變。同樣,在轉(zhuǎn)變中,自從最 左側(cè)觸發(fā)器中的1位在時鐘作用下進入最右側(cè)觸發(fā)器以及(通過與或網(wǎng)絡(luò),Θ)進入緊鄰 最右側(cè)的觸發(fā)器中,LFSR由狀態(tài)10000向狀態(tài)00011轉(zhuǎn)變。然而對于大型LFSR,對LFSR仿 真并生成所有LUT項所需的時間量可能無法讓人接受。在此類情況下,可以采用下文所討 論的快速LFSR仿真作為替代。在此方法的執(zhí)行過程中還可進一步使用LUT查找某些值,例 如,在下一段第2項將要討論的位置計算當(dāng)前LFSR狀態(tài)與初始狀態(tài)之間的距離時需要 該值。 3.對于每一個IV找出對應(yīng)的整數(shù)Vi使^"KElmodm、對于m = 21、mi = 3,m2
=7,可以查出Vl = l,v2 = 5。數(shù)值Vi也是LFSR距離計算所必需的,將在下一段中示出。在一種實施方式中,每次DELTA被啟動時,就會對對應(yīng)于一個給定故障的LFSR的 給定內(nèi)容y執(zhí)行以下方法操作1.對于每一系數(shù)IV將被作為多項式的y升至HiAii的指數(shù)冪,再將結(jié)果除以LFSR 特征多項式ρ(χ),以獲得余數(shù)ym/mimodp(x)。假設(shè)LFSR處于狀態(tài)01010,(y = χ3+χ), ρ (χ) =χ5+χ+1ο相應(yīng)的余數(shù)如下ym/mi modp(x) = (λ:3 + xfm modx5 + x +1 = χ4 + χ2 + χ = (10110) [οι 27] 產(chǎn) mod p(x) = (jc3 + x)2W modx5 + χ+1 = x4 + x2 = (10100) 2.對于步驟1中得到的每個余數(shù),在LUT中查找其對應(yīng)位置ri;見圖15。在本例 中,第一個余數(shù)10110是HI1 WLUT中的gl2。第二個余數(shù)10100是m2 WLUT中的&4。因此,
ri = 2, r2 = 4,如圖15所示,圖中示出了離散對數(shù)方式中對查詢表的搜索。
Ek τη ,
^ ‘―v^modm ’以得出LFSR的當(dāng)前狀態(tài)與初始狀態(tài)0... 001之間
的距離L
22
事實上,可以查出,01010(即狀態(tài)LFSR列表1453中的gll (見圖14))系由初始 LFSR1452狀態(tài)經(jīng)過11次LFSR狀態(tài)轉(zhuǎn)變后得到。對上述失效字計數(shù)器應(yīng)用DELTA的方式很簡單。類似地,如果希望對在上文同一 節(jié)中介紹的標(biāo)記寄存器應(yīng)用此方法,則理想方式是對每一標(biāo)記啟動DELTA兩次。此過程由 以下兩例加以說明例1 假設(shè)由一個單一的故障單元Cx生成圖16中的標(biāo)記S(Cx) 1654。圖16所示 為一多輸入鈴流發(fā)生器內(nèi)的標(biāo)記寄存器軌跡。在各種實施方式中,初始狀態(tài)(0...0001) 與對應(yīng)于最后一行(R-I)中最右側(cè)故障單元Ctl的狀態(tài)之間的基準距離L,ef 1655由其標(biāo)記 S(Ctl) 1656確定。此狀態(tài)可通過在輸入ID1處對空MIRG的單一注入來獲得(見圖13)。接下 來,確定初始狀態(tài)(0. . . 0001)與MIRG實際狀態(tài)之間的距離Lx 1657。故障單元Cx的位置 為 χ = Lx-Lref 1658。例2.考慮一個生成標(biāo)記S(Cx)的單列故障。圖17示出了單列故障Cx和基準列 C。在此,存儲器陣列的一個給定垂直段的最右側(cè)列Ctl承擔(dān)基準的作用。由于MIRG是線性 電路,代表基準列S(Ctl)的標(biāo)記可通過加上由屬于本列的故障單元生成或存儲在LUT中的 模為2的標(biāo)記來獲得。接下來,如上文例1所示,Lref和Lx的值可被確定,隨后即可確定失 效列的實際位置。第二種診斷方法在本文中稱為快速LFSR仿真。在此技術(shù)中,已采用0和1的 任意組合進行初始化的LFSR在給定數(shù)目的時鐘周期之后的狀態(tài)可以通過一種具備高時 間效率的方式確定。關(guān)于此技術(shù)的更多細節(jié)在以下文獻中給出J.Rajski,J. Tyszer, “Primitivepolynomials over GF(2)of degree up to 660 with uniformly distributed coefficients"(最高660度的GF(2)上、采用均勻分布系數(shù)的本原多項式),Journal of Electronic Testing =Theory and Application(電子測試期刊理論與應(yīng)用,JETTA),第 19 卷,Kluwer AcademicPublishers (Kluwer 學(xué)術(shù)出版社),2003 年,第 645-657 頁,在此通 過參考將其整體合并入本申請中。如前所述,快速LFSR仿真技術(shù)可用于獲取DELTA及本文 所給出的其他診斷技術(shù)所需要的LFSR狀態(tài)。此類技術(shù)的各種實施例使用一個nXnLUT來存儲LFSR在應(yīng)用一定數(shù)目的時鐘周 期后的η位狀態(tài),如圖18所示。圖18所示為一個采用多項式χ4+χ3+1的內(nèi)部異或LFSR的 快速LFSR仿真的數(shù)據(jù)結(jié)構(gòu)示例。在圖18中,4位LFSR 1852的連續(xù)狀態(tài)被示出1853。在 4X4LUT 1859中,只有該表的第一行需要實際仿真,以確定LFSR在應(yīng)用一個單一時鐘周期 后的內(nèi)容。該表的每一列對應(yīng)于在一指定位置包含一個單個“1”的LFSR的一種初始狀態(tài)。 這些狀態(tài)在本文中稱為單重態(tài)。表中后續(xù)行完全采用疊加原理得出。圖18示出了 1、2、4 和8步后的LFSR狀態(tài).例如,第二行、最后一列中的值是第一行中第一個和最后一個列項 之和,因為前述(上文)標(biāo)記由兩個1組成,分別對應(yīng)于第一列和最后一列。使用如圖18中所示的表,可以很容易地在不超過η步內(nèi)確定LFSR在任意選擇的 χ個周期后的狀態(tài)。每一步可包括最多η次LUT查詢;因此此過程的計算復(fù)雜度為0(η2)。 首先,χ被表示為2的指數(shù)冪之和。對于每一個此類分量,LFSR的當(dāng)前內(nèi)容均被分解為單 個的1。接下來,由于疊加原理,對于每個單個1,給定數(shù)目的時鐘周期之后的LFSR狀態(tài)從LUT中檢索得出,并被逐位異或處理,由此給出LFSR的最終狀態(tài)。下例示出了這種技術(shù)。例讓一個內(nèi)部異或LFSR采用本原多項式x4+x3+l,并初始化為1010,如圖19所 示1960,該圖為一個快速LFSR仿真的示例。假設(shè)要找出LFSR在χ = 11個時鐘周期后達 到的狀態(tài)。由于11 = 2°+2、23,此技術(shù)可按圖19所示的三個步驟進行。在第一步中,例如, LFSR狀態(tài)0110 (在1961處示出)被分解為兩個分量0100和0010,圖19中分別在1962和 1963處示出。圖18的表給出組合1010和0101,作為可在8個周期后達到并對應(yīng)于上述組 合的LFSR狀態(tài),分別在1964和1965處示出。這兩個狀態(tài)求和將得出所要的LFSR狀態(tài),即 1111,如圖所示1966。所給出的快速LFSR仿真技術(shù)通常適用于任何類型的線性有限狀態(tài) 機,包括鈴流發(fā)生器。上文所述的離散對數(shù)方式能夠診斷出可存儲或生成基準標(biāo)記之處的故障。然而在 某些情況下,生成所有基準標(biāo)記可能并不切實際。例如,如果一個故障由兩列構(gòu)成(圖20), 則基準標(biāo)記組合將包含2 · W項,因此進行診斷所需的CPU時間就會無法接受。為了處理較為復(fù)雜的故障,可以采用線性方程組。例如,考慮一個由單一行故障生 成的標(biāo)記。由于MIRG為線性電路,相應(yīng)的標(biāo)記可以很容易地得到,即對與此特定行的單個 存儲器單元相關(guān)的失效標(biāo)記進行逐位相加。此外,多列/行失效標(biāo)記可通過將對應(yīng)于單列/ 行故障的模為2的標(biāo)記相加而計算得出。因此,可通過求解GF(2)上的線性方程組找出有 缺陷的行或列。在這些方程中,布爾值變量表示列或行,每個方程則對應(yīng)于一個單一的標(biāo)記 位。它們可通過諸如高斯-約當(dāng)消元法等方法獲得簡化。由于失效列/行的數(shù)量已知(例 如通過FWC值),可以求得預(yù)期重數(shù)的解。如果無法求得這種解,可針對不同的關(guān)鍵變量順 序重復(fù)使用高斯消元法。實驗表明,只要MIRG的尺寸大到可以確保足夠的診斷分辨率,預(yù) 期重度的第一解幾乎100%正確。例.再考慮一個涉及兩個垂直段中兩列的故障,如圖20所示。從表2(見8號故障 模式類別)中,可以看到失效列指示器提示存儲器陣列的垂直段有失效列。因此,僅對應(yīng) 于兩段中的列的變量被加入方程中。屬于一個垂直段的連續(xù)列的標(biāo)記可以由存儲在查詢表 中且對應(yīng)于段中最右側(cè)失效列的標(biāo)記得出,方法是對每列進行簡單單步MIRG仿真。圖21以矩陣方程的形式給出了對應(yīng)于圖20中故障的線性方程組,其中圖20的
c0> C1.....C7為針對存儲器陣列中相應(yīng)列分配的布爾變量。這8個變量被安排為圖21中
的列向量2167。S(Ci)是與Ci相關(guān)的列的一個標(biāo)記,對應(yīng)于該列中的一個故障;也就是說, 每個S(Ci)都是一個B位標(biāo)記。如圖21所示,8個B位標(biāo)記的組合被列為一個BX8矩陣 2168。S (實際故障)為所觀察到的實際失效標(biāo)記,被表示為B位列向量2169。使用FCI和 FffC( = 2R)所提供的信息,可得出圖21中矩陣方程的解,其中ICtl, . . . , C3I中的一個變量 和{C4,...,C7}中的一個變量被置為1。為提高獲得實際解的可能性,可針對不同的關(guān)鍵變 量順序重復(fù)高斯消元過程。最后,在某些情況下,DELTA和線性方程方法都不能采用,原因在于以下現(xiàn)象。假 設(shè)一個故障由一個單一失效列和一個單一失效行組成。所有失效單元均在圖22a中示出。 由于線性方程方法采用疊加原理,其應(yīng)用將導(dǎo)致將單一行和單一列的標(biāo)記混在一起。然而, 這兩個標(biāo)記的模為2的和將實際生成對應(yīng)于圖22b中所示的一個故障的另一個標(biāo)記??梢?看到,這兩個圖之間存在明顯的差異。在采用疊加原理的方式中,“交叉”單元的因素被抵 消,因為它被加了兩次,模2,而實際測試僅對此單元檢查一次。由于這種差異,解通常無法得到,優(yōu)選采用其他診斷技術(shù)。以下各段將介紹一種此類診斷技術(shù)的示例。失效行與列有交叉的情況下,可進行標(biāo)記仿真。使用一種方式,標(biāo)記寄存器的“軟 拷貝”(即在診斷工具2800的存儲器中創(chuàng)建的副本,見圖28)存儲失效行、列以及“交叉”單 元的部分標(biāo)記。此類軟拷貝可能在本文中被稱為軟標(biāo)記寄存器。此后對每一個相互配置對 所述的部分標(biāo)記進行異或處理,并將其和與實際失效標(biāo)記進行比較。此方式由下例示出。例.再考慮圖22a中單一列和單一行的故障。實際故障的標(biāo)記可通過將模為2的 三個標(biāo)記相加得到S(actual_failure) = S (row_x)+S (column_y)+S (cell_(x, y)) (1)S(實際故障)=S(行 x)+S(列 y)+S(單元(x,y)) (1)對應(yīng)于失效行、列和單元的基準標(biāo)記被存儲在LUT中。三個軟標(biāo)記寄存器S,、SC和 Si可分別用于表示與一行、一列和一個交叉單元相關(guān)的標(biāo)記。根據(jù)各種實施例,標(biāo)記仿真的過程可包括以下方面1.檢索存儲在LUT中的行、列和單元標(biāo)記,并將其分別分配至民、Sc和Sp2.如果滿足方程(1),則得出解;否則3.將ScJPSi推進1步(見圖23,該圖所示為用于獲取針對相鄰單元內(nèi)故障的標(biāo) 記的MIRG仿真)。4.如果Si的仿真步驟數(shù)已達到W的值,則將S,推進W步(獲取下一失效行的標(biāo) 記),重新分配LUT中的列標(biāo)記,并返回步驟2。對于圖22a所示的故障,仿真將最多進行W · R次比較,最壞情況下一個鈴流發(fā)生 器(RG)約需3 (W · R)個仿真步驟。將鈴流發(fā)生器映射至伽羅瓦LFSR軌跡如上文所述,所公開技術(shù)的一些實施例采用鈴流發(fā)生器來實現(xiàn)計數(shù)器和標(biāo)記寄存 器。然而,以上給出的DELTA方法通常采用能夠劃分多項式的LFSR。此外,唯一具備此能力 的器件是伽羅瓦(內(nèi)部異或)LFSR。為使用鈴流發(fā)生器而非伽羅瓦LFSR,鈴流發(fā)生器軌跡可 被映射至內(nèi)部異或LFSR的軌跡中。只要采用保留有相應(yīng)LFSR的轉(zhuǎn)變功能的鈴流發(fā)生器, 以上映射即可實現(xiàn)。參見,例如,J.-F. Li,C-W. Wu,“Memory faultdiagnosis by syndrome compression"(由綜合壓縮進行的存儲器故障診斷),Proc. DATE, 2001年,第97-101頁。 由此,LFSR與鈴流發(fā)生器均可生成同樣的最大長度序列(或稱m序列)。圖24中示出了一 個此類等效器件的示例。在圖24中,LFSR 2452和鈴流發(fā)生器2411的等效之處在于,它們 生成同一 m序列,且特征多項式p(X)均為x2°+x18+x16+x12+x7+x3+l。圖25示出如何獲得LFSR狀態(tài)與一等效鈴流發(fā)生器狀態(tài)間的映射。為了找到狀 態(tài)映射函數(shù),在所公開技術(shù)的一種實施例中,使用者將確定在相應(yīng)鈴流發(fā)生器(RG)2511和 LFSR2552輸出上出現(xiàn)的至少M個連續(xù)值,并視其為相等,其中M為以位表示的鈴流發(fā)生器 尺寸。兩器件的符號仿真均針對M個時鐘周期進行,LFSR 2552和RG 2511的輸出值就特 征多項式P (χ) = x4+x3+l相匹配,如圖25所示。被匹配的輸出值出現(xiàn)在幀2570a和2570b 中。以對應(yīng)于M個連續(xù)時鐘周期內(nèi)相應(yīng)LFSR/RG觸發(fā)器值的變量建立一個線性方程組a = wd = χd+c = y(2)
d+c+b = y+z使用符號高斯消元法,以上方程可簡化如下a = wd = χc = x+y(3)b = ζ例假設(shè)鈴流發(fā)生器已達到狀態(tài)wxyz = 1110。方程組(3)得出伽羅瓦LFSR的相 應(yīng)狀態(tài),在本例中,即為abed = 1001。此結(jié)論可采用不同的方式加以確認,即對LFSR2552 和RG 2511進行窮舉仿真,如表3所示。可以看出,RG狀態(tài)wxyz = 1110對應(yīng)于LFSR狀態(tài) abed = 1001,反之亦然。表3. LFSR 和 RG 仿真 故障模式的查詢表表2所示的歸類可用于建立故障模式查詢表,其中查詢表使用FWC、FCI和FRI值 來確定可能對應(yīng)于這些位置信息值的故障模式。因此,為了對最普遍的故障模式加快診斷 規(guī)程,特定代表性的故障的標(biāo)記可存儲在LUT中。一經(jīng)確定,它們在此后即可用作基準???用于所公開之MBIST診斷方案實施例中的預(yù)計算標(biāo)記的示例被歸納在表4中。表4.故障模式查詢表 故障模式及相應(yīng)的診斷技術(shù)如上所述,可以采用多種診斷方案來處理因存儲器測試故障而產(chǎn)生的位置信息和 被壓縮標(biāo)記數(shù)據(jù)。本節(jié)及其各小節(jié)給出故障模式示例以及根據(jù)FWC、FCI和FRI寄存器內(nèi)容 對其進行處理的技術(shù)。盡管下文所給示例包括表示一種可能流程的數(shù)字編號,所述方法操 作在某些情況下仍可能以一種不同的順序或者同時進行。圖26為示出在這些示例中使用 的一種整體存儲器診斷流程實施例的流程圖。在表5中標(biāo)示的A至R小節(jié)的討論之后,將 對圖26進行進一步討論。在每一具體情形中啟動的操作被歸納于表5中。應(yīng)注意,變量P 在本節(jié)中用于表示M位MIRG的一個周期。通常,P等于2M-1。表5.故障模式 現(xiàn)在在以下情形中對表5中的故障模式診斷策略進行說明。情形A. —個單元 1.確定MIRG的狀態(tài)0. . . 01與其當(dāng)前狀態(tài)之間的距離Lx。2.從LUT中獲取一個單一單元故障的基準標(biāo)記。3.確定基準距離Lref。4. L 一 Lx-Lref ;如果 L < 0,則 L 一 L+P。5.聲明 L<W*R。6.返回如下的失效單元坐標(biāo)(x,y) :x = W-I-(LmodW),y = R-l-L/W,(χ是一個失 效段內(nèi)的列編號)。情形B.兩個單元 1.確定MIRG的狀態(tài)0. ..01與其當(dāng)前狀態(tài)之間的距離Lx。2.從LUT中獲取相應(yīng)存儲器段的單一單元故障的基準標(biāo)記,并對其進行異或操 作,以獲得實際的基準標(biāo)記。3.確定基準距離Lref。4. L- Lx-Lref ;如果 L < 0,則 L 一 L+P。5.聲明 L<W*R。6.返回如下的失效單元坐標(biāo)(x,y) :x = W-I-(LmodW),y = R-l-L/ff, (χ是一個失 效段內(nèi)的列編號)。情形C.兩個相鄰/對角/垂直單元

1.確定MIRG的狀態(tài)0.. . 01與實際MIRG狀態(tài)之間的距離Lx
2.從LUT中獲取雙重單元故障的基準標(biāo)記
a)兩個相鄰單元(見表4中的模式2)
b)兩個垂直單元(見表4中的模式4)
c)兩個對角單元(見表4中的模式5)
d)兩個對角單元(見表4中的模式7)。
3.確定相應(yīng)的基準距離LMf a、L
'ref b、Lref
、L
'ref dc 4. La
τ -τ τ —
T -TT
j^x ^ref_b ‘ j^r
T -TJ —
Lx-Lref do如果某一特定的L
a/b/
c/d < 0,貝1J La/b/c/d 一 La/b/c/d+P。5. L — min {La, Lb, Lc, Ld}。6.聲明L<W*R。如果不是,則應(yīng)按照情形E進行(同一段內(nèi)的兩個自由單元)。7.從LUT中檢索相應(yīng)的失效單元坐標(biāo),并返回其被行/列偏移量S, = L/W和Sc = (Lmodff)進一步減小的值。情形D.兩個相鄰
對角單元(在兩個相鄰段中)
1.確定MIRG的狀態(tài)0. . . 01與實際MIRG狀態(tài)之間的距離Lx。2.從LUT中獲取雙重單元故障的基準標(biāo)記a)兩個相鄰單元(見表4中的模式3);b)兩個對角單元(見表4中的模式6);c)兩個對角單元(見表4中的模式8)。3.確定相應(yīng)的基準距離LMf a、Lref b> Lref c04. La 一 Lx-Lref a,Lb 一 Lx-Lref b,Lc 一 Lx-Lref c。如果某一特定的 La/b/c < 0,則 La/b/ c 一 La/b/c+P。5. L — min{La,Lb,LcJ。6.聲明(LmodW) = 0 且 L < (R-I) · W。7.從LUT中檢索相應(yīng)的失效單元坐標(biāo),并返回其被行偏移量、=L/W進一步減小 的值。情形E.任何兩個單元 1.獲取(從LUT中)采集到故障的第一段的一個單一單元故障的基準標(biāo)記。2.確定MIRG的狀態(tài)0. . . 01與步驟1的基準標(biāo)記之間的基準距離L&。3.獲取(從LUT中)第二失效段的一個單一單元故障的基準標(biāo)記。4.創(chuàng)建實際標(biāo)記寄存器的軟拷貝S(即位于診斷工具存儲器中的標(biāo)記寄存器的副 本),并以步驟3中獲得的標(biāo)記對拷貝S進行初始化。5.重復(fù) W · R 次將實際故障標(biāo)記與S的當(dāng)前內(nèi)容作異或操作(以抵消第二段中的失效單元對實際 標(biāo)記的影響)。確定MIRG的狀態(tài)0. . . 01與剛進行的異或步驟的標(biāo)記之間的距離Lx.L 一 Lx-Lref ;如果 L < 0,則 L 一 L+P。如果L < W · R,則發(fā)現(xiàn)兩個失效單元。L以類似情形A的方式確定第一段中失效 單元的位置;S存儲來自第二段的失效單元的標(biāo)記。停止此算法并返回結(jié)果。否則對S進行一個時鐘周期的仿真,然后轉(zhuǎn)至異或步驟(對MIRG進行一個周期的仿真 可以確定相鄰失效單元的標(biāo)記,如圖23所示)。情形F. 2X2個單元 1.確定MIRG的狀態(tài)0. . . 01與實際MIRG狀態(tài)之間的距離Lx。2.從LUT中獲取2X2單元故障的基準標(biāo)記。3.確定基準距離Lref。4. L 一 Lx-Lref ;如果 L < 0,則 L 一 L+P。5.聲明 L < W · (R-I)-1。6.從LUT中檢索失效單元坐標(biāo),并返回其被行/列偏移量s, = L/W和s。= (Lmodff) 進一步減小的值。情形G.兩個相鄰段中的2 X 2個單元 1.確定MIRG的狀態(tài)0. . . 01與實際MIRG狀態(tài)之間的距離Lx。2.從LUT中獲取2X2單元故障的基準標(biāo)記(表4中的模式10)。3.確定基準距離Lref。4. L- Lx-Lref ;如果 L < 0,則 L 一 L+P。5.聲明 L < W · (R-I)且(LmodW) = 0。6.從LUT中檢索失效單元坐標(biāo),并返回其被行偏移量S, = L/W進一步減小的值。情形H. —行 1.確定MIRG的狀態(tài)0. . . 01與實際MIRG狀態(tài)之間的距離Lx。2.從LUT中獲取一個單行故障的基準標(biāo)記(表4中的模式12)。3.確定基準距離Lref。4. L 一 Lx-Lref ;如果 L < 0,則 L 一 L+P。5.聲明 L < W · R 且(LmodW) = 0。6.以R-1-L/W返回失效行的編號。情形I.行中部分 由于在此情形下一行中失效單元的準確數(shù)目未知,DELTA必須使用不止一次(最 壞情況下為W次)。每一次將使用以下例程對邊界失效段中相鄰失效單元的一個不同組合進行檢查1.確定MIRG的狀態(tài)0. . . 01與實際MIRG狀態(tài)之間的距離Lx。2.使用從LUT獲得的單一故障標(biāo)記構(gòu)建失效單元的基準標(biāo)記。3.確定基準距離Lref。4. L- Lx-Lref ;如果 L < 0,則 L 一 L+P。5.聲明 L < W · R 且(LmodW) = 0。6.以R-1-L/W返回失效行的編號。實際失效單元的編號由步驟2中創(chuàng)建的標(biāo)記給
出ο情形J.兩行 1.創(chuàng)建實際標(biāo)記寄存器的副本S。2.使用從LUT獲得的一個單行的基準標(biāo)記對S進行初始化(表4中的模式12)。3.創(chuàng)建一組M+1個線性方程。每一個方程對標(biāo)記寄存器(右側(cè))的一個單一觸發(fā) 器的值進行說明。每個變量(左側(cè))對應(yīng)于失效段中一個單一的存儲器陣列行。行標(biāo)記通 過對S應(yīng)用W個時鐘周期的方式產(chǎn)生(見圖23)。增加的一個方程在左側(cè)有準確的W個1, 在右側(cè)則有0。由于解的重數(shù)事先按照推理已知,且為偶數(shù),故此方程用于避免奇數(shù)重解。4.有標(biāo)準方法實現(xiàn)高斯消元,其中可以規(guī)定涉及數(shù)值解的參數(shù)典型值,例如,要進 行的迭代的最大次數(shù)。在本公開內(nèi)容中,有一個此類參數(shù)被命名為maxSolverRims。在本步 中,重復(fù)至maxSolverRuns次(a)制作線性方程組的副本,并對變量隨機賦值。(b)使用高斯_約當(dāng)消元法化簡方程。(c)如果解的重數(shù)為2,則返回提示失效存儲器行的非零變量,并停止此算法。否 則返回步驟(a)。情形K.兩行 在兩個存儲器段搜索兩個失效行的方式與情形J中的方式類似,除以下方面之 外1.變量數(shù)為2W,因為兩段的行會組成新的方程。2.有兩個附加方程有助于尋找實際解。它們可確保生成兩行總屬于兩段的解。這 些附加方程可采用諸如如下的構(gòu)成a+b+c+d = 1w+x+y+z = 1其中a、b、c和d為對應(yīng)于第一段中行的變量,而W、χ、y和ζ則對應(yīng)于第二段的行。情形L. 一行 010101 1.確定MIRG的狀態(tài)0. . . 01與實際MIRG狀態(tài)之間的距離Lx。2.從LUT中獲取一個單一失效行010101的基準標(biāo)記(表4中的模式13)。3.確定基準距離Lref。4. L 一 Lx-Lref ;如果 L < 0,則 L 一 L+P。5.聲明 L < W · R 且(LmodW) e {0,1}。6.以R-1-L/W返回失效行的編號。如果(LmodW) = 0,則失效行以正確的單元起 始(010101. · ·),否則行內(nèi)的第一個單元為失效(101010. · ·)。情形M. —列
1.確定MIRG的狀態(tài)0.. . 01與其實際狀態(tài)之間的距離Lx。
2.從LUT中獲取一個單一失效列010101的基準標(biāo)記(表4中的模式11)
3.確定基準距離Lref。
4.L 一 Lx-Lref ;如果 L < 0,則 L 一 L+P。
5.聲明L< W。
6.以W-I-L返回失效列的編號。 情形N.兩列 1.確定MIRG的狀態(tài)0. . . 01與其實際狀態(tài)之間的距離Lx。2.從LUT中獲取對應(yīng)于失效段的單列故障的標(biāo)記(表4中的模式11),并對其進 行異或操作,以獲得基準標(biāo)記。3.確定基準距離Lref。
4.L 一 Lx-Lref ;如果 L < 0,則 L 一 L+P。
5.聲明L< W。
6.以W-I-L返回失效列的編號(列編號在失效段內(nèi)) 情形0.兩列
35 1.創(chuàng)建實際標(biāo)記寄存器的軟拷貝S。2.使用從LUT獲得的一個對應(yīng)于失效段的單列故障的基準標(biāo)記對S進行初始化 (表4中的模式11)。3.創(chuàng)建一組M+1個線性方程。每一個方程對標(biāo)記寄存器(右側(cè))的一個單一觸 發(fā)器的值進行說明。每個變量(左側(cè))對應(yīng)于失效段中一個單一的存儲器陣列列。列標(biāo)記 通過對S應(yīng)用單一時鐘周期的方式產(chǎn)生(見圖23)。增加的方程在左側(cè)有準確的W個1, 在右側(cè)則有0。由于解的重數(shù)事先按照推理已知,且為偶數(shù),故此方程用于避免產(chǎn)生奇數(shù)重 解。4.重復(fù)至 maxSolverRuns 次(a)制作線性方程組的使用副本,并對變量隨機賦值。(b)使用高斯_約當(dāng)消元法化簡方程。(c)如果解的重數(shù)為2,則返回提示失效存儲器列的非零變量,并停止此算法。否 則返回步驟(a)。情形P.兩列 在兩個存儲器段搜索兩個失效列的方式與上文情形N中的方式類似,除以下方面 之外3.變量數(shù)為2W,因為兩段的列會組成新的方程。4.有兩個附加方程有助于尋找實際解。它們可確保生成兩列總屬于兩段的解。這 些附加方程可采用諸如如下的構(gòu)成a+b+c+d = 1w+x+y+z = 1其中a、b、c和d為對應(yīng)于第一段中列的變量,而W、χ、y和ζ則對應(yīng)于第二段的 列。情形Q.列中部分 1.確定MIRG的狀態(tài)0. . . 01與實際MIRG狀態(tài)之間的距離Lx。2.將從LUT獲得的一個單一單元故障的標(biāo)記與其每W個周期的固定偏移量進行異 或操作,以生成基準標(biāo)記(見圖23)。此操作將重復(fù)FWC的內(nèi)容所示的次數(shù)。3.確定基準距離Lref。
4. L 一 Lx-Lref ;如果 L < 0,則 L 一 L+P。5.聲明 L < = W · (R-FffC)。6.返回失效單元坐標(biāo),作為被行/列偏移量S, = L/W和s。= (Lmodff)進一步減 小的基準單元坐標(biāo)。情形R. —個(部分)/兩個列+ —個(部分)/兩個列 在屬于行或列的失效單元可能發(fā)生交叉的情況下,可以采用上文中結(jié)合圖22a和 圖22b所討論的仿真方法。每次檢查到此類故障模式時,優(yōu)選通過以下方式對行和列的所 有可能配置進行檢查將其一起與交叉單元的標(biāo)記進行異或操作,然后再將所得的和與實 際失效標(biāo)記進行比較。嵌入式存儲器診斷方法和診斷工具現(xiàn)在轉(zhuǎn)至對故障診斷實踐的討論。圖26示出了在表5中所引述的示例中使用的 一種整體存儲器診斷流程的實施例2600。如上文所討論,在步驟2671中,ATE指示MBIST 控制器進行測試,然后以信號提示IC器件下載標(biāo)記寄存器210和位置信息寄存器211、213 和214的內(nèi)容。ATE將標(biāo)記寄存器210和位置信息寄存器211、213和214的內(nèi)容提供給一 個診斷工具。該診斷工具檢索FWC 2672的值。如表3和6中所指出的,F(xiàn)WC可以有特定的 值,其中每個值對應(yīng)于特定的故障模式類別。在一系列步驟2673a、2673b、2673c和2673d 以及圖26中未示出的其他步驟中,可將FWC的值與每一可能值進行比較,直至發(fā)現(xiàn)匹配情 況。圖26示出了對FWC = 1找到2673a匹配的示例情形。診斷工具檢索FCI和FRI 2674 的值,并將其與查詢表值(見表5)進行比較2675a、2675b,直至發(fā)現(xiàn)匹配情況。根據(jù)與查詢 表的比較結(jié)果,一個診斷規(guī)程被啟動2676a、2676b,等等。在診斷規(guī)程進行之后,失效存儲器 單元的坐標(biāo)被返回2677。圖27為一種根據(jù)存儲器測試故障診斷的方法2700的實施例的流程圖。方法2700 的步驟可在諸如診斷工具(見圖28)中執(zhí)行。在ATE從受試集成電路器件接收到暫時壓縮 的測試響應(yīng)標(biāo)記和故障位置信息之后,診斷工具從ATE接收2771暫時壓縮的測試響應(yīng)標(biāo) 記。按照以上的討論,在各種實施例中,ATE會從集成電路器件的一個標(biāo)記寄存器接收被 壓縮的標(biāo)記。在其他各種實施例中,按照之前的討論,ATE會從集成電路器件的一個影子寄
37存器接收被壓縮的標(biāo)記。此外診斷工具還會從ATE接收2772集成電路器件的故障位置信息。應(yīng)該理解的 是,在各種實施例中,步驟2771和2772可能同時進行;在其他各種實施例中,一個步驟可能 以某種特定的順序跟隨在另一步驟之后。此外,如上文所討論的,在各種實施例中,ATE從集 成電路器件的失效字計數(shù)器、失效列指示器和失效行指示器接收故障位置信息。在各種其 他實施例中,按照之前的討論,ATE從集成電路器件中的影子寄存器接收故障位置信息.此 外,通常情況下,在收到ATE的信號時,被壓縮的標(biāo)記和故障位置數(shù)據(jù)將由影子寄存器傳送 至 ATE。如上文結(jié)合表5的討論,對失效模式的分析可創(chuàng)建一個以存儲在失效字計數(shù)器 (FWC)、失效列指示器(FCI)和失效行指示器(FRI)中的值為依據(jù)的查詢表,用以確定要采 用的診斷規(guī)程。例如,F(xiàn)WC、FCI和FRI值可用于在查詢表內(nèi)生成指數(shù)。不管是通過使用指 數(shù),還是通過其他方法,診斷工具均會根據(jù)故障位置數(shù)據(jù)從上述診斷規(guī)程集中選擇2773 — 個診斷規(guī)程。接下來,所選的診斷規(guī)程在診斷工具中執(zhí)行2776,以便從暫時壓縮的測試響應(yīng)標(biāo) 記生成失效存儲器單元的坐標(biāo)。一些測試響應(yīng)標(biāo)記可能提示存在不止一個失效存儲器單 元。在這些情況下,在診斷工具內(nèi)執(zhí)行2776的診斷規(guī)程會生成不止一個失效存儲器單元的 坐標(biāo)。在失效存儲器單元的坐標(biāo)被確定之后,診斷工具會報告2777坐標(biāo)。如結(jié)合表1中 示例故障詞典的討論所述,失效存儲器單元的坐標(biāo)可用于構(gòu)建單色或彩色位圖,以顯示存 儲器故障信息。應(yīng)該理解的是,失效存儲器單元坐標(biāo)的報告可以包括對此類位圖的顯示和 打印輸出。圖28所示為根據(jù)一種實施例的診斷工具2800。診斷工具2800可以實現(xiàn)諸如圖 27的方法。如圖所示,診斷工具2800包含一個可執(zhí)行指令的控制器2878。指令可被存儲 在諸如存儲器2879中。存儲器2879也可被配置為存儲數(shù)據(jù),例如從ATE器件下載、包含受 試集成電路器件的診斷數(shù)據(jù)的數(shù)據(jù)。在各種實施例中,用戶界面2880提供對數(shù)據(jù)或結(jié)果的顯示,例如在顯示器件2881 上,或者可能通過諸如打印機或繪圖儀等(未示出)輸出結(jié)果和數(shù)據(jù)。用戶界面2880還可 通過諸如一個或多個輸入設(shè)備2882 (例如,鍵盤、觸摸屏、鼠標(biāo)或其他定點設(shè)備)來接收用 戶輸入。應(yīng)該理解的是,任何用于顯示結(jié)果或數(shù)據(jù)的合適設(shè)備以及任何用于接收用戶輸入 的合適設(shè)備均屬于本公開內(nèi)容的范圍。診斷工具器件2800還包含一組可作為諸如軟件指令等實現(xiàn)或者可以是硬件實現(xiàn) 的一組模塊2883。應(yīng)該理解的是,一些模塊可能以軟件實現(xiàn),而其他模塊則可能作為硬件實 現(xiàn)。模塊2883包含一個標(biāo)記接收模塊2871,被配置為從諸如上文所述的集成電路器 件的標(biāo)記寄存器或標(biāo)記寄存器對應(yīng)的影子寄存器等處按照方法2700(見圖27)的步驟2771 接收被暫時壓縮的測試響應(yīng)標(biāo)記。模塊2883還包含一個位置接收模塊2872,被配置為從諸 如上文所述的集成電路器件的FWC、FCI及FRI組件或這些組件對應(yīng)的影子寄存器等處按照 方法2700 (見圖27)的步驟2772接收故障位置信息。此外,診斷工具還包含一個診斷選擇模塊2873,被配置為根據(jù)故障位置數(shù)據(jù)從上文所述的一組診斷規(guī)程中選擇一個診斷規(guī)程。診斷規(guī)程的選擇可由診斷選擇模塊2873按 照諸如上文所述的步驟2773等進行。模塊2883還包含一個診斷模塊2876,被配置為按照 上文所述方法2700的步驟2776執(zhí)行所選擇的診斷規(guī)程,由被暫時壓縮的測試響應(yīng)標(biāo)記生 成失效存儲器單元的坐標(biāo)。包含在模塊2883內(nèi)的報告模塊2877被配置為按照諸如上文所 述的步驟2777等報告已被確定的失效存儲器單元的坐標(biāo)。結(jié)論在對所公開技術(shù)的原理進行例示和說明之后,本領(lǐng)域的技術(shù)人員將會明了 所公 開的實施例可能在布置方式和細節(jié)方面有所改動,而不背離所述原理。鑒于存在許多可能 的實施例,應(yīng)該認識到,所示出的實施例包含的僅為示例,不應(yīng)被視為對所公開技術(shù)的涵蓋 范圍的限制。所公開技術(shù)包括各種所公開裝置、方法、系統(tǒng)及其等效物單獨和以相互間的各 種組合及子組合形式體現(xiàn)的所有新的、不明顯的特點和方面。盡管對本發(fā)明的說明參照了 包括目前實施本發(fā)明的優(yōu)選方式的具體示例,但本領(lǐng)域的技術(shù)人員應(yīng)理解,上文所述系統(tǒng) 和技術(shù)存在多種屬于所附權(quán)利要求中限定的本發(fā)明的精神和涵蓋范圍的變體和組合方式。
權(quán)利要求
一種測試嵌入式存儲器的方法,包括操作集成電路器件的存儲器內(nèi)建自測試控制器,以應(yīng)用測試步驟對所述集成電路器件的嵌入式存儲器進行測試;對失敗的存儲器測試生成多個測試響應(yīng)標(biāo)記;使用線性反饋結(jié)構(gòu)暫時壓縮所述測試響應(yīng)標(biāo)記;收集與失敗的存儲器測試相關(guān)聯(lián)的存儲器位置信息;并且將所述被暫時壓縮的測試響應(yīng)標(biāo)記和所收集的存儲器位置信息提供給診斷工具,以供在存儲器故障診斷過程中使用。
2.如權(quán)利要求1所述的方法,其中將所述被暫時壓縮的測試響應(yīng)標(biāo)記和所述所收集的存儲器位置信息提供給診斷工具, 包括將所述被暫時壓縮的測試響應(yīng)標(biāo)記和所述所收集的存儲器位置信息提供給自動測試 設(shè)備;并且將所述被暫時壓縮的測試響應(yīng)標(biāo)記和所述所收集的存儲器位置信息從所述自動測試 設(shè)備傳送至所述診斷工具,以供在存儲器故障診斷過程中使用。
3.如權(quán)利要求1所述的方法,還包括將所述被暫時壓縮的測試響應(yīng)標(biāo)記傳送至影子寄存器。
4.如權(quán)利要求1所述的方法,還包括將與所述失敗的存儲器測試相關(guān)的所收集的存儲器位置信息傳送至影子寄存器。
5.如權(quán)利要求1所述的方法,其中所述收集存儲器位置信息包括收集失效字的計數(shù)。
6.如權(quán)利要求1所述的方法,其中所述收集存儲器位置信息包括收集對所述嵌入式存 儲器的失效列進行標(biāo)識的信息。
7.如權(quán)利要求1所述的方法,其中所述收集存儲器位置信息包括收集對所述嵌入式存 儲器的失效行進行標(biāo)識的信息。
8.一種計算機可讀取的存儲介質(zhì),其上存儲有可由計算機系統(tǒng)執(zhí)行的程序指令序列, 以執(zhí)行權(quán)利要求1-7中任何一項所述的方法。
9.一種集成電路器件,包括嵌入式存儲器陣列,所述嵌入式存儲器陣列被配置為對所應(yīng)用的存儲器測試生成測試 響應(yīng),所述測試響應(yīng)具有測試響應(yīng)標(biāo)記;存儲器內(nèi)建自測試控制器,所述存儲器內(nèi)建自測試控制器被配置為對所述嵌入式存儲 器陣列施加補充的存儲器測試;線性反饋結(jié)構(gòu),所述線性反饋結(jié)構(gòu)被配置為對失敗的存儲器測試的測試響應(yīng)標(biāo)記進行 暫時壓縮;以及位置數(shù)據(jù)收集器,所述位置數(shù)據(jù)收集器被配置為對與所述失敗的存儲器測試相關(guān)聯(lián)的 存儲器位置信息進行收集。
10.如權(quán)利要求9所述的集成電路器件,其中所述線性反饋結(jié)構(gòu)是鈴流發(fā)生器。
11.如權(quán)利要求9所述的集成電路器件,其中所述位置數(shù)據(jù)收集器是失效字計數(shù)器、失 效列指示器或失效行指示器。
12.如權(quán)利要求9所述的集成電路器件,還包括失效行檢測器。
13.如權(quán)利要求9所述的集成電路器件,還包括比較器,所述比較器被配置為從所述嵌入式存儲器接收測試響應(yīng)并生成所述測試響應(yīng)標(biāo)記。
14.如權(quán)利要求9所述的集成電路器件,其中所述測試響應(yīng)標(biāo)記是錯誤向量。
15.如權(quán)利要求9所述的集成電路器件,還包括被配置為接收所述被暫時壓縮的測試響應(yīng)標(biāo)記的影子寄存器。
16.權(quán)利要求9所述的集成電路器件,還包括被配置為從所述位置數(shù)據(jù)收集器接收位 置數(shù)據(jù)的影子寄存器。
17.—種測試嵌入式存儲器的方法,包括 執(zhí)行存儲器測試的測試步驟;根據(jù)對所述測試步驟的測試響應(yīng),在標(biāo)記寄存器中生成標(biāo)記數(shù)據(jù),所述標(biāo)記寄存器包 括對所述標(biāo)記數(shù)據(jù)進行暫時壓縮的線性反饋結(jié)構(gòu);將所述被暫時壓縮的標(biāo)記數(shù)據(jù)從所述標(biāo)記寄存器上載至與所述標(biāo)記寄存器相關(guān)聯(lián)的 影子寄存器;執(zhí)行所述存儲器測試的下一個測試步驟;并且 將所述被暫時壓縮的標(biāo)記數(shù)據(jù)從所述影子寄存器傳送至自動測試設(shè)備。
18.如權(quán)利要求17所述的方法,還包括在位置數(shù)據(jù)收集器中收集與所述存儲器測試的失敗的測試步驟相關(guān)聯(lián)的存儲器位置 信息;并且將所述所收集的存儲器位置信息從所述位置數(shù)據(jù)收集器上載至與所述位置數(shù)據(jù)收集 器相關(guān)聯(lián)的所述影子寄存器。
19.如權(quán)利要求18所述的方法,還包括將所述所收集的存儲器位置信息從與所述位置數(shù)據(jù)收集器相關(guān)聯(lián)的所述影子寄存器 傳送至自動測試設(shè)備器件。
20.如權(quán)利要求19所述的方法,還包括將所述被暫時壓縮的標(biāo)記數(shù)據(jù)和所述所收集的存儲器位置信息從所述自動測試設(shè)備 器件上載至診斷工具。
21.如權(quán)利要求17所述的方法,其中所述存儲器測試是行進測試。
22.—種計算機可讀取的存儲介質(zhì),其上存儲有可由計算機系統(tǒng)執(zhí)行的程序指令序列, 以執(zhí)行權(quán)利要求17-21中任何一項所述的方法。
23.一種測試嵌入式存儲器的方法,包括 執(zhí)行存儲器測試的測試步驟;根據(jù)對所述測試步驟的測試響應(yīng),在標(biāo)記寄存器中生成標(biāo)記數(shù)據(jù),所述標(biāo)記寄存器包 括對所述標(biāo)記數(shù)據(jù)進行暫時壓縮的線性反饋結(jié)構(gòu);在位置數(shù)據(jù)收集器中收集與所述存儲器測試的失敗的測試步驟相關(guān)聯(lián)的存儲器位置 fn息;在執(zhí)行所述存儲器測試的下一個測試步驟之前,將所述被暫時壓縮的標(biāo)記數(shù)據(jù)從所述 標(biāo)記寄存器上載至自動測試設(shè)備器件;在執(zhí)行所述存儲器測試的下一個測試步驟之前,將所收集的存儲器位置信息從所述位 置數(shù)據(jù)收集器上載至所述所述自動測試設(shè)備器件;并且 執(zhí)行所述存儲器測試的下一個測試步驟。
24.如權(quán)利要求23所述的方法,還包括將所述被暫時壓縮的標(biāo)記數(shù)據(jù)和所述所收集 的存儲器位置信息從所述自動測試設(shè)備器件上載至診斷工具。
25.如權(quán)利要求23所述的方法,其中所述存儲器測試是行進測試。
26.一種計算機可讀取的存儲介質(zhì),其上存儲有可由計算機系統(tǒng)執(zhí)行的程序指令序列, 以執(zhí)行權(quán)利要求23-25中任何一項所述的方法。
27.一種集成電路器件,包括嵌入式存儲器陣列部分,用于存儲數(shù)據(jù)值;控制器部分,用于對所述嵌入式存儲器陣列部分施加補充的存儲器測試,所述存儲器 測試包括測試步驟;壓縮部分,用于在一個測試步驟中使用線性反饋對失敗的所述存儲器測試的測試響應(yīng) 標(biāo)記進行暫時壓縮;以及收集部分,用于在一個測試步驟中收集與失敗的所述存儲器測試相關(guān)的故障位置信肩、ο
28.如權(quán)利要求27所述的集成電路器件,其中所述壓縮部分是多輸入移位寄存器。
29.如權(quán)利要求28所述的集成電路器件,其中所述多輸入移位寄存器是多輸入鈴流發(fā)生器。
30.如權(quán)利要求27所述的集成電路器件,其中所述收集部分包括被配置為失效字計數(shù) 器的線性反饋移位寄存器。
31.如權(quán)利要求27所述的集成電路器件,還包括用于在一個測試步驟結(jié)束時從所述壓縮部分接收所述被暫時壓縮的測試響應(yīng)標(biāo)記的 部分;以及用于在一個測試步驟結(jié)束時從所述收集部分接收所收集的故障位置信息的部分。
32.一種用于在集成電路器件的存儲器內(nèi)建自測試期間診斷嵌入式存儲器故障的方 法,所述方法包括接收故障位置數(shù)據(jù);接收多個失敗的存儲器測試的被暫時壓縮的測試響應(yīng)標(biāo)記; 使用所述故障位置數(shù)據(jù)從一組預(yù)先制定的診斷規(guī)程中選擇診斷規(guī)程; 執(zhí)行所述診斷規(guī)程,以從被所述暫時壓縮的測試響應(yīng)標(biāo)記生成失效存儲器單元的坐 標(biāo);并且報告所述失效存儲器單元的坐標(biāo)。
33.如權(quán)利要求32所述的方法,其中所述預(yù)先制定的診斷規(guī)程包括離散對數(shù)技術(shù)、快 速LFSR仿真技術(shù)、線性方程技術(shù)以及標(biāo)記仿真技術(shù)。
34.如權(quán)利要求32所述的方法,其中所述診斷規(guī)程包括預(yù)先計算一個周期為m、具有預(yù)定初始狀態(tài)和一個特征多項式的線性反饋移位寄存器 的狀態(tài)信息;將所述狀態(tài)信息存儲在診斷工具的內(nèi)存中的查詢表內(nèi); 根據(jù)所述周期m的因數(shù)分解確定一組系數(shù);接收對應(yīng)于某特定狀態(tài)的所述線性反饋移位寄存器的特定狀態(tài)信息,所述特定狀態(tài)與 嵌入式存儲器故障相關(guān);對于每個系數(shù)根據(jù)所述系數(shù)、特征多項式以及所述特定狀態(tài)信息,計算與所述系數(shù)相關(guān)的余數(shù);并且 在所述查詢表中確定所述余數(shù)的指數(shù);以及在所述系數(shù)上對各項的和進行評價,其中每一項均為與所述系數(shù)相關(guān)的余數(shù)的所述查 詢表中的所述指數(shù)與對應(yīng)于所述系數(shù)的預(yù)定整數(shù)之積,以生成所述線性反饋移位寄存器的 所述特定狀態(tài)與所述初始狀態(tài)之間的距離。
35.如權(quán)利要求32所述的方法,其中所述診斷規(guī)程包括將針對η位線性反饋移位寄存器狀態(tài)的狀態(tài)信息存儲在診斷工具的存儲器中的ηΧη 查詢表內(nèi),其中所述查詢表的列對應(yīng)于屬于單重態(tài)的所述線性反饋移位寄存器的初始狀態(tài),單重態(tài)是 所述η位線性反饋移位寄存器中有且僅有一位為1的狀態(tài);所述查詢表的行對應(yīng)于對所述線性反饋移位寄存器的狀態(tài)進行的特定數(shù)目時鐘周期 的應(yīng)用,所述特定數(shù)目為2的指數(shù)冪;并且所述查詢表中針對特定行和特定列的項包含對應(yīng)于所述線性反饋移位寄存器的狀態(tài) 的狀態(tài)信息,所述線性反饋移位寄存器的狀態(tài)在將對應(yīng)于所述特定行的一定數(shù)目的時鐘周 期應(yīng)用于對應(yīng)于所述特定列的所述線性反饋移位寄存器的初始狀態(tài)之后所獲得;接收對將應(yīng)用于所述線性反饋移位寄存器的所述時鐘周期數(shù)目進行說明的整數(shù)X;將χ表示為分量和,每一分量均為2的指數(shù)冪;接收對應(yīng)于所述線性反饋移位寄存器的初始狀態(tài)的狀態(tài)信息;將所述初始狀態(tài)選擇為名義初始狀態(tài);對于χ的每一分量將名義初始狀態(tài)分解為一組所述單重態(tài);由所述χ的分量給定數(shù)目的若干所述時鐘周期,將所述組中每個所述單重態(tài)推進,以 生成一組被推進的所述單重態(tài);通過逐位異或操作將所述被推進的單重態(tài)組合為合成態(tài);選擇所述合成態(tài)作為所述χ的下一分量的名義初始狀態(tài);如果已對所述χ的所有分量 進行分解、推進和組合步驟,則確定所述線性反饋移位寄存器的最終狀態(tài)為所述合成態(tài)。
36.如權(quán)利要求32所述的方法,其中所述故障位置信息限定故障模式類別;并且所述診斷規(guī)程根據(jù)故障位置信息所限定的故障模式類別進行選擇。
37.如權(quán)利要求32所述的方法,其中故障位置信息包括失效字計數(shù)、失效列指示或失 效行指示。
38.如權(quán)利要求32所述的方法,其中所述診斷規(guī)程的選擇通過查詢表做出,所述查詢 表的表項根據(jù)所述故障位置信息的可能值進行索引。
39.如權(quán)利要求32所述的方法,其中所述診斷規(guī)程采用所述查詢表實現(xiàn)高效率執(zhí)行。
40.如權(quán)利要求32所述的方法,其中接收所述被暫時壓縮的測試響應(yīng)標(biāo)記包括從受試 集成電路器件接收所述被暫時壓縮的測試響應(yīng)標(biāo)記。
41.如權(quán)利要求32所述的方法,其中接收所述被暫時壓縮的測試響應(yīng)標(biāo)記包括從自動 測試設(shè)備器件接收所述被暫時壓縮的測試響應(yīng)標(biāo)記。
42.如權(quán)利要求32所述的方法,其中所述報告失效存儲器單元的坐標(biāo)包括生成表示所 述集成電路器件內(nèi)嵌入式存儲器故障的單色位圖。
43.如權(quán)利要求32所述的方法,其中所述報告失效存儲器單元的坐標(biāo)包括生成表示所 述集成電路器件內(nèi)嵌入式存儲器的不止一種故障的彩色位圖。
44.一種計算機可讀取的存儲介質(zhì),其上存儲有可由計算機系統(tǒng)執(zhí)行的程序指令序列, 以執(zhí)行權(quán)利要求32-43中任何一項所述的方法。
45.一種用于對在集成電路器件的存儲器內(nèi)建自測試期間出現(xiàn)的嵌入式存儲器故障進 行診斷的診斷工具,所述診斷工具包括位置接收模塊,被配置為接收故障位置數(shù)據(jù);標(biāo)記接收模塊,被配置為接收多個失敗的存儲器測試的被暫時壓縮的測試響應(yīng)標(biāo)記;診斷選擇模塊,被配置為使用所述故障位置數(shù)據(jù)從一組預(yù)先制定的診斷規(guī)程中選擇診 斷規(guī)程;診斷模塊,被配置為執(zhí)行所述診斷規(guī)程,以從所述被暫時壓縮的測試響應(yīng)標(biāo)記生成失 效存儲器單元的坐標(biāo);以及報告模塊,被配置為報告所述失效存儲器單元的坐標(biāo)。
46.如權(quán)利要求45所述的診斷工具,其中所述預(yù)先制定的診斷規(guī)程包括離散對數(shù)技 術(shù)、快速LFSR仿真技術(shù)、線性方程技術(shù)以及標(biāo)記仿真技術(shù)。
47.如權(quán)利要求45所述的診斷工具,其中故障位置信息限定故障模式類別;且診斷選擇模塊根據(jù)故障位置信息所限定的故障模式類別選擇診斷規(guī)程。
48.如權(quán)利要求45所述的診斷工具,其中所述故障位置信息包括失效字計數(shù)、失效列 指示或失效行指示。
49.如權(quán)利要求45所述的診斷工具,其中所述診斷選擇模塊通過使用查詢表來選擇診 斷規(guī)程,所述查詢表的表項根據(jù)所述故障位置信息的可能值進行索引。
50.如權(quán)利要求45所述的診斷工具,其中所述診斷模塊采用查詢表進行診斷規(guī)程的有 效率的執(zhí)行。
51.如權(quán)利要求45所述的診斷工具,其中所述報告模塊被配置為生成表示所述集成電 路器件內(nèi)嵌入式存儲器故障的單色位圖。
52.如權(quán)利要求45所述的診斷工具,其中所述報告模塊被配置為生成表示所述集成電 路器件內(nèi)嵌入式存儲器的一種以上的故障的彩色位圖。
全文摘要
本發(fā)明所公開內(nèi)容為在存儲器內(nèi)建自測試環(huán)境中對失敗的存儲器測試的測試響應(yīng)標(biāo)記進行暫時壓縮的方法和器件,其目的是即使在檢測到多個與時間相關(guān)的存儲器測試故障時也能夠進行存儲器內(nèi)建自測試操作。在本發(fā)明的一些實施例中,被壓縮的測試響應(yīng)標(biāo)記在自動化測試設(shè)備器件上與存儲器位置信息一起給出。根據(jù)本發(fā)明的各種實施例,帶有嵌入式存儲器(204)的集成電路以及存儲器BIST控制器(206)還包括用作標(biāo)記寄存器的線性反饋結(jié)構(gòu)(410),可在存儲器測試的某一測試步驟中對來自嵌入式存儲器陣列的測試響應(yīng)標(biāo)記進行暫時壓縮。在各種實施例申,集成電路還可能包括失效字計數(shù)器(211)、失效列指示器(213)和/或失效行指示器(214),用以對失敗的測試響應(yīng)收集存儲器位置信息。
文檔編號G11C29/56GK101933098SQ200880116522
公開日2010年12月29日 申請日期2008年9月18日 優(yōu)先權(quán)日2007年9月18日
發(fā)明者尼蘭簡·穆克赫杰, 杰齊·泰澤, 賈納茲·拉杰斯基, 阿圖爾·波吉爾 申請人:明導(dǎo)公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1