"フラッシュメモリシステムの動作方法であって、前記フラッシュメモリシステムにおいてそれまでに実行された、各々の障害誘発動作の継続的な動作履歴を記録するステップと、あるメモリセルに関する電荷の正味の注入または消失の推測を、前記動作履歴と、前記各々の障害誘発動作に関する障害強度値と、前記各々の障害誘発動作に関する電荷の注入-消失方向と、を使って計算するステップと、を含み、前記障害強度値は、前記メモリセルの集合において分散値の変化を引き起こすのに必要な前記障害誘発動作の実行回数から導き出される、フラッシュメモリシステムの動作方法。前記メモリセルの集合の初期分散値を測定するステップと、前記メモリセルの集合に対して前記障害誘発動作を繰り返し実行し、その一方で、現在の分散値が前記初期分散値から所定の量より大きく変化するまで、前記メモリセルの集合について前記現在の分散値を定期的に測定するステップと、前記現在の分散値が前記初期分散値から所定の量より大きく変化する前に実行された、前記障害誘発動作の回数を使って、前記障害誘発動作に関する前記障害強度値を判断するステップと、前記障害誘発動作に関する障害強度値を記録するステップと、をさらに含む、請求項1に記載のフラッシュメモリシステムの動作方法。複数の障害誘発動作の各々について、前記障害強度値の測定、実行、決定および記録を繰り返すステップをさらに含む、請求項2に記載のフラッシュメモリシステムの動作方法。前記各々の障害誘発動作の前記障害強度値をマトリクスに保存するステップをさらに含む、請求項3に記載のフラッシュメモリシステムの動作方法。前記メモリセルから読み込まれたデータがエラーである可能性を、前記メモリセルに関する電荷の正味の注入または消失の推測を使って推測するステップをさらに含む、請求項1に記載のフラッシュメモリシステムの動作方法。あるメモリセルに関する電荷の正味注入または消失の推測が所定の閾値を超えたとき、データの消失を防止するための予防策を実行するステップをさらに含む、請求項1に記載のフラッシュメモリシステムの動作方法。前記メモリセルに関する電荷の正味の注入または消失を推測するステップは、前記動作履歴における前記各々の障害誘発動作のパーセンテージを計算するステップと、前記各々の障害誘発動作の相対障害強度の加重和を計算するステップと、をさらに含む、請求項1に記載のフラッシュメモリシステムの動作方法。前記各々の障害誘発動作の前記障害強度値と、前記各々の障害誘発動作の前記注入-消失方向とが、サンプルデバイスのテストによって決定された所定のデータとして前記フラッシュメモリシステムに供給される、請求項1に記載のフラッシュメモリシステムの動作方法。フラッシュメモリシステムであって、フラッシュメモリセルの集合と、各々の障害誘発動作に関する障害強度値及び電荷の注入-消失方向を含む障害強度マトリクスであって、前記障害強度値は、前記フラッシュメモリセルの集合の中の分散値の変化を引き起こすのに必要な前記障害誘発動作の実行回数から導き出される障害強度マトリクスと、前記フラッシュメモリシステムによって実行された、前記障害誘発動作の継続的な記録である動作履歴と、前記障害強度マトリクスを動作履歴とともに使用して、前記フラッシュメモリセルに関する電荷の正味の注入または消失の推測を計算するデータ管理装置と、を備えるフラッシュメモリシステム。測定装置の集合であって、前記各測定装置が前記フラッシュメモリセルの集合の中のフラッシュメモリセルに接続されており、前記各測定装置が読み込み動作中のフラッシュメモリセルの閾値電圧の測定値を表す測定信号を生成する測定装置の集合と、前記測定信号を受信し、前記フラッシュメモリセルの集合に関する前記測定信号の分散値を判断する分散アナライザと、をさらに備える、請求項9に記載のフラッシュメモリシステム。前記各測定信号は、読み込み動作に関する前記フラッシュメモリセルの完了時間から導き出される、請求項10に記載のフラッシュメモリシステム。前記分散アナライザは、前記測定装置の集合からの前記測定信号における最大電圧に対応する第一の電圧を出力する最大電圧検知器と、前記測定装置の集合からの前記測定信号における最小電圧に対応する第二の電圧を出力する最小電圧検知器と、前記最大電圧と前記最小電圧の間の差分を、現在の分散値として判断する手段と、をさらに備える、請求項11に記載のフラッシュメモリシステム。前記障害強度マトリクスは、前記フラッシュメモリシステムによって実行されるセルフテストにより決定される、請求項9に記載のフラッシュメモリシステム。前記データ管理装置は、前記フラッシュメモリセルから読み込まれたデータがエラーであるという可能性を、前記フラッシュメモリセルに関する電荷の正味の流入または消失の推測を用いて推測する手段を含む、請求項9に記載のフラッシュメモリシステム。前記データ管理装置は、前記フラッシュメモリセルに関する電荷の正味の流入または消失の推測が所定の閾値を超えたときに、データ損失を防止するための予防策を実行するための手段を含む、請求項9に記載のフラッシュメモリシステム。前記データ管理装置は、前記動作履歴の中の前記各々の障害誘発動作に関するパーセンテージを計算し、前記障害誘発動作の相対障害強度の加重和を計算するステップを含む、請求項9に記載のフラッシュメモリシステム。前記フラッシュメモリセルの集合に関する読み込み電圧閾値の分布における、あるフラッシュメモリセルの読み込み電圧閾値の位置を推測する手段をさらに備える、請求項10に記載のフラッシュメモリシステム。前記各々のフラッシュメモリセルの前記読み込み電圧閾値は、対応するフラッシュメモリセルに接続された測定装置から導き出され、前記測定装置は、読み込み動作に関する前記フラッシュメモリセルの完了時間から導き出された、読み込み動作における前記フラッシュメモリセルの閾値電圧を表す測定信号を生成する、請求項17に記載のフラッシュメモリシステム。前記動作履歴及び前記障害強度マトリクスを使って、前記フラッシュメモリセルから読み込まれたデータにエラーバーを割り当てる手段をさらに備える、請求項18に記載のフラッシュメモリシステム。前記エラーバーと、前記フラッシュメモリセルの集合に関する読み込み電圧閾値分布における、ある前記フラッシュメモリセルの読み込み電圧閾値の位置と、を使って、前記フラッシュメモリセルから読み込まれたデータにエラーの確率を割り当てる手段をさらに備える、請求項19に記載のフラッシュメモリシステム。本発明の実施形態には、ソリッドステートドライブSSD等のフラッシュメモリ素子と、障害誘発動作に対するシステムの感度と、システムによって実行された障害誘発動作の履歴と、に基づく確率を使ったデータ管理方法が含まれる。本発明のある実施形態において、障害誘発動作に対する感度は、障害強度マトリクスにまとめられ、このマトリクスでは、選択された動作に、その動作がデータエラーの原因となりうる障害を引き起こす相対的な強度を推測した数値が関連付けられている。障害強度マトリクスにはまた、電荷の流入または消失のいずれかを示すエラーの方向を含むことができる。1つの実施形態において、障害強度マトリクスは、デバイスが、選択された動作を検出可能なエラーが発生するまで実行することによって障害エラーを引き起こすようなセルフテストを実行することによって決定される。障害の原因となりうるすべての動作をテストに含むことができる。本発明のある実施形態において、動作の障害強度は、フラッシュセルの蓄積電荷の変化に起因する検出可能な障害ビットの変化を引き起こすのに必要な動作の回数によって決まる。エラーを引き起こすのに必要な動作の回数が多いほど、障害強度は弱い。別の実施形態において、障害強度マトリクスは、等質な母集団から選択された装置をテストすることによって決定される。比較的小さな、選択されたサンプルデバイスの集合を使用することにより、破壊的なテストを行うことができ、すなわち、デバイスの使用寿命を短縮または消費するような動作の実行をテストに含むことが可能となる。別の実施形態において、障害強度は、読み込み動作の完了時間TTC値の分散に検出可能な変化が発生するまでに実行できる動作回数をカウントすることによって推測される。TTC値は、この読み込み動作中に問い合わせたメモリセルの中の閾値電圧VTの分散に代わるものとして使用される。障害強度テストは、工場における製造工程の一部として実行されるべきであり個々のデバイスまたは選択されたサンプルのいずれか、障害強度マトリクスは、本発明による各デバイスのデータ管理システムの一部として使用される。障害強度マトリクスは、SSDシステムでそれまでに実行された、障害誘発動作の継続的な履歴記録動作履歴と一緒に使用され、データの損失を防止するための予防策をいつ実行するべきかが判断される。また、障害強度マトリクスと動作履歴を使って、メモリから読み込まれたデータポイント値が、累積された障害の結果である確率を割り当てることも可能である。あるデータポイント値について、特定の方向への障害が生じている確率が十分に高いことがわかれば、SSDの通常の読み込み動作の一部として、リアルタイムでエラー訂正を行うことができる。図14は、本発明のある実施形態によるSSD130の、選択された構成要素を示すブロック図である。これは、例にすぎない。当業者は、説明される機能のいくつかをホストに移すことができ、それでも本発明の精神から逸脱しないことを認識するであろう。SSDは、SSDとコンピュータ120等のホストデバイスの間の2つの通信を扱う通信インタフェース131を含む。SSDはデータ管理装置133を含み、データ管理装置133はアレイコントローラ139まで、およびそれからのデータの流れを管理し、アレイコントローラ139はフラッシュアレイ141まで、およびそれからのデータの流れを制御し、フラッシュアレイ141はNAND型またはNOR型のいずれのデバイスでもよい。この実施形態におけるデータ管理装置133は標準的なマイクロプロセッサ図示せずとそれに関連付けられた不揮発性メモリを含み、メモリの中にはファームウェアプログラムが保存される。ファームウェアプログラムは、マイクロプロセッサによって実行され、上記のデータ管理プロセスステップが行われる。データ管理装置133は、後述の障害強度マトリクス135を、継続的な動作履歴137とともに使用し、予防的データ管理活動をいつ実行するかを判断する。各種の実施形態において、データ管理装置133は、フラッシュアレイ141に対して実行された有意な動作の各々を記録することにより、動作履歴137を保持する。いくつかの実施形態において、データ管理装置133には、障害強度マトリクス135が読取専用データとして供給されるが、これは、障害強度テストが他の選択されたサンプルデバイスについて実行されたからである。しかしながら、いくつかの実施形態において、データ管理装置133は、セルフテストを実行することによって、障害強度マトリクス135を作成する。本発明は、NAND型フラッシュアレイ141を使用する実施形態と、NOR型フラッシュアレイ141を使用する実施形態を含む。関連発明による劣化の早期検出EDDシステムを含み、本発明の実施形態に含められるNAND型およびNOR型フラッシュメモリについて、以下に説明する。[劣化の早期検出機能を備えるNAND型フラッシュの実施形態]シングルレベルおよびマルチレベルメモリセル構造20に適用可能な先行技術によるNAND型フラッシュを図1に示す。問い合わせられているNAND型フラッシュメモリセルには、有効なVTレベルの書き込まれている他のメモリセルが直列に設置されている点に注意されたい。注:これは、NOR型フラッシュメモリには当てはまらない。。NAND型構造のセルは、2つのセルアレイ、すなわち、トランジスタの左側のカラムとして示されるセルアレイaと、右側のカラムとして示されるセルアレイbに分けられる。セル構造20は、ビット毎ベリファイBV回路21a、21bを含み、これらは2本のビット線BLai、BLbiの各々に接続される。2本のビット線と2つのBV回路は、DRAMのオープンビット線方式と同様に、共通のREADWRITER/W回路を共有する。R/W回路は、読み込み動作ではフリップフロップ型の差動センスアンプ22として、また書き込み/書き換え動作ではデータラッチ回路として機能する。図1の構造の読み込み動作に関する、選択されたタイミング曲線を図2Aに示し、この中では、時間t1、t2およびt3が選択点である。単純にするために、すべてのタイミングチャートと解説は、あるページの全セルの平行読み込みに完璧に適合した読み込み回路であることを前提としている。これらの回路の不適合には、単純な校正手順で対応できる。たとえば、既知の内容のメモリセルの具体的な集合を用いた基準読み込みを使って、後のそのメモリアレイ内のセルの読み込みにおけるセンスアンプの不適合を訂正することができる。センスアンプ22はコンパレータであり、一般に、再生ループを用いて、図1のビット線BLaiとBLbiからのパスゲート通過後の入力線の小さな分離を、完全に生成された出力電圧レベルとして生成する。図1の回路と図2Aの曲線は、NAND型フラッシュの読み込みを適正に表している。図2Bは、図1の先行技術によるNAND型フラッシュメモリセル構造の集合の、1.8vに対するBLaiの読み込み値1のt3以降の部分を選択して示した図であり、一般的なタイミング曲線26と、線25、27を境界とする、セル集合に関して考えられるタイミング曲線の範囲の例を示している。セル集合のBLbi信号も、これと同様のタイミング曲線の分布を示す。本発明の実施形態は、セル集合の完了時間TTCを測定または推測することによって、セルのページの性能の分散の変化を検出する。曲線の立ち上がり部のタイミングの分散は、読み込み動作の完了時間TTCの差となる。注意すべき点として、フラッシュ読み込み回路は一般に、タイミング性能の通常の分散では読み込みエラーが発生しないようにするための機能を含んでおり、すなわち、回路は保護されているsandbagged。それゆえ、本願の発明は、フラッシュメモリの中で当業者によって評価されなかった面に光を当て、この現象を新規な用途に利用するものである。NAND型フラッシュの方式により、選択されていないメモリセルの中の異なる内容に応じて、選択されたセルに異なる直列抵抗が生じる。そのため、NAND型フラッシュメモリセルの内容に対しては、逐次的ステップで問い合わせと異なる基準レベルとの比較が行われ、その中で異なるVTレベルが問い合わされる。メモリセルの1ページは、NAND型フラッシュメモリの中で平行して読み込まれ、そのためには、読み込み動作が同期された適切な時間信号によって起動される必要がある。タイミング信号は、そのページに関するすべてのセンスアンプの線を等化するが、セルの強弱によって、センスアンプの線の駆動が異なり等化後、したがって、ラッチのトリガからセンスアンプの出力でのフル電圧の生成までの時間すなわち、TTCは、より強いセルとより弱いセルとで異なる。本発明によれば、完了時間TTCの差を測定し、システムが後に解析するのに適切な形態で保存することができる。NAND型フラッシュマトリクスの中のすべてのメモリセルは、名目上、同一であり、それぞれが閾値電圧VTに書き込まれ、それにより、それらの書き込まれたVTのすぐ上の特定の電圧レベルVREADで問い合わせられると、所定の電流レベルを生成するため、iTTCの分散は、読み込まれているセルのVTの分散に代わるものとなる。iiフラッシュメモリのページが初めて使用される時点のTTCの分散の値を基準値として保存し、これをその後読み込み時に測定された分散と比較して、メモリセルの劣化がいつ、データ保護動作を確実に行える限界を超えたかを判断することができる。iii読み込み動作中の各セルのTTCの分散に関する知識を使って、ソフト情報を、判断されたメモリセルの内容の各々に割り当てることができる。図3は、本発明のある実施形態による劣化の早期検出EDDシステムを備えるNAND型フラッシュのページ60の、選択された機能ブロックを示す。コントローラ30は、タイムベース31、逐次的VT問合せ制御回路33およびデコーダ35を含み、これらは先行技術にしたがって設計されるため、詳細に説明しない。デコーダ35は、メモリセルのVTが判断されると、メモリセルの内容の、対応するバイナリコードを出力する。逐次的VT問合せ制御回路33は、NAND型フラッシュにおいて使用される、選択されたメモリセルの正しいVTを逐次的に検索する回路を抽象化したものである。タイムベース31は、パスゲートおよびセンスアンプのラッチに必要なタイミング信号を発生し、また、完了時間TTC測定装置32の時間計測も行う。完了時間TTC測定装置32は、メモリセル構造20の中のメモリセルによって駆動されるビット線出力がその最終的な数値に到達するのに必要な時間を測定する。コントローラ30とメモリセル構造20は、分散測定機能付きメモリ構造MSDM装置40と呼ばれる装置を形成する。メモリのページには複数のMSDMMSDM_1、...、MSDM_nが必要となり、これらは並列に分散アナライザ50に接続される。民生用フラッシュでは、メモリセル構造は実際には共有回路を持つメモリアレイに実装され、これは本願の精神から逸脱しない。図3はそのため、本発明の概念を例示するために構成された単純な説明であり、例示を目的として提供されたにすぎず、本発明を限定するためではない。逐次的読み込み工程において、メモリセル構造の中のセンスアンプは、ダミービット線BLbiからの入力基準が、読み込み動作対象、すなわち問い合わせられているメモリセルのVTを上回るときだけ、特定の方向へのフル出力を生成する。それゆえ、選択されたメモリセルの内容は、バイナリの形態で判断され、復号される。また、この時点で、完了時間測定装置32によって測定された適正な完了時間TTCがTTC報告回路34から分散アナライザ50へと報告される。TTC報告回路34は、バッファと信号調整を含んでもよく、それによって、完了時間に関する情報を分散アナライザに適正に伝送する。完了時間測定装置32のある実施形態の図を図4に示す。この実施形態は、フェーズロックループPLLシステムの位相検出回路に使用されているチャージポンプ回路と同様である。この実現例において、限定的な形ではないが、完了時間情報は、TTC測定装置32の内部のコンデンサCout73の電荷に保存される。コンデンサの電圧は、電流発生源I1からの電流がスイッチS1を通ってコンデンサの中に流れることができる時間に比例する。S1の切り換えはフリップフロップ72によって制御され、フリップフロップ72は単一終端コンバータとの差分71の出力によってリセットされる。単一終端コンバータとの差分71は、メモリセル構造からの2つのバイナリ出力を入力として使用する。正しい完了時間は、メモリセルのVTが判断された後に分散アナライザDAに報告される。コンデンサ73は、タイムベースからの信号に基づき、スイッチS2と電流発生源I2からドレインされる。図5は、本発明のある実施形態による分散アナライザ50の、選択された機能設計ブロックの図である。分散アナライザ50は、アナログ信号処理ブロックである。この実施形態において、その機能は、あるページ読み込み動作のためのTTC測定装置32の集合から最大完了時間および最小完了時間を判断することを含む。各TTC測定装置32はアナログ電圧レベルTTCM_outを出力し、これがTTC報告回路34を通って分散アナライザ50に供給される。分散アナライザのMin/Max検知器51は、TTC報告回路からのその複数の入力での最大電圧と最小電圧を判断する。全体としての最大および最小値の差差分は、減算器52によってそのページに関する分散の測定値として判断される。分散アナライザは、コンパレータ54を使って、計算された差分が基準値53より大きいか否かを判断し、それに応じて警告信号をセットする。基準値は、事前に決定された閾値か、NAND型フラッシュメモリを初めて使用する時点で確立された初期値である。ある実施形態において、ストレージシステムの中のNAND型フラッシュチップの動作開始時に、書き込みコマンドの後、読み込みコマンドが発行されて、各読み込み動作でのVTのその後の分散を比較するための基準値が確立される。それゆえ基準値は、分散アナライザに、全体としての最大および最小値の初期差分を計算させ、その初期差分を基準値として保存させることによって、製造工程の一部として設定できる。図6は、本発明のある実施形態による分散アナライザのMin/Max検知器51に使用される最大電圧検知器51Aの設計の図である。図6において、最大入力電圧を判断するためのCMOS回路の例が示されている。これは、winner-takes-all回路である。この回路の出力は最大入力電圧に従い、その精度は入力レベル間の差1mVである。この回路の中の入力数は、回路の反復によって直接的に増大させることができ、または2つの入力回路を階層木に配列することができる。最小入力電圧に従わせる場合は、組み込まれた回路の中でNMOSからPMOSへと適切に変更する。劣化の早期検出システムを使用して、各メモリセルから読み込まれた内容に、エラー確率または正確さ信頼レベルを割り当てることができる。完了時間TTC測定に関する情報によって読み込まれた各セルのVTの位置に関する情報を使用して、正確さ信頼レベルを各セルから読み込まれたデータに割り当てることができる。これによって、読み込まれた各セルデータの理想的な分散におけるVTの位置を知らせる機能を備えるNAND型フラッシュチップに、新規で、より効率的な符号化およびエラー訂正アルゴリズムを使用できる。すべて、1回の読み込みを必要とする。[劣化の早期検出機能を備えたNOR型フラッシュの実施形態]先行技術によるNOR型フラッシュメモリセルとそれぞれのセンスアンプの構成は、図7Aと7Bにおいて、基本的な動作を強調するために単純化された略図として示されるとおりである。カラムデコーダトランジスタだけがNOR型フラッシュメモリセルと感知回路に直列に配置される点に留意されたい。そのために、NOR型フラッシュセルの読み込みは、シングルレベルセルSLCとマルチレベルセルMLCのいずれでも、アナログ-デジタル変換回路と同様に平行して行うことができ、各セルに書き込まれたVTは、1回の問い合わせで判断されるこれは、逐次的な問い合わせが必要なNAND型フラッシュと異なる。コンパレータCOMP1から3は一般に、再生ループを用いて、入力線ビット線MAT1から3、REF1から3の小さな分離を、完全に生成された出力電圧レベルとして生成する。回路とタイミングの性能は、シングルレベルセルSLCとマルチレベルセルMLCの読み込みの両方を適正に表している。図7Aと7Bの先行技術によるマルチレベルセルMLCフラッシュメモリ回路は、図のように、適切な比較用基準電圧REF1から3を含むように変更されている。センスアンプ97、98のバンクCOMP1から3の平行した同時動作が使用され、これは、前述のように、NOR型フラッシュでは、読み込まれているメモリセルとはカラムデコーダトランジスタだけが直列であり、適正な基準電圧は、読み込み動作対象のメモリセルの閾値電圧を判断するために決定できるからである。本発明によるNOR型フラッシュのための早期検出システムの原理は、以下を観察することによって説明できる。1NOR型フラッシュでは、いくつかのメモリセルが平行して読み込まれ、この読み込み動作は、適正に決定された同じタイミング信号によって起動される。タイミング信号は、読み込み動作に関わる全てのセンスアンプの線を等化し、感知をトリガする。このため、セルの強弱によって、センスアンプの線の分離が異なり等化後、感知のトリガからセンスアンプの出力でのフル電圧の生成までの時間完了時間TTLと呼ぶは、より強いセルとより弱いセルとで異なる。2NOR型フラッシュマトリクス内のすべてのメモリセルは、名目上同じであり、各々が閾値電圧VTに書き込まれ、それにより、それらの書き込まれたVTのすぐ上の特定の電圧レベルで問い合わせられると、所定の電流レベルを生成するため、i1で定義されたTTCの時間の分散は、読み込まれているセルのVTの分散に代わるものとなる。iiフラッシュメモリが初めて使用される時点のTTCの分散の値を保存し、これをその後の読み込み時のTTCの分散と比較して、メモリセルの劣化がいつ、データ保護動作を確実に行える限界を超えたかを判断することができる。分散基準値として選択された値を実際に測定された値の代わりに使用することもできる。iii読み込み動作中の全セルのTTCの分散に関する知識を使って、ソフト情報を、判断されたメモリセルの内容の各々に割り当てることができる。図8は、本発明のある実施形態による劣化の早期検出システムを備えるNOR型フラッシュメモリ80の、選択された構成要素を示す。本発明によるNOR型の実施形態の分散アナライザ50は、機能的には、本発明のNAND型の実施形態の分散アナライザと同等であるが、入力が以下のように異なる。分散アナライザ50は、複数の1、...、nのTTC測定装置120からの入力を受け取り、TTC測定装置120は、MUX1_OUT、...、MUXn_OUTの信号を生成するように示されている。この実施形態では4レベルNOR型フラッシュメモリが想定されているが、これは限定条件ではない。センスアンプ98は、入力基準電圧が読み込み動作対象のメモリセルMAT1から3のVTを超える場合にのみ、正のフル電源へのそれらの出力OUT1から3を生成する。それゆえ、3つの完了時間TTC1から3装置32A-Cは、比較の結果、VREADがVTより高かった場合のみ、その出力に完了時間の有限値、すなわち電圧有限値を生成する。他のTTC装置のブロックは、フル電源電圧でその出力を飽和させる。先行技術による温度計デコーダTD25は、この例では、メモリセルの内容をバイナリフォーマットで出力し、また、アナログマルチプレクサMUX23にスクリーニング信号も供給して、メモリセルの内容の完了時間を表す電圧が正しく選択されるようにする。分散アナライザ50は、読み込み動作中に読み込まれた全セルまたは、全セルの中の一部の完了時間TTCの数値の分散が所定の数値より大きい場合に、劣化警告信号をセットする。図10は、本発明のある実施形態のマルチプレクサMUX23の設計の図である。MUX23の入力は、それぞれのTTC装置32AからCの出力TTC1_OUT33A、TTC2_OUT33B、TTC3_OUT33Cである。MUXは、これらの入力のうち1つを選択して、MUX1_OUT信号として分散アナライザに供給する。MUX23は、概念的に、パスゲートのアナログアレイということができる。しかしながら、3つのTTC装置32AからCのうちの1つの出力の電圧レベルを分散アナライザ50の入力へと伝送することは、適正なバッファと信号調整回路を使用したいくつかの別の方法でも実現できる。NOR型フラッシュの読み込み回路のある実施形態において、問い合わせたメモリセルからの信号は、問い合わせたメモリセルが保持可能な異なる蓄積電荷レベルに対応する、基準複製電圧REF1から3と平行して比較される。使用する設計に応じて、この図のコンパレータCOP1から3からのいくつかの出力は値0を表し、いくつかは残りの値1を表し、0と1は、温度計の目盛のように見え、すなわち、出力として考えられるものとしては、たとえば、OUT2とOUT3が出力0でOUT1が出力1、またはOUT3が出力0でOUT1とOUT2が出力1、という2つの例がある。温度計デコーダ25は、次に、この温度計の目盛の出力をバイナリコードに変換する。ある実施形態において、OUT1から3の信号のうち、出力1を保持する最初のものが、問い合わせ対象のセルの閾値レベルVTより上の最初の基準レベルを表し、その位置もまた、温度計デコーダ25からの信号Ss0、s1に符号化されて、MUX23に送信される。信号Sは温度計デコーダによって決定され、温度計デコーダは、ある実施形態において、メモリセルの内容の読み込みのための温度計デコーダとして機能する。概念的に説明すれば、ただし限定的な意味ではないが、信号Ss0、s1は、TTC1から3の信号のどれが、MUXによって分散アナライザに報告されるべき完了時間TTCであるかを選択する。TTC装置32AからCは同一である。出力TTC1_OUTを生成するTTC1装置32Aの一例としての実施形態が図9に示される。これは、フェーズロックループPLL回路で使用されるチャージポンプ回路と似ており、この場合、VCO周波数と基準周波数の間の位相分離が訂正動作のために判断されることになる。センスアンプの等化SAEQ信号の立ち上がりからVoutそれぞれOUT1から3の立ち上がりまでの時間は、コンデンサCoutの電圧レベルに変換される。標準的なタイミング信号であるアドレス遷移検知ATDとENDREADまたはその他の同等の信号もまた使用される。バッファ回路図示せずを、TTCブロックの出力とMUX回路の間に使用してもよい。この実施形態において、分散アナライザ50は、ページの読み込み動作のための複数のTTC測定装置120からの出力信号に示されるような最大完了時間および最小完了時間を判断する。TTC32AからCの各々は、MUX23に供給されるアナログ電圧レベルを出力し、MUX23は、今度は、その3つの入力のうちの1つを選択して、分散アナライザ50に送信する。分散アナライザのMin/Max検知器51は、複数のTTC測定装置120からその複数の入力での最大電圧と最小電圧を判断する。全体としての最大および最小値の差差分が、減算器52によって、そのページの分散の測定値として判断される。減算器52の出力は、本発明の実施形態で使用される分散値であり、これについて以下にさらに説明する。分散化アナライザは、コンパレータ54を使って、計算された差分が基準値53より大きいか否かを判断し、それに応じて警告信号をセットする。基準値は、予め決定された閾値か、フラッシュメモリを初めて使用する時点で設定される初期値である。1つの実施形態において、ストレージシステムの中のフラッシュチップの動作の開始時に、書き込みコマンドの後、読み込みコマンドが発行されて、各読み込み動作でのVTのその後の分散を比較するための基準値が確立される。それゆえ基準値は、分散アナライザに、全体としての最大および最小値の初期差分を計算させ、その初期差分を基準値として保存させることによって、製造工程の一部として設定できる。ソフト情報が必要なエラー訂正コード方式は、本発明のある実施形態について、読み込まれたすべてのセルからの完了時間情報を分散アナライザが有している点を注目することによってサポートできる。完了時間の結果の分散におけるその最初のセルの位置から、適切な正確さ確率を最終的なバイナリの結果に割り当てることができる。すべて、1回の読み込みを必要とする。[障害強度および動作履歴を使用したエラー訂正のための確率推測]通常の動作において、NOR型およびNAND型フラッシュメモリセルには、浮遊ゲートへの電荷の注入または浮遊ゲートからの電荷の消失を発生させる障害が起こる。以下の表1は、IEEEStandard1005-1998,page97から引用したものであるが、異なる障害条件での動作と状態および、障害が生じたメモリセルの中の電荷に対するそれらの影響を示している。表1の動作集合は、障害を起こす可能性のある動作のデフォルトリストと仮定される。しかしながら、本発明はいかなる特定の動作集合にも限定されない。[エラー強制による障害強度の測定]本発明による方法で、表1に記載された動作の全部または一部のような動作集合に関する平均相対的障害強度を測定する。障害強度は、製造工程の一部として判断されるべきである。障害強度は、後述のように、デバイスがセルフテストによって判断できるが、代表的なサンプルデバイスについてテストを実施し、障害強度マトリクスをリードオンリメモリの一部として生産デバイスに供給することも可能である。特定のデバイスで使用されるフラッシュメモリチップは、同じチップ構成とデバイス技術およびプロセスを使用する、ある製造者からのものであり、異なる動作に関する実質的に同様の平均相対的障害強度を見せることを前提とする。異なる製造者のチップの間の、異なる障害に関する平均相対的強度の違いは十分に明瞭であり、特定の用途にどのフラッシュメモリチップ製造者の製品が部品として最も適切かを顧客が判断できるということがありうる。テストおよび特性評価の方法のある実施形態を、図11のフローチャートを参照しながら説明する。フラッシュメモリチップは、テスト開始前に、完全に消去するか、あるいは一貫性のある、既知の状態に置くべきである。例示のために、図11は、フラッシュメモリチップの中の、障害を引き起こす異なる動作の平均相対的強度の特性評価を行う作業のフローチャートの一例を示す。この方法では、まず、障害を引き起こす可能性のある全動作リストの中からある動作を選択する11。この方法は、リストの中のいずれの動作でも使用できるが、読み込み動作は幾分有利であり、これは、その理由の1つとして、実行機能な読み込み動作の回数に固有の限度がないからである。いくつかの動作に関する実行回数の限度については、以下にさらに説明する。また、いくつかの動作と異なり、読み込みを行うのに、それに続けて他の動作を実行する必要がない。たとえば、書き込みには一般に、その前に消去動作を必要とし、これはブロックごとに行われる。消去または読み込み動作等のいくつかの動作は、関連するデータビットパターンを持たないかもしれないが、たとえば、書き込み動作には、この方法の内側パターンループで適用される、対応するビットパターン集合があることがある。このパターンは、AAhまたは55h等の標準的メモリビットパターンであっても、適切なその他のパターンであってもよい。適切なデータパターンは、メモリセルが、隣接するメモリセルの中にある電荷に応じて、障害に対する感度がより強いか、より弱いかを考慮して、選択できる。これを確認するために、システムは、セルにたとえば1に書き込み、その一方で隣接セルに0を書き込んで、障害に対する感度を確認する必要があるかもしれない。続いて、別の内容を選択されたセルの中に書き込み、その一方で違う内容を隣接のセルに書き込む。障害強度セルフテストを実行する際、複数のパターンを適用できるが、最終的には、最後の障害強度マトリクスの中には、各動作について1つの数値があるべきである。パターン番号の集合は多くの有意義な方法、たとえば平均化等で使用できるが、保守的な手法では、最も強力な障害を引き起こすパターンの番号が選択される。目標は、障害となる問題の警告を発して、訂正措置を取ることができるような堅牢なシステムを実現することである。選択された動作と、選択された第一または次のパターンがある場合はそのパターンを一度実行して、初期ベースライン結果を生成する12。ステップ12から得られたメモリの初期内容を読み込み、その後の比較のために保存する13。その後、現在のパターンがある場合はそのパターンを使用して、選択された動作を比較的多い回数だけ実行することによって、メモリにストレスをかける14。選択された動作の総実行回数をカウントする14。メモリの内容を再び読み込む15。現在の内容を初期の内容と比較し、エラーが強制的に起こされたかを確認する16。現在の内容が依然として初期の内容と同じ場合は、ステップ14に戻り、さらに動作を繰り返し実行する。最終的にエラーが引き起こされると、方法はステップ17に進み、ここで、エラーが検出されるまでに実行された動作の総回数を記録する。メモリの内容は各動作後には比較/テストされないため、分解能は、各読み込み/テストの間に実行された動作の回数によって制限される。エラーの方向電荷の注入または消失もまた記録する17。この時点での結果は、選択された動作と、おそらくは1つのパターンに関するものであるため、ここで、選択された動作に関する追加のパターンを選択し、内側パターンループを再び実行する18。選択された動作についてすべてのパターンを実行した時点で、リストにさらに他の動作があれば、外側ループを再び実行する19。すべての動作のテストが終了すると、記録されたデータは各動作に関する障害強度のマトリクスとなる19a。1つの動作について複数のパターンがテストされた場合、マトリクスに記録された数値は、前述のように、パターンのための数の集合から選択された、または計算された1つの数となる。記録された数を比較することによって、各動作の相対的障害強度が得られる。このデータマトリクスの1つの考えられる用途は、前述のように、フラッシュメモリ製造者を差別化するためのツールとしての用途である。サンプルがテストされており、破壊的試験が可能である場合、方法の選択可能な実施形態では、メモリに消去/書込みサイクルが実行される間の障害強度の変化を判断する。この実施形態において、消去/書き込みサイクルを選択された回数だけ実行した後に、図11の方法を再び実行し、プロセス全体を何回も繰り返して、消去/書き込みサイクルの回数に関する障害強度の変化を判断する。その後、障害強度の変化を解析して、生産デバイスの中に実装できる有益なアルゴリズムまたはマトリクス集合を導き出し、障害強度マトリクスが、メモリに対して時間の経過とともに消去/書き込みサイクルが実行される間の変化を追跡できるようにする。たとえば、時間の経過とともに消去/書き込みサイクルの回数が増えるのに合わせて障害強度マトリクスを調整するために使用できる等式を導き出すことが可能かもしれない。チップの寿命を大幅に短縮することなく、または寿命が終わる限界に達することなく、実行できる動作回数を判断するときに、いくつかの要素を考慮する必要がある。いずれの特定のフラッシュメモリチップに関しても、製造者は特定の動作の上限を明示する。絶対的な回数は、設計や製造技術が今後進化すると、変わることが予想される。たとえば、特定のフラッシュチップは、10万回の消去/書き込みサイクルに耐えられると明示されるかもしれない。したがって、障害強度テスト中に実行できる動作の回数は、破壊的試験が可能な場合を除き、使用されている実際のチップの具体的な限度を考慮して選択する必要がある。障害強度テスト実行後に使用される予定のデバイスの場合、動作回数は、仕様書による限度より少なくするべきである。別の実施形態では、フラッシュチップのバッチから選択されたサンプルについて障害テストを実行し、そのバッチ内の他のチップの挙動を推定することができる。すべてがある製造者からの同じ設計と製造技術を用いる1世代のチップから抽出したサンプルをテストすれば十分であることもありうる。サンプルを使用して障害強度を判断する場合、障害強度マトリクスは、生産データストレージデバイスのプログラムメモリの中にリードオンリーデータとして供給される。同じ世代の部品の生産全体で使用される、ある製造者からのサンプル集合から相対的障害強度のマトリクスを作成する場合は、図11に示される流れの手順を、そのフラッシュチップの使用寿命の限界まで実行できる点に注意されたい。これは、使用されるサンプルにとって破壊的な特性評価であろう。このような破壊的手順は、デバイスのセルフテストに使用される手順の、より制限された消去/書き込みサイクル数に対して追加して使用できる。[分散の変化を用いた障害強度の推測]メモリセルに注入される電荷は、そのメモリセル内のVT電圧を増大させる。この方向への障害が徐々に進むと、VTは閾値を超え、そのセルはVTの記録可能なレベルにおける1つ高いレベルに対応するデータを含むものとして読み込まれる。反対に、障害を発生させるイベントにより電荷が消失すると、VT電圧は低下し、この方向への障害が徐々に進むと、最終的にVTはVTの記録な可能レベル範囲の中の1つ低いレベルに移動する。要約すれば、相対的障害強度のマトリクスは、フラッシュチップに他の回路を追加せずに作成できる。相対的障害強度は、標的セルのVT電圧を、その当初記録されたVT値より上または下の閾値を超えるように変化させる障害イベントの回数で測定される。しかしながら、TTC分散に基づくEDDの回路を追加できれば、相対的障害強度のマトリクスは、より少ない回数の障害イベントで、したがって、本願で先に説明したものより低コスト、短時間で構成できることが明らかである。EDD追加回路は、1ページの読み込みにおいて問い合わされるメモリセル集合全体の総合的な分散に関する情報を提供するだけでなく、読み込まれたそのページの各メモリセルのVTの相対的位置に関する情報も提供する。それゆえ、相対的障害強度のマトリクスは、あるメモリセルのセルVT位置における検出可能なシフト、またはより正確には、そのセルに関するTTCブロックの中のある変化を起こす障害数に基づいて構成できる。この項で説明する実施形態において、システムには、NAND型またはNOR型フラッシュメモリに関して前述した分散分布推測を備えるEDDシステムが含まれる。前述の実施形態と同様に、障害強度は、製造工程の一部として決定されるべきである。分散アナライザ50からの分散値信号図5に示すが、この実施形態で使用される。VT分布の他の測定値も、この方法で使用できる。分散値は、メモリのあるページに関する完了時間の最大値と最小値の差分を表すアナログ信号である。この方法は、次のページに移動する前の時点で単独のページについて実行でき、あるいは全ページについてステップを実行できる。ある実施形態において、テストおよび特性評価の方法は、フラッシュチップを完全に消去することから開始される。図12は、この方法のある実施形態を説明するためのフローチャートを示す。障害を起こす可能性のある動作リストからある動作を選択する11C。ビットパターンを選択し、メモリに書き込む12C。読み込み動作を実行し、分散アナライザによって生成された初期の分散値を保存する13C。選択された動作を、比較的多い回数にわたり繰り返す14C。読み込み動作を実行することにより、現在の分散値を再び測定する15C。現在の分散値をその後、初期の分散値と比較する16C。2つの数値が等しい場合許容値内、この方法はステップ14Cに戻り、別の動作バッチを実行して、分散値を再び測定する。現在の分散値が初期の分散値と等しくなくなったところで、分散値の中のある変化を引き起こすために実行された動作の回数を、選択された動作の障害強度として記録する17C。この動作について、他にも所望のパターンがある場合は、この方法はステップ12Cに戻り、次のパターンについて試験を繰り返す18C。選択された動作についてのすべてのパターンのテストが終了したところで、そのリストに他にも動作があれば、方法はステップ11Cに戻る。動作集合の相対的障害強度マトリクスにその後、上記の測定値を記録する20C。1つの動作に関して複数のパターンがテストされた場合は、前述のように、1つの数値をマトリクスに記録する。サンプルがテストされており、破壊的試験が可能な場合は、前述の図11の方法と同様に、選択された回数の消去書き込みサイクルを実行した後に、図12に示される方法を再び実行して、消去/書き込みサイクルの回数に関する障害強度の変化を判断することができる。[データ管理活動のための確率割当]本発明のある実施形態によるSSDシステム130は、障害強度マトリクス135と動作履歴137を使用して、データのリフレッシュまたは移動等の予防的活動をいつ実行すべきかを判断するデータ管理システム133を有する。前述のように、ある製造者からの選択されたメモリチップに関する、障害誘発動作の相対的強度は、同じチップ構成と技術および製造工程を使用する、同じ製造者からのすべての部品についての、障害動作の相対的強度を表すものとみなすことができることを前提とする。それゆえ、この実施形態によるシステムでは、iあるフラッシュチップに対して実行された、それまでの動作書き込み-書き換え、消去、読み込みの継続的な履歴が保持される。すなわち動作履歴137である。ii異なる障害動作の平均相対的障害強度と、注入消失の方向とが、障害強度マトリクス135の中でわかる。および、iii実際に実行された障害動作全部の電荷に対する累積的影響を、障害強度と注入消失の方向とを使って推測できる。各種の動作に関する電荷の注入と消失は差し引きされる。図13Aは、マルチレベルフラッシュメモリチップに関する読み込み値VTの分布を示しており、これを使って本発明のある実施形態を説明する。図13Aにおいて、さまざまなデータポイントは、それが正しいものである確率、すなわち当初書き込まれた数値に障害が生じていない確率を有しており、これは本発明の技術を使って推測できる。この例では、分布1から3に示されるデータポイントはそれぞれ、MLCに関する当初の許容可能な標的書き込み値として容認される範囲内にあり、そのため、先行技術のシステムはこれを正しいと解釈する。しかしながら、電荷の注入または消失によって、データポイントは1つの分布から他の分布に移る可能性がある。先行技術のフラッシュメモリチップの読み込み動作では、たとえば、分布2の中にあるデータポイント121、122でデータを回復するかもしれないが、これらのデータポイントは当初は分布1または3の中に書き込まれていたかもしれない。障害誘発動作の実行履歴と、これらの動作の相対的障害強度と、を使用して、121、122を含むいずれのデータポイント値の正確さにも、確率を割り当てることができる。それゆえ、本発明による方法を用いれば、データポイント値121にはある確率を割り当てることができ、この確率とは、それが以前は分布1の中の考えられる状態の1つが書き込まれていたメモリセルの最終的な障害発生後の状態かもしれず、障害動作による電荷の注入の結果としてその最終状態に到達したという確率である。同様に、電荷消失の原因となりうる動作の影響によって、当初は分布3の中にあったデータポイントが、より低い数値となり、分布2に当てはまる、たとえばデータポイント122となる可能性もある。電荷の注入と消失の方向と大きさは、具体的な動作の障害強度、注入-消失方向および実際に実行された動作の累積的影響に関係する。注意すべき点として、消去動作は、標的とされるメモリセルの電荷を一掃するが、それには、動作履歴のリセットは不要である。消去動作は履歴記録に追加され、フラッシュメモリの障害イベントの累積的影響を更新するために使用される。消去サイクルにより、相対的障害強度が変化するかもしれない点に注意されたい。1つの実施形態において、障害誘発動作の履歴は、障害誘発動作回数の総数の中の、各障害誘発動作が占めるパーセンテージとしてまとめることができる。これによって、これらの障害誘発動作の、浮遊ゲートにおける電荷数における最終的な正味の障害効果に対する相対的強度の加重和が得られる。この障害誘発動作の履歴は、ページごと、またはチップのセクタごとに記録することができ、各障害誘発動作の時点での、異なる可能性のあるチップの内容を反映するように調整することもできる。障害強度マトリクスと動作履歴をさまざまな方法で使用して、データ損失を防止するための予防策に関する決定を下すことができる。1つの手法では、保守的な決定を用いて、フラッシュチップ内のデータを強制的にリフレッシュまたは移動させる。たとえば、障害強度テストから、データ管理システムは、たとえば、ある非常に高感度のセルに対して100万回、読み込み動作を実行すると、読み込まれたメモリの内容にビット障害が発生したことを観察したかもしれない。本発明によるデバイスの1つの実施形態はすると、そのセルのいずれかにおいて、100万回、読み込み動作を実行した後に、データリフレッシュを要求または実行できる。あるいは、リフレッシュを強制する代わりに、今読み込まれたばかりのセル100万回の読み込み動作を行った後にエラーがあるかもしれないという確率を、選択された確率に割り当てることも可能であろう。この情報は、その読み込まれたデータに割り当てるべき信頼性レベルに代わるものとして、エラー検出およびエラー訂正装置に送信することができる。リフレッシュはその後、エラー検出およびエラー訂正装置の制御によって要求される。要約すれば、図13Bに示されるように、障害と消去サイクルの履歴を使用して、読み込まれたデータに関するエラーバーの推測を行うことができる。特定のセルのTTC情報で、その分布におけるそのセルのVTの位置が推測される。これら2つの情報を追加して、管理システムは、フラッシュメモリから読み込まれたどのデータにもエラーの確率を割り当てることができる。本発明を、特定の実施形態に関して図示し、説明したが、本発明は、その範囲において、付属の特許請求の範囲に明記されているようにのみ限定される。"