JP2009526340A - フラッシュディスクのメモリの寿命を推定して報告するための方法 - Google Patents

フラッシュディスクのメモリの寿命を推定して報告するための方法 Download PDF

Info

Publication number
JP2009526340A
JP2009526340A JP2008553887A JP2008553887A JP2009526340A JP 2009526340 A JP2009526340 A JP 2009526340A JP 2008553887 A JP2008553887 A JP 2008553887A JP 2008553887 A JP2008553887 A JP 2008553887A JP 2009526340 A JP2009526340 A JP 2009526340A
Authority
JP
Japan
Prior art keywords
memory device
grade
value
data
memory
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.)
Pending
Application number
JP2008553887A
Other languages
English (en)
Inventor
ビシュコフ、イヤル
メイル、アブラハム
ジグレル、アロン
ポメランツ、イツァーク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Western Digital Israel Ltd
Original Assignee
SanDisk IL Ltd
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 SanDisk IL Ltd filed Critical SanDisk IL Ltd
Publication of JP2009526340A publication Critical patent/JP2009526340A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • 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/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • 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/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • 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/0409Online test
    • 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/50Marginal testing, e.g. race, voltage or current testing
    • G11C2029/5002Characteristic

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

【課題】メモリ・デバイスを管理するための方法、そのように管理されるメモリ・デバイス、そしてそのようなメモリ・デバイスを含むシステムを得る。
【解決手段】デバイス上でのデータ・オペレーションの後、デバイスの耐用寿命パラメータの値がモニターされる。このモニタリングはデバイスによって実行される。その値からデバイスのグレードが推測される。好適耐用寿命パラメータは、処理の失敗したデータへの処理の成功したデータの比率、そしてデバイスの電力消費における偏差を含む。グレードは、メモリ・デバイスの寿命の予想として機能する。好適グレードは、比較グレード、最大グレードおよび平均グレードを含む。
【選択図】図2

Description

本発明は、一般的にデジタル・メモリ・デバイスにおける、そして特に取り外し可能なフラッシュメモリ・デバイスにおける信頼性劣化のビルトイン検出のための方法に関する。
デジタル・メモリ・デバイスは、重要なデータに対して信頼可能なメモリ・デバイスとして頻繁に用いられる。そのような装置は寿命が限られており、また複雑であるため、デジタル・メモリ・デバイスが故障した場合、大切なデータは失われてしまう。不揮発性記憶システムは、メモリおよび制御システムを含むが、これらは、時々、同じシリコンの基材上に設けられる。制御システムが実行するタスクの一つは、エラー訂正である。
エラー訂正コード(ECC)は、記憶素子の特性または使用環境の特徴によって発生する、データにおける時折のエラーを検出し、そのエラーを修復し、ユーザの要求に対して、訂正された本来の情報を提供する。ECCシステムには、訂正可能なエラー数に関する、構造的な限界がある。過度に多くのエラーに遭遇すると、情報を修復することができず、喪失と報告することも、あるいはエラーがあるままの情報をユーザへ送ることもある。
メモリ・デバイスを用いるソフトウェア・アプリケーションは、訂正システムがデータの修復に失敗するまで、情報は正しいと仮定する。メモリがまだ完全に機能する限り、メモリが消耗して破損しつつあるというユーザへの指標は全くない。注目すべきは、エラー・レベルは、障害の前にメモリの寿命を予測するのに用いることができる複数の早期警告徴候の僅か一つであることである。
今日、ユーザ(そしてアプリケーション)は、記憶データの状態(ステートあるいはコンディション)に気づいていない。したがって、ユーザは、データを失う危険性を減少させる積極的な対策をとることができない。そのような対策は、例えば、データのバックアップを作成する、データを新しい記憶メディアへ移動させる、そしてメモリ・デバイスの問題の領域を他の領域へ再書き込みすることを含む。
現状技術は、メモリ・デバイスの「ヘルス」(すなわち、作動信頼性能)を報告するための方法を提供しない。いくつかの従来の技術による方法は、内部負荷平衡の目的で、デバイスの使用(すなわち、デバイスへの書き込み回数)を記録するが、それらの方法は、ユーザまたはアプリケーションへ早期警告表示を提供する目的で設計されたものではない。デバイスの使用と、デバイスの残りの寿命との間には相関性があるが、そのような相関性は、(年齢のみに基づいて人の寿命を予測することに関わる不正確性に類似する)デバイス間の、自然でランダムな変動があるため、絶対的なものではない。
メモリ・デバイスのヘルスをモニターしようとする方法は、本技術において既知であるが、ホスト・システム上で実行するプログラムに限られている。したがって、これらの方法は、エラーを訂正するためにエラー訂正方法を適用した後の、訂正された情報を取り扱うのみである。従来の技術によるシステムの一例が、CAクパチーノに在るシマンテック社から入手可能な「ノートン・システム・ドクター(NSD)」製品に含まれる(またNSD製品マニュアルに含まれる文書ID:2001082218352309内に説明があり、ノートン・ウェブ・サイト(www.norton.com)上でも見ることができる)「ディスク・ヘルス」と呼ばれる機能内に提供されている。データがメモリ・デバイスから読み出されるため、データが訂正される前にホスト・システムが生データにさらされることはない。この局面は、そのような従来の技術による方法を、メモリ・デバイスのヘルスにおける初期の劣化に対して鈍感なものにする。
そのようなメモリ・デバイスのユーザには、デバイスのヘルスが悪化して故障確率が高くなるときに早期警告表示を与えることが望ましいであろう。
メモリ・デバイス上に属して、データを訂正しようとの試みの前にメモリ・デバイス上で指標的長命パラメータの実際の劣化を検出して報告する方法に従って作動するシステムを持つことは、さらに望ましいであろう。そのようなシステムは、現代のマルチレベル・フラッシュメモリ・デバイスに対しては有意義で重要であろう。なぜなら、マルチレベル・フラッシュメモリ・デバイスは、伝統的なシングルレベル・フラッシュメモリ・デバイスよりも固有寿命が短いが、ルーチン作動を遅くすることなく老化の徴候を測定できるためである。
本発明の目的は、一般的にデジタル・メモリ・デバイス、そして特に取り外し可能なフラッシュメモリ・デバイスにおける信頼性の劣化のビルトイン検出のための方法を提供することである。本発明は、典型的な例としてフラッシュメモリ・デバイスを説明するが、他のメモリ・デバイスにも適用できる、また他のメモリ・デバイスをもカバーすることを意図している。
明確にする目的で、以下のいくつかの用語を、特に本出願の内容に対して定義する。本出願内で用いる用語「耐用寿命パラメータ」は、メモリ・デバイスの耐用期間中に値が変化するメモリ・デバイスの変数に言及し、メモリ・デバイスの少なくとも一つのセルの相対的に劣化したヘルスを表し、そしてデバイスの寿命と相互に関連する。そのようなパラメータは、例えば、平均エラー数、プログラミング・サイクル数、そしてビットがメモリへ書き込まれるときに(プログラミング・オペレーションの第一のプログラミング・パルスで)論理状態を反転させたビット数を含む。
本発明は、シングルレベル・セル(SLC)フラッシュメモリおよびマルチレベル・セル(MLC)フラッシュメモリの両方に適用できる。以降の考察は主にSLCセルに集中するが、本発明がどのようにMLCセルに適用できるのかは、同業者には明らかである。本文で用いる用語「消去」および「書き込み」は、メモリ・セルのスレショルド電圧を設定することに言及する。SLCセルに対して消去は、典型的に、1ロジック状態に対応する電圧を設定し、書き込みは、典型的に、0ロジック状態に対応する電圧を設定する。本文では、用語「書き込み」および「プログラミング」を置換可能に用いている。本発明は、特に、一度に1ページを読み取る、そしてプログラムするNANDタイプ・フラッシュメモリに適用可能である。
本出願内で用いる用語「ブロック」は、単一オペレーションで消去が可能な、メモリ内の最小セル数に言及する。本出願内で用いる用語「ページ」は、単一オペレーションで書き込みが可能な、メモリ内の最小セル数に言及する。典型的に、1ブロック内には、複数のページが存在する。本出願内で用いる用語「グレード」は、ページまたはブロックの耐用寿命パラメータの値に基づく、メモリ・ページまたはブロックの信頼性の測度に言及する。注意すべきは、消去オペレーションが、典型的に(1ページに対してではなく)1ブロックに対して実行されることである。したがって、消去オペレーションに関わるグレードは、ブロックの耐用寿命パラメータに基づくブロックの信頼性の測度に言及する。
本出願内で用いる用語「初期ヘルス」は、ページまたはブロックの、基準値からのグレードの偏差を表す耐用寿命パラメータに言及する。ブロックは、「耐用期間」の開始時における初期ヘルスが各々異なる。本出願内で用いる用語「相対的に劣化したヘルス」は、ブロックが製造されてテストされた初期ヘルスからの、ブロックまたはページのヘルスの劣化に言及する。ブロックのヘルスは、異なる進度で劣化する。本出願内で用いる用語「健常なセル」は、データ・オペレーションに関連した一連のプログラミング・パルスの後で論理状態が良好に変化しているセルに言及する。
さらに、本出願内で用いる用語「メモリ・デバイス」は、エラーが生じ得る物理プロセスを介してデータを記憶する不揮発性メモリに言及する。そのようなメモリ・デバイスは、半導体、磁気、ホログラフィック、光学、そして他の物理2値論理記憶技術に基づく、ポータブル・デバイスおよび固定デバイスを含む。
図1は、SLC・NANDタイプ・フラッシュメモリ・デバイスの、典型的な書き込みオペレーションのためのオペレーション・プロシージャを表すフローチャートである。フラッシュメモリ・デバイスのメモリのコントローラが、メモリに、特定な情報をページへ書き込むよう指示すると、メモリは一連のオペレーションを実行する。まず、メモリ・バッファへデータを書き込む(ブロック10)。それから、書き込みオペレーション・データの宛先(すなわち、メモリの物理ロケーション、または「ワード・ライン」)を選択する(ブロック12)。プログラミング・ステップは、複数の短いプログラミング・パルスへ分割する。プログラムすべきすべてのビットをプログラムするために、第一のパルスを適用する(ブロック14)。各プログラミング・サイクルの後、プログラムされたビットをチェックし、ビットがスレショルド・レベル(このレベルは、標準読み取りスレショルド・レベルよりも高い)を満たしていることを検証する(ブロック16)。すべてのビットが正しい値になっていないならば(ブロック18)、追加のプログラミング・サイクルを実行する(ブロック20)。オプションとして、追加のサイクルを、より高い電圧で実行してもよい(ブロック20)。すべてのビットがバッファ値に整合する場合、プログラム・サイクル(すなわち、書き込みオペレーション)は終了する(ブロック22)。
通常、プログラミング・サイクルは、書き込みオペレーションの終了まで、徐々に電圧レベルを増加させて実行する。しかし、あるタイプのNANDタイプ・フラッシュメモリ・デバイスでは、第一のパルスと第二のパルスとの間の差異は、以降のパルスよりも非常に大きい。そのようなケースでは、2、3の、初期の大きな増分の後、小さなステップで電圧を増加させるためのオプションを利用する。
フラッシュメモリへデータを選択的に書き込む(すなわち、プログラミングする)プロセスは、典型的にSLC実施例では、1ロジックから0ロジックへ選択メモリ・セルの論理状態を変化させることを必要とする。フラッシュメモリからデータを選択的に消去するプロセスは、典型的に0ロジックから1ロジックへ選択メモリ・セルの値を変化させることを必要とする。しかしながら、この選定は任意であり、逆に指定しても、等しく実行可能である。
NANDタイプ・フラッシュメモリは、データがフラッシュメモリ・セル内へプログラムされる前にデータを受信する一つ以上のページ・バッファ(すなわち、読み取りあるいは書き込み能力を持つメモリ・セル)を持つ。各フラッシュメモリ・セルが1ビットの情報を含み、且つ消去済みフラッシュメモリ・セルが1ロジックを持つフラッシュメモリに対してページをプログラムする方法は、以下のステップを実行する。
(1)ページ・バッファの対応するセル内に0ロジックを持つフラッシュメモリ・セルに対してのみプログラミング電圧パルスを適用する。プログラミング電圧パルスは、セルを所望のスレショルド電圧へ設定する単一の試みである。典型的に、要求電圧レベルを達成するためには、多くのそのようなパルスが必要である。
(2)メモリ内へプログラムされたデータを読み取る。
(3)読み取ったときに0ロジックを返すすべてのフラッシュメモリ・セルに対して、ページ・バッファの対応するセルを1ロジックへ設定する。
(4)ページ・バッファのすべてのセルが1ロジックを含むまで、あるいはパルス数が許容最大数を超過するまで、ステップ1から3を繰り返す。そして
(5)パルス数が許容最大数を超過したならば、ページ・プログラミング・オペレーションに対して、失敗ステータスを返す。
本発明は、フラッシュメモリ・デバイスのメモリ・コントローラが、フラッシュメモリ・デバイス内の劣化の徴候を検出して、フラッシュメモリ・デバイスの寿命に関する信頼可能な予測を提供することが可能な、いくつかの好適実施例を含む。グレードから推測する耐用寿命パラメータは、フラッシュメモリ・デバイスの寿命の「予想」として機能する。劣悪な耐用寿命パラメータを持つデバイスは、良好な耐用寿命パラメータを持つデバイスよりも、比較的に短い寿命を示す。
好適実施例においては、システムは、フラッシュメモリからデータを読み取る際のエラー確率をモニターする。通常、この統計は、フラッシュメモリ・コントローラのECCに利用可能であり、フラッシュメモリそれ自体への直接的なアクセスを必要としない。いくつかのフラッシュメモリ・デバイスでは、フラッシュメモリ内にECCが最初から組み込まれている。そのようなデバイスにおいては、エラー数に関する情報が、コマンドによってメモリ・コントローラへ利用可能である。
もう一つの好適実施例においては、システムは、プログラミング中、データ・ビットの状態を変化させるのに必要な、平均あるいは最大パルス数をモニターする。フラッシュメモリ・デバイスでは、この数は、典型的に、(フラッシュメモリのタイプに応じて)4から25プログラミング・パルスになる。フラッシュメモリが劣化するにつれ、フラッシュメモリへデータを書き込むのに必要なパルス数は増加する。
もう一つの好適実施例においては、システムは、任意数のパルスの後の、データ・ビットの論理状態の正常な変化の数をモニターする。フラッシュメモリの劣化とともに、より多くのビットが、書き込みのために複数のパルスを必要とするようになるため、例えば、第一のパルス後に正しくプログラムされているビット数は減少する。
したがって、本発明によれば、メモリ・デバイスを管理するための、以下のことを含む方法が初めて提供される。(a)メモリ・デバイス上でのデータ・オペレーションの後、メモリ・デバイスの耐用寿命パラメータの値をモニターすること。このモニタリングは、メモリ・デバイスが実行する。そして(b)その値から、メモリ・デバイスのグレードを推測すること。
耐用寿命パラメータは、処理の失敗したデータへの、処理の成功したデータの比率であることが好ましい。
択一的に、耐用寿命パラメータは、メモリ・デバイスの電力消費における偏差である。偏差は、複数のオペレーションに対する測定値の平均であることが最も好ましい。
グレードは、メモリの寿命の予想として機能することが好ましい。
オペレーションはプログラミング・オペレーションであり、値は、メモリ・デバイスのページ内の少なくとも一つのセルの論理状態を変化させるのに必要な、オペレーションに関わるプログラミング・パルスの数であることが好ましい。
オペレーションは消去オペレーションであり、値は、メモリ・デバイスのブロック内の少なくとも一つのセルの論理状態を変化させるのに必要な、オペレーションに関わるプログラミング・パルスの数であることが好ましい。
オペレーションはプログラミング・オペレーションであり、値は、メモリ・デバイスのページ内の健常なセルの数であることが好ましい。
オペレーションは消去オペレーションであり、値は、メモリ・デバイスのブロック内の健常なセルの数であることが好ましい。
オペレーションは、データを書き込むこと、データを読み取ること、そしてデータを消去することからなるグループから選択されることが好ましい。
グレードは、所定基準値への現在値の比較グレード、モニタリング・デバイス内に記憶した複数の値の最大グレード、そしてモニタリング・デバイス内に記憶した複数の値の平均グレードからなるグループから選択されることが好ましい。
グレードが所定基準値への現在値の比較である場合、方法は、さらに(c)メモリ・デバイスの製造時にメモリ・デバイス内に所定基準値を記憶するステップを含むことが最も好ましい。
モニタリング・ステップは、グレードを推測する目的でメモリ・デバイスにアクセスすることを含むことが好ましい。
方法は、さらに、(c)モニタリング・デバイス内にグレードを記憶するステップを含むことが好ましい。
モニタリング・デバイスは、メモリ・デバイス、メモリ・デバイスの埋め込み型コントローラ、そしてメモリ・デバイスのホスト・システムからなるグループから選択されることが最も好ましい。
推測ステップは、メモリ・デバイスによって開始されることが好ましい。
推測ステップは、メモリ・デバイスのホスト・システムによって開始されることが好ましい。
推測ステップは、メモリ・デバイスの埋め込み型コントローラによって開始されることが好ましい。
推測ステップは、ホスト・システム上で作動しているアプリケーションによって開始されることが好ましい。
推測ステップは、ホスト・システム上で作動しているオペレーティングシステムによって開始されることが好ましい。
本発明によれば、データを管理するための、以下のものを含むメモリ・デバイスが初めて提供される。(a)メモリ。そして(b)コントローラ。このコントローラは、(i)メモリ上でのデータ・オペレーションの後、耐用寿命パラメータの値をモニターするよう、そして(ii)値から、メモリ・デバイスのグレードを推測するよう作動可能である。
グレードは、メモリ・デバイスの寿命の予想として機能することが好ましい。
本発明によれば、データを管理するための、以下のものを含むシステムが初めて提供される。(a)メモリを含むメモリ・デバイス。そして(b)前記メモリ・デバイス内に収容されたプロセッサ。このプロセッサは、(i)メモリ上でのデータ・オペレーションの後、耐用寿命パラメータの値をモニターするよう、そして(ii)その値から、メモリ・デバイスのグレードを推測するよう作動可能である。
グレードは、メモリ・デバイスの寿命の予想として機能することが好ましい。
これらの実施例および他の実施例を、以下で詳細に説明する。
さて、本発明を、例証としての添付の図面を参照しながら説明する。
本発明は、デジタル・メモリ・デバイスの信頼性の劣化をビルトイン検出するための方法に関する。本発明による、デジタル・メモリ・デバイスの信頼性の劣化をビルトイン検出するための原理および作用は、図面およびそれらの説明を参照することで、よりよく理解することができる。
さて、図面を参照する。図2は、本発明の好適実施例による、メモリ・デバイスのデータ・ページ(またはブロック)のグレードの劣化を時間の関数として表す質的グラフである。上述のように、グレードは、オペレーションに応じて、ページまたはブロックに言及する。図2の曲線は、メモリ・デバイスのページまたはブロックの各グレードを表す。そのような曲線の一つ30を考察する。曲線30におけるページあるいはブロックの初期ヘルスは、線32として示す参照グレード値からの、曲線30における初期グレードの(t=0、すなわちメモリの製造あるいは試験時の)逸脱と定義する。任意の時間における、曲線30に関わるページあるいはブロックのヘルスの相対的劣化は、曲線30から線32へのグレード差34として示される。
図3Aは、本発明の好適実施例による、メモリ・コントローラが検出して修正するエラー数をモニターするための方法のオペレーション・プロシージャを表すフローチャートである。情報は、ルーチン的にメモリ・デバイスから読み出される、あるいはアプリケーション・アクションによって、またはデバイスのコントローラ上で実行されている内部プログラム(例えば、内部テストまたは定期的な保守プロシージャ)によって情報へのアクセスが開始される(ブロック40)。生の(すなわち、本来の記憶)データと記憶ECC情報とを読み取る(ブロック42)ことを含む、メモリ・デバイスからの情報の読み出しが行われている間に、データ内のエラーについて情報をチェックする(ブロック44)。
エラー検出あるいは訂正が適用され、エラーが修復される。生データに整合しないビットを計算し(ブロック44)、修復する(ブロック46)。ページあたりの修復ビットの数は、コントローラに、現在読み取られているページの信頼性の測度を提供する。本実施例においては、ページあたりの修復ビット数は、埋め込み型コントローラ(すなわち、メモリ・デバイスに埋め込まれたコントローラ)内に残留し、訂正データのみがアプリケーションへ転送される(ブロック48)。オプションとして、いくつかのECCアルゴリズムでは、修復データがコントローラによってメモリ(ブロック50)へ再書き込みされる。さらにコントローラは、またオプションとして、グレードとして知られるページの信頼性の測度としてエラー・ビット数をメモリへ記憶する(ブロック52)。
図4Aは、従来の技術および本発明の両方による、典型的データ・ページのフォーマットを表す簡略概略図である。ページ70は、関連データ、情報データ74の隣に記憶したECC情報、ECC72を典型的に持つ。ECC72は、通常、既知のエラー検出あるいは訂正方法(例えば、リード・サロモンまたはBCHアルゴリズム)に基づく。そのような訂正アルゴリズムは、有限レベル(例えば、512バイトのページにつき最高四つのエラービット)でデータを修正できる。
図4Bは、本発明の好適実施例による、ページのグレードを含むデータ・ページのフォーマットを表す簡略概略図である。ページ76は、ECC72および情報データ74の隣に記憶したグレード78を持つ。典型的レポート・グレード78は、512バイト・ページにつき一つのエラー・ビットである。グレード78が、危険なレベル(例えば、512バイトのページにつき四つのエラー・ビット)へ増加した、あるいはスレショルドを超過したとき、たとえ情報データ74が訂正されたとしても、アプリケーションは、アクションを開始することによって、グレード78からの情報に反応する。例えば、アプリケーションは、異なるページへ情報データ74を再書き込みできる、あるいは劣化を報告できる。それによって、情報データ74の長期信頼性を改善する。
択一的に、異なるタイプのグレード報告を採用することができる。図3Bは、本発明の好適実施例による、ホスト・システムへメモリ・デバイスのヘルスを報告するための方法のオペレーション・プロシージャを表すフローチャートである。本実施例においては、読み取りオペレーションに応答して、「ページ・エラー・グレード」がコントローラ内に記憶され、アプリケーションへ報告される(ブロック54)。アプリケーションからの直接的な要求に応答して(ブロック54)、メモリ全体で検出されたページ・グレードまたはダイナミックな(例えば、最悪な、あるいは平均的な)グレードが報告される。最悪のグレードを表すダイナミック・グレードのケースでは、データが読み取られる毎にもしエラー数が現在記憶されているグレードを超過するならば、このグレードは、ページに対して、あるいはメモリ・デバイス全体に対して検出された最大エラー数をグレードが示すように更新される。平均グレードを表すダイナミック・グレードのケースでは、このグレードは、データが読み取られる毎に更新される。グレード読み取りオペレーション(ブロック54)は、以下のステップを含む。ホスト・システムは、特定なページ・グレードあるいはデバイス・グレードを要求する(ブロック56)。それから、コントローラは、情報記憶ロケーション(例えばコントローラのメモリ、レジスタまたは埋め込み型メモリ)から情報を読み取る(ブロック58)。
オプションとして、アクションが、記憶グレードに基づくグレードの計算(例えば、ページの個々のグレードに基づいてすべてのページの平均または最大値)を要求する場合は、コントローラは、この計算を実行する(ブロック60)。それから、要求情報(すなわちグレード)がホスト・アプリケーションへ送信される(ブロック62)。
図5は、本発明の好適実施例による、ページを書き込むために要求されるパルス数、そして任意数のパルスの後に反転したビット数をモニターするための方法のオペレーション・プロシージャを表すフローチャートである。本実施例においては、コントローラは、ページ劣化の測度として、すべてのビットを正しい値に設定するのに要求されるパルス数を用いる。図5で概説するプロシージャは、図1で概説したプロシージャに類似している。データがメモリ・バッファ内に記憶され(ブロック80)、それから、書き込みオペレーションに対するメモリの物理ロケーションが選択される(ブロック82)。すべてのビットをプログラムするために第一のパルスが適用される(ブロック84)。各プログラミング・パルスの後、データが読み取られてバッファ内のターゲット・データに比較される(ブロック86)。
好適実施例においては、第一のパルスによって、または以降のプログラミング・パルスによってうまく反転しないページ内のビットの数あるいはパーセンテージを記録する(ブロック88)。この数は、メモリの老化またはヘルスの代替的な測度として用いる。もう一つの好適実施例では、ブロック88のステップへ択一的に、または追加的に、もう一つのカウンタを用い、そのカウンタを各パルスの後に1だけ増加させる(ブロック90)。カウンタは、プログラム・サイクル内のプログラム・パルス数を数える。そして、プログラミングを完了するのに要求されるパルス数を、メモリの老化またはヘルスの測度として用いる。
各プログラミング・サイクルの後、プログラムしたビットをチェックして、スレショルド・レベルが満たされているのかを検証する(このレベルは、標準読み取りスレショルド・レベルよりも高い)(ブロック92)。すべてのビットが正しい値にあるわけではない(ブロック92)場合、追加のプログラミング・サイクルを実行する(ブロック94)。オプションとして、この追加のサイクルは、より高い電圧で実行してもよい(ブロック94)。すべてのビットがバッファ値に整合する場合は、プログラム・サイクル(すなわち、書き込みオペレーション)を終了する(ブロック96)。
本発明による好適実施例においては、報告されるグレードが、(「ページ・グレード」とは対照的な)「ブロック・グレード」であり、ページ・グレードに関して読み取りおよび書き込みオペレーションから収集した情報は、ページを含む特定なブロックに対するブロック・グレードへ情報を寄与させるのみのために用いる。その結果、ヘルスは、「ブロック分解能」のみで報告される。
本発明による好適実施例においては、報告グレードは、デバイスの電力消費(例えば、基準電力消費または初期電力消費から)の偏差を表す。そのようなグレードは、データ・オペレーションを実行する際のデバイスの効率を示す。例えば、オペレーションを実行するために複数のプログラミング・パルスを必要とするデバイスは、少ないパルスでオペレーションを実行できるデバイスよりも大きな電力を消費する。
本発明による好適実施例においては、任意の期間にアクセスがなかったページは、ページのヘルスが長期間測定されていないので、ページの老化を査定できるよう自動的にバックグランドで読み込む。
本発明のもう一つの好適実施例においては、ブロックあるいはページの(製造時本来のメモリ内に記憶した)製造後の本来のヘルスに、測定ヘルスを比較することによって、デバイスの老化を評価する。この方法は、メモリのいくつかの領域が、他の領域よりも良好なヘルスを持つという、製造上の特徴であるデバイスに固有な非均一性に対して補正する。
図6Aは、本発明の好適実施例による、ホスト・システムに接続したフラッシュメモリ・デバイスを表す高度なブロック図である。図6は、図1に示すバン氏の米国特許第5,404,485号を適応させたものである。(以下、バン’485と呼ぶ)この特許は、すべての目的のために、参照により本文に完全に記述したものとする。フラッシュメモリ・デバイス100は、フラッシュメモリ102、コントローラ104、そしてランダムアクセスメモリ(RAM)106を含む。バン’485の「フラッシュコントロール14」に対応するコントローラ104、バン’485に説明があるように、そしてまたバン氏の米国特許第5,937,425号に説明があるように、RAM106の助けを借りてフラッシュメモリ102を管理する。この後者の特許は、以下にバン’425と呼ぶが、これも、すべての目的において、参照により本文に完全に記述したものとする。コントローラ104は、また、フラッシュメモリ102内に記憶したデータの再生をサポートする。フラッシュメモリ・デバイス100は、ホスト・システム108へ接続された状態で図示している。
図6Bは、本発明の好適実施例による、ホスト・システムへ接続した代替的なフラッシュメモリ・デバイスを表す高度なブロック図である。ホスト・システム110は、プロセッサ112および四つのメモリ・デバイス、RAM114、ブートROM116、大容量記憶デバイス(例えばハードディスク)118、そしてフラッシュメモリ・デバイス120を含み、これらすべてが共通バス122を介して通信する。フラッシュメモリ・デバイス100のように、フラッシュメモリ・デバイス120は、フラッシュメモリ102を含む。フラッシュメモリ・デバイス100と違って、フラッシュメモリ・デバイス120は、コントローラおよびRAMが欠如している。その代わり、プロセッサ112が、(例えば、イスラエル、クファル・サバに在るMシステムズ社のTrueFFS(登録商標)ドライバの方式で)バン’485およびバン’425の方法を実行する、そしてまた本発明のグレード・モニタリング方法を実行するソフトウェア・ドライバ(図示せず)を実行することによって、コントローラ104をエミュレートする。フラッシュメモリ・デバイス120は、また、プロセッサ112がフラッシュメモリ102と通信できるよう、バス・インターフェイス124を含む。
本発明を限られた数の実施例に関して説明したが、本発明の多くの変形、修正、そして他の応用が可能であることは明らかである。
フラッシュメモリ・デバイスの典型的な書き込みオペレーションのためのオペレーション・プロシージャのフローチャートである。 本発明の好適実施例によるメモリ・デバイスのデータ・ページ(またはブロック)のグレードの劣化を、時間の機能として表す質的グラフである。 本発明の好適実施例による、メモリ・コントローラによって発見されて修正されたエラー数をモニターするための方法のオペレーション・プロシージャを表すフローチャートである。 本発明の好適実施例による、メモリ・デバイスのヘルスをホスト・システムへ報告するための方法のオペレーション・プロシージャを表すフローチャートである。 従来の技術および本発明の両方による、典型的データ・ページのフォーマットを表す簡略概略図である。 本発明の好適実施例による、ページのグレードを含むデータ・ページのフォーマットを表す簡略概略図である。 本発明の好適実施例による、ページの書き込みに要求されるパルス数、そして任意数のパルスの後に反転したビット数をモニターするための方法のオペレーション・プロシージャを表すフローチャートである。 本発明の好適実施例による、ホスト・システムに接続したフラッシュメモリ・デバイスを表す高度なブロック図である、 本発明の好適実施例による、ホスト・システムに接続した代替的なフラッシュメモリ・デバイスを表す高度なブロック図である。

Claims (24)

  1. メモリ・デバイスを管理するための方法であって、
    (a)メモリ・デバイス上でのデータ・オペレーションの後、メモリ・デバイスの耐用寿命パラメータの値をモニターするステップ、なお、前記モニタリングはメモリ・デバイスが実行する、そして
    (b)前記値からメモリ・デバイスのグレードを推測するステップからなる、方法。
  2. 前記耐用寿命パラメータが、処理の失敗したデータへの、処理の成功したデータの比率である、請求項1の方法。
  3. 前記耐用寿命パラメータが、メモリ・デバイスの電力消費の偏差である、請求項1の方法。
  4. 前記偏差が、複数の前記オペレーションに対する測定値の平均である、請求項3の方法。
  5. 前記グレードが、前記メモリの寿命の予想として機能する、請求項1の方法。
  6. 前記オペレーションがプログラミング・オペレーションであり、前記値が、メモリ・デバイスのページ内の少なくとも一つのセルの論理状態を変化させるのに要求される、前記オペレーションに関わるプログラミング・パルスの数である、請求項1の方法。
  7. 前記オペレーションが消去オペレーションであり、前記値が、メモリ・デバイスのブロック内の少なくとも一つのセルの論理状態を変化させるのに要求される、前記オペレーションに関わるプログラミング・パルスの数である、請求項1の方法。
  8. 前記オペレーションがプログラミング・オペレーションであり、前記値が、メモリ・デバイスのページ内の健常なセルの数である、請求項1の方法。
  9. 前記オペレーションが消去オペレーションであり、前記値が、メモリ・デバイスのブロック内の健常なセルの数である、請求項1の方法。
  10. 前記オペレーションが、データを書き込むこと、データを読み取ること、そしてデータを消去することからなるグループから選択される、請求項1の方法。
  11. 前記グレードが、所定基準前記値への現在前記値の比較グレード、モニタリング・デバイス内に記憶した複数の前記値の最大グレード、そして前記モニタリング・デバイス内に記憶した前記複数の前記値の平均グレードからなるグループから選択される、請求項1の方法。
  12. 前記グレードが、前記所定基準値への前記現在値の前記比較グレードであり、前記方法が、さらに、
    (c)メモリ・デバイスの製造時にメモリ・デバイス内に前記所定基準値を記憶するステップからなる、請求項11の方法。
  13. 前記モニタリング・ステップが、前記グレードを推測する目的でメモリ・デバイスにアクセスすることを含む、請求項1の方法。
  14. さらに、
    (c)モニタリング・デバイス内に前記グレードを記憶するステップからなる、請求項1の方法。
  15. 前記モニタリング・デバイスが、メモリ・デバイス、メモリ・デバイスの埋め込み型コントローラ、そしてメモリ・デバイスのホスト・システムからなるグループから選択される、請求項14の方法。
  16. 前記推測ステップがメモリ・デバイスによって開始される、請求項1の方法。
  17. 前記推測ステップがメモリ・デバイスのホスト・システムによって開始される、請求項1の方法。
  18. 前記推測ステップがメモリ・デバイスの埋め込み型コントローラによって開始される、請求項1の方法。
  19. 前記推測ステップが、ホスト・システム上で作動しているアプリケーションによって開始される、請求項1の方法。
  20. 前記推測ステップが、ホスト・システム上で作動しているオペレーティングシステムによって開始される、請求項1の方法。
  21. データを管理するためのメモリ・デバイスであって、
    (a)メモリ、そして
    (b)コントローラからなり、
    前記コントローラが、
    (i)前記メモリ上でのデータ・オペレーションの後、耐用寿命パラメータの値をモニターするよう、そして
    (ii)前記値からメモリ・デバイスのグレードを推測するよう作動可能である、メモリ・デバイス。
  22. 前記グレードが、メモリ・デバイスの寿命の予想として機能する、請求項21のメモリ・デバイス。
  23. データを管理するためのシステムであって、
    (a)メモリを含むメモリ・デバイス、そして
    (b)前記メモリ・デバイス内に収容されたプロセッサからなり、
    前記プロセッサが、
    (i)前記メモリ上でのデータ・オペレーションの後、耐用寿命パラメータの値をモニターするよう、そして
    (ii)前記値から前記メモリ・デバイスのグレードを推測するよう作動可能である、システム。
  24. 前記グレードが、前記メモリ・デバイスの寿命の予想として機能する、請求項23のシステム。
JP2008553887A 2006-02-10 2007-02-08 フラッシュディスクのメモリの寿命を推定して報告するための方法 Pending JP2009526340A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US77178606P 2006-02-10 2006-02-10
PCT/IL2007/000173 WO2007091263A2 (en) 2006-02-10 2007-02-08 Method for estimating and reporting the life expectancy of flash-disk memory

Publications (1)

Publication Number Publication Date
JP2009526340A true JP2009526340A (ja) 2009-07-16

Family

ID=38345543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008553887A Pending JP2009526340A (ja) 2006-02-10 2007-02-08 フラッシュディスクのメモリの寿命を推定して報告するための方法

Country Status (7)

Country Link
US (1) US7512847B2 (ja)
EP (1) EP1982264A2 (ja)
JP (1) JP2009526340A (ja)
KR (1) KR101348665B1 (ja)
CN (1) CN101529526B (ja)
TW (1) TWI339337B (ja)
WO (1) WO2007091263A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012146129A (ja) * 2011-01-12 2012-08-02 Mega Chips Corp メモリアクセス制御装置

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7702935B2 (en) * 2006-01-25 2010-04-20 Apple Inc. Reporting flash memory operating voltages
US7861122B2 (en) * 2006-01-27 2010-12-28 Apple Inc. Monitoring health of non-volatile memory
JP4487978B2 (ja) * 2006-06-28 2010-06-23 セイコーエプソン株式会社 半導体記憶装置管理システム、プログラム、半導体記憶装置の管理方法
US7616508B1 (en) * 2006-08-10 2009-11-10 Actel Corporation Flash-based FPGA with secure reprogramming
JP4575346B2 (ja) * 2006-11-30 2010-11-04 株式会社東芝 メモリシステム
US7913032B1 (en) 2007-04-25 2011-03-22 Apple Inc. Initiating memory wear leveling
US20080288712A1 (en) 2007-04-25 2008-11-20 Cornwell Michael J Accessing metadata with an external host
US7765426B2 (en) * 2007-06-07 2010-07-27 Micron Technology, Inc. Emerging bad block detection
TWI362044B (en) * 2007-11-09 2012-04-11 Transcend Information Inc Storage apparatus and method for accessing data and for managing memory block
US7903486B2 (en) * 2007-11-19 2011-03-08 Sandforce, Inc. System, method, and computer program product for increasing a lifetime of a plurality of blocks of memory
US20090161243A1 (en) * 2007-12-21 2009-06-25 Ratnesh Sharma Monitoring Disk Drives To Predict Failure
TWI381391B (zh) * 2008-08-05 2013-01-01 Transcend Information Inc 可自我檢測使用狀態的儲存裝置及其檢測方法
CN101685675B (zh) * 2008-09-26 2014-01-15 美光科技公司 存储器单元操作
US7996725B2 (en) * 2008-11-14 2011-08-09 Nokia Corporation Providing protection for a memory device
US8205060B2 (en) * 2008-12-16 2012-06-19 Sandisk Il Ltd. Discardable files
US9104686B2 (en) 2008-12-16 2015-08-11 Sandisk Technologies Inc. System and method for host management of discardable objects
US20100153474A1 (en) * 2008-12-16 2010-06-17 Sandisk Il Ltd. Discardable files
US8849856B2 (en) * 2008-12-16 2014-09-30 Sandisk Il Ltd. Discardable files
US9020993B2 (en) 2008-12-16 2015-04-28 Sandisk Il Ltd. Download management of discardable files
US8375192B2 (en) * 2008-12-16 2013-02-12 Sandisk Il Ltd. Discardable files
US9015209B2 (en) 2008-12-16 2015-04-21 Sandisk Il Ltd. Download management of discardable files
JP5544712B2 (ja) * 2008-12-26 2014-07-09 富士通株式会社 メモリの寿命検出装置及び方法
US20100235473A1 (en) * 2009-03-10 2010-09-16 Sandisk Il Ltd. System and method of embedding second content in first content
US8380946B2 (en) * 2009-04-08 2013-02-19 International Business Machines Corporation System, method, and computer program product for estimating when a reliable life of a memory device having finite endurance and/or retention, or portion thereof, will be expended
US7975193B2 (en) * 2009-06-01 2011-07-05 Lsi Corporation Solid state storage end of life prediction with correction history
US20100306451A1 (en) * 2009-06-01 2010-12-02 Joshua Johnson Architecture for nand flash constraint enforcement
US8555141B2 (en) * 2009-06-04 2013-10-08 Lsi Corporation Flash memory organization
US8219776B2 (en) * 2009-09-23 2012-07-10 Lsi Corporation Logical-to-physical address translation for solid state disks
US8166258B2 (en) * 2009-07-24 2012-04-24 Lsi Corporation Skip operations for solid state disks
US8286004B2 (en) * 2009-10-09 2012-10-09 Lsi Corporation Saving encryption keys in one-time programmable memory
US8868809B2 (en) * 2009-11-30 2014-10-21 Lsi Corporation Interrupt queuing in a media controller architecture
US8321639B2 (en) * 2009-12-30 2012-11-27 Lsi Corporation Command tracking for direct access block storage devices
US8245112B2 (en) * 2009-06-04 2012-08-14 Lsi Corporation Flash memory organization
US8755229B1 (en) 2009-06-23 2014-06-17 Micron Technology, Inc. Limiting flash memory over programming
US8321727B2 (en) * 2009-06-29 2012-11-27 Sandisk Technologies Inc. System and method responsive to a rate of change of a performance parameter of a memory
US8400854B2 (en) * 2009-09-11 2013-03-19 Sandisk Technologies Inc. Identifying at-risk data in non-volatile storage
US8640005B2 (en) * 2010-05-21 2014-01-28 Intel Corporation Method and apparatus for using cache memory in a system that supports a low power state
JP2012027964A (ja) * 2010-07-20 2012-02-09 Panasonic Corp メモリ装置及びcpuの制御方法
US8463802B2 (en) 2010-08-19 2013-06-11 Sandisk Il Ltd. Card-based management of discardable files
US8549229B2 (en) 2010-08-19 2013-10-01 Sandisk Il Ltd. Systems and methods for managing an upload of files in a shared cache storage system
US8422303B2 (en) * 2010-12-22 2013-04-16 HGST Netherlands B.V. Early degradation detection in flash memory using test cells
US8788849B2 (en) 2011-02-28 2014-07-22 Sandisk Technologies Inc. Method and apparatus for protecting cached streams
US8560922B2 (en) 2011-03-04 2013-10-15 International Business Machines Corporation Bad block management for flash memory
CN102163165B (zh) * 2011-05-26 2012-11-14 忆正存储技术(武汉)有限公司 一种闪存错误预估模块及其预估方法
US10359949B2 (en) 2011-10-31 2019-07-23 Apple Inc. Systems and methods for obtaining and using nonvolatile memory health information
US9146855B2 (en) 2012-01-09 2015-09-29 Dell Products Lp Systems and methods for tracking and managing non-volatile memory wear
CN103325424A (zh) * 2012-03-23 2013-09-25 绿智慧流科技公司 闪存使用期限评估方法
DE102012024772A1 (de) * 2012-12-18 2014-06-18 Giesecke & Devrient Gmbh Verfahren zum Betreiben eines Teilnehmeridentifikationsmoduls sowie ein solches Teilnehmeridentifikationsmodul
US20140188405A1 (en) 2012-12-28 2014-07-03 International Business Machines Corporation Predicting a time of failure of a device
US10083069B2 (en) * 2013-06-27 2018-09-25 Sandisk Technologies Llc Word line defect detection and handling for a data storage device
CN103577337B (zh) * 2013-11-05 2017-02-22 华为技术有限公司 存储系统的空间分配方法和设备
US9305663B2 (en) * 2013-12-20 2016-04-05 Netapp, Inc. Techniques for assessing pass/fail status of non-volatile memory
CN103713857B (zh) * 2013-12-24 2017-06-27 华为技术有限公司 存储数据的方法及存储装置
KR20150112075A (ko) * 2014-03-26 2015-10-07 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
KR102291507B1 (ko) 2014-05-20 2021-08-20 삼성전자주식회사 메모리 컨트롤러의 동작 방법
US10235056B2 (en) 2014-09-26 2019-03-19 Western Digital Technologies, Inc. Storage device health diagnosis
CN104464809A (zh) * 2014-11-05 2015-03-25 武汉新芯集成电路制造有限公司 一种延长快闪存储器使用寿命的方法
US9798475B2 (en) 2015-03-11 2017-10-24 Toshiba Memory Corporation Memory system and method of controlling nonvolatile memory
CN106297898A (zh) * 2015-06-03 2017-01-04 杭州海康威视数字技术股份有限公司 一种NAND Flash存储器的寿命预警方法及装置
US20170068467A1 (en) * 2015-09-04 2017-03-09 HGST Netherlands B.V. Wear management for flash memory devices
CN106779008A (zh) * 2015-11-23 2017-05-31 杭州海康威视数字技术股份有限公司 Sd卡、摄像机和sd卡可靠性预警系统
CN107346668B (zh) * 2017-07-12 2020-08-21 武汉新芯集成电路制造有限公司 一种耐用性测试方法
US11016693B2 (en) 2018-06-21 2021-05-25 International Business Machines Corporation Block health estimation for wear leveling in non-volatile memories
WO2021040810A1 (en) * 2019-08-23 2021-03-04 Futurewei Technologies, Inc. Device lifetime prediction
CN111240887A (zh) * 2020-01-07 2020-06-05 苏州大学 基于三维闪存存储结构的错误页识别方法
CN115298652A (zh) * 2020-04-30 2022-11-04 北京嘀嘀无限科技发展有限公司 用于存储介质健康评估的系统和方法
CN112379832B (zh) * 2020-11-05 2023-04-25 杭州海康威视数字技术股份有限公司 存储介质检测方法和装置
JP2023079292A (ja) * 2021-11-29 2023-06-08 ラピステクノロジー株式会社 半導体記憶装置、データ書込方法及び半導体記憶装置の製造方法
KR102689776B1 (ko) * 2022-02-14 2024-07-29 백석대학교산학협력단 경사하강법을 이용한 플래시 메모리 기반 저장 장치의 수명 예측 방법 및 시스템
CN116737515B (zh) * 2023-05-10 2024-02-23 珠海妙存科技有限公司 闪存参数可视化方法、系统及存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5404485A (en) * 1993-03-08 1995-04-04 M-Systems Flash Disk Pioneers Ltd. Flash file system
US5537357A (en) * 1994-06-27 1996-07-16 Intel Corporation Method for preconditioning a nonvolatile memory array
GB2300946B (en) * 1995-05-17 1999-10-20 Altera Corp Tri-statable input/output circuitry for programmable logic
US5959891A (en) * 1996-08-16 1999-09-28 Altera Corporation Evaluation of memory cell characteristics
JP3565687B2 (ja) * 1997-08-06 2004-09-15 沖電気工業株式会社 半導体記憶装置およびその制御方法
US7036068B2 (en) * 2001-07-25 2006-04-25 Hewlett-Packard Development Company, L.P. Error correction coding and decoding in a solid-state storage device
US6948102B2 (en) * 2002-04-29 2005-09-20 International Business Machines Corporation Predictive failure analysis for storage networks
US20040088614A1 (en) * 2002-11-01 2004-05-06 Ting-Chin Wu Management system for defective memory
KR100468616B1 (ko) * 2004-03-02 2005-01-31 주식회사 하이스마텍 비휘발성 메모리의 수명을 연장하는 방법 및 시스템
US7277336B2 (en) * 2004-12-28 2007-10-02 Sandisk 3D Llc Method and apparatus for improving yield in semiconductor devices by guaranteeing health of redundancy information
US8301938B2 (en) * 2005-03-21 2012-10-30 Hewlett-Packard Development Company, L.P. Managing memory health
EP2998894B1 (en) * 2005-07-11 2021-09-08 Brooks Automation, Inc. Intelligent condition monitoring and fault diagnostic system
US7831783B2 (en) * 2005-12-22 2010-11-09 Honeywell International Inc. Effective wear-leveling and concurrent reclamation method for embedded linear flash file systems
US7861122B2 (en) * 2006-01-27 2010-12-28 Apple Inc. Monitoring health of non-volatile memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012146129A (ja) * 2011-01-12 2012-08-02 Mega Chips Corp メモリアクセス制御装置

Also Published As

Publication number Publication date
US7512847B2 (en) 2009-03-31
WO2007091263A3 (en) 2009-04-09
TWI339337B (en) 2011-03-21
EP1982264A2 (en) 2008-10-22
CN101529526A (zh) 2009-09-09
TW200745855A (en) 2007-12-16
CN101529526B (zh) 2013-08-14
KR20080092929A (ko) 2008-10-16
US20070198786A1 (en) 2007-08-23
KR101348665B1 (ko) 2014-01-08
WO2007091263A2 (en) 2007-08-16

Similar Documents

Publication Publication Date Title
US7512847B2 (en) Method for estimating and reporting the life expectancy of flash-disk memory
US8799747B2 (en) Data hardening to compensate for loss of data retention characteristics in a non-volatile memory
US9146821B2 (en) Methods and systems for monitoring write operations of non-volatile memory
US8458417B2 (en) Garbage collection in a storage device
US8910002B2 (en) NAND flash-based storage device with built-in test-ahead for failure anticipation
US8719531B2 (en) System and method for performing data retention that incorporates environmental conditions
US10592134B1 (en) Open block stability scanning
TWI410976B (zh) 固態儲存媒體可靠度的測試方法
US9263158B2 (en) Determining data retention time in a solid-state non-volatile memory
US20230153003A1 (en) Open block family duration limited by time and temperature
US10089170B1 (en) Open block management
US20210304826A1 (en) Defect detection in memories with time-varying bit error rate
EP3841479A1 (en) Hybrid wear leveling for in-place data replacement media
US10761739B2 (en) Multi-level wear leveling for non-volatile memory
US20220171562A1 (en) Garbage collection in a memory component using an adjusted parameter
US11404141B2 (en) Preemptive read refresh in memories with time-varying error rates
US11495309B2 (en) Initiating media management operation using voltage distribution metrics in memory system
WO2021034979A1 (en) Garbage collection in a memory sub-system during a low battery state
US10475522B2 (en) Memory system including a delegate page and method of identifying a status of a memory system
US11810631B2 (en) Data integrity checks based on voltage distribution metrics
US12105967B2 (en) Two-tier defect scan management
CN114121110A (zh) 耐用性预知的nand闪存管理
CN117854564A (zh) 闪存存储方法、设备及计算机可读存储介质