TWI455145B - 用於非依電性記憶體中之資料錯誤復原之方法、裝置及物品 - Google Patents

用於非依電性記憶體中之資料錯誤復原之方法、裝置及物品 Download PDF

Info

Publication number
TWI455145B
TWI455145B TW098141707A TW98141707A TWI455145B TW I455145 B TWI455145 B TW I455145B TW 098141707 A TW098141707 A TW 098141707A TW 98141707 A TW98141707 A TW 98141707A TW I455145 B TWI455145 B TW I455145B
Authority
TW
Taiwan
Prior art keywords
memory
data
memory cells
specified range
binary data
Prior art date
Application number
TW098141707A
Other languages
English (en)
Other versions
TW201035984A (en
Inventor
Richard L Coulson
Albert Fazio
Jawad B Khan
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of TW201035984A publication Critical patent/TW201035984A/zh
Application granted granted Critical
Publication of TWI455145B publication Critical patent/TWI455145B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Detection And Correction Of Errors (AREA)

Description

用於非依電性記憶體中之資料錯誤復原之方法、裝置及物品
本發明係關於非依電性記憶體中之資料錯誤復原。
諸如快閃記憶體等的某些類型之固態非依電性記憶體將某一量的電荷儲存在記憶單元,而記錄二進制資料。當自這些基於電荷的非依電性記憶體中之一非依電性記憶體讀取資料時,比較將被儲存電荷之電壓位準與一參考電壓。自該記憶單元讀取的資料之二進制值係取決於該被儲存電荷之電壓是高於或低於該參考電壓。然而,因為被儲存電荷是一種類比現象,所以被儲存電荷的實際值可能不正好是預期值,且於讀取資料時可能發生錯誤。可將錯誤更正碼(Error Correcting Code(ECC))單元用來偵測並更正這些錯誤中之某些錯誤,但是錯誤有時太多,而無法以此種方式更正所有的錯誤。當發生此種情況時,資料可能永久性地丟失。
當一錯誤更正碼(ECC)單元發現一固態非依電性記憶體裝置中之無法被更正的錯誤時,可嘗試使用一程序來找出並更正該等錯誤。該程序可先識別可能含有錯誤的“低信賴度”記憶單元,然後根據各種準則而決定那些記憶單元中之哪一資料較有可能是正確的。然後可以該ECC單元檢查該新資料,以便驗證該新資料是正確到足以讓該ECC單元更正任何其餘的錯誤。
在下文之說明中,述及了許多特定細節。然而,我們應可了解:可在沒有這些特定細節的情形下實施本發明的實施例。在其他的情形中,並未詳細示出習知的電路、結構、及技術,以便不會模糊了對本發明說明的了解。
提及“一實施例”、“一個實施例”、“例示實施例”、“各實施例”等的詞語時,意指所述本發明之實施例可包含特定特徵、結構、或特性,但是並非每一實施例都必然包含該等特定特徵、結構、或特性。此外,某些實施例可具有在其他實施例中所述的特徵中之某些特徵或所有特徵,或可不具有在其他實施例中所述的特徵中之任何特徵。
在下文的說明及申請專利範圍中,可使用術語“被耦合”及“被連接”以及其派生詞。我們應可了解:這些術語將不被用來作為彼此的同義字。更確切地說,在特定實施例中,“被連接”被用來指示兩個或更多個元件相互在實體上或電氣上直接接觸。“被耦合”被用來指示:兩個或更多個元件相互配合或相互作用,但是該兩個或更多個元件可以在或可以不在實體上或電氣上直接接觸。
在申請專利範圍中使用時,除非另有指定,否則將“第一”、“第二”、及“第三”等的普通形容詞用來描述常見的元件時,只是指示正提到類似元件之不同的例子,且其用意並不意味著所述及的該等元件必須按照某一時間順序、空間順序、某一等級、或任何其他方式。
可以硬體、韌體、及軟體的一組合或任何組合實施本發明之各實施例。亦可將本發明實施為電腦可讀取的媒體中所含的指令,且一或多個處理器可讀取及執行該等指令,而能夠執行本發明中述及的操作。電腦可讀取的媒體可包括用來儲存、傳輸、及(或)接收一或多個電腦可讀取的形式的資訊之任何機構。例如,電腦可讀取的媒體可包括諸如(但不限於)唯讀記憶體(Read Only Memory(ROM))、隨機存取記憶體(Random Access Memory(RAM))、磁碟儲存媒體、光學儲存媒體、或快閃記憶體裝置等的實體儲存媒體。電腦可讀取的媒體亦可包括諸如(但不限於)電磁信號、光信號、或聲音載波信號等的為了將該等指令標碼而被調變之傳播信號。
在各實施例中,如果在自基於電荷的非依電性記憶體中之一部分讀取資料時發現了無法被更正的錯誤,則可接著執行一程序,以便嘗試更正資料。因為可能不知道錯誤資料的精確位置,所以該程序可包含下列步驟:(1)識別該部分的記憶體中之“低信賴度”(Low Confidence(LC))儲存單元(亦即,比其他儲存單元更有可能含有錯誤之儲存單元);(2)決定這些儲存單元中之哪些資料可能是正確的;以及(3)驗證新資料是正確的。可以下列兩種方式中之任一種方式執行對低信賴度儲存單元的識別:(1)找出類比電荷電壓接近一參考電壓的儲存單元;或(2)尋找周圍的儲存單元的電荷位準中已知將造成目標儲存單元中之資料毀損的特別型態。可以下列兩種方式中之任一種方式執行對低信賴度儲存單元中可能是正確之新資料的決定:(1)沿著可能是最佳的一方向且以可能是最佳的量調整這些儲存單元中類比電荷電壓;或(2)嘗試該等LC儲存單元中之資料的隨機值。可以任何適當之方式執行對該新資料是正確的驗證,但是通常可使用一錯誤檢查及更正(Error Checking and Correction(ECC))演算法來執行該驗證,這是因為只要錯誤的數目低於某一臨界值,則該演算法將產生有效的資料。一旦決定了資料的正確值之後,可將該資料重新寫到很可能將不會發生相同的資料毀損問題之另一位置。雖然該程序有繁瑣的計算,但是可將該程序用來復原以其他方式無法復原的資料,例如,可將該程序用來復原固態硬碟(Solid State Drive(SSD))中含有嚴重錯誤之重要資料的資料。
第1圖示出包含根據本發明的一實施例的一固態非依電性記憶體之一系統。所示之系統100包含一處理器110、一主記憶體120、輸入-輸出邏輯130、以及一非依電性(Non-Volatile(NV))記憶體140。在該特定實施例中,係連接該NV記憶體作為一輸入/輸出(I/O)裝置(諸如(但不限於)固態硬碟),但是其他實施例可將該非依電性記憶體放置在該系統中其他位置(諸如(但不限於)該主記憶體本身的一部分或配合一硬碟機而工作之一快取記憶體等的位置)。應可將本發明之各實施例用於不同的應用或一系統中之不同部分,且無論是否在本說明書中明確地述及那些應用及部分,都是如此。
該非依電性記憶體可採用將被儲存電荷用來儲存資料且將一或多個參考電壓用於讀取操作之任何可用類型的非依電性儲存技術。以單一讀取命令讀取整個範圍的連續記憶位置(諸如(但不限於)讀取一"反及"(NAND)快閃記憶體陣列中之一分頁的記憶體)而非以單一讀取命令讀取一個別的位元組或字組之非依電性記憶體可能尤其是有用的。
在第1圖所示之實施例中,非依電性記憶體140可包含一儲存陣列148、以及用來控制對該陣列的諸如讀取、寫入、抹除、及參考電壓調整等的操作之一控制器142。可將控制器142進一步分為諸如錯誤檢查及更正(ECC)單元143、錯誤分析單元144、及參考電壓控制單元145等的其他功能單元。參考電壓控制單元145可提供自該陣列中記憶單元讀取資料時使用的一或多個參考電壓中之每一參考電壓。參考電壓控制單元145亦可視需要而向上及(或)向下調整這些參考電壓,以便執行本發明述及的操作。雖然圖中將非依電性記憶體140中之各單元示為獨立的功能單元,但是該等功能單元中之兩個或更多個功能單元可能共用共同的電路及(或)碼。
當控制器142自處理器110或其他裝置接收一讀取要求時,控制器142可開始自該記憶體陣列中之多個連續位置讀取資料之一操作。該讀取要求可指示該等位置之起始位址,而可在該要求中指定或可以某一其他方式預先界定位置的數目。當該資料被讀取且被放置在一緩衝器時,該ECC單元可偵測該資料中之錯誤,追蹤那些錯誤,且利用其錯誤更正演算法更正能夠被更正的錯誤。當以此種方式偵測到無法被更正的錯誤(亦即,無法被該ECC單元更正的錯誤)時,可將整個連續位址範圍(例如,一分頁或一區段(sector)的記憶體)的資料指定為錯誤的,這是因為該範圍內之無法被更正的錯誤之數量及位置是未知的。
第2圖示出根據本發明的一實施例的一非依電性記憶體陣列之一部分。所示之例子示出一快閃記憶體陣列之一常見表示法,其中每一電晶體代表一記憶單元,而在該記憶單元中,接近閘極的被儲存電荷之量代表該記憶單元中儲存的資料。亦可將快閃記憶體以外的記憶體類型或圖中示出的以外之電路包含在本發明之各實施例中。在所示之該特定實施例中,每一水平線代表用來連接該列中之多個記憶單元(在該例子中,大約有3萬2千個記憶單元,但是該數目在其他實施例中可能有所不同)的閘極之一字線,而每一位元線行中之記憶單元被連接到該行中之每一鄰接記憶單元。該等記憶單元可代表單階儲存單元(Single Level Cell(SLC))或多階儲存單元(Multi-Level Cell(MLC))技術。作為本文件中使用的術語,SLC意指每一記憶單元只儲存一個位元之技術,而MLC意指每一記憶單元儲存兩個或更多個位元之技術。所示之陣列代表一種四階MLC技術,其中將可能的電荷範圍分成被標示為L0至L3之四個子範圍,且每一子範圍代表一種不同的2位元組合(例如,11、10、00、或01)。如果一特定記憶單元中之電荷屬於這四個子範圍中之一子範圍內,則該記憶單元被視為儲存了對應的2位元二進制值。圖中示出該等記憶單元中之15個記憶單元的例示值,而第16個記憶單元上則有一未知的電荷Vt。
在下文之說明中,假定已使用了ECC或其他類型的錯誤偵測及更正演算法,但是該演算法無法更正一特定連續記憶體位址範圍中之所有的錯誤。在這些例子中,已知該範圍內含有錯誤,但是無法確切地知道哪些位址(及因而無法確切地知道哪些記憶單元)含有錯誤。在許多例子中,除了知道錯誤的數目超過了ECC更正所有該等錯誤的能力,並不知這有多少錯誤。在本說明中,假定:整個分頁因為ECC單元無法更正該分頁中所有的錯誤而被視為“失去作用”,但是分頁以外的其他單位(例如,區段)在ECC碼區塊(block)大小使失去作用的該單位有與分頁不同的大小之情形下,亦可被以此種方式檢查。本文件中將使用下列的定義:
(1) 類比電荷值-代表特定記憶單元中儲存的電荷的電壓之值。雖然可將該值表示為離散的數位或二進制數以供處理,但是該值代表類比電荷值,且因而被標示為類比值。
(2)電荷位準值-代表記憶單元的電荷位準子範圍中之一子範圍之值,其中每一子範圍代表一不同的二進制資料值。例如,在四階MLC中,電荷位準值0可代表最低子範圍(最小電荷量),1可代表次一較高子範圍,2可代表又次一較高子範圍,且3可代表最高子範圍(最大電荷量)。
(3)二進制資料值-記憶單元中儲存的資料之二進制值。例如,在四階MLC中,可以電荷位準值0代表二進制值11,可以電荷位準值1代表二進制值10,可以電荷位準值2代表二進制值00,且可以電荷位準值3代表二進制值01。這些特定的轉換值可能是有利的,這是因為自一電荷位準轉變到次一電荷位準時只改變等值二進制值的一個位元,因而將邊界讀取的不確定性降低到只有兩種可能性。然而,亦可使用其他的轉換值。
第3圖是根據本發明的一實施例而更正記憶體中之錯誤的一方法之一流程圖。在流程圖300中,操作310、314、318以及操作311、315代表用來識別被視為失去作用的一分頁的資料中之低信賴度(LC)記憶單元之兩種不同的方式。操作320、324、328以及操作321代表用來嘗試更正那些LC記憶單元中之資料之兩種不同的方式。不論使用識別及更正程序的何種組合,驗證操作330都可以是相同的。
利用型態比對之識別
該程序對應於第3圖所示之操作310、314、318。由於記憶體陣列中使用的愈來愈小之幾何形狀,每一記憶單元中儲存的電荷量可能受到周圍記憶單元中儲存的電荷量之影響,而使電荷量比其預定量增加或減少。請再參閱第2圖所示之例子,具有電荷位準Vt之記憶單元是“目標”記憶單元,其中係檢查周圍記憶單元對Vt的可能影響,而調查該目標記憶單元。一些箭頭指示記憶單元的電荷位準因記憶單元在實體上接近或在電氣上連接到該目標記憶單元而可能影響到電荷Vt的可能記憶單元之一例子。該影響的確切本質以及可能造成影響的特定記憶單元可取決於諸如記憶單元的實體接近程度、記憶單元結構、所使用的半導體材料、以及每一周圍記憶單元及該目標記憶單元中之實際電荷位準等的陣列細節。可針對每一類型的陣列以及記憶單元中之每一型態的電荷分佈而決定此種相互關係。
第4圖示出根據本發明的一實施例而可影響一目標記憶單元之一例示電荷型態。在本文件中,“型態”(“pattern”)是具有預先界定的實體配置、相互間之預先界定的電氣連接、以及記憶單元內之預先界定的電荷位準之一組記憶單元。目標記憶單元是佔用了該實體配置內之一預先界定的位置之一記憶單元,而且也是被檢查以便決定該型態中之其他記憶單元對其可能的影響之記憶單元。可根據型態中之所有記憶單元的電荷位準(其中包括目標記憶單元中之電荷位準)而界定特定的型態。例如,在第4圖中,在該目標記憶單元的兩側上之記憶單元(在相同字線上之鄰接記憶單元)具有電荷位準L3,而緊臨在該目標記憶單元之上及之下的記憶單元(在相同位元線上之鄰接記憶單元)具有電荷位準L2。如果假定該目標記憶單元的正確電荷位準是L0,則這些周圍記憶單元可能使該目標記憶單元中之電荷改變為L1位準(如圖所示),且因而使該目標記憶單元具有電荷L1是該型態的一部分。另一方面,如果假定該目標記憶單元的電荷位準是L2或L3,則該等周圍記憶單元中之電荷可能因與該位準足夠地接近而對該位準影響很小,且因而該配置將不被視為要被尋找的預定型態。在某些實施例中,型態中之任何特定記憶單元之電荷位準可能涵蓋一個以上的位準。將第4圖所示之型態用來作為一個例子,可容許該目標記憶單元的四個鄰接記憶單元中之任一記憶單元具有L2或L3之電荷位準,且此種電荷位準仍將被視為與該型態匹配。
該例子示出具有一特定電荷分佈之一簡單的五記憶單元型態(在相同的字線及位元線上之目標記憶單元及鄰接記憶單元),但是其他的型態可能包含圍繞著該目標記憶單元的記憶單元之不同的配置、及(或)該等記憶單元中之不同的記憶單元數量及(或)該等電荷分佈。雖然可預期將相同組的型態應用於陣列的大部分,但是某些型態可能只能應用於陣列的一些特定部分(例如,陣列邊緣上之目標記憶單元在一側上將沒有鄰接記憶單元,因而可將一不同組的型態用於邊緣上之記憶單元)。因為可利用該型態比對技術分別地檢查每一記憶單元,所以某一記憶單元在一例子中可能被視為一目標記憶單元,但是該記憶單元在另一記憶單元是目標記憶單元時將是周圍記憶單元中之一周圍記憶單元。
第5圖是根據本發明的一實施例而用來識別一非依電性記憶體陣列中之低信賴度記憶單元的一型態比對方法之一流程圖。在該所述之方法中,假定記憶體中之一特定分頁的資料具有無法被ECC單元更正的一或多個錯誤,並假定係由前文所述之電荷分佈影響的類型至少部分地造成這些錯誤,因而可藉由分析該電荷分佈而決定正確的資料。在本說明中,假定一整個分頁因該ECC單元無法更正該分頁中之所有錯誤而被視為失去作用的,但是分頁以外的其他單元(例如,區段)在ECC碼區塊大小使失去作用的該單元有與分頁不同的大小之情形下,亦可被以此種方式檢查。
在所示之流程圖500中,於操作510中,可讀取其中包含該失去作用的分頁的整個抹除區塊中之二進制資料。雖然整個分頁被視為“失去作用的”(因為已知該分頁有錯誤,但是不知道該分頁內之錯誤的位置),但是縱然某些資料將是錯誤的,也仍然能夠自該分頁中之所有記憶單元讀取資料。因為非依電性記憶體通常被配置之方式可讓抹除區塊中之被正確地讀取的分頁之記憶單元影響同一抹除區塊中之失去作用的分頁之記憶單元,所以可能希望讀取整個抹除區塊,而不只是讀取失去作用的分頁。
在操作520中,可將自抹除區塊讀取的二進制資料轉換為電荷位準值。該轉換之確切方式可取決於每一記憶單元中包含的電荷位準之數目(及二進制資料的位元之數目)、以及這些位準中之每一位準指示特定的二進制資料值之方式。可將該轉換的結果放置在一電荷位準圖中,該電荷位準圖包含該抹除區塊中之每一記憶單元的電荷位準值。該圖亦可指示(例如,利用該圖之組織)那些記憶單元在實體上及(或)電氣上的彼此相關方式,因而可將該等記憶單元分組成對後續型態比對程序有意義之一些群組。一種此類的組織方式(但不是唯一的方式)是將該圖組織成一個二維陣列,用以反映該抹除區塊中之該等記憶單元的列及行電氣配置。
在操作530中,可執行實際的型態比對程序。前文中參照第4圖所作之說明提供了該型態比對程序之一例子。在操作540中,可將一匹配的型態中係為目標記憶單元之每一記憶單元指定為一低信賴度記憶單元。無須針對具有作為目標記憶單元的記憶單元之型態而檢查該抹除區塊中之所有記憶單元。在型態比對中只須檢查目標記憶單元係在失去作用的分頁中之各記憶單元群組。因為各分頁被頻繁地指定給輪流的位元線,所以此種方式可簡化該型態比對程序。請參閱第4圖,中央的位元線係在失去作用的分頁中,但是左方及右方的位元線是在ECC已證明包含正確資料之另一分頁中。因而無須將型態比對施加到目標記憶單元不在失去作用的分頁中之記憶單元群組。此種方式也減少了該型態中之另一記憶單元(目標記憶單元以外的記憶單元)包含錯誤資料的機會,這是因為在該例子中只有在與目標記憶單元相同的位元線中之那些記憶單元是在失去作用的分頁中。
利用參考電壓接近之識別
該程序對應於第3圖所示之操作311、315。當一記憶單元中儲存的電荷之類比值非常接近讀取該記憶單元時使用的參考電壓時,電荷的電壓很容易最終落在該參考電壓之錯誤的一邊,且產生錯誤的讀取。第6圖所示之程序利用此種現象。
第6圖是根據本發明的一實施例而將接近一參考電壓用來作為一種識別一非依電性記憶體陣列中之低信賴度記憶單元的方式之一方法之一流程圖。在流程圖600中,可將在本發明中被稱為“移動讀取參考”(Moving Read Reference(MRR))之一程序用來量測每一記憶單元中之類比電荷電壓。在操作610中,可將每一讀取參考電壓遞增一範圍的值。可使該遞增程序在操作610-650中重複地循環,直到在操作620中決定已完成了該MRR程序為止。可將任何可實行的技術用來遞增參考電壓。對於有多個參考電壓的多階儲存單元技術而言,某些實施例可在每一新週期中只遞增單一參考電壓,而其他實施例可在每一新週期中遞增多個參考電壓。某些實施例可在每一新週期中遞增所有的參考電壓。某些實施例可在不同的週期中切換這些遞增替代方案。
在每一遞增之後,於操作630中可讀取失去作用的分頁的每一記憶單元中儲存的資料之二進制值。如果在操作640中指示自某一記憶單元讀取的資料不同於遞增前的資料,則將指示遞增後的參考電壓正好跨越了類比電荷值,且該類比電荷值必定極接近該參考電壓(在一遞增的範圍內)。然後在操作650中,可將該值儲存在一類比電荷值圖中。可對顯示資料與遞增前相比有所改變之每一記憶單元執行該程序。在有多個參考電壓的MLC記憶體中,可能須要檢查一些特定的遞增前及遞增後二進制值,以便決定跨越了哪一參考電壓,以便可記錄正確的電壓。可重複操作610-650之程序,直到已記錄了該失去作用的分頁中之所有記憶單元的類比電荷值為止。
如果已嘗試了參考電壓的所有遞增值,但是並非該分頁中之所有記憶單元都有其被記錄的類比電荷值,則未被記錄的記憶單元可能有在被測試範圍之外的類比電荷值(在此種情形中,可擴大該等範圍以供進一步的測試),或者該記憶單元已完全失去作用(在此種情形中,可採取本發明中並未述及的其他矯正行動)。假定所有記憶單元都有被記錄的值,則本程序可自操作620移到操作660,此時可將該等參考電壓復原到其原始值,以便可進行正常的讀取操作。
於此時點,可在操作670中將每一記憶單元的被記錄之類比電荷值與被復原的參考電壓比較。(可記錄參考電壓的被復原值,並將被記錄的值用於該比較,因而對實際記憶單元的進一步存取將不是必要的。)如果任何記憶單元有接近一被復原的參考電壓之一類比電荷值,則可在操作680中將該記憶單元識別為一低信賴度記憶單元。類比電荷值需要多接近一參考電壓才會被視為“低信賴度”可根據各種因素。在某些實施例中,可在處理期間改變被視為“接近”參考電壓的類比電荷值範圍、及(或)該範圍之中心點。例如,首先可使用一極窄的電壓範圍。如果該範圍無法產生滿意的結果,則可嘗試擴大該範圍,以便將更多的記憶單元包含在“低信賴度”類型中。在得到滿意的結果之前,可能要執行數次重複的此種改變。
利用電荷調整之更正
該程序對應於第3圖所示之操作320、324、328。一般而言,該程序涉及以一種預計將提高自記憶單元取得正確資料的可能性之方式來調整低信賴度記憶單元的類比電荷值。
第7圖是根據本發明的一實施例而利用對類比電荷值的調整以更正非依電性記憶體中之資料的一方法之一流程圖。為了調整失去作用的分頁中之低信賴度記憶單元的類比電荷值,必須知道那些類比電荷值之起始值。如果已執行了用來識別低信賴度記憶單元的第6圖所示操作610-650之該MRR程序,則業已知道那些起始值。如果尚未執行該MRR程序,則可在開始流程圖700所示的該方法之前,先執行該MRR程序。
對於每一低信賴度記憶單元而言,在操作710中,可決定對該記憶單元的預計調整量(用來改變類比電荷值的電荷改變量)及調整方向(電荷的增或減)。可將任何可行的方法用來決定該調整的方向及量。在操作720中,可對類比電荷值進行該調整。並非改變實體記憶單元中存在的實際電荷,而是可對先前為該失去作用的分頁建構的類比電荷圖中之被記錄的類比電荷值以數學方式執行該程序。
要在執行一驗證之前以此種方式調整的低信賴度記憶單元之數目可取決於許多因素。若調整所有的低信賴度記憶單元(或至少調整大量的記憶單元),則會有將先前正確的資料改變為錯誤的資料之風險,因而可能使問題惡化。若在驗證之前調整小量的記憶單元,則會有改變錯誤資料的量不足而在驗證期間得到有效的ECC結果之風險,且因而不知道該等改變是否是正確的。然而,可決定要改變的記憶單元之數目,且在操作730中決定已改變了該數目的記憶單元之後,本程序可移到操作740,此時該等低低信賴度記憶單元之新的類比電荷值被轉換為其等值的二進制資料。
利用隨機資料替換之更正
該程序對應於第3圖所示之操作321。一般而言,該程序涉及:在低信賴度記憶單元中嘗試隨機資料,直到找到產生了具有錯誤少到可利用諸如ECC程序等的其他方式更正該等錯誤的一分頁之一組合為止。如前文中參照第7圖之程序所述的,可變更在嘗試驗證之前以此種方式改變記憶單元之數目。在某些實施例中,要改變的記憶單元之較佳數目可取決於諸如(但不限於)(1)正在使用哪一更正技術,(2)失去作用的位址範圍中包含的記憶單元之數目,以及(3)其他的各種因素。
驗證
驗證對應於第3圖所示之操作330。可利用任何可行的方式對分頁中之資料執行驗證,這類可行的方式是諸如(但不限於):若錯誤的數量不超過ECC程序的更正能力,則利用將更正其餘錯誤的該ECC程序處理該分頁的二進制資料。如果以此種方式驗證了被更正的資料,則可將被更正的資料寫到可使用該資料之一儲存位置。該儲存位置可能不是原來失去作用的相同抹除區塊中之相同的分頁,這是因為該實體儲存位置中之缺陷可能首先已造成了該等錯誤。另一方面,如果新分頁的資料仍然有無法被更正的錯誤,則可繼續執行各種程序是諸如(但不限於)下列程序中一或多個程序:(1)假定分頁中之資料丟失,且捨棄該資料;(2)對新的或原始的資料重新執行先前的操作,但是將使用不同的參數更正該資料;(3)對不同的低信賴度記憶單元重新執行先前的操作;(4)執行用來決定低信賴度記憶單元之不同的偵測操作;以及(5)其他的程序。
在某些實施例中,可在非依電性記憶體的控制器內(例如,由第1圖所示之錯誤分析單元144)執行這些操作。在其他實施例中,可在非依電性記憶體之外(例如,由電腦系統中之一或多個主處理器)執行這些操作。在另外的實施例中,可由多個這些裝置執行這些操作(例如,由非依電性記憶體控制器執行某些操作,由一或多個主處理器執行某些操作)。這些僅為可執行該等操作的幾種方式。
前文中之說明的用意是例示性而非限制性。熟悉此項技術者將可作出各種變形。那些變形將被包含在本發明的各實施例中,且本發明只受限於最後的申請專利範圍之範圍。
100...系統
110...處理器
120...主記憶體
130...輸入-輸出邏輯
140...非依電性記憶體
148...儲存陣列
142...控制器
143...錯誤檢查及更正單元
144...錯誤分析單元
145...參考電壓控制單元
若參照前文中之說明以及用來示出本發明的實施例之各附圖,將可了解本發明之某些實施例。在該等圖式中:
第1圖示出包含根據本發明的一實施例的一固態非依電性記憶體之一系統。
第2圖示出根據本發明的一實施例的一非依電性記憶體陣列之一部分。
第3圖是根據本發明的一實施例而更正記憶體中之錯誤的一方法之一流程圖。
第4圖示出根據本發明的一實施例而可影響一目標記憶單元之一例示電荷型態。
第5圖是根據本發明的一實施例而用來識別一非依電性記憶體陣列中之低信賴度記憶單元的一型態比對方法之一流程圖。
第6圖是根據本發明的一實施例而將接近參考電壓用來作為一種識別一非依電性記憶體陣列中之低信賴度記憶單元的方式之一方法之一流程圖。
第7圖是根據本發明的一實施例而利用對類比電荷值的調整以更正非依電性記憶體中之資料的一方法之一流程圖。
100...系統
110...處理器
120...主記憶體
130...輸入-輸出邏輯
140...非依電性記憶體
148...儲存陣列
142...控制器
143...錯誤檢查及更正單元
144...錯誤分析單元
145...參考電壓控制單元

Claims (17)

  1. 一種用於非依電性記憶體中之資料錯誤復原之方法,包含下列操作:決定自一基於電荷的非依電性(NV)記憶體中之一指定範圍的連續記憶位置讀取的二進制資料包含無法被與該非依電性記憶體相關聯的一錯誤更正碼(ECC)單元更正之錯誤;識別該指定範圍中之哪些記憶單元產生了可能有錯誤的資料,識別包含:在一電壓值範圍中遞增一讀取參考電壓,針對每一遞增而讀取該指定範圍內之連續記憶位置的二進制資料,識別哪些記憶單元在現行遞增中產生了與前一遞增不同的二進制資料,以決定用於產生不同的二進制資料的記憶單元之類比電荷值,及復原遞增的讀取參考電壓,且將該復原的遞增的讀取參考電壓與產生不同的二進制資料的記憶單元之該類比電荷值做比較,以識別在該指定範圍內哪些產生資料的記憶單元可能是有錯誤的;改變該等記憶單元中資料被決定為可能有錯誤的至少某些記憶單元之資料;以及驗證該被改變的資料是否讓該ECC單元更正該指定範圍的連續記憶位置中先前無法被更正的錯誤。
  2. 如申請專利範圍第1項之方法,其中識別操作 包含下列操作:產生至少該指定範圍中之該等記憶單元的一電荷位準值圖;以及將該圖中之記憶單元群組的電荷位準值與預定的電荷位準型態比較,以便識別哪些記憶單元產生了可能有錯誤的二進制資料。
  3. 如申請專利範圍第1項之方法,其中識別操作包含下列操作:決定該指定範圍中之記憶單元的類比電荷值;以及決定該指定範圍中之哪些記憶單元具有在該非依電性記憶體的一讀取參考電壓的一預定電壓量內之類比電荷值。
  4. 如申請專利範圍第1項之方法,其中改變操作包含下列操作:調整被識別為可能有錯誤的該等記憶單元之類比電荷值。
  5. 如申請專利範圍第1項之方法,其中改變操作包含下列操作:替換被識別為可能有錯誤的該等記憶單元的資料之隨機二進制資料。
  6. 如申請專利範圍第1項之方法,其中該指定範圍的連續記憶位置是一分頁的記憶體。
  7. 一種用於非依電性記憶體中之資料錯誤復原之裝置,包含:包含一處理器及一基於電荷的非依電性記憶體之一電腦系統,該電腦系統執行下列操作: 決定自該非依電性記憶體中之一指定範圍的連續記憶位置讀取的二進制資料包含無法被與該非依電性記憶體相關聯的一錯誤更正碼(ECC)單元更正之錯誤;識別該指定範圍中之哪些記憶單元產生了可能有錯誤的資料識別包含:在一電壓值範圍中遞增一讀取參考電壓,針對每一遞增而讀取該指定範圍內之連續記憶位置的二進制資料,識別哪些記憶單元在現行遞增中產生了與前一遞增不同的二進制資料,以決定用於產生不同的二進制資料的記憶單元之類比電荷值,及復原遞增的讀取參考電壓,且將該復原的遞增的讀取參考電壓與產生不同的二進制資料的記憶單元之該類比電荷值做比較,以識別在該指定範圍內哪些產生資料的記憶單元可能是有錯誤的;改變該等記憶單元中資料被決定為可能有錯誤的至少某些記憶單元之資料;以及驗證該被改變的資料是否讓該ECC單元更正該指定範圍的連續記憶位置中先前無法被更正的錯誤。
  8. 如申請專利範圍第7項之裝置,其中識別操作包含下列操作:產生至少該指定範圍中之該等記憶單元的一電荷位準值圖;以及 將該圖中之記憶單元群組的電荷位準值與預定的電荷位準型態比較,以便識別哪些記憶單元產生了可能有錯誤的二進制資料。
  9. 如申請專利範圍第7項之裝置,其中識別操作包含下列操作:決定該指定範圍中之記憶單元的類比電荷值;以及決定該指定範圍中之哪些記憶單元具有在該非依電性記憶體的一讀取參考電壓的一預定電壓量內之類比電荷值。
  10. 如申請專利範圍第7項之裝置,其中改變操作包含下列操作:調整被識別為可能有錯誤的該等記憶單元之類比電荷值。
  11. 如申請專利範圍第7項之裝置,其中改變操作包含下列操作:替換被識別為可能有錯誤的該等記憶單元的資料之隨機二進制資料。
  12. 一種用於非依電性記憶體中之資料錯誤復原之物品,包含:含有指令之一實體電腦可讀取的媒體,該等指令被一或多個處理器執行時將造成執行一些操作,該等操作包含:決定自一基於電荷的非依電性記憶體中之一指定範圍的連續記憶位置讀取的二進制資料包含無法被與該非依電性記憶體相關聯的一錯誤更正碼(ECC)單元更正之錯誤; 識別該指定範圍中之哪些記憶單元產生了可能有錯誤的資料識別包含:在一電壓值範圍中遞增一讀取參考電壓,針對每一遞增而讀取該指定範圍內之連續記憶位置的二進制資料,識別哪些記憶單元在現行遞增中產生了與前一遞增不同的二進制資料,以決定用於產生不同的二進制資料的記憶單元之類比電荷值,及復原遞增的讀取參考電壓,且將該復原的遞增的讀取參考電壓與產生不同的二進制資料的記憶單元之該類比電荷值做比較,以識別在該指定範圍內哪些產生資料的記憶單元可能是有錯誤的;改變該等記憶單元中資料被決定為可能有錯誤的至少某些記憶單元之資料;以及驗證該被改變的資料是否讓該ECC單元更正該指定範圍的連續記憶位置中先前無法被更正的錯誤。
  13. 如申請專利範圍第12項之物品,其中該識別操作包含下列操作:產生至少該指定範圍中之該等記憶單元的一電荷位準值圖;以及將該圖中之記憶單元群組的電荷位準值與預定的電荷位準型態比較,以便識別哪些記憶單元產生了可能有錯誤的二進制資料。
  14. 如申請專利範圍第12項之物品,其中該識別操作包含下列操作:決定該指定範圍中之記憶單元的類比電荷值;以及決定該指定範圍中之哪些記憶單元具有在該非依電性記憶體的一讀取參考電壓的一預定電壓量內之類比電荷值。
  15. 如申請專利範圍第12項之物品,其中改變操作包含下列操作:調整被識別為可能有錯誤的該等記憶單元之類比電荷值。
  16. 如申請專利範圍第12項之物品,其中改變操作包含下列操作:替換被識別為可能有錯誤的該等記憶單元的資料之隨機二進制資料。
  17. 如申請專利範圍第12項之物品,其中該指定範圍的連續記憶位置是一分頁的記憶體。
TW098141707A 2008-12-18 2009-12-07 用於非依電性記憶體中之資料錯誤復原之方法、裝置及物品 TWI455145B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/316,986 US8291297B2 (en) 2008-12-18 2008-12-18 Data error recovery in non-volatile memory

Publications (2)

Publication Number Publication Date
TW201035984A TW201035984A (en) 2010-10-01
TWI455145B true TWI455145B (zh) 2014-10-01

Family

ID=42267898

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098141707A TWI455145B (zh) 2008-12-18 2009-12-07 用於非依電性記憶體中之資料錯誤復原之方法、裝置及物品

Country Status (7)

Country Link
US (1) US8291297B2 (zh)
EP (1) EP2368186B1 (zh)
JP (1) JP5367835B2 (zh)
KR (1) KR101248352B1 (zh)
CN (1) CN102171659B (zh)
TW (1) TWI455145B (zh)
WO (1) WO2010080257A2 (zh)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8291297B2 (en) 2008-12-18 2012-10-16 Intel Corporation Data error recovery in non-volatile memory
US8407564B2 (en) * 2009-07-15 2013-03-26 Intel Corporation Prediction and cancellation of systematic noise sources in non-volatile memory
US8301980B2 (en) * 2009-09-28 2012-10-30 Nvidia Corporation Error detection and correction for external DRAM
US8190974B2 (en) * 2009-09-28 2012-05-29 Nvidia Corporation Error detection and correction for external DRAM
US8638602B1 (en) 2010-09-10 2014-01-28 Western Digital Technologies, Inc. Background selection of voltage reference values for performing memory read operations
KR101736384B1 (ko) 2010-09-29 2017-05-16 삼성전자주식회사 비휘발성 메모리 시스템
US8422303B2 (en) * 2010-12-22 2013-04-16 HGST Netherlands B.V. Early degradation detection in flash memory using test cells
US8369143B2 (en) 2010-12-22 2013-02-05 HGST Netherlands B.V. Early detection of degradation in NOR flash memory
US8649215B2 (en) 2010-12-22 2014-02-11 HGST Netherlands B.V. Data management in flash memory using probability of charge disturbances
US8422296B2 (en) 2010-12-22 2013-04-16 HGST Netherlands B.V. Early detection of degradation in NAND flash memory
US8599609B2 (en) 2010-12-22 2013-12-03 HGST Netherlands B.V. Data management in flash memory using probability of charge disturbances
KR101739878B1 (ko) 2011-02-22 2017-05-26 삼성전자주식회사 컨트롤러, 이의 동작방법, 및 상기 컨트롤러를 포함한 메모리 시스템
US8503237B1 (en) 2011-05-18 2013-08-06 Western Digital Technologies, Inc. System and method for data recovery in a solid state storage device
KR101835605B1 (ko) 2011-11-24 2018-03-08 삼성전자 주식회사 플래시 메모리 시스템 및 플래시 메모리 시스템의 리드 방법
WO2013095525A1 (en) * 2011-12-22 2013-06-27 Intel Corporation Content-aware caches for reliability
US9208022B2 (en) * 2012-03-29 2015-12-08 Intel Corporation Techniques for adaptive moving read references for memory cell read error recovery
US9268631B2 (en) * 2012-03-29 2016-02-23 Intel Corporation Adaptive moving read references for memory cells
US8793558B2 (en) * 2012-08-27 2014-07-29 Freescale Semiconductor, Inc. Adaptive error correction for non-volatile memories
US8869008B2 (en) * 2013-01-17 2014-10-21 Apple Inc. Adaptation of analog memory cell read thresholds using partial ECC syndromes
US10114912B1 (en) * 2014-03-26 2018-10-30 Cadence Design Systems, Inc. System and method for monitoring address traffic in an electronic design
KR102292167B1 (ko) * 2014-04-04 2021-08-25 삼성전자주식회사 배드 블록 관리 방법 및 메모리 시스템
US9389973B2 (en) 2014-05-30 2016-07-12 Oracle International Corporation Memory error propagation for faster error recovery
US9558069B2 (en) * 2014-08-07 2017-01-31 Pure Storage, Inc. Failure mapping in a storage array
CN104317525B (zh) * 2014-09-23 2017-08-11 天津国芯科技有限公司 一种随机存储器的扩展方法及装置
US9728278B2 (en) * 2014-10-24 2017-08-08 Micron Technology, Inc. Threshold voltage margin analysis
KR20160073834A (ko) * 2014-12-17 2016-06-27 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템 동작 방법
US9679661B1 (en) 2016-06-28 2017-06-13 Sandisk Technologies Llc Non-volatile storage system with self-test for read performance enhancement feature setup
US9672940B1 (en) 2016-08-18 2017-06-06 Sandisk Technologies Llc Non-volatile memory with fast read process
KR20210132784A (ko) 2020-04-27 2021-11-05 삼성전자주식회사 메모리 장치 및 메모리 장치로부터 데이터를 읽는 방법
US11409601B1 (en) * 2021-01-26 2022-08-09 Micron Technology, Inc. Memory device protection

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6542407B1 (en) * 2002-01-18 2003-04-01 Sandisk Corporation Techniques of recovering data from memory cells affected by field coupling with adjacent memory cells
US20060133141A1 (en) * 2004-12-22 2006-06-22 Gorobets Sergey A Erased sector detection mechanisms
US7231585B2 (en) * 2002-12-11 2007-06-12 Nvidia Corporation Error correction for flash memory
US20070211532A1 (en) * 2003-10-03 2007-09-13 Gonzalez Carlos J Flash Memory Data Correction and Scrub Techniques
US20070277060A1 (en) * 2006-05-15 2007-11-29 Apple Inc. Use of Alternative Value in Cell Detection
US20080034272A1 (en) * 2006-08-07 2008-02-07 Zining Wu System and method for correcting errors in non-volatile memory using product codes
US20080123419A1 (en) * 2006-11-03 2008-05-29 Yigal Brandman Methods of Varying Read Threshold Voltage in Nonvolatile Memory
US20080198650A1 (en) * 2006-05-12 2008-08-21 Anobit Technologies Ltd. Distortion Estimation And Cancellation In Memory Devices
US20080244349A1 (en) * 2006-09-29 2008-10-02 Hiroshi Sukegawa Memory device including memory controller
US20080244360A1 (en) * 2007-03-31 2008-10-02 Nima Mokhlesi Non-Volatile Memory with Soft Bit Data Transmission for Error Correction Control

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6222762B1 (en) * 1992-01-14 2001-04-24 Sandisk Corporation Multi-state memory
US5859858A (en) * 1996-10-25 1999-01-12 Intel Corporation Method and apparatus for correcting a multilevel cell memory by using error locating codes
JP2001332096A (ja) * 2000-05-16 2001-11-30 Hitachi Ltd 不揮発性半導体メモリおよび不揮発性半導体メモリを用いた記録再生装置
JP4323707B2 (ja) * 2000-10-25 2009-09-02 富士通マイクロエレクトロニクス株式会社 フラッシュメモリの欠陥管理方法
EP1211812B1 (en) * 2000-10-31 2006-11-15 STMicroelectronics S.r.l. A/D conversion method in high density multilevel non-volatile memory devices and corresponding converter device
US6751766B2 (en) * 2002-05-20 2004-06-15 Sandisk Corporation Increasing the effectiveness of error correction codes and operating multi-level memory systems by using information about the quality of the stored data
JP3914839B2 (ja) * 2002-07-11 2007-05-16 エルピーダメモリ株式会社 半導体記憶装置
JP4158526B2 (ja) * 2003-01-09 2008-10-01 松下電器産業株式会社 メモリカード及びメモリへのデータ書き込み方法
US6944063B2 (en) * 2003-01-28 2005-09-13 Sandisk Corporation Non-volatile semiconductor memory with large erase blocks storing cycle counts
JP4256198B2 (ja) * 2003-04-22 2009-04-22 株式会社東芝 データ記憶システム
JP4332132B2 (ja) 2005-05-11 2009-09-16 Tdk株式会社 メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP4575288B2 (ja) * 2005-12-05 2010-11-04 株式会社東芝 記憶媒体、記憶媒体再生装置、記憶媒体再生方法および記憶媒体再生プログラム
US8055979B2 (en) * 2006-01-20 2011-11-08 Marvell World Trade Ltd. Flash memory with coding and signal processing
US7844879B2 (en) * 2006-01-20 2010-11-30 Marvell World Trade Ltd. Method and system for error correction in flash memory
JP4999921B2 (ja) * 2006-05-12 2012-08-15 アノビット テクノロジーズ リミテッド メモリ素子用の歪み推定と誤り訂正符号化の組み合せ
WO2008019347A2 (en) * 2006-08-05 2008-02-14 Benhov Gmbh, Llc Solid state storage element and method
US7369434B2 (en) * 2006-08-14 2008-05-06 Micron Technology, Inc. Flash memory with multi-bit read
US7567461B2 (en) * 2006-08-18 2009-07-28 Micron Technology, Inc. Method and system for minimizing number of programming pulses used to program rows of non-volatile memory cells
KR100871700B1 (ko) * 2007-02-13 2008-12-08 삼성전자주식회사 불휘발성 메모리 장치에서 전하 손실에 기인한 오류 데이터정정 방법
US7564711B2 (en) * 2007-02-20 2009-07-21 Sandisk Corporation Multiple pass write sequence for non-volatile storage
KR100865830B1 (ko) * 2007-02-22 2008-10-28 주식회사 하이닉스반도체 메모리 소자의 독출 방법
US7904793B2 (en) * 2007-03-29 2011-03-08 Sandisk Corporation Method for decoding data in non-volatile storage using reliability metrics based on multiple reads
US7966550B2 (en) * 2007-03-31 2011-06-21 Sandisk Technologies Inc. Soft bit data transmission for error correction control in non-volatile memory
US7876621B2 (en) * 2007-04-23 2011-01-25 Sandisk Il Ltd. Adaptive dynamic reading of flash memories
US7971123B2 (en) * 2007-07-02 2011-06-28 International Business Machines Corporation Multi-bit error correction scheme in multi-level memory storage system
KR101425958B1 (ko) * 2007-09-06 2014-08-04 삼성전자주식회사 멀티-비트 데이터를 저장하는 메모리 시스템 및 그것의읽기 방법
KR101515122B1 (ko) * 2008-02-15 2015-04-27 삼성전자주식회사 저장된 데이터의 오류에 기반하여 기준 전압을 제어하는 방법과 메모리 데이터 검출 장치
KR101466698B1 (ko) * 2008-02-19 2014-11-28 삼성전자주식회사 메모리 장치 및 메모리 데이터 읽기 방법
US8291297B2 (en) 2008-12-18 2012-10-16 Intel Corporation Data error recovery in non-volatile memory

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6542407B1 (en) * 2002-01-18 2003-04-01 Sandisk Corporation Techniques of recovering data from memory cells affected by field coupling with adjacent memory cells
US7231585B2 (en) * 2002-12-11 2007-06-12 Nvidia Corporation Error correction for flash memory
US20070211532A1 (en) * 2003-10-03 2007-09-13 Gonzalez Carlos J Flash Memory Data Correction and Scrub Techniques
US20060133141A1 (en) * 2004-12-22 2006-06-22 Gorobets Sergey A Erased sector detection mechanisms
US20080198650A1 (en) * 2006-05-12 2008-08-21 Anobit Technologies Ltd. Distortion Estimation And Cancellation In Memory Devices
US20070277060A1 (en) * 2006-05-15 2007-11-29 Apple Inc. Use of Alternative Value in Cell Detection
US20080034272A1 (en) * 2006-08-07 2008-02-07 Zining Wu System and method for correcting errors in non-volatile memory using product codes
US20080244349A1 (en) * 2006-09-29 2008-10-02 Hiroshi Sukegawa Memory device including memory controller
US20080123419A1 (en) * 2006-11-03 2008-05-29 Yigal Brandman Methods of Varying Read Threshold Voltage in Nonvolatile Memory
US20080244360A1 (en) * 2007-03-31 2008-10-02 Nima Mokhlesi Non-Volatile Memory with Soft Bit Data Transmission for Error Correction Control

Also Published As

Publication number Publication date
EP2368186B1 (en) 2017-07-26
KR101248352B1 (ko) 2013-04-01
TW201035984A (en) 2010-10-01
EP2368186A4 (en) 2012-07-18
KR20110065497A (ko) 2011-06-15
JP5367835B2 (ja) 2013-12-11
CN102171659B (zh) 2013-11-06
CN102171659A (zh) 2011-08-31
US20100162084A1 (en) 2010-06-24
JP2012507108A (ja) 2012-03-22
US8291297B2 (en) 2012-10-16
WO2010080257A2 (en) 2010-07-15
EP2368186A2 (en) 2011-09-28
WO2010080257A3 (en) 2010-09-02

Similar Documents

Publication Publication Date Title
TWI455145B (zh) 用於非依電性記憶體中之資料錯誤復原之方法、裝置及物品
TWI574277B (zh) 記憶體裝置中之錯誤校正操作
US9583183B2 (en) Reading resistive random access memory based on leakage current
US9837146B2 (en) Memory system temperature management
US11868639B2 (en) Providing recovered data to a new memory cell at a memory sub-system based on an unsuccessful error correction operation
US8910020B2 (en) Intelligent bit recovery for flash memory
US9514830B2 (en) Non-volatile memory device, memory system including the same, and method of operating the same
US11579972B2 (en) Non-volatile memory device, controller for controlling the same, storage device having the same, and reading method thereof
US10134477B2 (en) Nonvolatile memory device detecting power noise and operating method thereof
US20130166949A1 (en) Semiconductor memory device and method for operating the same
US20120320676A1 (en) Semiconductor system, nonvolatile memory apparatus, and an associated read method
CN117636922A (zh) 产生表征相对于电压分布施加的读取电压电平的元数据的存储器装置
CN109215716B (zh) 提高nand型浮栅存储器可靠性的方法及装置
US12105967B2 (en) Two-tier defect scan management
US11656931B2 (en) Selective sampling of a data unit based on program/erase execution time
KR20180104263A (ko) 전반적인 건강상태 파악을 위한 대표 페이지를 갖는 비휘발성 메모리 시스템 및 그 비휘발성 메모리 시스템에서의 건강 상태 파악 방법
CN117437963A (zh) 基于表征电压分布的存储器装置发起的度量的存储器读取校准

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees