(57)【特許請求の範囲】
【請求項１】
フラッシュメモリシステムの動作方法であって、
前記フラッシュメモリシステムにおいてそれまでに実行された、各々の障害誘発動作の継続的な動作履歴を記録するステップと、
あるメモリセルに関する電荷の正味の注入または消失の推測を、前記動作履歴と、前記各々の障害誘発動作に関する障害強度値と、前記各々の障害誘発動作に関する電荷の注入−消失方向と、を使って計算するステップと、
を含み、
前記障害強度値は、前記メモリセルの集合において読み込み動作の完了時間の最大値と最小値の差分の変化を引き起こすのに必要な前記障害誘発動作の実行回数から導き出される、
フラッシュメモリシステムの動作方法。
【請求項２】
前記メモリセルの集合の読み込み動作の完了時間の最大値と最小値の初期差分を測定するステップと、
前記メモリセルの集合に対して前記障害誘発動作を繰り返し実行し、その一方で、現在の差分が前記初期差分から所定の量より大きく変化するまで、前記メモリセルの集合について前記現在の差分を定期的に測定するステップと、
前記現在の差分が前記初期差分から所定の量より大きく変化する前に実行された、前記障害誘発動作の回数を使って、前記障害誘発動作に関する前記障害強度値を判断するステップと、
前記障害誘発動作に関する障害強度値を記録するステップと、
をさらに含む、
請求項１に記載のフラッシュメモリシステムの動作方法。
【請求項３】
複数の障害誘発動作の各々について、前記障害強度値の測定、実行、決定および記録を繰り返すステップをさらに含む、
請求項２に記載のフラッシュメモリシステムの動作方法。
【請求項４】
前記各々の障害誘発動作の前記障害強度値をマトリクスに保存するステップをさらに含む、
請求項３に記載のフラッシュメモリシステムの動作方法。
【請求項５】
前記メモリセルから読み込まれたデータがエラーである可能性を、前記メモリセルに関する電荷の正味の注入または消失の推測を使って推測するステップをさらに含む、
請求項１に記載のフラッシュメモリシステムの動作方法。
【請求項６】
あるメモリセルに関する電荷の正味注入または消失の推測が所定の閾値を超えたとき、データの消失を防止するための予防策を実行するステップをさらに含む、
請求項１に記載のフラッシュメモリシステムの動作方法。
【請求項７】
前記メモリセルに関する電荷の正味の注入または消失を推測するステップは、
前記動作履歴における前記各々の障害誘発動作のパーセンテージを計算するステップと、
前記各々の障害誘発動作の相対障害強度の加重和を計算するステップと、
をさらに含む、
請求項１に記載のフラッシュメモリシステムの動作方法。
【請求項８】
前記各々の障害誘発動作の前記障害強度値と、前記各々の障害誘発動作の前記注入−消失方向とが、サンプルデバイスのテストによって決定された所定のデータとして前記フラッシュメモリシステムに供給される、
請求項１に記載のフラッシュメモリシステムの動作方法。
【請求項９】
フラッシュメモリシステムであって、
フラッシュメモリセルの集合と、
各々の障害誘発動作に関する障害強度値及び電荷の注入−消失方向を含む障害強度マトリクスであって、前記障害強度値は、前記フラッシュメモリセルの集合の中の読み込み動作の完了時間の最大値と最小値の差分の変化を引き起こすのに必要な前記障害誘発動作の実行回数から導き出される障害強度マトリクスと、
前記フラッシュメモリシステムによって実行された、前記障害誘発動作の継続的な記録である動作履歴と、
前記障害強度マトリクスを動作履歴とともに使用して、前記フラッシュメモリセルに関する電荷の正味の注入または消失の推測を計算するデータ管理装置と、
を備えるフラッシュメモリシステム。
【請求項１０】
測定装置の集合であって、前記各測定装置が前記フラッシュメモリセルの集合の中のフラッシュメモリセルに接続されており、前記各測定装置が読み込み動作中のフラッシュメモリセルの閾値電圧の測定値を表す測定信号を生成する測定装置の集合と、
前記測定信号を受信し、前記フラッシュメモリセルの集合に関する前記測定信号の最大電圧と最小電圧の間の差分を判断する分散アナライザと、
をさらに備える、
請求項９に記載のフラッシュメモリシステム。
【請求項１１】
前記各測定信号は、読み込み動作に関する前記フラッシュメモリセルの完了時間から導き出される、
請求項１０に記載のフラッシュメモリシステム。
【請求項１２】
前記分散アナライザは、
前記測定装置の集合からの前記測定信号における最大電圧に対応する第一の電圧を出力する最大電圧検知器と、
前記測定装置の集合からの前記測定信号における最小電圧に対応する第二の電圧を出力する最小電圧検知器と、
前記最大電圧と前記最小電圧の間の差分を、現在の差分として判断する手段と、
をさらに備える、
請求項１１に記載のフラッシュメモリシステム。
【請求項１３】
前記障害強度マトリクスは、前記フラッシュメモリシステムによって実行されるセルフテストにより決定される、
請求項９に記載のフラッシュメモリシステム。
【請求項１４】
前記データ管理装置は、前記フラッシュメモリセルから読み込まれたデータがエラーであるという可能性を、前記フラッシュメモリセルに関する電荷の正味の流入または消失の推測を用いて推測する手段を含む、
請求項９に記載のフラッシュメモリシステム。
【請求項１５】
前記データ管理装置は、前記フラッシュメモリセルに関する電荷の正味の流入または消失の推測が所定の閾値を超えたときに、データ損失を防止するための予防策を実行するための手段を含む、
請求項９に記載のフラッシュメモリシステム。
【請求項１６】
前記データ管理装置は、前記動作履歴の中の前記各々の障害誘発動作に関するパーセンテージを計算し、前記障害誘発動作の相対障害強度の加重和を計算するステップを含む、
請求項９に記載のフラッシュメモリシステム。
【請求項１７】
前記フラッシュメモリセルの集合に関する読み込み電圧閾値の分布における、あるフラッシュメモリセルの読み込み電圧閾値の位置を推測する手段をさらに備える、
請求項１０に記載のフラッシュメモリシステム。
【請求項１８】
前記各々のフラッシュメモリセルの前記読み込み電圧閾値は、対応するフラッシュメモリセルに接続された測定装置から導き出され、前記測定装置は、読み込み動作に関する前記フラッシュメモリセルの完了時間から導き出された、読み込み動作における前記フラッシュメモリセルの閾値電圧を表す測定信号を生成する、
請求項１７に記載のフラッシュメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、不揮発性半導体メモリおよび、より詳しくは、フラッシュメモリのためのエラー検出および訂正技術に関する。
【背景技術】
【０００２】
ＥＥＰＲＯＭとフラッシュメモリ（ＮＯＲ型およびＮＡＮＤ型）では、情報を表す電荷を保持するのに浮遊ゲート（ＦＧ）が使用される。これらのメモリ素子には、書き込み／消去サイクルを繰り返し行った後に劣化するメカニズムを持つという問題があり、それが、素子が耐えられる消去／書き込み動作の回数を制限している。マルチレベルセル（ＭＬＣ）フラッシュデバイスは一般に、シングルレベルセル（ＳＬＣ）デバイスより書き込み／消去サイクルの耐性が大幅に低い。
【０００３】
さまざまな書き込みおよび消去動作によって、隣接するセルにおける電荷の注入または消失を引き起こすことがあり、これが「障害」と呼ばれる。障害エラーは、あるセルの初期の書き込まれた状態が、近隣のセルに対して行われた書き込みまたは読み込み動作の結果として変化した時に発生する。障害エラーはソフトエラーである。「読み込み障害」は、あるメモリセルを読み込むことによって、そのセルに物理的に近い、またはそのセルと制御線を共有する別のセル内の電荷の量が変化したときに発生する。１回の読み込み障害のイベントでは、電荷蓄積量はエラーとなるほど変化しないかもしれないが、読み込み障害が累積されると、最終的にエラーとなるかもしれない。読み込み障害の累積的効果は、消去動作によってリセットされる。ＮＡＮＤ型フラッシュの具体的なマトリクスアーキテクチャにより、ＮＯＲ型フラッシュより「読み込み障害」のエラーが多くなる。書き込み障害のエラーが発生すると、ページ書き込み中にビットが誤った値に設定される。ビットエラーは書き込み中のページに発生しうるが、ブロック中の別のページにも発生する可能性がある。
【０００４】
特許文献１（１９９８年２月３日）には、メモリセルブロックに対する障害効果をモニタする方法について記載されており、この方法では、消去ブロックが消去されるたびに、コントローラが、復号ブロックの中の他の各消去ブロックに関するカウントに障害のユニットを追加し、消去されたブロックのカウントをゼロにリセットすることによって、消去されたブロックを含む復号ブロックのテーブルを更新する。特許文献１ではまた、好ましくは、コントローラが、障害カウントが所定の最大値に到達した各消去ブロックについてリフレッシュ動作を実行する、とも述べている。リフレッシュ動作中、その消去ブロックの各セルの浮遊ゲートに適正な電荷を戻すために、回復手順が必要であればこれが実行され、それゆえ、リフレッシュ動作を行わない場合に（障害効果によって）発生するようなデータの読み込みエラーが防止される。
【０００５】
マルチレベルセル（ＭＬＣ）フラッシュデバイスは、トランジスタの浮遊ゲートを異なる選択閾値電圧（ＶＴ）レベルに帯電させることによって、１メモリセルに複数のビットを蓄積させ、これによって、セルのアナログ特性を利用して、ビットパターンを特定の電圧レベルにマッピングすることができる。ＮＡＮＤ型フラッシュの場合、ＭＬＣデバイスのＶＴは、概念上、選択された読み込み電圧（ＶＲＥＡＤ）レベルをセルの浮遊ゲートに逐次的に印加することによって読み込まれる。一般に、電圧範囲は各レンジ間に保護周波数帯を設けて選択され、これが確実に通常のＶＴ分布が重複しないようにするのに役立つ。
【０００６】
ＮＯＲ型フラッシュにおいては、セルはビット線に平行に接続され、これによって、個々のセルに対して読み込み、書き込みを行うことができ、直列のその他のトランジスタはすべて既知の状態にある。それゆえ、ＮＯＲ型フラッシュでは、問い合わせが行われているメモリセルと直列のトランジスタは、アドレス指定機能だけに関連するトランジスタである。
【０００７】
特許文献２（２００８年１２月１１日）には、ＮＡＮＤ型メモリの中の不良ブロックの出現を検出するためにホストデバイスに実装される方式が記載されており、この方式には、読み込み動作中のエラーの少なくとも部分的な履歴を保持することが含まれる。
【０００８】
特許文献３には、メモリコントローラが使用する訂正済みの読み込み電圧を保存し、取り出すための手段を含む周辺回路を含むことによって、チップごとの読み込み障害特性のばらつきを低減させるＮＡＮＤ型フラッシュメモリシステムが記載されている。メモリコントローラは、フラッシュメモリ上でのデータ入力／出力制御とデータ管理を実行し、書き換え時にエラー訂正コード（ＥＣＣ）を追加し、読み込み時にエラー訂正コードを解析する。
【０００９】
ソリッドステートドライブ（ＳＳＤ）は、一般的に、機能面で従来のハードディスクドライブ（ＨＤＤ）に代わるものとして設計されたデータストレージデバイスであり、ＳＳＤは、ソリッドステートメモリを使用してデータを保存する。ＳＳＤという用語は、本明細書では、フラッシュメモリベースのデバイスのみを指すものとする。ＳＳＤは一般に、ハードディスクドライブと同じコマンドインタフェースを使用するため、ＳＳＤは多くの用途において、ソフトウェアを修正することなく、ＨＤＤの代わりに使用できる。ＨＤＤとＳＳＤの両方の機能を含むハイブリッドデバイスもまた実現可能である。
【００１０】
メモリの内容の劣化が時間の経過および書き込み／消去サイクルの回数とともに劣化し、これが不可避であることから、フラッシュメモリチップの基本的な物理的特性と動作上の詳細を利用できる効率的なエラー訂正コードを開発する必要がある。このような効率的なエラー訂正コードは、フラッシュメモリの読み込み性能を損なわずに、読み込み時に取り出すことが可能なソフト情報を使用する必要がある。以下に説明する本発明を以下、概してフラッシュメモリ用の劣化の早期検出（Ｅａｒｌｙ  Ｄｅｇｒａｄａｔｉｏｎ  Ｄｅｔｅｃｔｉｏｎ）（ＥＤＤ）システムと呼ぶ。本発明は、単独でも、ＥＤＤシステムを補完するものとしても、フラッシュメモリの信頼性を向上させ、動作寿命を延ばすことができる。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】米国特許第５７１５１９３号明細書
【特許文献２】米国特許出願公開第２００８０３０７２７０号明細書
【特許文献３】米国特許出願公開第２０１００２１４８４７号明細書
【発明の概要】
【課題を解決するための手段】
【００１２】
本発明の実施形態には、ソリッドステートドライブ（ＳＳＤ）等のフラッシュメモリ素子と、障害誘発動作に対するシステムの感度と、システムによって実行された障害誘発動作の履歴と、に基づく確率を使ったデータ管理方法が含まれる。本発明のある実施形態において、障害誘発動作に対する感度は、障害強度マトリクスにまとめられ、このマトリクスでは、選択された動作に、その動作がデータエラーの原因となりうる障害を引き起こす相対的な強度を推測した数値が関連付けられている。障害強度マトリクスにはまた、電荷の流入または消失のいずれかを示すエラーの方向を含むことができる。１つの実施形態において、障害強度マトリクスは、デバイスが、選択された動作を検出可能なエラーが発生するまで実行することによって障害エラーを引き起こすようなセルフテストを実行することによって決定される。障害の原因となりうるすべての動作をテストに含むことができる。本発明のある実施形態において、動作の障害強度は、フラッシュセルの蓄積電荷の変化に起因する検出可能な障害（ビットの変化）を引き起こすのに必要な動作の回数によって決まる。エラーを引き起こすのに必要な動作の回数が多いほど、障害強度は弱い。
【００１３】
別の実施形態において、障害強度マトリクスは、等質な母集団から選択された装置をテストすることによって決定される。比較的小さな、選択されたサンプルデバイスの集合を使用することにより、破壊的なテストを行うことができ、すなわち、デバイスの使用寿命を短縮または消費するような動作の実行をテストに含むことが可能となる。
【００１４】
別の実施形態において、障害強度は、読み込み動作の完了時間（ＴＴＣ）値の分散に検出可能な変化が発生するまでに実行できる動作回数をカウントすることによって推測される。ＴＴＣ値は、この読み込み動作中に問い合わせたメモリセルの中の閾値電圧（ＶＴ）の分散に代わるものとして使用される。
【００１５】
障害強度テストは、工場における製造工程の一部として実行されるべきであり（個々のデバイスまたは選択されたサンプルのいずれか）、障害強度マトリクスは、本発明による各デバイスのデータ管理システムの一部として使用される。障害強度マトリクスは、ＳＳＤシステムでそれまでに実行された、障害誘発動作の継続的な履歴記録（動作履歴）と一緒に使用され、データの損失を防止するための予防策をいつ実行するべきかが判断される。また、障害強度マトリクスと動作履歴を使って、メモリから読み込まれたデータポイント値が、累積された障害の結果である確率を割り当てることも可能である。あるデータポイント値について、特定の方向への障害が生じている確率が十分に高いことがわかれば、ＳＳＤの通常の読み込み動作の一部として、リアルタイムでエラー訂正を行うことができる。
【図面の簡単な説明】
【００１６】
【図１】先行技術によるＮＡＮＤ型フラッシュマルチレベルメモリセル構造の図である。
【図２Ａ】図１の先行技術によるＮＡＮＤ型フラッシュマルチレベルメモリセル構造の読み込み動作に関する、選択されたタイミング曲線の図である。
【図２Ｂ】図１の先行技術によるＮＡＮＤ型フラッシュメモリセル構造の集合の読み込み動作に関する、選択されたタイミング曲線の図であり、その集合について考えられるタイミング曲線の範囲を示す。
【図３】本発明のある実施形態に使用される、劣化の早期検出（ＥＤＤ）を備えるＮＡＮＤ型フラッシュメモリのページの中の、選択された構成要素を示す図である。
【図４】本発明のＮＡＮＤ型フラッシュの実施形態による完了時間測定装置の、選択された機能設計ブロックの図である。
【図５】本発明のＮＡＮＤ型フラッシュの実施形態による分散アナライザの、選択された機能設計ブロックの図である。
【図６】本発明のある実施形態による分散アナライザに使用される最大電圧検知器の設計を示す図である。
【図７Ａ】高速読み込みのための、センスアンプの並列バンクを備える先行技術によるマルチレベルＮＯＲ型フラッシュメモリを示す概念図である。
【図７Ｂ】それぞれ自己の基準電圧を有し、同時に切り替わる、並列の電流ミラーといくつかのセンスアンプを用いた改良を示す図である。
【図８】本発明のある実施形態で使用されるＮＯＲ型フラッシュメモリシステムの、選択された構成要素の図である。
【図９】本発明のＮＯＲ型フラッシュの実施形態による完了時間測定装置の、選択された機能設計ブロックの図である。
【図１０】本発明のＮＯＲ型フラッシュの実施形態で使用されるマルチプレクサ（ＭＵＸ）の設計を示す図である。
【図１１】エラーを強制的に発生させることによって、フラッシュメモリの動作集合の障害強度を判断するための、本発明のある実施形態による方法を示すフローチャートである。
【図１２】分散解析を使ってフラッシュメモリの動作集合の障害強度を判断するための、本発明のある実施形態による方法を示すフローチャートである。
【図１３Ａ】フラッシュメモリの読み込み値の分布を示す。
【図１３Ｂ】フラッシュメモリの読み込み値の分布を示し、本発明のある実施形態によるエラーバーを示す。
【図１４】本発明のある実施形態によるＳＳＤの、選択された構成要素を示すブロック図である。
【発明を実施するための形態】
【００１７】
図１４は、本発明のある実施形態によるＳＳＤ  １３０の、選択された構成要素を示すブロック図である。これは、例にすぎない。当業者は、説明される機能のいくつかをホストに移すことができ、それでも本発明の精神から逸脱しないことを認識するであろう。ＳＳＤは、ＳＳＤとコンピュータ１２０等のホストデバイスの間の２つの通信を扱う通信インタフェース１３１を含む。ＳＳＤはデータ管理装置１３３を含み、データ管理装置１３３はアレイコントローラ１３９まで、およびそれからのデータの流れを管理し、アレイコントローラ１３９はフラッシュアレイ１４１まで、およびそれからのデータの流れを制御し、フラッシュアレイ１４１はＮＡＮＤ型またはＮＯＲ型のいずれのデバイスでもよい。この実施形態におけるデータ管理装置１３３は標準的なマイクロプロセッサ（図示せず）とそれに関連付けられた不揮発性メモリを含み、メモリの中にはファームウェアプログラムが保存される。ファームウェアプログラムは、マイクロプロセッサによって実行され、上記のデータ管理プロセスステップが行われる。データ管理装置１３３は、後述の障害強度マトリクス１３５を、継続的な動作履歴１３７とともに使用し、予防的データ管理活動をいつ実行するかを判断する。各種の実施形態において、データ管理装置１３３は、フラッシュアレイ１４１に対して実行された有意な動作の各々を記録することにより、動作履歴１３７を保持する。いくつかの実施形態において、データ管理装置１３３には、障害強度マトリクス１３５が読取専用データとして供給されるが、これは、障害強度テストが他の選択されたサンプルデバイスについて実行されたからである。しかしながら、いくつかの実施形態において、データ管理装置１３３は、セルフテストを実行することによって、障害強度マトリクス１３５を作成する。
【００１８】
本発明は、ＮＡＮＤ型フラッシュアレイ１４１を使用する実施形態と、ＮＯＲ型フラッシュアレイ１４１を使用する実施形態を含む。関連発明による劣化の早期検出（ＥＤＤ）システムを含み、本発明の実施形態に含められるＮＡＮＤ型およびＮＯＲ型フラッシュメモリについて、以下に説明する。
【００１９】
［劣化の早期検出機能を備えるＮＡＮＤ型フラッシュの実施形態］
シングルレベルおよびマルチレベルメモリセル構造２０に適用可能な先行技術によるＮＡＮＤ型フラッシュを図１に示す。問い合わせられているＮＡＮＤ型フラッシュメモリセルには、有効なＶＴレベルの書き込まれている他のメモリセルが直列に設置されている点に注意されたい。（注：これは、ＮＯＲ型フラッシュメモリには当てはまらない。）。ＮＡＮＤ型構造のセルは、２つのセルアレイ、すなわち、トランジスタの左側のカラムとして示されるセルアレイ（ａ）と、右側のカラムとして示されるセルアレイ（ｂ）に分けられる。セル構造２０は、ビット毎ベリファイ（ＢＶ）回路２１ａ、２１ｂを含み、これらは２本のビット線ＢＬａｉ、ＢＬｂｉの各々に接続される。２本のビット線と２つのＢＶ回路は、ＤＲＡＭのオープンビット線方式と同様に、共通のＲＥＡＤＷＲＩＴＥ（Ｒ／Ｗ）回路を共有する。Ｒ／Ｗ回路は、読み込み動作ではフリップフロップ型の差動センスアンプ２２として、また書き込み／書き換え動作ではデータラッチ回路として機能する。
【００２０】
図１の構造の読み込み動作に関する、選択されたタイミング曲線を図２Ａに示し、この中では、時間ｔ１、ｔ２およびｔ３が選択点である。単純にするために、すべてのタイミングチャートと解説は、あるページの全セルの平行読み込みに完璧に適合した読み込み回路であることを前提としている。これらの回路の不適合には、単純な校正手順で対応できる。たとえば、既知の内容のメモリセルの具体的な集合を用いた基準読み込みを使って、後のそのメモリアレイ内のセルの読み込みにおけるセンスアンプの不適合を訂正することができる。
【００２１】
センスアンプ２２はコンパレータであり、一般に、再生ループを用いて、図１のビット線ＢＬａｉとＢＬｂｉからのパスゲート通過後の入力線の小さな分離を、完全に生成された出力電圧レベルとして生成する。図１の回路と図２Ａの曲線は、ＮＡＮＤ型フラッシュの読み込みを適正に表している。図２Ｂは、図１の先行技術によるＮＡＮＤ型フラッシュメモリセル構造の集合の、１．８ｖに対するＢＬａｉの読み込み値「１」のｔ３以降の部分を選択して示した図であり、一般的なタイミング曲線２６と、線２５、２７を境界とする、セル集合に関して考えられるタイミング曲線の範囲の例を示している。セル集合のＢＬｂｉ信号も、これと同様のタイミング曲線の分布を示す。本発明の実施形態は、セル集合の完了時間（ＴＴＣ）を測定または推測することによって、セルのページの性能の分散の変化を検出する。曲線の立ち上がり部のタイミングの分散は、読み込み動作の完了時間（ＴＴＣ）の差となる。注意すべき点として、フラッシュ読み込み回路は一般に、タイミング性能の通常の分散では読み込みエラーが発生しないようにするための機能を含んでおり、すなわち、回路は「保護されている（sandbagged）」。それゆえ、本願の発明は、フラッシュメモリの中で当業者によって評価されなかった面に光を当て、この現象を新規な用途に利用するものである。
【００２２】
ＮＡＮＤ型フラッシュの方式により、選択されていないメモリセルの中の異なる内容に応じて、選択されたセルに異なる直列抵抗が生じる。そのため、ＮＡＮＤ型フラッシュメモリセルの内容に対しては、逐次的ステップで問い合わせと異なる基準レベルとの比較が行われ、その中で異なるＶＴレベルが問い合わされる。
【００２３】
メモリセルの１ページは、ＮＡＮＤ型フラッシュメモリの中で平行して読み込まれ、そのためには、読み込み動作が同期された適切な時間信号によって起動される必要がある。タイミング信号は、そのページに関するすべてのセンスアンプの線を等化するが、セルの強弱によって、センスアンプの線の駆動が異なり（等化後）、したがって、ラッチのトリガからセンスアンプの出力でのフル電圧の生成までの時間（すなわち、ＴＴＣ）は、より強いセルとより弱いセルとで異なる。本発明によれば、完了時間（ＴＴＣ）の差を測定し、システムが後に解析するのに適切な形態で保存することができる。
【００２４】
ＮＡＮＤ型フラッシュマトリクスの中のすべてのメモリセルは、名目上、同一であり、それぞれが閾値電圧ＶＴに書き込まれ、それにより、それらの書き込まれたＶＴのすぐ上の特定の電圧レベル（ＶＲＥＡＤ）で問い合わせられると、所定の電流レベルを生成するため、
（ｉ）ＴＴＣの分散は、読み込まれているセルのＶＴの分散に代わるものとなる。
（ｉｉ）フラッシュメモリのページが初めて使用される時点のＴＴＣの分散の値を基準値として保存し、これをその後読み込み時に測定された分散と比較して、メモリセルの劣化がいつ、データ保護動作を確実に行える限界を超えたかを判断することができる。
（ｉｉｉ）読み込み動作中の各セルのＴＴＣの分散に関する知識を使って、ソフト情報を、判断されたメモリセルの内容の各々に割り当てることができる。
【００２５】
図３は、本発明のある実施形態による劣化の早期検出（ＥＤＤ）システムを備えるＮＡＮＤ型フラッシュのページ６０の、選択された機能ブロックを示す。コントローラ３０は、タイムベース３１、逐次的ＶＴ問合せ制御回路３３およびデコーダ３５を含み、これらは先行技術にしたがって設計されるため、詳細に説明しない。デコーダ３５は、メモリセルのＶＴが判断されると、メモリセルの内容の、対応するバイナリコードを出力する。逐次的ＶＴ問合せ制御回路３３は、ＮＡＮＤ型フラッシュにおいて使用される、選択されたメモリセルの正しいＶＴを逐次的に検索する回路を抽象化したものである。タイムベース３１は、パスゲートおよびセンスアンプのラッチに必要なタイミング信号を発生し、また、完了時間（ＴＴＣ）測定装置３２の時間計測も行う。
【００２６】
完了時間（ＴＴＣ）測定装置３２は、メモリセル構造２０の中のメモリセルによって駆動されるビット線出力がその最終的な数値に到達するのに必要な時間を測定する。コントローラ３０とメモリセル構造２０は、分散測定機能付きメモリ構造（ＭＳＤＭ）装置４０と呼ばれる装置を形成する。メモリのページには複数のＭＳＤＭ（ＭＳＤＭ＿１、…、ＭＳＤＭ＿ｎ）が必要となり、これらは並列に分散アナライザ５０に接続される。民生用フラッシュでは、メモリセル構造は実際には共有回路を持つメモリアレイに実装され、これは本願の精神から逸脱しない。図３はそのため、本発明の概念を例示するために構成された単純な説明であり、例示を目的として提供されたにすぎず、本発明を限定するためではない。
【００２７】
逐次的読み込み工程において、メモリセル構造の中のセンスアンプは、ダミービット線（ＢＬｂｉ）からの入力基準が、読み込み動作対象、すなわち問い合わせられているメモリセルのＶＴを上回るときだけ、特定の方向へのフル出力を生成する。それゆえ、選択されたメモリセルの内容は、バイナリの形態で判断され、復号される。また、この時点で、完了時間測定装置３２によって測定された適正な完了時間（ＴＴＣ）がＴＴＣ報告回路３４から分散アナライザ５０へと報告される。ＴＴＣ報告回路３４は、バッファと信号調整を含んでもよく、それによって、完了時間に関する情報を分散アナライザに適正に伝送する。
【００２８】
完了時間測定装置３２のある実施形態の図を図４に示す。この実施形態は、フェーズロックループ（ＰＬＬ）システムの位相検出回路に使用されているチャージポンプ回路と同様である。この実現例において、限定的な形ではないが、完了時間情報は、ＴＴＣ測定装置３２の内部のコンデンサＣｏｕｔ７３の電荷に保存される。コンデンサの電圧は、電流発生源Ｉ１からの電流がスイッチＳ１を通ってコンデンサの中に流れることができる時間に比例する。Ｓ１の切り換えはフリップフロップ７２によって制御され、フリップフロップ７２は単一終端コンバータとの差分７１の出力によってリセットされる。単一終端コンバータとの差分７１は、メモリセル構造からの２つのバイナリ出力を入力として使用する。正しい完了時間は、メモリセルのＶＴが判断された後に分散アナライザ（ＤＡ）に報告される。コンデンサ７３は、タイムベースからの信号に基づき、スイッチＳ２と電流発生源Ｉ２からドレインされる。
【００２９】
図５は、本発明のある実施形態による分散アナライザ５０の、選択された機能設計ブロックの図である。分散アナライザ５０は、アナログ信号処理ブロックである。この実施形態において、その機能は、あるページ読み込み動作のためのＴＴＣ測定装置３２の集合から最大完了時間および最小完了時間を判断することを含む。各ＴＴＣ測定装置３２はアナログ電圧レベル（ＴＴＣＭ＿ｏｕｔ）を出力し、これがＴＴＣ報告回路３４を通って分散アナライザ５０に供給される。分散アナライザのＭｉｎ／Ｍａｘ検知器５１は、ＴＴＣ報告回路からのその複数の入力での最大電圧と最小電圧を判断する。全体としての最大および最小値の差（差分）は、減算器５２によってそのページに関する分散の測定値として判断される。分散アナライザは、コンパレータ５４を使って、計算された差分が基準値５３より大きいか否かを判断し、それに応じて警告信号をセットする。基準値は、事前に決定された閾値か、ＮＡＮＤ型フラッシュメモリを初めて使用する時点で確立された初期値である。ある実施形態において、ストレージシステムの中のＮＡＮＤ型フラッシュチップの動作開始時に、書き込みコマンドの後、読み込みコマンドが発行されて、各読み込み動作でのＶＴのその後の分散を比較するための基準値が確立される。それゆえ基準値は、分散アナライザに、全体としての最大および最小値の初期差分を計算させ、その初期差分を基準値として保存させることによって、製造工程の一部として設定できる。
【００３０】
図６は、本発明のある実施形態による分散アナライザのＭｉｎ／Ｍａｘ検知器５１に使用される最大電圧検知器５１Ａの設計の図である。図６において、最大入力電圧を判断するためのＣＭＯＳ回路の例が示されている。これは、「ｗｉｎｎｅｒ−ｔａｋｅｓ−ａｌｌ」回路である。この回路の出力は最大入力電圧に従い、その精度は入力レベル間の差１ｍＶである。この回路の中の入力数は、回路の反復によって直接的に増大させることができ、または２つの入力回路を階層木に配列することができる。最小入力電圧に従わせる場合は、組み込まれた回路の中でＮＭＯＳからＰＭＯＳへと適切に変更する。
【００３１】
劣化の早期検出システムを使用して、各メモリセルから読み込まれた内容に、エラー確率または正確さ信頼レベルを割り当てることができる。完了時間（ＴＴＣ）測定に関する情報によって読み込まれた各セルのＶＴの位置に関する情報を使用して、正確さ信頼レベルを各セルから読み込まれたデータに割り当てることができる。これによって、読み込まれた各セルデータの理想的な分散におけるＶＴの位置を知らせる機能を備えるＮＡＮＤ型フラッシュチップに、新規で、より効率的な符号化およびエラー訂正アルゴリズムを使用できる。すべて、１回の読み込みを必要とする。
【００３２】
［劣化の早期検出機能を備えたＮＯＲ型フラッシュの実施形態］
先行技術によるＮＯＲ型フラッシュメモリセルとそれぞれのセンスアンプの構成は、図７Ａと７Ｂにおいて、基本的な動作を強調するために単純化された略図として示されるとおりである。カラムデコーダトランジスタだけがＮＯＲ型フラッシュメモリセルと感知回路に直列に配置される点に留意されたい。そのために、ＮＯＲ型フラッシュセルの読み込みは、シングルレベルセル（ＳＬＣ）とマルチレベルセル（ＭＬＣ）のいずれでも、アナログ−デジタル変換回路と同様に平行して行うことができ、各セルに書き込まれたＶＴは、１回の問い合わせで判断される（これは、逐次的な問い合わせが必要なＮＡＮＤ型フラッシュと異なる）。コンパレータＣＯＭＰ１から３は一般に、再生ループを用いて、入力線（ビット線ＭＡＴ１から３、ＲＥＦ１から３）の小さな分離を、完全に生成された出力電圧レベルとして生成する。回路とタイミングの性能は、シングルレベルセル（ＳＬＣ）とマルチレベルセル（ＭＬＣ）の読み込みの両方を適正に表している。
【００３３】
図７Ａと７Ｂの先行技術によるマルチレベルセル（ＭＬＣ）フラッシュメモリ回路は、図のように、適切な比較用基準電圧（ＲＥＦ１から３）を含むように変更されている。センスアンプ９７、９８のバンク（ＣＯＭＰ１から３）の平行した同時動作が使用され、これは、前述のように、ＮＯＲ型フラッシュでは、読み込まれているメモリセルとはカラムデコーダトランジスタだけが直列であり、適正な基準電圧は、読み込み動作対象のメモリセルの閾値電圧を判断するために決定できるからである。
【００３４】
本発明によるＮＯＲ型フラッシュのための早期検出システムの原理は、以下を観察することによって説明できる。
１）ＮＯＲ型フラッシュでは、いくつかのメモリセルが平行して読み込まれ、この読み込み動作は、適正に決定された同じタイミング信号によって起動される。（タイミング信号は、読み込み動作に関わる全てのセンスアンプの線を等化し、感知をトリガする。）このため、セルの強弱によって、センスアンプの線の分離が異なり（等化後）、感知のトリガからセンスアンプの出力でのフル電圧の生成までの時間（「完了時間」（ＴＴＬ）と呼ぶ）は、より強いセルとより弱いセルとで異なる。
２）ＮＯＲ型フラッシュマトリクス内のすべてのメモリセルは、名目上同じであり、各々が閾値電圧ＶＴに書き込まれ、それにより、それらの書き込まれたＶＴのすぐ上の特定の電圧レベルで問い合わせられると、所定の電流レベルを生成するため、
（ｉ）（１）で定義されたＴＴＣの時間の分散は、読み込まれているセルのＶＴの分散に代わるものとなる。
（ｉｉ）フラッシュメモリが初めて使用される時点のＴＴＣの分散の値を保存し、これをその後の読み込み時のＴＴＣの分散と比較して、メモリセルの劣化がいつ、データ保護動作を確実に行える限界を超えたかを判断することができる。分散基準値として選択された値を実際に測定された値の代わりに使用することもできる。
（ｉｉｉ）読み込み動作中の全セルのＴＴＣの分散に関する知識を使って、ソフト情報を、判断されたメモリセルの内容の各々に割り当てることができる。
【００３５】
図８は、本発明のある実施形態による劣化の早期検出システムを備えるＮＯＲ型フラッシュメモリ８０の、選択された構成要素を示す。本発明によるＮＯＲ型の実施形態の分散アナライザ５０は、機能的には、本発明のＮＡＮＤ型の実施形態の分散アナライザと同等であるが、入力が以下のように異なる。分散アナライザ５０は、複数の（１、…、ｎ）のＴＴＣ測定装置１２０からの入力を受け取り、ＴＴＣ測定装置１２０は、ＭＵＸ  １＿ＯＵＴ、…、ＭＵＸ  ｎ＿ＯＵＴの信号を生成するように示されている。この実施形態では４レベルＮＯＲ型フラッシュメモリが想定されているが、これは限定条件ではない。センスアンプ９８は、入力基準電圧が読み込み動作対象のメモリセル（ＭＡＴ１から３）のＶＴを超える場合にのみ、正のフル電源へのそれらの出力（ＯＵＴ１から３）を生成する。それゆえ、３つの完了時間（ＴＴＣ１から３）装置３２Ａ−Ｃは、比較の結果、ＶＲＥＡＤがＶＴより高かった場合のみ、その出力に完了時間の有限値、すなわち電圧有限値を生成する。他のＴＴＣ装置のブロックは、フル電源電圧でその出力を飽和させる。
【００３６】
先行技術による温度計デコーダ（ＴＤ）２５は、この例では、メモリセルの内容をバイナリフォーマットで出力し、また、アナログマルチプレクサ（ＭＵＸ）２３にスクリーニング信号も供給して、メモリセルの内容の完了時間を表す電圧が正しく選択されるようにする。分散アナライザ５０は、読み込み動作中に読み込まれた全セル（または、全セルの中の一部）の完了時間（ＴＴＣ）の数値の分散が所定の数値より大きい場合に、劣化警告信号をセットする。
【００３７】
図１０は、本発明のある実施形態のマルチプレクサ（ＭＵＸ）２３の設計の図である。ＭＵＸ  ２３の入力は、それぞれのＴＴＣ装置３２ＡからＣの出力（ＴＴＣ１＿ＯＵＴ３３Ａ、ＴＴＣ２＿ＯＵＴ３３Ｂ、ＴＴＣ３＿ＯＵＴ３３Ｃ）である。ＭＵＸは、これらの入力のうち１つを選択して、ＭＵＸ１＿ＯＵＴ信号として分散アナライザに供給する。ＭＵＸ２３は、概念的に、パスゲートのアナログアレイということができる。しかしながら、３つのＴＴＣ装置３２ＡからＣのうちの１つの出力の電圧レベルを分散アナライザ５０の入力へと伝送することは、適正なバッファと信号調整回路を使用したいくつかの別の方法でも実現できる。
【００３８】
ＮＯＲ型フラッシュの読み込み回路のある実施形態において、問い合わせたメモリセルからの信号は、問い合わせたメモリセルが保持可能な異なる蓄積電荷レベルに対応する、基準複製電圧（ＲＥＦ１から３）と平行して比較される。使用する設計に応じて、この図のコンパレータＣＯＰ１から３からのいくつかの出力は値「０」を表し、いくつかは残りの値「１」を表し、「０」と「１」は、温度計の目盛のように見え、すなわち、出力として考えられるものとしては、たとえば、ＯＵＴ２とＯＵＴ３が出力「０」でＯＵＴ１が出力「１」、またはＯＵＴ３が出力「０」でＯＵＴ１とＯＵＴ２が出力「１」、という２つの例がある。
【００３９】
温度計デコーダ２５は、次に、この温度計の目盛の出力をバイナリコードに変換する。ある実施形態において、ＯＵＴ１から３の信号のうち、出力「１」を保持する最初のものが、問い合わせ対象のセルの閾値レベル（ＶＴ）より上の最初の基準レベルを表し、その位置もまた、温度計デコーダ２５からの信号Ｓ（ｓ０、ｓ１）に符号化されて、ＭＵＸ２３に送信される。信号Ｓは温度計デコーダによって決定され、温度計デコーダは、ある実施形態において、メモリセルの内容の読み込みのための温度計デコーダとして機能する。概念的に説明すれば、ただし限定的な意味ではないが、信号Ｓ（ｓ０、ｓ１）は、ＴＴＣ１から３の信号のどれが、ＭＵＸによって分散アナライザに報告されるべき完了時間（ＴＴＣ）であるかを選択する。
【００４０】
ＴＴＣ装置３２ＡからＣは同一である。出力ＴＴＣ１＿ＯＵＴを生成するＴＴＣ１装置３２Ａの一例としての実施形態が図９に示される。これは、フェーズロックループ（ＰＬＬ）回路で使用されるチャージポンプ回路と似ており、この場合、ＶＣＯ周波数と基準周波数の間の位相分離が訂正動作のために判断されることになる。センスアンプの等化（ＳＡＥＱ）信号の立ち上がりからＶｏｕｔ（それぞれＯＵＴ１から３）の立ち上がりまでの時間は、コンデンサＣｏｕｔの電圧レベルに変換される。標準的なタイミング信号であるアドレス遷移検知（ＡＴＤ）とＥＮＤＲＥＡＤまたはその他の同等の信号もまた使用される。バッファ回路（図示せず）を、ＴＴＣブロックの出力とＭＵＸ回路の間に使用してもよい。
【００４１】
この実施形態において、分散アナライザ５０は、ページの読み込み動作のための複数のＴＴＣ測定装置１２０からの出力信号に示されるような最大完了時間および最小完了時間を判断する。ＴＴＣ３２ＡからＣの各々は、ＭＵＸ２３に供給されるアナログ電圧レベルを出力し、ＭＵＸ  ２３は、今度は、その３つの入力のうちの１つを選択して、分散アナライザ５０に送信する。分散アナライザのＭｉｎ／Ｍａｘ検知器５１は、複数のＴＴＣ測定装置１２０からその複数の入力での最大電圧と最小電圧を判断する。全体としての最大および最小値の差（差分）が、減算器５２によって、そのページの分散の測定値として判断される。減算器５２の出力は、本発明の実施形態で使用される分散値であり、これについて以下にさらに説明する。分散化アナライザは、コンパレータ５４を使って、計算された差分が基準値５３より大きいか否かを判断し、それに応じて警告信号をセットする。基準値は、予め決定された閾値か、フラッシュメモリを初めて使用する時点で設定される初期値である。１つの実施形態において、ストレージシステムの中のフラッシュチップの動作の開始時に、書き込みコマンドの後、読み込みコマンドが発行されて、各読み込み動作でのＶＴのその後の分散を比較するための基準値が確立される。それゆえ基準値は、分散アナライザに、全体としての最大および最小値の初期差分を計算させ、その初期差分を基準値として保存させることによって、製造工程の一部として設定できる。
【００４２】
ソフト情報が必要なエラー訂正コード方式は、本発明のある実施形態について、読み込まれたすべてのセルからの完了時間情報を分散アナライザが有している点を注目することによってサポートできる。完了時間の結果の分散におけるその最初のセルの位置から、適切な正確さ確率を最終的なバイナリの結果に割り当てることができる。すべて、１回の読み込みを必要とする。
【００４３】
［障害強度および動作履歴を使用したエラー訂正のための確率推測］
通常の動作において、ＮＯＲ型およびＮＡＮＤ型フラッシュメモリセルには、浮遊ゲートへの電荷の注入または浮遊ゲートからの電荷の消失を発生させる障害が起こる。以下の表１は、ＩＥＥＥ  Ｓｔａｎｄａｒｄ  １００５−１９９８，ｐａｇｅ  ９７から引用したものであるが、異なる障害条件での動作と状態および、障害が生じたメモリセルの中の電荷に対するそれらの影響を示している。表１の動作集合は、障害を起こす可能性のある動作のデフォルトリストと仮定される。しかしながら、本発明はいかなる特定の動作集合にも限定されない。
【表１】
0005997441.tif 000002
【００４４】
［エラー強制による障害強度の測定］
本発明による方法で、表１に記載された動作の全部または一部のような動作集合に関する平均相対的障害強度を測定する。障害強度は、製造工程の一部として判断されるべきである。障害強度は、後述のように、デバイスがセルフテストによって判断できるが、代表的なサンプルデバイスについてテストを実施し、障害強度マトリクスをリードオンリメモリの一部として生産デバイスに供給することも可能である。特定のデバイスで使用されるフラッシュメモリチップは、同じチップ構成とデバイス技術およびプロセスを使用する、ある製造者からのものであり、異なる動作に関する実質的に同様の平均相対的障害強度を見せることを前提とする。異なる製造者のチップの間の、異なる障害に関する平均相対的強度の違いは十分に明瞭であり、特定の用途にどのフラッシュメモリチップ製造者の製品が部品として最も適切かを顧客が判断できるということがありうる。
【００４５】
テストおよび特性評価の方法のある実施形態を、図１１のフローチャートを参照しながら説明する。フラッシュメモリチップは、テスト開始前に、完全に消去するか、あるいは一貫性のある、既知の状態に置くべきである。例示のために、図１１は、フラッシュメモリチップの中の、障害を引き起こす異なる動作の平均相対的強度の特性評価を行う作業のフローチャートの一例を示す。この方法では、まず、障害を引き起こす可能性のある全動作リストの中からある動作を選択する（１１）。
【００４６】
この方法は、リストの中のいずれの動作でも使用できるが、読み込み動作は幾分有利であり、これは、その理由の１つとして、実行機能な読み込み動作の回数に固有の限度がないからである。いくつかの動作に関する実行回数の限度については、以下にさらに説明する。また、いくつかの動作と異なり、読み込みを行うのに、それに続けて他の動作を実行する必要がない。たとえば、書き込みには一般に、その前に消去動作を必要とし、これはブロックごとに行われる。
【００４７】
消去または読み込み動作等のいくつかの動作は、関連するデータビットパターンを持たないかもしれないが、たとえば、書き込み動作には、この方法の内側パターンループで適用される、対応するビットパターン集合があることがある。このパターンは、ＡＡｈまたは５５ｈ等の標準的メモリビットパターンであっても、適切なその他のパターンであってもよい。適切なデータパターンは、メモリセルが、隣接するメモリセルの中にある電荷に応じて、障害に対する感度がより強いか、より弱いかを考慮して、選択できる。これを確認するために、システムは、セルにたとえば「１」に書き込み、その一方で隣接セルに「０」を書き込んで、障害に対する感度を確認する必要があるかもしれない。続いて、別の内容を選択されたセルの中に書き込み、その一方で違う内容を隣接のセルに書き込む。障害強度セルフテストを実行する際、複数のパターンを適用できるが、最終的には、最後の障害強度マトリクスの中には、各動作について１つの数値があるべきである。パターン番号の集合は多くの有意義な方法、たとえば平均化等で使用できるが、保守的な手法では、最も強力な障害を引き起こすパターンの番号が選択される。目標は、障害となる問題の警告を発して、訂正措置を取ることができるような堅牢なシステムを実現することである。
【００４８】
選択された動作と、選択された（第一または次の）パターンがある場合はそのパターンを一度実行して、初期ベースライン結果を生成する（１２）。ステップ１２から得られたメモリの初期内容を読み込み、その後の比較のために保存する（１３）。その後、現在のパターンがある場合はそのパターンを使用して、選択された動作を比較的多い回数だけ実行することによって、メモリにストレスをかける（１４）。選択された動作の総実行回数をカウントする（１４）。メモリの内容を再び読み込む（１５）。現在の内容を初期の内容と比較し、エラーが強制的に起こされたかを確認する（１６）。現在の内容が依然として初期の内容と同じ場合は、ステップ１４に戻り、さらに動作を繰り返し実行する。最終的にエラーが引き起こされると、方法はステップ１７に進み、ここで、エラーが検出されるまでに実行された動作の総回数を記録する。メモリの内容は各動作後には比較／テストされないため、分解能は、各読み込み／テストの間に実行された動作の回数によって制限される。エラーの方向（電荷の注入または消失）もまた記録する（１７）。この時点での結果は、選択された動作と、おそらくは１つのパターンに関するものであるため、ここで、選択された動作に関する追加のパターンを選択し、内側パターンループを再び実行する（１８）。選択された動作についてすべてのパターンを実行した時点で、リストにさらに他の動作があれば、外側ループを再び実行する（１９）。
【００４９】
すべての動作のテストが終了すると、記録されたデータは各動作に関する障害強度のマトリクスとなる（１９ａ）。１つの動作について複数のパターンがテストされた場合、マトリクスに記録された数値は、前述のように、パターンのための数の集合から選択された、または計算された１つの数となる。記録された数を比較することによって、各動作の相対的障害強度が得られる。このデータマトリクスの１つの考えられる用途は、前述のように、フラッシュメモリ製造者を差別化するためのツールとしての用途である。
【００５０】
サンプルがテストされており、破壊的試験が可能である場合、方法の選択可能な実施形態では、メモリに消去／書込みサイクルが実行される間の障害強度の変化を判断する。この実施形態において、消去／書き込みサイクルを選択された回数だけ実行した後に、図１１の方法を再び実行し、プロセス全体を何回も繰り返して、消去／書き込みサイクルの回数に関する障害強度の変化を判断する。その後、障害強度の変化を解析して、生産デバイスの中に実装できる有益なアルゴリズムまたはマトリクス集合を導き出し、障害強度マトリクスが、メモリに対して時間の経過とともに消去／書き込みサイクルが実行される間の変化を追跡できるようにする。たとえば、時間の経過とともに消去／書き込みサイクルの回数が増えるのに合わせて障害強度マトリクスを調整するために使用できる等式を導き出すことが可能かもしれない。
【００５１】
チップの寿命を大幅に短縮することなく、または寿命が終わる限界に達することなく、実行できる動作回数を判断するときに、いくつかの要素を考慮する必要がある。いずれの特定のフラッシュメモリチップに関しても、製造者は特定の動作の上限を明示する。絶対的な回数は、設計や製造技術が今後進化すると、変わることが予想される。たとえば、特定のフラッシュチップは、１０万回の消去／書き込みサイクルに耐えられると明示されるかもしれない。したがって、障害強度テスト中に実行できる動作の回数は、破壊的試験が可能な場合を除き、使用されている実際のチップの具体的な限度を考慮して選択する必要がある。障害強度テスト実行後に使用される予定のデバイスの場合、動作回数は、仕様書による限度より少なくするべきである。別の実施形態では、フラッシュチップのバッチから選択されたサンプルについて障害テストを実行し、そのバッチ内の他のチップの挙動を推定することができる。すべてがある製造者からの同じ設計と製造技術を用いる１世代のチップから抽出したサンプルをテストすれば十分であることもありうる。サンプルを使用して障害強度を判断する場合、障害強度マトリクスは、生産データストレージデバイスのプログラムメモリの中にリードオンリーデータとして供給される。
【００５２】
同じ世代の部品の生産全体で使用される、ある製造者からのサンプル集合から相対的障害強度のマトリクスを作成する場合は、図１１に示される流れの手順を、そのフラッシュチップの使用寿命の限界まで実行できる点に注意されたい。これは、使用されるサンプルにとって破壊的な特性評価であろう。このような破壊的手順は、デバイスのセルフテストに使用される手順の、より制限された消去／書き込みサイクル数に対して追加して使用できる。
【００５３】
［分散の変化を用いた障害強度の推測］
メモリセルに注入される電荷は、そのメモリセル内のＶＴ電圧を増大させる。この方向への障害が徐々に進むと、ＶＴは閾値を超え、そのセルはＶＴの記録可能なレベルにおける１つ高いレベルに対応するデータを含むものとして読み込まれる。反対に、障害を発生させるイベントにより電荷が消失すると、ＶＴ電圧は低下し、この方向への障害が徐々に進むと、最終的にＶＴはＶＴの記録な可能レベル範囲の中の１つ低いレベルに移動する。
【００５４】
要約すれば、相対的障害強度のマトリクスは、フラッシュチップに他の回路を追加せずに作成できる。相対的障害強度は、標的セルのＶＴ電圧を、その当初記録されたＶＴ値より上または下の閾値を超えるように変化させる障害イベントの回数で測定される。
【００５５】
しかしながら、ＴＴＣ分散に基づくＥＤＤの回路を追加できれば、相対的障害強度のマトリクスは、より少ない回数の障害イベントで、したがって、本願で先に説明したものより低コスト、短時間で構成できることが明らかである。
【００５６】
ＥＤＤ追加回路は、１ページの読み込みにおいて問い合わされるメモリセル集合全体の総合的な分散に関する情報を提供するだけでなく、読み込まれたそのページの各メモリセルのＶＴの相対的位置に関する情報も提供する。それゆえ、相対的障害強度のマトリクスは、あるメモリセルのセルＶＴ位置における検出可能なシフト、またはより正確には、そのセルに関するＴＴＣブロックの中のある変化を起こす障害数に基づいて構成できる。
【００５７】
この項で説明する実施形態において、システムには、ＮＡＮＤ型またはＮＯＲ型フラッシュメモリに関して前述した分散分布推測を備えるＥＤＤシステムが含まれる。前述の実施形態と同様に、障害強度は、製造工程の一部として決定されるべきである。分散アナライザ５０からの分散値信号（図５に示す）が、この実施形態で使用される。ＶＴ分布の他の測定値も、この方法で使用できる。分散値は、メモリのあるページに関する完了時間の最大値と最小値の差分を表すアナログ信号である。この方法は、次のページに移動する前の時点で単独のページについて実行でき、あるいは全ページについてステップを実行できる。ある実施形態において、テストおよび特性評価の方法は、フラッシュチップを完全に消去することから開始される。図１２は、この方法のある実施形態を説明するためのフローチャートを示す。障害を起こす可能性のある動作リストからある動作を選択する（１１Ｃ）。ビットパターンを選択し、メモリに書き込む（１２Ｃ）。読み込み動作を実行し、分散アナライザによって生成された初期の分散値を保存する（１３Ｃ）。選択された動作を、比較的多い回数にわたり繰り返す（１４Ｃ）。読み込み動作を実行することにより、現在の分散値を再び測定する（１５Ｃ）。現在の分散値をその後、初期の分散値と比較する（１６Ｃ）。２つの数値が等しい場合（許容値内）、この方法はステップ１４Ｃに戻り、別の動作バッチを実行して、分散値を再び測定する。現在の分散値が初期の分散値と等しくなくなったところで、分散値の中のある変化を引き起こすために実行された動作の回数を、選択された動作の障害強度として記録する（１７Ｃ）。この動作について、他にも所望のパターンがある場合は、この方法はステップ１２Ｃに戻り、次のパターンについて試験を繰り返す（１８Ｃ）。選択された動作についてのすべてのパターンのテストが終了したところで、そのリストに他にも動作があれば、方法はステップ１１Ｃに戻る。
【００５８】
動作集合の相対的障害強度マトリクスにその後、上記の測定値を記録する（２０Ｃ）。１つの動作に関して複数のパターンがテストされた場合は、前述のように、１つの数値をマトリクスに記録する。サンプルがテストされており、破壊的試験が可能な場合は、前述の図１１の方法と同様に、選択された回数の消去書き込みサイクルを実行した後に、図１２に示される方法を再び実行して、消去／書き込みサイクルの回数に関する障害強度の変化を判断することができる。
【００５９】
［データ管理活動のための確率割当］
本発明のある実施形態によるＳＳＤシステム１３０は、障害強度マトリクス１３５と動作履歴１３７を使用して、データのリフレッシュまたは移動等の予防的活動をいつ実行すべきかを判断するデータ管理システム１３３を有する。前述のように、ある製造者からの選択されたメモリチップに関する、障害誘発動作の相対的強度は、同じチップ構成と技術および製造工程を使用する、同じ製造者からのすべての部品についての、障害動作の相対的強度を表すものとみなすことができることを前提とする。それゆえ、この実施形態によるシステムでは、
（ｉ）あるフラッシュチップに対して実行された、それまでの動作（書き込み−書き換え、消去、読み込み）の継続的な履歴が保持される。すなわち動作履歴１３７である。
（ｉｉ）異なる障害動作の平均相対的障害強度と、注入・消失の方向とが、障害強度マトリクス１３５の中でわかる。および、
（ｉｉｉ）実際に実行された障害動作全部の電荷に対する累積的影響を、障害強度と注入・消失の方向とを使って推測できる。各種の動作に関する電荷の注入と消失は差し引きされる。
【００６０】
図１３Ａは、マルチレベルフラッシュメモリチップに関する読み込み値（ＶＴ）の分布を示しており、これを使って本発明のある実施形態を説明する。図１３Ａにおいて、さまざまなデータポイントは、それが正しいものである確率、すなわち当初書き込まれた数値に障害が生じていない確率を有しており、これは本発明の技術を使って推測できる。この例では、分布１から３に示されるデータポイントはそれぞれ、ＭＬＣに関する当初の許容可能な標的書き込み値として容認される範囲内にあり、そのため、先行技術のシステムはこれを正しいと解釈する。しかしながら、電荷の注入または消失によって、データポイントは１つの分布から他の分布に移る可能性がある。先行技術のフラッシュメモリチップの読み込み動作では、たとえば、分布２の中にあるデータポイント１２１、１２２でデータを回復するかもしれないが、これらのデータポイントは当初は分布１または３の中に書き込まれていたかもしれない。
【００６１】
障害誘発動作の実行履歴と、これらの動作の相対的障害強度と、を使用して、１２１、１２２を含むいずれのデータポイント値の正確さにも、確率を割り当てることができる。それゆえ、本発明による方法を用いれば、データポイント値１２１にはある確率を割り当てることができ、この確率とは、それが以前は分布１の中の考えられる状態の１つが書き込まれていたメモリセルの最終的な障害発生後の状態かもしれず、障害動作による電荷の注入の結果としてその最終状態に到達したという確率である。同様に、電荷消失の原因となりうる動作の影響によって、当初は分布３の中にあったデータポイントが、より低い数値となり、分布２に当てはまる、たとえばデータポイント１２２となる可能性もある。電荷の注入と消失の方向と大きさは、具体的な動作の障害強度、注入−消失方向および実際に実行された動作の累積的影響に関係する。
【００６２】
注意すべき点として、消去動作は、標的とされるメモリセルの電荷を一掃するが、それには、動作履歴のリセットは不要である。消去動作は履歴記録に追加され、フラッシュメモリの障害イベントの累積的影響を更新するために使用される。消去サイクルにより、相対的障害強度が変化するかもしれない点に注意されたい。
【００６３】
１つの実施形態において、障害誘発動作の履歴は、障害誘発動作回数の総数の中の、各障害誘発動作が占めるパーセンテージとしてまとめることができる。これによって、これらの障害誘発動作の、浮遊ゲートにおける電荷数における最終的な正味の障害効果に対する相対的強度の加重和が得られる。この障害誘発動作の履歴は、ページごと、またはチップのセクタごとに記録することができ、各障害誘発動作の時点での、異なる可能性のあるチップの内容を反映するように調整することもできる。
【００６４】
障害強度マトリクスと動作履歴をさまざまな方法で使用して、データ損失を防止するための予防策に関する決定を下すことができる。１つの手法では、保守的な決定を用いて、フラッシュチップ内のデータを強制的にリフレッシュまたは移動させる。たとえば、障害強度テストから、データ管理システムは、たとえば、ある（非常に高感度の）セルに対して１００万回、読み込み動作を実行すると、読み込まれたメモリの内容にビット障害が発生したことを観察したかもしれない。本発明によるデバイスの１つの実施形態はすると、そのセルのいずれかにおいて、１００万回、読み込み動作を実行した後に、データリフレッシュを要求または実行できる。あるいは、リフレッシュを強制する代わりに、今読み込まれたばかりのセル（１００万回の読み込み動作を行った後）にエラーがあるかもしれないという確率を、選択された確率に割り当てることも可能であろう。この情報は、その読み込まれたデータに割り当てるべき信頼性レベルに代わるものとして、エラー検出およびエラー訂正装置に送信することができる。リフレッシュはその後、エラー検出およびエラー訂正装置の制御によって要求される。
【００６５】
要約すれば、図１３Ｂに示されるように、障害と消去サイクルの履歴を使用して、読み込まれたデータに関するエラーバーの推測を行うことができる。特定のセルのＴＴＣ情報で、その分布におけるそのセルのＶＴの位置が推測される。これら２つの情報を追加して、管理システムは、フラッシュメモリから読み込まれたどのデータにもエラーの確率を割り当てることができる。
【００６６】
本発明を、特定の実施形態に関して図示し、説明したが、本発明は、その範囲において、付属の特許請求の範囲に明記されているようにのみ限定される。
【符号の説明】
【００６７】
２０  メモリセル構造、  ２１  検証回路、  ２２  センスアンプ、  ２３  アナログマルチプレクサ、  ２５  温度計デコーダ、  ３０  コントローラ、  ３１  タイムベース、  ３２  完了時間（ＴＴＣ）測定装置、  ３３  逐次的ＶＴ問合せ制御回路、  ３５  デコーダ、  ３４  ＴＴＣ報告回路、  ４０  分散測定機能付メモリ構造装置、  ５０  分散アナライザ、  ５１  最小／最大電圧検知器、  ５２  減算器、  ５３  基準値、  ５４  コンパレータ、  ７１  単一終端コンバータとの差分、  ７２  フリップフロップ、  ７３  コンデンサ、  ８０  ＮＯＲ型フラッシュメモリ、  １２０  コンピュータ、  １３０  ＳＳＤ、  １３１  通信インタフェース、  １３３  データ管理装置、  １３５  障害強度マトリクス、  １３７  動作履歴、  １３９  アレイコントローラ、  １４１  フラッシュアレイ。
【図１】
0005997441.tif 000003
【図２Ａ】
0005997441.tif 000004
【図２Ｂ】
0005997441.tif 000005
【図３】
0005997441.tif 000006
【図４】
0005997441.tif 000007
【図５】
0005997441.tif 000008
【図６】
0005997441.tif 000009
【図７Ａ】
0005997441.tif 000010
【図７Ｂ】
0005997441.tif 000011
【図８】
0005997441.tif 000012
【図９】
0005997441.tif 000013
【図１０】
0005997441.tif 000014
【図１１】
0005997441.tif 000015
【図１２】
0005997441.tif 000016
【図１３Ａ】
0005997441.tif 000017
【図１３Ｂ】
0005997441.tif 000018
【図１４】
0005997441.tif 000019