(57)【要約】不揮発性メモリ（１０）の消去動作は、消去動作の実行対象となるブロック（１４、１６、または１８）を選択することと、選択されたブロックを消去することと、選択されたブロックに対応する試験データを受け取ることと、試験データに基づいてソフトプログラム検証電圧レベルを決定することと、ソフトプログラム検証電圧レベルを用いて消去済みの選択されたブロックをソフトプログラミングすることとを含む。不揮発性メモリ（１０）は、複数のブロックと、複数のブロックの各々に対応する試験データを記憶する試験ブロック（２０）と、複数のブロックと試験ブロックとに結合され、複数のブロックのうちの特定ブロックがソフトプログラミングされているとき、特定ブロックの試験データに基づいて特定ブロックに対するソフトプログラム検証電圧レベルを決定するフラッシュ制御部（３０）とを含む。【選択図】図１
2010535395.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリの消去動作を実行する方法であって、
消去動作の実行対象となるブロックを選択すること、
前記選択されたブロックを消去すること、
前記選択されたブロックに対応する試験データを受け取ること、
前記試験データに基づいてソフトプログラム検証電圧レベルを決定すること、
前記ソフトプログラム検証電圧レベルを用いて前記消去済みの選択されたブロックをソフトプログラミングすること、
を備える方法。
【請求項２】
前記ソフトプログラム検証電圧レベルを決定することは、複数のソフトプログラム検証電圧レベルから前記ソフトプログラム検証電圧レベルを選択することを含む、請求項１に記載の方法。
【請求項３】
前記ソフトプログラム検証電圧レベルを決定することは、
ソフトプログラム基準電圧を決定すること、
前記ソフトプログラム基準電圧を用いて前記ソフトプログラム検証電圧レベルを有するソフトプログラム検証電圧を発生すること、
を含む、請求項１に記載の方法。
【請求項４】
前記消去済みの選択されたブロックをソフトプログラミングすることは、
前記消去済みの選択されたブロックのセルが前記ソフトプログラム検証電圧レベルを満たしていないことを判定すること、
前記セルにソフトプログラム電圧パルスを印加すること、
前記セルが前記ソフトプログラム検証電圧レベルを満たしているかあるいは満たしていないかを判定すること、
を含む、請求項１に記載の方法。
【請求項５】
前記選択されたブロックを消去することは、前記選択されたブロックの各セルが所定の消去検証電圧レベルを満たすまで当該各セルに消去パルスを印加することを含み、前記ソフトプログラム検証電圧レベルは前記消去検証電圧レベル未満である、請求項４に記載の方法。
【請求項６】
前記選択されたブロックを消去することに先立って、所定のプログラム検証電圧レベルを満たしていない前記選択されたブロックの各セルをプログラミングすることをさらに備え、前記消去検証電圧レベルは前記プログラム検証電圧レベル未満である、請求項５に記載の方法。
【請求項７】
前記試験データは、前記選択されたブロックに対するプログラム／消去サイクルカウントを含み、前記ソフトプログラム検証電圧レベルは前記プログラム／消去サイクルカウントに少なくとも部分的に基づいて決定される、請求項１に記載の方法。
【請求項８】
前記選択されたブロックに対する前記プログラム／消去サイクルカウントを更新すること、
前記更新されたプログラム／消去サイクルカウントを記憶すること、
をさらに備える請求項７に記載の方法。
【請求項９】
前記試験データは、前記選択されたブロックに対するブロックサイズをさらに含み、前記ソフトプログラム検証電圧レベルは前記プログラム／消去サイクルカウントおよび前記ブロックサイズに少なくとも部分的に基づいて決定される、請求項７に記載の方法。
【請求項１０】
前記試験データは、前記選択されたブロックで実行されることが予想されるプログラム／消去サイクル数を示し、前記ソフトプログラム検証電圧レベルは、前記選択されたブロックで実行されることが予想される前記プログラム／消去サイクル数に少なくとも部分的に基づいて決定される、請求項１に記載の方法。
【請求項１１】
不揮発性メモリの消去動作を実行する方法であって、
消去動作の実行対象となるブロックを選択すること、
前記選択されたブロックを消去すること、
前記選択されたブロックに対応するプログラム／消去サイクルカウントを受け取ること、
前記プログラム／消去サイクルカウントに少なくとも部分的に基づいてソフトプログラム検証電圧レベルを決定すること、
前記ソフトプログラム検証電圧レベルを用いて前記消去済みの選択されたブロックをソフトプログラミングすること、
を備える方法。
【請求項１２】
前記プログラム／消去サイクルカウントを増加すること、
前記増加されたプログラム／消去サイクルカウントを記憶すること、
をさらに備える請求項１１に記載の方法。
【請求項１３】
前記選択されたブロックで第２の消去動作を実行することをさらに備え、当該選択されたブロックで第２の消去動作を実行することは、
前記選択されたブロックを消去すること、
前記選択されたブロックに対応する前記増加されたプログラム／消去サイクルカウントを受け取ること、
前記増加されたプログラム／消去サイクルカウントに少なくとも部分的に基づいて、前記ソフトプログラム検証電圧レベルとは異なる第２のソフトプログラム検証電圧レベルを決定すること、
前記第２のソフトプログラム検証電圧レベルを用いて前記消去済みの選択されたブロックをソフトプログラミングすること、
を含む、請求項１２に記載の方法。
【請求項１４】
前記ソフトプログラム検証電圧レベルを決定することは、前記選択されたブロックの前記プログラム／消去サイクルカウントおよびブロックサイズに少なくとも部分的に基づいて前記ソフトプログラム検証電圧レベルを決定することを含む、請求項１１に記載の方法。
【請求項１５】
前記消去済みの選択されたブロックをソフトプログラミングすることは、
前記消去済みの選択されたブロックのセルが前記ソフトプログラム検証電圧レベルを満たしていないことを判定すること、
前記セルにソフトプログラム電圧パルスを印加すること、
前記セルが前記ソフトプログラム検証電圧レベルを満たしているかあるいは満たしていないかを判定すること、
を含む、請求項１１に記載の方法。
【請求項１６】
前記選択されたブロックを消去することは、
前記選択されたブロックの各セルが所定の消去検証電圧レベルを満たすまで当該各セルに消去パルスを印加することを含み、前記ソフトプログラム検証電圧レベルは前記消去検証電圧レベル未満である、請求項１５に記載の方法。
【請求項１７】
不揮発性メモリであって、
複数のブロックと、
前記複数のブロックの各々に対応する試験データを記憶する試験ブロックと、
前記複数のブロックと前記試験ブロックとに結合され、前記複数のブロックのうちの特定のブロックがソフトプログラムされているとき、前記特定のブロックの前記試験データに基づいて前記特定のブロックに対するソフトプログラム検証電圧レベルを決定するフラッシュ制御部と、
を備える不揮発性メモリ。
【請求項１８】
前記記憶された試験データは、前記複数のブロックの各々に対するプログラム／消去サイクルカウントを記憶する、請求項１７に記載の不揮発性メモリ。
【請求項１９】
前記記憶された試験データは、前記複数のブロックの各々で実行されるプログラム／消去サイクルの予想される回数を示す、請求項１７に記載の不揮発性メモリ。
【請求項２０】
前記複数のブロックに結合され、前記特定のブロックがソフトプログラミングされているとき、前記決定されたソフトプログラム検証電圧レベルを有するソフトプログラム検証電圧を前記特定のブロックに供給するチャージポンプをさらに備える請求項１７に記載の不揮発性メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概してメモリに関し、具体的には、動的に調整可能なソフトプログラム検証電圧レベルを有する不揮発性メモリに関する。
【背景技術】
【０００２】
フラッシュメモリセルは、フローティングゲートに電荷を蓄える一種の不揮発性メモリ（ＮＶＭ）セルである。フローティングゲート表面の電荷の量はセルの閾値電圧（Ｖｔ）、すなわちセルにより記憶される論理状態を決定する。セルがプログラムまたは消去されるたびに、電子がフローティングゲートにあるいはフローティングゲートから移動する。フローティングゲートは、電荷が永久に蓄えられるように電気的に隔絶されている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、形状の縮小につれ、プログラムおよび消去のサイクリングの増加に伴ってフラッシュビットセルのｇｍ（ｇｍ＝ΔＩｄｓ／ΔＶｇｓ）の低下がより顕著になり、部品の耐用期間を通じて列リークをより適切に管理する必要性が生じる。このｇｍ低下に対処するために、消去されたセルのＶｔ分布の制限を厳しくすべくソフトプログラムが導入されている。しかし、このソフトプログラミングは、フラッシュメモリの消去時間を増加させてシステム性能の低下をもたらす。
【図面の簡単な説明】
【０００４】
【図１】本発明の実施形態に従うフラッシュメモリを示すブロック図。
【図２】本発明の実施形態に従う図１のフラッシュメモリの試験ブロックの一部を示すブロック図。
【図３】本発明の実施形態に従う図１のフラッシュメモリの試験ブロックの一部を示すブロック図。
【図４】本発明の実施形態に従う図１のフラッシュメモリの消去動作を実行する方法を示すフローチャート。
【図５】本発明の実施形態に従う図１のフラッシュメモリの動作中の様々なＶｔ分布を示すグラフ。
【発明を実施するための形態】
【０００５】
以下、本発明の一例を説明するが、添付図は本発明を限定するものではない。添付図では同様の参照符号は類似の要素を示している。図の要素は、簡単かつ明確にするために示されているものであって、必ずしも一定の縮尺で描かれていない。
【０００６】
前述の通り、フラッシュメモリの形状が縮小するにつれて、プログラムおよび消去のサイクリングの増加に伴ってｇｍの低下がより顕著になり、消去時間の増加をもたらす。さらに、このｇｍの低下は、典型的に少ないサイクル数を必要とするコード記憶に用いられるフラッシュメモリに比べて、典型的に多いサイクル数を必要とするデータ記憶アプリケーションに用いられるフラッシュメモリにとってより厄介な問題である。たとえば、データ記憶アプリケーションでは、フラッシュメモリの耐用期間中に１００，０００回ものサイクルの実行が必要とされる場合があるのに対し、コード記憶では、フラッシュメモリの耐用期間を通じて１０００サイクルしか必要とされない場合がある。したがって、より少ないサイクル数しか必要としない場合のフラッシュメモリに比べてより多いサイクル数を必要とする場合のフラッシュメモリのビットセルの場合は、ソフトプログラミング中により制限の厳しいＶｔ分布を実現する必要がある。本発明の一実施形態では、実行されるサイクル数に応じて、動的に調整可能なソフトプログラム検証電圧レベルを導入する。すなわち、調整可能なソフトプログラム検証電圧レベルを用いることによって、消去セルのＶｔ分布に厳しい制限が必要でなくなるため、少ないサイクル数しか必要としないフラッシュメモリブロックの消去時間を、より低いソフトプログラム検証電圧レベルを用いることによって改善することができる。一方、多いサイクル数を必要とするフラッシュメモリブロックでは、より多いサイクル数に起因する過大な列リークを十分に除去するために、消去セルのより厳しいＶｔ分布を保証するより高いソフトプログラム検証電圧レベルを用いることができる。
【０００７】
本明細書で用いられる用語「バス」は、データ、アドレス、制御、またはステータスなど、１つまたは複数の様々な情報を転送するために用い得る複数の信号または導体を指して使用されている。本明細書で説明する導体は、単一導体、複数の導体、一方向性導体、または双方向性導体であることに関して図示または説明されうる。ただし、実施形態によって、導体の実装が変わる場合がある。たとえば、双方向性導体よりもむしろ独立した一方向性導体が用いられる場合もあり、逆も同様である。また、複数の導体が多数の信号を直列に、あるいは時分割して転送する単一導体で置き換えられてもよい。同様に、多数の信号を伝達する単一導体は、これらの信号の一部を伝達する数多くの導体に分割されてもよい。したがって、信号の転送に関しては多くの選択肢が存在する。
【０００８】
図１は、本発明の実施形態に従うフラッシュメモリ１０をブロック図形式で示す。図１では、明確かつ簡単にするために、本発明の実施形態の説明に役立つ回路のみが示されている。フラッシュメモリ１０は、フラッシュメモリセルのアレイ１２、フラッシュ制御部３０、レジスタ４２および４４、レジスタデコードロジック５０、メモリデコードおよびセンスロジックおよび書込みバッファ５２、チャージポンプ５４、および基準電圧発生器３６を含む。フラッシュメモリセルのアレイ１２は、メモリブロック１４、１６、１８、および試験ブロック２０を含む。フラッシュ制御部３０は、互いに結合されたソフトプログラム検証電圧計算器３２と閾値記憶回路３１とを含む。基準電圧発生器３６は、ソフトプログラム基準電圧３８を含む。
【０００９】
ブロック１４、１６、１８、２０の各々は、複数のフラッシュメモリセルを含む。フラッシュメモリセルは、ワードラインおよびビットラインを有するマトリクス状に配置される。メモリセルは、ワードラインとビットラインの交点に接続されており、ワードラインに接続された制御ゲートと、ビットラインに接続されたドレイン端子と、ブロック内にあるすべての他のメモリセルソース端子に接続されたソース端子とを含む。メモリセルは電荷蓄積領域を有する。電荷蓄積領域は、電気的に隔絶されており、一部の実施形態においてフローティングゲートとして知られる。電荷蓄積領域は、ポリシリコンから作られてもよく、たとえば、ナノ結晶または窒化物など、他の電荷蓄積材料を含んでもよい。図示された実施形態において、メモリ１０は、たとえば、マイクロプロセッサコアなど、他の回路部品とともに集積回路に組み込まれる。他の実施形態において、メモリ１０は、「スタンドアロン」メモリ集積回路として実装されてもよい。
【００１０】
メモリ１０は、「アドレス」と表示された複数のアドレス信号を受け取る複数の入力端子を有する。これらのアドレス信号は、たとえば、行アドレス信号、列アドレス信号、およびブロック選択信号を含む。メモリデコードおよびセンスロジックおよび書込みバッファ５２は、メモリ１０の読取り動作中およびプログラム動作中に行アドレス信号および列アドレス信号を受け取る複数の入力端子を有する。メモリデコードおよびセンスロジックおよび書込みバッファ５２はまた、消去動作中に行アドレス信号および列アドレス信号を受け取るフラッシュ制御部３０に結合される。一般に、メモリデコードおよびセンスロジックおよび書込みバッファ５２は、センスアンプや、行デコーダおよび列デコーダや、フラッシュアレイのブロック１２に書き込まれるデータを保持する書込みバッファなどの入出力回路を含む。「データ」と表示されたデータ信号は、メモリデコードおよびセンスロジックおよび書込みバッファ５２、フラッシュ制御部３０、ならびにレジスタデコードロジック５０の各々から、あるいはこれら各々に送られる。プロセッサ（図示せず）が、データ信号「データ」を提供しかつ／または受け取るように結合される、あるいはアドレス信号「アドレス」を提供するように結合される。プロセッサは、メモリ１０と同じ集積回路に実装されてもよく、あるいは独立した集積回路に実装されてもよい。
【００１１】
メモリブロック１４、１６、および１８は、行アドレス情報および列アドレス情報を受け取ることに応答してデータを送出および受取るメモリデコードおよびセンスロジックおよび書込みバッファ５２と双方向結合されている。図示された実施形態において、フラッシュメモリ１０の読取り動作およびプログラム動作は、従来型のものであり、詳しく説明しない。なお、簡単かつ明確にするために、メモリ１０の読取りおよびプログラミングに必要な回路のすべてが図１に示されているわけではないことに留意されたい。読取り動作またはプログラム動作のための通常のアクセス中に、メモリブロック１４、１６、および１８は、ブロック１４、１６、および１８のうちの１つまたは複数のブロック内のメモリセルを選択するためのアドレス情報を受け取る。データは、読取り動作中には選択されたメモリセルによって提供され、書込み動作中には選択されたメモリセルによって受け取られる。
【００１２】
一実施形態において、動作対象となるフラッシュアレイ１２の記憶場所はアレイアドレスによって選択され、ここでは、ブロック選択レジスタ４４がアドレス信号「アドレス」に基づいて現在のブロックをフラッシュ制御部３０に示す。レジスタデコードロジック５０は、アドレス信号「アドレス」およびデータ信号「データ」を受け取り、ブロック選択レジスタ４４およびモード制御レジスタ４２に記憶される適切な情報を提供する。モード制御レジスタ４２は、フラッシュメモリ１０の現在のモードを基準電圧発生器３６およびフラッシュ制御部３０に示し、ここで、現在のモードは、たとえば、プログラム、消去、ソフトプログラムなどを示す。
【００１３】
消去動作はフラッシュ制御部３０内の回路によって制御される。フラッシュ制御部３０は、ブロック１４、１６、および１８、ならびに試験ブロック２０にアレイアドレスを提供する出力と、チャージポンプ制御信号をチャージポンプ５４に提供する出力と、ソフトプログラム検証電圧制御信号を提供する出力とを有する。図１の実施形態において、フラッシュ制御部３０は、ソフトプログラム検証電圧制御信号を出力するソフトプログラム検証電圧計算器３２を含む。また、フラッシュ制御部３０は、ソフトプログラム検証電圧制御信号を提供するためにソフトプログラム検証電圧計算器３２で用いられる１つまたは複数の所定の閾値を記憶する閾値記憶回路３１を含む。プログラム動作、消去動作、またはプログラムおよび消去動作の両方の電圧（パルス電圧および検証電圧を含む）を発生するために、チャージポンプ５４が用いられる。ポンプ制御信号は、いずれのチャージポンプ５４がイネーブルされているかを示すもので、ここでは、フラッシュ制御部３０が、たとえば、モード制御レジスタ４２によって示されるモードに基づいてポンプ制御信号を提供してもよい。また、チャージポンプ５４が発生する電圧は、基準電圧発生器３６によって提供される基準電圧に基づいて発生される。基準電圧発生器３６は、複数のソフトプログラム基準電圧３８を含んでおり、ソフトプログラム中に、これらのソフトプログラム基準電圧３８のうちの１つがソフトプログラム検証電圧制御信号によって選択されてチャージポンプ５４への基準電圧として提供されるようになっている。同様に、モード制御レジスタ４２によって示される他の動作中に、基準電圧発生器３６は、チャージポンプ５４への提供に適した基準電圧を発生する。
【００１４】
試験ブロック２０は、ユーザがアクセス不能であることを除いて、メモリブロック１４、１６、および１８と基本的に同様に機能する。試験データは試験ブロック２０からフラッシュ制御部３０に提供され、更新データはフラッシュ制御部３０から試験ブロック２０に提供される。試験ブロック２０は、試験情報、ロット番号、識別番号、冗長性マッピング、トリムオプション、およびメモリ１０のメーカーにとって有用なその他の情報を記憶するために用いられてもよい。さらに、ブロック２０は他の情報を記憶する場所を含んでいてもよく、その例が図２および３に示されている。
【００１５】
図２は、一実施形態に従う試験ブロック２０の一部を示すもので、ここでは、試験ブロック２０はフラッシュアレイ１２の各ブロックの試験情報を記憶するいくつかの記憶場所６０〜６２を含む。したがって、図１に示すように、Ｎ＋１個のブロックがある場合、図２に示す試験ブロック２０の一部はＮ＋１の場所を含んでいてもよい。図２の各場所は、ブロックサイズ、プログラム／消去（Ｐ／Ｅ）カウント、およびフラッシュアレイ１２の対応するブロックに対する基準乗数を示す。たとえば、場所６０に記憶されるブロックサイズ、Ｐ／Ｅサイクルカウント、および基準乗数はすべてフラッシュアレイ１２のブロック１４に対応していてもよく、場所６１に記憶されるブロックサイズ、Ｐ／Ｅサイクルカウント、および基準乗数はすべてフラッシュアレイ１２のブロック１６に対応していてもよい。
【００１６】
図３は、別の実施形態に従う試験ブロック２０の一部を示しているものであり、ここで、試験ブロック２０はフラッシュアレイ１２の各ブロックの試験情報を記憶するいくつもの記憶場所６６〜６８を含む。したがって、図１に示すようにＮ＋１個のブロックがある場合、図３に示される試験ブロック２０の一部はＮ＋１の場所を含んでいてもよい。図２の各場所は、フラッシュアレイ１２の対応するブロックに関するブロックＰ／Ｅサイクル仕様を示す。従って、一実施形態において、ブロックＰ／Ｅサイクル仕様は、いくつもの予想サイクル、または予想サイクルのレベルを示していてもよい。たとえば、一実施形態において、Ｐ／Ｅサイクル仕様は、多いＰ／Ｅサイクル数が予想される（データを記憶するブロックの場合など）、あるいは少ないＰ／Ｅサイクル数が予想される（コードを記憶する場合など）などを示し得る。
【００１７】
図４は、フラッシュメモリ１０で実行される消去動作の例を示す。処理７０はブロック７２で始まり、ここでは、消去動作の実行対象となるブロックがアレイ１２から選択される。この選択されたブロックの識別は、たとえば図１のブロック選択レジスタ４４に記憶されうる。この後、処理はブロック７４に進み、ここで、選択されたブロックは、所定のプログラム検証電圧レベルに満たない（fail）各セルをプログラミングすることによってプログラムされる。たとえば、選択されたブロックの各セルは、適切なアレイアドレスを発生することによってフラッシュ制御部３０によってアクセスされる。プログラム検証電圧レベルに満たない各セルは、比較的短い持続時間のプログラムパルスを用いて段階的に徐々にプログラムされうる。これらのプログラムパルスの電圧は、チャージポンプ５４によってパルス電圧として提供されてもよい。一実施形態において、モード制御レジスタ４２は、アドレス信号「アドレス」およびデータ信号「データ」としてプログラムされ、プログラムが実行されていることを示す。このように、基準電圧発生器３６は、モード制御レジスタ４２内のこの情報を用いて、プログラムパルス電圧が発生さるようにチャージポンプ５４に基準電圧の適切な値を提供する。各プログラムパルスの印加後、Ｖｔが十分に増加しているかどうかを確認するために検証ステップを利用してチェックしてもよい。検証ステップのプログラム検証電圧は、アレイ１２への検証電圧としてチャージポンプ５４によって提供されてもよく、ここで、パルス電圧に関しては、検証ステップで適切なプログラム検証電圧が提供されるように基準電圧発生器３６がチャージポンプ５４に適切な基準電圧を提供する。プログラムステップおよび検証ステップは、選択されたブロック内のセルのすべてがプログラム検証電圧レベルを満たす（pass）まで（すなわち、いずれのセルも検証ステップに対して消去応答を示さなくなるまで）繰り返される。
【００１８】
図５は、プログラミング後（分布９０）、消去後（分布９２）、およびソフトプログラミング後（分布９４）のブロック内のフラッシュセルのＶｔ分布を示す。したがって、分布９０を参照すると、選択されたブロック内のセルの各々は、選択されたブロック内のセルのすべてがプログラム検証電圧レベルを満たすまで（たとえば、プログラム検証電圧レベルよりも高くなるまで）プログラムされる。分布９０におけるセルのいずれもプログラム検証レベルの左側に位置する場合、これらはプログラムされているものとしてではなくプログラムされていないものとして読み取られる場合がある。図示された実施形態において、プログラムされたセルが記憶された論理レベル０を表しており、消去されたセルが記憶された論理レベル１を表している。ただし、代替的に、プログラムされたセルが記憶された論理レベル１を表していてもよく、消去されたセルが記憶された論理レベル０を表していてもよい。
【００１９】
再び図４を参照すると、各セルをプログラミングすることによって選択されたブロックをプログラミングした後、処理はブロック７６に進み、ここで、すべてのセルが所定の消去確認電圧レベルを満たすまで消去パルスを印加することによって、選択されたブロックが消去される。消去検証電圧レベルに満たない各セルは比較的短い持続時間の消去パルスを用いて段階的に徐々に消去されうる。これらの消去パルスの電圧は、チャージポンプ５４によってパルス電圧として提供されてもよい。一実施形態において、モード制御レジスタ４２は、アドレス信号「アドレス」およびデータ信号「データ」としてプログラムされ、消去が実行されていることを示す。このようにして、基準電圧発生器３６は、モード制御レジスタ４２内のこの情報を用いて、消去パルス電圧が発生さるようにチャージポンプ５４に基準電圧の適切な値を提供する。各消去パルスの印加後、Ｖｔが十分に減少しているかどうかを確認するために、検証ステップを利用してチェックしてもよい。検証ステップの消去検証電圧は、アレイ１２への検証電圧としてチャージポンプ５４によって提供されてもよく、ここで、パルス電圧に関しては、検証ステップで適切な消去検証電圧が提供されるように基準電圧発生器３６がチャージポンプ５４に適切な基準電圧を提供する。消去ステップおよび検証ステップは、いずれのセルも検証ステップに対して非消去応答を示さなくなるまで繰り返される。
【００２０】
したがって、図５の分布９２を参照すると、選択されたブロック内のセルの各々は、選択されたブロック内のセルのすべてが消去検証電圧レベルを満たすまで（たとえば、消去検証電圧レベルよりも低くなるまで）消去される。分布９２におけるセルのいずれも消去検証電圧レベルの右側に位置する場合、これらは消去されているものとしてではなく消去されていないものとして読み取られる場合がある。したがって、この時点では、セルのすべてが消去されている。しかし、過大な列リークを除去するために、消去されたＶｔ分布はソフトプログラムを実行することによって圧縮される。セルのソフトプログラムは、必要に応じて、セルのプログラムよりも低いゲート電圧でプログラムされる。一例において、セルは、一方の電流電極を０Ｖに、他方の電流電極を５Ｖに、制御電極を９Ｖに設定することによってプログラムされ、ここで、セルは、一方の電流電極を０Ｖに、他方の電流電極を５Ｖに、制御電極を３Ｖに設定することによってソフトプログラムされる。このように、図５の分布９４など、得られる分布は分布９２よりも圧縮されており（かつ、Ｖｔ＝０Ｖから遠く離れている）、ここで、選択されたブロックをソフトプログラミングした後、ブロック内のすべてのセルは、ソフトプログラム検証電圧レベルよりも大きいが消去検証電圧レベルよりも依然として小さいＶｔを有する。（ソフトプログラミングは、ブロック７８、８０、８２、および８４を参照して以下でさらに詳しく説明する。）したがって、図示された実施形態において、消去検証電圧はプログラム検証電圧よりも小さく、ソフトプログラム検証電圧は消去検証電圧よりも小さく、ここで、通常の読取り検証電圧は消去検証電圧とプログラム検証電圧の間に位置する。
【００２１】
特定のブロックに対して実現する必要のあるＶｔ分布の制限の厳しさは、たとえば、この特定ブロックの耐用期間を通じて実行されるプログラム／消去（Ｐ／Ｅ）サイクル数、ブロックサイズなどの要因に依存する。たとえば、数多くのサイクルが実行される可能性がある場合、より制限の厳しいＶｔ分布が必要とされることがあり、この場合、この制限のより厳しいＶｔ分布を実現するためにより高いソフトプログラム検証電圧レベルが用いられうる。しかし、数少ないサイクル数が実行される可能性がある場合、制限のより緩やかなＶｔ分布が受け入れられる場合がある。この場合、より低いソフトプログラム検証レベルで十分な場合がある。より低いソフトプログラム検証レベルが用いられる場合があるこれらのブロックでは、ソフトプログラムを実行するのに必要なパルスはより少なくて済む。このように、可能であれば、低いソフトプログラム検証電圧レベルを用いることによって、総合的な消去性能を向上することができる。
【００２２】
したがって、図４のフローチャートを再び参照すると、ブロック７６で選択されたブロックを消去した後、処理はブロック７８に進み、ここで、試験データは、選択されたブロックに対応する所定の試験ブロック位置から取り込まれる。この試験データは、フラッシュ制御部３０によって、たとえば、試験ブロック２０から試験信号「試験データ」で受け取られうる。代替的には、この試験データは、フラッシュ制御部３０によって、メモリデコードおよびセンスロジックおよび書込みバッファ５２ならびにデータ信号「データ」で受け取られうる。試験データは、たとえば、ブロックサイズ、Ｐ／Ｅサイクルカウント、基準乗数、ブロックＰ／Ｅサイクル仕様などの１つまたは複数を含んでいてもよい。図２の例において、試験ブロック２０は、アレイ１２の各試験ブロックに対応する１つの記憶場所（場所６０〜６１の各々など）を含む。図２の例において、各記憶場所は、アレイ１２の対応するブロックのブロックサイズ、Ｐ／Ｅサイクルカウント、および基準乗数を記憶する。図３の例において、各記憶場所は、アレイ１２の対応するブロックのブロックＰ／Ｅサイクル仕様を記憶する。別の実施形態は、図２および３の例より多いまたは少ない情報や異なる情報を含んでいてもよい。
【００２３】
ブロック７８の後、処理はブロック８０に進み、ここで、選択されたブロックに対応する試験データが用いられて、ブロック８２で選択されたブロックに対して実行されるソフトプログラミングのソフトプログラム検証電圧レベルが決定される。一実施形態において、ソフトプログラム検証電圧レベルは、センスアンプ（たとえば、図１のメモリデコードおよびセンスロジックおよび書込みバッファ５２に位置する）が消去されたビットとプログラムされたビットを正確に識別するように、すべての列のリーク電流（すなわち、Ｖｇｓ＝０Ｖにおける電流）が一定値以下であるように設定される。したがって、一実施形態において、ソフトプログラム検証電圧計算器３２は、試験データを用いてソフトプログラム検証電圧制御信号としてソフトプログラム基準電圧３８の１つを選択する。この後、選択されたソフトプログラム基準電圧は、チャージポンプ５４がアレイ１２の選択されたブロックに対応する適切なソフトプログラム検証電圧を提供しうるようにチャージポンプ５４に基準電圧として提供される。したがって、一実施形態において、ソフトプログラム基準電圧３８は、２種類以上の対応するソフトプログラム検証電圧を発生するために用いることができる２種類以上の異なるソフトプログラム基準電圧を記憶する。このように、たとえば、適切なソフトプログラム基準電圧を選択することによって、ソフトプログラム検証電圧計算器３２は、用いられるソフトプログラム検証電圧レベルを決定する。あるいは、ソフトプログラム検証電圧計算器３２または基準電圧発生器３６は、所望のソフトプログラム検証電圧レベルに対応するソフトプログラム基準電圧レベルを直接的に計算するか、または別の方法で決定することができる。さらに他の実施形態において、ソフトプログラム検証電圧計算器３２は、他の方法を用いて、試験データに基づいてソフトプログラム検証電圧レベルを選択または決定してもよい。したがって、消去動作が実行される各選択されたブロックには、たとえば、ソフトプログラム検証電圧計算器３２によって決定されるようなカスタマイズされたソフトプログラム検証電圧レベルを用いることができる。たとえば、Ｖｔ分布のような制限の厳しさを必要としないアレイ１２内のブロックには、より低いソフトプログラム検証電圧レベルを用いることができる。
【００２４】
図２の実施形態では、ソフトプログラム検証電圧計算器３２は、ソフトプログラム検証電圧レベルを決定するために選択されたブロックに対してＰ／Ｅサイクルカウントを用い、ここで、Ｐ／Ｅサイクルカウントは選択されたブロックで既に実行済みのＰ／Ｅサイクル数を示す。たとえば、特定のＰ／Ｅサイクル数が既に実行されている場合（すなわち、Ｐ／Ｅサイクルカウントが閾値記憶回路３１に記憶されている可能性のある第１の所定の閾値を超える場合）、より高いソフトプログラム検証電圧レベルが用いられてもよい。しかし、Ｐ／Ｅサイクルカウントが依然として第１の所定の閾値に達していない場合、より低いソフトプログラム検証電圧レベルが依然として用いられうる。このように、ソフトプログラム検証電圧計算器３２は、動作中にソフトプログラム検証電圧レベルを動的に調整することができる。すなわち、Ｐ／Ｅサイクルカウント（または、Ｐ／Ｅサイクルカウントの関数）が第１の閾値に達しているかどうかに基づいて異なるソフトプログラム基準電圧を選択することによって、異なるソフトプログラム検証電圧がチャージポンプ５４によって発生されうる。
【００２５】
さらに、全列リークはブロックの列に沿ったあらゆるビットからのすべての電流の和であるため、ブロックサイズも全列リークに影響を与える。ビット数はブロックサイズとともに増加するので、列リークもブロックサイズとともに増加する。したがって、一実施形態において、ソフトプログラム検証電圧レベルを決定する際にＰ／Ｅサイクルカウントに加えてブロックサイズが考慮される。たとえば、より小さいブロックは、より多くのＰ／Ｅサイクル数を処理することができる一方で、さらに、より大きいブロックに比べて十分に制限の厳しいＶｔ分布を維持する。一実施形態において、受け取られるＰ／Ｅサイクルカウントおよびブロックサイズの関数は、ソフトプログラム検証電圧レベルを決定するために、記憶された所定の閾値に対して比較される。代替的な実施形態において、受け取られたＰ／Ｅサイクルカウント、ブロックサイズ、および基準乗数の関数は、ソフトプログラム検証電圧レベルを決定するために、所定の閾値に対して比較するために用いられてもよい。基準乗数は、フラッシュメモリ１０の設計に基づいて特徴付けられ、各ブロックに対して同じであってもよく、ブロックサイズによって異なる値を有していてもよい。たとえば、一実施形態において、ソフトプログラム検証電圧計算器３２は、「Ｐ／Ｅサイクルカウント＊ブロックサイズ＊基準乗数」に等しいソフトプログラム検証値を計算することができ、ここで、ソフトプログラム検証電圧レベルを決定する（さらに、それに応じて、ソフトプログラム検証電圧制御信号を提供する）ためにこのソフトプログラム検証値は１つまたは複数の異なる閾値と比較される。たとえば、１つの所定の閾値が用いられる場合、ソフトプログラム検証値が１つの所定の閾値よりも大きいとき第１のソフトプログラム検証電圧レベルが決定されてもよく、ソフトプログラム検証値が１つの所定の閾値よりも小さいか、これに等しいとき第２のソフトプログラム電圧検証レベルが決定されてもよい。
【００２６】
図３の実施形態では、ソフトプログラム検証電圧計算器３２は、ソフトプログラム電圧検証レベルを決定するために選択されたブロックのブロックＰ／Ｅサイクル仕様を用いる。たとえば、Ｐ／Ｅサイクル仕様は、対応するブロックがその耐用期間にわたって実行される数多くのＰ／Ｅサイクル数を有することが予想されるか、あるいは少ないＰ／Ｅサイクル数を有することが予想されるかを示してもよく、ここで、前者の場合、ソフトプログラム検証電圧計算器３２は後者の場合よりも高いソフトプログラム検証電圧が用いられるべきであると判定する。あるいは、ブロックＰ／Ｅサイクル仕様は、実行されることが予想されるサイクル数の任意数の異なるレベルの１つを示してもよく、各レベル（たとえば、少ない、中程度の、数多いＰ／Ｅサイクル数が耐用期間にわたって実行されることが予想される）は異なるソフトプログラム検証電圧レベルに対応する。したがって、この実施形態において、ソフトプログラム検証電圧計算器３２は、１つまたは複数の所定の閾値を比較してソフトプログラム検証電圧レベルを決定するために、選択されたブロックの受け取られたＰ／Ｅサイクル仕様に基づいてソフトプログラム検証値を計算してもよい。
【００２７】
したがって、ソフトプログラム検証電圧計算器３２は、１つまたは複数の所定の閾値（たとえば、閾値記憶回路３１に記憶された）を用いてもよく、この場合、受け取られた試験データに基づいて、ソフトプログラム検証値は決定されて１つまたは複数の閾値と比較されうる。したがって、これらの１つまたは複数の閾値の各々は、ソフトプログラム検証電圧として提供されうる１つまたは複数の異なるソフトプログラム検証電圧レベルに対応していてもよい。ソフトプログラム検証値は、任意の種類の試験データに基づくことができ、１つまたは複数のパラメータの関数でありえる。たとえば、ソフトプログラム検証値は、選択されたブロックに対するＰ／Ｅサイクルカウントそのものに等しくなりえるものであり、Ｐ／Ｅサイクルカウント、ブロックサイズ、および基準乗数の関数など、２つ以上のパラメータの関数となりえる。別の例として、ソフトプログラム検証値は、特定のブロックのＰ／Ｅサイクル仕様に基づくことができる。
【００２８】
図４のフローチャートを再び参照すると、処理はブロック８０から８２に進み、ここで、選択されたブロックは、決定されたソフトプログラム検証電圧（ブロック８０で事前に決定された）に満たない各セルをソフトプログラミングすることによってソフトプログラムされる。たとえば、選択されたブロックの各セルは、フラッシュ制御部３０によって適切なアレイアドレスを発生することによってアクセスされうる。一実施形態において、ソフトプログラム検証電圧に満たない各セルは、比較的短い持続時間のソフトプログラムパルスを用いて段階的に徐々にソフトプログラムされうる。これらのプログラムパルスの電圧は、チャージポンプ５４によってパルス電圧として提供されてもよい。一実施形態において、モード制御レジスタ４２は、アドレス信号「アドレス」およびデータ信号「データ」としてプログラムされ、プログラムが実行されていることを示す。このように、基準電圧発生器３６は、モード制御レジスタ４２内のこの情報を用いて、ソフトプログラムパルス電圧が発生されるように基準電圧の適切な値をチャージポンプ５４に提供することができる。各ソフトプログラムパルスを印加した後、Ｖｔが十分に増加しているかどうかを判定すべくＶｔをチェックするために検証ステップが用いられる。検証ステップのソフトプログラム検証電圧は、選択されたブロックに対して受け取られた「試験データ」に基づいて、選択されたブロックに対してソフトプログラム検証電圧計算器３２によって決定されるソフトプログラム検証電圧レベルに対応する。ソフトプログラムおよび検証ステップは、選択されたブロック内のセルのすべてがソフトプログラム検証電圧レベルを満たすまで繰り返される。
【００２９】
この後、処理はブロック８４に進み、ここで、選択されたブロックに対応する試験データが更新される。たとえば、図２の実施形態では、選択されたブロックに対応するＰ／Ｅサイクルカウントが更新される。すなわち、Ｐ／Ｅサイクルカウントは、インクリメントされて、選択されたブロックに対して別のＰ／Ｅサイクルが実行されたばかりであることを表す。この後、試験ブロック２０内の所定の試験ブロック位置は、この更新されたＰ／Ｅサイクルカウントを用いてプログラムされる。一実施形態において、このＰ／Ｅサイクルカウントは、フラッシュ制御部３０によって更新され、フラッシュ制御部３０によって更新信号「更新データ」で試験ブロック２０に提供される。あるいは、更新されたＰ／Ｅサイクルカウントは、フラッシュ制御部３０によって、試験ブロック２０にプログラムされるデータ信号「データ」でメモリデコードおよびセンスロジックおよび書込みバッファ５２の書込みバッファに提供されうる。図３の実施形態の場合など、別の実施形態において、対応する試験データの更新は不要であり、したがって、ブロック８４は処理７０に存在しない場合がある。
【００３０】
この後、処理は判定ひし形８６に進み、ここで、アレイ１２にさらに選択すべきブロックがあるかどうかが判定される。選択すべきブロックがない場合は、処理７０は終了する。選択すべきブロックがあれば、消去動作の実行対象となる次のブロックが選択されて処理がブロック７４に戻る。なお、この次のブロックでは、この次のブロックに対応する試験ブロック２０に記憶された試験データに基づいて、ブロック８２のソフトプログラムに対して異なるソフトプログラム電圧検証レベルが用いられてもよい。
【００３１】
なお、プログラミングおよび消去用の検証電圧およびパルス電圧として用いられる実際の値は、当技術分野で周知のように、特定のフラッシュメモリの設計に基づいて選択される。ソフトプログラム検証電圧計算器３２によって用いられる記憶された閾値の値は、ソフトプログラム検証値を決定するために用いられている型関数（type functions）および試験データの種類に依存する可能性があり、したがって、実施形態によって変化する可能性があり、対応するソフトプログラム検証電圧レベルに対して用いられる電圧値は特定のフラッシュメモリの設計に基づいて選択されうる。
【００３２】
したがって、現在では、アレイ１２の各ブロックに対して記憶された試験データが選択されたブロックのソフトプログラミング中に用いられるソフトプログラム検証電圧レベルを動的に調整するためにどのように用いられうるかを理解することができる。すなわち、ソフトプログラム検証電圧レベルは、様々な理由から様々な要因に基づいて調整されうる。たとえば、異なるソフトプログラム検証電圧レベルが、ブロックサイズと、現在までに実行されているＰ／Ｅサイクル数とに少なくとも部分的に基づいて、選択、または決定、または発生されうる。別の例において、異なるソフトプログラム検証電圧レベルが特定のブロックの耐用期間にわたって実行されることが予想されるＰ／Ｅサイクル数（すなわち、その特定のブロックの特定のＰ／Ｅサイクル仕様）に基づいて、選択、または決定、または発生されうる。他の例において、適切なソフトプログラム検証電圧レベルを動的に決定するために他種の情報が用いられうる。したがって、任意数の異なるソフトプログラム検証電圧レベルが、メモリ１０の設計、必要性、および用途に応じて用いられうる。特定のブロックの試験データに基づいて決定される可能性のある調整可能なソフトプログラム検証電圧レベルを用いることにより、アレイ１２のすべてに対する最悪のケースのブロックを包含する単一のソフトプログラム検証電圧レベルをアレイ１２のすべてのブロックに用いる必要がなくなる。このように、アレイ１２内の一部のブロックは、低いソフトプログラム検証電圧レベルを用い、これによって消去動作のソフトプログラム部分の時間を節約することができる場合がある。
【００３３】
一実施形態において、不揮発性メモリの消去動作を実行する方法は、消去動作の実行対象となるブロックを選択すること、選択されたブロックを消去すること、選択されたブロックに対応する試験データを受け取ること、試験データに基づいてソフトプログラム検証電圧レベルを決定すること、ソフトプログラム検証電圧レベルを用いて消去済みの選択されたブロックをソフトプログラミングすることを含む。
【００３４】
さらなる実施形態において、ソフトプログラム検証電圧レベルを決定することは、複数のソフトプログラム検証電圧レベルからソフトプログラム検証電圧レベルを選択することを含む。
【００３５】
別のさらなる実施形態において、ソフトプログラム検証電圧レベルを決定することは、ソフトプログラム基準電圧を決定すること、ソフトプログラム基準電圧を用いて、ソフトプログラム検証電圧レベルを有するソフトプログラム検証電圧を発生することを含む。
【００３６】
別のさらなる実施形態において、消去済みの選択されたブロックをソフトプログラミングすることは、消去済みの選択されたブロックのセルがソフトプログラム検証電圧レベルに満たないことを判定すること、ソフトプログラム電圧パルスを当該セルに印加すること、当該セルがソフトプログラム検証電圧レベルを満たしているかあるいは満たしていないかを判定することを含む。また、さらなる実施形態において、選択されたブロックを消去することは、選択されたブロックの各セルが所定の消去検証電圧レベルを満たすまで当該各セルに消去パルスを印加することを含み、ここでソフトプログラム検証電圧レベルは消去検証電圧レベル未満である。さらに、さらなる実施形態において、方法は、選択されたブロックを消去することに先立って、所定のプログラム検証電圧レベルを満たしていない選択されたブロックの各セルをプログラミングすることを含み、ここで消去検証電圧レベルはプログラム検証電圧レベル未満である。
【００３７】
別のさらなる実施形態において、試験データは、選択されたブロックに対するプログラム／消去サイクルカウントを含み、ソフトプログラム検証電圧レベルはプログラム／消去サイクルカウントに少なくとも部分的に基づいて決定される。また、さらなる実施形態において、方法は、選択されたブロックに対するプログラム／消去サイクルカウントを更新すること、更新されたプログラム／消去サイクルカウントを記憶することをさらに含む。また、別のさらなる実施形態において、試験データは、選択されたブロックに対するブロックサイズをさらに含み、ソフトプログラム検証電圧レベルはプログラム／消去サイクルカウントおよびブロックサイズに少なくとも部分的に基づいて決定される。
【００３８】
別のさらなる実施形態において、試験データは、選択されたブロックで実行されることが予想されるプログラム／消去サイクル数を示し、ソフトプログラム検証電圧レベルは、選択されたブロックで実行されることが予想されるプログラム／消去サイクル数に少なくとも部分的に基づいて決定される。
【００３９】
別の実施形態において、不揮発性メモリの消去動作を実行する方法は、消去動作の実行対象となるブロックを選択すること、選択されたブロックを消去すること、選択されたブロックに対応するプログラム／消去サイクルカウントを受け取ること、プログラム／消去サイクルカウントに少なくとも部分的に基づいてソフトプログラム検証電圧レベルを決定すること、ソフトプログラム検証電圧レベルを用いて、消去済みの選択されたブロックをソフトプログラミングすることを含む。
【００４０】
別の実施形態のさらなる実施形態において、方法は、プログラム／消去サイクルカウントを増加すること、増加されたプログラム／消去サイクルカウントを記憶することをさらに含む。また、さらなる実施形態において、方法は、選択されたブロックで第２の消去動作を実行することを含み、当該選択されたブロックで第２の消去動作を実行することは、選択されたブロックを消去すること、選択されたブロックに対応する増加されたプログラム／消去サイクルカウントを受け取ること、増加されたプログラム／消去サイクルカウントに少なくとも部分的に基づいて、ソフトプログラム検証電圧レベルとは異なる第２のソフトプログラム検証電圧レベルを決定すること、第２のソフトプログラム検証電圧レベルを用いて、消去済みの選択されたブロックをソフトプログラミングすることをさらに含む。
【００４１】
別の実施形態の別のさらなる実施形態において、ソフトプログラム検証電圧レベルを決定することは、選択されたブロックのプログラム／消去サイクルカウントとブロックサイズとに少なくとも部分的に基づいてソフトプログラム検証電圧レベルを決定することを含む。
【００４２】
別の実施形態の別のさらなる実施形態において、消去済みの選択されたブロックをソフトプログラミングすることは、消去済みの選択されたブロックのセルがソフトプログラム検証電圧レベルを満たしていないことを判定すること、ソフトプログラム電圧パルスを当該セルに印加すること、当該セルがソフトプログラム検証電圧レベルを満たしているかあるいは満たしていないかを判定することを含む。また、さらなる実施形態において、選択されたブロックを消去することは、選択されたブロックの各セルが所定の消去検証電圧レベルを満たすまで消去パルスを当該各セルに印加することを含み、ここでソフトプログラム検証電圧レベルは消去検証電圧レベル未満である。
【００４３】
さらに別の実施形態において、不揮発性メモリは、複数のブロックと、複数のブロックの各々に対応する試験データを記憶する試験ブロックと、複数のブロックおよび試験ブロックに結合され、複数のブロックのうちの特定のブロックがソフトプログラムされているとき当該特定のブロックの試験データに基づいて当該特定のブロックに対するソフトプログラム検証電圧レベルを決定するフラッシュ制御部とを含む。
【００４４】
さらに別の実施形態のさらなる実施形態において、記憶される試験データは、複数のブロックの各々に対するプログラム／消去サイクルカウントを記憶する。
さらに別の実施形態の別のさらなる実施形態において、記憶される試験データは、複数のブロックの各々で実行されることが予想されるプログラム／消去サイクル数を示す。
【００４５】
さらに別の実施形態の別のさらなる実施形態において、不揮発性メモリは、複数のブロックに結合され、特定のブロックがソフトプログラムされているとき、決定されたソフトプログラム検証電圧レベルを有するソフトプログラム検証電圧を特定のブロックに供給するチャージポンプをさらに含む。
【００４６】
本発明を実現する装置は大部分が当業者に周知の電子部品および回路から構成されているので、本発明の基本的概念を理解し評価するために、かつ本発明の教示が曖昧化したり本発明の教示から逸れたりしないためにも、先の例示のように回路の詳細については必要とされる範囲を超えては説明されていない。
【００４７】
本発明を特定の導電型すなわち特定の電位の極性に関して説明したが、当業者は導電型および電位の極性を反転してもよいことを理解する。
上記実施形態の一部は、様々なフラッシュメモリ設計を用いて適宜実現されてもよい。たとえば、図１および図１の説明では、例示的なフラッシュメモリアーキテクチャを説明したが、この例示的なアーキテクチャは本発明の種々の形態を説明する上での一例に過ぎない。言うまでもなく、アーキテクチャの記述は、説明を目的として簡略化されたものであって、本発明に従って用いられる可能性のある多くの異なるタイプの適切なアーキテクチャおよび設計の１つにすぎない。論理ブロック間の境界は単なる例示的なものであり、代替的な実施形態では論理ブロックや回路要素を統合してもよく、あるいは機能性を種々の論理ブロックや回路要素に別途分担させてもよいことを当業者は認識し得る。
【００４８】
したがって、本明細書で説明したアーキテクチャは単なる例示的なものであり、実際に同じ機能性を実現する多くの他のアーキテクチャも実施されることが理解される。概念的および限定的な意味で、同じ機能性を実現するための任意の構成部品の配列は、所望の機能性が実現されるように効果的な「関連付け」が行なわれる。それゆえ、特定の機能性を実現するために本明細書において結合される任意の２つの構成部品は、アーキテクチャや中間構成部品に関係なく所望の機能性が実現されるように相互に「関連付けられる」ものと見なされる。また、このように関連付けられた任意の２つの構成部品は、所望の機能性を実現するために相互に「動作可能に接続される」あるいは「動作可能に結合される」ものと見なされる。
【００４９】
また、たとえば一実施形態において、メモリ１０の図示された要素は、たとえば、マイクロプロセッサコアなど、他の回路構成部品とともに集積回路に組み込まれる。他の実施形態において、メモリ１０は、「スタンドアロン」のメモリ集積回路として実装されてもよい。さらに、たとえば、メモリ１０またはその一部は、物理的回路のソフト表現またはコード表現、あるいは物理的回路に変換可能な論理的表現のソフト表現またはコード表現であってもよい。したがって、メモリ１０は、任意の適切なタイプのハードウェア記述言語で具体化されてもよい。
【００５０】
さらに、上記動作の機能性の境界は単なる例示的なものであることを当業者は認識し得る。多数の動作の機能性は単一動作に結合されてもよく、単一動作の機能性は別の動作に分配されてもよく、これらの両方が行なわれてもよい。さらに、代替的な実施形態は、特定動作の多数のインスタンスを含んでいてもよく、動作の順序は様々な他の実施形態において変更されてもよい。
【００５１】
本発明を特定の実施形態に関して本明細書で説明したが、以下の特許請求の範囲に記述された本発明の範囲から逸脱することなく様々な変形および変更が可能である。たとえば、異なる種類の試験データが試験ブロック２０に記憶されてもよく、この記憶された試験データは異なる方法で体系化されてもよい。また、ソフトプログラム検証値は、試験データの別の関数を用いて決定されてもよく、ソフトプログラム検証電圧レベルを決定するために任意数の閾値との比較を行ってもよい。即ち、明細書および図は限定的ではなく例示的であると見なされるべきで、こうしたすべての変形が本発明の範囲内に含まれることが意図されている。特定の実施形態に関連して本明細書で説明されたすべての利益、利点、または問題の解決方法は、特許請求の範囲の一部または全部の特徴ないしは要素、必須な特徴ないしは要素、あるいは本質的な特徴ないしは要素と解釈されるものではない。
【００５２】
本明細書で用いられる用語「結合される」は、直接結合または機械的結合に限定されるものではない。別段の記載がない限り、「第１の」および「第２の」などの用語は、このような用語が説明する要素を適宜区別するために用いられる。したがって、これらの用語は、このような要素の時間的、その他の優先順位付けを示すことを必ずしも目的とするものではない。
【図１】
2010535395.tif 000003
【図２】
2010535395.tif 000004
【図３】
2010535395.tif 000005
【図４】
2010535395.tif 000006
【図５】
2010535395.tif 000007
【国際調査報告】
2010535395.tif 000008
2010535395.tif 000009