Nand flash存儲器數據保持錯誤恢復方法
【技術領域】
[0001]本發明屬于存儲技術領域,尤其涉及一種NAND FLASH存儲器保持錯誤恢復方法。
【背景技術】
[0002]NAND FLASH存儲器得益于其具有高吞吐、低耗電、耐震、穩定性高、耐低溫、發熱量小、工作噪音低等眾多優勢,在手機、數碼相機、U盤、MP3,平板電腦、個人電腦、高性能計算機、軍工產業等領域擁有廣闊的市場前景。
[0003]為滿足市場對NAND Flash存儲器容量日益增長的迫切需求,NAND FLASH呈現的工藝尺寸不斷縮小以及多電平存儲單元(MLC,Mult1-Level Cell)技術廣泛運用兩大發展趨勢。然而在有效提升存儲容量,降低單位比特數據存儲成本的同時,NAND FLASH同樣面臨愈發嚴重的可靠性問題。
[0004]例如,圖1為一款經典商用MLC NAND FLASH存儲器的數據保持誤碼率與存儲器所經歷編程/擦除次數以及數據的存儲時間的變化趨勢的曲線示意圖。如圖1所示,對于經歷不同編程/擦除次數的NAND FLASH存儲器,其數據保持誤碼率均隨著存儲器數據的存儲時間的增加而顯著增加,從而造成嚴重的數據可靠性問題。
[0005]在構造方面,NAND FLASH存儲器是基于浮柵電荷存儲實現數據的保存,如圖2 (1)所示為編程之后NANDFLASH存儲器存儲單元的浮柵電荷數量示意圖。然而,如圖2(2)所示為數據存儲期間存儲單元浮柵電荷丟失示意圖,在數據存儲期間浮柵電荷的丟失將會導致數據保持錯誤產生。隨著NAND FLASH工藝尺寸不斷縮小,存儲單元浮柵結構的幾何尺寸不斷縮小,導致浮柵電荷存儲數量的降低,與此同時,MLC技術的運用使得數據對浮柵電荷數量的變化更加敏感,從而導致數據保持誤碼率的迅速增加。目前,NAND FLASH保持錯誤已經成為制約NAND FLASH存儲器數據可靠性的關鍵因素。
【發明內容】
[0006]本發明旨在至少在一定程度上解決相關技術中的技術問題之一。為此,本發明需要提出一種NAND FLASH存儲器數據保持錯誤恢復方法,該恢復方法可以實現NAND FLASH存儲器數據保持錯誤恢復,有效提升NAND FLASH存儲器數據可靠性。
[0007]本發明還提出另一種NAND FLASH存儲器數據保持錯誤恢復方法。
[0008]為了解決上述問題,本發明提出一種NAND FLASH存儲器數據保持錯誤恢復方法,所述NAND FLASH存儲器為SLC(Single-Level Cell,單電平存儲單元)NAND FLASH存儲器,該方法包括以下步驟:S1,判斷NAND FLASH存儲器的數據讀取是否失效,并在數據讀取失效時進入步驟S2 ;S2,讀取失效數據所在數據塊中的頁數據;以及S3,將所述頁數據回寫至所述失效數據所在數據塊中相對應的數據頁中;其中,在所述頁數據回寫時,誘發所述NANDFLASH存儲器的浮柵電荷再注入以恢復所述失效數據所在數據塊存在的保持錯誤。
[0009]根據本發明的NAND FLASH存儲器數據保持錯誤恢復方法,針對SLC NAND FLASH存儲器,在數據讀取失效時,讀取失效數據所在數據塊中的頁數據,并將頁數據回寫至失效數據所在數據塊中相對應的數據頁中,在頁數據回寫時,誘發NAND FLASH存儲器的浮柵電荷再注入以補償數據存儲期間浮柵電荷的損失,從而可以恢復失效數據所在數據塊存在的保持錯誤,降低數據保持錯誤率,提高NAND FLASH存儲器數據可靠性。
[0010]為了實現更加顯著的浮柵電荷補償,上述方法還包括:重復步驟S2-S3,直至達到第一預設次數。
[0011]進一步地,在進行一定的回寫操作之后,上述方法還包括:讀取所述失效數據所在數據塊中的數據;對讀取的數據進行ECC(Error Correcting Code,錯誤檢查和糾正碼)解碼;如果ECC解碼成功,則所述失效數據所在數據塊的保持錯誤成功恢復。
[0012]如果ECC解碼失敗,進一步判斷解碼次數是否達到預設嘗試次數;如果達到所述預設嘗試次數,則所述失效數據所述數據塊的保持錯誤恢復失敗;如果未達到所述預設嘗試次數,則返回步驟S2。
[0013]為了解決上述問題,本發明另一方面還提出一種NAND FLASH存儲器數據保持錯誤恢復方法,所述NAND FLSH存儲器為MLC NAND FLASH存儲器,所述方法包括以下步驟:S10,判斷NAND FLASH存儲器的數據讀取是否失效,并在數據讀取失效時進入步驟S20 ;S20,讀取失效數據所在數據塊中的LSB(Least Significant Bit,最低有效比特)頁數據;以及S30,將所述LSB頁數據回寫至所述失效數據所在數據塊中相對應的LSB數據頁中;其中,在所述頁數據回寫時,誘發所述NAND FLASH存儲器的浮柵電荷再注入以恢復所述失效數據所在數據塊存在的保持錯誤。
[0014]根據本發明的NAND FLASH存儲器數據保持錯誤恢復方法,針對MLC NAND FLASH存儲器,在數據讀取失效時,讀取失效數據所在數據塊中的LSB頁數據,并將LSB頁數據回寫至失效數據所在數據塊中相對應的LSB數據頁中,在頁數據回寫時,誘發NAND FLASH存儲器的浮柵電荷再注入以補償數據存儲期間浮柵電荷的損失,從而可以恢復失效數據所在數據塊存在的保持錯誤,降低數據保持錯誤率,提高NAND FLASH存儲器數據可靠性。
[0015]為了實現更加顯著的浮柵電荷補償,上述方法還包括:重復步驟S20-S30,直至達到第二預設次數。
[0016]另外,對于MLC NAND FLASH存儲器,在基于LSB刷新的保持錯誤恢復過程中,在步驟S20之后,上述方法還包括:S40,對所述LSB頁數據進行ECC解碼,并當ECC解碼成功時,進入步驟S30。
[0017]進一步地,為了實現更加顯著的浮柵電荷補償,上述方法還包括:重復步驟S30,直至重復達到第三預設次數。
[0018]經過回寫操作之后,可以進行ECC解碼嘗試,具體地,上述方法還包括:讀取所述失效數據所在數據塊中的數據;對讀取的數據進行ECC解碼;如果ECC解碼成功,則所述失效數據所在數據塊的保持錯誤成功恢復;如果ECC解碼失敗,進一步判斷解碼次數是否達到預設嘗試次數;如果未達到所述預設嘗試次數,則返回步驟S30。如果達到所述預設嘗試次數,則所述失效數據所述數據塊的保持錯誤恢復失敗。
【附圖說明】
[0019]圖1是相關技術中一款MLC NAND FLASH存儲器的數據保持誤碼率與存儲器所經歷編程/擦除次數以及數據的存儲時間的變化趨勢的曲線示意圖;
[0020]圖2中的⑴和⑵是相關技術中NAND FLASH存儲器編程之后和數據保存期間存儲單元浮柵電荷變化示意圖;
[0021]圖3是根據本發明的一個實施例的NAND FLASH存儲器的浮柵電荷再注入補充浮柵電荷損失的示意圖;
[0022]圖4是根據本發明的一個實施例的NAND FLASH存儲器數據保持錯誤恢復方法的流程圖
[0023]圖5是根據本發明的另一個實施例的NAND FLASH存儲器數據保持錯誤恢復方法的流程圖;
[0024]圖6中的(1)、(2)和(3)是根據本發明的一個具體實施例的在MLC NAND FLASH存儲器運用過程中在LSB頁數據被回寫時器件陣列的電壓偏置示意圖;
[0025]圖7中的⑴和⑵是根據本發明的另一個具體實施例的MLC NAND FLASH存儲器的LSB和MSB編程算法的示意圖;
[0026]圖8是根據本發明的再一個具體實施例的MLC NAND FLASH存儲器數據保持錯誤恢復的操作流程圖;
[0027]圖9是根據本發明的再一個具體實施例的SLC NAND FLASH存儲器的數據保持錯誤恢復過程的流程圖;
[0028]圖10是通過圖8所示的數據保持錯誤恢復之后的保持錯誤率對比示意圖;
[0029]圖11是根據本發明的一個具體實施例的NAND FLASH存儲器的MSB頁數據錯誤率與LSB頁數據錯誤率比值對磨損程度以及保持時間的變化趨勢示意圖;以及
[0030]圖12是根據本發明的另一個具體實施例的MLC NAND FLASH存儲器的數據保持錯誤恢復過程的流程圖。
【具體實施方式】
[0031]下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,旨在用于解釋本發明,而不能理解為對本發明的限制。
[0032]針對【背景技術】中提到的NAND FLASH存儲器在數據保持期間浮柵電荷的丟失將會導致數據錯誤產生,在理論上,如圖2所示,如果適當補償數據存儲期間浮柵電荷數量的損失,如圖3所示,通過浮柵電荷再注入補償浮柵電荷損失,可以有效地實現數據保持錯誤恢復。針對小尺寸NAND FLASH存儲器數據保持錯誤率升高的問題,本發明實施例提出一種通過浮柵電荷再注入激勵實現NAND FLASH存儲器數據保持錯誤恢復方法,有效降低存儲器數據保持錯誤率,提升小尺寸NAND FLASH存儲器數據可靠性。
[0033]下面參照附圖描述根據本發明實施例提出的NAND FLASH存儲器數據保持錯誤恢復方法。
[0034]圖4為根據本發明的一個實施例的NAND FLASH存儲器數據保持錯誤恢復方法的流程圖,其中,NAND FLASH存儲器為SLC NAND FLASH存儲器,即該NAND FLASH存儲器采用單電平存儲單元,如圖4所示,該方法包括以下步驟:
[0035]S1,判斷NAND FLASH存儲器的數據讀取是否失效,并在數據讀取