專利名稱:多端口存儲(chǔ)器自我修復(fù)電路及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種存儲(chǔ)器自我修復(fù)電路及方法,特別是涉及一種多端
口存儲(chǔ)器(multi-port memory)自我修復(fù)電路及方法。
背景技術(shù):
當(dāng)芯片上的電路包含多個(gè)存儲(chǔ)器時(shí),測試就成為一大問題。若用外 部裝置進(jìn)行觀'J試,必須將所有存儲(chǔ)器的輸入端及輸出端都連接,'j芯片 外,如此龐大的線路數(shù)量不僅占用芯片面積,提高電路布局難度,而且 在芯片接腳數(shù)量有限的考慮下也不切實(shí)際。于是有人提出自我測試 (BIST: built-in self test)的觀念,也就是將測試電路和接受測試的存儲(chǔ)器 制造在同 一 芯片上,如此就不必為了測試而將所有存儲(chǔ)器的輸入端及輸 出端連接到芯片外。在可修復(fù)存儲(chǔ)器(repairable memory)問世之后,自 我測試技術(shù)就延伸為自我修復(fù)技術(shù)(BISR: built-in self repair)。
傳統(tǒng)的存儲(chǔ)器自我修復(fù)電路如圖l所示,自我測試器102負(fù)責(zé)測試 可修復(fù)存儲(chǔ)器101,若發(fā)生錯(cuò)誤(fauit),自我測試器102則將錯(cuò)誤所在 位置告知備份組件分析器103,由備份組件分析器103分析自我測試器 102檢測到的錯(cuò)誤信息,將最佳修復(fù)方式告知可修復(fù)存儲(chǔ)器101??尚?復(fù)存儲(chǔ)器101依照這個(gè)最佳修復(fù)方式,使用內(nèi)含的備份組件(redundancy element), 也就是備"f分4亍(redundancy column)禾口/或備〈分歹l) (redundancy row),修復(fù)發(fā)生錯(cuò)誤的行或列。
傳統(tǒng)的自我修復(fù)技術(shù)不區(qū)分單端口 (single-port)或多端口 (multi-port) 存儲(chǔ)器,檢測到哪里有錯(cuò),就直接修復(fù)錯(cuò)誤所在的行或列。這種方法對(duì) 于單端口存儲(chǔ)器是正確的,因?yàn)閷?duì)單端口存儲(chǔ)器而言,檢測到的錯(cuò)誤位
置就是真實(shí)的瑕疵(defect)位置。然而對(duì)多端口存儲(chǔ)器而言,若自我測 試器102的測試中產(chǎn)生端口.相關(guān)錯(cuò)誤(port-specific fault),檢測到的錯(cuò)誤 位置可能不是真實(shí)的瑕疵位置,如圖2的范例所示。
圖2示出了一個(gè)多端口存儲(chǔ)器其中三個(gè)存儲(chǔ)單元Cell0-Ce112以及相關(guān)的字線(word line)與位線(bit line)。圖2的多端口存儲(chǔ)器有兩個(gè)端 口,分別為端口 A和端口 B。存儲(chǔ)單元Cdl0-Ce112的行地址(column address)皆為0,而列地址(row address)分別為0-2。 CellO及Celll儲(chǔ)存 的位值為1,而Cell2儲(chǔ)存的位值為0。 ABLO為對(duì)應(yīng)端口 A的位線, BBL0為對(duì)應(yīng)端口 B的位線。AWL0為對(duì)應(yīng)端口 A與列地址AddrO的字 線,BWL0為對(duì)應(yīng)端口 B與列地址AddrO的字線,AWLl為對(duì)應(yīng)端口 A 與列地址Addrl的字線,依此類推。如圖2所示,在字線AWLl與BWL2 之間存在 一短路瑕瘋。
當(dāng)測試程序執(zhí)行到同時(shí)讀取列地址AddrO的端口 B和列地址Addrl 的端口 A時(shí),字線BWLO和AWLl同時(shí)致能(enable),由于字線AWLl 和B WL2之間的短路瑕瘋,B WL2也同時(shí)致能,因此,Cell 1的內(nèi)容輸 出至位線ABLO,而CellO和Cel12的內(nèi)容同時(shí)輸出至位線BBLO。兩個(gè) 不同的數(shù)值同時(shí)輸出至BBLO,使得端口 B列地址O讀出的數(shù)值發(fā)生錯(cuò) 誤,然而真實(shí)的瑕瘋并非位于測試程序檢測到的列地址AddrO,而是位 于列地址Addrl與Addr2。
在這種情況下,若直接修復(fù)錯(cuò)誤所在的列,不僅浪費(fèi)了有限的備份 組件,也不能修復(fù)瑕瘋,造成了生產(chǎn)率損失(yieldloss)。
另一方面,位線短路瑕瘋并不會(huì)出現(xiàn)如字線短路瑕瘋,檢測到錯(cuò)誤 瑕疵位置的情形。也就是說, 一般測試算法對(duì)于位線間短路瑕疵所測的 位置是正確的。測試算法的目的是以最少的測試動(dòng)作,達(dá)到最大瑕疵模 型的覆蓋率。所以一般測試算法對(duì)瑕疵的定位很弱,測到的瑕疵位置雖 然正確,但可能不完整。舉例說明,若兩個(gè)位的位線之間有短路瑕疵, 測試算法可能只測到其中一個(gè)位有錯(cuò)誤,而不是兩個(gè)位都發(fā)生錯(cuò)誤。在 此情況下,若依照一般測試算法的測試結(jié)果去修復(fù),可能只修復(fù)到一部 分瑕瘋,而不是完整修復(fù)。
因此, 一般測試算法對(duì)于字線間瑕疵的行為可歸類為定位信息錯(cuò) 誤,而對(duì)于位線間瑕瘋的行為可歸類為定位信息不足??偠灾?,對(duì)于 多端口存儲(chǔ)器的端口相關(guān)錯(cuò)誤,目前尚無可靠的自我修復(fù)技術(shù)。
發(fā)明內(nèi)容
本發(fā)明提供一種多端口存儲(chǔ)器自我修復(fù)電路,對(duì)于多端口存儲(chǔ)器,可依據(jù)檢測到的錯(cuò)誤位置找出真正而且完整的瑕瘋位置,以避免不正確 或不完整的修復(fù)。
本發(fā)明提供一種多端口存儲(chǔ)器自我修復(fù)方法,能在多端口存儲(chǔ)器找 出真正而且完整的瑕瘋位置,可避免不正確或不完整的修復(fù),進(jìn)而避免 浪費(fèi)備份組件,而且可達(dá)到最佳的修復(fù)成功比率以提高生產(chǎn)率。
本發(fā)明提出一種多端口存儲(chǔ)器自我修復(fù)電路,包括測試分析模塊以 及瑕瘋定位模塊。其中瑕瘋定位模塊耦接于測試分析模塊。測試分析模 塊測試一可修復(fù)多端口存儲(chǔ)器以產(chǎn)生一錯(cuò)誤位置,并根據(jù)錯(cuò)誤位置判斷 上述測試是否產(chǎn)生端口相關(guān)錯(cuò)誤。若上述測試產(chǎn)生端口相關(guān)錯(cuò)誤,則瑕 疵定位模塊根據(jù)錯(cuò)誤位置產(chǎn)生一瑕疵位置并提供瑕疵位置至測試分析 模塊,測試分析模塊根據(jù)瑕瘋位置決定如何修復(fù)上述可修復(fù)多端口存儲(chǔ) 器。反之,若上述測試未產(chǎn)生端口相關(guān)錯(cuò)誤,則測試分析模塊根據(jù)錯(cuò)誤 位置決定如何修復(fù)上述可修復(fù)多端口存儲(chǔ)器。
在本發(fā)明之一實(shí)施例中,上述的可修復(fù)多端口存儲(chǔ)器為子陣列
(sub-array)組態(tài)。
在本發(fā)明的 一 實(shí)施例中,若錯(cuò)誤位置包括同 一 列的多個(gè)連續(xù)存儲(chǔ)單 元,則測試分析模塊判斷上述測試產(chǎn)生對(duì)應(yīng) 一 字線瑕疵的端口相關(guān)錯(cuò) 誤,并將上述存儲(chǔ)單元的列地址存入瑕疵定位模塊作為一錯(cuò)誤列地址。 另一方面,若錯(cuò)誤位置包括同一行的多個(gè)連續(xù)存儲(chǔ)單元,則測試分析模 塊判斷上述測試產(chǎn)生對(duì)應(yīng)一位線瑕疵的端口相關(guān)錯(cuò)誤,并將上述存儲(chǔ)單 元的行地址存入瑕瘋定位模塊作為一錯(cuò)誤行地址。上述的錯(cuò)誤行地址與 錯(cuò)誤列地址用于瑕疵定位模塊所執(zhí)行的定位步驟。
本發(fā)明還提出一種多端口存儲(chǔ)器自我修復(fù)方法,包括下列步驟。首 先測試一可修復(fù)多端口存儲(chǔ)器以產(chǎn)生 一錯(cuò)誤位置,然后根據(jù)錯(cuò)誤位置判 斷上述測試是否產(chǎn)生端口相關(guān)錯(cuò)誤。若上述測試產(chǎn)生端口相關(guān)錯(cuò)誤,則 根據(jù)錯(cuò)誤位置產(chǎn)生一瑕瘋位置,并根據(jù)瑕疵位置決定如何修復(fù)上述可修 復(fù)多端口存儲(chǔ)器。若上述測試未產(chǎn)生端口相關(guān)錯(cuò)誤,則根據(jù)錯(cuò)誤位置決 定如何修復(fù)上述可修復(fù)多端口存儲(chǔ)器。
本發(fā)明對(duì)造成端口相關(guān)錯(cuò)誤的瑕疵進(jìn)行分類,并針對(duì)各類瑕疵執(zhí)行 獨(dú)特的定位步驟,由定位步驟中發(fā)生的錯(cuò)誤即可得知對(duì)應(yīng)的瑕疵位置。 因此本發(fā)明可依據(jù)表面上的錯(cuò)誤位置找出真正而且完整的瑕疵位置,以避免傳統(tǒng)技術(shù)的不正確或不完整修復(fù)。
為使本發(fā)明的上述特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉較佳實(shí)施 例,并結(jié)合附圖詳細(xì)說明如下。
圖1是已知的一種存儲(chǔ)器自我修復(fù)電路的示意圖。 圖2是已知的多端口存儲(chǔ)器瑕瘋的示意圖。
圖3是依照本發(fā)明一實(shí)施例的多端口存儲(chǔ)器自我修復(fù)電路的示意圖。
圖4是依照本發(fā)明一實(shí)施例的多端口存儲(chǔ)器自我修復(fù)方法的流程圖。
圖5A和圖5B示出了本發(fā)明一實(shí)施例的各種字線短路瑕瘋。 圖6是依照本發(fā)明一實(shí)施例的字線瑕疵定位算法的流程圖。 圖7A至圖7C、圖8A至圖8C、以及圖9A至圖9D示出了依照本
發(fā)明 一 實(shí)施例的字線短路瑕瘋觸發(fā)范例。
圖10示出了圖3中可修復(fù)多端口存儲(chǔ)器的部分電路。
圖IIA和圖11B示出了本發(fā)明一實(shí)施例的各種位線短路瑕瘋。
圖12是依照本發(fā)明 一 實(shí)施例的位線瑕疵定位算法的流程圖。
圖13A至圖13C以及圖14A至圖14D示出了依照本發(fā)明一實(shí)施例
的位線短路瑕瘋觸發(fā)范例。
附圖符號(hào)說明
101:可修復(fù)存儲(chǔ)器
102:自我測試器
103:備份組件分析器
301:可修復(fù)存儲(chǔ)器
302:測試分析模塊
303: 3艮瘋定位才莫塊
304:自我測試器
305:備份組件分析器
405-485、 605-680:流程圖步驟1001:存儲(chǔ)單元行1011-1014:存儲(chǔ)單元陣列 1021-1024:多任務(wù)器 1205-1265:流程圖步驟 ABL0、 BBL0、 5丄4、豆力、Sis 豆a、 5丄s,、 豆引位線AWL0-AWL2、 BWL0-BWL2、 Cell0-Cdl2:存儲(chǔ)單元5丄s 、 B丄力o 、 "^〖xo 、 ^Si別、S丄so 、 B〖di 、WLA0、 WLb。、 WLA1、 WLB1:字線具體實(shí)施方式
以下說明請(qǐng)參照?qǐng)D3與圖4。圖3為依照本發(fā)明一實(shí)施例的多端口 存儲(chǔ)器自我修復(fù)電路300的示意圖,圖4為自我修復(fù)電路300所執(zhí)行的 多端口存儲(chǔ)器自我修復(fù)方法的流程圖。多端口存儲(chǔ)器自我修復(fù)電路300 包括測試分析模塊302以及瑕瘋定位模塊303,測試分析模塊302又包 括自我測試器304以及備份組件分析器305??尚迯?fù)多端口存儲(chǔ)器301、 自我測試器304、備份組件分析器305、以及瑕疵定位模塊303互相耦 接。圖4的流程從步驟405開始。自我測試器304在步驟405測試可修 復(fù)多端口存儲(chǔ)器301以產(chǎn)生錯(cuò)誤位置。備份組件分析器305在步驟410 根據(jù)錯(cuò)誤位置的分布判斷上述測試是否產(chǎn)生端口相關(guān)錯(cuò)誤。若錯(cuò)誤位置 包括同一行或同一列的多個(gè)連續(xù)存儲(chǔ)單元,則備份組件分析器305在步 驟415判斷上述測試產(chǎn)生端口相關(guān)錯(cuò)誤。若錯(cuò)誤發(fā)生在同一行,表示這 個(gè)端口相關(guān)錯(cuò)誤是由位線之間的短路瑕疵所引起,備份組件分析器305 在步驟420將上述存儲(chǔ)單元的行地址(以下簡稱錯(cuò)誤行地址)存入瑕疵 定位模塊303。若錯(cuò)誤發(fā)生在同一列,表示這個(gè)端口相關(guān)錯(cuò)誤是由字線 之間的短路瑕疵所引起,備份組件分析器305在步驟420將上述存儲(chǔ)單 元的列地址(以下簡稱錯(cuò)誤列地址)存入瑕疵定位模塊303?;氐讲襟E410,若錯(cuò)誤位置未呈現(xiàn)連續(xù)分布,表示步驟405的測試 未產(chǎn)生端口相關(guān)錯(cuò)誤。在此情況下,錯(cuò)誤位置也就是瑕疵位置,所以備 份組件分析器305在步驟470直接根據(jù)錯(cuò)誤位置進(jìn)行分析,以決定如何 修復(fù)可修復(fù)多端口存儲(chǔ)器301。接著備份組件分析器305在步驟475判斷多端口存儲(chǔ)器301內(nèi)含的備份組件是否足以修復(fù)其內(nèi)部的瑕疵。若足以修復(fù),備份組件分析器305在步驟480修復(fù)多端口存儲(chǔ)器301。反之, 若備份組件分析器305在步驟475判定多端口存儲(chǔ)器301無法修復(fù),則 流程進(jìn)入步驟485,中斷圖4的自我修復(fù)程序。步驟420和480的下一步驟都是步驟425,自我測試器304在此判 斷對(duì)于多端口存儲(chǔ)器301的測試是否完成。若測試尚未完成,則流程回 到步驟405繼續(xù)測試。若測試已經(jīng)完成,流程進(jìn)入步驟430,備份組件 分析器305檢查瑕瘋定位模塊303是否存有尚未分析的錯(cuò)誤行地址或列 地址。如果沒有,圖4的流程至此結(jié)束。如果有,備份組件分析器305 在步驟435啟動(dòng)瑕瘋定位模塊303。瑕疵定位模塊303在步驟440根據(jù) 之前存入的錯(cuò)誤行地址或列地址產(chǎn)生真正的瑕瘋位置(細(xì)節(jié)后述),并 提供瑕瘋位置至備份組件分析器305。然后流程進(jìn)入步驟445,備份組 件分析器305根據(jù)瑕疵位置進(jìn)行分析,以決定如何修復(fù)可修復(fù)多端口存 儲(chǔ)器301。然后流程進(jìn)入步驟475,判斷多端口存儲(chǔ)器301內(nèi)含的備份 組件是否足以修復(fù)其瑕疵。接下來的流程前面已經(jīng)說明過,不再贅述。若步驟405的測試中產(chǎn)生端口相關(guān)錯(cuò)誤,瑕疵定位模塊303會(huì)執(zhí)行 瑕瘋定位算法以找出真正的瑕瘋位置。如上所述,本實(shí)施例的端口相關(guān) 錯(cuò)誤可由字線或位線的短路瑕疵引起,因此瑕疵定位模塊303的瑕疵定 位算法依照這兩種端口相關(guān)錯(cuò)誤分為字線瑕瘋定位算法以及位線瑕疵 定位算法。以下說明字線瑕疵定位算法。圖5A示出了可修復(fù)多端口存儲(chǔ)器301 其中四個(gè)存儲(chǔ)單元以及四條字線WLAQ、 WLbq、 WLA1、 WLB1。在本實(shí) 施例中多端口存儲(chǔ)器301有兩個(gè)端口 ,也就是端口A和端口B。 WLA0 為對(duì)應(yīng)列地址Addr與端口 A的字線,WLB。為對(duì)應(yīng)列地址Addr與端口 B的字線,WLA1為對(duì)應(yīng)列地址Addr+1與端口 A的字線,WL引為對(duì)應(yīng) 列地址Addr+1與端口 B的字線。圖5A示出了這四條字線之間可能發(fā) 生的六種短路瑕瘋,而圖5B的表格列出這六種瑕疵與其對(duì)應(yīng)的需要修 復(fù)的列地址,也就是真正的瑕瘋位置。如圖5B所示,前四種瑕瘋是不 同列地址之間的字線短路,因此需要修復(fù)的列地址有兩個(gè),需使用多端 口存儲(chǔ)器301的兩個(gè)備份列進(jìn)行修復(fù)。后兩種瑕疵是對(duì)應(yīng)同 一列地址的 字線短路,因此需要修復(fù)的列地址只有一個(gè),只需使用多端口存儲(chǔ)器301的一個(gè)備份列進(jìn)行修復(fù)。
若檢測到的端口相關(guān)錯(cuò)誤是由字線瑕瘋所引起,瑕瘋定位模塊303 會(huì)在步驟440執(zhí)行字線瑕瘋定位算法,其流程如圖6所示。圖6流程的 所有讀寫步驟都是針對(duì)可修復(fù)多端口存儲(chǔ)器301,基本上是在錯(cuò)誤列地 址附近進(jìn)行一連串讀寫測試以找出真實(shí)的瑕瘋位置。首先,在步驟605 設(shè)定一個(gè)固定行地址。這個(gè)固定行地址可以是多端口存儲(chǔ)器301的任意 一個(gè)行地址,圖6流程的所有讀寫步驟都使用這個(gè)固定行地址。接著在 步驟610將一個(gè)數(shù)據(jù)字組的所有位設(shè)定為0。接著在步驟615進(jìn)行初始 化,就是將上述的數(shù)據(jù)字組寫入行地址等于固定行地址,而且列地址的 范圍是從錯(cuò)誤列地址-2到錯(cuò)誤列地址+2的存儲(chǔ)單元。這是為了避免在 步驟405寫入多端口存儲(chǔ)器301的測試數(shù)據(jù)干擾瑕瘋定位算法。
接下來,在步驟620將一個(gè)變動(dòng)列地址設(shè)定為錯(cuò)誤列地址-2,這個(gè) 變動(dòng)列地址是后面的讀寫動(dòng)作的基準(zhǔn)點(diǎn)。在步驟625將數(shù)據(jù)字組的反相 值寫入行地址等于固定行地址而且列地址等于變動(dòng)列地址的存儲(chǔ)單元, 可經(jīng)由任何一端口寫入。然后在步驟630經(jīng)由端口 A讀取行地址等于 固定行地址而且列地址等于變動(dòng)列地址+ 1的存儲(chǔ)單元,同時(shí)經(jīng)由端口 B 讀取行地址等于固定行地址而且列地址等于變動(dòng)列地址+ 1的存儲(chǔ)單 元。然后在步驟635檢查步驟630所讀取的數(shù)據(jù),若經(jīng)由端口A或端 口 B讀取的數(shù)據(jù)不等于前面寫入的數(shù)據(jù)字組,則在步驟640判定瑕疵 位置為變動(dòng)列地址以及變動(dòng)列地址+1,流程至此結(jié)束。
另一方面,若在步驟630經(jīng)由端口 A和端口 B讀取的數(shù)據(jù)皆等于 數(shù)據(jù)字組,則流程進(jìn)入步驟645,經(jīng)由端口 A讀取行地址等于固定行地 址而且列地址等于變動(dòng)列地址的存儲(chǔ)單元,同時(shí)經(jīng)由端口 B讀取行地 址等于固定行地址而且列地址等于變動(dòng)列地址+ 1的存儲(chǔ)單元。然后在 步驟650進(jìn)行檢查,若經(jīng)由端口 A讀取的數(shù)據(jù)不等于數(shù)據(jù)字組的反相 值,則流程進(jìn)入步驟655,判定瑕瘋位置為變動(dòng)列地址+ 1,流程至此結(jié) 束。若經(jīng)由端口 A讀取的數(shù)據(jù)等于數(shù)據(jù)字組的反相值,則進(jìn)入步驟660 的另一項(xiàng)檢查。若經(jīng)由端口 B讀取的數(shù)據(jù)不等于數(shù)據(jù)字組,則流程進(jìn) 入步驟665,判定瑕瘋位置為變動(dòng)列地址,流程至此結(jié)束。若經(jīng)由端口 B讀取的數(shù)據(jù)等于數(shù)據(jù)字組,則流程進(jìn)入步驟670。
接下來,在步驟670將變動(dòng)列地址加一,然后在步驟675進(jìn)行檢查。若變動(dòng)列地址小于或等于錯(cuò)誤列地址+1,則流程回到步驟625,否則進(jìn) 入步驟680,將數(shù)據(jù)字組的所有位設(shè)定為1,然后重復(fù)步驟615至675。
對(duì)照?qǐng)D5B和圖6可發(fā)現(xiàn),步驟630至640可定位圖5B的前四種 短路瑕疵,步驟645至655可定位第六種瑕瘋,步驟645、 660、以及 665可定位第五種瑕疵。
以下用三個(gè)范例說明本實(shí)施例的字線瑕瘋定位算法如何4企測瑕疵 位置。第一個(gè)范例請(qǐng)參照?qǐng)D6以及圖7A至圖7C。圖7A至圖7C示出 了可修復(fù)多端口存儲(chǔ)器30其中八個(gè)存儲(chǔ)單元(圖中的圓圈)以及相關(guān) 的字線和位線。其中WLAQ、 WLBo、 WLA1、以及WLB1這四個(gè)字線和圖 5A的相同,BLa和BLB分另lI為端口 A和端口 B的位線。第一個(gè)范例是 字線WLBq和WLA1之間的短路瑕瘋,而且是或型態(tài)(OR-type)的短路瑕 疵。也就是說,若因?yàn)檫@個(gè)瑕瘋使兩個(gè)存儲(chǔ)單元輸出至同一位線,這個(gè) 位線會(huì)輸出兩個(gè)存儲(chǔ)單元內(nèi)容的或運(yùn)算結(jié)果。
在圖6的流程中,當(dāng)步驟615的初始化執(zhí)行過后,存儲(chǔ)單元會(huì)全部 清除為0,如圖7A所示。當(dāng)變動(dòng)列地址等于Addr,步驟625會(huì)在列地 址等于Addr的存儲(chǔ)單元寫入1,假設(shè)步驟625經(jīng)由端口 A寫入,所以 字線WLa。受到致能,如圖7B所示。然后步驟630同時(shí)致能字線WLA1 和WLBI以同時(shí)經(jīng)由端口 A和端口 B讀取列地址等于Addr+1的存儲(chǔ)單 元。此時(shí)由于短路瑕瘋,字線WLBQ也同時(shí)致能,造成位于Addr和Addr十1 的存儲(chǔ)單元同時(shí)輸出至位線BLB,如圖7C所示。于是在步驟635的檢 查中,由端口 A讀取的數(shù)據(jù)正確無誤,但是由端口 B讀取的數(shù)據(jù)會(huì)全 部是1,而非步驟615寫入的0。因此流程進(jìn)入步驟640,判定瑕瘋位 置為列地址Addr以及Addr+1,也就是兩列都需要修復(fù)。
第二個(gè)范例請(qǐng)參照?qǐng)D6以及圖8A至圖8C。第二個(gè)范例是字線WLA0 和WLA1之間的短路瑕瘋,和第 一個(gè)范例同樣是或型態(tài)的短路瑕瘋。在 圖6的流程中,當(dāng)步驟615的初始化執(zhí)行過后,存儲(chǔ)單元會(huì)全部清除為 0,如圖8A所示。當(dāng)變動(dòng)列地址等于Addr,步驟625會(huì)在列地址等于 Addr的存儲(chǔ)單元寫入l,假設(shè)步驟625經(jīng)由端口 A寫入,所以字線WLA0 受到致能,由于短路瑕疵,字線WLA1也同時(shí)受到致能,造成位于Addr+1 的存儲(chǔ)單元同時(shí)被寫入,如圖8B所示。然后步驟630同時(shí)致能字線 WLAI和WLBI以同時(shí)經(jīng)由端口 A和端口 B讀取列地址等于Addr+1的存儲(chǔ)單元。此時(shí)由于短路瑕瘋,字線WLAo也同時(shí)致能,造成位于Addr 和Addr+1的存儲(chǔ)單元同時(shí)輸出至位線BLA,如圖8C所示。于是在步 驟635的檢查中,由端口 A和端口 B讀取的數(shù)據(jù)全部是1,而非步驟 615寫入的0。因此流程進(jìn)入步驟640,判定瑕瘋位置為列地址Addr以 及Addr+l,也就是兩列都需要修復(fù)。
第三個(gè)范例請(qǐng)參照?qǐng)D6以及圖9A至圖9D。第三個(gè)范例是字線WLA1 和WLB1之間的短路瑕瘋,而且不同于前兩個(gè)范例,是及型態(tài)(AND-type) 的短路瑕瘋。也就是說,若因?yàn)檫@個(gè)瑕瘋使兩個(gè)存儲(chǔ)單元輸出至同一位 線,這個(gè)位線會(huì)輸出兩個(gè)存儲(chǔ)單元內(nèi)容的及運(yùn)算結(jié)果。
在圖6的流程中,當(dāng)步驟615的初始化執(zhí)行過后,存儲(chǔ)單元會(huì)全部 清除為0,如圖9A所示。當(dāng)變動(dòng)列地址等于Addr,步驟625會(huì)在列地 址等于Addr的存儲(chǔ)單元寫入1,假設(shè)步驟625經(jīng)由端口 A寫入,所以 字幾WLao受到致能,如圖9B所示。然后步驟630同時(shí)致能字線WLA1 和WLB1以同時(shí)經(jīng)由端口 A和端口 B讀取列地址等于Addr+1的存儲(chǔ)單 元,如圖9C所示。此時(shí)短路瑕瘋不影響結(jié)果,所以可通過步驟635的 斗全查。接下來,步驟645同時(shí)致能字線WLao和WLB1以經(jīng)由端口 A讀 取位于Addr的存儲(chǔ)單元,同時(shí)經(jīng)由端口 B讀取位于Addr+1的存儲(chǔ)單 元。此時(shí)由于短路瑕疵,字線WLA1也同時(shí)致能,造成位于Addr和Addr+1 的存儲(chǔ)單元同時(shí)輸出至位線BLA,如圖9D所示。于是在步驟650的檢 查中,由端口 A讀取的數(shù)據(jù)全部是0,而非步驟625寫入的1。因此流 程進(jìn)入步驟655,判定瑕瘋位置為列地址Addr+1 ,也就是只有一列需要 修復(fù)。
除了以上三個(gè)范例的瑕瘋種類之外,圖5B列出的其它種字線短路 瑕瘋皆可使用圖6的字線瑕瘋定位算法加以定位,其過程和以上三個(gè)范 例類似,這里就不再贅述。
以下說明本實(shí)施例的位線瑕疵定位算法。本實(shí)施例的位線瑕疵定位 算法是針對(duì)子陣列組態(tài)的可修復(fù)多端口存儲(chǔ)器而設(shè)計(jì),本實(shí)施例的可修 復(fù)多端口存儲(chǔ)器301就是采用子陣列組態(tài),如圖10所示。圖10示出了 可修復(fù)多端口存儲(chǔ)器301的部分電路。多端口存儲(chǔ)器301的存儲(chǔ)單元排 列成多個(gè)行(column),例如1001就是其中一行。每四個(gè)行組成一個(gè)陣 列(array),例如陣列1011-1014。多端口存儲(chǔ)器301的每個(gè)字組(word)的位(bit)是分布在多個(gè)陣列之中,例如字組Wo-W3的分別在陣列 1011-1014各有一位。字組Wo-W3的行地址分別為0-3。在同一列.(row) 上,相鄰的位的行地址有兩種可能。第一種是行地址相差1,例如W,
和W2的位相鄰,W2和W3的位也相鄰。第二種是分別為最大和最小的
行地址,例如Wo和W3的位相鄰。多端口存儲(chǔ)器301包括多任務(wù)器 (multiplexer) 1021-1024,分別耦接于陣列1011-1014。每個(gè)多任務(wù)器 1021-1024根據(jù)其接收的行地址選擇對(duì)應(yīng)陣列其中一行的輸出,多任務(wù) 器1021-1024的輸出組成一個(gè)完整的數(shù)據(jù)字組。
圖IIA和圖11B說明本實(shí)施例的位線短路瑕瘋種類。圖IIA示出 了可修復(fù)多端口存儲(chǔ)器301的四個(gè)存儲(chǔ)單元以及相關(guān)的字線和位線。其 中字線WLAQ、 WLBo、 WLA1、以及WLb,和固5A相同。M,和豆m是 對(duì)應(yīng)端口 A和行地址Addr的位線。Si:s。和豆別是對(duì)應(yīng)端口 B和行地址 Addr的位線。S^,和^L,是對(duì)應(yīng)端口 A和4亍地址Addr+1的位線。S4和 E別是對(duì)應(yīng)端口 B和行地址Addr+1的位線。每一行存儲(chǔ)單元有四條位 線,兩行存儲(chǔ)單元之間的位線可組合出42=16種不同行之間的短路瑕 瘋,如圖11B的表格所示,其中每一種位線短路瑕疵都需要修復(fù)兩行 存儲(chǔ)單元。
至于同 一 行之間的位線短路瑕瘋,傳統(tǒng)測試算法本來就能正確檢測 與定位同 一行位線的短路瑕瘋,所以本實(shí)施例不需要考慮。
若檢測到的端口相關(guān)錯(cuò)誤是由位線瑕瘋所引起,瑕瘋定位模塊303 會(huì)在步驟440執(zhí)行位線瑕瘋定位算法,其流程如圖12所示。圖12流程 的所有讀寫步驟也是針對(duì)可修復(fù)多端口存儲(chǔ)器301,基本上是在錯(cuò)誤行 地址附近進(jìn)行 一 連串讀寫測試以找出真實(shí)的瑕瘋位置。首先在步驟 1205設(shè)定兩個(gè)列地址作為測試范圍,在本實(shí)施例中,這兩個(gè)列地址可 以是多端口存儲(chǔ)器301的任意兩個(gè)相鄰的列地址,以下稱這兩個(gè)列地址 為第 一 列地址和第二列地址。若需要避免前面的字線瑕疵定位算法的干 擾,可以避開字線瑕瘋定位算法的分析范圍。舉例來說,若之前有列地 址2至7成為字線瑕瘋定位算法的分析范圍,則這幾個(gè)列地址在后面的 位線瑕瘋定位算法中可視為不能使用,以避免干擾。
接下來,在步驟1210將一個(gè)變動(dòng)行地址設(shè)定為備份組件分析器305 提供的錯(cuò)誤行地址減去一。這個(gè)變動(dòng)行地址是后面測試的基準(zhǔn)點(diǎn)。圖12的流程有兩個(gè)測試用的數(shù)據(jù)字組,第一個(gè)字組的所有位為零, 以下稱為全零字組,第二個(gè)字組的所有位為一,以下稱為全一字組。接
下來,在步驟1215,經(jīng)由可修復(fù)多端口存儲(chǔ)器301的端口 A將全零字 組寫入行地址等于變動(dòng)行地址而且列地址等于第一列地址的存儲(chǔ)單元, 同時(shí)經(jīng)由可修復(fù)多端口存儲(chǔ)器301的端口 B將全零字組寫入行地址等 于變動(dòng)行地址而且列地址等于第二列地址的存儲(chǔ)單元。在步驟1220經(jīng) 由端口 A將全一字組寫入行地址等于變動(dòng)行地址+ 1而且列地址等于第 一列地址的存儲(chǔ)單元,同時(shí)經(jīng)由端口 B將全一字組寫入行地址等于變 動(dòng)行地址+ 1而且列地址等于第二列地址的存儲(chǔ)單元。在步驟1225經(jīng)由 端口 A讀取行地址等于變動(dòng)行地址而且列地址等于第一列地址的存儲(chǔ) 單元,同時(shí)經(jīng)由端口 B讀取行地址等于變動(dòng)行地址而且列地址等于第 二列地址的存儲(chǔ)單元。然后在步驟1230檢查步驟1225讀取的數(shù)據(jù)是否 正確無誤。若經(jīng)由端口 A或端口 B讀取的數(shù)據(jù)不等于全零字組,則在 步驟1235判定瑕瘋位置為變動(dòng)行地址以及變動(dòng)行地址+1 ,這兩行都需 要修復(fù)。若經(jīng)由端口 A和端口 B讀取的數(shù)據(jù)皆等于全零字組,流程進(jìn) 入步驟1240。
接下來,在步驟1240經(jīng)由端口 A將全零字組寫入行地址等于變動(dòng) 行地址+ 1而且列地址等于第一列地址的存儲(chǔ)單元,同時(shí)經(jīng)由端口 B將 全零字組寫入行地址等于變動(dòng)行地址+1而且列地址等于第二列地址的 存儲(chǔ)單元。在步驟1245經(jīng)由端口 A讀取行地址等于變動(dòng)行地址而且列 地址等于第一列地址的存儲(chǔ)單元,同時(shí)經(jīng)由端口 B讀取行地址等于變 動(dòng)行地址而且列地址等于第二列地址的存儲(chǔ)單元。然后在步驟1250檢 查步驟1245讀取的數(shù)據(jù)是否正確無誤。若經(jīng)由端口 A或端口 B讀取的 數(shù)據(jù)不等于全零字組,則在步驟1255判定瑕疵位置為變動(dòng)行地址以及 變動(dòng)行地址+ 1,這兩行都需要修復(fù)。若經(jīng)由端口 A和端口 B讀取的數(shù) 據(jù)皆等于全零字組,流程進(jìn)入步驟1260,將變動(dòng)行地址加一。然后在 步驟1265檢查變動(dòng)行地址,若變動(dòng)行地址小于或等于錯(cuò)誤行地址,則 流程回到步驟1215,否則流程至此結(jié)束。
以下舉兩個(gè)范例說明圖12的流程如何根據(jù)備份組件分析器305提 供的錯(cuò)誤行地址找出真實(shí)的瑕瘋位置。第一個(gè)范例請(qǐng)參照?qǐng)D13A至圖 13C。圖13A至圖13C示出了可修復(fù)多端口存儲(chǔ)器301其中四個(gè)存儲(chǔ)單元以及相關(guān)的字線與位線。其中字線WLA0、 WLB0、 WLA1、以及WLB1 和圖5A相同。S^和^L為端口 A的位線,S^和5Zs為端口 B的位線。 圖13A至圖13C的四個(gè)雙向箭頭示出了四種位線短路瑕瘋,分別為兩 行的短路、行地址Addr的和行地址Addr+1的短路、兩行的 IL短路、以及行地址Addr的豆力和行地址Addr+1的瓦s短路。這四種 瑕瘋有相同的觸發(fā)過程,因此一并說明。
圖12的流程中,當(dāng)變動(dòng)行地址等于Addr時(shí),步驟1215致能字線 WLA0以及WLB1,將0寫入行地址為Addr的存儲(chǔ)單元,如圖13A所示。 接著步驟1220將1寫入行地址為Addr+1的存儲(chǔ)單元,如圖13B所示。 此時(shí)由于兩條位線之間的短路,使得第一列地址與Addr相交處的存儲(chǔ) 單元也被寫入l,如圖13C所示。接下來,步驟1225與1230的讀取測 試中,從端口 A讀取的數(shù)據(jù)發(fā)生錯(cuò)誤,于是步驟1235判定瑕疵位置在 行地址Addr以及Addr+1,兩行都需要修復(fù)。
第二個(gè)范例請(qǐng)參照?qǐng)D14A至圖14D。圖14A至圖14D的四個(gè)雙向 箭頭示出了四種位線緝路瑕瘋,分別為行地址Addr的肌s和行地址 Addr+1的IL短路、行地址Addr的Si^和行地址Addr+1的豆^短路、 行地址Addr的5Zs和行地址Addr+1的短路、以及行地址Addr的Es 和行地址Addr+1的5、短路。這四種瑕瘋也有相同的觸發(fā)過程,因此 也一并說明。
圖12的流程中,當(dāng)變動(dòng)行地址等于Addr時(shí),步驟1215致能字線 WLA0以及WLBI,將0寫入行地址為Addr的存儲(chǔ)單元,如圖14A所示。 接著步驟1220將1寫入行地址為Addr+1的存儲(chǔ)單元,如圖14B所示。 在步驟1225與1230的讀取測試中,短路的兩條位在線的信號(hào)相同,不 會(huì)發(fā)生錯(cuò)誤。接著步驟1240將0寫入行地址為Addr+1的存儲(chǔ)單元,如 圖14C所示。此時(shí)由于兩條位線之間的短路瑕疵,使得第二列地址與 Addr相交處的存儲(chǔ)單元被寫入1,如圖14D所示。接下來,步驟1245 與1250的讀取測試中,從端口 B讀取的數(shù)據(jù)發(fā)生錯(cuò)誤,于是步驟1255 判定瑕疵位置在行地址Addr以及Addr+1,兩行都需要修復(fù)。
除了以上兩個(gè)范例的八種瑕瘋之外,圖11B列出的其它八種位線 短路瑕瘋皆可使用圖12的位線瑕瘋定位算法加以定位,其過程和以上 兩個(gè)范例類似,這里就不再贅述。如上所述,本發(fā)明對(duì)造成端口相關(guān)錯(cuò)誤的瑕瘋進(jìn)行分類,并針對(duì)各 類瑕瘋執(zhí)行獨(dú)特的觸發(fā)與定位步驟,由定位步驟中發(fā)生的錯(cuò)誤即可得知 對(duì)應(yīng)的瑕疵位置。因此本發(fā)明可依據(jù)表面上的錯(cuò)誤位置找出真正而且完 整的瑕瘋位置,以避免傳統(tǒng)技術(shù)的不正確或不完整修復(fù),進(jìn)而避免浪費(fèi) 備份組件,而且可達(dá)到最佳的修復(fù)成功比率以提高生產(chǎn)率。
雖然本發(fā)明已以較佳實(shí)施例披露如上,然其并非用以限定本發(fā)明, 本領(lǐng)域的技術(shù)人員.在不脫離本發(fā)明的精神和范圍的前提下,可作若干的 更動(dòng)與潤飾,因此本發(fā)明的保護(hù)范圍以本申請(qǐng)的權(quán)利要求為準(zhǔn)。
權(quán)利要求
1.一種多端口存儲(chǔ)器自我修復(fù)電路,包括一測試分析模塊;以及一瑕疵定位模塊,耦接于該測試分析模塊;其中該測試分析模塊測試一可修復(fù)多端口存儲(chǔ)器以產(chǎn)生一錯(cuò)誤位置,并根據(jù)該錯(cuò)誤位置判斷該測試是否產(chǎn)生端口相關(guān)錯(cuò)誤,若該測試產(chǎn)生端口相關(guān)錯(cuò)誤,則該瑕疵定位模塊根據(jù)該錯(cuò)誤位置產(chǎn)生一瑕疵位置并提供該瑕疵位置至該測試分析模塊,該測試分析模塊根據(jù)該瑕疵位置決定如何修復(fù)該可修復(fù)多端口存儲(chǔ)器。
2. 如權(quán)利要求1所述的多端口存儲(chǔ)器自我修復(fù)電路,其中若該測試 未產(chǎn)生端口相關(guān)錯(cuò)誤,則該測試分析模塊根據(jù)該錯(cuò)誤位置決定如何修復(fù) 該可修復(fù)多端口存儲(chǔ)器。
3. 如權(quán)利要求1所述的多端口存儲(chǔ)器自我修復(fù)電路,其中若該測試 分析模塊判斷該測試產(chǎn)生端口相關(guān)錯(cuò)誤,則啟動(dòng)該瑕疵定位模塊以產(chǎn)生 該拜I瘋、立置。
4. 如權(quán)利要求1所述的多端口存儲(chǔ)器自我修復(fù)電路,其中該測試分 析模塊包括一自我測試器,用以測試該可修復(fù)多端口存儲(chǔ)器以產(chǎn)生該錯(cuò)誤位 置;以及一備份組件分析器,耦接于該自我測試器與該瑕疵定位模塊,用以 根據(jù)該錯(cuò)誤位置判斷該測試是否產(chǎn)生端口相關(guān)錯(cuò)誤,并根據(jù)該瑕瘋位置 決定如何修復(fù)該可修復(fù)多端口存儲(chǔ)器。
5. 如權(quán)利要求1所述的多端口存儲(chǔ)器自我修復(fù)電路,其中該可修復(fù) 多端口存儲(chǔ)器為子陣列組態(tài)。
6. 如權(quán)利要求1所述的多端口存儲(chǔ)器自我修復(fù)電路,其中,若該錯(cuò) 誤位置包括同 一 列的多個(gè)連續(xù)存儲(chǔ)單元,則該測試分析模塊判斷該測試 產(chǎn)生對(duì)應(yīng)一字線瑕瘋的端口相關(guān)錯(cuò)誤,并將所述存儲(chǔ)單元的列地址存入 該瑕瘋定位模塊作為 一 錯(cuò)誤列地址;若該錯(cuò)誤位置包括同 一 行的多個(gè)連 續(xù)存儲(chǔ)單元,則該觀'j試分析模塊判斷該測試產(chǎn)生對(duì)應(yīng) 一 位線瑕瘋的端口相關(guān)錯(cuò)誤,并將所述存儲(chǔ)單元的行地址存入該瑕疵定位模塊作為一錯(cuò)誤行地址。
7. 如權(quán)利要求6所述的多端口存儲(chǔ)器自我修復(fù)電路,其中若該端口 相關(guān)錯(cuò)誤對(duì)應(yīng)一字線瑕疵,則該瑕瘋定位模塊對(duì)該可修復(fù)多端口存儲(chǔ)器執(zhí)行多個(gè)定位步驟以產(chǎn)生該瑕瘋位置,所述定位步驟包括(e) 將 一 數(shù)據(jù)字組的反相值寫入行地址為 一 固定行地址而且列地址 為 一 變動(dòng)列地址的存儲(chǔ)單元;(f) 經(jīng)由該可修復(fù)多端口存儲(chǔ)器的 一第 一端口讀取行地址為該固定 行地址而且列地址為Addr+PD的存儲(chǔ)單元,同時(shí)經(jīng)由該可修復(fù)多端口 存儲(chǔ)器的 一第二端口讀取行地址為該固定行地址而且列地址為 Addr+PD的存儲(chǔ)單元,其中Addr為該變動(dòng)列地址,PD為預(yù)設(shè)整數(shù);(g) 若步驟(f)中經(jīng)由該第一端口或該第二端口讀取的數(shù)據(jù)不等于該 數(shù)據(jù)字組,則該瑕瘋位置包括列地址Addr及Addr+PD;(h) 經(jīng)由該第 一端口讀取行地址為該固定行地址而且列地址為Addr 的存儲(chǔ)單元,同時(shí)經(jīng)由該第二端口讀取行地址為該固定行地址而且列地 址為Addr+PD的存儲(chǔ)單元;(i) 若步驟(h)中經(jīng)由該第一端口讀取的數(shù)據(jù)不等于該數(shù)據(jù)字組的反 相值,則該瑕瘋位置包括列地址Addr+PD;以及(j)若步驟(h)中經(jīng)由該第二端口讀取的數(shù)據(jù)不等于該數(shù)據(jù)字組,則 該瑕瘋位置包括列地址Addr。
8. 如權(quán)利要求7所述的多端口存儲(chǔ)器自我修復(fù)電路,其中所述定位 步驟在步驟(e)之前還包括(a) 設(shè)定該固定行地址;(b) 設(shè)定該數(shù)據(jù)字組的所有位為0;(c) 將該數(shù)據(jù)字組寫入行地址為該固定行地址而且列地址為FR-PA 至FR+PB的存儲(chǔ)單元,其中FR為該錯(cuò)誤列地址,PA、 PB皆為預(yù)設(shè)整 數(shù);(d) 設(shè)定該變動(dòng)列地址Addr-FR-PC,其中PC為預(yù)設(shè)整數(shù); 而且所述定位步驟在步驟(j)之后還包括(k)將該變動(dòng)列地址加一,若該變動(dòng)列地址小于或等于FR+PE,則 重復(fù)步驟(e)至(k),其中PE為預(yù)設(shè)整數(shù);以及(l)設(shè)定該數(shù)據(jù)字組的所有位為1,重復(fù)步驟(c)至(k)。
9. 如權(quán)利要求8所述的多端口存儲(chǔ)器自我修復(fù)電路,其中PA、 PB、 PC皆為2, PD、 PE皆為1。
10. 如權(quán)利要求6所述的多端口存儲(chǔ)器自我修復(fù)電路,其中若該端 口相關(guān)錯(cuò)誤對(duì)應(yīng) 一位線瑕瘋,則該瑕疵定位模塊對(duì)該可修復(fù)多端口存儲(chǔ) 器執(zhí)行多個(gè)定位步驟以產(chǎn)生該瑕疵位置,所述定位步驟包括(c) 經(jīng)由該可修復(fù)多端口存儲(chǔ)器的 一 第 一 端口將 一 第 一 字組寫入行 地址為Addr而且列地址為一第一列地址的存儲(chǔ)單元,同時(shí)經(jīng)由該可修 復(fù)多端口存儲(chǔ)器的一第二端口將該第一字組寫入行地址為Addr而且列地址為一第二列地址的存儲(chǔ)單元,其中Addr為一變動(dòng)行地址;(d) 經(jīng)由該第一端口將一第二字組寫入行地址為Addr+PB而且列地 址為該第一列地址的存儲(chǔ)單元,同時(shí)經(jīng)由該第二端口將該第二字組寫入 行地址為Addr+PB而且列地址為該第二列地址的存儲(chǔ)單元,其中PB為 預(yù)設(shè)整數(shù);(e) 經(jīng)由該第一端口讀取行地址為Addr而且列地址為該第一列地址 的存儲(chǔ)單元,同時(shí)經(jīng)由該第二端口讀取行地址為Addr而且列地址為該 第二列地址的存儲(chǔ)單元;(f) 若步驟(e)之中經(jīng)由該第 一端口或該第二端口讀取的數(shù)據(jù)不等于 該第 一字組,則該瑕瘋位置包括行地址Addr以及Addr+PB;(g) 經(jīng)由該第一端口將該第一字組寫入行地址為Addr+PB而且列地 址為該第一列地址的存儲(chǔ)單元,同時(shí)經(jīng)由該第二端口將該第一字組寫入 行地址為Addr+PB而且列地址為該第二列地址的存儲(chǔ)單元;(h) 經(jīng)由該第 一 端口讀取行地址為Addr而且列地址為該第 一 列地址 的存儲(chǔ)單元,同時(shí)經(jīng)由該第二端口讀取行地址為Addr而且列地址為該 第二列地址的存儲(chǔ)單元;以及(i) 若步驟(h)中經(jīng)由該第 一 端口或該第二端口讀取的數(shù)據(jù)不等于該 第 一 字組,則該瑕瘋位置包括行地址Addr以及Addr+PB 。
11. 如權(quán)利要求IO所述的多端口存儲(chǔ)器自我修復(fù)電路,其中所述定 位步驟在步驟(c)之前還包括(a) 設(shè)定該第 一 列地址以及該第二列地址;(b) 設(shè)定該變動(dòng)行地址Addr = FC-PA,其中FC為該錯(cuò)誤行地址., PA為預(yù)設(shè)整數(shù);而且所述定位步驟在步驟(i)之后還包括Cj)將該變動(dòng)行地址加 一 ,若該變動(dòng)行地址小于或等于該錯(cuò)誤行地址,則重復(fù)步驟(c)至(j)。
12. 如權(quán)利要求11所述的多端口存儲(chǔ)器自我修復(fù)電路,其中該第二 列地址為該第一列地址加一,該第一字組的所有位為0,該第二字組的 所有位為1, PA、 PB皆為1。
13. —種多端口存儲(chǔ)器自我修復(fù)方法,包括測試一可修復(fù)多端口存儲(chǔ)器以產(chǎn)生一錯(cuò)誤位置; 根據(jù)該錯(cuò)誤位置判斷該測試是否產(chǎn)生端口相關(guān)錯(cuò)誤;以及 若該測試產(chǎn)生端口相關(guān)錯(cuò)誤,則根據(jù)該錯(cuò)誤位置產(chǎn)生 一 瑕疵位置, 并根據(jù)該瑕疵位置決定如何修復(fù)該可修復(fù)多端口存儲(chǔ)器。
14. 如權(quán)利要求13所述的多端口存儲(chǔ)器自我修復(fù)方法,還包括 若該測試未產(chǎn)生端口相關(guān)錯(cuò)誤,則根據(jù)該錯(cuò)誤位置決定如何修復(fù)該可修復(fù)多端口存儲(chǔ)器。
15. 如權(quán)利要求13所述的多端口存儲(chǔ)器自我修復(fù)方法,其中該可修 復(fù)多端口存儲(chǔ)器為子陣列組態(tài)。
16. 如權(quán)利要求13所述的多端口存儲(chǔ)器自我修復(fù)方法,還包括若該錯(cuò)誤位置包括同 一 列的多個(gè)連續(xù)存儲(chǔ)單元,則判斷該測試產(chǎn)生 端口相關(guān)錯(cuò)誤而且該端口相關(guān)錯(cuò)誤對(duì)應(yīng) 一字線瑕疵,并提供所述存儲(chǔ)單 元的列地址作為一錯(cuò)誤列地址;以及若該錯(cuò)誤位置包括同 一 行的多個(gè)連續(xù)存儲(chǔ)單元,則判斷該測試產(chǎn)生 端口相關(guān)錯(cuò)誤而且該端口相關(guān)錯(cuò)誤對(duì)應(yīng) 一 位線瑕疵,并提供所述存儲(chǔ)單 元的行地址作為 一 錯(cuò)誤行地址。
17. 如權(quán)利要求16所述的多端口存儲(chǔ)器自我修復(fù)方法,其中若該端 口相關(guān)錯(cuò)誤對(duì)應(yīng) 一字線瑕疵,則該多端口存儲(chǔ)器自我修復(fù)方法還包括對(duì) 該可修復(fù)多端口存儲(chǔ)器執(zhí)行下列步驟(e) 將 一 數(shù)據(jù)字組的反相值寫入行地址為 一 固定行地址而且列地址 為一變動(dòng)列地址的存儲(chǔ)單元;(f) 經(jīng)由該可修復(fù)多端口存儲(chǔ)器的一第一端口讀取行地址為該固定 行地址而且列地址為Addr+PD的存儲(chǔ)單元,同時(shí)經(jīng)由該可修復(fù)多端口 存儲(chǔ)器的 一 第二端口讀取行地址為該固定行地址而且列地址為Addr+PD的存儲(chǔ)單元,其中Addr為該變動(dòng)列地址,PD為預(yù)設(shè)整數(shù);(g) 若步驟(f)中經(jīng)由該第 一 端口或該第二端口讀取的數(shù)據(jù)不等于該 數(shù)據(jù)字組,則該瑕瘋位置包括列地址Addr及Addr+PD;(h) 經(jīng)由該第 一端口讀取行地址為該固定行地址而且列地址為Addr 的存儲(chǔ)單元,同時(shí)經(jīng)由該第二端口讀取行地址為該固定行地址而且列地 址為Addr+PD的存儲(chǔ)單元;(i) 若步驟(h)中經(jīng)由該第一端口讀取的數(shù)據(jù)不等于該數(shù)據(jù)字組的反 相值,則該瑕瘋位置包括列地址Addr+PD;以及(j)若步驟(h)中經(jīng)由該第二端口讀取的數(shù)據(jù)不等于該數(shù)據(jù)字組,則 該瑕瘋位置包括列地址Addr。
18. 如權(quán)利要求17所述的多端口存儲(chǔ)器自我修復(fù)方法,其中對(duì)該可 修復(fù)多端口存儲(chǔ)器執(zhí)行的步驟在步驟(e)之前還包括(a) 設(shè)定該固定行地址;(b) 設(shè)定該數(shù)據(jù)字組的所有位為0;(c) 將該數(shù)據(jù)字組寫入行地址為該固定行地址而且列地址為FR-P A 至FR+PB的存儲(chǔ)單元,其中FR為該錯(cuò)誤列地址,PA、 PB皆為預(yù)設(shè)整 數(shù);(d) 設(shè)定該變動(dòng)列地址Addr = FR-PC,其中PC為預(yù)設(shè)整數(shù); 而且對(duì)該可修復(fù)多端口存儲(chǔ)器執(zhí)行的步驟在步驟(j)之后還包括 (k)將該變動(dòng)列地址加一,若該變動(dòng)列地址小于或等于FR+PE,則重復(fù)步驟(e)至(k),其中PE為預(yù)設(shè)整數(shù);以及(l)設(shè)定該數(shù)據(jù)字組的所有位為1,重復(fù)步驟(c)至(k)。
19. 如權(quán)利要求16所述的多端口存儲(chǔ)器自我修復(fù)方法,其中若該端 口相關(guān)錯(cuò)誤對(duì)應(yīng)一位線瑕疵,則該多端口存儲(chǔ)器自我修復(fù)方法還包括對(duì) 該可修復(fù)多端口存儲(chǔ)器執(zhí)行下列步驟(c) 經(jīng)由該可修復(fù)多端口存儲(chǔ)器的 一 第 一 端口將 一 第 一 字組寫入行 地址為Addr而且列地址為一第一列地址的存儲(chǔ)單元,同時(shí)經(jīng)由該可修 復(fù)多端口存儲(chǔ)器的一第二端口將該第一字組寫入行地址為Addr而且列 地址為一第二列地址的存儲(chǔ)單元,其中Addr為一變動(dòng)行地址;(d) 經(jīng)由該第一端口將一第二字組寫入行地址為Addr+PB而且列地 址為該第一列地址的存儲(chǔ)單元,同時(shí)經(jīng)由該第二端口將該第二字組寫入行地址為Addr+PB而且列地址為該第二列地址的存儲(chǔ)單元,其中PB為 預(yù)設(shè)整數(shù);(e) 經(jīng)由該第 一端口讀取行地址為Addr而且列地址為該第 一 列地址 的存儲(chǔ)單元,同時(shí)經(jīng)由該第二端口讀取行地址為Addr而且列地址為該 第二列地址的存儲(chǔ)單元;(f) 若步驟(e)中經(jīng)由該第一端口或該第二端口讀取的數(shù)據(jù)不等于該 第 一 字組,則該瑕瘋位置包括行地址Addr以及Addr+PB;(g) 經(jīng)由該第一端口將該第一字組寫入行地址為Addr+PB而且列地 址為該第一列地址的存儲(chǔ)單元,同時(shí)經(jīng)由該第二端口將該第一字組寫入 行地址為Addr+PB而且列地址為該第二列地址的存儲(chǔ)單元;(h) 經(jīng)由該第 一端口讀取行地址為Addr而且列地址為該第 一列地址 的存儲(chǔ)單元,同時(shí)經(jīng)由該第二端口讀取行地址為Addr而且列地址為該 第二列地址的存儲(chǔ)單元;以及(i) 若步驟(h)中經(jīng)由該第 一 端口或該第二端口讀取的數(shù)據(jù)不等于該 第 一 字組,則該瑕瘋位置包括行地址Addr以及Addr+PB 。
20.如權(quán)利要求19所述的多端口存儲(chǔ)器自我修復(fù)方法,其中對(duì)該可 修復(fù)多端口存儲(chǔ)器執(zhí)行的步驟在步驟(c)之前還包括(a) 設(shè)定該第 一 列地址以及該第二列地址;(b) 設(shè)定該變動(dòng)行地址Addr = FC-PA,其中FC為該錯(cuò)誤行地址, PA為預(yù)設(shè)整數(shù);而且對(duì)該可修復(fù)多端口存儲(chǔ)器執(zhí)行的步驟在步驟(i)之后還包括 (j)將該變動(dòng)行地址加 一 ,若該變動(dòng)行地址小于或等于該錯(cuò)誤行地 址,則重復(fù)步驟(c)至(j)。
全文摘要
一種多端口存儲(chǔ)器自我修復(fù)電路以及其對(duì)應(yīng)方法,上述的自我修復(fù)電路包括測試分析模塊以及瑕疵定位模塊。其中瑕疵定位模塊耦接于測試分析模塊。測試分析模塊測試一可修復(fù)多端口存儲(chǔ)器以產(chǎn)生一錯(cuò)誤位置,并根據(jù)錯(cuò)誤位置判斷上述測試是否產(chǎn)生端口相關(guān)錯(cuò)誤。若上述測試產(chǎn)生端口相關(guān)錯(cuò)誤,則瑕疵定位模塊根據(jù)錯(cuò)誤位置產(chǎn)生一瑕疵位置并提供瑕疵位置至測試分析模塊,測試分析模塊根據(jù)瑕疵位置決定如何修復(fù)上述可修復(fù)多端口存儲(chǔ)器。反之,若上述測試未產(chǎn)生端口相關(guān)錯(cuò)誤,則測試分析模塊根據(jù)錯(cuò)誤位置決定如何修復(fù)上述可修復(fù)多端口存儲(chǔ)器。
文檔編號(hào)G11C29/04GK101303898SQ20071010342
公開日2008年11月12日 申請(qǐng)日期2007年5月9日 優(yōu)先權(quán)日2007年5月9日
發(fā)明者包建元, 吳俊賢, 曾子維, 李進(jìn)福, 黃瑜真 申請(qǐng)人:智原科技股份有限公司