JP2012507108A - 不揮発性メモリにおけるデータ・エラー回復 - Google Patents

不揮発性メモリにおけるデータ・エラー回復 Download PDF

Info

Publication number
JP2012507108A
JP2012507108A JP2011534940A JP2011534940A JP2012507108A JP 2012507108 A JP2012507108 A JP 2012507108A JP 2011534940 A JP2011534940 A JP 2011534940A JP 2011534940 A JP2011534940 A JP 2011534940A JP 2012507108 A JP2012507108 A JP 2012507108A
Authority
JP
Japan
Prior art keywords
memory
data
error
specified range
cells
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2011534940A
Other languages
English (en)
Other versions
JP5367835B2 (ja
Inventor
カウルソン,リチャード
ファジオ,アルバート
カーン,ジャワド
Original Assignee
インテル コーポレイション
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 インテル コーポレイション filed Critical インテル コーポレイション
Publication of JP2012507108A publication Critical patent/JP2012507108A/ja
Application granted granted Critical
Publication of JP5367835B2 publication Critical patent/JP5367835B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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)

Abstract

エラー訂正コード(ECC)ユニットが、ソリッド・ステートの不揮発性メモリ装置における、補正可能でないエラーを見つけると、エラーを位置特定し、補正する試行における処理を使用し得る。前述の処理はまず、エラーが含まれている可能性が高い「低確信度」メモリ・セルを識別し、次いで、種々の基準に基づいて、前述のセルにおいて正しい可能性がより高いデータがどれであるかを求め得る。次いで、新たなデータをECCユニットによって検査して、何れかの残りのエラーをECCユニットが補正するために十分正しい旨を検証し得る。

Description

フラッシュ・メモリなどの一部のタイプのソリッド・ステート不揮発性メモリは、メモリ・セルに特定量の電荷を蓄積することにより、二進デ―タを記録する。
上記データが前述の電荷ベースの不揮発性メモリのうちの1つから読み出されると、蓄積された電荷の電圧レベルが基準電圧と比較される。前述のセルから読み出されるデータの二進値は、蓄積された電荷の電圧が基準電圧よりも高いか低いかに依存する。
しかし、蓄積された電荷はアナログの現象であるため、その実際値は、意図したものとちょうど同じものでないことがあり得、データが読み出されるとエラーに遭遇し得る。エラー補正コード(ECC)ユニットは、前述のエラーの一部を検知し、補正するために使用し得るが、時には、エラーは、全てこのやり方で補正するには多すぎる。このことが起きると、データは永久に失われ得る。
本発明の一部の実施例は、本発明の実施例を示すために使用される以下の説明及び添付図面を参照することによって理解することができる。
本発明の実施例による、ソリッド・ステートの不揮発性メモリを含むシステムを示す図である。 本発明の実施例による、不揮発性メモリ・アレイの一部分を示す図である。 本発明の実施例による、メモリにおけるエラーを補正する方法を示すフロー図である。 本発明の実施例による標的セルに影響を及ぼし得る例示的な電荷パターンを示す図である。 本発明の実施例による、NVメモリ・アレイにおける低確信度セルを識別するためのパターン・マッチングの方法を示すフロー図である。 本発明の実施例による、NVメモリ・アレイにおける低確信度セルを識別するためのやり方として基準電圧に対する至近性を使用する方法を示すフロー図である。 本発明の実施例による、アナログ電荷値の調節により、NVメモリにおけるデータを補正する方法を示すフロー図である。
以下の説明では、数多くの具体的な詳細を記載する。しかし、本発明の実施例は、前述の具体的な詳細なしで実施することができる。場合によっては、本明細書を理解しにくくなることのないように、周知の回路、構造及び手法は詳細に示していない。
「一実施例」、「実施例」、「例示的な実施例」、「種々の実施例」等への言及は、本発明の実施例が、特定の構成、構造、又は特性を含み得るが、全ての実施例が、必ずしも、特定の構成、構造、又は特性を含む訳でないということを示す。更に、一部の実施例は、他の実施例について説明した構成の一部若しくは全部を有し得、又は、前述の構成を何ら有しないことがあり得る。
以下の明細書及び特許請求の範囲では、「結合された」及び「接続された」という語、並びにそれらの派生形を使用することができる。前述の語は、互いの同義語として意図されているものでない。むしろ、特定の実施例では、「接続された」という語は、2つ以上の構成要素が、物理的に又は電気的に互いに直接接触しているということを示すために使用される。「結合された」という語は、2つ以上の構成要素が、互いに協働又は相互作用するが、物理的に又は電気的に直接、接触していてもいなくてもよいということを示すために使用される。
特許請求の範囲では、別途明記しない限り、共通の構成要素を表すための、順序を表す形容詞である「第1の」、「第2の」、「第3の」等の使用は、同様な構成要素の別々のインスタンスを指しており、前述の構成要素が、時間的に、空間的に、ランキング上、又は何れかの他の態様で、特定の順序になければならない旨を示唆することを意図するものでないということを示しているに過ぎない。
本発明の種々の実施例は、ハードウェア、ファームウェア及びソフトウェアの1つ又は何れかの組合せで実現することができる。本発明は、本明細書及び特許請求の範囲記載の動作の実行を可能にするために、1つ又は複数のプロセッサによって読み出し、実行することができる、コンピュータ読み取り可能な媒体内、又は前述の媒体上に含まれる命令として実現することもできる。コンピュータ読み取り可能な媒体は、1つ又は複数のコンピュータによって読み取り可能な形式において情報を記憶し、伝送し、かつ/又は受信する何れかの機構を含み得る。例えば、コンピュータ読み取り可能な媒体は、限定列挙でないが、リード・オンリー・メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、磁気ディスク記憶媒体、光記憶媒体、フラッシュ・メモリ装置等などの有形記憶媒体を含み得る。コンピュータ読み取り可能な媒体は、限定列挙でないが、電磁気搬送波信号、光搬送波信号、又は音響搬送波信号などの、命令を符号化するために変調されている伝搬信号も含み得る。
種々の実施例では、電荷ベースの不揮発性メモリの一部分からデータを読み出すと、補正できないエラーを見つけた場合、データを補正しようとする旨の処理が続き得る。不良データの正確な場所は知られていないことがあり得るので、この処理は、1)メモリの当該部分における「低確信度」(LC)蓄積セル(すなわち、他のセルよりもエラーを含んでいる可能性が更に高いセル)を識別する工程と、2)当該セルにおけるどのデータが、正しい可能性が高いかを判定する工程と、3)新たなデータが正しい旨を検証する工程とを含み得る。低確信度のセルを識別する工程は、2つのやり方(すなわち、1)アナログ電荷電圧が基準電圧に近いセルを求めるやり方、及び2)標的セルにおいてデータ破損をもたらすことが知られている、周囲セル内の電荷レベルの特定のパターンを探すやり方)のうちの何れかで行い得る。低確信度セルにおいて正しい可能性が高い新たなデータを求めることは、2つのやり方(すなわち、1)最善であると思われる方向及び量で、前述のセル内のアナログ電荷値を調節するやり方、及び2)LCセル内のデータの任意値を試すやり方)のうちの何れかで行い得る。新たなデータが正確である旨を検証することは、何れかの適切なやり方で行い得るが、通常、エラー検査及び補正(ECC)アルゴリズムを使用することにより、行い得る。これは、エラーの数が特定の閾値未満である限り、有効なデータをもたらすからである。データの正しい値が求められると、データは別の場所に再書き込みし得る。上記別の場所では、上記データは、同じデータ破損の問題に遭遇しないことが望ましい。計算量的に集約的であるが、この処理は、当該処理によらなければ、他のやり方で回復することが実用的でなく、重要なデータにおいて致命的エラーを含む(、ソリッドステート・ディスク(SSD)内のデータなどの)データを回復するために有用であり得る。
図1は、本発明の実施例による、ソリッド・ステートの不揮発性メモリを含むシステムを示す。図示したシステム100は、プロセッサ110と、主メモリ120と、入出力ロジック130と、不揮発性(NV)メモリ140とを含む。この特定の実現形態では、NVメモリは、(ソリッドステート・ディスクに限定されないが、ソリッドステート・ディスクなどの)I/O装置として接続されるが、他の実施例は、NVメモリをシステム内の他の場所(限定列挙でないが、主メモリ自体の一部、ハード・ディスク・ドライブと協調して動作するキャッシュ・メモリ等)に配置し得る。本発明の種々の実施例は、前述のアプリケーション及び部分が本明細書に具体的に記載されているか否かにかかわらず、種々のアプリケーションにおいて、かつ、システムの別々の部分において使用可能である。
NVメモリは、データを記憶するために、蓄積された電荷を使用し、読み出し動作のために1つ又は複数の基準電圧を使用する何れかの実現可能なタイプのNV記憶技術を使用し得る。単一の読み出しコマンドで個々のバイト又はワードを読み出すのでなく、(限定されないが、NANDフラッシュ・メモリ・アレイからメモリ・ページを読み出すことなどの)単一の読み出しコマンドでシーケンシャル・メモリ位置の範囲全体を読み出すNVメモリにおいて特に有用であり得る。
図1の図示された実施例では、NVメモリ140は、基準電圧の読み出し、書き込み、消去、及び調節などのアレイで動作を制御するための記憶アレイ148及びコントローラ142を備え得る。コントローラ142は、エラー検査及び補正(ECC)ユニット143、エラー分析装置144、及び基準電圧制御装置145などの他の機能的装置に更に分離し得る。基準電圧制御装置145は、アレイ内のメモリ・セルからデータを読み出す場合に使用される1つ又は複数の基準電圧それぞれを供給し得る。基準電圧制御装置145は更に、本明細書及び特許請求の範囲記載の動作を行うために必要に応じて、前述の基準電圧を上下に調節することもできる。NVメモリ140における種々の装置は別個の機能別装置として示しているが、前述のもののうちの2つ以上は、共通回路及び/又はコードを共有し得る。
コントローラ142がプロセッサ110又は他の装置から読み出し要求を受け取ると、コントローラ142は、メモリ・アレイ内の複数のシーケンシャル位置からデータを読み出す動作を開始し得る。上記位置の開始アドレスは読み出し要求によって示し得る一方、位置の数は、要求において規定し得るか、又は特定の他のやり方で予め定義し得る。データがバッファ内で読み出され、配置されるにつれ、ECCユニットはデータ内のエラーを検知し、前述のエラーを追跡し、そのエラー補正アルゴリズムによって補正することができるエラーを補正し得る。補正可能でないエラー(すなわち、ECCユニットによって補正可能でない)がこのようにして検知されると、シーケンシャル・アドレスの範囲全体からのデータ(例えば、メモリのページ又はセクタ)は正しくないとして表し得る。その範囲内の補正可能でないエラーの数量及び位置が知られていないからである。
図2は、本発明の実施例による、不揮発性メモリ・アレイの一部分を示す。図示した例は、ゲート近くの蓄積電荷の量がそのセルに記憶されたデータを表すメモリ・セルをトランジスタそれぞれが表すフラッシュ・メモリ・アレイの共通の表現を示す。示した回路以外の回路、及びフラッシュ・メモリ以外のメモリのタイプも、本発明の種々の実施例に含め得る。図示した特定の例では、水平線それぞれは、当該行内の複数のセル(この例では、約3万2千個のセル)のゲートを接続するワード線を表すが、その数は他の実施例では異なり得る)のゲートを接続するワード線を表す一方、ビット線列内のセルはその列内の隣接セルそれぞれに接続される。セルは、単一レベルのセル(SLC)又はマルチレベルのセル(MLC)の技術を表し得る。本明細書及び特許請求の範囲記載のSLCはセル毎の1ビットのみを記憶する技術を表す一方、MLCはセル毎に2つ以上のビットを記憶する技術を表す。図示したアレイは、4レベルのMLC技術を表し、考えられる電荷の範囲は、L0乃至L3と呼ばれる4つのサブ範囲に分割され、各サブ範囲は、別々の2ビットの組み合わせ(例えば、11、10、00又は01)を表す。特定のセル内の電荷が4つのサブ範囲のうちの1つのサブ範囲内に収まる場合、セルは、対応する2ビットの2進値を記憶しているとみなされる。セルのうちの15についての値の例を表す。16番目のセルの電荷Vtは未知である。
以下の議論については、ECC又は他のタイプのエラー検知及び補正アルゴリズムが使用されているが、特定の範囲のシーケンシャル・メモリ・アドレスにおけるエラー全てを補正することが可能でないものとする。前述の場合には、この範囲内にエラーが含まれているということが知られているが、正確にどのアドレス(及びどのセル)がエラーを含むかは知られていない。多くの場合、エラーの数が、全てを補正するECCの能力を超えている以外はエラーがいくつあるかは知られていない。前述の議論については、ECCユニットが、そのページにおけるエラー全てを補正することが可能でないためにページ全体に「障害が生じている」とみなされるものとするが、ECCコード・ブロック・サイズが、障害が生じた装置がページとは異なるサイズにした場合、ページ(例えば、セクタ)以外のユニットも、このようにして検査することが可能である。以下の定義が前述の文書において使用される。
1)アナログ電荷値:特定のセルに蓄積された電荷に対する電圧を表す値。この値は、処理するための離散的なディジタル数又は2進数として表し得るが、アナログ電荷値を表し、したがって、アナログ値としてラベリングされる。
2)電荷レベル値:セル内の電荷レベルのサブ範囲(それぞれのサブ範囲は異なる2進デ―タ値を表す)のうちの1つを表す値。例えば、4レベルのMLCでは、電荷レベル値0は最低のサブ範囲(最小の電荷量)を表し、電荷レベル値1はその次に高いサブ範囲を表し、電荷レベル値2はその次に高いサブ範囲を表し、電荷レベル値3は最高サブ範囲(最大電荷量)を表し得る。
3)2進デ―タ値:セル内に蓄積されているデータの2進値。例えば、4レベルのMLCでは、2進11は電荷レベル値0によって表し得、2進10は電荷レベル値1によって表し得、2進00は電荷レベル値2によって表し得、2進01は電荷レベル値3によって表し得る。前述の特定の変換値は効果的であり得る。一電荷レベルから次への遷移は同等の2進値の1ビットのみを変え、それにより、ボーダーラインの読み取り値の不確実性を2つの可能性のみに削減する。しかし、他の変換値も使用することができる。
図3は、本発明の実施例による、メモリにおけるエラーを補正する方法を示すフロー図である。フロー図300では、動作310、314、318、及び動作311、315は、障害が生じたとみなされるデータ・ページにおける低確信度(LC)セルを識別するための別々の2つのやり方を表す。動作320、324、328、及び動作321は、前述のLCセルにおいてデータを補正しようとするための別々の2つのやり方を表す。330における検証動作は、識別処理及び補正処理のどの組み合わせが使用されるかにかかわらず、同じであり得る。
パターン・マッチングによる識別
この処理は、図3の動作310、314、318に対応する。メモリ・アレイにおいて使用される更に小さな幾何構造では、各セルに蓄積された電荷の量は、意図された電荷の量から引き上げるか、又は引き下げて、周囲のセルに蓄積された電荷の量によって影響を受け得る。例えば、もう一度、図2を参照すれば、電荷レベルVtのセルは、Vtに対する周囲セルの考えられる影響を検査することによって調査される。矢印は、標的セルに対する電気接続又は物理的な至近性が理由で、電荷レベルが電荷Vtに影響を及ぼし得る考えられるセルの例を示す。前述の影響の厳密な特性、及びそれをもたらし得る特定のセルは、アレイの詳細(セルの物理的な至近性、セル構造、使用される半導体材料、周囲のセルそれぞれ及び標的セル等における実際の電荷レベルなど)に依存し得る。前述の相互関係は、アレイ・タイプ毎に、かつ、セル内の電荷分布のパターン毎に判定し得る。
図4は、本発明の実施例による、標的セルに影響を及ぼし得る電荷パターン例を示す。前述の文書の目的で、「パターン」は、予め定められた物理的な配置を有し、予め定められた互いの電気接続を有し、前述のセル内の予め定められた電荷レベルを有するセル群である。標的セルは、物理的な配置内の予め定められた場所を占めるセルであり、それによる、パターンにおける他のセルの考えられる影響を求めるよう検査されるセルである。特定のパターンは、標的セル内の電荷レベルを含む、パターン内のセル全てにおける電荷レベルに基づいて定義し得る。例えば、図4では、標的セルの両側のセル(同じワード線上のセルはL3の電荷レベルを有する一方、標的セルの直ぐ上のセル及び直ぐ下のセル(同じビット線上の隣接セル)は電荷レベルL2を有する。標的セル内の正しい電荷レベルがL0であるはずである場合、前述の周囲のセルは、標的セル内の電荷を(図示した)L1レベルに引っ張り得、よって、標的セルにおいて電荷L1を有することは前述のパターンの一部である。他方で、標的セル内の電荷レベルがL2又はL3であると仮定した場合、周囲セル内の電荷は、それに対する影響がわずかであるほど、かつ、配置が、探す対象の予め定められたパターンとみなされないほど、そのレベルに十分近いことがあり得る。前述の実施例では、パターン内の何れかの特定のセルの電荷レベルは、2つ以上のレベルを包含し得る。図4のパターンを例として使用すれば、標的セルに隣接する4つのセルの何れかは、L2又はL3の電荷レベルを有することが可能であり得、それはなお、パターンに一致するものとみなされる。
前述の例は、特定の電荷分布を有する単純な5セル・パターン(標的セル及び隣接セルが同じワード線及びビット線上にある)を示すが、他のパターンには、標的セル周りのセルの異なる配置、並びに/又は異なるセル量及び/若しくはセル内の異なる電荷分布が関係し得る。同じパターンの組はアレイの大きな部分に施されることを期待し得るが、前述のパターンはアレイの特定の部分のみに適用可能であり得る(例えば、アレイのエッジにおける標的セルは、一方側に隣接セルを有しないので、別のパターンの組をエッジにおけるセルについて使用し得る)各セルはこのパターン・マッチング手法とは別個に検査し得るので、特定のセルは、1つのインスタンスにおいては標的セルとみなし得る一方、別のセルが標的化される場合、周囲セルの1つであり得る。
図5は、本発明の実施例による、NVメモリ・アレイにおける低確信度セルを識別するためのパターン・マッチングの方法のフロー図を示す。前述の方法では、メモリ内のデータの特定のページは、ECCユニットで補正することが可能でなかった1つ又は複数のエラーを有し、前述のエラーは上述の電荷分布の影響のタイプによって少なくとも部分的にもたらされ、よって、正しいデータは、その電荷分布を解析することによって求め得る。前述の議論については、ECCユニットが、そのページにおけるエラー全てを補正することが可能でないためにページ全体に障害が生じているとみなされるが、ECCコード・ブロック・サイズにより、障害が生じたユニットがページとは異なるサイズになった場合、ページ以外のユニット(例えば、セクタ)も、このようにして検査し得るものとする。
図示したフロー図500では、510で、障害が生じたページを含む、消去ブロック全体における2進デ―タを読み出すことができる。(エラーを有していることが知られているがページ内のエラーの位置が知られていないため)ページ全体に障害が生じても、当該データの一部が誤りであっても、ページ内のセル全てからデータを読み出すことがなお可能である。NVメモリが通常、配置されるやり方が理由で、障害が生じたページのみならず、消去ブロック全体を読み出すことが望ましく、これにより、消去ブロック内の正しく読み出されたページ内のセルが、同じ消去ブロック内の障害が生じたページ内のセルに影響を及ぼし得る。
520では、消去ブロックから読み出される2進デ―タは、電荷レベル値に変換し得る。前述の変換の厳密なやり方は、各セルに含まれる電荷レベル(及び、よって、2進デ―タのビットの数)、並びに、前述のレベルそれぞれが、特定の2進デ―タ値をどのようにして示すかに依存し得る。前述の変換の結果は、消去ブロック内のセル毎の電荷レベル値を含む電荷レベル・マップに入れ得る。マップは、更に前述のセルが物理的に、かつ/又は電気的にどのようにして関係しているかを(例えば、マップの編成によって)示し得る。よって、前述のセルは、後続するパターン・マッチング処理に意義ある群にまとめ得る。唯一のやり方でないが、前述の編成のやり方の1つは、消去ブロック内のセルの行及び列の電気的レイアウトを反映する2次元アレイにマップを編成することである。
530では、実際のパターン・マッチング処理を行い得る。図4の上述の記載は、前述のパターン・マッチング処理の一例を表す。マッチングされたパターン内の標的セルである各セルは、540において、低確信度セルと表し得る。消去ブロック内のセル全てを、標的セルとしてのセルを有するパターンについて検査する必要がある訳でない。標的セルが、障害が生じたページにあるセルの群のみを、パターン・マッチングを求めて検査すればよい。ページはしばしば、交互のビット線に割り当てられるので、これは、パターン・マッチング処理を単純にし得る。図4を参照すれば、中央のビット線は、障害が生じたページ内にあるが、左右のビット線は、正しいデータを含んでいるとECCが示した別のページにある。よって、パターン・マッチングは、標的セルが、障害が生じたページにないセルの群に適用しなくてよい。これは更に、(標的セル以外の)パターン内の別のセルが、正しくないデータを含んでいる可能性を削減する、この例では、標的セルと同じビット線上のセルのみが、障害が生じたページにあるからである。
基準電圧の至近性による識別
前述の処理は図3の動作311、315に対応する。セル内に蓄積された電荷のアナログ値が、そのセルを読み出す場合に使用される基準電圧に非常に近い場合、非常に簡単に、電荷の電圧がその基準電圧の誤った側の電圧になってしまい、誤った読み取り値をもたらす。図6の処理は、この現象を利用する。
図6は、本発明の実施例による、NVメモリ・アレイにおける低確信度セルを識別するためのやり方として、基準電圧に対する至近性を使用する方法のフロー図を示す。フロー図600では、「変動する読み出し基準(リード・リファレンス)(MRR)」として本明細書及び特許請求の範囲に表す処理は、各セル内のアナログ電荷電圧を測定するために使用し得る。610では、各読み出し基準電圧は、特定の範囲の値により、増加させ得る。基準電圧を増加させるためには、実現可能な如何なる手法を使用してもよい。この増加処理は、620で判定するように、MRR処理が完了するまで動作610乃至650にわたって循環し得る。複数の基準電圧が存在しているマルチレベル・セル手法の場合、一部の実施例は、新たなサイクル毎に単一の基準電圧を増やし得る一方、他の実施例は、新たなサイクル毎の複数の基準電圧を増やし得る。一部の実施例は、新たなサイクル毎に基準電圧全てを増加し得る。前述の実施例は、別々のサイクル上で前述の代替策毎に切り換え得る。
各インクリメントの後、障害が生じたページ内の各セルにおいて記憶されたデータの2進値を630で読み出し得る。640に示すように、特定のセルから読み出されたデータが先行パスと異なる場合、それは、増加した基準電圧がアナログ電荷値とちょうどクロスしており、アナログ電荷値は、(1つのインクリメントの範囲内の)基準電圧に非常に近くなければならないことを示す。この値は次いで、650において、アナログ電荷値のマップにおいて記録し得る。これは、先行パスから変わったデータを示すセル毎に行い得る。複数の基準電圧を有するMLCメモリでは、どの基準電圧にクロスしたかを求めるために、特定の前後の2進値を検査する必要があり得る。障害が生じたページ内のセル全てのアナログ電荷値が記録されるまで610乃至650の処理を繰り返し得る。
基準電圧の増加値全てが試されたが、ページ内のセル全てが、それらのアナログ電荷について記録された値を有している訳でない場合、記録されていないセルは、検査された範囲外のアナログ電荷値を有し得る(この場合、範囲は、更なる検査のために拡張し得る)か、又は、セルに完全に障害が生じ得る(この場合、他の補正措置(本明細書及び特許請求の範囲には記載していない)を採り得る)。セル全体が、記録済値を有するとした場合、処理は、動作620から動作660に移り得、ここで、基準電圧は、正常な読み出し動作を行い得るように、その元の値に戻し得る。
この点で、セル毎に記録されたアナログ電荷値は、670で、戻された基準電圧と比較し得る(基準電圧の戻された値を記録し得、記録済値はこの比較において使用されるので、実際のセルに対する更なるアクセスは必要でない)。戻された基準電圧に近いアナログ電荷値を何れかのセルが有する場合、そのセルは、680において低確信度セルとして識別し得る。「低確信度」とみなされる状態になる前の基準電圧にアナログ電荷値がどの程度近い必要があるかは種々の要因に依存し得る。一部の実施例では、基準電圧に「近い」とみなされるアナログ電荷値の範囲、及び/又はこの範囲の中心点は処理中に変え得る。例えば、かなり狭い範囲の電圧をまず、使用し得る。これが、満足な結果をもたらさない場合、範囲は、「低確信度」カテゴリにおいて、より多くのセルを含める試行において拡大し得る。満足な結果が得られるまで、前述の変更のいくつかの繰り返しを行い得る。
電荷調節による補正
この処理は、図3の動作320、324及び328に対応する。一般に、これには、セルから、正しいデータを得る可能性を向上させるよう予測されたやり方で低確信度セルのアナログ電荷値を調節することが関係する。
図7は、本発明の実施例による、アナログ電荷値の調節により、NVメモリにおけるデータを補正する方法のフロー図を示す。障害が生じたページ内の低確信度セルのアナログ電荷値を調節するために、前述のアナログ電荷値の開始値が知られていなければならない。図6内の動作610乃至650のMRR処理が既に、低確信度セルを識別するよう行われている場合、前述の開始値は既に知られている。そうでない場合、MRR処理は、フロー図700の方法を開始する前に行い得る。
低確信度毎に、710では、予測された調節の量(電荷量を変える、これにより、アナログ電荷値が変わる)、及びセルに対する予測された調節の方向(電荷の加算又は減算)を求め得る。何れかの実現可能な方法を、この調節の方向及び量を求めるために使用し得る。720では、この調節をアナログ電荷値に行い得る。物理セル内に存在する実際の電荷を変えるよりも、この処理は、障害が生じたページについて先行して構成されたアナログ電荷マップ内の記録されたアナログ電荷値に対して数学的に行い得る。
検証を行う前にこのようにして調節するための低確信度セルの数は、数多くの要因に依存し得る。低確信度セル全て(又は、少なくとも多数のセル)を調節することにより、正しかった先行データを不良データに変え、問題を悪化させるという危険が冒される。検証前に少数のセルを調節することにより、検証中に、有効なECC結果を得るために十分な不良セルを変更せず、よって、変更が正しかったか否かが分からないという危険が冒される。しかし、変更する対象のセルの数は、730で求められたように、その数のセルが変更された後に求め得、処理は740に進み得、740では、低確信度セルの新たなアナログ電荷値は前述の同等の2進デ―タに変換される。
ランダムなデータ置換による補正
この処理は、図3の動作321に対応する。一般に、ECC処理などの他の手段により、エラーを補正することが可能であるほどエラーが少ないページを生成する組み合わせが見つかるまで低確信度セル内のランダムなデータを試行することが関係する。図7の処理について説明したように、検証を試行する前にこのようにして変更する対象のセルの数は変動し得る。一部の実施例では、好ましい数の、変更対象のセルは、限定列挙でないが、1)どの補正手法が使用されるか、2)障害が生じたアドレス範囲に含まれるセルの数等の種々の要因に依存し得る。
検証
検証は図3の動作330に対応する。ページ内のデータの検証は、エラーの量が、ECCが補正できる能力を超えていないという前提で、残りのエラーを補正するECC処理による、2進データのページの処理などの何れかの実現可能なやり方によって行い得る。補正されたデータがこのようにして検証された場合、補正されたデータは、使用することが可能な記憶場所に書き込み得る。これは、おそらく、元々障害が生じた消去ブロックと同じ消去ブロックにおける同じページに対してでない。その物理記憶装置場所における不良が元々エラーをもたらしていることがあり得るからである。他方で、新たなデータ・ページがなお、補正可能でないエラーを有する場合、種々の手順(すなわち、1)ページ内のデータが失われているものとし、データを廃棄する、2)新たなデータ又は元のデータに対して先行する動作を再実行するが、データを補正するために別のパラメータを使用する、3)異なる低確信度セルに対する先行動作を再実行する、4)低確信度セルを求めるために異なる検出動作を実行する、5)その他、などであるが、そのうちの1つ又は複数に限定されない)に従い得る。
一部の実施例では、前述の動作は、(例えば、図1のエラー解析装置144により、)NVメモリのコントローラ内で行い得る。他の実施例では、前述の動作は、(例えば、コンピュータ・システムにおける1つ又は複数の主プロセッサにより、)NVメモリの外部で行い得る。更に他の実施例では、前述の動作は、前述の複数の装置(例えば、NVメモリ・コントローラ内の一部の動作)によって行い得る。これらは、動作を行い得るいくつかのやり方に過ぎない。
上記説明は、限定的でなく、例証的であることを意図している。当業者は変形を思いつくであろう。前述の変形は、特許請求の範囲記載の範囲によってのみ限定される本発明の種々の実施例において含まれることを意図している。

Claims (20)

  1. 方法であって、
    電荷ベースの不揮発性(NV)メモリにおける特定された範囲のシーケンシャル・メモリ位置から読み出された2進デ―タが、前記NVメモリに関連付けられたエラー訂正コード(ECC)ユニットによって補正されていないエラーを含んでいると判定する工程と、
    前記特定された範囲内のどのメモリ・セルが、エラーである可能性が高いデータを生成したかを識別する工程と、
    エラーである可能性が高いとデータが判定されたセルの少なくとも一部のデータを変更する工程と、
    前記変更されたデータが、前記特定された範囲に対して正しいデータを前記ECCユニットが供給するのに十分正しいか否かを検証する工程と
    を含む方法。
  2. 請求項1記載の方法であって、前記識別する工程は、
    少なくとも前記特定された範囲内の前記メモリ・セルの電荷レベル値のマップを生成する工程と、
    前記マップ内のセル群における前記電荷レベル値を、予め定められた電荷レベルのパターンと比較して、前記メモリ・セルのうちのどれが、エラーである可能性が高い2進データを生成したかを識別する工程と
    を含む方法。
  3. 請求項1記載の方法であって、前記識別する工程は、
    前記特定された範囲内のセルのアナログ電荷値を求める工程と、
    前記NVメモリの読み出し基準電圧の所定の電圧量内のアナログ電荷値を、前記特定された範囲内のどのセルが有しているかを判定する工程と
    を含む方法。
  4. 請求項1記載の方法であって、前記変更する工程は、エラーである可能性が高いと識別された前記メモリ・セルのアナログ電荷値を調節する工程
    を含む方法。
  5. 請求項1記載の方法であって、前記変更する工程は、エラーである可能性が高いと識別された前記メモリ・セルからの前記データの代わりにランダムな2進データを用いる工程を含む方法。
  6. 請求項1記載の方法であって、
    一範囲の電圧にわたって、読み出し基準電圧を増やす工程と、
    前記特定された範囲のシーケンシャル・メモリ位置内の2進デ―タをインクリメント毎に読み出す工程と、
    どのセルが、現在のインクリメントにおいて、先行するインクリメントと異なる2進デ―タを生成するかを識別する工程と
    を含む方法。
  7. 請求項1記載の方法であって、前記特定された範囲のシーケンシャル・メモリ位置がメモリ・ページである方法。
  8. プロセッサ及び電荷ベースの不揮発性(NV)メモリを含むコンピュータ・システムを備える装置であって、
    前記コンピュータ・システムは、
    前記NVメモリにおける特定された範囲のシーケンシャル・メモリ位置から読み出された2進デ―タが、前記NVメモリに関連付けられたエラー訂正コード(ECC)ユニットによって補正されていないエラーを含んでいると判定する機能と、
    前記特定された範囲内のどのメモリ・セルが、エラーである可能性が高いデータを生成したかを識別する機能と、
    エラーである可能性が高いとデータが判定されたセルの少なくとも一部のデータを変更する機能と、
    前記変更されたデータが、前記特定された範囲に対して正しいデータを前記ECCユニットが供給するのに十分正しいか否かを検証する機能と
    を行う装置。
  9. 請求項8記載の装置であって、前記識別する機能は、
    少なくとも前記特定された範囲内の前記メモリ・セルの電荷レベル値のマップを生成する機能と、
    前記マップ内のセル群における前記電荷レベル値を、予め定められた電荷レベルのパターンと比較して、前記メモリ・セルのうちのどれが、エラーである可能性が高い2進データを生成したかを識別する機能と
    を含む装置。
  10. 請求項8記載の装置であって、前記識別する機能は、
    前記特定された範囲内のセルのアナログ電荷値を求める機能と、
    前記NVメモリの読み出し基準電圧の所定の電圧量内のアナログ電荷値を、前記特定された範囲内のどのセルが有しているかを判定する機能と
    を含む装置。
  11. 請求項8記載の装置であって、前記変更する機能は、エラーである可能性が高いと識別された前記メモリ・セルのアナログ電荷値を調節する機能を含む装置。
  12. 請求項8記載の装置であって、前記変更する機能は、エラーである可能性が高いと識別された前記メモリ・セルからの前記データの代わりにランダムな2進データを用いる機能を含む装置。
  13. 請求項8記載の装置であって、
    一範囲の電圧にわたって、読み出し基準電圧を増やす機能と、
    前記特定された範囲のシーケンシャル・メモリ位置内の2進デ―タをインクリメント毎に読み出す機能と、
    どのセルが、現在のインクリメントにおいて、先行するインクリメントと異なる2進デ―タを生成するかを識別する機能と
    を含む装置。
  14. 製品であって、
    1つ又は複数のプロセッサによって実行されると、
    電荷ベースの不揮発性(NV)メモリにおける特定された範囲のシーケンシャル・メモリ位置から読み出された2進デ―タが、前記NVメモリに関連付けられたエラー訂正コード(ECC)ユニットによって補正されていないエラーを含んでいると判定する手順と、
    前記特定された範囲内のどのメモリ・セルが、エラーである可能性が高いデータを生成したかを識別する手順と、
    エラーである可能性が高いとデータが判定されたセルの少なくとも一部のデータを変更する手順と、
    前記変更されたデータが、前記特定された範囲に対して正しいデータを前記ECCユニットが供給するのに十分正しいか否かを検証する手順と
    を含む動作を行わせる命令を含むコンピュータ読み取り可能な有形媒体を備える製品。
  15. 請求項14記載の製品であって、前記識別する動作は、
    少なくとも前記特定された範囲内の前記メモリ・セルの電荷レベル値のマップを生成する手順と、
    前記マップ内のセル群における前記電荷レベル値を、予め定められた電荷レベルのパターンと比較して、前記メモリ・セルのうちのどれが、エラーである可能性が高い2進データを生成したかを識別する手順と
    を含む製品。
  16. 請求項14記載の製品であって、前記識別する動作は、
    前記特定された範囲内のアナログ電荷値を求める手順と、
    前記NVメモリの読み出し基準電圧の所定の電圧量内のアナログ電荷値を、前記特定された範囲内のどのセルが有しているかを判定する手順と
    を含む製品。
  17. 請求項14記載の製品であって、前記変更する動作は、エラーである可能性が高いと識別された前記メモリ・セルのアナログ電荷値を調節する手順を含む製品。
  18. 請求項14記載の製品であって、前記変更する動作は、エラーである可能性が高いと識別された前記メモリ・セからの前記データの代わりにランダムな2進データを用いる手順を含む製品。
  19. 請求項14記載の製品であって、前記動作は更に、
    一範囲の電圧にわたって、読み出し基準電圧を増やす手順と、
    前記特定された範囲のシーケンシャル・メモリ位置内の2進デ―タをインクリメント毎に読み出す手順と、
    どのセルが、現在のインクリメントにおいて、先行するインクリメントと異なる2進デ―タを生成するかを識別する手順と
    を含む製品。
  20. 請求項14記載の製品であって、前記特定された範囲のシーケンシャル・メモリ位置が、メモリのページである製品。
JP2011534940A 2008-12-18 2009-12-03 不揮発性メモリにおけるデータ・エラー回復 Expired - Fee Related JP5367835B2 (ja)

Applications Claiming Priority (3)

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
US12/316,986 2008-12-18
PCT/US2009/066612 WO2010080257A2 (en) 2008-12-18 2009-12-03 Data error recovery in non-volatile memory

Publications (2)

Publication Number Publication Date
JP2012507108A true JP2012507108A (ja) 2012-03-22
JP5367835B2 JP5367835B2 (ja) 2013-12-11

Family

ID=42267898

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011534940A Expired - Fee Related JP5367835B2 (ja) 2008-12-18 2009-12-03 不揮発性メモリにおけるデータ・エラー回復

Country Status (7)

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

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
US8190974B2 (en) * 2009-09-28 2012-05-29 Nvidia Corporation Error detection and correction for external DRAM
US8301980B2 (en) * 2009-09-28 2012-10-30 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 삼성전자주식회사 비휘발성 메모리 시스템
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
US8369143B2 (en) 2010-12-22 2013-02-05 HGST Netherlands B.V. Early detection of degradation in NOR flash memory
US8422303B2 (en) 2010-12-22 2013-04-16 HGST Netherlands B.V. Early degradation detection in flash memory using test cells
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 삼성전자 주식회사 플래시 메모리 시스템 및 플래시 메모리 시스템의 리드 방법
US9112537B2 (en) * 2011-12-22 2015-08-18 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
KR101625000B1 (ko) * 2012-03-29 2016-05-27 인텔 코포레이션 메모리 셀을 위한 적응적 판독 기준 이동
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 (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001503181A (ja) * 1996-10-25 2001-03-06 インテル・コーポレーション エラー位置指定コードを用いて複数レベルセルメモリの訂正を行う方法および装置
JP2001332096A (ja) * 2000-05-16 2001-11-30 Hitachi Ltd 不揮発性半導体メモリおよび不揮発性半導体メモリを用いた記録再生装置
JP2002133892A (ja) * 2000-10-25 2002-05-10 Fujitsu Ltd フラッシュメモリの欠陥管理方法
JP2004220068A (ja) * 2003-01-09 2004-08-05 Matsushita Electric Ind Co Ltd メモリカード及びメモリへのデータ書き込み方法
JP2005527062A (ja) * 2002-05-20 2005-09-08 サンディスク コーポレイション 格納されたデータの品質についての情報を用いることによる誤り訂正符号の効率向上およびマルチレベルメモリシステムの操作
JP2007157239A (ja) * 2005-12-05 2007-06-21 Toshiba Corp 記憶媒体、記憶媒体再生装置、記憶媒体再生方法および記憶媒体再生プログラム
JP2008204591A (ja) * 2007-02-22 2008-09-04 Hynix Semiconductor Inc メモリ素子の読み出し方法
JP2009064440A (ja) * 2007-09-06 2009-03-26 Samsung Electronics Co Ltd マルチ−ビットデータを格納するメモリシステム及びその読み出し方法
JP2009537056A (ja) * 2006-05-12 2009-10-22 アノビット テクノロジーズ リミテッド メモリ素子用の歪み推定と誤り訂正符号化の組み合せ
JP2011512611A (ja) * 2008-02-15 2011-04-21 サムスン エレクトロニクス カンパニー リミテッド 格納されたデータの誤りに基づいて基準電圧を制御するメモリデータ検出装置
JP2011514609A (ja) * 2008-02-19 2011-05-06 サムスン エレクトロニクス カンパニー リミテッド メモリ装置およびメモリデータ読み出し方法

Family Cites Families (28)

* 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
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
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
JP3914839B2 (ja) * 2002-07-11 2007-05-16 エルピーダメモリ株式会社 半導体記憶装置
US7231585B2 (en) * 2002-12-11 2007-06-12 Nvidia Corporation Error correction for flash memory
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 株式会社東芝 データ記憶システム
US7012835B2 (en) * 2003-10-03 2006-03-14 Sandisk Corporation Flash memory data correction and scrub techniques
US7437653B2 (en) * 2004-12-22 2008-10-14 Sandisk Corporation Erased sector detection mechanisms
JP4332132B2 (ja) 2005-05-11 2009-09-16 Tdk株式会社 メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
US7844879B2 (en) * 2006-01-20 2010-11-30 Marvell World Trade Ltd. Method and system for error correction in flash memory
US8055979B2 (en) * 2006-01-20 2011-11-08 Marvell World Trade Ltd. Flash memory with coding and signal processing
WO2007132453A2 (en) * 2006-05-12 2007-11-22 Anobit Technologies Ltd. Distortion estimation and cancellation in memory devices
US7568135B2 (en) * 2006-05-15 2009-07-28 Apple Inc. Use of alternative value in cell detection
JP5047288B2 (ja) * 2006-08-05 2012-10-10 ベンホフ ゲーエムベーハー エルエルシー 固体記憶素子及び方法
US8046660B2 (en) * 2006-08-07 2011-10-25 Marvell World Trade Ltd. System and method for correcting errors in non-volatile memory using product codes
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
JP2008090451A (ja) * 2006-09-29 2008-04-17 Toshiba Corp 記憶装置
US7904788B2 (en) * 2006-11-03 2011-03-08 Sandisk Corporation Methods of varying read threshold voltage in nonvolatile memory
KR100871700B1 (ko) * 2007-02-13 2008-12-08 삼성전자주식회사 불휘발성 메모리 장치에서 전하 손실에 기인한 오류 데이터정정 방법
US7619930B2 (en) * 2007-02-20 2009-11-17 Sandisk Corporation Dynamic verify based on threshold voltage distribution
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
US7966546B2 (en) * 2007-03-31 2011-06-21 Sandisk Technologies Inc. Non-volatile memory with soft bit data transmission for error correction control
US7966550B2 (en) * 2007-03-31 2011-06-21 Sandisk Technologies Inc. Soft bit data transmission for error correction control in non-volatile memory
US7903468B2 (en) * 2007-04-23 2011-03-08 Ramot At Telaviv University 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
US8291297B2 (en) 2008-12-18 2012-10-16 Intel Corporation Data error recovery in non-volatile memory

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001503181A (ja) * 1996-10-25 2001-03-06 インテル・コーポレーション エラー位置指定コードを用いて複数レベルセルメモリの訂正を行う方法および装置
JP2001332096A (ja) * 2000-05-16 2001-11-30 Hitachi Ltd 不揮発性半導体メモリおよび不揮発性半導体メモリを用いた記録再生装置
JP2002133892A (ja) * 2000-10-25 2002-05-10 Fujitsu Ltd フラッシュメモリの欠陥管理方法
JP2005527062A (ja) * 2002-05-20 2005-09-08 サンディスク コーポレイション 格納されたデータの品質についての情報を用いることによる誤り訂正符号の効率向上およびマルチレベルメモリシステムの操作
JP2004220068A (ja) * 2003-01-09 2004-08-05 Matsushita Electric Ind Co Ltd メモリカード及びメモリへのデータ書き込み方法
JP2007157239A (ja) * 2005-12-05 2007-06-21 Toshiba Corp 記憶媒体、記憶媒体再生装置、記憶媒体再生方法および記憶媒体再生プログラム
JP2009537056A (ja) * 2006-05-12 2009-10-22 アノビット テクノロジーズ リミテッド メモリ素子用の歪み推定と誤り訂正符号化の組み合せ
JP2008204591A (ja) * 2007-02-22 2008-09-04 Hynix Semiconductor Inc メモリ素子の読み出し方法
JP2009064440A (ja) * 2007-09-06 2009-03-26 Samsung Electronics Co Ltd マルチ−ビットデータを格納するメモリシステム及びその読み出し方法
JP2011512611A (ja) * 2008-02-15 2011-04-21 サムスン エレクトロニクス カンパニー リミテッド 格納されたデータの誤りに基づいて基準電圧を制御するメモリデータ検出装置
JP2011514609A (ja) * 2008-02-19 2011-05-06 サムスン エレクトロニクス カンパニー リミテッド メモリ装置およびメモリデータ読み出し方法

Also Published As

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

Similar Documents

Publication Publication Date Title
JP5367835B2 (ja) 不揮発性メモリにおけるデータ・エラー回復
TWI574277B (zh) 記憶體裝置中之錯誤校正操作
US9257204B2 (en) Read voltage setting method, and control circuit, and memory storage apparatus using the same
KR101979734B1 (ko) 메모리 장치의 독출 전압 제어 방법 및 이를 이용한 데이터 독출 방법
US9728263B2 (en) Method and device for iteratively updating read voltages
EP2776929B1 (en) Soft information generation for memory systems
JP5399403B2 (ja) マルチレベルフラッシュメモリの系統誤差訂正
US8909982B2 (en) System and method for detecting copyback programming problems
US8910020B2 (en) Intelligent bit recovery for flash memory
US9563508B2 (en) Memory management method, memory control circuit unit and memory storage apparatus
US9595343B1 (en) Early prediction of failure in programming a nonvolatile memory
CN111354402A (zh) 用于艰苦装置条件的动态存储器编程电压阶跃
KR20130027138A (ko) 에러 정정 방법 및 이를 이용하는 메모리 장치
JP5067645B2 (ja) プログラミング検証のためのセグメント化されたビットスキャン
KR20170052066A (ko) 메모리 시스템 및 이의 동작 방법
US20210232342A1 (en) Temperature correction in memory sub-systems
KR20190052436A (ko) 반도체 메모리 장치 및 그 동작 방법
US9152497B2 (en) Data recovery from blocks with gate shorts
US20160012916A1 (en) Semiconductor memory device and memory system
US10310942B2 (en) Memory system
CN109215716B (zh) 提高nand型浮栅存储器可靠性的方法及装置
US11621048B2 (en) Positioning read thresholds in a nonvolatile memory based on successful decoding
CN117636922A (zh) 产生表征相对于电压分布施加的读取电压电平的元数据的存储器装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121030

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130611

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130729

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130813

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130911

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees