專利名稱:半導體設(shè)備及其測試方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種具有存儲器的半導體,更具體地,涉及一種具有用于校正存儲器中的差錯的乘積碼ECC(差錯校驗和校正)電路的半導體設(shè)備,以及涉及一種測試此設(shè)備的方法。
背景技術(shù):
用于在需要更新操作以保存數(shù)據(jù)的動態(tài)半導體存儲設(shè)備的各種方法之一,通過排列半導體存儲設(shè)備上的ECC電路,然后在進入低消耗功率模式時對整個芯片區(qū)域進行編碼,并在退出低消耗功率模式時實現(xiàn)整個芯片區(qū)域的校正操作,則當周圍溫度Ta為85℃時,超級自更新(SSR)技術(shù)可以使更新周期延長至多達大約1秒。例如,在日本專利待審公開申請NO.2002-56671(JP,P2002-56674A)中公開了此SSR技術(shù)。
圖1A示出了使用SSR技術(shù)的現(xiàn)有技術(shù)的半導體存儲設(shè)備的結(jié)構(gòu),而圖1B給出了設(shè)置有乘積碼奇偶校驗位區(qū)域的存儲單元陣列的結(jié)構(gòu)的示意圖。
兩個編碼C1和C2分別為(n1,k1)編碼和(n2,k2)編碼;且通過利用編碼C1對每一列的k1個信息點進行編碼、以及利用編碼C2對每一行的k2個信息點進行編碼,以獲得具有n1*n2的總長度的編碼字,將k1*k2個信息點編碼為k1行和k2列的二維排列。通過此類型編碼獲得的編碼是線性(n1*n2,k1*k2)編碼,并將其稱為編碼C1和C2的乘積碼。
如圖1A中所示,半導體存儲設(shè)備具有多個存儲體100,針對每個存儲體100設(shè)置有多個編碼器/解碼器101、以及多個寫入緩沖器/主緩沖器102。編碼器/解碼器101與SDRAM(同步DRAM)接口103相連;而SDRAM接口103與ECC控制器104相連。在此情況下,在相應(yīng)編碼器/解碼器101和存儲體100之間設(shè)置每一個寫入緩沖器/主緩沖器102。由圖1A中的斜切線標記的區(qū)域表示一個典型存儲單元陣列。存儲體100具有多個這樣的存儲單元陣列。
接下來關(guān)注每個存儲單元陣列,如圖1B中所示,存儲單元陣列具有1024×1024單元,用于存儲二維排列的信息位;垂直方向的奇偶校驗位的存儲區(qū)域(編碼#1);以及行方向的奇偶校驗位的存儲區(qū)域(編碼#2),由此,存儲了乘積碼。垂直方向的奇偶校驗位(1040,1024)為海明碼,以及行方向的奇偶檢驗位(1040,1024)為海明碼。
參考圖2,接下來的解釋涉及在此類型的半導體存儲設(shè)備中的SSR過程。
首先,在步驟S1中,進入SSR,之后,在步驟S2中對該存儲體的整個區(qū)域進行編碼。在該編碼中,存儲信息位的單元區(qū)域受到指定的糾錯編碼,并將編碼的結(jié)果存儲到信息位的單元區(qū)域中和奇偶檢驗位的單元區(qū)域中,此后,在步驟S3中,該存儲體經(jīng)過更新操作,并在步驟S4中確定是否退出SSR。如果在此時未退出SSR,則該處理返回到步驟S3,并再次執(zhí)行更新操作??蛇x地,如果在步驟S4中確定退出SSR,則在步驟S5中執(zhí)行SSR退出處理,并在步驟S6中對整個區(qū)域進行編碼。在步驟S6中實現(xiàn)的編碼對應(yīng)于校正操作。
圖3是示出了通過使用SSR技術(shù)而引起更新周期的改進的曲線圖。在圖3中,水平軸表示保持時間(即,更新周期)tREF,垂直軸表示差錯率(%)。使用缺陷位的出現(xiàn)率作為差錯率。在該圖中,DRAM差錯率是常規(guī)DRAM差錯率,即,并不采用SSR技術(shù)的DRAM差錯率。
圖3中的虛線所示的點表示采用了SSR技術(shù)的半導體存儲設(shè)備中的差錯率。在tREF=1秒時,由于保持時間的波動,出現(xiàn)了大約100個缺陷位,且出現(xiàn)了其中不可能由SSR來校正的差錯圖案。圖3示出了了在tREF=0.1秒或更低處的1位差錯率(約為1×10-7)。
圖4示出了在采用SSR技術(shù)的半導體存儲設(shè)備中,由于保持時間tREF的波動,DRAM中缺陷位的出現(xiàn)狀態(tài)。在圖4中,水平軸表示時間,垂直軸表示差錯率(%)。當tREF等于或大于0.1秒時,DRAM差錯率上升,導致了在出廠之后額外差錯的劇烈出現(xiàn)。
實質(zhì)上,必須開發(fā)半導體存儲設(shè)備,其中,當tREF等于或大于0.1秒時,差錯率也不會增加,且抑制出廠之后的額外差錯的出現(xiàn)。
圖5是用于解釋補救采用SSR技術(shù)的半導體存儲設(shè)備中的缺陷單元的現(xiàn)有技術(shù)處理的流程圖。
首先,在步驟S11中,在圖案“全1”中執(zhí)行對所有位的寫入,即其中當讀取單元時邏輯值為1的數(shù)值圖案。在寫入之后,在步驟S12中執(zhí)行使用乘積碼的編碼,此后,在步驟S13中,以1秒的周期重復更新操作。
接下來,在步驟S14中,從存儲單元陣列中讀取數(shù)據(jù),并進行解碼,并在步驟S15中,對已經(jīng)讀取的數(shù)據(jù)執(zhí)行通過/失效確定以產(chǎn)生失效信息。然后,利用冗余單元,通過置換來補救這些失效位。
圖6是用于解釋通過乘積碼的校正操作的視圖。這里,解釋了以下情況通過使用乘積碼的ECC的校正操作使失效位能夠被保留,而無需實現(xiàn)通過冗余單元的置換。圖6示出了包括失效位的存儲單元陣列。在圖中,“×”表示失效地址或失效單元。此外,將存儲單元陣列中的失效單元或失效位的排列圖稱為“失效圖”。
包括失效單元的單元陣列306A經(jīng)過編碼#1的單比特糾錯。由于在此時不能校正每列兩個或兩個以上點的失效位,獲得失效圖306B,作為校正后的單元陣列數(shù)據(jù)。在此失效圖306B中顯示的存儲單元陣列經(jīng)過編碼#2的單比特糾錯。如圖6中所示,通過乘積碼的糾錯引起了編碼#2校正的“通過”,而無需冗余補救。換句話說,利用編碼#2的糾錯,能夠執(zhí)行每行的缺陷單元的糾錯,由此,使冗余單元的補救變?yōu)椴皇潜匦璧摹?br>
相反,圖7給出了針對ECC的誤差校正是不可行、而冗余單元的置換(即,現(xiàn)有技術(shù)的冗余補救)變成必需的情況的操作的示意圖。
如上所述,包括失效單元的單元陣列307A經(jīng)過利用編碼#1的單比特糾錯,以獲得失效圖307B,然后,在失效圖307B中示出的存儲單元陣列經(jīng)過利用編碼#2的單比特糾錯。由于對于每行兩個失效位的情況,不能校正,在失效圖307C中的失效位(缺陷單元)在此情況下變成利用冗余單元進行補救的對象。
但是,當使用現(xiàn)有技術(shù)的缺陷補救方法時,由于在DRAM產(chǎn)品出廠之后保持時間的波動,出現(xiàn)了缺陷位,如由圖4中的“出廠之后的額外差錯”所示,且這些額外差錯位引起市場缺陷率(即出廠之后的缺陷率)的劇烈增加,例如,以10倍的數(shù)量級。
圖8給出了對可以在出廠之前的晶片光刻檢驗處理中檢測到的不可校正圖案、和在晶片光刻檢驗處理中確定可校正但由于出廠之后出現(xiàn)保持時間的波動而變成不可校正的圖案的示意圖。如圖8所示,允許通過乘積碼ECC校正缺陷位的存儲器LSI(大規(guī)模集成)包括已經(jīng)成為不可校正的位圖案和由于添加了單比特失效位而已經(jīng)變?yōu)椴豢尚U奈粓D案。將在晶片光刻檢驗時可校正、但由于添加了單比特失效位而將變?yōu)椴豢尚U膯卧Q為潛在缺陷單元。
發(fā)明內(nèi)容
由于額外的單比特失效位,增加了出廠之后DRAM產(chǎn)品的額外差錯,且此問題需要有效的對策。
因此,本發(fā)明的目的是提供一種半導體設(shè)備,允許對已經(jīng)是不可校正的、作為利用冗余的補救的對象的位圖案、以及由于添加單比特失效位而導致不可校正的位圖案進行糾錯。
本發(fā)明的另一目的是提供一種半導體設(shè)備測試方法,允許對已經(jīng)是不可校正的、作為利用冗余的補救的對象的圖案、以及由于添加單比特失效位導致不可校正的圖案進行糾錯。
根據(jù)本發(fā)明的第一方面,半導體設(shè)備包括ECC電路,使用由第一編碼和第二編碼組成的乘積碼來執(zhí)行存儲器的糾錯;以及用于使所述第一編碼和第二編碼中的一個編碼獨立操作的裝置。
根據(jù)本發(fā)明的第二方面,設(shè)置有使用由第一編碼和第二編碼組成的乘積碼來執(zhí)行半導體存儲設(shè)備的糾錯的ECC電路的半導體設(shè)備,包括第一編碼電路,用于利用所述第一編碼進行編碼;第二編碼電路,用于利用所述第二編碼進行編碼;第一解碼電路,用于利用所述第一編碼進行解碼;第二解碼電路,用于利用所述第二編碼進行解碼;奇偶校驗產(chǎn)生電路,用于產(chǎn)生奇偶校驗;校正子運算電路;以及控制電路。所述控制電路在利用所述第一編碼和所述第二編碼之一進行編碼期間,并根據(jù)作為輸入接收的控制信號實現(xiàn)以下控制將半導體存儲設(shè)備的數(shù)據(jù)作為輸入提供給所述第一編碼電路和所述第二編碼電路之一;將來自向其提供了所述數(shù)據(jù)的編碼電路的已編碼輸出作為輸入提供給所述奇偶校驗產(chǎn)生電路;將產(chǎn)生的奇偶校驗寫入到所述半導體存儲設(shè)備;從所述半導體存儲設(shè)備中讀取利用所述第一編碼和所述第二編碼之一編碼的數(shù)據(jù);以及向所述第一解碼電路和所述第二解碼電路提供已經(jīng)讀取的數(shù)據(jù);將向其提供了所述已讀取數(shù)據(jù)的解碼電路的輸出提供給所述校正子運算電路,并執(zhí)行校正操作;以及將已校正的位寫入到所述半導體存儲設(shè)備。
根據(jù)本發(fā)明的第三方面,提供了一種方法,用于測試半導體存儲設(shè)備或存儲器LSI,所述半導體存儲設(shè)備設(shè)置有使用由第一編碼和第二編碼組成的乘積碼來執(zhí)行存儲器的糾錯的ECC電路;所述測試方法包括以下步驟通過根據(jù)所述第一編碼和所述第二編碼獨立實現(xiàn)的校正操作,獲得第一通過/失效確定結(jié)果和第二通過/失效確定結(jié)果,并將這些結(jié)果相應(yīng)地記錄到第一失效存儲器和第二失效存儲器中;執(zhí)行與所述第一失效存儲器的內(nèi)容和所述第二失效存儲器的內(nèi)容相關(guān)的指定邏輯運算;以及根據(jù)所述邏輯運算的結(jié)果,對失效位和潛在失效位進行補救。
根據(jù)本發(fā)明的第四方面,提供了一種用于測試半導體存儲設(shè)備或存儲器LSI的方法,所述半導體存儲設(shè)備設(shè)置有使用由第一編碼和第二編碼組成的乘積碼以執(zhí)行存儲器的糾錯的ECC電路;所述測試方法包括以下步驟獲得由所述第一編碼和所述第二編碼之一實現(xiàn)的通過/失效確定結(jié)果,并采用確定結(jié)果的互補圖案作為掩蔽數(shù)據(jù);以及利用所述掩蔽數(shù)據(jù)得到所述第一編碼和所述第二編碼的其它編碼的通過/失效確定結(jié)果,以對失效位和潛在失效位進行補救。
本發(fā)明中,按照包括以下步驟的測試方法,對包括具有由第一編碼和第二編碼組成的乘積碼實現(xiàn)的奇偶校驗數(shù)據(jù)的存儲區(qū)域的存儲單元陣列的動態(tài)半導體存儲設(shè)備進行測試(A1)將指定值數(shù)據(jù)寫入到所述存儲單元陣列中;并按照由所述第一編碼實現(xiàn)的編碼處理,從所述存儲單元陣列讀取數(shù)據(jù),以產(chǎn)生第一奇偶校驗,并將已經(jīng)產(chǎn)生的所述第一奇偶校驗寫入到所述存儲單元陣列中;(A2)在指定時間間隔的更新操作之后,從所述存儲單元陣列中讀取由所述第一編碼所編碼的數(shù)據(jù),對所讀取的數(shù)據(jù)進行解碼,并將第一已校正位寫入到所述存儲單元陣列中;(A3)從其中已經(jīng)寫入了所述第一已校正位的所述存儲單元陣列中讀取數(shù)據(jù),對通過/失效進行確定,并將確定結(jié)果記錄到第一失效存儲器中;(A4)將指定值數(shù)據(jù)寫入到所述存儲單元陣列中;并按照由所述第二編碼實現(xiàn)的編碼處理,從所述存儲單元陣列讀取數(shù)據(jù),以產(chǎn)生第二奇偶校驗,并將已經(jīng)產(chǎn)生的所述第二奇偶校驗寫入到所述存儲單元陣列中;(A5)在指定時間間隔的更新操作之后,從所述存儲單元陣列中讀取由所述第二編碼所編碼的數(shù)據(jù),對所讀取的數(shù)據(jù)進行解碼,并將第二已校正位寫入到所述存儲單元陣列中;(A6)從其中已經(jīng)寫入了所述第二已校正位的所述存儲單元陣列中讀取數(shù)據(jù),對通過/失效進行確定,并將確定結(jié)果記錄到第二失效存儲器中;以及(A7)執(zhí)行與所述第一失效存儲器的內(nèi)容和所述第二失效存儲器的內(nèi)容有關(guān)的指定邏輯運算,并根據(jù)所述邏輯運算的結(jié)果,獲得要通過冗余單元補救的單元。
可選地,在本發(fā)明中,按照包括以下步驟的測試方法,對包括具有由第一編碼和第二編碼組成的乘積碼實現(xiàn)的奇偶校驗數(shù)據(jù)的存儲區(qū)域的存儲單元陣列的動態(tài)半導體存儲設(shè)備進行測試(B1)將指定值數(shù)據(jù)寫入到所述存儲單元陣列中;并按照由所述第一編碼實現(xiàn)的編碼處理,從所述存儲單元陣列讀取數(shù)據(jù),以產(chǎn)生第一奇偶校驗,并將已經(jīng)產(chǎn)生的所述第一奇偶校驗寫入到所述存儲單元陣列中;(B2)在指定時間間隔的更新操作之后,從所述存儲單元陣列中讀取由所述第一編碼所編碼的數(shù)據(jù),對所讀取的數(shù)據(jù)進行解碼,并將第一校正位寫入到所述存儲單元陣列中;(B3))從其中已經(jīng)寫入了所述第一校正位的所述存儲單元陣列中讀取數(shù)據(jù),對通過/失效進行確定,并產(chǎn)生確定結(jié)果的互補圖案,作為掩蔽數(shù)據(jù);(B4)將指定值數(shù)據(jù)寫入到所述存儲單元陣列中;并按照由所述第二編碼實現(xiàn)的編碼處理,從所述存儲單元陣列讀取數(shù)據(jù),以產(chǎn)生第二奇偶校驗,并將已經(jīng)產(chǎn)生的所述第二奇偶校驗寫入到所述存儲單元陣列中;(B5)在指定時間間隔的更新操作之后,從所述存儲單元陣列中讀取由所述第二編碼所編碼的數(shù)據(jù),對所讀取的數(shù)據(jù)進行解碼,并將第二已校正位寫入到所述存儲單元陣列中;(B6)從其中已經(jīng)寫入了所述第二已校正位的所述存儲單元陣列中讀取數(shù)據(jù),對通過/失效進行確定,利用所述掩蔽數(shù)據(jù)掩蔽確定結(jié)果,以產(chǎn)生失效信息,并根據(jù)所述失效信息,獲得作為要通過冗余單元進行補救的單元。
因此,本發(fā)明實現(xiàn)了對已經(jīng)不可校正的圖案以及由于如添加單比特失效位而導致變?yōu)椴豢尚U膱D案的確定,結(jié)果,在檢查處理中,如晶片光刻檢驗,實現(xiàn)對潛在缺陷單元的補救。
從以下參考附圖的描述中,本發(fā)明的上述和其它目的、特點和優(yōu)點將變得顯而易見,所述附圖示出了本發(fā)明的實例。
圖1A示出了使用SSR技術(shù)的傳統(tǒng)半導體存儲設(shè)備的結(jié)構(gòu);圖1B示出了具有乘積碼的奇偶校驗位區(qū)域的存儲單元陣列的結(jié)構(gòu)的示意圖;圖2是示出了了根據(jù)SSR技術(shù)的過程的流程圖;圖3是示出了保持時間tREF和差錯率之間關(guān)系的曲線圖;圖4是示出了保持時間的波動和差錯率之間關(guān)系的曲線圖;圖5是示出了用于補救使用SSR技術(shù)的半導體存儲設(shè)備中的缺陷單元的過程的實例的流程圖;圖6是乘積碼的校正操作的解釋性視圖;圖7是需要冗余單元的補救的失效位的導出的解釋性視圖;圖8是需要冗余補救的失效位圖案的解釋性視圖;圖9是用于解釋并將根據(jù)本發(fā)明實施例的過程與現(xiàn)有技術(shù)的過程進行比較的視圖;圖10A是用于解釋應(yīng)用于SDRAM的現(xiàn)有技術(shù)的晶片光刻檢驗的視圖;圖10B是用于解釋其中應(yīng)用了本發(fā)明的晶片光刻檢驗的視圖;圖11是示出了現(xiàn)有技術(shù)的乘積碼ECC電路的結(jié)構(gòu)的方框圖;圖12A和12B是用于解釋本發(fā)明的實施例的ECC電路的方框圖;圖13示出了失效位的實例;圖14是用于解釋第一過程的視圖;圖15是用于解釋第二過程的視圖;圖16是示出了第一過程中利用編碼#1的校正操作的流程圖;圖17A和17B是示出了用于第一過程中利用編碼#1的校正操作的電路配置的方框圖;圖18是用于解釋第一過程中利用編碼#1實現(xiàn)的校正結(jié)果的視圖;圖19是示出了第一過程中利用編碼#2的校正操作的流程圖;圖20A和20B是示出了用于第一過程中利用編碼#2實現(xiàn)的校正操作的電路配置的方框圖;圖21是用于解釋第一過程中利用編碼#2實現(xiàn)的校正結(jié)果的視圖;圖22是用于解釋由第一過程發(fā)現(xiàn)的、要由冗余位補救的失效位的視圖;圖23是用于解釋第二過程的視圖;以及圖24是用于解釋第二過程的視圖。
具體實施例方式
圖9示出了與現(xiàn)有技術(shù)的過程相比,根據(jù)本發(fā)明的實施例的用于補救缺陷單元的過程。在圖9中,流程309A示出了未改變的圖5中所示的現(xiàn)有技術(shù)的過程,流程309B示出了基于本發(fā)明的第一過程,以及流程309C示出了基于本發(fā)明的第二過程。
在第一過程中,如圖309B中所示,首先,在步驟S21中,以指定值(全1)寫入所有部位;然后,在步驟S22中,僅通過編碼#1進行編碼。然后,在步驟S23中,以tREF=1秒的更新周期執(zhí)行更新操作。
接下來,在步驟S24中,從存儲單元陣列中讀取所有位,并利用編碼#1進行解碼,并在步驟S25中,確定數(shù)據(jù)的通過/失效。將從結(jié)果中得到的失效位的地址記錄在安裝在存儲器測試器(未示出)中的第一失效存儲器(失效存儲器#1)中。
接下來,如步驟S31到S35中所示,針對編碼#2執(zhí)行相同的操作,并將作為結(jié)果獲得的失效位的地址記錄在安裝在存儲器測試器(未示出)中的第二失效存儲器(失效存儲器#2)中。具體地,在步驟S31中,按照“全1”寫入所有位,在步驟S32中,僅使用編碼#2執(zhí)行編碼,然后,在步驟S33中,以tREF=1秒的更新周期重復更新操作。接下來,在步驟S34中,讀取數(shù)據(jù)并進行解碼,并在步驟S35中,確定數(shù)據(jù)的通過/失效,并將失效位的地址記錄在第二失效存儲器中。
接下來,在存儲器測試器中執(zhí)行第一失效存儲器和第二失效存儲器的與(邏輯積)運算,由此,發(fā)現(xiàn)要通過要通過冗余補救的單元的地址。
在第二過程中,如流程圖309C所示,首先,在步驟S41中,以指定值(全1)寫入所有位,并在步驟S42中,僅利用編碼#1進行編碼。然后,在步驟S43中,以tREF=1秒的更新周期重復更新操作。接下來,在步驟S44中,從存儲單元陣列中讀取所有位,并利用編碼#1進行解碼,之后,在步驟S45中,確定數(shù)據(jù)的通過/失效。在步驟S46中,將未失效的位(即,通過位)的地址記錄在存儲器測試器(未示出)的第一失效存儲器中。
接下來,在步驟S47中,按照“全1”再次寫入所有位,之后,在步驟S48中,執(zhí)行僅利用編碼#2的編碼,并在步驟S49中,以tREF=1秒重復更新操作。接著,在步驟S50中,從存儲單元陣列中讀取所有位,并利用編碼#2進行解碼,之后,在步驟S51中,確定數(shù)據(jù)的通過/失效。接著,利用存儲在第一失效存儲器中的內(nèi)容掩蔽此通過/失效確定的結(jié)果,然后,記錄未掩蔽的失效位的地址。于是,根據(jù)所記錄的地址,可以用冗余位代替失效位以補救缺陷。
為了執(zhí)行此實施例的上述過程,當制造半導體存儲設(shè)備時,可以在常規(guī)晶片光刻檢驗的處理中添加以下修改。
圖10A示出了SDRAM(同步DRAM)的常規(guī)晶片光刻檢驗的過程。在常規(guī)晶片光刻測試中,補救字線缺陷和位線缺陷,然后補救位缺陷和更新缺陷。相反,為了執(zhí)行本實施例的過程,針對編碼#1和編碼#2的每一個,獨立執(zhí)行晶片光刻檢驗中的ECC測試,如圖10B中所示。
下列將解釋用于執(zhí)行此類ECC測試的ECC電路。
圖11是示出了現(xiàn)有技術(shù)的乘積碼ECC電路的配置的方框圖。ECC控制器20和奇偶校驗產(chǎn)生/校正子(syndrome)運算電路30與作為檢驗的對象的SDRAM 10相連。ECC控制器20對應(yīng)于圖1A中所示的電路中的ECC控制器104。在ECC控制器20內(nèi)設(shè)置有第一編碼電路201,用于通過編碼#1進行編碼;第二編碼電路202,用于通過編碼#2進行編碼;第一解碼電路203,用于通過編碼#1進行解碼;第二解碼電路204,用于通過編碼#2進行解碼;地址產(chǎn)生電路205;以及輸出寄存器206。
相反,如圖12A中所示,根據(jù)本實施例的ECC電路是圖11所示的配置,已經(jīng)進行了修改以允許僅利用編碼#1進行獨立糾錯,以及僅利用編碼#2進行糾錯。結(jié)果,圖12A中所示的ECC電路是其中將冗余補救控制器40設(shè)置到圖11所示的電路上、以及將開關(guān)207到212設(shè)置在ECC控制器20上的配置。
在如圖12A所示的ECC電路中,作為從冗余補救控制器40到ECC控制器20的輸入而提供的控制信號TCODE1是用于實現(xiàn)僅使第一編碼電路201和第一解碼電路203操作的開關(guān)控制的控制信號;而TCODE2是用于實現(xiàn)僅使第二編碼電路202和第二解碼電路204操作的開關(guān)控制的控制信號。這些控制信號控制開關(guān)207到212。
地址產(chǎn)生電路205產(chǎn)生讀取/寫入存取命令、寫入地址(包括其中寫入了奇偶校驗和校正位的地址)、以及讀取地址。經(jīng)由輸出寄存器206將由地址產(chǎn)生電路205產(chǎn)生的命令或地址提供到SDRAM 10,作為讀取/寫入(R/W)命令和地址信號。
在圖12A中所示的配置中,激活由冗余補救控制器40提供的控制信號TCODE1,并將開關(guān)207到212設(shè)置為用于僅操作第一編碼電路201和第一解碼電路203的配置。換句話說,經(jīng)由開關(guān)207將SDRAM 10的讀取數(shù)據(jù)提供到第一編碼電路201,并經(jīng)由開關(guān)208和209,將第一編碼電路201的輸出從輸出寄存器206提供到奇偶校驗產(chǎn)生/校正子運算電路30。此外,經(jīng)由開關(guān)210,將SDRAM 10的讀取數(shù)據(jù)提供給解碼電路203,并經(jīng)由開關(guān)211和212,將第一解碼電路203的輸出從輸出寄存器206提供到奇偶校驗產(chǎn)生/校正子運算電路30。
圖12B示出了當激活了已經(jīng)由冗余補救控制器40提供的控制信號TCODE2時,開關(guān)207到2112的轉(zhuǎn)換狀態(tài)。當已經(jīng)激活了控制信號TCODE2時,將開關(guān)207到212設(shè)置為用于僅操作第二編碼電路202和第二解碼電路204的配置。換句話說,經(jīng)由開關(guān)207、209和208,將SDRAM 10的讀取數(shù)據(jù)提供到第二編碼電路202,并將第二編碼電路202的輸出從輸出寄存器206提供到奇偶校驗產(chǎn)生/校正子運算電路30。此外,經(jīng)由開關(guān)210、212和212,將SDRAM 10的讀取數(shù)據(jù)提供給第二解碼電路204,并將第二解碼電路204的輸出從輸出寄存器206提供到奇偶校驗產(chǎn)生/校正子運算電路30。
如果利用如圖12A和12B中所示的電路,其中如圖13所示排列失效位的存儲單元陣列經(jīng)過了如圖9中的流程圖309B所示的第一過程的處理,則通過圖14中所示的失效圖來顯示所得到的結(jié)果。換句話說,如果僅利用編碼#1,對其中如圖13中所示排列失效位的存儲單元陣列進行了校正,則得到由失效圖314A所示的結(jié)果,并將此結(jié)果記錄在第一失效存儲器中。同樣地,如果僅利用編碼#2,對其中如圖13中所示排列失效位的存儲單元陣列進行了校正,則得到失效圖314B中所示的結(jié)果,并將此結(jié)果記錄在第二失效存儲器中。執(zhí)行查找第一失效存儲器的內(nèi)容和第二失效存儲器的內(nèi)容的邏輯積(與)的處理得到如失效圖314C所示的結(jié)果。在失效圖314C中仍然顯示為失效位的位是缺陷位,其并未通過ECC處理得到補救,但這些位通過冗余位的置換來得到補救。
同樣地,如果利用如圖12A和12B中所示的電路,如圖13所示排列失效位的存儲單元陣列經(jīng)過了如圖9中的流程圖309C所示的第二過程的處理,則得到由圖15中所示的失效圖所示的結(jié)果。換句話說,如果僅利用編碼#1,如圖13中所示排列失效位的存儲單元陣列經(jīng)過了校正,則得到由圖14中的失效圖314A所示出的結(jié)果,且如果對些結(jié)果經(jīng)過了掩蔽通過位地址的處理,則得到圖15中所示的地址掩碼315A。如果僅利用編碼#2,使其中如圖13中所示排列失效位的存儲單元陣列經(jīng)過了校正,且然后確定數(shù)據(jù)的通過/失效,則得到失效圖315B中所示的結(jié)果。然后,利用地址掩碼315A掩蔽失效圖315B且僅關(guān)注未被掩蔽的地址產(chǎn)生了如失效圖315C所示出的結(jié)果。在失效圖315C中仍然顯示為失效位的位是缺陷位,其還未通過ECC處理得到補救,因此,記錄這些失效位的地址,并且該位通過冗余位的置換進行補救。
接下來解釋第一過程的細節(jié)。首先,參考圖16的流程圖解釋利用編碼#1的編碼和解碼處理。
首先,在步驟S101中,以指定值(全1)對存儲單元陣列中的所有位進行寫入,之后,僅利用編碼#1執(zhí)行編碼處理。在利用編碼#1的編碼處理中,在步驟S102中,從存儲單元陣列中按列讀取數(shù)據(jù),在步驟S103中,根據(jù)編碼#1產(chǎn)生奇偶校驗,并在步驟S104中,將奇偶校驗寫入到奇偶校驗位區(qū)域。重復此操作,例如,262,144(=218)次,即,256k次,以覆蓋SDRAM存儲器芯片的整個區(qū)域,如步驟S105中所示。
在已經(jīng)完成利用編碼#1的編碼處理之后,在步驟S106中,以tREF=1秒的更新周期重復更新操作,之后,執(zhí)行利用編碼#1的解碼處理。在利用編碼#1的解碼處理中,在步驟S107中,從存儲單元陣列中按列讀取數(shù)據(jù),在步驟S108中,根據(jù)已經(jīng)按列讀取的數(shù)據(jù)來執(zhí)行校正操作,并在步驟S109中,將已校正的位寫入到存儲單元陣列中。如步驟S110中所示,針對SDRAM的所有位,重復此類操作,例如,262,144次。
在利用編碼#1的解碼處理之后,在步驟S111中,接著對通過/失效進行確定,并將失效位的地址記錄到存儲器測試器的第一失效存儲器中。
圖17A和17B是用于解釋在圖12A和12B中所示的ECC電路中的操作(參見圖16)的圖。奇偶校驗產(chǎn)生/校正子運算電路30設(shè)置有奇偶校驗產(chǎn)生電路31和校正子運算電路32。這里,假設(shè)激活了來自冗余補救控制器40的控制信號TCODE1。如圖17A所示,提供存儲在SDRAM10中的數(shù)據(jù),作為第一編碼電路201的輸入,將來自第一編碼電路201的輸出從輸出寄存器206提供到奇偶校驗產(chǎn)生電路31,并將由奇偶校驗電路31產(chǎn)生的奇偶校驗寫入到SDRAM 10中。此外,如圖17B所示,從SDRAM 10讀取已經(jīng)利用編碼#1編碼的數(shù)據(jù),并作為輸入提供給第一解碼電路203,并通過輸出寄存器206,將來自第一解碼電路203的輸出提供到校正子運算電路32。在校正子運算電路32中,執(zhí)行校正操作,并將已校正的位寫入到SDRAM 10。
圖18示出了根據(jù)圖16所示的處理執(zhí)行的、僅利用編碼#1的糾錯的結(jié)果。失效圖318A給出了僅利用編碼#1的糾錯的重復處理的示意圖。這里,將列方向上的糾錯重復262,144次(等于列數(shù))。作為重復處理的結(jié)果,獲得了失效圖318B,作為僅利用編碼#1的校正的最終結(jié)果。
在本實施例中,針對作為乘積碼中的另一編碼的編碼#2,執(zhí)行與利用編碼#1的糾錯處理相同的處理(已經(jīng)利用圖16、17A和17B對其進行了解釋),并將處理結(jié)果記錄在第二失效存儲器中。圖19示出了利用編碼#2進行編碼和解碼的過程。
首先,在步驟S201中,以指定值(全1)寫入存儲單元陣列中的所有位,之后,僅利用編碼#2執(zhí)行編碼處理。在利用編碼#2進行編碼的處理中,在步驟S202中,從存儲單元陣列中按行讀取數(shù)據(jù),在步驟S203中,根據(jù)編碼#2產(chǎn)生奇偶校驗,并在步驟S204中,將奇偶校驗寫入到奇偶校驗位區(qū)域。重復此類型操作,例如,262,144次,以覆蓋SDRAM存儲器芯片的整個區(qū)域,如步驟S205中所示。
在完成利用編碼#2的編碼處理之后,在步驟S206中,以tREF=1秒的更新周期重復更新操作。在編碼#2解碼處理中,在步驟S207中,從存儲單元陣列中按行讀取數(shù)據(jù),在步驟S208中,根據(jù)已經(jīng)按行讀取的數(shù)據(jù)來執(zhí)行校正操作,并在步驟S209中,將已校正的位寫入到存儲單元陣列中。重復此類操作,例如,262,144次,以覆蓋SDRAM的全部位,如步驟S210中所示。
在利用編碼#2完成解碼處理之后,在步驟S211中,執(zhí)行通過/失效確定,并將失效位的地址記錄到存儲器測試器的第二失效存儲器中。
在第一過程中,在存儲器測試器中執(zhí)行查找第一失效存儲器的內(nèi)容與第二失效存儲器的內(nèi)容的邏輯積(與)的操作。假設(shè)將邏輯值“1”記錄到缺陷單元的地址中,并將邏輯值“0”記錄到在這兩個失效存儲器中的其余地址中,并針對每個地址,計算這兩個失效存儲器的內(nèi)容的與值(即,邏輯積值)。在此與運算的結(jié)果中,具有邏輯值“1”的地址表示利用乘積碼ECC處理不能補救的缺陷單元,即,必須通過冗余單元置換進行補救的單元。
圖20A和20B是用于解釋圖12A和12B中所示出的ECC電路中的操作(參見圖19)的視圖。與圖17A和17B中所示的電路一樣,奇偶校驗產(chǎn)生/校正子運算電路30具有奇偶校驗產(chǎn)生電路31和校正子運算電路32。這里,假設(shè)激活了來自冗余補救控制器40的控制信號TCODE2。如圖20A所示,將SDRAM 10的數(shù)據(jù)作為輸入提供給第二編碼電路202,將來自第二編碼電路202的輸出從輸出寄存器206提供到奇偶校驗產(chǎn)生電路31,并將由奇偶校驗電路31產(chǎn)生的奇偶校驗寫入到SDRAM 10中。此外,如圖20B所示,從SDRAM 10讀取已經(jīng)利用編碼#2編碼的數(shù)據(jù),并作為輸入提供給第二解碼電路204,并通過輸出寄存器206,將來自第二解碼電路204的輸出提供到校正子運算電路32。在校正子運算電路32中,執(zhí)行校正操作,并將已校正的位寫入到SDRAM 10中。
圖21示出了按照圖19所示的處理執(zhí)行的、僅利用編碼#2的糾錯的結(jié)果。失效圖321A是僅利用編碼#2的糾錯的重復處理的示意圖。這里,將行方向上的糾錯重復262,144次(等于行數(shù))。作為重復處理的結(jié)果,獲得失效圖321B,作為僅利用編碼#2的校正的結(jié)果。
圖22中所示的失效圖322示出了通過執(zhí)行失效圖318B(參見圖18)與失效圖321B(參見圖21)的與運算處理而得到的結(jié)果,所述失效圖318B是根據(jù)僅利用編碼#1的校正的結(jié)果而獲得,所述圖321B是根據(jù)僅利用編碼#2的校正的結(jié)果而獲得。在失效圖322中示出的失效位示出了利用冗余單元的補救的對象。
接下來解釋第二過程的細節(jié)。第二過程是在晶片光刻檢驗階段,嘗試補救由于額外的失效而導致不能被校正的位圖案,如圖8中所示。第二過程的應(yīng)用使在基于SSR技術(shù)的半導體存儲設(shè)備出廠之后的市場缺陷率抑制為如200ppm(百萬分之幾)或更低。在圖23中,流程圖323A示出了涉及第二過程中的編碼#1的處理。
首先,在步驟S301中,在存儲單元陣列中,將全部位寫成指定值(全1),之后,僅利用編碼#1執(zhí)行編碼處理。在利用編碼#1進行編碼的處理中,在步驟S302中,從存儲單元陣列中按列讀取數(shù)據(jù),在步驟S303中,根據(jù)編碼#1產(chǎn)生奇偶校驗,并在步驟S304中,將奇偶校驗寫入到奇偶校驗位區(qū)域。如步驟305中所示,重復此類操作,例如,262,144次,以覆蓋SDRAM存儲器芯片的整個區(qū)域。
在完成利用編碼#1的編碼處理之后,在步驟S306中,以tREF=1秒的更新周期重復更新操作,之后,執(zhí)行利用編碼#1的解碼處理。在利用編碼#1的解碼處理中,在步驟S307中,從存儲單元陣列中按列讀取數(shù)據(jù),在步驟S308中,根據(jù)已經(jīng)按列讀取的數(shù)據(jù)來執(zhí)行校正操作,并在步驟S309中,將已校正的位寫入到存儲單元陣列中。重復此類操作,例如,262,144次,以覆蓋SDRAM的全部位,如步驟S310中所示。失效圖323B示出了此重復,而失效圖323C示出了在利用編碼#1的校正之后的失效位。
接下來,在步驟S311中,讀取所有位,并執(zhí)行通過/失效確定,之后,在步驟S312中,將不是失效位的位(即,通過位)的地址記錄在存儲器測試器的失效存儲器中。將通過位記錄在失效存儲器中對應(yīng)于將失效位的排列的互補圖案記錄在失效存儲器中。地址掩碼323D表示此失效存儲器的所記錄的內(nèi)容。
接著,針對編碼#2執(zhí)行相同的操作。圖24示出了針對編碼#2的處理。如流程圖324A所示,在步驟S401中,將存儲單元陣列的全部位寫成指定值(全1),之后,僅利用編碼#2執(zhí)行編碼處理。在利用編碼#2的編碼處理中,在步驟S402中,從存儲單元陣列中按行讀取數(shù)據(jù),在步驟S403中,根據(jù)編碼#2產(chǎn)生奇偶校驗,并在步驟S404中,將奇偶校驗寫入到奇偶校驗位區(qū)域。執(zhí)行此類操作,例如,262,144次,以覆蓋SDRAM存儲器芯片的整個區(qū)域,如步驟405中所示。
接下來,在步驟S406中,以tREF=1秒的更新周期重復更新操作,之后,執(zhí)行利用編碼#2進行解碼的處理。在利用編碼#2進行解碼的處理中,在步驟S407中,從存儲單元陣列中按列讀取數(shù)據(jù),在步驟S408中,根據(jù)已經(jīng)按列讀取的數(shù)據(jù)來執(zhí)行校正操作,并在步驟S409中,將已校正的位寫入到存儲單元陣列中。針對SDRAM的所有位重復這些操作,例如,262,144次,如步驟S410中所示。失效圖324B示出了此重復。
接著,在步驟S411中讀取所有位,然后,執(zhí)行通過/失效確定。此通過/失效確定對不能利用編碼#2校正的失效位進行檢測。利用存儲在失效存儲器中的地址掩碼315D來掩蔽這些檢測結(jié)果允許對在乘積碼ECC中不能被補救的失效位的檢測,并記錄所檢測到的失效位的地址。失效圖316C示出了已經(jīng)檢測到的失效位。隨后,利用冗余位來補救這些檢測到的失效位。
盡管涉及本發(fā)明的優(yōu)選實施例的前述解釋描述了其中使用時鐘同步型SDRAM作為存儲器的實例,當然,本發(fā)明也可以應(yīng)用于異步DRAM。此外,本發(fā)明還可以應(yīng)用于設(shè)置有具有任何乘積碼ECC電路的存儲器的半導體設(shè)備。
盡管已經(jīng)利用特定術(shù)語描述了本發(fā)明的優(yōu)選實施例,但此描述僅為解釋的目的,應(yīng)當理解,可以進行修改和變動,而不脫離所附權(quán)利要求的精神和范圍。
權(quán)利要求
1.一種半導體設(shè)備,包括ECC電路,使用由第一編碼和第二編碼組成的乘積碼,執(zhí)行存儲器的糾錯;以及用于使所述第一編碼和第二編碼中的一個編碼獨立操作的裝置。
2.一種設(shè)置有使用由第一編碼和第二編碼組成的乘積碼的ECC電路來執(zhí)行半導體存儲設(shè)備的糾錯的半導體設(shè)備,所述半導體設(shè)備包括第一編碼電路,利用所述第一編碼進行編碼;第二編碼電路,利用所述第二編碼進行編碼;第一解碼電路,利用所述第一編碼進行解碼;第二解碼電路,利用所述第二編碼進行解碼;奇偶校驗產(chǎn)生電路,用于產(chǎn)生奇偶校驗;校正子運算電路;以及控制電路,在利用所述第一編碼和所述第二編碼之一進行編碼期間,并根據(jù)作為輸入接收的控制信號來實現(xiàn)以下控制將半導體存儲設(shè)備的數(shù)據(jù)作為輸入提供給所述第一編碼電路和所述第二編碼電路之一;將來自向其提供了所述數(shù)據(jù)的編碼電路的已編碼輸出作為輸入提供給對所述奇偶校驗產(chǎn)生電路;將產(chǎn)生的奇偶校驗寫入到所述半導體存儲設(shè)備;從所述半導體存儲設(shè)備中讀取利用所述第一編碼和所述第二編碼之一編碼后的數(shù)據(jù);向所述第一解碼電路和所述第二解碼電路提供已經(jīng)讀取的數(shù)據(jù);將向其提供了所述已讀取數(shù)據(jù)的解碼電路的輸出提供給所述校正子運算電路,并執(zhí)行校正操作;以及將已校正的位寫入到所述半導體存儲設(shè)備。
3.一種半導體設(shè)備的測試方法,所述半導體設(shè)備具有使用由第一編碼和第二編碼組成的乘積碼來執(zhí)行存儲器的糾錯的ECC電路;所述測試方法包括以下步驟通過根據(jù)所述第一編碼和所述第二編碼獨立實現(xiàn)的校正操作,獲得第一通過/失效確定結(jié)果和第二通過/失效確定結(jié)果,并將這些結(jié)果分別記錄到第一失效存儲器和第二失效存儲器中;執(zhí)行與所述第一失效存儲器的內(nèi)容和所述第二失效存儲器的內(nèi)容相關(guān)的指定邏輯運算;以及根據(jù)所述邏輯運算的結(jié)果,對失效位和潛在失效位進行補救。
4.根據(jù)權(quán)利要求3所述的測試方法,其特征在于所述指定邏輯運算是與運算。
5.一種半導體設(shè)備的測試方法,所述半導體設(shè)備設(shè)置有使用由第一編碼和第二編碼組成的乘積碼來執(zhí)行存儲器的糾錯的ECC電路;所述測試方法包括以下步驟獲得由所述第一編碼和所述第二編碼之一實現(xiàn)的通過/失效確定結(jié)果,并采用所述確定結(jié)果的互補圖案作為掩蔽數(shù)據(jù);以及利用所述掩蔽數(shù)據(jù)得到所述第一編碼和所述第二編碼的另一編碼的通過/失效確定,以對失效位和潛在失效位進行補救。
6.一種動態(tài)半導體存儲設(shè)備的測試方法,所述動態(tài)半導體存儲設(shè)備包括具有由第一編碼和第二編碼組成的乘積碼實現(xiàn)的奇偶校驗數(shù)據(jù)的存儲區(qū)域的存儲單元陣列;所述測試方法包括以下步驟將指定數(shù)值數(shù)據(jù)寫入到所述存儲單元陣列中;并作為由所述第一編碼實現(xiàn)的編碼處理,從所述存儲單元陣列讀取數(shù)據(jù)以產(chǎn)生第一奇偶校驗,并將已經(jīng)產(chǎn)生的所述第一奇偶校驗寫入到所述存儲單元陣列中;在指定時間間隔的更新操作之后,從所述存儲單元陣列中讀取由所述第一編碼編碼后的數(shù)據(jù),對所讀取的數(shù)據(jù)進行解碼,并將第一已校正位寫入到所述存儲單元陣列中;從其中已經(jīng)寫入了所述第一已校正位的所述存儲單元陣列中讀取數(shù)據(jù),對通過/失效進行確定,并將確定結(jié)果記錄到第一失效存儲器中;將指定值數(shù)據(jù)寫入到所述存儲單元陣列中;并作為由所述第二編碼實現(xiàn)的編碼處理,從所述存儲單元陣列讀取數(shù)據(jù)以產(chǎn)生第二奇偶校驗,并將已產(chǎn)生的所述第二奇偶校驗寫入到所述存儲單元陣列中;在指定時間間隔的更新操作之后,從所述存儲單元陣列中讀取由所述第二編碼所編碼的數(shù)據(jù),對所讀取的數(shù)據(jù)進行解碼,并將第二已校正位寫入到所述存儲單元陣列中;從其中已經(jīng)寫入了所述第二已校正位的所述存儲單元陣列中讀取數(shù)據(jù),對通過/失效進行確定,并將確定結(jié)果記錄到第二失效存儲器中;以及執(zhí)行與所述第一失效存儲器的內(nèi)容和所述第二失效存儲器的內(nèi)容有關(guān)的指定邏輯運算,并根據(jù)所述邏輯運算的結(jié)果,獲得要通過冗余單元補救的單元。
7.根據(jù)權(quán)利要求6所述的測試方法,其特征在于所述指定邏輯運算是與運算。
8.一種動態(tài)半導體存儲設(shè)備的測試方法,所述動態(tài)半導體存儲設(shè)備包括具有由第一編碼和第二編碼組成的乘積碼實現(xiàn)的奇偶校驗數(shù)據(jù)的存儲區(qū)域的存儲單元陣列;所述測試方法包括以下步驟將指定值數(shù)據(jù)寫入到所述存儲單元陣列中;并作為由所述第一編碼實現(xiàn)的編碼處理,從所述存儲單元陣列讀取數(shù)據(jù)以產(chǎn)生第一奇偶校驗,并將已產(chǎn)生的所述第一奇偶校驗寫入到所述存儲單元陣列中;在指定時間間隔的更新操作之后,從所述存儲單元陣列中讀取由所述第一編碼編碼后的數(shù)據(jù),對所讀取的數(shù)據(jù)進行解碼,并將第一已校正位寫入到所述存儲單元陣列中;從其中已經(jīng)寫入了所述第一已校正位的所述存儲單元陣列中讀取數(shù)據(jù),對通過/失效進行確定,并產(chǎn)生確定結(jié)果的互補圖案,作為掩蔽數(shù)據(jù);將指定值數(shù)據(jù)寫入到所述存儲單元陣列中;并作為由所述第二編碼實現(xiàn)的編碼處理,從所述存儲單元陣列讀取數(shù)據(jù),以產(chǎn)生第二奇偶校驗,并將已產(chǎn)生的所述第二奇偶校驗寫入到所述存儲單元陣列中;在指定時間間隔的更新操作之后,從所述存儲單元陣列中讀取由所述第二編碼編碼后的數(shù)據(jù),對所讀取的數(shù)據(jù)進行解碼,并將第二已校正位寫入到所述存儲單元陣列中;從其中已經(jīng)寫入了所述第二已校正位的所述存儲單元陣列中讀取數(shù)據(jù),對通過/失效進行確定,利用所述掩蔽數(shù)據(jù)掩蔽所述確定結(jié)果以產(chǎn)生失效信息,并根據(jù)所述失效信息,獲得要通過冗余單元進行補救的單元。
全文摘要
一種用于半導體設(shè)備的測試方法,所述半導體設(shè)備設(shè)置有使用由第一編碼和第二編碼組成的乘積碼以實現(xiàn)存儲器的糾錯的ECC電路,所述測試方法包括以下步驟獲得通過分別根據(jù)第一編碼和第二編碼的獨立校正操作實現(xiàn)的第一通過/失效確定結(jié)果和第二通過/失效確定結(jié)果;將該結(jié)果分別記錄在第一失效存儲器和第二失效存儲器中;執(zhí)行與第一失效存儲器的內(nèi)容與第二失效存儲器的內(nèi)容有關(guān)的指定邏輯運算,如與運算;并根據(jù)邏輯運算的結(jié)果,對失效位和潛在失效位進行補救。
文檔編號G06F11/00GK1677563SQ200510062920
公開日2005年10月5日 申請日期2005年3月30日 優(yōu)先權(quán)日2004年3月30日
發(fā)明者利穗吉郎, 伊藤豐 申請人:爾必達存儲器股份有限公司