專利名稱:存儲設備中的失真估計和消除的制作方法
技術領域:
本申請主要涉及存儲設備,具體涉及用于對存儲設備中的失真進行估計和補償的方法和系統。
背景技術:
多種存儲設備,例如閃存和動態隨機存取存儲器(DRAM),使用模擬存儲單元陣列來存儲數據。例如,在2003年4月在IEEE學報91卷第4期第489-502頁由Bez等人發表的“Introduction to Flash Memory”中,描述了閃存設備,該文獻在此處以援引方式全部納入本文。在此類存儲設備中,每個模擬存儲單元通常包括一個晶體管,該晶體管保持了一定數量的電荷,所述電荷表示 存儲在所述存儲單元中的信息。寫入一特定存儲單元的電荷影響所述存儲單元的“門限電壓”,也即,需要施加電壓到存儲單元以使得所述存儲單元傳導一定數量的電流。—些存儲設備,通常稱為“單層單元”(SLC)設備,在每個存儲單元中存儲單比特信息。通常,所述存儲單元的可能的門限電壓的范圍被分為兩個區域。落入這兩個區域中的一個區域的電壓值代表比特值“0”,而屬于另一個區域的電壓值代表“I”。更高密度的設備,通常稱為“多層單元”(MLC)設備,每個存儲單元存儲兩個或更多個比特。在多層單元中,門限電壓的范圍被分為多于兩個區域,其中每個區域代表多于一個比特。例如,在紐約州紐約市舉辦的1996年IEEE國際電子器件大會(IEDM)的學報上的第 169-172 頁上由 Eitan 等人發表的“Multilevel Flash Cells and their Trade-Offs^,描述了多層閃存單元和設備,該文獻在此以援引方式全部納入本文。該文獻對數種多層閃存單元進行比較,例如共地型、DINOR型、AND型、NOR型和NAND型存儲單元。Eitan等人在1999年9月21至24日在日本東京舉行的固態器件與材料國際會議(SSDM)的學報的第522至 524頁發表的“Can NR0M, a2-bit, Trapping Storage NVM Cell, Give a Real Challengeto Floating Gate Cells ”描述了另一種模擬存儲單元,稱為氮化物只讀存儲器(NROM),該文獻在此以援引方式納入本文。在2002年2月3日 7日在美國加州舊金山市舉辦的IEEE國際固態電子器件學會(ISSCC 2002)的學報的第100-101頁由Maayan等人發表的“A 512 Mb NROM Flash Data Storage Memory with 8 MB/s Data Rate” 中,描述了 NROM存儲單元,其在此處以援引方式納入本文。模擬存儲單元的其他示例性類型為,鐵電RAM(FRAM)單元、磁RAM(MRAM)單元、電荷捕獲閃存(CTF)和相變RAM(PRAM,也稱為相變存儲器PCM)單元。例如,在2004年5月16日至19日在塞爾維亞和黑山的Nis舉辦的第24屆微電子國際學會(MIEL)學報第一卷第377-384 頁上由 Kim 和 Koh 發表的“Future Memory Technology including Emerging NewMemories”中,描述了 FRAM、MRAM和PRAM單元,其在此處以援引方式全部納入本文。讀取自模擬存儲單元的門限電壓值有時會失真。這種失真有各種不同的原因,例如耦合自相鄰存儲單元的電場、由陣列中其他存儲單元上的存儲存取操作而導致的干擾噪聲、以及由于設備老化導致的門限電壓漂移。一些常見的失真機制已由Bez等人在上文所引用的文章中進行了描述。在2002年5月的I EEE電子器件快報(23:5)第264-266頁上發表的“Effects of Floating Gate Interference on NAND Flash Memory Cell Operation,,中,Lee等人還描述了在失真效應,其在此處以援引方式全部納入本文。美國專利5,867,429,描述了一種用于對在高密度閃速可電擦除可編程只讀存儲(EEPROM)單元陣列中的浮置柵極之間耦合的電場進行補償的方法,其公開內容在此以援引方式全部納入本文。根據所公開的方法,對一個存儲單元的讀取是通過首先讀取所有與正被讀取的存儲單元場耦合的存儲單元的狀態來補償。然后將與每個耦合的存儲單元的狀態或浮置柵極電壓相關的數目,乘以存儲單元之間的耦合比。在每個存儲單元的各狀態之間的斷點電平是由一個補償了耦合自相鄰存儲單元的電壓的量來調整的。
發明內容
本發明的實施方案提供了一種用于操作存儲器的方法,包括:將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中,所述第一電壓電平選自可能的值的集合;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,該第二電壓電平受到交叉耦合干擾的影響,該交叉耦合干擾導致所述第二電壓電平不同于所述相應的第一電壓電平;處理所述第二電壓電平以獲得相應的硬判決,每個硬判決均對應于所述第一電壓電平的可能的值中的相應值;基于所述第二電壓電平和所述相應的硬判決估計交叉耦合系數,該交叉耦合系數量化所述模擬存儲單元之間的交叉耦合干擾;以及使用所估計的交叉耦合系數,從所讀取的第二電壓電平重構存儲在該組模擬存儲單元中的數據。在一些實施方案中,估計交叉耦合系數包括使用塊估計過程處理所述第二電壓電平和所述相應的硬判決。替代地,估計交叉耦合系數包括使用收斂到所述交叉耦合系數的序列估計過程以循序掃描所述第二電壓電平以及所述相應的硬判決。估計交叉耦合系數可以包括采用一個減少在所述所讀取的第二電壓電平和所述相應的硬判決之間的距離度量的估計過程。在一個實施方案中,所述方法包括既基于讀取自第一模擬存儲單兀的第二電壓電平又基于讀取自第二模擬存儲單元的第二電壓電平,估算在所述存儲器中由所述第一模擬存儲單元導致的針對所述第二模擬存儲單元的交叉耦合干擾。在另一個實施方案中,重構數據包括使用如下過程之一將所述交叉耦合干擾從所述第二電壓電平中除去,所述過程為:線性均衡過程、判決反饋均衡(DFE)過程、最大后驗(MAP)估計過程以及最大似然序列估計(MLSE)過程。在又一個實施方案中,估計交叉耦合系數與重構數據包括在第一處理階段中估計所述交叉耦合系數,并且在后繼于所述第一處理階段的第二處理階段中消除所估計的交叉耦合干擾。在又一個實施方案中,估計交叉耦合系數與重構數據包括將所估計的交叉耦合系數用于所述第二處理階段的后繼情況,并且僅當未能重構所述數據時才重復所述第一處理階段。在一個公開的實施方案中,存儲數據包括使用糾錯碼(ECC)編碼所述數據,重構數據包括基于所估計的交叉耦合系數計算糾錯度量并且使用所述糾錯度量解碼所述ECC。根據本發明的一個實施方案,還提供了一種用于操作存儲器的方法,包括:將數據作為相應的第一電壓電平存儲在所述存儲器的模擬存儲單元中,其中所述模擬存儲單元的子集具有相關失真;在存儲所述數據之后,從所述子集中的一個或多個模擬存儲單元讀取相應的第二電壓電平,該第二電壓電平由于所述相關失真而不同于所述第一電壓電平;處理讀取自所述一個或多個模擬存儲單元的第二電壓電平,以便估計在所述第二電壓電平中的相應失真度(distortion level);從所述子集中的其他模擬存儲單元讀取一個第二電壓電平;基于所估計的所述子集中的一個或多個模擬存儲單元的相應失真度,預測讀取自所述其他模擬存儲單元的第二電壓電平中的失真度;使用預測的失真度,校正讀取自所述其他模擬存儲單元的第二電壓電平;以及基于所校正的第二電壓電平,重構在所述其他模擬存儲單元中存儲的數據。在一些實施方案中,存儲單元的子集包括選自下列一組子集類型中的至少一個子集類型:位于公共位線上的存儲單元、位于公共字線上的存儲單元、具有公共電路的存儲單元和彼此位置接近的存儲單元。 在一個實施方案中,處理第二電壓電平包括僅緩存單個值,該值指示從所述子集中的一個或多個模擬存儲單元中讀取的第二電壓電平的失真度,且其中預測失真度包括基于緩存的所述單個值計算預測的失真度。在另一個實施方案中,預測失真包括追蹤對于所述模擬存儲單元的子集為共有的失真參數,并且將所述失真參數存儲在數據結構中。根據本發明的一個實施方案,還提供了一種用于操作存儲器的方法,包括:將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中;在所述存儲器中的第一模擬存儲單元上執行存儲器存取操作;響應于執行的存儲器存取操作,從所述存儲器中的第二模擬存儲單元讀取第二電壓電平;處理所述第二電壓電平,從而估計在所述第二電壓電平中的擾動電平(level ofdisturbance),該擾動電平是由在所述第一模擬存儲單元上執行的存儲器存取操作所導致;使用所估計的擾動電平,校正所述第二電壓電平;以及基于所校正的第二電壓電平,重構在所述第二模擬存儲單元中存儲的數據。在一些實施方案中,存儲器存取操作包括選自下列一組操作中的至少一種操作:編程操作、讀操作和擦除操作。處理和校正第二電壓電平可以包括將所估計的擾動電平與預定義電平作比較,且僅當所估計的擾動電平超過所述預定義電平時才校正所述第二電壓電平。在一個實施方案中,校正第二電壓電平包括對所述第二模擬存儲單元中存儲的數據重新編程。在另一個實施方案中,校正第二電壓電平包括將存儲在所述第二模擬存儲單元中的數據復制到不同于所述第二模擬存儲單元的其他模擬存儲單元中。替代地,校正第二電壓電平可包括增大用于將數據存儲在所述第二模擬存儲單元中的第一電壓電平。可以在不對所述數據作存儲和讀取的空閑時段期間執行對第二電壓電平的處理。在一個公開的實施方案中,讀取第二電壓電平包括從相應的多個第二模擬存儲單元讀取多個第二電壓電平,且處理第二電壓電平包括對多個由于存儲器存取操作而從已擦除電平轉換到已編程電平的第二模擬存儲單元進行評估。在另一個實施方案中,存儲數據包括將所述數據循序存儲在所述模擬存儲單元的多個組中,讀取第二電壓電平包括以逆序讀取所述模擬存儲單元的多個組,且處理第二電壓電平包括估計響應于在所述第一模擬存儲單元之前讀取的所述組中的模擬存儲單元的第二電壓對所述第一模擬存儲單元導致的擾動電平。根據本發明的一個實施方案,還提供了一種用于操作存儲器的方法,包括:將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;識別潛在地導致針對讀取自目標模擬存儲單元的第二電壓電平的失真的模擬存儲單元的子集;基于數據被存儲在所述模擬存儲單元中的相應時間和數據被存儲在所述目標模擬存儲單元中的時間之間的關系,將所述子集中的模擬存儲單元分成多個類;為所述類的每一個估計由該類中的模擬存儲單元針對所述目標模擬存儲單元中的第二電壓電平所導致的相應失真;使用為所述類中的一個或多個類中的每一個所估計的相應失真,校正讀取自所述目標模擬存儲單元的第二電壓電平;以及基于所校正的第二電壓電平,重構在所述目標模擬存儲單元中存儲的數據。在一些實施方案中,存儲數據和讀取第二電壓電平包括應用編程與驗證(P&V)過程。在一個實施方案中,分類模擬存儲單元包括識別所述子集中的比所述目標模擬存儲單元更為新近地將數據存儲在其中的模擬存儲單元,且其中校正第二電壓電平包括基于僅在所識別的模擬存儲單元中的失真來校正讀取自所述目標模擬存儲單元的第二電壓電平。在一個替代性的實施方案中,分類模擬存儲單元包括:定義第一類,其包括在所述子集中的比所述目標模擬存儲單元更為新近地將數據存儲在其中的模擬存儲單元;第二類,其包括在所述子集中的比所述目標模擬存儲單元更早地將數據存儲在其中的模擬存儲單元;和第三類,其包括在所述子集中的與所述目標模擬存儲單元并發地將數據存儲在其中的模擬存儲單元。在另一個實施方案中,讀取第二電壓電平、估計失真和校正第二電壓電平包括,以第一分辨率處理讀取自所述目標模擬存儲單元的第二電壓電平,并且以比所述第一分辨率更不精確的第二分辨率處理讀取自所述子集中的模擬存儲單元的第二電壓電平。在又一個實施方案中,存儲數據包括存儲所述數據被存儲在所述模擬存儲單元時的時間標記,且分類模擬存儲單元包括查詢所存儲的標記。在另一個實施方案中,估計失真包括響應于選自下列一組參數中的至少一個參數來估計失真度,所述參數包括:所述模擬存儲單元的編程次數、存儲在所述模擬存儲單元中的數據、所述模擬存儲單元相對于所述目標模擬存儲單元的位置以及所述目標存儲單元最近已經經歷的編程-擦除循環的次數。根據本發明的一個實施方案,還提供了一種用于操作存儲器的方法,包括:接受用于存儲在所述存儲器中的數據;確定相應的第一電壓電平,用于對所述存儲器的一組模擬存儲單元編程,從而使得所述模擬存儲單元存儲表示所述數據的物理量的相應值;使用確定的第一電壓電平對所述組中的模擬存儲單元編程;在對所述模擬存儲單元編程之后,從相應的模擬存儲單元讀取第二電壓電平并且從所述第二電壓電平重構數據。在一些實施方案中,確定第一電壓電平包括當將所述數據存儲在目標模擬存儲單元中時,對由存儲在一個或多個其他模擬存儲單元中的物理量的值所導致的針對存儲在所述目標模擬存儲單元中的物理量的值的失真進行估計,并且響應于所估計的失真預先校正用于所述目標模擬存儲單元編程的第一電壓電平。在另一個實施方案中,重構數據包括:當讀取所述第二電壓電平時,基于所讀取的第二電壓電平對由存儲在一個或多個其他模擬存儲單元中的物理量的值所導致的針對存儲在目標模擬存儲單元中的物理量的值的失真進行估計;使用所估計的失真校正讀取自所述目標模擬存儲單元的第二電壓電平;并且基于所校正的第二電壓電平重構存儲在所述目標模擬存儲單元中的數據。編程模擬存儲單元可以包括驗證已編程的第一電壓電平。在一些實施方案中,物理量包括電荷。根據本發明的一個實施方案,還提供了一種用于操作存儲器的方法,包括:將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中;在存儲所述數據之后,從所述組中的模擬存儲單元讀取第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;估計讀取自所述模擬存儲單元中的第二電壓電平中的失真度;以及當所估計的失真度違反了預定的失真判據時,將所述數據重新編程到所述存儲器的模擬存儲單元中。在一些實施方案中,預定的失真判據包括一個定義最大可容忍的失真度的門限。根據本發明的一個實施方案,還提供了一種用于操作存儲器的方法,包括:將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;識別潛在地導致針對讀取自目標模擬存儲單元的第二電壓電平的失真的模擬存儲單元的子集;估計在所述目標模擬存儲單元被編程的第一瞬時由在所述子集中的模擬存儲單元導致的針對所述目標模擬存儲單元的第一失真度與所述目標模擬存儲單元被讀取的第二瞬時由在所述子集中的模擬存儲單元導致的針對所述目標模擬存儲單元的第二失真度之間的差;以及使用所估計的差,校正讀取自所述目標模擬存儲單元的第二電壓電平。根據本發明的一個實施方案,還提供了一種用于操作存儲器的方法,包括:將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,該第二電壓電平受到交叉耦合干擾的影響,該交叉耦合干擾導致所述第二電壓電平不同于所述相應的第一電壓電平;估計交叉耦合系數,其通過處理所述第二電壓電平而將所述模擬存儲單元之間的交叉耦合干擾量化;以及使用所估計的交叉耦合系數,從所讀取的第二電壓電平重構存儲在該組模擬存儲單元中的數據。在一些實施方案中,既基于讀取自第一模擬存儲單元的第二電壓電平又基于讀取自第二模擬存儲單元的第二電壓電平,評估由第一模擬存儲單元針對存儲器中第二模擬存儲單元導致的交叉耦合干擾。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:接口,其操作性地與包含多個模擬存儲單元的存儲器通信;以及存儲器信號處理器(MSP),其被耦合到所述接口并且被布置為:將數據作為選自可能的值的集合的相應的第一電壓電平存儲在一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,該第二電壓電平受到交叉耦合干擾的影響,該交叉耦合干擾導致所述第二電壓電平不同于所述相應的第一電壓電平;處理所述第二電壓電平以獲得相應的硬判決,每個硬判決均對應于所述第一電壓電平的可能的值中的相應值;基于所述第二電壓電平和所述相應的硬判決估計交叉耦合系數,該交叉耦合系數量化所述模擬存儲單元之間的交叉耦合干擾;以及使用所估計的交叉耦合系數,從所述第二電壓電平重構存儲在該組模擬存儲單元中的數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:接口,其操作性地與包含多個模擬存儲單元的存儲器通信,所述存儲器的模擬存儲單元的子集具有相關失真;以及存儲器信號處理器(MSP),其被耦合到所述接口并且被布置為:將數據作為相應的第一電壓電平存儲在所述模擬存儲單元中;在存儲所述數據之后,從所述子集中的一個或多個模擬存儲單元讀取相應的第二電壓電平,該第二電壓電平由于所述相關失真而不同于所述第一電壓電平;處理讀取自所述一個或多個模擬存儲單元的第二電壓電平,以便估計在所述第二電壓電平中的相應失真度;從所述子集中的其他模擬存儲單元讀取一個第二電壓電平;基于所估計的所述子集中的一個或多個模擬存儲單元的相應失真度,預測讀取自所述其他模擬存儲單元的第二電壓電平中的失真度;使用預測的失真度,校正讀取自所述其他模擬存儲單元的第二電壓電平;以及基于所校正的第二電壓電平,重構在所述其他模擬存儲單元中存儲的數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:接口,其操作性地與包含多個模擬存儲單元的存儲器通信;以及存儲器信號處理器(MSP),其被耦合到所述接口并且被布置為:將數據作為相應的第一電壓電平存儲在一組模擬存儲單元中;在所述存儲器中的第一模擬存儲單元上執行存儲器存取操作;響應于執行的存儲器存取操作,從所述存儲器中的第二模擬存儲單元讀取第二電壓電平;處理所述第二電壓電平,從而估計在所述第二電壓電平中的擾動電平,該擾動電平是由在所述第一模擬存儲單元上執行的存儲器存取操作所導致;使用所估計的擾動電平,校正所述第二電壓電平;以及基于所校正的第二電壓電平,重構在所述第二模擬存儲單元中存儲的數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:接口,其操作性地與包含多個模擬存儲單元的存儲器通信;以及存儲器信號處理器(MSP),其被耦合到所述接口并且被布置為:將數據作為相應的第一電壓電平存儲在一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;識別潛在地導致針對讀取自目標模擬存儲單元的第二電壓電平的失真的模擬存儲單元的子集;基于數據被存儲在所述模擬存儲單元中的相應時間和數據被存儲在所述目標模擬存儲單元中的時間之間的關系,將所述子集中的模擬存儲單元分成多個類;為所述類的每一個估計由該類中的模擬存儲單元針對所述目標模擬存儲單元中的第二電壓電平所導致的相應失真;使用為所述類中的一個或多個類中的每一個所估計的相應失真,校正讀取自所述目標模擬存儲單元的第二電壓電平;以及基于所校正的第二電壓電平,重構在所述目標模擬存儲單元中存儲的數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:接口,其操作性地與包含多個模擬存儲單元的存儲器通信;以及存儲器信號處理器(MSP),其被耦合到所述接口并且被布置為:接受用于存儲在所述存儲器中的數據;確定相應的第一電壓電平,用于對一組模擬存儲單元編程,從而使得所述模擬存儲單元存儲表示所述數據的物理量的相應值;使用所述第一電壓電平對所述組中的模擬存儲單元編程;在對所述模擬存儲單元編程之后,從相應的模擬存儲單元讀取第二電壓電平;并且從所述第二電壓電平重構數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:接口,其操作性地與包含多個模擬存儲單元的存儲器通信;以及存儲器信號處理器(MSP),其被耦合到所述接口并且被布置為:將數據作為相應的第一電壓電平存儲在一組模擬存儲單元中;在存儲所述數據之后,從所述組中的模擬存儲單元讀取第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;估計讀取自所述模擬存儲單元中的第二電壓電平中的失真度;以及當所估計的失真度違反了預定的失真判據時,將所述數據重新編程到所述組中的模擬存儲單元中。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:接口,其操作性地與包含多個模擬存儲單元的存儲器通信;以及存儲器信號處理器(MSP),其被耦合到所述接口并且被布置為:將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;識別潛在地導致針對讀取自目標模擬存儲單元的第二電壓電平的失真的模擬存儲單元的子集;估計在所述目標模擬存儲單元被編程的第一瞬時由在所述子集中的模擬存儲單元導致的針對所述目標模擬存儲單元的第一失真度與所述目標模擬存儲單元被讀取的第二瞬時由在所述子集中的模擬存儲單元導致的針對所述目標模擬存儲單元的第二失真度之間的差;以及使用所估計的差,校正讀取自所述目標模擬存儲單元的第二電壓電平。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:接口,其操作性地與包含多個模擬存儲單元的存儲器通信;以及存儲器信號處理器(MSP),其被耦合到所述接口并且被布置為:將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,該第二電壓電平受到交叉耦合干擾的影響,該交叉耦合干擾導致所述第二電壓電平不同于所述相應的第一電壓電平;估計交叉耦合系數,其通過處理所述第二電壓電平而將所述模擬存儲單元之間的交叉耦合干擾量化;以及使用所估計的交叉耦合系數,從所讀取的第二電壓電平重構存儲在該組模擬存儲單元中的數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:存儲器,其包含多個模擬存儲單元;以及存儲器信號處理器(MSP),其被耦合到所述存儲器并且被布置為:將數據作為選自可能的值的集合的相應的第一電壓電平存儲在一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,該第二電壓電平受到交叉耦合干擾的影響,該交叉耦合干擾導致所述第二電壓電平不同于所述相應的第一電壓電平;處理所述第二電壓電平以獲得相應的硬判決,每個硬判決都對應于所述第一電壓電平的可能的值中的相應值;估計交叉耦合系數,其基于所述第二電壓電平和所述相應的硬判決,對所述模擬存儲單元之間的交叉耦合干擾進行量化;以及使用所述交叉耦合系數,從所述第二電壓電平重構存儲在該組模擬存儲單元中的數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:存儲器,其包含多個模擬存儲單元,其中所述存儲單元的子集具有相關失真;以及存儲器信號處理器(MSP),其被耦合到所述存儲器并且被布置為:將數據作為相應的第一電壓電平存儲在一組模擬存儲單元中;在存儲所述數據之后,從陣列的一列中的一個或多個模擬存儲單元讀取相應的第二電壓電平,該第二電壓電平由于失真而不同于所述第一電壓電平;處理讀取自所述一個或多個模擬存儲單元的第二電壓電平,以便估計在所述第二電壓電平中的相應失真度;從所述列中的其他模擬存儲單元讀取一個第二電壓電平;基于所估計的所述列中的一個或多個模擬存儲單元的相應失真度,預測讀取自所述其他模擬存儲單元的第二電壓電平中的失真度;使用所預測的失真度,校正讀取自所述其他模擬存儲單元的第二電壓電平;以及基于所校正的第二電壓電平,重構在所述其他模擬存儲單元中存儲的數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:
存儲器,其包含多個模擬存儲單元;以及存儲器信號處理器(MSP),其被耦合到所述存儲器并且被布置為:將數據作為相應的第一電壓電平存儲在一組模擬存儲單元中;在所述存儲器中的第一模擬存儲單元上執行存儲器存取操作;響應于執行的存儲器存取操作,從所述存儲器中的第二模擬存儲單元讀取第二電壓電平;處理所述第二電壓電平,從而估計在所述第二電壓電平中的擾動電平,該擾動電平是由在所述第一模擬存儲單元上執行的存儲器存取操作所導致;使用所估計的擾動電平,校正所述第二電壓電平;以及基于所校正的第二電壓電平,重構在所述第二模擬存儲單元中存儲的數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:存儲器,其包含多個模擬存儲單元;以及存儲器信號處理器(MSP),其被耦合到所述存儲器并且被布置為:將數據作為相應的第一電壓電平存儲在一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;識別潛在地導致針對讀取自目標模擬存儲單元的第二電壓電平的失真的模擬存儲單元的子集;基于數據被存儲在所述模擬存儲單元中的相對時間和數據被存儲在所述目標模擬存儲單元中的時間之間的關系,將所述子集中的模擬存儲單元分成多個類;為所述類的每一個估計由該類中的模擬存儲單元針對所述目標模擬存儲單元中的第二電壓電平所導致的相應失真;使用為所述類中的一個或多個類中的每一個所估計的相應失真,校正讀取自所述目標模擬存儲單元的第二電壓電平;以及基于所校正的第二電壓電平,重構在所述目標模擬存儲單元中存儲的數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:存儲器,其包含多個模擬存儲單元;以及存儲器信號處理器(MSP),其被耦合到所述存儲器并且被布置為:接受用于存儲在所述存儲器中的數據;確定相應的第一電壓電平,用于對一組模擬存儲單元編程,從而使得所述模擬存儲單元存儲表示所述數據的物理量的相應值;使用所述第一電壓電平對所述組中的模擬存儲單元編程;在對所述模擬存儲單元編程之后,從相應的模擬存儲單元讀取第二電壓電平;并且從所述第二電壓電平重構數據。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:存儲器,其包含多個模擬存儲單元;以及存儲器信號處理器(MSP),其被耦合到所述存儲器并且被布置為:將數據作為相應的第一電壓電平存儲在一組模擬存儲單元中;在存儲所述數據之后,從所述組中的模擬存儲單元讀取第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;估計讀取自所述模擬存儲單元中的第二電壓電平中的失真度;以及當所估計的失真度違反了預定的失真判據時,將所述數據重新編程到所述組的模擬存儲單元中。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:存儲器,其包含多個模擬存儲單元;以及存儲器信號處理器(MSP),其被耦合到所述存儲器并且被布置為:將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;識別潛在地導致針對讀取自目標模擬存儲單元的第二電壓電平的失真的模擬存儲單元的子集;估計在所述目標模擬存儲單元被編程的第一瞬時由在所述子集中的模擬存儲單元導致的針對所述目標模擬存儲單元的第一失真度與所述目標模擬存儲單元被讀取的第二瞬時由在所述子集中的模擬存儲單元導致的針對所述目標模擬存儲單元的第二失真度之間的差;以及使用所估計的差,校正讀取自所述目標模擬存儲單元的第二電壓電平。根據本發明的一個實施方案,還提供了一種數據存儲裝置,包括:存儲器,其包含多個模擬存儲單元;以及存儲器信號處理器(MSP),其被耦合到所述存儲器并且被布置為:將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,該第二電壓電平受到交叉耦合干擾的影響,該交叉耦合干擾導致所述第二電壓電平不同于所述相應的第一電壓電平;估計交叉耦合系數,其通過處理所述第二電壓電平而將所述模擬存儲單元之間的交叉耦合干擾量化;以及使用所估計的交叉耦合系數,從所讀取的第二電壓電平重構存儲在該組模擬存儲單元中的數據。從下文對本發明的實施方案的詳述,結合如下附圖,將可更完整地理解本發明。
圖1是示意性地示出了根據本發明的一個實施方案的用于存儲器信號處理的系統的框圖;圖2是示意性地示出了根據本發明的一個實施方案的存儲單元陣列的示意圖;圖3至圖8是示意性地示出了根據本發明的實施方案的用于估計和消除存儲單元陣列中的失真的方法的流程圖,以及圖9是示意性地示出了根據本發明的實施方案的用于在存儲單元陣列中刷新數據的方法的流程圖。
具體實施例方式概述本發明的實施方案提供了用于估計和補償在模擬存儲單元中的失真的方法和系統。在下文描述的實施方案中,數據被存儲為電荷電平,其被寫入模擬存儲單元陣列。電荷電平確定存儲單元的相應的門限電壓。存儲器信號處理器(MSP)從存儲單元讀取電壓電平,并且自適應地估計包含在其中的失真度。MSP通常產生所校正的電壓,以此校正、消除抑或補償失真。使用所校正的電壓重構存儲在存儲單元中的數據。 本文描述了幾種示例性的失真估計和消除方法。一些方法是判決導向的,也即,使用硬判決分割過程的輸出。在一些情況下,失真估計過程考慮的是,相對于被干擾存儲單元被編程的時刻,潛在干擾存儲單元被編程的時刻。其他方法是基于位于存儲單元陣列中的同一列(位線)中的其他存儲單元的失真,來預測在某個存儲單元中的失真。一些公開的方法校正了在失真形成時由陣列中的其他存儲單元的操作所導致的擾動噪聲。在一些實施方案中,使用編程和驗證(P&V)過程對存儲單元進行編程,且MSP對在編程時的失真做補償,或者既對在編程時也對在讀存儲單元時的失真做補償。作為對失真進行補償的補充或替代,MSP可以響應于所估計的失真而執行其他種類的動作。例如,當所估計的失真超過最大的可容忍的失真度時,MSP可以刷新(即,重新編程)數據。本文所描述的失真估計和補償方法可被用于以幾種途徑改進存儲設備的數據存儲性能。例如,可以降低當重構數據時達到的誤差概率,可以增大可達到的存儲容量,和/或可以延長可達到的數據保持期。改進的性能可以接著用于降低存儲設備的成本和復雜度和/或增大它們的編程速度。這些改進在對失真特別敏感的MLC設備中尤其重要。系統描述圖1是示意性地示出了根據本發明的一個實施方案的用于存儲器信號處理的系統20的框圖。系統20可用于不同的主機系統和設備中,例如用于計算設備、蜂窩電話或其他通信終端、可移除存儲器模塊(“U盤”設備)、數碼相機、音樂和其他媒體播放器、和/或任何其他存儲和取出數據的系統或設備。系統20包括存儲設備24,其將數據存儲在存儲單元陣列28中。存儲陣列28包括多個模擬存儲單元32。在本專利申請的上下文中以及在權利要求書中,術語“模擬存儲單元”用于描述保持諸如電壓或電荷之類的物理參數的連續模擬值的任意的存儲單元。陣列28可以包括任何種類的模擬存儲單元,舉例而言,例如,NAND、N0R和CTF閃存單元、PCM、NR0M、FRAM、MRAM和DRAM單元。存儲在存儲單元中的電荷電平和/或寫入與讀出存儲單元的模擬電壓在本文中統稱為模擬值。用于存儲在存儲設備24中的數據被提供給所述設備并且緩存在數據緩沖器36中。然后所述數據被轉換成模擬電壓并且使用讀/寫(R/W)單元40寫入存儲單元32中,該讀/寫單元40的功能將在下文中進一步詳述。當從陣列28讀出數據時,讀/寫單元40將電荷以及由此的存儲單元32的模擬電壓轉換成數字樣本。每個數字樣本具有一個或多個比特的分辨率。這些樣本被緩存在緩沖器36中。存儲設備24的操作和時序均由控制邏輯48所管理。數據進出存儲設備24的存儲和取出,由存儲器信號處理器(MSP) 52執行。如下文將詳示,MSP 52使用新穎的方法,以用于估計和降低在存儲單元陣列28中的各種不同的失
真效應。在一些實施方案中,MSP 52包括編碼器/解碼器64,該編碼器/解碼器64使用ECC對將要寫到設備24的數據進行編碼,而當把數據從設備24讀出時對所述ECC進行解碼。信號處理單元60處理被寫入設備24和從設備24取出的數據。具體地,信號處理單元60估計對從存儲單元32讀出的電壓有影響的失真。信號處理單元60可以補償抑或減少所估計的失真的效應。替代地,信號處理單元60可以基于所估計的失真而采取其他種類的行動,在下文將詳述。MSP 52包括數據緩沖器72,該數據緩沖器72由信號處理單元60用于存儲數據以及用于與存儲設備24交互。MSP 52還包括輸入/輸出(I/O)緩沖器56,該輸入/輸出(I/O)緩沖器56在所述MSP和所述主機之間形成接口。控制器76管理MSP 52的操作和定時。信號處理單元60和控制器76可以用硬件實現。替代地,信號處理單元60和/或控制器76可以包括運行合適的軟件的微處理器,或者硬件和軟件元素的組合。
圖1中的配置是示例性的系統配置,其純粹是為概念清楚而示出的。也可以使用任意其他合適的配置。為清楚起見,對于理解本發明的原理并非必要的元件,例如各種接口、尋址電路、定時和定序電路、數據置亂電路和調試電路,均從附圖中省略。在圖1中所示的示例性系統配置中,存儲設備24和MSP 52被實現為兩個單獨的集成電路(1C)。然而,在替代的實施方案中,所述存儲設備和MSP可被集成在單一 IC中或片上系統(SoC)中。在一些實施方式中,單個MSP 52可被連接到多個存儲設備24。進一步作為替代,MSP 52的某些或全部功能可以用軟件實現,并且由主機系統的處理器或其他元件來執行。實現系統20的某些實施方案的另外的架構性的方面,在上文所引用的美國臨時專利申請60/867,399中,并且在以援引方式全部納入本文中的提交于2007年5月10日的題為 “Combined Distortion Estimation and Error Correction Coding for MemoryDevices”的PCT專利申請中,得以更詳細地描述。在典型的寫操作中,從主機接收待要寫入存儲設備24的數據,并將所述數據緩存在I/o緩沖器56中。編碼器/解碼器64編碼所述數據,且所編碼的數據通過數據緩沖器72傳送到存儲設備24。在將數據傳送到存儲設備用于編程之前,MSP 52可以預處理該數據。在設備24中,數據臨時存儲在緩沖器36中。讀/寫單元40將數據轉換成模擬電壓值,并且將數據寫入陣列28的適當的存儲單元32中。在典型的讀操作中,讀/寫單元40從適當的存儲單元32讀出模擬電壓值并且將所述電壓轉換為軟數字樣本。所述樣本被緩存在緩沖器36中,并且傳送到MSP 52的緩沖器72。在一些實施方案中,MSP 52的信號處理單元60將電壓樣本轉換為數據位。如上所述,可能的門限電壓的范圍被分為兩個或更多個區域,其中每個區域表示一個或多個數據位的某一組合。當讀取存儲單元時,信號處理單元60典型地將讀取的電壓樣本的幅度與一組判決門限相比較,以便確定讀取的電壓所落入的區域,且從而確定存儲在存儲單元中的數據位。數據塊從緩沖器72傳送到信號處理單元60,而編碼器/解碼器64對這些塊的ECC進行解碼。已解碼的數據通過1/0緩沖器56傳送到主機。在一些實施方案中,ECC解碼器包括軟解碼器,而信號處理單元60將電壓樣本轉換成用于解碼ECC的軟解碼度量。另外,信號處理單元60使用下文描述的方法估計在所讀取的樣本中存在的失真。在一些實施方案中,MSP 52在數據被寫入存儲單元之前將其置亂,并且將從存儲單元讀取的數據反置亂,以便改進失真估計的性能。存儲陣列結構和失真機制圖2是示意性地示出了根據本發明的一個實施方案的存儲單元陣列28的示意圖。雖然圖2涉及連接在特定陣列配置中的閃存單元,但本發明的原理也可應用于其他類型的存儲單元和其他陣列配置。在上文背景技術部分中所引用的參考文獻中,描述了一些示例性的存儲單元類型和陣列配置。陣列28的存儲單元32被布置在具有多個行和多個列的柵格中。每個存儲單元32包括浮置柵極金屬氧化物半導體(MOS)晶體管。通過向晶體管的柵極、源極和漏極施加適當的電壓電平,可以將一定數量的電荷(電子或空穴)存儲在一特定的存儲單元中。存儲在所述存儲單元中的值可通過測量所述存儲單元的門限電壓來讀取,所述門限電壓被定義為使所述晶體管導通而需要向所述晶體管的柵極施加的最小電壓。所讀取的門限電壓與存儲在所述存儲單元中的電荷成比例。
在圖2的示例性配置中,每一行中的晶體管的柵極由字線80連接。每一列中的晶體管的源極由位線84連接。在一些實施方案中,例如在一些NOR單元設備中,源極直接連接到位線。在替代的實施方案中,例如在一些NAND單元設備中,位線被連接到多串浮置柵極單元。通常,讀/寫單元40,通過將變化的電壓電平施加到特定的存儲單元32的柵極(也即,施加到所述存儲單元所連接到的字線),并且檢查所述存儲單元的漏極電流是否超過了某一門限(也即,所述晶體管是否導通),來讀取該特定的存儲單元32的門限電壓。讀/寫單元40通常向所述存儲單元所連接到的字線施加一系列的不同的電壓值,并且確定為使漏極電流超過所述門限的最低柵極電壓值。通常,讀/寫單元40同時讀取一整行的存儲單元,這一整行的存儲單元也被稱為頁。在一些實施方案中,讀/寫單元40通過將所述存儲單元的位線預充電到某一電壓電平來測量漏極電流。一旦柵極電壓被設定到期望值,漏極電流就使得位線電壓經存儲單元放電。在施加柵極電壓之后的幾毫秒,讀/寫單元40測量位線電壓,并且將位線電壓與門限進行比較。在一些實施方案中,每個位線84被連接到相應的讀出放大器,該讀出放大器將位線電流放大并且將該電流轉換為電壓。使用比較器將被放大的電壓與門限進行比較。上文所描述的電壓讀取方法是一種示例性方法。作為替代,讀/寫單元40可以使用任何其他適合的方法來用于讀取存儲單元32的門限電壓。例如,讀/寫單元40可以包括一個或多個模數轉換器(ADC),該模數轉換器將位線電壓轉換成數字樣本。存儲單元陣列通常被分為多個頁,也即,多組同時編程和讀取的存儲單元。在一些實施方案中,每個頁包括陣列的一整行。在替代性的實施方案中,每個行可被分為兩個或更多個頁。對存儲單元的擦除通常在包含多個頁的塊中執行。典型的存儲設備可以包括數千個擦除塊。盡管也可以使用其它塊尺寸,典型的擦除塊是128頁的數量級,每個擦除塊包括數千個存儲單元。存儲在存儲單元中的電荷電平和讀取自存儲單元的電壓可能包含多種類型的失真,這些失真是由陣列28中的不同的失真機制所導致的。一些失真機制影響了存儲在存儲單元中的實際電荷,而其他機制使得所讀出的電壓失真。例如,陣列中的相鄰存儲單元之間的電交叉耦合會修改特定存儲單元中的門限電壓。此效應被稱為交叉耦合失真。又例如,電荷會隨著時間的推移而從存儲單元中泄漏。這種老化效應的結果是,所述存儲單元的門限電壓將隨著時間的推移而從最初寫入的值漂移。另一種類的失真,通常被稱為擾動噪聲,是由陣列中的某些存儲單元上的存儲器存取操作(例如,讀、寫或擦除操作)而導致的,這引起了對其他存儲單元中的非預期的電荷改變。作為又一實例,可以由相鄰存儲單元(例如在同一 NAND存儲單元串中的其他存儲單元)中的電荷,通過一種稱為背景圖案相關性(BH))的效應,來影響特定存儲單元的源極_漏極電流。失真估計和消除方法存儲單元32中的失真降低了存儲設備的性能,例如重構數據時的誤差概率、可達到的存儲容量以及可達到的數據保持期。性能降低在MLC設備中尤其嚴重,因為在MLC設備中表示數據的不同電壓電平之間的差相對較小。在許多情況下,失真度隨著時間的推移而變化,且在一個存儲單元和另一個存儲單元之間也有所不同。從而,以自適應的方式估計失真并且基于所估計的失真采取行動是很有好處的。MSP 52可以采用各種不同的方法來估計存儲單元32中的失真,并且使用所估計的失真度來消除或補償失真。作為對失真進行補償的補充或替代,MSP可以基于所估計的失真執行其他種類的動作。例如,MSP可以使用所估計的失真來執行數據刷新判決。在一種典型的實現中,MSP估計各個不同的存儲單元組(例如存儲頁)的失真度。當在一特定頁中的失真超過某一可容忍的門限時,MSP對數據進行刷新(也即,重新編程)。又例如,MSP可以使用所估計的失真來評估在某一存儲單元或某組存儲單元中的可達到的存儲容量。基于可達到的容量,MSP可以修改用于在相應的存儲單元中存儲數據的電壓電平的數量和/或ECC。從而,MSP可以自適應地修改存儲單元中存儲數據的密度,以匹配它們的存儲容量,因為它們的存儲容量隨著時間的推移而改變。使用失真估計用于適配存儲設備的存儲密度的一些方面在提交于2007年5月10日的題為“Memory Devicewith Adaptive Capacity”的PCT專利申請中得以描述,該文獻以援引方式全部納入本文。再例如,MSP可以基于所估計的失真而修改判決門限,也即將存儲單元的可能的電壓的范圍分成判決區域的門限。MSP可以調整判決門限值以最小化失真度,以最小化解碼誤差概率或滿足任何其他適合的性能條件。MSP也可以修改ECC解碼度量,例如對數似然比(LLR),該解碼度量由ECC解碼器使用以解碼ECC。這樣的方法例如在上文所引用的PCT申請“Combined Distortion Estimation and Error Correction Coding for Memory Devices,,中得以描述。圖3至8是示意性地示出了根據本發明的實施方案的用于估計和消除存儲單元陣列28中的失真的方法的流程圖。在下文的說明中,假設MSP逐頁地讀取存儲單元并估計失真度。然而,在替代性的實 施方案中,MSP可以讀取并處理任意其他存儲單元組。例如,MSP可以處理整個擦除塊或甚至單獨的存儲單元。圖3是示意性地示出了根據本發明的一個實施方案的一種用于估計和消除交叉耦合失真的方法的流程圖。在一些情況下,例如在閃存中,交叉耦合失真是由存儲在鄰近存儲單元的電荷產生的電場的電磁耦合所導致的。在其他情況下,例如在NROM存儲單元中,交叉耦合失真可由其他原因導致,例如由于共享地線導致的存儲單元的源電壓的上升。讀取自受交叉耦合影響的某一存儲單元i的電壓一般可寫為:[Uvi = g(Ci)+f (Ci, Ci)其中g(Ci)表示當所有潛在干擾存儲單元均被擦除時從所述存儲單元讀取的電壓,Ci表示在存儲單元i中的電荷電平,f (Ci, Ci)表示當存儲單元電荷是Ci時的稱合效應,而Ci表示相鄰存儲單元的電荷電平的集合,j ^ io在一些實際情況下,交叉耦合可以用線性函數來建模,以使得[〕]
i*i其中I^i表示交叉耦合系數,也即,從存儲單元j到存儲單元i的交叉耦合幅度。系數值有時可以取決于存儲單元的電荷電平。在其他情況下,由某一干擾存儲單元導致的交叉耦合既取決于干擾存儲單元的電荷電平,也取決于被干擾存儲單元的電荷電平。在這些情況下,公式[2]可被寫為
[3] Vi=Ii0.Ci+f ({ci; CjI , j Φ i)交叉耦合系數值通常可以從一個單元到另一個單元而變化,也可以隨著溫度、電源電壓和其他條件的變化而變化。在讀取步驟90,圖3的方法始于MSP 52從一存儲單元頁讀取電壓。每個讀取電壓由軟樣本所表示,也即具有兩個或更多個位的分辨率的數字化值。所述MSP從讀取的電壓值生成硬判決。換句話說,所述MSP逐個存儲單元確定最有可能已被寫到存儲單元中的標稱電壓電平。MSP可以將每個讀取電壓和表示不同比特組合的不同標稱電壓值作比較,并且確定最接近于讀取電壓的標稱電壓電平。這種操作通常稱為硬分割。在系數估計步驟94,MSP基于讀取的電壓樣本并基于對應的硬判決,估計交叉耦合系數。在大多數實際情況下,大多數硬判決反映了寫入存儲單元的正確比特組合,只有很少的硬判決是錯誤的。雖然硬判決的錯誤概率不足以用于可靠地重構數據,但其通常足以用于可靠地估計系數。MSP可以使用任何適當的估計方法用于估計交叉耦合系數的值。在許多實際情況下,耦合系數值在整個已處理的存儲單元組中基本恒定。在這些情況下,MSP可以使用本領域公知的各種不同的塊估計技術,這些塊估計技術使用軟電壓樣本的整個集合和對應的硬判決來估計交叉耦合系數。替代地,所述MSP可以使用本領域公知的各種不同的循序估計方法,其循序地(例如逐個樣本地)處理電壓樣本和硬判決,并且收斂成交叉耦合系數的期望值。循序估計方法可以包括,例如最小均方(LMS)過程、遞歸最小二乘(RLS)過程、Kalman過濾過程或者任何其他適合的過程。在一些實施方案下,估計過程試圖減少在讀取電壓和對應的硬判決之間的距離度量(例如歐幾里得距離)。
例如,當使用LMS過程時,MSP可以迭代地估算下述表達式
權利要求
1.一種用于操作存儲器的方法,包括: 將數據作為相應的第一電壓電平存儲在所述存儲器的一組模擬存儲單元中; 在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平; 識別潛在地導致針對讀取自目標模擬存儲單元的第二電壓電平的失真的模擬存儲單元的子集; 基于數據被存儲在所述模擬存儲單元中的相應時間和數據被存儲在所述目標模擬存儲單元中的時間之間的關系,將所述子集中的模擬存儲單元分成多個類; 為所述類的每一個估計由該類中的模擬存儲單元針對所述目標模擬存儲單元中的第二電壓電平所導致的相應失真; 使用為所述類中的一個或多個類中的每一個所估計的相應失真,校正讀取自所述目標模擬存儲單元的第二電壓電平;以及 基于所校正的第二電壓電平,重構在所述目標模擬存儲單元中存儲的數據。
2.根據權 利要求1所述的方法,其中存儲數據和讀取第二電壓電平包括應用編程與驗證(P&V)過程。
3.根據權利要求1所述的方法,其中分類模擬存儲單元包括識別所述子集中的比所述目標模擬存儲單元更為新近地將數據存儲在其中的模擬存儲單元,且其中校正第二電壓電平包括基于僅在所識別的模擬存儲單元中的失真來校正讀取自所述目標模擬存儲單元的第二電壓電平。
4.根據權利要求1所述的方法,其中分類模擬存儲單元包括:定義第一類,其包括在所述子集中的比所述目標模擬存儲單元更為新近地將數據存儲在其中的模擬存儲單元;定義第二類,其包括在所述子集中的比所述目標模擬存儲單元更早地將數據存儲在其中的模擬存儲單元;定義第三類,其包括在所述子集中的與所述目標模擬存儲單元并發地將數據存儲在其中的模擬存儲單元。
5.根據權利要求1所述的方法,其中讀取第二電壓電平、估計失真和校正第二電壓電平包括,以第一分辨率處理讀取自所述目標模擬存儲單元的第二電壓電平,并且以比所述第一分辨率更不精確的第二分辨率處理讀取自所述子集中的模擬存儲單元的第二電壓電平。
6.根據權利要求1所述的方法,其中存儲數據包括存儲所述數據被存儲在所述模擬存儲單元時的時間標記,且其中分類模擬存儲單元包括查詢所存儲的標記。
7.根據權利要求1所述的方法,其中估計失真包括響應于選自下列一組參數中的至少一個參數估計失真度,所述參數為:所述模擬存儲單元的編程次數、存儲在所述模擬存儲單元中的數據、所述模擬存儲單元相對于所述目標模擬存儲單元的位置以及所述目標模擬存儲單元最近已經經歷的編程-擦除循環的次數。
8.一種數據存儲裝置,包括: 接口,其操作性地與包含多個模擬存儲單元的存儲器通信;以及 存儲器信號處理器(MSP),其被耦合到所述接口并且被布置為:將數據作為相應的第一電壓電平存儲在一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;識別潛在地導致針對讀取自目標模擬存儲單元的第二電壓電平的失真的模擬存儲單元的子集;基于數據被存儲在所述模擬存儲單元中的相應時間和數據被存儲在所述目標模擬存儲單元中的時間之間的關系,將所述子集中的模擬存儲單元分成多個類;為所述類的每一個估計由該類中的模擬存儲單元針對所述目標模擬存儲單元中的第二電壓電平所導致的相應失真;使用為所述類中的一個或多個類中的每一個所估計的相應失真,校正讀取自所述目標模擬存儲單元的第二電壓電平;以及基于所校正的第二電壓電平,重構在所述目標模擬存儲單元中存儲的數據。
9.根據權利要求8所述的裝置,其中所述MSP被布置為:通過應用編程與驗證(P&V)過程存儲所述數據和讀取所述第二電壓電平。
10.根據權利要求8所述的裝置,其中所述MSP被布置為:識別所述子集中的比所述目標模擬存儲單元更為新近地將數據存儲在其中的模擬存儲單元,且基于僅在所識別的模擬存儲單元中的失真來校正讀取自所述目標模擬存儲單元的第二電壓電平。
11.根據權利要求8所述的裝置,其中所述MSP被布置為:定義第一類,其包括在所述子集中的比所述目標模擬存儲單元更為新近地將數據存儲在其中的模擬存儲單元;第二類,其包括在所述子集中的比所述目標模擬存儲單元更早地將數據存儲在其中的模擬存儲單元;第三類,其包括在所述子集中的與所述目標模擬存儲單元并發地將數據存儲在其中的模擬存儲單元。
12.根據權利要求8所述的裝置,其中所述MSP被布置為:以第一分辨率處理讀取自所述目標模擬存儲單元的第二電壓電平,并且以比所述第一分辨率更不精確的第二分辨率處理讀取自所述子集中的模擬存儲單元的第二電壓電平。
13.根據權利要求8所述的裝置,其中所述MSP被布置為:存儲在存儲數據時該數據被存儲在所述模擬存儲單元時的時間標記,且查詢所存儲的標記以對所述模擬存儲單元進行分類。
14.根據權利要求8所述 的裝置,其中所述MSP被布置為:響應于選自下列一組參數中的至少一個參數來估計失真,所述參數為:所述模擬存儲單元的編程次數、存儲在所述模擬存儲單元中的數據、所述模擬存儲單元相對于所述目標模擬存儲單元的位置以及所述目標模擬存儲單元最近已經經歷的編程-擦除循環的次數。
15.一種數據存儲裝置,包括: 存儲器,其包含多個模擬存儲單元;以及 存儲器信號處理器(MSP),其被耦合到所述存儲器并且被布置為:將數據作為相應的第一電壓電平存儲在一組模擬存儲單元中;在存儲所述數據之后,從所述模擬存儲單元讀取相應的第二電壓電平,所述第二電壓電平中的至少一些不同于所述相應的第一電壓電平;識別潛在地導致針對讀取自目標模擬存儲單元的第二電壓電平的失真的模擬存儲單元的子集;基于數據被存儲在所述模擬存儲單元中的相應時間和數據被存儲在所述目標模擬存儲單元中的時間之間的關系,將所述子集中的模擬存儲單元分成多個類;為所述類的每一個估計由該類中的模擬存儲單元針對所述目標模擬存儲單元中的第二電壓電平所導致的相應失真;使用為所述類中的一個或多個類中的每一個所估計的相應失真,校正讀取自所述目標模擬存儲單元的第二電壓電平;以及基于所校正的第二電壓電平,重構在所述目標模擬存儲單元中存儲的數據。
全文摘要
用于存儲設備中的失真估計和消除的方法,包括將數據作為相應的第一電壓電平存儲在存儲器的模擬存儲單元中;存儲數據后從模擬存儲單元讀取相應的第二電壓電平,至少一些第二電壓電平不同于第一電壓電平;識別導致讀取自目標模擬存儲單元的第二電壓電平失真的模擬存儲單元的子集;基于數據存儲在模擬存儲單元的時間和數據存儲在目標模擬存儲單元的時間的關系,將子集中的模擬存儲單元分成多個類;為每一個類估計該類中的模擬存儲單元針對目標模擬存儲單元的第二電壓電平所導致的失真;使用為類中的一個或多個類中的每一個所估計的失真,校正讀取自目標模擬存儲單元的第二電壓電平;基于校正的第二電壓電平,重構目標模擬存儲單元中存儲的數據。
文檔編號G11C16/26GK103208309SQ201210303689
公開日2013年7月17日 申請日期2007年5月10日 優先權日2006年5月12日
發明者O·沙爾維, N·薩莫, E·格吉, A·梅斯羅斯 申請人:蘋果公司