(57)【特許請求の範囲】
【請求項１】
データを格納する方法であって、
複数のワード線の中に並べられた複数のメモリセルを含むメモリ内で、第１のワード線と第２のワード線は隣接し、第２のワード線内の前記メモリ内のメモリセルのうちの少なくとも１つの中に格納された１つ以上のデータ値に基づいて、第１のワード線内の前記メモリセルの一群に適用される反復プログラミング処理のパラメータを設定するステップであって、前記パラメータは前記メモリセル群の少なくとも一部に適用されるプログラミングパルスに関連する当該ステップと、
前記設定されたパラメータに従って前記一群のメモリセル内で前記反復プログラミング処理を実行するステップと、
を含む、方法。
【請求項２】
前記パラメータを設定するステップが、前記データ値を前記メモリセルのうちの前記少なくとも１つから代替の格納場所にコピーするステップ、及び前記コピーされたデータ値に基づいて前記パラメータを設定するステップを含む、請求項１に記載の方法。
【請求項３】
前記パラメータを設定するステップが、前記反復プログラミング処理における連続したパルス間のパルス振幅若しくはパルス幅の増分、前記反復プログラミング処理における初期のパルスの振幅若しくは幅、前記メモリセル群に印加されるワード線プログラミング電圧、前記群内の後続のパルスを受信するように意図された前記メモリセルに印加されるビット線プログラミング電圧、及び前記群内の前記後続のパルスの受信が抑止されるように意図された前記メモリセルに印加されるビット線抑止電圧からなる種類の一群から選択される少なくとも１種類のパラメータを設定するステップを含む、請求項１に記載の方法。
【請求項４】
データを格納する装置であって、
複数のワード線の中に並べられた複数のアナログメモリセルを備えるメモリと、
第１のワード線と第２のワード線は隣接し、第２のワード線内の前記メモリ内のメモリセルのうちの少なくとも１つの中に格納された１つ以上のデータ値に基づいて、第１のワード線内の前記メモリセルの一群に適用される反復プログラミング処理のパラメータを設定し、前記設定されたパラメータに従って前記メモリセルの群内で前記反復プログラミング処理を実行するように構成された格納回路と、
を含み、前記パラメータは前記メモリセル群の少なくとも一部に適用されるプログラミングパルスに関連する、装置。
【請求項５】
前記格納回路が、前記データ値を前記メモリセルのうちの前記少なくとも１つから代替の格納場所にコピーし、前記コピーされたデータ値に基づいて前記パラメータを設定するように構成されている、請求項４に記載の装置。
【請求項６】
前記格納回路が、前記反復プログラミング処理における連続したパルス間のパルス振幅若しくはパルス幅の増分、前記反復プログラミング処理における初期のパルスの振幅若しくは幅、前記メモリセルの前記群に印加されるワード線プログラミング電圧、前記群内の後続のパルスを受信するように意図された前記メモリセルに印加されるビット線プログラミング電圧、及び前記群内の前記後続のパルスの受信が抑止されるように意図された前記メモリセルに印加されるビット線抑止電圧からなる種類の一群から選択される少なくとも１種類のパラメータを設定するように構成されている、請求項４に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、全体としてはデータ格納に関し、特に、アナログメモリセルをプログラミング及び消去するための方法並びにシステムに関する。
【背景技術】
【０００２】
フラッシュメモリなどの幾つかの種類のメモリデバイスは、データを格納するためにアナログメモリセルのアレイを使用する。各アナログメモリセルは、電荷又は電圧のなどの特定のレベルの所与の物理量を保持し、それによってセル内に格納されたデータを表す。この物理量のレベルは、格納値又はアナログ値とも呼ばれる。例えば、フラッシュメモリでは、各アナログメモリセルは、特定量の電荷を保持する。アナログ値のとり得る範囲は通常幾つかの領域に分割され、各々の領域が１つ以上のデータビット値を表すプログラミング状態に対応する。所望のビットに対応する公称アナログ値を書き込むことによって、アナログメモリセルにデータが書き込まれる。
【０００３】
一般にシングルレベルセル（ＳＬＣ）デバイスと呼ばれる幾つかのメモリデバイスは、各メモリセル内に単一ビットの情報を格納する。即ち、各メモリセルは、２つの起こり得るメモリ状態をとるようにプログラムすることができる。マルチレベルセル（ＭＬＣ）デバイスと呼ばれることの多いより高密度のデバイスは、メモリセル当たり２つ以上のビットを格納し、即ち、２つよりも多い起こり得るメモリ状態をとるようにプログラムすることができる。
【０００４】
フラッシュメモリについては、例えば、この参照により本明細書内に組み込まれる、「Ｉｎｔｒｏｄｕｃｔｉｏｎ  ｔｏ  Ｆｌａｓｈ  Ｍｅｍｏｒｙ」，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ＩＥＥＥ，ｖｏｌｕｍｅ  ９１，ｎｕｍｂｅｒ  ４，Ａｐｒｉｌ，２００３，ｐａｇｅｓ  ４８９〜５０２の中で、Ｂｅｚ等によって説明されている。マルチレベルフラッシュセル及びそのデバイスについては、例えば、この参照により本明細書内に組み込まれる、「Ｍｕｌｔｉｌｅｖｅｌ  Ｆｌａｓｈ  Ｃｅｌｌｓ  ａｎｄ  ｔｈｅｉｒ  Ｔｒａｄｅ−Ｏｆｆｓ」，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  １９９６  ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｅｌｅｃｔｒｏｎ  Ｄｅｖｉｃｅｓ  Ｍｅｅｔｉｎｇ（ＩＥＤＭ），Ｎｅｗ  Ｙｏｒｋ，Ｎｅｗ  Ｙｏｒｋ，ｐａｇｅｓ  １６９〜１７２の中で、Ｅｉｔａｎ等によって説明されている。この論文は、共通グランドセル、ＤＩＮＯＲセル、ＡＮＤセル、ＮＯＲセル、及びＮＡＮＤセルなどの数種類のマルチレベルフラッシュセルを比較している。
【０００５】
Ｅｉｔａｎ等は、この参照により本明細書内に組み込まれる、「Ｃａｎ  ＮＲＯＭ，ａ  ２−ｂｉｔ，Ｔｒａｐｐｉｎｇ  Ｓｔｏｒａｇｅ  ＮＶＭ  Ｃｅｌｌ，Ｇｉｖｅ  ａ  Ｒｅａｌ  Ｃｈａｌｌｅｎｇｅ  ｔｏ  Ｆｌｏａｔｉｎｇ  Ｇａｔｅ  Ｃｅｌｌｓ？」，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  １９９９  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｅｖｉｃｅｓ  ａｎｄ  Ｍａｔｅｒｉａｌｓ（ＳＳＤＭ），Ｔｏｋｙｏ，Ｊａｐａｎ，Ｓｅｐｔｅｍｂｅｒ  ２１〜２４，１９９９，ｐａｇｅｓ  ５２２〜５２４の中で、窒化物読出し専用メモリ（ＮＲＯＭ）と呼ばれる別の種類のアナログメモリセルについて説明している。ＮＲＯＭセルはまた、この参照により本明細書内に組み込まれる、「Ａ  ５１２  Ｍｂ  ＮＲＯＭ  Ｆｌａｓｈ  Ｄａｔａ  Ｓｔｏｒａｇｅ  Ｍｅｍｏｒｙ  ｗｉｔｈ  ８  ＭＢ／ｓ  Ｄａｔａ  Ｒａｔｅ」，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ２００２  ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｏｌｉｄ−Ｓｔａｔｅ  Ｃｉｒｃｕｉｔｓ  Ｃｏｎｆｅｒｅｎｃｅ（ＩＳＳＣＣ  ２００２），Ｓａｎ  Ｆｒａｎｃｉｓｃｏ，Ｃａｌｉｆｏｒｎｉａ，Ｆｅｂｒｕａｒｙ  ３〜７，２００２，ｐａｇｅｓ  １００〜１０１の中で、Ｍａａｙａｎ等によっても説明されている。その他の例示的な種類のアナログメモリセルとしては、フローティングゲート（ＦＧ）セル、強誘電体ＲＡＭ（ＦＲＡＭ）セル、磁気ＲＡＭ（ＭＲＡＭ）セル、チャージトラップ型フラッシュ（ＣＴＦ）セル及び相転移ＲＡＭ（ＰＲＡＭ、また相転移メモリ（ＰＣＭ）とも呼ぶ）セルがある。ＦＲＡＭ、ＭＲＡＭ、及びＰＲＡＭセルについては、例えば、この参照により本明細書内に組み込まれる、「Ｆｕｔｕｒｅ  Ｍｅｍｏｒｙ  Ｔｅｃｈｎｏｌｏｇｙ  ｉｎｃｌｕｄｉｎｇ  Ｅｍｅｒｇｉｎｇ  Ｎｅｗ  Ｍｅｍｏｒｉｅｓ」，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ２４th  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｍｉｃｒｏｅｌｅｃｔｒｏｎｉｃｓ（ＭＩＥＬ），Ｎｉｓ，Ｓｅｒｂｉａ  ａｎｄ  Ｍｏｎｔｅｎｅｇｒｏ，Ｍａｙ  １６〜１９，２００４，ｖｏｌｕｍｅ  １，ｐａｇｅｓ  ３７７〜３８４の中で、Ｋｉｍ及びＫｏｈによって説明されている。
【０００６】
当該技術分野においては、アナログメモリセルをプログラムし消去する様々な既知の方法がある。幾つかのメモリデバイスは、メモリセルの一群にパルス列を印加し、その間にプログラムされた値を検証する、プログラミング及び検証（Ｐ＆Ｖ）の反復処理を使用する。
【発明の概要】
【０００７】
本明細書内で説明する本発明のある実施形態は、データ格納の方法を提供する。この方法は、一群のアナログメモリセルにパルス列を印加する反復処理を実行することにより、群内のメモリセルをそれぞれのアナログ値に設定するステップを含む。反復処理中に、反復処理の進捗が評価され、この評価された進捗に応じて反復処理のパラメータが修正される。修正されたパラメータに従って、反復処理が継続される。
【０００８】
幾つかの実施形態において、反復処理を実行するステップは、群内のメモリセルをデータでプログラムするステップを含む。他の実施形態では、反復処理を実行するステップは、メモリセル群を消去するステップを含む。
【０００９】
ある実施形態において、進捗を評価するステップは、群内のメモリセルのうち、パルスの結果としてそれぞれの意図されたアナログ値に達したセルの数が所定数を超えていることを評価するステップを含む。パラメータを修正するステップは、パルス列内の連続したパルス間のパルス振幅又はパルス幅の増分を修正するステップを含むことができる。別の実施形態では、進捗を評価するステップは、群内のメモリセルに印加されるパルスの数が所定の数を超えていることを評価するステップを含む。
【００１０】
開示のある実施形態において、パラメータを修正するステップは、パルス列内の連続したパルス間のパルス振幅若しくはパルス幅の増分、パルス列内の初期のパルスの振幅若しくは幅、メモリセル群に印加されるワード線プログラミング電圧、別のメモリセル群に印加されるワード線非選択電圧、群内の後続のパルスを受信するように意図されたメモリセルに印加されるビット線プログラミング電圧、及び／又は群内の後続のパルスの受信が抑止されるように意図されたメモリセルに印加されるビット線抑止電圧を修正するステップを含む。
【００１１】
パラメータを修正するステップは、群内の後続のパルスを受信するように意図されたメモリセルに印加されるビット線プログラミング電圧に依存して、メモリセル群に印加されるワード線プログラミング電圧、別のメモリセル群に印加されるワード線非選択電圧、又は群内の後続のパルスの受信が抑止されるように意図されたメモリセルに印加されるビット線抑止電圧を修正するステップを含むことができる。
【００１２】
本発明のある実施形態によれば、メモリ及び格納回路を含むデータ格納装置が更に提供される。メモリは、複数のアナログメモリセルを含んでいる。格納回路は、一群のアナログメモリセルにパルス列を印加する反復処理を実行することにより群内のメモリセルをそれぞれのアナログ値に設定し、反復処理の進捗を評価し、評価された進捗に応じて反復処理のパラメータを修正し、修正されたパラメータに従って反復処理の実行を続行するように構成されている。
【００１３】
本発明のある実施形態によれば、複数のアナログメモリセルを含むメモリ内にデータを格納する方法もまた提供される。この方法は、メモリ内のメモリセルのうちの少なくとも１つの中に格納された１つ以上のデータ値に基づいて、一群のメモリセルに適用される反復処理のパラメータを設定するステップを含む。設定されたパラメータに従ってメモリセル群内で、反復処理が実行される。
【００１４】
ある実施形態において、反復処理を実行するステップは、群内のメモリセルをデータでプログラムするステップを含む。別の実施形態では、反復処理を実行するステップは、メモリセル群を消去するステップを含む。ある実施形態において、パラメータを設定するステップは、メモリセルのうちの少なくとも１つから代替の格納場所にデータ値をコピーするステップ、及びコピーされたデータ値に基づいてパラメータを設定するステップを含む。
【００１５】
別の実施形態において、パラメータを設定するステップは、反復処理における連続したパルス間のパルス振幅若しくはパルス幅の増分、反復処理における初期のパルスの振幅若しくは幅、メモリセル群に印加されるワード線プログラミング電圧、別のメモリセル群に印加されるワード線非選択電圧、群内の後続のパルスを受信するように意図されたメモリセルに印加されるビット線プログラミング電圧、及び／又は群内の後続のパルスの受信が抑止されるように意図されたメモリセルに印加されるビット線抑止電圧を設定するステップを含む。
【００１６】
本発明のある実施形態によれば、メモリ及び格納回路を含むデータ格納装置が更に提供される。メモリは、複数のアナログメモリセルを含んでいる。格納回路は、メモリ内のメモリセルのうちの少なくとも１つの中に格納された１つ以上のデータ値に基づいて一群のメモリセルに適用される反復処理のパラメータを設定し、設定されたパラメータに従ってメモリセル群内で反復処理を実行するように構成されている。
【００１７】
本発明のある実施形態によれば、複数のアナログメモリセルを含むメモリ内にデータを格納する方法が更に提供される。この方法は、プログラミング動作を実行することにより、メモリセルのうちの１つ以上をデータでプログラムするステップを含む。プログラムされたメモリセルに対して実行されるプログラミング動作の性能指標が評価される。プログラミング動作を実行した後に、プログラミング動作の性能指標に基づいて消去動作が構成され、構成された消去動作を実行することによってメモリのメモリセルの一群が消去される。
【００１８】
幾つかの実施形態において、性能指標を評価するステップは、プログラミング動作の継続時間を測定するステップを含む。ある実施形態において、消去動作を構成するステップは、消去動作における連続した消去パルス間のパルス振幅若しくはパルス幅の増分、消去動作における初期のパルスの振幅若しくは幅、消去動作中に印加されるワード線電圧、及び／又は消去動作中に印加されるビット線電圧を設定するステップを含む。
【００１９】
ある実施形態において、性能指標を推定するステップは、プログラムされたメモリセルに適用されるプログラミング及び消去のサイクル数を判定するステップを含み、消去動作を構成するステップは、判定されたプログラミング及び消去のサイクル数に基づいて消去動作を構成するステップを含む。
【００２０】
本発明のある実施形態によれば、メモリ及び格納回路を含むデータ格納のための装置もまた提供される。メモリは、複数のアナログメモリセルを含んでいる。格納回路は、プログラミング動作を実行することによりメモリセルのうちの１つ以上をデータでプログラムし、プログラムされたメモリセルに対して実行されるプログラミング動作の性能指標を評価し、プログラミング動作を実行後にプログラミング動作の性能指標に基づいて消去動作を構成し、構成された消去動作を実行することによりメモリのメモリセルの一群を消去するように構成されている。
【００２１】
本発明のある実施形態によれば、複数のアナログメモリセルを含むメモリ内にデータを格納する方法が更に提供される。この方法は、一群のメモリセルをそれぞれのアナログ値に設定する動作をこのメモリセル群に適用するステップを含む。メモリセル群に適用される動作の性能指標が評価される。評価された動作の性能指標に基づいて、メモリ内のこの群を含むメモリブロックの健康状態が評価される。
【００２２】
動作を適用するステップは、群内のメモリセルをデータでプログラムするステップを含むことができる。あるいは、動作を適用するステップは、メモリセル群を消去するステップを含むことができる。ある実施形態において、性能指標を評価するステップは、動作の継続時間を測定するステップを含む。別の実施形態では、健康状態を評価するステップは、性能指標が所定の範囲から外れているときに、メモリブロックを不良としてマーキングするステップを含む。更に別の実施形態では、健康状態を評価するステップは、性能指標が所定の範囲から外れているときに、メモリブロックを追加評価の対象としてマーキングするステップを含む。更に別の実施形態では、健康状態を評価するステップは、性能指標に依存して後続のメモリブロック内へのデータの格納のための格納構成を設定するステップを含む。
【００２３】
本発明のある実施形態によれば、メモリ及び格納回路を含むデータ格納装置が更に提供される。メモリは、複数のアナログメモリセルを含んでいる。格納回路は、一群のメモリセルにそれぞれのアナログ値に設定する動作を一群のメモリセルに適用し、メモリセル群に適用される動作の性能指標を評価し、評価された動作の性能指標に基づいてメモリ内のこの群を含むメモリブロックの健康状態を評価するように構成されている。
【００２４】
本発明は、下記の図面と併せて以下の本発明の実施形態の詳細な説明からより完全に理解できるであろう。
【図面の簡単な説明】
【００２５】
【図１】本発明のある実施形態に係るメモリシステムを模式的に例示したブロック図である。
【図２】本発明のある実施形態に係るアナログメモリセルのアレイを模式的に例示した回路図である。
【図３Ａ】本発明のある実施形態に係る、一群のアナログメモリセルをプログラムする処理を模式的に例示した図である。
【図３Ｂ】本発明のある実施形態に係る、一群のアナログメモリセルを消去する処理を模式的に例示した図である。
【図４】本発明のある実施形態に係る、一群のアナログメモリセルをプログラム又は消去する方法を模式的に例示したフローチャートである。
【図５】本発明のある実施形態に係る、一群のアナログメモリセルをプログラムする方法を模式的に例示したフローチャートである。
【図６】本発明のある実施形態に係る、一群のアナログメモリセルを消去する方法を模式的に例示したフローチャートである。
【図７】本発明のある実施形態に係る、一群のアナログメモリセルの健康レベルを評価する方法を模式的に例示したフローチャートである。
【発明を実施するための形態】
【００２６】
概要
フラッシュメモリなどのメモリデバイスでは、通常、アナログメモリセルを格納されたビット値を表すそれぞれのアナログ値にプログラムすることにより、メモリセル内にデータが格納される。各ビット値は、アナログ値の特定の領域によって表されるそれぞれのプログラミングレベル又はプログラミング状態に対応する。
【００２７】
メモリデバイスによっては、一群のアナログメモリセルが、プログラミングパルス列を群内のメモリセルに印加するプログラミング及び検証（Ｐ＆Ｖ）の反復処理においてプログラムされる。メモリセルのアナログ値は、各アナログ値を、プログラムされるメモリセルの意図されたプログラミング状態に対応するそれぞれの検証閾値と比較することにより、パルス列の間に検証される。プログラミングは、アナログ値が未だにそれぞれの検証閾値未満であるメモリセルについてのみ継続される。その他のメモリセルは正しくプログラムされたと想定され、後続のプログラミングパルスの受信が抑止される。フラッシュメモリセルのブロックは、通常、ブロック内のメモリセルに消去パルス列を印加する反復消去処理を用いて消去される。メモリセルのアナログ値は、これらを消去閾値と比較することによってパルス列の間に検証される。
【００２８】
後述の本発明の実施形態は、フラッシュセルのなどのアナログメモリセルをプログラムし消去する、改善された方法及びシステムを提供する。開示の技術は、従来のプログラミング及び消去方式と比較して、より短いプログラミング時間及び消去時間、並びにより高いプログラミング及び消去の信頼性を実現する。
【００２９】
幾つかの実施形態において、格納回路（例えば、メモリセル又はメモリコントローラに連結した読出し／書込み回路）は、プログラミング又は消去の反復処理の進捗を評価し、評価された進捗に基づいて反復処理の１つ以上のパラメータを修正する。進捗は、例えば、意図されたアナログ値に達したメモリセルのパーセンテージに関して、又はメモリセルに印加されたプログラミングパルス若しくは消去パルスの数に関して評価することができる。
【００３０】
進捗に基づいて、例えば連続したプログラミングパルス間若しくは連続した消去パルス間のパルス振幅若しくはパルス幅の増分、初期のパルスの振幅、又はプログラミング処理若しくは消去処理の間に印加される種々のワード線電圧若しくはビット線電圧などの種々のプログラミング又は消去のパラメータを修正することができる。
【００３１】
代替の実施形態において、格納回路は、メモリセルのうちの１つ以上の中に格納されているデータに基づいて、プログラミング処理又は消去処理の１つ以上のパラメータを設定する。他の実施形態において、格納回路は、プログラミング動作の性能に基づいて、消去動作の１つ以上のパラメータを構成する。例えば、格納回路は特定のメモリブロック内のページに関する平均プログラミング時間を測定し、測定されたプログラミング時間に依存してそのブロックの消去動作を構成することができる。
【００３２】
更に他の実施形態において、格納回路は、ブロック内で実行されるプログラミング動作又は消去動作の性能指標に基づいて（例えば、プログラミング時間又は消去時間に基づいて）、メモリブロックの健康状態を評価する。
システムの説明
【００３３】
図１は、本発明のある実施形態に係るメモリシステム２０を模式的に例示したブロック図である。システム２０は、コンピューティング装置、セルラー電話機若しくはその他の通信端末、取外し可能メモリモジュール（「ＵＳＢフラッシュドライブ」と呼ぶこともある）、ソリッドステートディスク（ＳＳＤ）、デジタルカメラ、音楽プレーヤ若しくはその他のメディアプレーヤ、及び／又はデータが格納され取り出されるその他任意のシステム若しくは装置などの、様々なホストシステム及び装置内で使用することができる。
【００３４】
システム２０はメモリデバイス２４を備えており、メモリデバイスはメモリセルアレイ２８内にデータを格納するメモリアレイは、複数のメモリブロック３４を備えている。各メモリブロック３４は、複数のアナログメモリセル３２を備えている。本特許出願の文脈及び請求項において、「アナログメモリセル」という言葉は、電圧又は電荷などの物理的パラメータの連続的なアナログ値を保持する任意のメモリセルについて説明するために使用される。アレイ２８は、例えば、ＮＡＮＤ、ＮＯＲ、及びチャージトラップ型フラッシュ（ＣＴＦ）のセル、相転移ＲＡＭ（ＰＲＡＭ、相転移メモリ（ＰＣＭ）とも呼ばれる）、窒化物読出し専用メモリ（ＮＲＯＭ）、強誘電体ＲＡＭ（ＦＲＡＭ）、磁気ＲＡＭ（ＭＲＡＭ）、及び／又はダイナミックＲＡＭ（ＤＲＡＭ）のセルなどの、任意の種類のアナログメモリセルを備えることができる。
【００３５】
本明細書内では、セル内に格納された電荷レベル、及び／又はセルに書き込まれて読み出されるアナログ電圧若しくは電流を、総じてアナログ値、アナログ格納値、又は格納値と呼ぶ。格納値は、例えば、閾値電圧又はその他任意の好適な種類の格納値を含むことができる。システム２０は、それぞれのプログラミング状態（プログラミングレベルとも呼ばれる）をとるようにセルをプログラムすることによってアナログメモリセル内にデータを格納する。プログラミング状態は起こり得る状態の有限集合から選択され、各プログラミング状態は一定の公称格納値に対応している。例えば、３ビット／セルＭＬＣは、８個の起こり得る公称格納値のうちの１つをセル内に書き込むことによって８個の起こり得るプログラミング状態のうちの１つをとるようにプログラムすることができる。
【００３６】
メモリデバイス２４は読出し／書込み（Ｒ／Ｗ）ユニット３６を備えており、このユニットが、メモリデバイス内に格納されるデータをアナログ格納値に変換しそれらをメモリセル３２内に書き込む、代替の実施形態では、Ｒ／Ｗユニットは変換を実行せず、電圧サンプル、即ち、セル内に格納する格納値を供給される。アレイ２８からデータを読み出すときには、Ｒ／Ｗユニット３６はメモリセル３２の格納値を１ビット以上の分解能を有するデジタルサンプルに変換する。通常、データは、ページと呼ばれる群で、メモリセルに書き込まれ、メモリセルから読み出される。幾つかの実施形態において、Ｒ／Ｗユニットは、１つ以上の負の消去パルスをセルに印加することにより、一群のセル３２を消去することができる。通常、消去は、メモリブロック全体で実行される。
【００３７】
データのメモリデバイス２４内への格納及び同デバイスからの取り出しは、メモリコントローラ４０によって実行される。メモリコントローラは、メモリデバイス２４と通信するインターフェース４４、及び様々なメモリ管理機能を実行するプロセッサ４８を備えている。メモリコントローラ４０は、メモリデバイス内に格納するデータを受け取り、メモリデバイスから取り出したデータを出力するためにホスト５２と通信する。メモリコントローラ４０、中でも特にプロセッサ４８は、ハードウェアで実装することができる。あるいは、メモリコントローラは、好適なソフトウェアを実行するマイクロプロセッサ、又はハードウェア要素及びソフトウェア要素の組み合わせを含むことができる。
【００３８】
図１の構成は、単に概念の明瞭性を目的として示した例示的なシステムの構成である。その他任意の好適なメモリシステムの構成を使用することもできる。種々のインターフェース、アドレス指定回路、タイミング及びシーケンス回路、並びにデバッギング回路などの、本発明の原理を理解する上で必要ではない要素は、明瞭性のために図から省略されている。
【００３９】
図１の例は単一のメモリデバイス２４を示しているものの、システム２０はメモリコントローラ４０によって制御される複数のメモリデバイスを備えることができる。図１に示す例示的なシステム構成において、メモリデバイス２４及びメモリコントローラ４０は２つの別個の集積回路（ＩＣ）として実施されている。しかしながら、代替の実施形態では、メモリデバイス及びメモリコントローラは単一のマルチチップパッケージ（ＭＣＰ）内の別個の半導体ダイ、又はシステムオンチップ（ＳｏＣ）上に統合することができ、内部バスによって相互接続することができる。更に代替として、メモリコントローラ回路の一部又は全部がメモリアレイが配置されているのと同一のダイ上に存在することもできる。更に代替として、メモリコントローラ４０の機能性の一部又は全部をソフトウェアで実装し、これをホストシステムのプロセッサ又はその他の要素によって実行することもできる。幾つかの実施形態において、ホスト５２及びメモリコントローラ４０は、同一のダイ上、又は同一のデバイスのパッケージ内の別個のダイ上に製造することができる。
【００４０】
幾つかの実施形態において、メモリコントローラ４０は、本明細書内で説明する機能を実行するようにソフトウェアでプログラムされた汎用プロセッサを備えている。ソフトウェアは、例えばネットワーク経由で電子的な形態でプロセッサにダウンロードすることができ、又は別の方法によって、あるいは追加的に、磁気メモリ、光学的メモリ、若しくは電子メモリなどの永続的な有形的媒体によって提供でき、かつ／又は格納することができる。
【００４１】
アレイ２８の構成例において、メモリセル３２は複数の行及び列に配列されており、各メモリセルはフローティングゲートトランジスタを備えている。各行内のトランジスタのゲートはワード線によって接続されており、各列内のトランジスタのソースはビット線によって接続されている。メモリアレイは、通常、複数のページ（即ち、同時にプログラムされ、同時に読み出されるメモリセル群）に分割されている。ページは、セクタに細分化されていることもある。幾つかの実施形態において、各ページは、アレイの一行全体を含む。代替の実施形態では、各行（ワード線）を２ページ以上に分割することができる。例えば、デバイスによっては、各行は２ページに分割されており、一方は奇数次のセルを含み、他方は偶数次のセルを含む。
【００４２】
一般的には、メモリコントローラ４０はページ単位でデータをプログラムするが、メモリブロック３４全体を消去する。必ずしもその限りではないが、一般的には、メモリブロックは１０6個程度のメモリセルである一方、ページは１０3〜１０4個程度のメモリセルである。
【００４３】
アレイ２８のメモリセル３２をプログラムし消去する技術の幾つかの例を以下に説明する。開示の技術は、メモリコントローラ４０及び／又はＲ／Ｗユニット３６によって実行することができる。明瞭性を目的として、以下の説明は、メモリデバイス内のＲ／Ｗユニット３６によって実行されるプログラミング処理及び消去処理について言及する。しかしながら、全般的には、開示のプログラミング技術および消去技術を構成する種々のタスクは、メモリコントローラとＲ／Ｗ回路との間で任意の好適な方法で分割することができ、又はこれら要素のうちの任意の一方によって実行することができる。したがって、本特許出願の文脈及び請求項においては、メモリコントローラ４０及びＲ／Ｗ回路３６を併せて開示の技術を実行する格納回路として参照する。
【００４４】
図２は、本発明のある実施形態に係る、アレイ２８を実装するために使用できるアナログメモリセルのアレイを模式的に例示した回路図である。この実施形態では、アレイは、ワード線６４及びビット線６８によって接続された複数のフラッシュメモリセル（図中ではフローティングゲートトランジスタとして図示）を備えている。
【００４５】
幾つかの実施形態において、Ｒ／Ｗユニット３６は、プログラミング及び検証（Ｐ＆Ｖ）の反復処理を用いて、所与のワード線６４の一群のメモリセル（例えばワード線の全てのメモリセル、奇数次のセル、又は偶数次のセル）をデータでプログラムする。このような処理では、ユニット３６は、このセルの一群にプログラミングパルス列を印加し、各パルス後に群内のセルの閾値電圧を検証する。ユニット３６は、意図された閾値電圧に達したセルのその後のプログラミングを抑止する。そのことによって、後続のパルスがまだ意図された閾値電圧に達していないセルにのみ選択的に印加されるようにする。
【００４６】
Ｐ＆Ｖ処理中、ユニット３６が種々のワード線６４及びビット線６８を好適な電圧でバイアスする。図２の例は３本のワード線６４を示しており、そのうちの真ん中のワード線がプログラムされている最中である。この例は、メモリセル７２がプログラムされる（まだその意図された閾値電圧に達していないので）Ｐ＆Ｖ処理中の具体例を示している。同時に、同一のワード線のメモリセル８０は既にその意図された閾値電圧に達しているので、プログラミングが抑止されなければならない。メモリセル８０のなどのその他のワード線のメモリセルは、プログラムされてはならない。
【００４７】
適切なメモリセルをプログラムするために、Ｒ／Ｗユニット３６は真ん中のワード線をＶｐｇｍと表示されたプログラミング電圧でバイアスし、ブロック内のその他のワード線をＶｐａｓｓ＿ｐｇｍと表示されたパス電圧でバイアスする。ユニット３６は、プログラムされるべきビット線をＶｂｉｔｌｉｎｅ＿ｐｇｍと表示されたビット線プログラミング電圧でバイアスし、プログラミングが抑止されるべきビット線をＶｂｉｔｌｉｎｅ＿ｉｎｈｉｂｉｔと表示されたビット線抑止電圧でバイアスする。
【００４８】
図３Ａは、本発明のある実施形態に係る、一群のアナログメモリセル２８をプログラムする処理を模式的に例示した図である。この例は、データでプログラムされる２ビット／セルのメモリセルの一群（例えば、ワード線の全てのメモリセル、奇数次のセル、又は偶数次のセル）を示している。各セルは、４つの閾値電圧分布８４Ａ〜８４Ｄに対応する４つの起こり得るプログラミングレベル（プログラミング状態ともいう）のうちの１つにプログラム可能である。各プログラミングレベルは、それぞれの２ビットデータ値に対応している。負の閾値電圧に対応するプログラミングレベル８４Ａはまた、消去されたレベルとしての役割も果たす。群内の全てのメモリセルは、プログラミングが開始される前に消去されたレベルに設定される。
【００４９】
幾つかの実施形態において、Ｒ／Ｗユニット３６は、上述のＰ＆Ｖの反復処理を用いて群内のメモリセルをプログラムする。所与のプログラミングパルスの後にセルの閾値電圧を検証するとき、ユニット３６はセルの閾値電圧を１つ以上の検証閾値と比較する。この例では、ユニット３６は、それぞれプログラミングレベル８４Ｂ〜８４Ｄに対応する３つの検証閾値８８Ａ〜８８Ｃを用いる。特定のプログラミングレベルにプログラムされるように意図された特定のメモリセルの閾値電圧がそのプログラミングレベルの検証閾値を超えると、メモリセルは後続のプログラミングパルスの受信を抑止される。抑止は、通常、セルのビット線電圧をＶｂｉｔｌｉｎｅ＿ｐｇｍからＶｂｉｔｌｉｎｅ＿ｉｎｈｉｂｉｔに切り替えることによって実行される。
【００５０】
（明瞭性を目的として、この例は、４つのプログラミングレベルを同時にプログラムするプログラミング処理を示している。幾つかの実施形態において、ユニット３６は、２段階のフェーズで２ページを有するメモリセル群をプログラムする。即ち、１つのフェーズが２つのプログラミングレベルを用いて第１のページをプログラムし、第２のフェーズが４つのプログラミングレベルの全てを用いて第２のページをプログラムする。）
【００５１】
図３Ｂは、本発明のある実施形態に係る、一群のアナログメモリセル２８を消去する処理を模式的に例示した図である。消去処理は、通常、ブロック３４全体に同時に適用される。消去処理では、ユニット３６はメモリセルに消去パルスのシーケンスを印加し、これらを消去閾値９２と比較することによってセルの閾値電圧を検証する。消去処理は、ブロック内の全てのメモリセル（又は実施形態によっては、所定の管理されたセル数）が閾値９２よりも低い閾値電圧を有するまで継続される。
【００５２】
図３Ａ及び図３Ｂの実施形態は、２ビット／セルのメモリセルのプログラミング及び消去について言及している。しかしながら、開示の技術は、任意の望ましい数及び配列のプログラミングレベルを有するその他任意の好適な種類のメモリセルに適用することができる。
プログラミング／消去進捗に基づくプログラミング／消去の反復処理パラメータの適応的修正
【００５３】
幾つかの実施形態において、一群のアナログメモリセルをプログラムし又は消去するとき、Ｒ／Ｗユニット３６は、プログラミング又は消去の反復処理の進捗を評価する。進捗が特定の切替え条件を満たすとき、ユニット３６は処理のパラメータのうちの１つ以上を修正する。
【００５４】
ユニット３６は様々な方法で進捗を評価することができ、即ち、様々な種類の切替え条件を定義し評価することができる。例えば、ユニット３６は、群内のメモリセルの所定のパーセンテージが意図された閾値電圧に達したか（例えば、プログラミング動作に対して適正な検証閾値を超えたか、又は消去動作に対して消去閾値を下回ったか）をチェックすることができる。消去動作では、ユニット３６は、最初の消去パルス又は２つの消去パルス後に十分に消去されたセルの数を評価することができる。代替の実施形態では、ユニット３６は、反復処理の２つ以上の異なる検証段階のセルの数を足し合わせることができる。
【００５５】
この種の条件を使用するとき、Ｒ／Ｗユニット３６は、データがスクランブルされている、又は言い換えるとプログラミングレベル間で均等に分布していると想定することができる。代替の実施形態では、Ｒ／Ｗ回路は、プログラミング動作を開始する前に各プログラミングレベルにあるセルの数を判定でき、又はその他任意の好適な方法でこの情報を得ることができる。
【００５６】
切替え条件の別の例としては、反復処理を所定回数実行した後、即ち、所定数のプログラミングパルス又は消去パルスを印加後にプログラミングパラメータ又は消去パラメータを修正するやり方がある。更に代替としては、Ｒ／Ｗユニットは、プログラミング又は消去に関連したあるパラメータの絶対値を判定することにより、切替え条件を評価することができる。
【００５７】
様々な実施形態において、切替え条件が満たされたときに、Ｒ／Ｗユニットは、プログラミング又は消去の反復処理の任意の好適なパラメータを修正することができる。例えば、パラメータは、パルス列内の連続したプログラミング／消去パルス間のパルス振幅若しくはパルス幅の増分（インクリメンタルステップパルスプログラミング（ＩＳＰＰ）と呼ぶこともある）、及び／又はパルス列の初期のパルスの振幅若しくは幅を含むことができる。
【００５８】
追加的に、又は代替として、プログラミング動作において、修正されたパラメータは、選択されていないワード線に印加されているパス電圧（Ｖｐａｓｓ＿ｐｇｍ）、選択されたワード線に印加されているワード線電圧（Ｖｐｇｍ）、プログラムされているセルに印加されているビット線電圧（Ｖｂｉｔｌｉｎｅ＿ｐｇｍ）、抑止されているセルに印加されているビット線電圧（Ｖｂｉｔｌｉｎｅ＿ｉｎｈｉｂｉｔ）、及び／又はその他任意の好適なパラメータ含むことができる。更に追加的に、又は代替として、消去動作において、修正されるパラメータは、例えば消去されるブロック内で印加されるワード線電圧及び／又はビット線電圧を含むことができる。
【００５９】
ある例示的実施形態において、ユニット３６は、群内の意図されたプログラミングレベルに達したメモリセルの数を評価する。そのパーセンテージが所定の値を超えると、ユニット３６が連続したパルス間のパルス振幅の増分を変更する。
【００６０】
別の例示的な実施形態において、ユニット３６は、高い消去バルス電圧で消去処理を開始する。消去に成功したメモリセルのパーセンテージが特定の所定値に達すると、ユニット３６が後続のパルスの消去パスル電圧を低減させる。
【００６１】
別の実施形態では、Ｒ／Ｗユニット３６が、バイアス電圧（例えばＶｂｉｔｌｉｎｅ＿ｐｇｍ、Ｖｂｉｔｌｉｎｅ＿ｉｎｈｉｂｉｔ、Ｖｐａｓｓ＿ｐｇｍ）のうちの１つ以上をＶｐｇｍの関数として修正する。この種のプログラミングは、ユニット３６がワード線電圧及び／又はビット線電圧を最適化し、メモリセルを効率的にプログラムすることを可能とする。
【００６２】
電圧の最適化は、例えば、（隣接するワード線及び／又は隣接するビット線上の）隣接するメモリセルからのプログラム干渉を最小限に抑えるように実行することができる。幾つかの実施形態において、最適化はＶｐｇｍの絶対値の関数として実行される。
【００６３】
図４は、本発明のある実施形態に係る、一群のアナログメモリセル３２をプログラム又は消去する方法を模式的に例示したフローチャートである。この方法は、初期化ステップ９６において、Ｒ／Ｗユニット３６がメモリセルの一群内でプログラミング又は消去の反復処理を開始することにより始まる。
【００６４】
プログラミング又は消去の処理中のある時点で、進捗評価ステップ１００においてユニット３６が処理の進捗を評価する。完了チェックステップ１０４において、ユニット３６が処理が完了したか否かをチェックする。ユニット３６は、例えば、全てのセルが意図された閾値電圧に達したか否かをチェックすることができる。処理が完了していれば、この方法は終了ステップ１０８で終了する。
【００６５】
あるいは、切替え条件評価ステップ１１２において、ユニット３６が（上記ステップ１００で評価された進捗に基づいて）所定の切替え条件が満たされているか否かをチェックする。反復処理の進捗が切替え条件を満たしていれば、パラメータ修正ステップ１１６において、ユニット３６が、反復処理のパラメータのうちの１つ以上を修正する。次に、この方法は上記ステップ１００にループバックし、そこでユニット３６が反復処理の進捗を引き続き監視する。
データに基づくプログラミング処理パラメータの適応設定
【００６６】
幾つかの実施形態において、Ｒ／Ｗユニット３６は、メモリセルのうちの１つ以上の中に現在格納されているデータに基づいて、プログラミング又は消去の反復処理の１つ以上のパラメータを設定する。上記に挙げたパラメータ（例えば、ＩＳＰＰ、パルス列内の初期のパルスの振幅若しくは幅、及び／又は任意のワード線電圧若しくはビット線電圧）などの任意の好適なプログラミング又は消去の処理パラメータを、この方法で設定することができる。
【００６７】
例えば一群のメモリセル（例えばあるページ）をプログラムするとき、ユニット３６は、プログラムされた群と同一のワード線に格納されているデータに基づいて、及び／又は１つ以上のその他の（例えば隣接した）ワード線に格納されているデータに基づいて、プログラミングパラメータを設定することができる。例えば、ユニット３６は、プログラムされた群のワード線の下又は上の隣接するワード線の対応するセル内のデータ（又は閾値電圧）に基づいて、Ｖｂｉｔｌｉｎｅ＿ｐｇｍを設定することができる。幾つかの実施形態において、ユニット３６は、先ず、プログラミングパラメータを設定するために使用されるデータを読み出し、プログラミングの前にこれを代替の場所に格納することができる。
【００６８】
別の例として、ブロックを消去する際、ユニット３６はブロック内に格納されているデータに基づいて、消去処理の１つ以上のパラメータを設定することができる。例えば、ユニット３６は、消去処理のパラメータを、消去以前にブロック内にプログラムされているワード線の数の関数として設定することができる。ある例示的な実施形態において、ユニット３６はブロック内の全てのワード線がプログラムされている場合はある消去電圧（Ｖｅｒａｓｅ）を設定し、ワード線のうちの一部のみがプログラムされている場合は別の消去電圧を設定する。幾つかの実施形態において、メモリコントローラ４０によって、プログラムされているワード線の数に関する示徴がユニット３６に供給される。他の実施形態において、ユニット３６は、メモリコントローラに依存せずにプログラムされているワード線の数を判定する。幾つかの実施形態において、ユニット３６は、ブロック内のプログラムされているワード線の数に基づいて、プログラミング処理の１つ以上のパラメータを変更する。
【００６９】
更に別の例として、ブロックが高い閾値電圧にプログラムされている多くのメモリセルを含んでいる場合、ユニット３６は、消去パルスの初期の振幅を高い値に設定することができ、その逆もまた可能である。
【００７０】
図５は、本発明のある実施形態に係る、一群のアナログメモリセル３２をプログラムする方法を模式的に例示したフローチャートである。図５の説明は、一群のメモリセルのプログラミング処理に言及しているが、消去処理にもまた同様の方法を使用することができる。
【００７１】
この方法は、読出しステップ１２０において、ユニット３６による１つ以上のメモリセルからのデータの読み出しから始まる。読出しメモリセルは、プログラムされるメモリセル群に属してもよく、又は属さなくてもよい。パラメータ設定ステップ１２４において、ステップ１２０で読み出されたデータに基づいて、ユニット３６がプログラミング処理の１つ以上のパラメータを設定する。次に、ユニット３６が、プログラミングステップ１２８において、設定されたパラメータを有するプログラミングの反復処理を使用してメモリセル群内にデータを格納する。
プログラミング処理の性能に基づく消去処理パラメータの設定
【００７２】
幾つかの実施形態において、ユニット３６は、メモリに適用されたプログラム動作の性能に基づいて、一群のメモリセルに適用される消去動作を構成する。必ずしもその限りではないが、一般的に、所与のセル群（例えばブロック）の消去動作は、その群内の１つ以上のメモリセル（例えばブロック内のページ）に適用されたプログラム動作の性能に基づいて構成される。
【００７３】
この技術は、プログラム動作（一般的には正電圧プログラミングパルスの印加）に対するメモリセルの応答性が消去動作（一般的には負電圧プログラミングパルスの印加）に対するメモリセルの応答性を示唆するという事実に基づいている。ユニット３６はプログラミング動作の任意の好適な種類の性能指標を評価し、評価された性能指標に基いて任意の好適な方法で消去動作を構成することができる。
【００７４】
例えば、ユニット３６は、プログラミング動作のプログラミング時間（継続時間）（例えば、動作の開始と完了との間に経過する時間）、又はプログラミング動作において実行されるＰ＆Ｖ反復の回数を測定することができる。次に、ユニット３６は、測定されたプログラミング時間に基づいて、消去動作を構成することができる。ある例示的な実施形態において、ユニット３６は、意図されたプログラミングレベルに達したセルの数又はパーセンテージを、反復回数の関数として測定することができる。換言すれば、ユニット３６は、プログラムに成功したセルの数の累積分布関数（ＣＤＦ）を評価することができる。
【００７５】
ユニット３６は、プログラミング動作の性能に基づいて、消去パルスの初期の大きさ若しくは継続時間、連続した消去パルス間の増分、及び／又は消去中に印加される任意のビット線電圧若しくはワード線電圧などの任意の好適な消去パラメータを設定することによって、消去動作を構成することができる。
【００７６】
図６は、本発明のある実施形態に係る、一群のアナログメモリセル３２を消去する方法を模式的に例示したフローチャートである。図６の説明は、同一のメモリセル群のプログラミング及び消去に言及する。しかしながら、一般的に、開示の技術は、別のメモリセル群をプログラムするステップの性能に基づいて特定のメモリセル群を消去するために使用することもできる。２つの群は、共通のメモリセルを有してもよく、又は有さなくてもよい。
【００７７】
この方法は、プログラミングステップ１３２において、ユニット３６が、プログラミング動作（例えばＰ＆Ｖ処理）を実行することにより一群のメモリセルをデータでプログラムすることにより始まる。性能推定ステップ１３６において、ユニット３６が、プログラミング動作の性能指標を推定する。例えば、ユニット３６は、プログラミング時間（プログラミング継続時間）、又はその他任意の好適な性能指標を推定することができる。
【００７８】
消去構成ステップ１４０において、ユニット３６は、推定されたプログラミング動作の性能指標に基づいて、メモリセル群に適用される消去動作を構成する。消去ステップ１４４において、ユニット３６は、構成された消去動作を使用してメモリセル群を消去する。
【００７９】
幾つかの実施形態において、ユニット３６又はメモリコントローラ４０は、ブロックに適用されたプログラミング及び消去（Ｐ／Ｅ）サイクルの回数などの他の性能指標に基づいて、特定のメモリブロックの消去動作を構成することができる。一実施形態において、ユニット３６又はメモリコントローラ４０は、プログラミング後に、ブロックの経過時間（age）に関する何らかの示徴を記録することができ、消去動作を構成するために消去前にこの示徴を取り出すことができる。
プログラミング又は消去の性能に基づく健康レベルの評価
【００８０】
幾つかの実施形態において、ユニット３６は、一群のメモリセルに適用されるプログラミング又は消去の反復処理の性能を測定し、測定された性能に基づいてメモリセルの健康状態を評価する。以下の説明は、プログラミング又は消去の処理の継続時間の測定に言及するものの、開示の技術はその他の好適な性能指標に使用することができる。
【００８１】
ある実施形態において、ユニット３６は、様々なメモリセル群のプログラミング又は消去の時間を測定する。所定の範囲から外れた（例えば、特定の下側閾値よりも下及び／又は特定の上側閾値よりも上の）プログラミング時間又は消去時間は、メモリセルの健康状態が好ましくないことを示している可能性があり、信頼性が低いか、又は近いうちに故障する可能性がある。
【００８２】
幾つかの実施形態において、所与のメモリブロック（又はブロック内のメモリセル群）のプログラミング時間又は消去時間が所定の範囲から外れている場合、メモリコントローラ４０は、そのブロックを不良又は疑わしいとしてマーキングする。不良のブロックは、通常、使用停止される。疑わしいブロックには、通常、不良としてマーキングする前に追加評価が行われる。メモリコントローラは、ブロックの平均プログラミング時間若しくは平均消去時間、ブロックの最大若しくは最小のプログラミング時間若しくは消去時間、又はブロックに関連付けられるプログラミング時間若しくは消去時間のその他任意の好適な指標に基づいて、ブロックを不良又は疑わしいとしてマーキングすることができる。
【００８３】
ある実施形態において、メモリコントローラは、反復回数の関数として意図されたプログラミングレベルに達したセルの数若しくはパーセンテージを、言い換えれば、プログラムに成功したセルの数のＣＤＦを測定し、この評価結果をブロックの健康状態の指標として使用することができる。
【００８４】
幾つかの実施形態において、メモリコントローラは、たとえブロック内のＰ＆Ｖ処理が首尾よく完了したとしても、プログラミング時間の判断基準に基づいて、ブロックを不良としてマーキングする。幾つかの実施形態において、メモリコントローラは、プログラミング時間が所定の範囲から外れているブロックについてのみ、Ｐ＆Ｖに続く検証技術を適用する。この目的に使用できるＰ＆Ｖ後の検証技術の例は、上記に引用した米国特許出願第１３／３５６，６９４号の中で述べられている。
【００８５】
消去動作において、ユニット３６又はメモリコントローラ４０は、評価されたブロックの健康状態に基づいて様々な措置を取ることができる。例えば、Ｒ／Ｗユニット又はメモリコントローラは、評価されたブロックの健康状態に基づいて、ブロック内の後続のプログラミングコマンドの格納構成（例えば、誤り訂正符号及び／又はセル当たりビット数）を設定することができる。
【００８６】
図７は、本発明のある実施形態に係る、一群のアナログメモリセルの健康レベルを評価する方法を模式的に例示したフローチャートである。この方法は、動作ステップ１４８において、Ｒ／Ｗユニット３６又はメモリコントローラ４０がプログラミング動作又は消去動作を一群のメモリセルに適用することから始まる。ユニット３６又はメモリコントローラ４０は、性能推定ステップ１５２において、プログラミング動作又は消去動作の性能指標を推定する。性能指標は、例えば、プログラミング動作又は消去動作の継続時間を含むことができる。ユニット３６又はコントローラ４０は、健康状態評価ステップ１５６において、性能指標に基づいて、メモリセル群の健康状態を評価する。
【００８７】
上述の実施形態は例として挙げられており、本発明は、以上に具体的に図示され説明されたものに限定されないことが理解されるであろう。むしろ、本発明の範囲は、以上に説明した様々な特徴の組み合わせ及び部分的組み合わせの両方、並びに当業者であれば前述の説明を読むことによって想到するであろう従来技術に開示されていないそれらの変型及び修正を含む。この参照により本特許出願に組み込まれる文献は、何らかの用語が、これらの組み込まれた文献の中で本明細書内で明示的又は暗示的になされた定義と対立する方法で定義されている範囲において、本明細書内の定義のみが考慮されるべきである点を除き、本願の必須部分であるとみなされるべきである。
【図１】
0006001093.tif 000002
【図２】
0006001093.tif 000003
【図３Ａ】
0006001093.tif 000004
【図３Ｂ】
0006001093.tif 000005
【図４】
0006001093.tif 000006
【図５】
0006001093.tif 000007
【図６】
0006001093.tif 000008
【図７】
0006001093.tif 000009