專利名稱:通過(guò)使用關(guān)于所存儲(chǔ)數(shù)據(jù)的質(zhì)量的信息來(lái)增加錯(cuò)誤校正碼的效率和操作多電平存儲(chǔ)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種管理數(shù)據(jù)的方法,更具體的說(shuō),涉及一種通過(guò)利用關(guān)于數(shù)據(jù)質(zhì)量的指示來(lái)增加錯(cuò)誤校正碼的效能和操作存儲(chǔ)系統(tǒng)。
背景技術(shù):
通過(guò)減小個(gè)別存儲(chǔ)單元的尺寸,減小單元間的間隔并在每個(gè)單元中使用若干信號(hào)電平來(lái)存儲(chǔ)更多數(shù)據(jù),使得數(shù)據(jù)存儲(chǔ)密度不斷增加。減小尺寸使這些單元更易受到外部擾動(dòng)的影響;減小單元間的間隔會(huì)在單元間引入有害的干擾;而多電平數(shù)據(jù)存儲(chǔ)使得從優(yōu)選范圍的偏差更有可能造成對(duì)數(shù)據(jù)的錯(cuò)讀。增加存儲(chǔ)密度的所有這些不利的副作用使得數(shù)據(jù)更有可能遭到破壞。
重構(gòu)被破壞數(shù)據(jù)的傳統(tǒng)方式包括應(yīng)用錯(cuò)誤校正碼(ECC)。簡(jiǎn)單的錯(cuò)誤校正碼存儲(chǔ)額外的奇偶校驗(yàn)位,其收集了當(dāng)數(shù)據(jù)被寫(xiě)入存儲(chǔ)系統(tǒng)時(shí)字的各個(gè)位之和的奇偶性。如果在存儲(chǔ)期間這些數(shù)據(jù)遭到破壞,各個(gè)位之和的奇偶性可能改變。當(dāng)從存儲(chǔ)系統(tǒng)讀取這些數(shù)據(jù)時(shí),通過(guò)ECC再一次計(jì)算出字的各個(gè)位之和的奇偶性。由于數(shù)據(jù)破壞,計(jì)算出的奇偶性可能與奇偶校驗(yàn)位的內(nèi)容不匹配,因而ECC可檢測(cè)出破壞。
現(xiàn)今使用了更高級(jí)的錯(cuò)誤校正碼。但基本概念保持不變當(dāng)將數(shù)據(jù)寫(xiě)入存儲(chǔ)系統(tǒng)時(shí),ECC計(jì)算某些關(guān)于數(shù)據(jù)的概要信息。接著將此概要信息存儲(chǔ)于額外的位中。在讀出期間,再一次通過(guò)ECC計(jì)算概要信息,且將結(jié)果與存儲(chǔ)在額外的位中的結(jié)果相比較。如果這兩者不一致,則數(shù)據(jù)在存儲(chǔ)期間或存儲(chǔ)系統(tǒng)的操作期間遭到了破壞。
ECC可具有至少兩個(gè)功能錯(cuò)誤檢測(cè)和錯(cuò)誤校正。后一功能通常更困難。一個(gè)早期的例子是(7,4)漢明碼(Hamming code),其有能力于每個(gè)字中檢測(cè)兩個(gè)錯(cuò)誤,但僅在這些字含有單個(gè)錯(cuò)誤時(shí)可以對(duì)其加以校正。
當(dāng)今更高級(jí)的ECC可在每個(gè)字中校正一個(gè)以上的錯(cuò)誤。但是即使對(duì)于高級(jí)的ECC,如果每個(gè)字中有超過(guò)2或3個(gè)隨機(jī)錯(cuò)誤,那么重構(gòu)數(shù)據(jù)在計(jì)算上將變得愈加復(fù)雜。一般做法是在不正確恢復(fù)的概率為某可接受的小數(shù)值時(shí)恢復(fù)數(shù)據(jù)。但是,隨著錯(cuò)誤數(shù)增加,可靠的數(shù)據(jù)恢復(fù)的概率也迅速減小,或者用于額外硬件與/或性能方面的相關(guān)成本變得驚人的高。
因此,需要可在當(dāng)今的存儲(chǔ)系統(tǒng)中增加錯(cuò)誤校正碼效能的輔助方法。
在美國(guó)專利第5,657,332號(hào)和第6,049,899號(hào)(兩者皆頒予D.Auclair等人)中已詳細(xì)描述了一些輔助方法,兩案之全文以引用的方式并入本文中。這些專利發(fā)展了軟件錯(cuò)誤處理的概念。
在半導(dǎo)體存儲(chǔ)裝置(包括EEPROM系統(tǒng))中,數(shù)據(jù)可由特定門(mén)電路的電壓來(lái)表示。通常,不同的數(shù)字?jǐn)?shù)據(jù)存儲(chǔ)值由截然分開(kāi)的電壓電平來(lái)表示。如果在讀取操作期間,因?yàn)槟撤N原因,電壓電平從其優(yōu)選范圍偏移了與電平間隔相當(dāng)?shù)牧?,那么錯(cuò)誤可由ECC檢測(cè)到。
許多錯(cuò)誤逐漸顯現(xiàn)出來(lái)。存儲(chǔ)單元電壓可因許多原因而漂移離開(kāi)優(yōu)選范圍。這些原因包括外部擾動(dòng)(例如作業(yè)環(huán)境的變化)以及內(nèi)部影響(諸如在寫(xiě)入臨近存儲(chǔ)單元期間產(chǎn)生的干擾)。上文提及的發(fā)明描述了多種方法,其用于甚至在電壓偏移導(dǎo)致實(shí)際的ECC檢測(cè)到的錯(cuò)誤之前定期監(jiān)視存儲(chǔ)單元陣列的數(shù)據(jù)。在監(jiān)視操作發(fā)現(xiàn)電壓已開(kāi)始從優(yōu)選電壓范圍發(fā)生偏移后,可執(zhí)行不同校正行為。一種可能的校正行為是“擦洗”此陣列。擦洗可包括將錯(cuò)誤存儲(chǔ)單元的整個(gè)區(qū)段寫(xiě)入此陣列的不同區(qū)段中。
近來(lái),數(shù)據(jù)存儲(chǔ)密度已通過(guò)實(shí)施多電平存儲(chǔ)機(jī)制而得以進(jìn)一步增大,在此機(jī)制中單個(gè)存儲(chǔ)單元不僅存儲(chǔ)二進(jìn)制的“0”和“1”,還存儲(chǔ)若干更多電平。通常將電平數(shù)選擇為4、8或16。在頒予D.Guterman等人的美國(guó)專利第6,222,762 B1號(hào)和頒予D.Guterman等人的美國(guó)專利第6,275,419 B1號(hào)中已描述了此等多電平存儲(chǔ)系統(tǒng),此等案之全文以引用的方式并入本文中。在此等多電平系統(tǒng)中,可在相同的總電壓范圍內(nèi)區(qū)分4、8或16個(gè)電壓電平。相應(yīng)地,電壓電平的間隔減小,且越來(lái)越小的電壓偏移可引起錯(cuò)誤。
因此,需要可增強(qiáng)錯(cuò)誤校正碼在高密度的多電平存儲(chǔ)單元陣列中檢測(cè)并重構(gòu)遭破壞數(shù)據(jù)的能力的輔助方法。
發(fā)明內(nèi)容
簡(jiǎn)要地說(shuō),通過(guò)不同過(guò)程來(lái)評(píng)估存儲(chǔ)于存儲(chǔ)系統(tǒng)中的數(shù)據(jù)的質(zhì)量,且根據(jù)評(píng)估得的質(zhì)量來(lái)操作此存儲(chǔ)系統(tǒng)??稍谧x取操作期間評(píng)估數(shù)據(jù)質(zhì)量。隨后應(yīng)用錯(cuò)誤校正碼(ECC)時(shí)可利用這些質(zhì)量指示來(lái)更有效率地檢測(cè)和校正數(shù)據(jù)。或者,可構(gòu)造關(guān)于數(shù)據(jù)質(zhì)量的統(tǒng)計(jì)資料并修改數(shù)據(jù)的數(shù)字表示以減少數(shù)據(jù)破壞。在兩種情況下皆可特定地對(duì)質(zhì)量不良的數(shù)據(jù)實(shí)施校正行為,且(在質(zhì)量指示的輔助下)其具有提高的效率。這些方法可特別適用于由多電平單元構(gòu)造而成的高密度存儲(chǔ)系統(tǒng)。
根據(jù)本發(fā)明的一個(gè)方面,可在從一陣列(諸如EEPROM單元的陣列)中的存儲(chǔ)單元讀取數(shù)據(jù)存儲(chǔ)值期間進(jìn)行數(shù)據(jù)質(zhì)量評(píng)估。可以高于數(shù)據(jù)的最終用戶所需的精度進(jìn)行讀取。例如,原定將數(shù)據(jù)存儲(chǔ)于4個(gè)位中的數(shù)據(jù)存儲(chǔ)值可以7位精度來(lái)讀取。接著可將數(shù)據(jù)存儲(chǔ)值的較高精度的讀出轉(zhuǎn)換成用戶所需的較低精度的數(shù)字?jǐn)?shù)據(jù)值加上對(duì)數(shù)據(jù)質(zhì)量的相關(guān)指示。如果錯(cuò)誤校正碼檢測(cè)到遭破壞的數(shù)字?jǐn)?shù)據(jù)值,則其將能夠利用這些相關(guān)質(zhì)量指示更有效地重構(gòu)遭破壞的數(shù)字?jǐn)?shù)據(jù)值數(shù)據(jù)。
例如,如果ECC發(fā)現(xiàn)了一遭破壞的數(shù)字?jǐn)?shù)據(jù)值且相關(guān)質(zhì)量指示顯示相應(yīng)的數(shù)據(jù)存儲(chǔ)值在一優(yōu)選范圍以上,則很有可能此數(shù)據(jù)存儲(chǔ)值從相鄰優(yōu)選范圍向下漂移,此相鄰優(yōu)選范圍屬于高1的數(shù)字?jǐn)?shù)據(jù)值。本發(fā)明的實(shí)施例將此質(zhì)量指示中繼到ECC,ECC接著可校正遭破壞的數(shù)字?jǐn)?shù)據(jù)值,在此實(shí)例中為將其指向那高1的數(shù)字?jǐn)?shù)據(jù)值。
根據(jù)本發(fā)明的另一方面,即使ECC未指示錯(cuò)誤,亦可形成關(guān)于數(shù)據(jù)質(zhì)量評(píng)估的統(tǒng)計(jì)資料??蓸?gòu)造關(guān)于各區(qū)段中多少數(shù)據(jù)存儲(chǔ)電平以多少量進(jìn)行漂移的分布。在其中此分布顯示出系統(tǒng)偏移的區(qū)段中,可將數(shù)字?jǐn)?shù)據(jù)值到數(shù)據(jù)存儲(chǔ)值的指定偏移一相應(yīng)的量以補(bǔ)償此系統(tǒng)偏移。在其中分布增加得更寬的區(qū)段中,根據(jù)此增寬的嚴(yán)重程度,可調(diào)度校正行為或可響應(yīng)執(zhí)行(perform inresponse)校正行為。這些校正行為可包括具有高或低優(yōu)先級(jí)的重寫(xiě)錯(cuò)誤數(shù)據(jù)或整個(gè)相應(yīng)區(qū)段。
根據(jù)本發(fā)明的另一方面,可在各區(qū)段內(nèi)計(jì)數(shù)由ECC檢測(cè)到的錯(cuò)誤。取決于每區(qū)段的錯(cuò)誤數(shù),可實(shí)施具有高或低優(yōu)先級(jí)的不同類型的校正行為。
圖1說(shuō)明一存儲(chǔ)系統(tǒng),其包括一存儲(chǔ)單元陣列。
圖2A和2B說(shuō)明用于表示數(shù)據(jù)存儲(chǔ)值的不同實(shí)施例。
圖2C說(shuō)明用于將質(zhì)量指示與數(shù)字?jǐn)?shù)據(jù)值相關(guān)聯(lián)的實(shí)施例。
圖3說(shuō)明一使用質(zhì)量指示來(lái)恢復(fù)數(shù)據(jù)的實(shí)例。
圖4A-C說(shuō)明在一數(shù)據(jù)區(qū)段內(nèi)的數(shù)據(jù)存儲(chǔ)值的不同分布。
圖5說(shuō)明基于數(shù)據(jù)區(qū)段質(zhì)量指示的統(tǒng)計(jì)資料來(lái)操作存儲(chǔ)系統(tǒng)的流程圖。
圖6說(shuō)明基于數(shù)據(jù)區(qū)段中的錯(cuò)誤數(shù)來(lái)操作存儲(chǔ)系統(tǒng)的流程圖。
具體實(shí)施例方式
當(dāng)從存儲(chǔ)系統(tǒng)(諸如存儲(chǔ)單元陣列)讀取數(shù)據(jù)時(shí),其可因多種原因而包含錯(cuò)誤。通過(guò)應(yīng)用(例如)錯(cuò)誤校正碼(ECC)可校正這些錯(cuò)誤。通過(guò)產(chǎn)生關(guān)于數(shù)據(jù)質(zhì)量的指示且結(jié)合關(guān)于數(shù)據(jù)質(zhì)量的指示來(lái)應(yīng)用錯(cuò)誤校正碼,可增強(qiáng)錯(cuò)誤校正碼的效率。而且,即使ECC不指示有錯(cuò)誤,亦可基于質(zhì)量指示來(lái)操作存儲(chǔ)系統(tǒng)。本發(fā)明可實(shí)行于任何種類的存儲(chǔ)器或存儲(chǔ)系統(tǒng)中,諸如(例如),隨機(jī)存取存儲(chǔ)器、非易失性存儲(chǔ)器或快速存儲(chǔ)器、磁碟或光碟。存儲(chǔ)系統(tǒng)可用兩電平或多電平機(jī)制來(lái)表示數(shù)據(jù)。作為實(shí)例,首先將描述一存儲(chǔ)單元陣列,接著將論述用于提高錯(cuò)誤校正碼的效率的不同方法。
圖1展示一包括存儲(chǔ)元件陣列的存儲(chǔ)系統(tǒng)的方塊圖。大量可個(gè)別編址的存儲(chǔ)單元排列于由多行和多列組成的常規(guī)陣列11中。個(gè)別存儲(chǔ)單元可由位線、配置于字線中的選擇門(mén)和導(dǎo)引門(mén)來(lái)控制。本文中將位線指定為沿陣列11的列延伸,且將字線指定為沿陣列11的行延伸。位線單元13可包括一位線解碼器、多個(gè)存儲(chǔ)元件、多個(gè)驅(qū)動(dòng)電路和多個(gè)讀出放大器。位線單元13可通過(guò)線15偶聯(lián)到單元陣列11,并通過(guò)位控制線29和讀取線41偶聯(lián)到控制器27。字線單元19可包括一選擇門(mén)解碼器和多個(gè)驅(qū)動(dòng)電路。字線單元19可通過(guò)線17偶聯(lián)到單元陣列11,并通過(guò)字控制線31偶聯(lián)到控制器27。導(dǎo)引線單元21可包括一導(dǎo)引門(mén)解碼器和多個(gè)驅(qū)動(dòng)電路。導(dǎo)引單元21可通過(guò)線23偶聯(lián)到單元陣列11,通過(guò)導(dǎo)引控制線33偶聯(lián)到控制器27并通過(guò)線22偶聯(lián)到位線單元13。位線單元13、字線單元19和導(dǎo)引單元21可偶聯(lián)到總線25,總線25又偶聯(lián)到控制器27??刂破?7可通過(guò)線35偶聯(lián)到主機(jī)。
當(dāng)要將一預(yù)選的存儲(chǔ)單元編程時(shí),將電壓施加到對(duì)應(yīng)于預(yù)選存儲(chǔ)單元的位線、字線和導(dǎo)引門(mén),這些電壓處在足以將預(yù)選單元編程的預(yù)定電平??刂破?7通過(guò)總線25發(fā)送預(yù)選存儲(chǔ)單元的地址,并分別通過(guò)線26a、26b和26c將地址發(fā)送到位線單元13、字線單元19和導(dǎo)引門(mén)單元21中的個(gè)別解碼器。在位線單元13、字線單元19、導(dǎo)引門(mén)單元21和控制器27之間的狀態(tài)和控制命令傳遞通過(guò)位控制線29、字控制線31和導(dǎo)引控制線33進(jìn)行。
當(dāng)要讀取一預(yù)選的存儲(chǔ)單元時(shí),將電壓施加到對(duì)應(yīng)于預(yù)選存儲(chǔ)單元的相應(yīng)位線、字線和導(dǎo)引門(mén),這些電壓處在足以允許讀取預(yù)選存儲(chǔ)單元的預(yù)定電平??刂破髂軌蛲ㄟ^(guò)位控制線29施加位線電壓,通過(guò)字控制線31施加字線電壓,且通過(guò)導(dǎo)引控制線33施加導(dǎo)引門(mén)電壓??捎蛇@些電壓產(chǎn)生一通過(guò)預(yù)選存儲(chǔ)單元的電流。此電流指示了預(yù)選存儲(chǔ)單元是否已被編程。位線單元13中的讀出放大器可放大此電流的值并將其與參考值相比較,其結(jié)果可暫時(shí)存儲(chǔ)于鎖存器或寄存器中??蓪念A(yù)選存儲(chǔ)單元讀出的所得數(shù)據(jù)通過(guò)讀取線41發(fā)送到控制器27。
圖2A-C說(shuō)明了本發(fā)明的一個(gè)實(shí)施例。在存儲(chǔ)系統(tǒng)操作期間,可從存儲(chǔ)單元陣列讀取數(shù)據(jù)存儲(chǔ)值102??蓪?shù)據(jù)存儲(chǔ)值102作為一信號(hào)的值讀取??赡艿男盘?hào)包括(例如)電壓或電流電平。在某些實(shí)施例中,將數(shù)據(jù)存儲(chǔ)值102傳送到控制器27,在控制器27處可將錯(cuò)誤校正碼應(yīng)用于數(shù)據(jù)存儲(chǔ)值。為了增加數(shù)據(jù)存儲(chǔ)密度,某些存儲(chǔ)系統(tǒng)應(yīng)用多電平存儲(chǔ)機(jī)制,其中個(gè)別存儲(chǔ)單元不但可用與二進(jìn)制“0”和“1”相關(guān)聯(lián)的方式存儲(chǔ)數(shù)據(jù),還可以若干狀態(tài)存儲(chǔ)數(shù)據(jù)??蓪⑦@些狀態(tài)的數(shù)目選擇為2的冪,包括4、8或16。對(duì)應(yīng)于數(shù)據(jù)存儲(chǔ)值102的信號(hào)值可處于一總信號(hào)存儲(chǔ)值區(qū)間100內(nèi)。在某些實(shí)施例中,可將總信號(hào)存儲(chǔ)值區(qū)間100劃分為個(gè)別存儲(chǔ)值區(qū)間104-i以根據(jù)數(shù)字?jǐn)?shù)據(jù)值記錄數(shù)據(jù)存儲(chǔ)值102的多電平狀況。此處i表示正整數(shù)。讀取的數(shù)據(jù)存儲(chǔ)值102就屬于這些存儲(chǔ)值區(qū)間104-i之一中。存儲(chǔ)值區(qū)間104-i可對(duì)應(yīng)于多電平數(shù)據(jù)存儲(chǔ)值的電平。因此,i可取1與4、8或16之間的相應(yīng)值。存儲(chǔ)值區(qū)間104-i可為鄰接的并大體上量值相等。為了從模擬數(shù)據(jù)存儲(chǔ)值轉(zhuǎn)換到數(shù)字?jǐn)?shù)據(jù)值,可將數(shù)字?jǐn)?shù)據(jù)值106-i與存儲(chǔ)值區(qū)間104-i相關(guān)聯(lián)。例如,如果多電平存儲(chǔ)系統(tǒng)以24=16個(gè)電平存儲(chǔ)4位數(shù)據(jù),則總信號(hào)存儲(chǔ)值區(qū)間100可相應(yīng)劃分為16個(gè)存儲(chǔ)值區(qū)間104-i,且可相應(yīng)地將16個(gè)數(shù)字?jǐn)?shù)據(jù)值106-i與16個(gè)存儲(chǔ)值區(qū)間104-i相關(guān)聯(lián),以便記錄16個(gè)可能的數(shù)據(jù)存儲(chǔ)值。因此,i可取1與16之間的值。一種對(duì)數(shù)字?jǐn)?shù)據(jù)值106-1到106-16可能的指定是將其指定為0到15或1到16的整數(shù)。
在存儲(chǔ)值區(qū)間104-i內(nèi),可定義中心優(yōu)選范圍108-i和周邊鄰接范圍112-i。中心優(yōu)選范圍108-i可為包含在存儲(chǔ)值區(qū)間104-i內(nèi)的信號(hào)值范圍,例如,跨越存儲(chǔ)值區(qū)間104-i中部。周邊鄰接范圍112-i可為存儲(chǔ)值區(qū)間104-i內(nèi)的在中心優(yōu)選范圍108-i的一或兩側(cè)的信號(hào)值范圍。如上所述,電壓電平可偏移于其設(shè)計(jì)值。為適應(yīng)這些偏移,在總存儲(chǔ)值區(qū)間100的末端處分配了低容限114-1和高容限114-2。
如圖2A所示,在某些實(shí)施例中,可根據(jù)模擬信號(hào)值來(lái)定義中心優(yōu)選范圍108-i和周邊鄰接范圍112-i。在此特定實(shí)例中,讀取的數(shù)據(jù)存儲(chǔ)值102處于存儲(chǔ)值區(qū)間104-1的周邊鄰接范圍112-1-1中,因此其具有相關(guān)的數(shù)字?jǐn)?shù)據(jù)值106-1,其為“1”。
如圖2B所示,在其它實(shí)施例中存儲(chǔ)值區(qū)間104-i可進(jìn)一步劃分為子區(qū)間116-i-j,其中j為正整數(shù)。例如,個(gè)別存儲(chǔ)值區(qū)間104-i可劃分為7個(gè)子區(qū)間116-i-j,其中j可相應(yīng)地取1與7之間的值。在此情況下,在具有(例如)24=16個(gè)電平的多電平存儲(chǔ)系統(tǒng)中,總信號(hào)存儲(chǔ)值區(qū)間100可劃分為128個(gè)子區(qū)間。在這128個(gè)子區(qū)間中,16×7=112個(gè)子區(qū)間用于容納每一存儲(chǔ)值區(qū)間104-i中有7個(gè)子區(qū)間的16個(gè)存儲(chǔ)值區(qū)間104-i,且分別有8個(gè)子區(qū)間用于容納低容限114-1和高容限114-2。這些子區(qū)間可大體上量值相等。在此特定實(shí)例中,讀取的數(shù)據(jù)存儲(chǔ)值102處于子區(qū)間116-1-2中,因此其處于周邊鄰接范圍112-1-1中,且因而具有相關(guān)的數(shù)字?jǐn)?shù)據(jù)值106-1,其為“1”。
在某些實(shí)施例中,可首先根據(jù)子區(qū)間將數(shù)據(jù)存儲(chǔ)值102轉(zhuǎn)換成高精度的數(shù)字?jǐn)?shù)據(jù),并可接著根據(jù)這些高精度數(shù)字?jǐn)?shù)據(jù)來(lái)定義中心優(yōu)選范圍108-i和周邊鄰接范圍112-i。在上述特定實(shí)例中,根據(jù)數(shù)據(jù)存儲(chǔ)值102所處在的子區(qū)間116-i-j而將其轉(zhuǎn)換為7位數(shù)字?jǐn)?shù)據(jù),其中j可取從1到7的值。7位數(shù)字?jǐn)?shù)據(jù)值范圍116-i-1到116-i-7可作為“i”由4位數(shù)字?jǐn)?shù)據(jù)值106-i表示。例如,7位數(shù)字?jǐn)?shù)據(jù)值范圍116-1-1到116-1-7可作為“1”與4位數(shù)字?jǐn)?shù)據(jù)值106-1相關(guān)聯(lián);7位數(shù)字?jǐn)?shù)據(jù)值范圍116-2-1到116-2-7可作為“2”與4位數(shù)字?jǐn)?shù)據(jù)值106-2相關(guān)聯(lián);等等。中心優(yōu)選范圍108-1可為7位數(shù)字?jǐn)?shù)據(jù)值范圍116-1-3到116-1-5,且周邊鄰接范圍112-1-1和112-1-2可分別為7位數(shù)字?jǐn)?shù)據(jù)值范圍116-1-1到116-1-2和116-1-6到116-1-7。
存儲(chǔ)值區(qū)間104-1和104-2可由分離點(diǎn)127-1分隔。
如果用1到128的總數(shù)來(lái)將子區(qū)間116-i-j編號(hào),那么可按照以下方式重新陳述上文指定。低容限114-1與子區(qū)間1-8相關(guān)聯(lián),數(shù)字?jǐn)?shù)據(jù)值“1”與子區(qū)間9-15相關(guān)聯(lián),數(shù)字?jǐn)?shù)據(jù)值“2”與子區(qū)間16-22相關(guān)聯(lián),等等。在子區(qū)間9-15內(nèi),中心優(yōu)選范圍為子區(qū)間11-13,且周邊鄰接范圍為9-10和14-15,等等。
當(dāng)從存儲(chǔ)系統(tǒng)讀取一數(shù)據(jù)存儲(chǔ)值102時(shí),就識(shí)別了讀取的數(shù)據(jù)存儲(chǔ)值102所處在的個(gè)別存儲(chǔ)值區(qū)間104-i。而且識(shí)別了數(shù)據(jù)存儲(chǔ)值102是處于存儲(chǔ)值區(qū)間104-i內(nèi)的中心優(yōu)選范圍108-i中,還是處于存儲(chǔ)值區(qū)間104-i內(nèi)的周邊鄰接范圍112-i-1或112-i-2中。
可將與數(shù)據(jù)存儲(chǔ)值的存儲(chǔ)值區(qū)間104-i相關(guān)聯(lián)的數(shù)字?jǐn)?shù)據(jù)值106-i選作數(shù)據(jù)存儲(chǔ)值102的數(shù)字表示。數(shù)據(jù)存儲(chǔ)值102的此數(shù)字表示將被補(bǔ)充以有關(guān)數(shù)據(jù)存儲(chǔ)值102質(zhì)量的指示。此質(zhì)量指示可反映數(shù)據(jù)存儲(chǔ)值102在存儲(chǔ)值區(qū)間104-i內(nèi)所處的位置。如果數(shù)據(jù)存儲(chǔ)值102屬于中心優(yōu)選范圍108-i,則可產(chǎn)生“質(zhì)量良好”指示。如果數(shù)據(jù)存儲(chǔ)值102不屬于中心優(yōu)選范圍108-i而屬于周邊鄰接范圍112-i-1或112-i-2,則可產(chǎn)生“質(zhì)量不良”指示。在某些實(shí)施例中,可將此指示與數(shù)字?jǐn)?shù)據(jù)值106-i相關(guān)聯(lián),來(lái)表示數(shù)據(jù)存儲(chǔ)值102。例如,可將二進(jìn)制數(shù)附加到數(shù)字?jǐn)?shù)據(jù)值106-i,其中二進(jìn)制“1”可表示“質(zhì)量良好”,而二進(jìn)制“0”可表示“質(zhì)量不良”。在某些實(shí)施例中,可使用相反的約定。
如果數(shù)據(jù)存儲(chǔ)值102具有“質(zhì)量不良”指示,則可通過(guò)識(shí)別數(shù)據(jù)存儲(chǔ)值102所處在的周邊鄰接范圍112-i-j來(lái)產(chǎn)生關(guān)于其質(zhì)量的進(jìn)一步指示。如果數(shù)據(jù)存儲(chǔ)值102處于周邊鄰接范圍2-i-1中,值低于對(duì)應(yīng)優(yōu)選中心范圍108-i的最低值,則可產(chǎn)生一“低位異?!敝甘尽H绻麛?shù)據(jù)存儲(chǔ)值102處于周邊鄰接范圍112-i-2中,值高于對(duì)應(yīng)優(yōu)選中心范圍108-i的最高值,則可產(chǎn)生一“高位異?!敝甘?。在某些實(shí)施例中,可將此指示與數(shù)字?jǐn)?shù)據(jù)值106-i相關(guān)聯(lián),來(lái)表示數(shù)據(jù)存儲(chǔ)值102。例如,可將額外的二進(jìn)制數(shù)附加到數(shù)字?jǐn)?shù)據(jù)值106-i,其中二進(jìn)制“1”可表示“高位異?!?,而二進(jìn)制“0”可表示“低位異?!?。在某些實(shí)施例中,可使用相反的約定。
圖2C說(shuō)明了本發(fā)明一相應(yīng)實(shí)施例,其中一數(shù)據(jù)存儲(chǔ)值102具有特定的16個(gè)電平,因而相關(guān)聯(lián)的數(shù)字?jǐn)?shù)據(jù)值106-i具有4個(gè)位。通過(guò)附加第5個(gè)位將質(zhì)量指示132-i與此數(shù)字?jǐn)?shù)據(jù)值相關(guān)聯(lián),表示“質(zhì)量良好”或“質(zhì)量不良”,且將異常指示134-i作為第6個(gè)位與之相關(guān)聯(lián),表示“高位異?!被颉暗臀划惓!薄?br>
可將數(shù)字?jǐn)?shù)據(jù)值106-i讀入控制器27,以使用錯(cuò)誤校正碼來(lái)處理,而相關(guān)聯(lián)的質(zhì)量指示可暫時(shí)存儲(chǔ)于(例如)緩沖器中。以后如果錯(cuò)誤校正碼需要進(jìn)一步的指示可讀取此質(zhì)量指示。
可將質(zhì)量指示與已在存儲(chǔ)器中的數(shù)字?jǐn)?shù)據(jù)值相關(guān)聯(lián)。在上述實(shí)施例中,以7位精度讀取數(shù)據(jù)存儲(chǔ)值。接著將4位數(shù)字?jǐn)?shù)據(jù)值106-i和質(zhì)量指示132-i和134-i與存儲(chǔ)器內(nèi)的數(shù)據(jù)存儲(chǔ)值102相關(guān)聯(lián)且隨后移出到控制器。
在其它實(shí)施例中,可將數(shù)據(jù)存儲(chǔ)值的7位表示移出到控制器,且控制器抽取代表性的4位數(shù)字?jǐn)?shù)據(jù)值和相關(guān)的質(zhì)量指示。在進(jìn)一步的實(shí)施例中,在上述實(shí)例中產(chǎn)生具有27=128個(gè)條目的“查找”表。這些條目在查找表中的地址對(duì)應(yīng)于數(shù)據(jù)存儲(chǔ)值可處于的128個(gè)子區(qū)間。在這些地址處的條目可含有6個(gè)位,4個(gè)表示數(shù)字?jǐn)?shù)據(jù)值而剩下的2個(gè)表示質(zhì)量指示。質(zhì)量指示可顯示(例如)“質(zhì)量良好”或“質(zhì)量不良”以及“高位異?!被颉暗臀划惓!?。這些查找表可寄存于(例如)隨機(jī)存取存儲(chǔ)器中。當(dāng)讀取數(shù)據(jù)存儲(chǔ)值時(shí),確定數(shù)據(jù)存儲(chǔ)值所處在的子區(qū)間。接著,將查找表的對(duì)應(yīng)于所確定子區(qū)間的6位條目移出到控制器以供進(jìn)一步處理。
數(shù)字?jǐn)?shù)據(jù)值106-i可因各種原因而遭到破壞。某些原因可能是從存儲(chǔ)單元泄漏電荷,此問(wèn)題由于高密度存儲(chǔ)系統(tǒng)中的存儲(chǔ)單元的尺寸不斷減小而加劇。這些高密度也是通過(guò)減小單元間間隔而實(shí)現(xiàn)的。現(xiàn)代存儲(chǔ)器陣列設(shè)計(jì)中的此方面使得在臨近的存儲(chǔ)單元間發(fā)生干擾的機(jī)會(huì)增大。例如,一個(gè)存儲(chǔ)單元的電荷可產(chǎn)生電場(chǎng),其一部分會(huì)影響并改變另一存儲(chǔ)單元的讀出電流。最后,數(shù)據(jù)還可取決于單元所經(jīng)歷的歷史而遭到破壞。經(jīng)過(guò)過(guò)多寫(xiě)入和讀出的存儲(chǔ)單元中的數(shù)據(jù)存儲(chǔ)值更有可能由于偏移離開(kāi)優(yōu)選中心范圍而產(chǎn)生錯(cuò)誤。
因?yàn)榭赡苡衅茐?,所以不?yīng)在沒(méi)有某種形式的測(cè)試和校正的情況下將數(shù)字?jǐn)?shù)據(jù)值傳送給用戶。在許多存儲(chǔ)系統(tǒng)中,通過(guò)將錯(cuò)誤校正碼(ECC)應(yīng)用于數(shù)字?jǐn)?shù)據(jù)值106-i來(lái)執(zhí)行這些功能。通常當(dāng)將數(shù)據(jù)寫(xiě)入存儲(chǔ)器時(shí)將ECC應(yīng)用于數(shù)據(jù),且結(jié)果存儲(chǔ)于(例如)數(shù)據(jù)旁的額外的位中。一個(gè)例子是(7,4)漢明碼,其將三個(gè)額外的位與每個(gè)四位字相關(guān)聯(lián),以在16個(gè)可能的四位數(shù)據(jù)中的任意2個(gè)之間實(shí)現(xiàn)3的最小漢明距離(minimum Hamming distance)。當(dāng)讀取相同數(shù)據(jù)及其相關(guān)ECC位時(shí)重新計(jì)算ECC,且可將重新計(jì)算ECC的結(jié)果與數(shù)學(xué)上預(yù)期的結(jié)果相比較。如果重新計(jì)算的結(jié)果與預(yù)期結(jié)果相同,則數(shù)據(jù)可能未遭破壞,但是,如果重新計(jì)算的結(jié)果與預(yù)期結(jié)果不一致,則數(shù)據(jù)已遭到破壞。
值得一提的是可將ECC應(yīng)用于不同大小的數(shù)據(jù)組。此外,在快速存儲(chǔ)器系統(tǒng)中,可為ECC的相關(guān)數(shù)據(jù)區(qū)段計(jì)算ECC,而大體上同時(shí)地讀取數(shù)據(jù)。
一旦遭破壞的數(shù)據(jù)項(xiàng)的數(shù)目超過(guò)由所用的特定ECC定義的臨界值,正確重構(gòu)數(shù)據(jù)的概率就急劇下降。例如,如果在512個(gè)字節(jié)數(shù)據(jù)的區(qū)段中1或2個(gè)數(shù)據(jù)項(xiàng)遭破壞,則適當(dāng)?shù)腅CC可以100%的確定性重構(gòu)遭破壞的數(shù)據(jù)。然而,如果遭破壞數(shù)據(jù)的數(shù)目高于一臨界數(shù),例如在3和10之間(對(duì)于某些ECC約為5),則ECC正確重構(gòu)數(shù)據(jù)的概率極低,而潛在地不正確重構(gòu)數(shù)據(jù)的概率極高。
許多ECC將額外的位用于數(shù)據(jù)恢復(fù)。漢明(Hamming)首先給出了有關(guān)ECC重構(gòu)數(shù)據(jù)能力的通用關(guān)系式。如果一存儲(chǔ)系統(tǒng)使用長(zhǎng)度為m的二進(jìn)制字,能夠編碼n=2m個(gè)不同數(shù)據(jù),則如果此存儲(chǔ)系統(tǒng)使用至少P個(gè)額外的位,就能可靠地校正t個(gè)遭破壞的數(shù)據(jù),其中“漢明下限(lower Hamming limit)”給出P值的下界P≥Σi=0inj]]>等效地,可將此關(guān)系式解讀為如果存儲(chǔ)系統(tǒng)使用P個(gè)額外的位,則ECC能夠可靠地重構(gòu)具有至多t個(gè)遭破壞位的字。在許多系統(tǒng)中,選取P使得可以高可靠性重構(gòu)具有1或2個(gè)錯(cuò)誤的數(shù)據(jù)區(qū)段。
為解決此問(wèn)題,ECC不但產(chǎn)生對(duì)數(shù)據(jù)的最可能的重構(gòu),還評(píng)估重構(gòu)而成的數(shù)據(jù)的可靠性。在上述實(shí)例中,如果ECC檢測(cè)到有大約1或2個(gè)遭破壞數(shù)據(jù)。則ECC可指示重構(gòu)而成的數(shù)據(jù)很可能是正確的。在此情況下,可將重構(gòu)而成的數(shù)據(jù)從控制器27傳送給用戶。如果ECC發(fā)現(xiàn)大約3到5個(gè)遭破壞數(shù)據(jù),則ECC可指示正確重構(gòu)遭破壞數(shù)據(jù)的概率減小了。取決于數(shù)據(jù)的隨后用途,控制器27可接著決定是否接受或拒絕重構(gòu)而成的數(shù)據(jù)和是否將其傳送給用戶。最后,如果ECC發(fā)現(xiàn)約5個(gè)以上的遭破壞數(shù)據(jù),則ECC可指示正確重構(gòu)遭破壞數(shù)據(jù)的概率非常低或無(wú)法重構(gòu)數(shù)據(jù)。在不同的ECC實(shí)施中,實(shí)際的數(shù)值可不同于所引用的數(shù)值。
亦可能重構(gòu)出錯(cuò)誤數(shù)據(jù)。由于ECC僅使用關(guān)于數(shù)據(jù)區(qū)段的概要指示,其也可能巧合地用表面上降低了錯(cuò)誤計(jì)數(shù)的“3”替換遭破壞的“8”,并因而接受“3”。這種錯(cuò)誤數(shù)據(jù)重構(gòu)可迅速使數(shù)據(jù)恢復(fù)惡化,并使其不可靠。
在這些和其它可靠性減小的情況下,控制器27可采用輔助校正方法來(lái)增加ECC的可靠性。本發(fā)明的某些實(shí)施例通過(guò)提供關(guān)于數(shù)據(jù)的額外指示來(lái)增加ECC的可靠性。例如,可通過(guò)控制器27讀入與數(shù)字?jǐn)?shù)據(jù)值106-i相關(guān)聯(lián)的所存儲(chǔ)質(zhì)量指示來(lái)實(shí)現(xiàn)此目的。
ECC重構(gòu)數(shù)據(jù)能力的限制的一個(gè)原因在于ECC無(wú)法確定數(shù)據(jù)區(qū)段內(nèi)的遭破壞位的位置,且因而無(wú)法校正遭破壞的數(shù)據(jù)。因?yàn)椤百|(zhì)量不良”數(shù)據(jù)是遭破壞數(shù)據(jù)的可能候選,且因?yàn)楫?dāng)確定了數(shù)據(jù)項(xiàng)的質(zhì)量時(shí),其位置也為已知了,所以此問(wèn)題可通過(guò)本發(fā)明的某些實(shí)施例加以補(bǔ)救。因此,也可將“質(zhì)量不良”數(shù)據(jù)的位置提供到ECC。從而,通過(guò)向錯(cuò)誤校正過(guò)程提示可能有錯(cuò)的位(基于其被識(shí)別為“質(zhì)量不良”),可增強(qiáng)ECC在可用于校正錯(cuò)誤的時(shí)間范圍中可靠地重構(gòu)數(shù)據(jù)的能力。
圖3說(shuō)明了某些實(shí)施例的另一優(yōu)點(diǎn)這些實(shí)施例可為ECC提供有關(guān)如何重構(gòu)遭破壞數(shù)據(jù)項(xiàng)的建議。例如,如果計(jì)算ECC指示出在一數(shù)據(jù)區(qū)段中有遭破壞的數(shù)據(jù),則具有指示“質(zhì)量不良”的質(zhì)量指示器132-i的4位數(shù)字?jǐn)?shù)據(jù)值106-i是遭破壞數(shù)據(jù)的可能候選。尤其地,如果4位數(shù)字?jǐn)?shù)據(jù)值106-i具有“低位異?!敝甘?,則有可能在遭破壞之前對(duì)應(yīng)存儲(chǔ)數(shù)據(jù)值102由低1的數(shù)字?jǐn)?shù)據(jù)值106-(i-1)表示。例如,如果“質(zhì)量不良”數(shù)據(jù)存儲(chǔ)值的數(shù)字?jǐn)?shù)據(jù)值是“8”并具有“低位異?!敝甘?,則有可能在遭破壞之前存儲(chǔ)數(shù)據(jù)值對(duì)應(yīng)于數(shù)字?jǐn)?shù)據(jù)值“7”并自此向上偏移了。此實(shí)施例可接著提示ECC嘗試將遭破壞的“8”特定地校正到“7”。此建議可增加重構(gòu)而成的數(shù)據(jù)的可靠性并因而增加ECC的效率,因?yàn)楫?dāng)沒(méi)有此種指示時(shí),ECC必須在校正遭破壞的“8”過(guò)程中嘗試所有可能的數(shù),從而降低了其在可用于校正數(shù)據(jù)的通常較短時(shí)間范圍內(nèi)正確重構(gòu)遭破壞數(shù)據(jù)的概率。
有可能在讀取一區(qū)段時(shí)多個(gè)數(shù)字?jǐn)?shù)據(jù)值被定性為“質(zhì)量不良”。如果“質(zhì)量不良”數(shù)字?jǐn)?shù)據(jù)值的數(shù)目為n,則有2n-1種根據(jù)質(zhì)量指示校正遭破壞數(shù)據(jù)的可能方式,因?yàn)閚個(gè)數(shù)字?jǐn)?shù)據(jù)值之每一個(gè)都可被個(gè)別地改變。在這2n-1種可能的校正當(dāng)中可以高的概率找到重構(gòu)成的數(shù)據(jù)。因而,通過(guò)向ECC提示以首先嘗試這2n-1種組合來(lái)開(kāi)始數(shù)據(jù)重構(gòu),可能更快地重構(gòu)數(shù)字?jǐn)?shù)據(jù)值。值得一提的是無(wú)需額外的費(fèi)時(shí)的讀取操作,ECC和控制器已可利用用于數(shù)據(jù)重構(gòu)的所有指示。
可以另一種方式利用質(zhì)量指示。當(dāng)從存儲(chǔ)系統(tǒng)讀取一區(qū)段的數(shù)據(jù)時(shí),也可收集質(zhì)量指示以產(chǎn)生并跟蹤此區(qū)段的數(shù)據(jù)存儲(chǔ)值的統(tǒng)計(jì)分布和其質(zhì)量。這樣做的優(yōu)點(diǎn)在于數(shù)據(jù)破壞在某些區(qū)段中可為系統(tǒng)性的。此之原因的根源可在于外部環(huán)境,諸如溫度改變、更改了區(qū)段的操作參數(shù)?;蛘?,原因可與區(qū)段的歷史有關(guān)聯(lián)。例如,因?yàn)閯h除操作(基于Fowler-Nordheim隧道效應(yīng))可將某些閃存單元的源極-基板結(jié)(source-substrate junction)偏壓到接近擊穿電壓,頻繁的刪除操作可造成存儲(chǔ)單元的物理結(jié)構(gòu)惡化,可能導(dǎo)致電荷損耗。而且,因?yàn)橹圃旎虿牧喜灰?guī)則性,有可能在制造過(guò)程期間特定區(qū)段的特性偏離于優(yōu)選值??赏ㄟ^(guò)使用質(zhì)量指示的統(tǒng)計(jì)資料來(lái)校正這種系統(tǒng)性數(shù)據(jù)破壞。
圖4A-C′說(shuō)明在兩個(gè)相鄰存儲(chǔ)值區(qū)間104-i和104-(i+1)中的數(shù)據(jù)存儲(chǔ)值的可能統(tǒng)計(jì)分布。如圖4A中所示,在典型情況下,數(shù)據(jù)存儲(chǔ)值將表現(xiàn)出呈122-i和122-(i+1)類型的在對(duì)應(yīng)的優(yōu)選中心范圍108-i和108-(i+1)周圍的分布。在此情況下,分布122-i和122-(i+1)是截然分開(kāi)的,其意為多數(shù)或所有數(shù)據(jù)存儲(chǔ)值處于接近對(duì)應(yīng)優(yōu)選中心范圍108-i和108-(i+1)處,且很少或無(wú)數(shù)據(jù)存儲(chǔ)值處于分離點(diǎn)127-i附近??赏ㄟ^(guò)在分布122-I與122-(i+1)之間引入分離間隙129-i的概念來(lái)重新表達(dá)此事實(shí)。分離間隙129-i表示其中很少有或無(wú)數(shù)據(jù)存儲(chǔ)值存在的范圍,且其位于分離點(diǎn)127-i周圍。將把處于分離點(diǎn)127-i與127-(i+1)之間的數(shù)據(jù)存儲(chǔ)值與數(shù)字?jǐn)?shù)據(jù)值106-i相關(guān)聯(lián)等等。
圖4A展示一實(shí)施例,其中存儲(chǔ)值區(qū)間104-i和104-(i+1)被分別劃分為子區(qū)間116-i-j和116-(i+1)-j,其中j可取1與7之間的值。在此實(shí)施例中,分布是截然分開(kāi),如果多數(shù)或所有數(shù)據(jù)存儲(chǔ)值處于j值在2與6之間的子區(qū)間中,則這些數(shù)據(jù)存儲(chǔ)值中的大多數(shù)處于j值在3與5之間的中心優(yōu)選范圍中。在此種分布截然分開(kāi)的情況下,將數(shù)據(jù)存儲(chǔ)值102與數(shù)字?jǐn)?shù)據(jù)值106-i相關(guān)聯(lián)可具有高可靠性。
圖4B展示了一種可能的情形,其中相鄰分布122-i和122-(i+1)以系統(tǒng)的方式遭到破壞。此系統(tǒng)的破壞可由(例如)溫度變化造成。在此情況下,分布122-i和122-(i+1)向上偏移,其意為“高位異常”數(shù)據(jù)的數(shù)目大于“低位異?!睌?shù)據(jù)的數(shù)目。在此系統(tǒng)偏移的情況下,分布122-i、122-(i+1)和122-(i+2)仍保持截然分開(kāi)。
圖4B再次說(shuō)明了一實(shí)施例,其中存儲(chǔ)值區(qū)間104-i被進(jìn)一步劃分為子區(qū)間116-i-j。通過(guò)分布122-i、122-(i+1)和122-(i+2)在j=1的子區(qū)間內(nèi)有一些數(shù)據(jù)存儲(chǔ)值,在j=2、3和4的子區(qū)間內(nèi)大體上無(wú)數(shù)據(jù)存儲(chǔ)值,且數(shù)據(jù)存儲(chǔ)值的主體在j=5、6和7的子區(qū)間內(nèi)可看出系統(tǒng)偏移。在此情況下,在被偏移之前,子區(qū)間116-(i+1)-1中的數(shù)據(jù)存儲(chǔ)值很可能對(duì)應(yīng)于存儲(chǔ)值區(qū)間104-i且因而與數(shù)字?jǐn)?shù)據(jù)值106-i相關(guān)聯(lián),而不是與106-(i+1)相關(guān)聯(lián)(在未修正過(guò)程中其會(huì)與這些數(shù)據(jù)存儲(chǔ)值相關(guān)聯(lián))。
如果發(fā)現(xiàn)一區(qū)段的數(shù)據(jù)存儲(chǔ)值的統(tǒng)計(jì)資料表現(xiàn)出系統(tǒng)偏移且分布以偏移的分離間隙129-i′保持截然分開(kāi),則在某些實(shí)施例中,在收集了充分的關(guān)于數(shù)據(jù)區(qū)段的統(tǒng)計(jì)資料后,控制器27可采用某些校正行為。對(duì)于每一對(duì)相鄰分布122-i和122-(i+1),控制器27可識(shí)別這些分布的相應(yīng)系統(tǒng)偏移,且接著將分離點(diǎn)127-i以識(shí)別出的系統(tǒng)偏移進(jìn)行偏移,到127-i′。在圖4B的實(shí)例中,分布122-i和122-(i+1)和特別是其分離間隙129-i已向上偏移了兩個(gè)子區(qū)間。所以控制器27可通過(guò)將分離點(diǎn)127-i向上偏移兩個(gè)子區(qū)間到127-i′來(lái)抵消此系統(tǒng)偏移。此意味著在隨后的讀取操作中,處于區(qū)間116-(i+1)-1中的數(shù)據(jù)存儲(chǔ)值(顯然屬于分布122-i)將被指定正確的數(shù)字?jǐn)?shù)據(jù)值106-i而非106-(i+1)。
這些偏移不需要在總存儲(chǔ)值區(qū)間100上為一致的,因?yàn)橄到y(tǒng)偏移的上述外部或內(nèi)部原因可能不同地影響總存儲(chǔ)值區(qū)間100中的不同存儲(chǔ)值區(qū)間104-i。
圖4C說(shuō)明了另一種可能性,其中相鄰分布122-i和122-(i+1)未表現(xiàn)出系統(tǒng)偏移,而是表現(xiàn)出增寬。如圖4C所示,此增寬可導(dǎo)致各分布的末尾部分重疊。當(dāng)數(shù)據(jù)存儲(chǔ)值處于此重疊區(qū)域中且用指定的數(shù)字?jǐn)?shù)據(jù)值計(jì)算ECC指示出錯(cuò)誤時(shí),可個(gè)別地修改數(shù)字?jǐn)?shù)據(jù)值的指定。類似于圖3的實(shí)施例,如果數(shù)據(jù)存儲(chǔ)值處于重疊區(qū)域中(例如,在子區(qū)間116-i-7中),則將使數(shù)字?jǐn)?shù)據(jù)值106-i以及“質(zhì)量不良”指示和“高位異?!敝甘九c其相關(guān)聯(lián)。因此,如果ECC在數(shù)據(jù)區(qū)段中檢測(cè)到有錯(cuò)誤,則基于質(zhì)量指示,某些實(shí)施例將提示ECC將此數(shù)據(jù)存儲(chǔ)值的指定從數(shù)字?jǐn)?shù)據(jù)值106-i校正到數(shù)字?jǐn)?shù)據(jù)值106-(i+1)。
根據(jù)本發(fā)明的另一方面,可基于一區(qū)段的“質(zhì)量不良”數(shù)據(jù)的統(tǒng)計(jì)資料執(zhí)行額外的校正行為。這些校正行為可由存儲(chǔ)系統(tǒng)外部的控制器來(lái)執(zhí)行或在其它實(shí)施例中由存儲(chǔ)系統(tǒng)內(nèi)部的某種邏輯來(lái)執(zhí)行。在下文中,將執(zhí)行校正行為的單元稱為“控制器”??稍诖鎯?chǔ)系統(tǒng)的任何數(shù)據(jù)區(qū)段中計(jì)數(shù)“質(zhì)量不良”數(shù)據(jù)的總數(shù)。此計(jì)數(shù)可(例如)在區(qū)段數(shù)據(jù)的某些或所有讀取過(guò)程期間執(zhí)行,或在目的僅為確定區(qū)段的數(shù)據(jù)質(zhì)量的特定“內(nèi)務(wù)處理”操作期間執(zhí)行。在此實(shí)施例中,甚至不需要應(yīng)用ECC指示出在數(shù)據(jù)區(qū)段中存在錯(cuò)誤。即使ECC指示數(shù)據(jù)區(qū)段無(wú)錯(cuò)誤,“質(zhì)量不良”數(shù)據(jù)的數(shù)目增加也顯示出區(qū)段中的數(shù)據(jù)質(zhì)量正在降低。受此指示的推動(dòng),可適時(shí)地執(zhí)行搶先(proactive)校正行為,從而防止實(shí)際錯(cuò)誤的出現(xiàn)。
圖5說(shuō)明了根據(jù)“質(zhì)量不良”數(shù)據(jù)的計(jì)數(shù)值來(lái)操作存儲(chǔ)系統(tǒng)的流程圖。
a)如果C,一區(qū)段的“質(zhì)量不良”數(shù)據(jù)的計(jì)數(shù)值為零或小于第一預(yù)定值N1,C<N1,此指示此區(qū)段的數(shù)據(jù)質(zhì)量未降低或僅降低了較低的可容許的程度。因此無(wú)需校正行為。
b)如果C,一區(qū)段的“質(zhì)量不良”數(shù)據(jù)的計(jì)數(shù)值在第一與第二預(yù)定值之間,N1≤C<N2,此指示此區(qū)段的數(shù)據(jù)質(zhì)量降低了一定程度。因此應(yīng)在某時(shí)刻將此區(qū)段的數(shù)據(jù)刷新、重寫(xiě)或轉(zhuǎn)錄到另一區(qū)段。但是,降低的程度較小使得產(chǎn)生實(shí)際錯(cuò)誤的概率較低。因此,上述校正行為無(wú)需立刻執(zhí)行,而可推遲到以后一合適的時(shí)間。例如,可在存儲(chǔ)系統(tǒng)已結(jié)束執(zhí)行讀取命令且亦未執(zhí)行任何其它較高優(yōu)先級(jí)的作業(yè)時(shí)執(zhí)行這些校正行為。
c)如果C,一區(qū)段的“質(zhì)量不良”數(shù)據(jù)的計(jì)數(shù)值在第二與第三預(yù)定值之間,N2≤C<N3,此指示此區(qū)段的數(shù)據(jù)質(zhì)量降低了相當(dāng)大程度,此要求立即或在短暫的預(yù)定延遲時(shí)間內(nèi)刷新、重寫(xiě)或轉(zhuǎn)錄此區(qū)段的數(shù)據(jù)。
d)如果C,一區(qū)段的“質(zhì)量不良”數(shù)據(jù)的計(jì)數(shù)值高于第三預(yù)定值,N3≤C,此指示此區(qū)段的數(shù)據(jù)質(zhì)量降低到了不可容許的程度。降低的原因可能在區(qū)段內(nèi)部,諸如,由過(guò)多讀出和寫(xiě)入操作造成的廣泛磨損、或某種材料或制造不規(guī)則性。在任一情況下,在未來(lái)寫(xiě)入此區(qū)段的數(shù)據(jù)質(zhì)量也可能會(huì)降低??赏ㄟ^(guò)立即或以高優(yōu)先級(jí)將數(shù)據(jù)從此低質(zhì)量區(qū)段轉(zhuǎn)錄到存儲(chǔ)系統(tǒng)的另一區(qū)段來(lái)防止這種可預(yù)見(jiàn)的降低。接著可報(bào)廢此低質(zhì)量區(qū)段,使得在未來(lái)不會(huì)將數(shù)據(jù)寫(xiě)入其中。
某些另外的實(shí)施例利用位于存儲(chǔ)系統(tǒng)的常規(guī)存儲(chǔ)單元間的跟蹤單元。例如,在美國(guó)專利第6,222,762 B1號(hào)和第6,275,419 B1號(hào)(兩案都頒予D.Guterman等人)中描述了跟蹤單元及其操作。
跟蹤單元與常規(guī)存儲(chǔ)單元經(jīng)歷相同的外部和內(nèi)部影響,因而跟蹤單元的統(tǒng)計(jì)資料可代表整個(gè)存儲(chǔ)單元陣列的統(tǒng)計(jì)資料。因此,可依照?qǐng)D5中的步驟,僅根據(jù)跟蹤單元中的“質(zhì)量不良”數(shù)據(jù)的計(jì)數(shù)值來(lái)操作存儲(chǔ)系統(tǒng)。
另一實(shí)施例在讀取一區(qū)段的數(shù)據(jù)時(shí)搜集了由ECC檢測(cè)到的錯(cuò)誤數(shù)。如圖6中的流程圖所示,可根據(jù)錯(cuò)誤數(shù)執(zhí)行不同類型的校正行為。
a)如果E,一區(qū)段中的錯(cuò)誤數(shù)為零或小于第一預(yù)定值M1,E<M1,此指示此區(qū)段的數(shù)據(jù)未遭破壞或僅以較低的可容許的程度遭到破壞,因此通過(guò)ECC(可能結(jié)合質(zhì)量指示)其能可靠地重構(gòu)。
b)如果E,一區(qū)段中的錯(cuò)誤數(shù)在第一與第二預(yù)定值之間,M1≤E<M2,此指示此區(qū)段的數(shù)據(jù)已在一定程度上遭到破壞。因此,首先必須通過(guò)ECC(可能結(jié)合質(zhì)量指示)重構(gòu)此區(qū)段的數(shù)據(jù),然后應(yīng)在某時(shí)刻將此區(qū)段的數(shù)據(jù)刷新、重寫(xiě)或轉(zhuǎn)錄到另一區(qū)段。但是,破壞的程度較小使得仍可通過(guò)ECC(可結(jié)合質(zhì)量指示)高度可靠地重構(gòu)數(shù)據(jù)。此外,這些校正行為無(wú)需立刻執(zhí)行,而可推遲到以后一合適的時(shí)間。例如,可在存儲(chǔ)系統(tǒng)已結(jié)束執(zhí)行讀取命令且亦未執(zhí)行任何其它較高優(yōu)先級(jí)的作業(yè)時(shí)執(zhí)行這些校正行為。
c)如果E,一區(qū)段中的錯(cuò)誤數(shù)在第二與第三預(yù)定值之間,M2≤E<M3,此指示此區(qū)段的數(shù)據(jù)已在相當(dāng)大程度上遭到破壞。因此,首先必須通過(guò)ECC(可能結(jié)合質(zhì)量指示)重構(gòu)此區(qū)段的數(shù)據(jù),然后應(yīng)立即或在短暫的預(yù)定延遲時(shí)間內(nèi)將此區(qū)段的數(shù)據(jù)刷新、重寫(xiě)或轉(zhuǎn)錄到另一新區(qū)段。
d)如果E,一區(qū)段中的錯(cuò)誤數(shù)高于第三預(yù)定值,M3≤E,此指示此區(qū)段的數(shù)據(jù)已被破壞到了不可容許的程度。破壞的原因可能在區(qū)段內(nèi)部,諸如,由過(guò)多讀出和寫(xiě)入操作造成的廣泛磨損、或某種材料或制造不規(guī)則性。在任一情況下,在未來(lái)寫(xiě)入此區(qū)段的數(shù)據(jù)可能會(huì)再次遭到破壞。因此,首先必須通過(guò)ECC(可能結(jié)合質(zhì)量指示)重構(gòu)此區(qū)段的數(shù)據(jù)。其次,可通過(guò)立即或以高優(yōu)先級(jí)將數(shù)據(jù)從遭破壞區(qū)段轉(zhuǎn)錄到存儲(chǔ)系統(tǒng)的另一新區(qū)段來(lái)防止在未來(lái)對(duì)數(shù)據(jù)的破壞。然后,可報(bào)廢此遭破壞區(qū)段,使得在未來(lái)不會(huì)將數(shù)據(jù)寫(xiě)入其中。
如先前提及,錯(cuò)誤校正碼無(wú)法以高概率恢復(fù)多于數(shù)目K的遭破壞數(shù)據(jù)。在前例中,K的值為5。如果在一區(qū)段中多于K個(gè)數(shù)據(jù)遭到破壞,有時(shí)將這種情況稱為ECC被“淹沒(méi)(swamped)”。在以上流程圖中,M3可等于或不同于K。具體來(lái)說(shuō),可如此操作存儲(chǔ)系統(tǒng),使得即使ECC可以高概率重構(gòu)數(shù)據(jù),即E<K,也將轉(zhuǎn)錄數(shù)據(jù)且報(bào)廢此區(qū)段,即M3<E<K。
在某些實(shí)施例中,可用性能有限的計(jì)數(shù)器來(lái)計(jì)數(shù)錯(cuò)誤。一個(gè)實(shí)例可為如果ECC可在每個(gè)區(qū)段有4個(gè)遭破壞數(shù)據(jù)的情況下可靠地重構(gòu)數(shù)據(jù),即K=4,則每個(gè)區(qū)段可有一個(gè)四值計(jì)數(shù)器(four-value counter)。如果由ECC指示的錯(cuò)誤數(shù)超過(guò)4,即E>4,則錯(cuò)誤計(jì)數(shù)器可提供“溢出”信號(hào)。在這種情況下,ECC可再次嘗試重構(gòu)遭破壞的數(shù)據(jù),但現(xiàn)在還要通過(guò)利用質(zhì)量指示。如果結(jié)果令人滿意,則可接受其并隨后傳送給用戶。
盡管已關(guān)于某些優(yōu)選實(shí)施例描述了本發(fā)明的各個(gè)方面,但應(yīng)了解本發(fā)明有資格在附加的權(quán)利要求的完整范疇內(nèi)受到保護(hù)。
權(quán)利要求
1.一種操作一存儲(chǔ)系統(tǒng)的方法,其包含從所述存儲(chǔ)系統(tǒng)讀取數(shù)據(jù)存儲(chǔ)值和錯(cuò)誤校正數(shù)據(jù);通過(guò)數(shù)字?jǐn)?shù)據(jù)值和相關(guān)的質(zhì)量指示來(lái)表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值;和將一錯(cuò)誤校正碼與質(zhì)量指示相結(jié)合應(yīng)用于表示了從存儲(chǔ)系統(tǒng)讀取的數(shù)據(jù)存儲(chǔ)值的數(shù)字?jǐn)?shù)據(jù)值。
2.如權(quán)利要求1所述的方法,其中從復(fù)數(shù)個(gè)非易失性存儲(chǔ)單元平行地執(zhí)行數(shù)據(jù)存儲(chǔ)值的讀取。
3.如權(quán)利要求1所述的方法,其中表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值包括根據(jù)數(shù)據(jù)存儲(chǔ)值所處在的定義非重疊存儲(chǔ)值區(qū)間產(chǎn)生數(shù)字?jǐn)?shù)據(jù)值,其中所述個(gè)別存儲(chǔ)值區(qū)間包括一中心優(yōu)選范圍和鄰接于其的至少一個(gè)周邊范圍。
4.如權(quán)利要求1所述的方法,其中通過(guò)相關(guān)的質(zhì)量指示來(lái)表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值包括產(chǎn)生相關(guān)的質(zhì)量指示,以指示所述數(shù)據(jù)存儲(chǔ)值是處于其所在的所述存儲(chǔ)值區(qū)間的所述優(yōu)選范圍中還是處于其所在的所述存儲(chǔ)值區(qū)間的所述鄰接范圍中,藉此當(dāng)所述數(shù)據(jù)存儲(chǔ)值處于所述優(yōu)選范圍內(nèi)時(shí)指示出質(zhì)量良好數(shù)據(jù),以及當(dāng)所述數(shù)據(jù)存儲(chǔ)值處于所述鄰接范圍內(nèi)時(shí)指示出質(zhì)量不良數(shù)據(jù)。
5.如權(quán)利要求4所述的方法,其中所述個(gè)別存儲(chǔ)值區(qū)間包括所述中心優(yōu)選范圍和鄰接在所述優(yōu)選范圍每一側(cè)的一個(gè)周邊范圍,且另外其中產(chǎn)生所述相關(guān)的質(zhì)量指示包括產(chǎn)生一指示,其指示當(dāng)一質(zhì)量不良指示與所述數(shù)據(jù)存儲(chǔ)值相關(guān)聯(lián)時(shí)所述數(shù)據(jù)存儲(chǔ)值處在所述周邊范圍中的哪些范圍中。
6.如權(quán)利要求5所述的方法,其中產(chǎn)生一指示了所述數(shù)據(jù)存儲(chǔ)值處在所述周邊范圍中的哪些范圍中的指示包括當(dāng)所述數(shù)據(jù)存儲(chǔ)值處在從上方鄰接于所述中心優(yōu)選范圍的所述周邊范圍中時(shí),指示高位異常數(shù)據(jù);和當(dāng)所述數(shù)據(jù)存儲(chǔ)值處在從下方鄰接于所述中心優(yōu)選范圍的所述周邊范圍中時(shí),指示低位異常數(shù)據(jù)。
7.如權(quán)利要求6所述的方法,其中通過(guò)數(shù)字?jǐn)?shù)據(jù)值和相關(guān)的質(zhì)量指示來(lái)表示所述個(gè)別數(shù)據(jù)存儲(chǔ)值包括通過(guò)所述相關(guān)的數(shù)字?jǐn)?shù)據(jù)值,通過(guò)其相關(guān)的質(zhì)量良好或質(zhì)量不良指示的一數(shù)字表示和通過(guò)其相關(guān)的低位異?;蚋呶划惓V甘镜囊粩?shù)字表示來(lái)表示所述個(gè)別數(shù)據(jù)存儲(chǔ)值。
8.如權(quán)利要求7所述的方法,其中將一錯(cuò)誤校正碼應(yīng)用于所述數(shù)字?jǐn)?shù)據(jù)值包括當(dāng)所應(yīng)用的錯(cuò)誤校正碼能夠重構(gòu)至少一個(gè)遭破壞的數(shù)字?jǐn)?shù)據(jù)值時(shí),通過(guò)應(yīng)用所述錯(cuò)誤校正碼來(lái)重構(gòu)所述至少一個(gè)遭破壞的數(shù)字?jǐn)?shù)據(jù)值,藉此所述至少一個(gè)遭破壞的數(shù)字?jǐn)?shù)據(jù)值已由所述錯(cuò)誤校正碼檢測(cè)到;和當(dāng)所應(yīng)用的錯(cuò)誤校正碼不能夠重構(gòu)至少一個(gè)遭破壞的數(shù)字?jǐn)?shù)據(jù)值時(shí),通過(guò)將所述錯(cuò)誤校正碼與所述相關(guān)的質(zhì)量指示結(jié)合應(yīng)用來(lái)重構(gòu)所述至少一個(gè)遭破壞的數(shù)字?jǐn)?shù)據(jù)值,藉此所述至少一個(gè)遭破壞的數(shù)字?jǐn)?shù)據(jù)值已由所述錯(cuò)誤校正碼檢測(cè)到。
9.如權(quán)利要求8所述的方法,其中重構(gòu)至少一個(gè)遭破壞的數(shù)字?jǐn)?shù)據(jù)值包括使用一相關(guān)的質(zhì)量不良指示來(lái)修改至少一個(gè)數(shù)字?jǐn)?shù)據(jù)值。
10.如權(quán)利要求9所述的方法,其中修改至少一個(gè)數(shù)字?jǐn)?shù)據(jù)值包括根據(jù)所述相關(guān)指示修改至少一個(gè)數(shù)字?jǐn)?shù)據(jù)值,該相關(guān)指示指示了對(duì)應(yīng)的數(shù)據(jù)存儲(chǔ)值處在所述周邊范圍中的哪個(gè)范圍中,藉此當(dāng)指示高位異常時(shí)增大所述至少一個(gè)數(shù)字?jǐn)?shù)據(jù)值而當(dāng)指示低位異常時(shí)減小所述至少一個(gè)數(shù)字?jǐn)?shù)據(jù)值。
11.如權(quán)利要求10所述的方法,其中將所述錯(cuò)誤校正碼與所述相關(guān)質(zhì)量指示結(jié)合應(yīng)用包括根據(jù)所述相關(guān)質(zhì)量指示修改至少一個(gè)數(shù)字?jǐn)?shù)據(jù)值;和重復(fù)修改至少一個(gè)數(shù)字?jǐn)?shù)據(jù)值的行為直到所述錯(cuò)誤校正碼能夠校正所述數(shù)字?jǐn)?shù)據(jù)值。
12.一種操作一存儲(chǔ)系統(tǒng)的方法,其包含從所述存儲(chǔ)系統(tǒng)讀取復(fù)數(shù)個(gè)數(shù)據(jù)存儲(chǔ)值;通過(guò)數(shù)字?jǐn)?shù)據(jù)值和相關(guān)的質(zhì)量指示來(lái)表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值;構(gòu)造一與所述復(fù)數(shù)個(gè)數(shù)據(jù)存儲(chǔ)值相關(guān)聯(lián)的復(fù)數(shù)個(gè)質(zhì)量指示的統(tǒng)計(jì)資料;和利用相關(guān)的質(zhì)量指示的所述統(tǒng)計(jì)資料來(lái)操作所述存儲(chǔ)系統(tǒng)。
13.如權(quán)利要求12所述的方法,其中從復(fù)數(shù)個(gè)非易失性存儲(chǔ)單元平行地執(zhí)行所述數(shù)據(jù)存儲(chǔ)值的讀取。
14.如權(quán)利要求12所述的方法,其中表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值包括根據(jù)所述數(shù)據(jù)存儲(chǔ)值所處在的定義非重疊存儲(chǔ)值區(qū)間產(chǎn)生數(shù)字?jǐn)?shù)據(jù)值,其中所述個(gè)別存儲(chǔ)值區(qū)間由分離點(diǎn)分開(kāi);和根據(jù)所述數(shù)據(jù)存儲(chǔ)值處在所述存儲(chǔ)值區(qū)間中的位置產(chǎn)生所述相關(guān)的質(zhì)量指示。
15.如權(quán)利要求14所述的方法,其中利用復(fù)數(shù)個(gè)相關(guān)質(zhì)量指示的所述統(tǒng)計(jì)資料來(lái)操作所述存儲(chǔ)系統(tǒng)包括根據(jù)復(fù)數(shù)個(gè)相關(guān)質(zhì)量指示的所述統(tǒng)計(jì)資料來(lái)修改所述分離點(diǎn)。
16.如權(quán)利要求15所述的方法,其中構(gòu)造復(fù)數(shù)個(gè)相關(guān)質(zhì)量指示的一統(tǒng)計(jì)資料包括確立處在存儲(chǔ)值區(qū)間的個(gè)別子區(qū)間中的數(shù)據(jù)存儲(chǔ)值的數(shù)目,其中所述個(gè)別存儲(chǔ)值區(qū)間包括復(fù)數(shù)個(gè)非重疊子區(qū)間;和識(shí)別分離間隙作為所述一個(gè)或多個(gè)子區(qū)間,其中數(shù)據(jù)存儲(chǔ)值的數(shù)目小于一預(yù)定值。
17.如權(quán)利要求16所述的方法,其中根據(jù)所述復(fù)數(shù)個(gè)相關(guān)質(zhì)量指示的所述統(tǒng)計(jì)資料來(lái)修改所述分離點(diǎn)包括修改至少一個(gè)分離點(diǎn),使其處于一相應(yīng)的分離間隙中。
18.一種操作一存儲(chǔ)系統(tǒng)的方法,其包含從所述存儲(chǔ)系統(tǒng)讀取數(shù)據(jù)存儲(chǔ)值;通過(guò)數(shù)字?jǐn)?shù)據(jù)值和相關(guān)質(zhì)量指示來(lái)表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值;分類所積累的與復(fù)數(shù)個(gè)存儲(chǔ)單元的所述數(shù)據(jù)存儲(chǔ)值相關(guān)聯(lián)的質(zhì)量指示;和利用對(duì)所積累的質(zhì)量指示的所述分類來(lái)操作所述存儲(chǔ)系統(tǒng)。
19.如權(quán)利要求18所述的方法,其中從非易失性存儲(chǔ)單元平行地執(zhí)行所述數(shù)據(jù)存儲(chǔ)值的讀取。
20.如權(quán)利要求18所述的方法,其中表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值包括根據(jù)所述數(shù)據(jù)存儲(chǔ)值所處在的定義非重疊存儲(chǔ)值區(qū)間來(lái)產(chǎn)生數(shù)字?jǐn)?shù)據(jù)值,其中所述個(gè)別存儲(chǔ)值區(qū)間包括一中心優(yōu)選范圍和鄰接于其的至少一個(gè)周邊范圍;和產(chǎn)生相關(guān)的質(zhì)量指示,以指示所述數(shù)據(jù)存儲(chǔ)值是處于其所在的所述存儲(chǔ)值區(qū)間的所述優(yōu)選范圍還是所述鄰接范圍中,藉此當(dāng)所述數(shù)據(jù)存儲(chǔ)值處于所述優(yōu)選范圍內(nèi)時(shí)指示質(zhì)量良好數(shù)據(jù)而當(dāng)所述數(shù)據(jù)存儲(chǔ)值處于所述鄰接范圍內(nèi)時(shí)指示質(zhì)量不良數(shù)據(jù)。
21.如權(quán)利要求20所述的方法,其中分類與復(fù)數(shù)個(gè)存儲(chǔ)單元相關(guān)聯(lián)的所述質(zhì)量指示包括確立在至少一個(gè)復(fù)數(shù)個(gè)存儲(chǔ)單元中的質(zhì)量不良數(shù)據(jù)的數(shù)目。
22.如權(quán)利要求21所述的方法,其中利用對(duì)所積累的質(zhì)量指示的所述分類來(lái)操作所述存儲(chǔ)單元系統(tǒng)包括根據(jù)所述復(fù)數(shù)個(gè)存儲(chǔ)單元的質(zhì)量不良數(shù)據(jù)的數(shù)目來(lái)管理所述至少一個(gè)復(fù)數(shù)個(gè)存儲(chǔ)單元的所述數(shù)據(jù)存儲(chǔ)值,其包含當(dāng)質(zhì)量不良數(shù)據(jù)的數(shù)目小于一第一預(yù)定值時(shí),不改變所述數(shù)據(jù)存儲(chǔ)值。
23.如權(quán)利要求22所述的方法,其中利用對(duì)所積累的質(zhì)量指示的所述分類來(lái)操作所述存儲(chǔ)單元系統(tǒng)包括以下之一將所述數(shù)據(jù)存儲(chǔ)值重寫(xiě)入所述相同的復(fù)數(shù)個(gè)存儲(chǔ)單元;和當(dāng)質(zhì)量不良數(shù)據(jù)的數(shù)目小于一第二預(yù)定值但不小于所述第一預(yù)定值時(shí),在一根據(jù)系統(tǒng)的優(yōu)先級(jí)選定的時(shí)刻后,將所述數(shù)據(jù)存儲(chǔ)值轉(zhuǎn)錄入一不同的復(fù)數(shù)個(gè)存儲(chǔ)單元。
24.如權(quán)利要求23所述的方法,其中利用對(duì)所積累的質(zhì)量指示的所述分類來(lái)操作所述存儲(chǔ)單元系統(tǒng)包括以下之一將所述數(shù)據(jù)存儲(chǔ)值重寫(xiě)入所述相同的復(fù)數(shù)個(gè)存儲(chǔ)單元;和當(dāng)質(zhì)量不良數(shù)據(jù)的數(shù)目小于一第三預(yù)定值但不小于所述第二預(yù)定值時(shí),立即或在一預(yù)定延遲后,將所述數(shù)據(jù)存儲(chǔ)值轉(zhuǎn)錄入一不同的復(fù)數(shù)個(gè)存儲(chǔ)單元。
25.如權(quán)利要求24所述的方法,其中利用對(duì)所積累的質(zhì)量指示的所述分類來(lái)操作所述存儲(chǔ)單元系統(tǒng)包括將所述至少一個(gè)復(fù)數(shù)個(gè)存儲(chǔ)單元的所述數(shù)據(jù)存儲(chǔ)值轉(zhuǎn)錄入一不同的復(fù)數(shù)個(gè)存儲(chǔ)單元;和當(dāng)質(zhì)量不良數(shù)據(jù)的數(shù)目小于一第三預(yù)定值時(shí),報(bào)廢所述至少一個(gè)復(fù)數(shù)個(gè)存儲(chǔ)單元。
26.一種操作一存儲(chǔ)系統(tǒng)的方法,其包含從所述存儲(chǔ)系統(tǒng)讀取數(shù)據(jù)存儲(chǔ)值;通過(guò)數(shù)字?jǐn)?shù)據(jù)值和相關(guān)質(zhì)量指示來(lái)表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值;應(yīng)用一錯(cuò)誤校正碼以判定遭破壞的表示復(fù)數(shù)個(gè)存儲(chǔ)單元的數(shù)據(jù)存儲(chǔ)值的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目;通過(guò)將所述錯(cuò)誤校正碼與所述質(zhì)量指示結(jié)合應(yīng)用來(lái)重構(gòu)所述遭破壞的數(shù)字?jǐn)?shù)據(jù)值;和利用遭破壞的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目來(lái)操作所述存儲(chǔ)系統(tǒng)。
27.如權(quán)利要求26所述的方法,其中表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值包括根據(jù)所述數(shù)據(jù)存儲(chǔ)值所處在的定義非重疊存儲(chǔ)值區(qū)間來(lái)產(chǎn)生數(shù)字?jǐn)?shù)據(jù)值,其中所述個(gè)別存儲(chǔ)值區(qū)間包括一中心優(yōu)選范圍和鄰接于其的至少一個(gè)周邊范圍;和產(chǎn)生相關(guān)的質(zhì)量指示,以指示所述數(shù)據(jù)存儲(chǔ)值是處于其所在的所述存儲(chǔ)值區(qū)間的所述優(yōu)選范圍還是所述鄰接范圍中,藉此當(dāng)所述數(shù)據(jù)存儲(chǔ)值處于所述優(yōu)選范圍內(nèi)時(shí)指示質(zhì)量良好數(shù)據(jù)而當(dāng)所述數(shù)據(jù)存儲(chǔ)值處于所述鄰接范圍內(nèi)時(shí)指示質(zhì)量不良數(shù)據(jù)。
28.如權(quán)利要求27所述的方法,其中所述個(gè)別存儲(chǔ)值區(qū)間包括所述中心優(yōu)選范圍和一個(gè)鄰接在所述優(yōu)選范圍每一側(cè)的周邊范圍,且另外其中產(chǎn)生所述相關(guān)的質(zhì)量指示包括產(chǎn)生一指示,其指示當(dāng)一質(zhì)量不良指示與所述數(shù)據(jù)存儲(chǔ)值相關(guān)聯(lián)時(shí)所述數(shù)據(jù)存儲(chǔ)值處在所述周邊范圍中的哪些范圍中。
29.如權(quán)利要求28所述的方法,其中產(chǎn)生一指示了所述數(shù)據(jù)存儲(chǔ)值處在所述周邊范圍中的哪些范圍中的指示包括當(dāng)所述數(shù)據(jù)存儲(chǔ)值處在從上方鄰接于所述中心優(yōu)選范圍的所述周邊范圍中時(shí),指示高位異常數(shù)據(jù);和當(dāng)所述數(shù)據(jù)存儲(chǔ)值處在從下方鄰接于所述中心優(yōu)選范圍的所述周邊范圍中時(shí),指示低位異常數(shù)據(jù)。
30.如權(quán)利要求29所述的方法,其中通過(guò)數(shù)字?jǐn)?shù)據(jù)值和相關(guān)的質(zhì)量指示來(lái)表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值包括通過(guò)所述相關(guān)的數(shù)字?jǐn)?shù)據(jù)值,通過(guò)其相關(guān)的質(zhì)量良好或質(zhì)量不良指示的一數(shù)字表示和通過(guò)其相關(guān)的低位異?;蚋呶划惓V甘镜囊粩?shù)字表示來(lái)表示所述個(gè)別的讀取數(shù)據(jù)存儲(chǔ)值。
31.如權(quán)利要求30所述的方法,其中利用遭破壞的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目來(lái)操作所述存儲(chǔ)系統(tǒng)包括根據(jù)所述復(fù)數(shù)個(gè)存儲(chǔ)單元的遭破壞的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目來(lái)管理所述復(fù)數(shù)個(gè)存儲(chǔ)單元的所述數(shù)據(jù)存儲(chǔ)值,其包含當(dāng)遭破壞的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目小于一第一預(yù)定值時(shí),通過(guò)所述錯(cuò)誤校正碼結(jié)合所述質(zhì)量指示來(lái)重構(gòu)所述數(shù)據(jù)存儲(chǔ)值。
32.如權(quán)利要求31所述的方法,其中利用遭破壞的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目來(lái)操作所述存儲(chǔ)系統(tǒng)包括通過(guò)所述錯(cuò)誤校正碼結(jié)合所述質(zhì)量指示來(lái)重構(gòu)所述數(shù)據(jù)存儲(chǔ)值;和執(zhí)行以下之一將所述數(shù)據(jù)存儲(chǔ)值重寫(xiě)入所述相同的復(fù)數(shù)個(gè)存儲(chǔ)單元;和當(dāng)遭破壞的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目小于一第二預(yù)定值但不小于所述第一預(yù)定值時(shí),在一根據(jù)系統(tǒng)的優(yōu)先級(jí)選定的時(shí)刻后將所述數(shù)據(jù)存儲(chǔ)值轉(zhuǎn)錄入一不同的復(fù)數(shù)個(gè)存儲(chǔ)單元。
33.如權(quán)利要求32所述的方法,其中利用遭破壞的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目來(lái)操作所述存儲(chǔ)系統(tǒng)包括通過(guò)所述錯(cuò)誤校正碼結(jié)合所述質(zhì)量指示來(lái)重構(gòu)所述數(shù)據(jù)存儲(chǔ)值;和執(zhí)行以下之一將所述數(shù)據(jù)存儲(chǔ)值重寫(xiě)入所述相同的復(fù)數(shù)個(gè)存儲(chǔ)單元;和當(dāng)遭破壞的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目小于一第三預(yù)定值但不小于所述第二預(yù)定值時(shí),立即或在一預(yù)定延遲后將所述數(shù)據(jù)存儲(chǔ)值轉(zhuǎn)錄入一不同的復(fù)數(shù)個(gè)存儲(chǔ)單元。
34.如權(quán)利要求33所述的方法,其中利用遭破壞的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目來(lái)操作所述存儲(chǔ)系統(tǒng)包括通過(guò)所述錯(cuò)誤校正碼結(jié)合所述質(zhì)量指示來(lái)重構(gòu)所述數(shù)據(jù)存儲(chǔ)值;將所述數(shù)據(jù)存儲(chǔ)值轉(zhuǎn)錄入一不同的復(fù)數(shù)個(gè)存儲(chǔ)單元;和當(dāng)遭破壞的數(shù)字?jǐn)?shù)據(jù)值的數(shù)目不小于一第三預(yù)定值時(shí),報(bào)廢所述復(fù)數(shù)個(gè)存儲(chǔ)單元。
全文摘要
通過(guò)不同方法來(lái)評(píng)估存儲(chǔ)在存儲(chǔ)系統(tǒng)中的數(shù)據(jù)的質(zhì)量,并且根據(jù)評(píng)估得的質(zhì)量來(lái)操作此存儲(chǔ)系統(tǒng)。可在I-cad操作期間評(píng)估數(shù)據(jù)質(zhì)量(a)。隨后使用錯(cuò)誤校正碼(a)時(shí)可利用此質(zhì)量指示來(lái)更有效率地檢測(cè)和重構(gòu)數(shù)據(jù)?;蛘?,可構(gòu)造關(guān)于數(shù)據(jù)質(zhì)量的統(tǒng)計(jì)資料,并以修改的方式使數(shù)字?jǐn)?shù)據(jù)值相關(guān)聯(lián)以防止數(shù)據(jù)破壞。在兩種情況下,皆可根據(jù)經(jīng)適當(dāng)選擇的進(jìn)度更有效率地(歸因于由質(zhì)量指示所提供的知識(shí))特定地對(duì)質(zhì)量不良的數(shù)據(jù)實(shí)施校正行為。這些方法特別適用于由多電平存儲(chǔ)單元構(gòu)成的高密度存儲(chǔ)系統(tǒng)。
文檔編號(hào)G06F12/16GK1653554SQ03811328
公開(kāi)日2005年8月10日 申請(qǐng)日期2003年5月12日 優(yōu)先權(quán)日2002年5月20日
發(fā)明者丹尼爾·C·古特曼, 斯蒂芬·J·格羅斯, 杰弗里·S·岡沃爾 申請(qǐng)人:桑迪士克股份有限公司