(57)【特許請求の範囲】
【請求項１】
消去ベリファイ時に第１制御信号を出力する制御回路と、前記第１制御信号に基づいて、第１消去ベリファイ電位又は前記第１消去ベリファイ電位よりも高い第２消去ベリファイ電位を発生する電位発生回路と、前記第１又は第２消去ベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して消去が完了したか否かを判定するベリファイ回路とを具備し、前記第１及び第２消去ベリファイ電位の差は、過消去セルが存在するか否かの基準となる過消去ベリファイ電位とデータ消去されたメモリセルの閾値分布の下限との差以上に設定されることを特徴とする不揮発性半導体メモリ。
【請求項２】
前記第２消去ベリファイ電位は、データ消去されたメモリセルの閾値分布の下限が過消去セルが存在するか否かの基準となる過消去ベリファイ電位以上となる値に設定されることを特徴とする請求項１記載の不揮発性半導体メモリ。
【請求項３】
書き換えテストにおける消去ベリファイ時に、前記電位発生回路は、前記第２消去ベリファイ電位を発生し、前記ベリファイ回路は、前記第２消去ベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して消去が完了したか否かを判定することを特徴とする請求項１記載の不揮発性半導体メモリ。
【請求項４】
通常動作における消去ベリファイ時に、前記電位発生回路は、前記第１消去ベリファイ電位を発生し、前記ベリファイ回路は、前記第１消去ベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して消去が完了したか否かを判定することを特徴とする請求項３記載の不揮発性半導体メモリ。
【請求項５】
前記制御回路は、第２制御信号を出力し、前記電位発生回路は、前記第２制御信号に基づいて、第１書き込みベリファイ電位又は前記第１書き込みベリファイ電位よりも高い第２書き込みベリファイ電位を発生し、前記第１及び第２書き込みベリファイ電位の差は、前記第１及び第２消去ベリファイ電位の差に等しく設定され、前記ベリファイ回路は、前記第１又は第２書き込みベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して書き込みが完了したか否かを判定することを特徴とする請求項１記載の不揮発性半導体メモリ。
【請求項６】
書き換えテストにおける書き込みベリファイ時に、前記電位発生回路は、前記第２書き込みベリファイ電位を発生し、前記ベリファイ回路は、前記第２書き込みベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して書き込みが完了したか否かを判定することを特徴とする請求項５記載の不揮発性半導体メモリ。
【請求項７】
通常動作における書き込みベリファイ時に、前記電位発生回路は、前記第１書き込みベリファイ電位を発生し、前記ベリファイ回路は、前記第１書き込みベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して書き込みが完了したか否かを判定することを特徴とする請求項６記載の不揮発性半導体メモリ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、不揮発性半導体メモリに関し、特に、ＮＯＲ型フラッシュＥＥＰＲＯＭに使用される。
【０００２】
【従来の技術】
電気的なデ−タの書き換えが可能なフラッシュＥＥＰＲＯＭでは、基本的なモ−ドとして、書き込み、消去、読み出しの３つのモ−ドを持っている。例えば、ＮＯＲ型フラッシュＥＥＰＲＯＭの場合、書き込みモ−ドでは、メモリセルの閾値を所定値（例えば、５．５Ｖ）以上まで上げる動作が行われ、消去モ−ドでは、メモリセルの閾値を所定範囲（例えば、０．５〜３．０Ｖの範囲）内に設定する動作が行われる。
【０００３】
また、自動書き込み機能及び自動消去機能を有するＮＯＲ型フラッシュＥＥＰＲＯＭでは、書き込みモ−ドにおいては、例えば、メモリセルの閾値が５．５Ｖ以上に達したか否かを判定（ベリファイ）し、メモリセルの閾値が５．５Ｖ以上に達するまで自動的に再書き込みを行い、消去モ−ドにおいては、例えば、メモリセルの閾値が０．５〜３．０Ｖの範囲に存在するか否かを判定（ベリファイ）し、メモリセルの閾値が０．５〜３．０Ｖの範囲に存在するようになるまで自動的に所定の動作を行う。
【０００４】
図１５は、従来のＮＯＲ型フラッシュＥＥＰＲＯＭの主要部を示すものである。
【０００５】
メモリセルアレイ１１は、複数のブロックから構成され、各ブロックは、ＮＯＲ型のメモリセルから構成されている。
【０００６】
外部アドレスＡ０，Ａ１，〜Ａ１７は、直接、又は、アドレスレジスタ１２を経由して、マルチプレクサ１３に入力される。アドレスカウンタ１６は、内部アドレスを生成する。マルチプレクサ１３は、外部アドレス及び内部アドレスのいずれか一方をロウデコ−ダ１４及びカラムデコ−ダ１５に与える。
【０００７】
入力デ−タは、入出力バッファ１７を経由して、デ−タ入力レジスタ１８及びコマンドレジスタ１９に与えられる。デ−タ入力レジスタ１８のデ−タは、カラム選択回路２０を経由してメモリセルに供給される。
【０００８】
コマンドレジスタ１９は、アドレス及びデ−タからなるコマンドを認識し、そのコマンドに応じて、アドレスレジスタ１２、マルチプレクサ１３、デ−タ入力レジスタ１８及び制御回路２１に制御信号を出力する。
【０００９】
制御回路２１は、コマンドレジスタ１９から出力される制御信号に基づいて、次に実行すべき動作モ−ドを認識する。
【００１０】
電位発生回路２２は、動作モ−ドに対応した各種の電位を生成する。電位発生回路２２により生成された電位は、各動作モ−ドにおいて、メモリセルの制御ゲ−ト及びビット線に与えられる。
【００１１】
ベリファイ回路２３は、選択されたメモリセルに対するデ−タの書き込み又は消去が確実に行われた否かを判定し、その結果ＶＥＲＩＯＫを制御回路２１に出力する。
【００１２】
最終アドレス検知回路２４は、メモリセルアレイ１１の各ブロックの最終アドレスの検知の有無を示す検知信号ＡＥＮＤを出力すると共に、メモリセルアレイ１１の最終ブロックの検知の有無を示す検知信号ＢＥＮＤを出力する。
【００１３】
タイマ２５は、選択されたメモリセルに対するデ−タの書き込み又は消去が何回実行されたかをカウントする。タイマ２５は、選択されたメモリセルに対するデ−タの書き込み又は消去が所定回数に達したときに、タイムアウト信号ＴＩＭＥ  ＯＵＴを制御回路２１に出力する。
【００１４】
クロック発生回路２６は、ライトイネ−ブル信号／ＷＥ、チップイネ−ブル信号／ＣＥ、アウトプットイネ−ブル信号／ＯＥなどの信号に基づいて、フラッシュＥＥＰＲＯＭの内部動作を制御するクロックを発生する。
【００１５】
図１６は、図１５のＮＯＲ型フラッシュＥＥＰＲＯＭのメモリセルアレイを示している。また、図１７乃至図１９は、図１６の破線Ｘで囲った部分のデバイス構造を示している。
【００１６】
本例では、メモリセルは、ツインウェル、即ち、Ｐ型シリコン基板１１０内のＮ型ウェル１１１内のＰ型ウェル１１２内に形成される。
シリコン基板１１０上には、素子分離絶縁膜として、例えば、フィールド酸化膜１１３が形成される。フィールド酸化膜１１３に取り囲まれた素子領域上には、ゲート絶縁膜として機能するシリコン酸化膜１１４が形成される。シリコン酸化膜１１４上には、フローティングゲート電極１１５が形成され、フローティングゲート電極１１５上には、シリコン酸化膜１１６を介してコントロールゲート電極（ワード線）１１７（ＷＬ）が形成される。
【００１７】
フローティングゲート電極１１５及びコントロールゲート電極１１７の両側のシリコン基板１１０内には、Ｎ型ソース領域１２１及びＮ型ドレイン領域１２２が形成される。ここで、例えば、全てのメモリセルのソース領域（ソース線ＳＬ）１２１は、図１６に示すように、共通に接続されている。
【００１８】
メモリセルＭＣ上には、メモリセルＭＣを完全に覆うシリコン酸化膜１１８が形成される。シリコン酸化膜１１８には、ドレイン領域１２２に達するコンタクトホール１２０が設けられている。シリコン酸化膜１１８上には、ビット線１１９（ＢＬ）が形成される。ビット線１１９は、シリコン酸化膜１１８のコンタクトホール１２０を経由してドレイン領域１２２にコンタクトしている。
【００１９】
次に、上述のＮＯＲ型フラッシュＥＥＰＲＯＭにおいて、書き込みモード、読み出しモード、消去モードの各モード時に、メモリセルに印加される電位について説明する。
【００２０】
まず、書き込みモードにおいては、例えば、選択されたワード線ＷＬにＶｐｐ（例えば、１０Ｖ程度の高電位）を印加し、非選択のワード線ＷＬにＶｓｓ（例えば、０Ｖ）を印加する。また、“０”書き込みを行うメモリセル（選択セル）が接続されるビット線ＢＬには、Ｖｄｐ（例えば、５Ｖ程度の電位）が印加され、“１”書き込み（消去状態を維持する）メモリセル（非選択セル）が接続されるビット線ＢＬには、Ｖｓｓ（例えば、０Ｖ）が印加される。また、ソース線ＳＬは、Ｖｓｓ（例えば、０Ｖ）に設定される。
【００２１】
この時、選択セルでは、コントロールゲート（ワード線）がＶｐｐ、ドレインがＶｄｐ、ソースがＶｓｓとなるため、ソース内の電子は、加速されてドレインに移動する。この電子は、ドレイン近傍のチャネルにおいて高エネルギーの電子（ホットエレクトロン）となり、かつ、コントロールゲートとチャネルの間の電界によりフローティングゲート内に移動する。よって、選択セルでは、その閾値が上昇し、“０”書き込みが行われる。
【００２２】
一方、非選択セルでは、コントロールゲート（ワード線）がＶｐｐ、ドレインとソースが共にＶｓｓとなるため、ドレインとソースの間には電流が流れない。よって、非選択セルでは、その閾値が上昇することはなく、“１”書き込みが行われる（消去状態が維持される）。
【００２３】
次に、読み出しモードにおいては、例えば、選択されたワード線ＷＬにＶｃｃ（例えば、５Ｖ程度の電位）を印加し、非選択のワード線ＷＬにＶｓｓ（例えば、０Ｖ）を印加する。また、データ読み出しを行うメモリセル（選択セル）が接続されるビット線ＢＬは、Ｖｄ（例えば、１Ｖ程度の電位）にプリチャージされた後にフローティングにされる。データ読み出しを行わないメモリセル（非選択セル）が接続されるビット線ＢＬには、Ｖｓｓ（例えば、０Ｖ）が印加される。また、ソース線ＳＬは、Ｖｓｓ（例えば、０Ｖ）に設定される。
【００２４】
ところで、“１”データを記憶するメモリセル（“１”状態のセル）の閾値は、Ｖｃｃよりも低く、“０”データを記憶するメモリセル（“０”状態のセル）の閾値は、Ｖｃｃよりも高くなっている。このため、選択されたワード線ＷＬにＶｃｃが印加されると、“１”状態のセルは、オン状態になり、“０”状態のセルは、オフ状態になる。
【００２５】
よって、“１”状態のセルには電流が流れ、このセルが接続されるビット線ＢＬの電位は、Ｖｓｓに低下する。一方、“０”状態のセルには電流が流れないため、このセルが接続されるビット線ＢＬは、Ｖｄを維持する。データ読み出しは、このビット線ＢＬの電位変化をセンスアンプにより検出することにより実行される。
【００２６】
次に、消去モード時にメモリセルに印加される電位について説明する。
データの消去は、ブロック単位で行われ、かつ、ブロック内のメモリセルに対しては、同時に行われる。チップ内の１個又は複数個のブロック内のメモリセルのデータを消去するモードをブロック消去モード、チップ内の全ブロック内のメモリセルのデータを消去するモードをチップ消去モードという。
【００２７】
消去モードにおいては、例えば、チップ内の全てのワード線ＷＬにＶｓｓ（例えば、０Ｖ）を印加し、選択されたブロック内のツインウェル（Ｐ型ウェル及びＮ型ウェル）にＶｅｅ（例えば、２０Ｖ程度の高電位）を印加し、非選択のブロック内のツインウェルにＶｓｓ（例えば、０Ｖ）を印加する。なお、ツインウェルは、ブロックごとに設けられているものとする。
【００２８】
この時、選択されたブロック内のメモリセルは、コントロールゲート（ワード線）がＶｓｓ、ツインウェル（チャネル）がＶｅｅであるため、ゲート酸化膜に高電界が印加される。このため、選択されたブロック内のメモリセルでは、ＦＮトンネル現象により、フローティングゲート内の電子がツインウェル（チャネル）に移動する。よって、選択されたブロック内のメモリセルでは、その閾値が低下し、“１”状態になる（消去が行われる）。
【００２９】
一方、非選択のブロック内のメモリセルは、コントロールゲート（ワード線）及びツインウェル（チャネル）が共にＶｓｓに設定されるため、ゲート酸化膜に高電界が印加されることはない。よって、非選択のブロック内のメモリセルでは、フローティングゲート内の電子量の変化、即ち、閾値の変化はなく、データが消えることはない。
【００３０】
ところで、ＮＯＲ型フラッシュＥＥＰＲＯＭにおいては、消去モードに関して従来より以下のような問題がある。
ブロック内のメモリセルは、製造プロセスなどが原因となり、それぞれが異なる消去特性を持っている。また、消去の対象となるブロック内のメモリセルの初期閾値が異なっている場合もある。
【００３１】
このような消去特性や初期閾値のばらつきにより、ブロック消去（一括消去）を行った後のそのブロック内のメモリセルの閾値は、セル毎に異なるものとなり、分布を持つことになる。よって、例えば、ブロック内の全てのメモリセルの消去が完了したとき、即ち、ブロック内の最も消去特性が悪いメモリセル（消去速度が最も遅いメモリセル）の消去が完了したときに、ブロック内の最も消去特性が良いメモリセル（消去速度が最も速いメモリセル）が過消去状態になる場合がある。
【００３２】
過消去状態とは、メモリセルの閾値が負になることをいう。このようなメモリセルの過消去は、読み出しモード時に重大な問題を生じさせる。即ち、読み出しモードにおいては、上述のように、選択されたワード線ＷＬにＶｃｃ（例えば、５Ｖ程度の電位）を印加し、非選択のワード線ＷＬにＶｓｓ（例えば、０Ｖ）を印加する。
【００３３】
そして、非選択のワード線ＷＬに接続される全てのメモリセルをオフ状態とし、かつ、選択されたワード線ＷＬに接続されるメモリセルを、その状態（“１”又は“０”）に応じて、オン又はオフ状態にし、ビット線の電位変化を検出することによりデータ読み出しが行われる。
【００３４】
しかし、過消去状態の非選択のメモリセル（閾値が負）は、そのコントロールゲート（ワード線）にＶｓｓ（０Ｖ）を印加してもオフ状態にならず、オン状態となる。よって、過消去状態の非選択メモリセルが接続されるビット線ＢＬの電位は、常に放電（リーク）により低下し、選択セルが“０”状態であっても、ビット線に“１”が読み出されてしまうという誤読み出しが発生する。
【００３５】
このようなメモリセルの過消去を防止する技術として、消去シーケンスに、消去の他、消去前書き込み（プリプログラム）及び自己収束（コンバージェンス）を含ませる消去法が知られている。
【００３６】
消去前書き込みは、消去前にメモリセルの閾値をある程度そろえておき、消去後に過消去状態のメモリセルが発生する確率を低くすることを目的に行われる。自己収束は、過消去状態のメモリセルが発生したときに、弱い書き込み（ウィークプログラム）を行い、過消去状態のメモリセルの閾値を所定値以上に戻し、消去後の閾値分布を収束させることを目的に行われる。
【００３７】
なお、消去前書き込み、消去、自己収束のいずれの動作においても、これら各動作が完全に行われたか否かをチェックするベリファイが行われることは言うまでもない。
【００３８】
ここで、消去シーケンスの具体例について説明する。
図２０は、消去シーケンスの一例を示している。なお、以下の説明で使用する各回路は、図１５に示すものとする。
【００３９】
コマンドレジスタ１９が、消去コマンドを確認し、かつ、消去動作を実行するメモリセルアレイ１１のブロックを確認すると、制御回路２１は、図２０の消去シ−ケンスが実行されるように、チップ内の各回路の動作を制御する。
【００４０】
まず、アドレスカウンタ１６、タイマ２５などがリセットされた後、選択されたブロック内のメモリセルについて、消去前書き込み（Pre Program ）動作が実行される（ステップＳＴ１〜ＳＴ２）。
【００４１】
消去前書き込み（Pre Program ）動作は、図２１のサブル−チンに示すような手順で行われる。
【００４２】
まず、アドレスカウンタ１６のアドレスＡｄｄが初期値“０”に設定され、かつ、タイマ２５の数値（書き込み回数に対応）Ｃｙｃｌｅが初期値“０”に設定される（ステップＳＴ４１〜ＳＴ４２）。また、電位発生回路２２において、プログラムベリファイＰ．Ｖ．の内部電源がセットアップされる（ステップＳＴ４３）。
【００４３】
この後、アドレスＡｄｄによって選択されたメモリセルのデ−タが読み出される（ステップＳＴ４４）。アドレスＡｄｄによって選択されたメモリセル（以下、選択メモリセル）のデ−タは、プログラムデ−タ“０”と比較される（ステップＳＴ４５）。
【００４４】
即ち、書き込み状態と判別できる閾値の下限となる電位（書き込みベリファイ閾値）ＰＶＴ１（例えば、５．５Ｖ）を境界値とし、選択メモリセルの閾値が境界値よりも高ければ、選択メモリセルのデ−タは“０”と判定し、選択メモリセルの閾値が境界値よりも低ければ、選択メモリセルのデ−タは“１”と判定する。
【００４５】
そして、選択メモリセルのデ−タとプログラムデ−タ“０”が不一致の場合、書き込みＮＧと判断し、選択メモリセルに対してデ−タの書き込み（フロ−ティングゲ−トに対する電子の注入）を実行する。
【００４６】
このデ−タの書き込みは、予め設定された回数Ｌｉｍｉｔに達するまでは、選択メモリセルのデ−タがプログラムデ−タ“０”と一致するまで、繰り返して行われる（ステップＳＴ４８〜ＳＴ４９）。
【００４７】
また、選択メモリセルに対する書き込み回数Ｃｙｃｌｅが予め設定された回数Ｌｉｍｉｔに達したときは、選択メモリセルのデ−タとプログラムデ−タが不一致であっても、消去前書き込み動作を終了する。（ステップＳＴ４６）。
【００４８】
この場合、書き込み不良が発生したことを示す信号ＥＲＲＯＲが“１”に設定される（ステップＳＴ４７）。
【００４９】
一方、選択メモリセルのデ−タとプログラムデ−タ“０”が一致すれば、選択メモリセルの書き込みＯＫと判断し、アドレスＡｄｄを１つ進めることにより、次のアドレスの選択メモリセルについて同様の動作が行われる。この時、タイマ２５の数値は、初期値にリセットされる（ステップＳＴ４２，ＳＴ５１）。
【００５０】
また、選択メモリセルのデ−タとプログラムデ−タ“０”が一致する場合において、アドレスＡｄｄが、そのブロック内の最終アドレスであるときは、消去前書き込み動作を終了する。この時、選択ブロック内のメモリセルの閾値分布は、図２２に示すようになっている（ステップＳＴ５０）。
【００５１】
次に、書き込み不良の有無を示す信号ＥＲＲＯＲが“１”か否かを確認し、書き込み不良が発生している場合、即ち、信号ＥＲＲＯＲが“１”の場合には、消去動作を終了する（ステップＳＴ３）。
【００５２】
消去前書き込みが確実に実行された場合、即ち、信号ＥＲＲＯＲが“０”の場合には、消去（Erase ）動作が実行される（ステップＳＴ４）。
【００５３】
消去（Erase ）動作は、図２３のサブル−チンに示すような手順で行われる。
【００５４】
まず、アドレスカウンタ１６のアドレスＡｄｄが初期値“０”に設定され、かつ、タイマ２５の数値（消去回数に対応）Ｃｙｃｌｅが初期値“０”に設定される（ステップＳＴ６１〜ＳＴ６２）。また、電位発生回路２２において、イレ−ズベリファイＥ．Ｖ．の内部電源がセットアップされる（ステップＳＴ６３）。
【００５５】
この後、アドレスＡｄｄによって選択されたメモリセルのデ−タが読み出される（ステップＳＴ６４）。アドレスＡｄｄによって選択されたメモリセル（以下、選択メモリセル）のデ−タは、期待値“１”と比較される（ステップＳＴ６５）。
【００５６】
即ち、消去状態と判別できる閾値の上限となる電位（消去ベリファイ閾値）ＥＶＴ１（例えば、３．０Ｖ）を境界値とし、選択メモリセルの閾値が境界値よりも高ければ、選択メモリセルのデ−タは“０”と判定し、選択メモリセルの閾値が境界値よりも低ければ、選択メモリセルのデ−タは“１”と判定する。
【００５７】
そして、選択メモリセルのデ−タと期待値“１”が不一致の場合、消去ＮＧと判断し、選択ブロック内の全てのメモリセルに対してデ−タの消去（フロ−ティングゲ−ト中の電子を抜く動作）を実行する。
【００５８】
ここで、選択ブロック内の全てのメモリセルに対してデ−タの消去（一括消去）を実行しているが、これは、フラッシュＥＥＰＲＯＭに特有の動作である。よって、選択メモリセル以外の既に消去が完了しているメモリセルに対しても、消去動作が実行される。
【００５９】
この消去動作は、予め設定された回数Ｌｉｍｉｔに達するまでは、選択メモリセルのデ−タが期待値“１”と一致するまで、繰り返して行われる（ステップＳＴ６６，ＳＴ６８，ＳＴ６９）。
【００６０】
また、選択メモリセルに対する書き込み回数Ｃｙｃｌｅが予め設定された回数Ｌｉｍｉｔに達したときは、選択メモリセルのデ−タと期待値“１”が不一致であっても、消去動作を終了する。（ステップＳＴ６６）。
【００６１】
この場合、消去不良が発生したことを示す信号ＥＲＲＯＲが“１”に設定される（ステップＳＴ６７）。
【００６２】
一方、選択メモリセルのデ−タと期待値“１”が一致すれば、選択メモリセルの消去ＯＫと判断し、アドレスＡｄｄを１つ進めることにより、次のアドレスの選択メモリセルについて同様の動作が行われる。この時、タイマ２５の数値は、初期値にリセットされない。消去動作は、全メモリセルに対して行われるためである（ステップＳＴ７１）。
【００６３】
また、選択メモリセルのデ−タと期待値“１”が一致する場合において、アドレスＡｄｄが、そのブロック内の最終アドレスであるときは、消去動作を終了する。この時、選択ブロック内のメモリセルの閾値分布は、例えば、図２４に示すようになっている（ステップＳＴ７０）。
【００６４】
次に、消去不良の有無を示す信号ＥＲＲＯＲが“１”か否かを確認し、消去不良が発生している場合、即ち、信号ＥＲＲＯＲが“１”の場合には、消去動作を終了する（ステップＳＴ５）。
【００６５】
消去が確実に実行された場合、即ち、信号ＥＲＲＯＲが“０”の場合には、自己収束（Convergence ）動作が実行される（ステップＳＴ６）。
【００６６】
自己収束（Convergence ）動作は、図２５のサブル−チンに示すような手順で行われる。
【００６７】
まず、アドレスカウンタ１６のアドレス（カラムのみ選択、ロウは全て非選択）Ａｄｄが初期値に設定され、かつ、タイマ２５の数値（自己収束回数に対応）Ｃｙｃｌｅが初期値“０”に設定される（ステップＳＴ８１〜ＳＴ８２）。また、電位発生回路２２において、リ−クチェックＬＣＫ．のための内部電源がセットアップされる（ステップＳＴ８３）。
【００６８】
この後、カラムリ−クチェック（カラム単位のメモリセルのリ−クチェック）が行われる（ステップＳＴ８４）。
【００６９】
カラムリ−クチェックとは、全てのロウ（ワ−ド線）を非選択状態とし、１つのカラムを選択状態とし、その選択されたカラムに流れるリ−ク電流をチェックし、過消去状態のメモリセルが存在するか否かを判定するものである。
【００７０】
即ち、選択されたカラムの全メモリセルの合計のリ−ク電流が基準値よりも少なければ、その選択カラムのデ−タは“０”であると判定し、選択されたカラムの全メモリセルの合計のリ−ク電流が基準値よりも多ければ、その選択カラムのデ−タは“１”であると判定する。
【００７１】
ここで、基準値は、メモリセルの閾値に置き換えることができる。この閾値を過消去（オーバーイレーズ）ベリファイ閾値（電位）ＯＥＶＴとする。過消去ベリファイ閾値ＯＥＶＴは、例えば、０．５Ｖ程度に設定する。リ−ク電流は、閾値が０．５Ｖよりも低いメモリセルについて生じるからである。
【００７２】
そして、選択されたカラムのデ−タと期待値“０”が比較される（ステップＳＴ８５）。
【００７３】
選択されたカラムのデ−タと期待値“０”が不一致の場合、自己収束ＮＧと判断し、選択されたカラム内の全てのメモリセルに対して、同時に自己収束（過消去状態をなくす動作）を実行する。
【００７４】
自己収束は、例えば、弱い書き込み（ウィークプログラム）により行うことができる。弱い書き込みとは、通常の書き込みよりも選択されたメモリセルのコントロールゲート（ワード線）に与える電位を低く設定して行う書き込みのことである。例えば、ウィークプログラム時、選択されたワード線には、Ｖｐｗ（例えば、１０Ｖ未満の電位）が印加される。
【００７５】
この自己収束動作は、予め設定された回数Ｌｉｍｉｔに達するまでは、選択されたカラムのデ−タが期待値“０”と一致するまで、繰り返して行われる（ステップＳＴ８６，ＳＴ８８，ＳＴ８９）。
【００７６】
また、選択されたカラムに対する書き込み回数Ｃｙｃｌｅが予め設定された回数Ｌｉｍｉｔに達したときは、選択されたカラムのデ−タと期待値“０”が不一致であっても、自己収束動作を終了する。（ステップＳＴ８６）。
【００７７】
この場合、自己収束が完全に行われなかったことを示す信号ＥＲＲＯＲが“１”に設定される（ステップＳＴ８７）。
【００７８】
一方、選択されたカラムのデ−タと期待値“０”が一致すれば、選択されたカラムの全メモリセルに対して自己収束ＯＫと判断し、アドレスＡｄｄを１つ進めることにより、次のカラムのメモリセルについて、同様の動作が行われる（ステップＳＴ９１）。
【００７９】
また、選択されたカラムのデ−タと期待値“０”が一致する場合において、アドレスＡｄｄが、そのブロック内の最終カラムを選択するアドレスであるときは、自己収束動作を終了する。
【００８０】
そして、全てのカラムについて自己収束動作を終了すると、選択ブロック内のメモリセルの閾値分布は、例えば、図２６に示すようになる（ステップＳＴ９０）。
【００８１】
次に、自己収束が完全に行われなかったことを示す信号ＥＲＲＯＲが“１”か否かを確認し、信号ＥＲＲＯＲが“１”の場合には、消去動作を終了する（ステップＳＴ７）。
【００８２】
一方、信号ＥＲＲＯＲが“０”の場合、電位発生回路２２において、イレ−ズベリファイＥ．Ｖ．の内部電源がセットアップされる（ステップＳＴ８）。
【００８３】
この後、選択されたブロック内の全てのメモリセルのデ−タが読み出される（ステップＳＴ９）。この全てのメモリセルのデ−タは、期待値“１”と比較される（ステップＳＴ１０）。
【００８４】
即ち、消去状態と判別できる閾値の上限となる電位（消去ベリファイ閾値）ＥＶＴ１（例えば、３．０Ｖ）を境界値とし、選択メモリセルの閾値が境界値よりも高ければ、選択メモリセルのデ−タは“０”と判定し、選択メモリセルの閾値が境界値よりも低ければ、選択メモリセルのデ−タは“１”と判定する。
【００８５】
そして、選択されたブロック内の全てのメモリセルのデ−タと期待値“１”が一致している場合に、消去動作を終了する。
【００８６】
一方、選択されたブロック内の全てのメモリセルのデ−タと期待値“１”が一致していない場合には、再び、消去動作を行う。
【００８７】
このように、自己収束後に、イレーズベリファイを行うようにしたのは、自己収束により、メモリセルの閾値分布の上限が消去ベリファイ閾値ＥＶＴ１を再び超えてしまう場合も考えられるためである。
【００８８】
ところで、ＮＯＲ型フラッシュＥＥＰＲＯＭでは、例えば、製品の信頼性試験として、書き込み／消去を繰り返し行う書き換えテストが実行される。
この書き換えテストのシーケンスは、図２７に示すようになる。即ち、書き換え回数Ｎが最大数Ｎｍａｘに達するまで書き込み／消去が繰り返し行われる点を除いて、上述したような自動消去シーケンスと同じになる。つまり、書き込み（program）のサブルーチンは、図２１に示すようになり、消去（erase）のサブルーチンは、図２３に示すようになり、自己収束（convergence）のサブルーチンは、図２５に示すようになる。
【００８９】
【発明が解決しようとする課題】
上述のように、例えば、従来のＮＯＲ型フラッシュＥＥＰＲＯＭでは、消去動作や書き換えテストにおいて、過消去状態のメモリセルが発生することを防止するために、消去シーケンスに、自己収束（コンバージェンス）を組み込んでいる。
【００９０】
しかし、この自己収束は、メモリセルのブロック消去（又はチップ消去）の時間を増加させる。
【００９１】
特に、消去後に、メモリセルの閾値分布が広くなり過ぎ、過消去状態のメモリセルが多数発生したときは、ほとんど全てのビット線（カラム）に対して順番にカラムリークチェック及び自己収束（ウィークプログラム）を行わなければならず、ブロック消去（又はチップ消去）の時間を非常に長くする。
【００９２】
例えば、フローティングゲートからチャネルに電子を引き抜く消去動作に約１００［ｍｓ］、自己収束動作に約１［ｓ］、全ビット書き込みに約７００［ｍｓ］の時間が必要であるとすると、例えば、消去動作（消去前書き込み、消去、自己収束）には、少なくとも１．８［ｓ］の時間を要する。
【００９３】
また、例えば、フラッシュＥＥＰＲＯＭにおいては、上述のように、信頼性試験として、書き込み動作と消去動作が繰り返す書き換えテストが行われる。ここで、消去動作には、当然に、自己収束が含まれている。
【００９４】
よって、例えば、書き込み動作と消去動作が１０００回ほど繰り返し行われる場合には、ブロック当り、１．８［ｓ］×１０００＝１８００［ｓ］、即ち、３０分もの時間がかかってしまう。
【００９５】
ところで、テスト時間は、テストコストに比例するため、テスト時間が長くなることは、テストコストが増加することを意味する。
【００９６】
もし、仮に、書き換えテスト時において消去動作から自己収束をなくせば、上述の例の場合だと、１回の書き換え時間は、０．８［ｓ］となる。よって、書き込み動作と消去動作を１０００回ほど繰り返し行う場合には、ブロック当り、０．８［ｓ］×１０００＝８００［ｓ］の時間となり、自己収束を有する場合の半分以下のテスト時間を達成できる。
【００９７】
このように、自己収束を行う消去シーケンスを有するフラッシュＥＥＰＲＯＭは、自己収束を行わない消去シーケンスを有するフラッシュＦＦＰＲＯＭに比べて、テスト時間が倍以上になり、テストコストを増大させる。
【００９８】
このような状況は、例えば、低電圧化されたＮＯＲ型フラッシュＥＥＰＲＯＭにおいて非常に深刻となる。即ち、低電圧化され、電源電位Ｖｃｃが、例えば、５Ｖから３Ｖ程度に低くなると、読み出し時に選択されたワード線に印加する電位（読み出し電位）Ｖｃｃも低下する。
【００９９】
読み出し電位Ｖｃｃが低下するということは、ブロック消去後のメモリセルの閾値分布を、Ｖｓｓ（０Ｖ）とＶｃｃの間の狭い範囲に収めなければならないということを意味する。
【０１００】
つまり、この場合、例えば、図２８に示すように、イレーズベリファイの基準となる消去ベリファイ閾値ＥＶＴ１が低くなるため、ブロック消去後のメモリセルの閾値分布幅が変わらないとすると、その閾値分布の下限値ＥＶＴＬも低くなる。よって、その下限値ＥＶＴＬが上述の過消去ベリファイ閾値ＯＥＶＴを大幅に下回り、自己収束において、その下限値ＥＶＴＬを過消去ベリファイ閾値ＯＥＶＴよりも高くするためのウィークプログラムの対象となるメモリセルの数が多くなり、結果として、テスト時間を増大させる。
【０１０１】
本発明は、上記欠点を解決すべくなされたもので、その目的は、過消去が問題となるようなフラッシュＥＥＰＲＯＭにおいては、消去動作時に過消去状態のメモリセルが絶対に発生しないような新規な消去シーケンスを提供することにより、消去動作から自己収束（書き戻し動作）をなくし、消去動作の短時間化や、テスト時間の短縮によるテストコストの低下を図ることにある。
【０１０２】
【課題を解決するための手段】
本発明の不揮発性半導体メモリは、消去ベリファイ時に第１制御信号を出力する制御回路と、前記第１制御信号に基づいて、第１消去ベリファイ電位又は前記第１消去ベリファイ電位よりも高い第２消去ベリファイ電位を発生する電位発生回路と、前記第１又は第２消去ベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して消去が完了したか否かを判定するベリファイ回路とを備える。
【０１０３】
前記第２消去ベリファイ電位は、データ消去されたメモリセルの閾値分布の下限が過消去セルが存在するか否かの基準となる過消去ベリファイ電位以上となる値に設定される。
【０１０４】
前記第１及び第２消去ベリファイ電位の差は、過消去セルが存在するか否かの基準となる過消去ベリファイ電位とデータ消去されたメモリセルの閾値分布の下限との差以上に設定される。
【０１０５】
書き換えテストにおける消去ベリファイ時に、前記電位発生回路は、前記第２消去ベリファイ電位を発生し、前記ベリファイ回路は、前記第２消去ベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して消去が完了したか否かを判定する。
【０１０６】
通常動作における消去ベリファイ時に、前記電位発生回路は、前記第１消去ベリファイ電位を発生し、前記ベリファイ回路は、前記第１消去ベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して消去が完了したか否かを判定する。
【０１０７】
また、前記制御回路は、第２制御信号を出力し、前記電位発生回路は、前記第２制御信号に基づいて、第１書き込みベリファイ電位又は前記第１書き込みベリファイ電位よりも高い第２書き込みベリファイ電位を発生し、前記ベリファイ回路は、前記第１又は第２書き込みベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して書き込みが完了したか否かを判定する。
【０１０８】
前記第１及び第２書き込みベリファイ電位の差は、前記第１及び第２消去ベリファイ電位の差に実質的に等しい。
【０１０９】
書き換えテストにおける書き込みベリファイ時に、前記電位発生回路は、前記第２書き込みベリファイ電位を発生し、前記ベリファイ回路は、前記第２書き込みベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して書き込みが完了したか否かを判定する。
【０１１０】
通常動作における書き込みベリファイ時に、前記電位発生回路は、前記第１書き込みベリファイ電位を発生し、前記ベリファイ回路は、前記第１書き込みベリファイ電位によりメモリセルから読み出されたデータと期待値とを比較して書き込みが完了したか否かを判定する。
【０１１１】
【発明の実施の形態】
以下、図面を参照しながら、本発明の不揮発性半導体メモリについて詳細に説明する。
【０１１２】
図１は、本発明のＮＯＲ型フラッシュＥＥＰＲＯＭの主要部を示すものである。
【０１１３】
メモリセルアレイ１１は、複数のブロックから構成され、各ブロックは、ＮＯＲ型のメモリセルから構成されている。
【０１１４】
外部アドレスＡ０，Ａ１，〜Ａ１７は、直接、又は、アドレスレジスタ１２を経由して、マルチプレクサ１３に入力される。アドレスカウンタ１６は、内部アドレスを生成する。マルチプレクサ１３は、外部アドレス及び内部アドレスのいずれか一方をロウデコ−ダ１４及びカラムデコ−ダ１５に与える。
【０１１５】
入力デ−タは、入出力バッファ１７を経由して、デ−タ入力レジスタ１８及びコマンドレジスタ１９に与えられる。デ−タ入力レジスタ１８のデ−タは、カラム選択回路２０を経由してメモリセルに供給される。
【０１１６】
コマンドレジスタ１９は、アドレス及びデ−タからなるコマンドを認識し、そのコマンドに応じて、アドレスレジスタ１２、マルチプレクサ１３、デ−タ入力レジスタ１８及び制御回路２１に制御信号を出力する。
【０１１７】
制御回路２１は、コマンドレジスタ１９から出力される制御信号に基づいて、次に実行すべき動作モ−ドを認識する。
【０１１８】
電位発生回路２２は、動作モ−ドに対応した各種の電位を生成する。電位発生回路２２により生成された電位は、各動作モ−ドにおいて、メモリセルの制御ゲ−ト及びビット線に与えられる。
【０１１９】
本発明は、イレーズベリファイにおける消去ベリファイ閾値（電位）、即ち、イレーズベリファイリード時に、選択されたワード線に与える読み出し電位に特徴がある。つまり、制御回路２１は、イレーズベリファイ時に、電位発生回路２２に本発明に特有の新たな制御信号ＭＤを与える。電位発生回路２２は、この制御信号ＭＤに基づいて、イレーズベリファイにおける消去ベリファイ閾値、即ち、イレーズベリファイ時の読み出し電位を変えることができる。
【０１２０】
同様に、本発明は、プログラムベリファイにおける書き込みベリファイ閾値（電位）、即ち、プログラムベリファイリード時に、選択されたワード線に与える読み出し電位に特徴がある。つまり、制御回路２１は、プログラムベリファイ時に、電位発生回路２２に本発明に特有の新たな制御信号ＭＤを与える。電位発生回路２２は、この制御信号ＭＤに基づいて、プログラムベリファイにおける書き込みベリファイ閾値、即ち、プログラムベリファイ時の読み出し電位を変えることができる。
【０１２１】
ベリファイ回路２３は、選択されたメモリセルに対するデ−タの書き込み又は消去が確実に行われた否かを判定し、その結果ＶＥＲＩＯＫを制御回路２１に出力する。
【０１２２】
最終アドレス検知回路２４は、メモリセルアレイ１１の各ブロックの最終アドレスの検知の有無を示す検知信号ＡＥＮＤを出力すると共に、メモリセルアレイ１１の最終ブロックの検知の有無を示す検知信号ＢＥＮＤを出力する。
【０１２３】
タイマ２５は、選択されたメモリセルに対するデ−タの書き込み又は消去が何回実行されたかをカウントする。タイマ２５は、選択されたメモリセルに対するデ−タの書き込み又は消去が所定回数に達したときに、タイムアウト信号ＴＩＭＥ  ＯＵＴを制御回路２１に出力する。
【０１２４】
クロック発生回路２６は、ライトイネ−ブル信号／ＷＥ、チップイネ−ブル信号／ＣＥ、アウトプットイネ−ブル信号／ＯＥなどの信号に基づいて、フラッシュＥＥＰＲＯＭの内部動作を制御するクロックを発生する。
【０１２５】
図２は、図１の電位発生回路２２内に配置され、イレーズベリファイリード時に選択されたワード線に与える電位を生成する回路の構成例を示している。
【０１２６】
オペアンプ３１，３２のマイナス側入力端子には、基準電位Ｖｒｅｆが入力される。オペアンプ３１の出力端子は、Ｐチャネル型ＭＯＳトランジスタＰ１のゲートに接続され、オペアンプ３２の出力端子は、Ｎチャネル型ＭＯＳトランジスタＮ１のゲートに接続される。
【０１２７】
２つのＭＯＳトランジスタＰ１，Ｎ１は、高電位側の電源端子Ｖｐｐと低電位側の電源端子Ｖｓｓの間に直列接続される。この２つのＭＯＳトランジスタＰ１，Ｎ１の接続ノード（ドレイン）ｎ１は、本回路の出力端子になっている。
【０１２８】
接続ノードｎ１と低電位側の電源端子Ｖｓｓの間には、３つの抵抗Ｒ１，Ｒ２，Ｒ３とＮチャネルＭＯＳトランジスタＮ３が直列接続される。抵抗Ｒ１と抵抗Ｒ２の接続ノードｎ２は、オペアンプ３１，３２のプラス側入力端子に接続される。
【０１２９】
つまり、本回路では、基準電位Ｖｒｅｆと接続ノードｎ２の電位が互いに等しくなるように、出力ノードｎ１の電位Ｖｒｅｇが設定される。
【０１３０】
抵抗Ｒ２と抵抗Ｒ３の接続点は、接続ノードｎ３となっている。接続ノードｎ３と低電位側の電源端子Ｖｓｓの間には、ＮチャネルＭＯＳトランジスタＮ２が接続される。
【０１３１】
一方、制御信号ＭＤ，ＥＶは、ナンド回路ＮＡ１に入力される。ナンド回路ＮＡ１の出力端子は、インバータＩ２を経由して、ＭＯＳトランジスタＮ２のゲートに接続される。また、制御信号ＭＤの反転信号及び制御信号ＥＶは、ナンド回路ＮＡ２に入力される。ナンド回路ＮＡ２の出力端子は、インバータＩ３を経由して、ＭＯＳトランジスタＮ３のゲートに接続される。
【０１３２】
制御信号ＥＶは、イレーズベリファイ時に“１”となる。また、イレーズベリファイ時に制御信号ＭＤが“０”のときは、ＭＯＳトランジスタＮ２がオフ状態、ＭＯＳトランジスタＮ３がオン状態となるため、出力信号Ｖｒｅｇは、Ｖｅｖ１となる。また、イレーズベリファイ時に制御信号ＭＤが“１”のときは、ＭＯＳトランジスタＮ２がオン状態、ＭＯＳトランジスタＮ３がオフ状態となるため、出力信号Ｖｒｅｇは、Ｖｅｖ２となる。
【０１３３】
Ｖｅｖ１とＶｅｖ２は、図３に示すように、Ｖｅｖ１＜Ｖｅｖ２の関係を有する。つまり、ノードｎ３と低電位側電源端子Ｖｓｓの間に抵抗Ｒ３があると、Ｖｒｅｇは、Ｖｅｖ１となり、ノードｎ３と低電位側電源端子Ｖｓｓの間に抵抗Ｒ３がないと、Ｖｒｅｇは、Ｖｅｖ１よりも高いＶｅｖ２となる。
【０１３４】
図４は、図１の電位発生回路内に配置され、プログラムベリファイリード時に選択されたワード線に与える電位を生成する回路の構成例を示している。
【０１３５】
オペアンプ３３，３４のマイナス側入力端子には、基準電位Ｖｒｅｆが入力される。オペアンプ３３の出力端子は、Ｐチャネル型ＭＯＳトランジスタＰ２のゲートに接続され、オペアンプ３４の出力端子は、Ｎチャネル型ＭＯＳトランジスタＮ４のゲートに接続される。
【０１３６】
２つのＭＯＳトランジスタＰ２，Ｎ４は、高電位側の電源端子Ｖｐｐと低電位側の電源端子Ｖｓｓの間に直列接続される。この２つのＭＯＳトランジスタＰ２，Ｎ４の接続ノード（ドレイン）ｎ４は、本回路の出力端子になっている。
【０１３７】
接続ノードｎ４と低電位側の電源端子Ｖｓｓの間には、３つの抵抗Ｒ４，Ｒ５，Ｒ６とＮチャネルＭＯＳトランジスタＮ６が直列接続される。抵抗Ｒ４と抵抗Ｒ５の接続ノードｎ５は、オペアンプ３３，３４のプラス側入力端子に接続される。
【０１３８】
つまり、本回路では、基準電位Ｖｒｅｆと接続ノードｎ５の電位が互いに等しくなるように、出力ノードｎ４の電位Ｖｒｅｇが設定される。
【０１３９】
抵抗Ｒ５と抵抗Ｒ６の接続点は、接続ノードｎ６となっている。接続ノードｎ６と低電位側の電源端子Ｖｓｓの間には、ＮチャネルＭＯＳトランジスタＮ５が接続される。
【０１４０】
一方、制御信号ＭＤ，ＰＶは、ナンド回路ＮＡ３に入力される。ナンド回路ＮＡ３の出力端子は、インバータＩ５を経由して、ＭＯＳトランジスタＮ５のゲートに接続される。また、制御信号ＭＤの反転信号及び制御信号ＰＶは、ナンド回路ＮＡ４に入力される。ナンド回路ＮＡ４の出力端子は、インバータＩ６を経由して、ＭＯＳトランジスタＮ６のゲートに接続される。
【０１４１】
制御信号ＰＶは、プログラムベリファイ時に“１”となる。また、プログラムベリファイ時に制御信号ＭＤが“０”のときは、ＭＯＳトランジスタＮ５がオフ状態、ＭＯＳトランジスタＮ６がオン状態となるため、出力信号Ｖｒｅｇは、Ｖｐｖ１となる。また、プログラムベリファイ時に制御信号ＭＤが“１”のときは、ＭＯＳトランジスタＮ５がオン状態、ＭＯＳトランジスタＮ６がオフ状態となるため、出力信号Ｖｒｅｇは、Ｖｐｖ２となる。
【０１４２】
Ｖｐｖ１とＶｐｖ２は、図５に示すように、Ｖｐｖ１＜Ｖｐｖ２の関係を有する。つまり、ノードｎ６と低電位側電源端子Ｖｓｓの間に抵抗Ｒ６があると、Ｖｒｅｇは、Ｖｐｖ１となり、ノードｎ６と低電位側電源端子Ｖｓｓの間に抵抗Ｒ６がないと、Ｖｒｅｇは、Ｖｐｖ１よりも高いＶｐｖ２となる。
【０１４３】
なお、図１の電位発生回路２２内には、図２及び図３の回路の他に、当然に、書き込み時の書き込み電位Ｖｐｐや、消去時の消去電位Ｖｅｅなどを生成する回路も配置されている。特に、書き込み時に書き込み電位Ｖｐｐを段階的に変化させる書き込み方法を採用する場合には、図２又は図３と同様の構成を有する書き込み電位発生回路が電位発生回路２２内に配置される。
【０１４４】
次に、図１乃至図５に示したＮＯＲ型フラッシュＥＥＰＲＯＭを用いた本発明の消去動作の概念について説明する。
【０１４５】
まず、前提条件として、従来の書き込みベリファイ電位（閾値）をＰＶＴ１、消去ベリファイ電位（閾値）をＥＶＴ１、過消去ベリファイ電位（閾値）をＯＥＶＴとする。
【０１４６】
このような条件の下で、ブロック消去（チップ消去）又は書き換えテストを行う場合、まず、図６に示すように、ブロック内の全てのメモリセルを“０”書き込み状態にする。この時、書き込みベリファイ電位は、上述の前提条件によれば、ＰＶＴ１に設定されるため、ブロック内の“０”状態のメモリセルの閾値分布は、同図に示すようになる。
【０１４７】
この後、ブロック内の全メモリセルに対して一括消去を行う。また、この消去動作における消去ベリファイ電位は、ＥＶＴ１に設定されるため、消去動作終了後のブロック内の“１”状態（消去状態）のメモリセルの閾値分布は、同図に示すようになる。つまり、ブロック内の消去状態のメモリセルの閾値分布は、上限がＥＶＴ１、下限がＥＶＴＬになるものとする。
【０１４８】
一方、過消去ベリファイ電位は、ＯＥＶＴに設定されているため、過消去ベリファイ電位ＯＥＶＴを下回る閾値を有するメモリセルは、過消去状態にあると判断される（図６においてハッチングにて示す）。
【０１４９】
よって、従来は、図７に示すように、過消去ベリファイ電位ＯＥＶＴを下回る閾値を有するメモリセルに対しては、自己収束により書き戻し動作が行われ、ブロック内の消去状態のメモリセルの閾値分布の下限ＥＶＴＬが過消去ベリファイ電位ＯＥＶＴ以上になるようにする。
【０１５０】
つまり、従来は、この自己収束による書き戻し動作のため、ブロック消去（又はチップ消去）や書き換えテストの時間が増大していた。
【０１５１】
そこで、本発明では、まず、図６に示すように、消去動作終了後のブロック内のメモリセルの閾値分布の下限ＥＶＴＬと過消去ベリファイ電位ＯＥＶＴの差ＶＨ（＝ＯＥＶＴ−ＥＶＴＬ）がどの位あるのかを予め求めておく。
【０１５２】
そして、ブロック内のメモリセルに対して一括消去を行うときに、図８に示すように、消去ベリファイ電位ＥＶＴ２を、ＥＶＴ１よりもＶＨだけ高い電位又はそれ以上の電位に設定する。つまり、閾値分布の形（閾値分布幅）自体は変わらないため、消去後に行う消去ベリファイの消去ベリファイ電位をＥＶＴ２に設定することで、必然的に、消去動作終了後のブロック内のメモリセルの閾値分布の下限ＥＶＴＬは、過消去ベリファイ電位ＯＥＶＴ以上となる（図８の実線）。
【０１５３】
このように、本発明によれば、消去ベリファイ電位を以下の関係を満たすようなＥＶＴ２に設定することで、過消去状態のメモリセルが発生することがなくなるため、結果として、自己収束が不要となる効果がある。
ＥＶＴ２  ≧  ＥＶＴ１＋（ＯＥＶＴ−ＥＶＴＬ）
また、本発明では、この２種類の消去ベリファイ電位ＥＶＴ１，ＥＶＴ２をモードに応じて切り替えて使用することもできる。
【０１５４】
上述のように、消去動作に自己収束が含まれていて問題となるのは、特に、書き換えテストのときである。書き換えテストでは、書き込み動作と消去動作を多数回（例えば、１０００回程度）繰り返し行うためである。
【０１５５】
よって、通常動作における消去モードでは、消去ベリファイ電位として、ＥＶＴ１を用い、書き換えテストにおける消去モードでは、消去ベリファイ電位として、ＥＶＴ２を用いることができる。これにより、書き換えテストにおける消去動作から自己収束をなくすことができ、テスト時間の短縮によるテストコストの低下を達成できる。
【０１５６】
また、通常動作における消去モードでは、消去ベリファイ電位としてＥＶＴ１を用い、かつ、自己収束を行うことで、消去後のメモリセルの閾値分布をＶｓｓとＶｃｃの間に容易に収めることができ、電源電位Ｖｃｃの低電圧化にも対応できるようになる。
【０１５７】
ところで、消去ベリファイ電位をＥＶＴ２としたとき、本発明の書き換えテスト時におけるトンネル酸化膜の電荷の通過量を、通常動作時（従来の書き換えテスト時）におけるトンネル酸化膜の電荷の通過量と同等にするため、書き込みベリファイ電位も、ＰＶＴ１から以下の式で示されるような電位ＰＶＴ２に変更することもできる。
0003808656.tif 000002
つまり、書き換えテスト（トンネル酸化膜の耐久性テスト）の信頼性を向上させるためには、書き換えテスト時におけるトンネル酸化膜の電荷の通過量を、通常動作時におけるトンネル酸化膜の電荷の通過量に等しくする必要がある。一方、トンネル酸化膜の電荷の通過量は、消去状態（“１”状態）のメモリセルの閾値と書き込み状態（“０”状態）のメモリセルの閾値の差に実質的に等しい。
【０１５８】
よって、書き換えテスト時の書き込みベリファイ電位をＰＶＴ２にすれば、以下に示すように、本発明の書き換えテスト時における書き込み状態のメモリセルの閾値と消去状態のメモリセルの閾値の差、即ち、書き込み状態のメモリセルの閾値分布の下限ＰＶＴ２と消去状態のメモリセルの閾値分布の上限ＥＶＴ２の差を、通常動作時における書き込み状態のメモリセルの閾値と消去状態のメモリセルの閾値の差、即ち、書き込み状態のメモリセルの閾値分布の下限ＰＶＴ１と消去状態のメモリセルの閾値分布の上限ＥＶＴ１の差に等しくできる。
ＰＶＴ２−ＥＶＴ２  ＝  ＰＶＴ１−ＥＶＴ１
このように、消去ベリファイ電位としてＥＶＴ２を用いたときに、書き込みベリファイ電位としてＰＶＴ２を用いれば、本発明の書き換えテスト時と通常動作時でトンネル酸化膜の電荷の通過量を実質的に等しくできるため、書き換えテスト（トンネル酸化膜の耐久性テスト）の信頼性を向上させることができる。
【０１５９】
次に、本発明が適用された消去シーケンスについて説明する。
図９は、本発明が適用された消去シーケンスの一例を示している。なお、以下の説明で使用する各回路は、図１に示すものとする。
【０１６０】
まず、コマンドレジスタ１９が、消去コマンドを確認し、かつ、消去動作を実行するメモリセルアレイ１１のブロックを確認すると、制御回路２１は、図９の消去シ−ケンスが実行されるように、チップ内の各回路の動作を制御する。
【０１６１】
まず、アドレスカウンタ１６、タイマ２５などがリセットされた後、選択されたブロック内のメモリセルについて、消去前書き込み（Pre Program ）動作が実行される（ステップＳＴ１〜ＳＴ２）。
【０１６２】
消去前書き込み（Pre Program ）動作は、図１０のサブル−チンに示すような手順で行われる。
【０１６３】
まず、制御回路２１により、制御信号ＰＶが“１”に設定され、かつ、制御信号ＭＤが“１”に設定される。これにより、書き込みベリファイ電位（閾値）がＰＶＴ２に切り替わる（ステップＳＴ４０）。
【０１６４】
また、アドレスカウンタ１６のアドレスＡｄｄが初期値“０”に設定され、かつ、タイマ２５の数値（書き込み回数に対応）Ｃｙｃｌｅが初期値“０”に設定される（ステップＳＴ４１〜ＳＴ４２）。また、電位発生回路２２において、プログラムベリファイＰ．Ｖ．の内部電源がセットアップされる（ステップＳＴ４３）。
【０１６５】
この後、アドレスＡｄｄによって選択されたメモリセルのデ−タが読み出される（ステップＳＴ４４）。アドレスＡｄｄによって選択されたメモリセル（以下、選択メモリセル）のデ−タは、プログラムデ−タ“０”と比較される（ステップＳＴ４５）。
【０１６６】
即ち、書き込み状態と判別できる閾値の下限となる電位（書き込みベリファイ電位）ＰＶＴ２を境界値とし、選択メモリセルの閾値が境界値よりも高ければ、選択メモリセルのデ−タは“０”と判定し、選択メモリセルの閾値が境界値よりも低ければ、選択メモリセルのデ−タは“１”と判定する。
【０１６７】
そして、選択メモリセルのデ−タとプログラムデ−タ“０”が不一致の場合、書き込みＮＧと判断し、選択メモリセルに対してデ−タの書き込み（フロ−ティングゲ−トに対する電子の注入）を実行する。
【０１６８】
このデ−タの書き込みは、予め設定された回数Ｌｉｍｉｔに達するまでは、選択メモリセルのデ−タがプログラムデ−タ“０”と一致するまで、繰り返して行われる（ステップＳＴ４８〜ＳＴ４９）。
【０１６９】
また、選択メモリセルに対する書き込み回数Ｃｙｃｌｅが予め設定された回数Ｌｉｍｉｔに達したときは、選択メモリセルのデ−タとプログラムデ−タが不一致であっても、消去前書き込み動作を終了する。（ステップＳＴ４６）。
【０１７０】
この場合、書き込み不良が発生したことを示す信号ＥＲＲＯＲが“１”に設定される（ステップＳＴ４７）。
【０１７１】
一方、選択メモリセルのデ−タとプログラムデ−タ“０”が一致すれば、選択メモリセルの書き込みＯＫと判断し、アドレスＡｄｄを１つ進めることにより、次のアドレスの選択メモリセルについて同様の動作が行われる。この時、タイマ２５の数値は、初期値にリセットされる（ステップＳＴ４２，ＳＴ５１）。
【０１７２】
また、選択メモリセルのデ−タとプログラムデ−タ“０”が一致する場合において、アドレスＡｄｄが、そのブロック内の最終アドレスであるときは、消去前書き込み動作を終了する。この時、選択ブロック内のメモリセルの閾値分布は、図１１に示すようになっている（ステップＳＴ５０）。
【０１７３】
次に、書き込み不良の有無を示す信号ＥＲＲＯＲが“１”か否かを確認し、書き込み不良が発生している場合、即ち、信号ＥＲＲＯＲが“１”の場合には、消去動作を終了する（ステップＳＴ３）。
【０１７４】
消去前書き込みが確実に実行された場合、即ち、信号ＥＲＲＯＲが“０”の場合には、消去（Erase ）動作が実行される（ステップＳＴ４）。
【０１７５】
消去（Erase ）動作は、図１２のサブル−チンに示すような手順で行われる。
【０１７６】
まず、制御回路２１により、制御信号ＥＶが“１”に設定され、かつ、制御信号ＭＤが“１”に設定される。これにより、消去ベリファイ電位（閾値）がＥＶＴ２に切り替わる（ステップＳＴ６０）。
【０１７７】
また、アドレスカウンタ１６のアドレスＡｄｄが初期値“０”に設定され、かつ、タイマ２５の数値（消去回数に対応）Ｃｙｃｌｅが初期値“０”に設定される（ステップＳＴ６１〜ＳＴ６２）。また、電位発生回路２２において、イレ−ズベリファイＥ．Ｖ．の内部電源がセットアップされる（ステップＳＴ６３）。
【０１７８】
この後、アドレスＡｄｄによって選択されたメモリセルのデ−タが読み出される（ステップＳＴ６４）。アドレスＡｄｄによって選択されたメモリセル（以下、選択メモリセル）のデ−タは、期待値“１”と比較される（ステップＳＴ６５）。
【０１７９】
即ち、消去状態と判別できる閾値の上限となる電位（消去ベリファイ電位）ＥＶＴ２を境界値とし、選択メモリセルの閾値が境界値よりも高ければ、選択メモリセルのデ−タは“０”と判定し、選択メモリセルの閾値が境界値よりも低ければ、選択メモリセルのデ−タは“１”と判定する。
【０１８０】
そして、選択メモリセルのデ−タと期待値“１”が不一致の場合、消去ＮＧと判断し、選択ブロック内の全てのメモリセルに対してデ−タの消去（フロ−ティングゲ−ト中の電子を抜く動作）を実行する。
【０１８１】
ここで、選択ブロック内の全てのメモリセルに対してデ−タの消去（一括消去）を実行しているが、これは、フラッシュＥＥＰＲＯＭに特有の動作である。よって、選択メモリセル以外の既に消去が完了しているメモリセルに対しても、消去動作が実行される。
【０１８２】
この消去動作は、予め設定された回数Ｌｉｍｉｔに達するまでは、選択メモリセルのデ−タが期待値“１”と一致するまで、繰り返して行われる（ステップＳＴ６６，ＳＴ６８，ＳＴ６９）。
【０１８３】
また、選択メモリセルに対する書き込み回数Ｃｙｃｌｅが予め設定された回数Ｌｉｍｉｔに達したときは、選択メモリセルのデ−タと期待値“１”が不一致であっても、消去動作を終了する。（ステップＳＴ６６）。
【０１８４】
この場合、消去不良が発生したことを示す信号ＥＲＲＯＲが“１”に設定される（ステップＳＴ６７）。
【０１８５】
一方、選択メモリセルのデ−タと期待値“１”が一致すれば、選択メモリセルの消去ＯＫと判断し、アドレスＡｄｄを１つ進めることにより、次のアドレスの選択メモリセルについて同様の動作が行われる。この時、タイマ２５の数値は、初期値にリセットされない。消去動作は、全メモリセルに対して行われるためである（ステップＳＴ７１）。
【０１８６】
また、選択メモリセルのデ−タと期待値“１”が一致する場合において、アドレスＡｄｄが、そのブロック内の最終アドレスであるときは、消去動作を終了する。この時、選択ブロック内のメモリセルの閾値分布は、例えば、図１３に示すようになっている。即ち、ブロック内の“１”状態のメモリセルの閾値分布の下限は、過消去ベリファイ電位ＯＥＶＴを下回ることがない（ステップＳＴ７０）。
【０１８７】
次に、消去不良の有無を示す信号ＥＲＲＯＲが“１”か否かを確認し、消去不良が発生している場合、即ち、信号ＥＲＲＯＲが“１”の場合には、消去動作を終了する（ステップＳＴ５）。
【０１８８】
消去が確実に実行された場合、即ち、信号ＥＲＲＯＲが“０”の場合にも、自己収束（Convergence ）動作を行うことなく、消去動作を終了する（ステップＳＴ５）。
【０１８９】
ところで、本発明の消去シーケンスは、上述したように、製品の信頼性試験として、書き込み／消去を繰り返し行う書き換えテストに非常に有効である。
【０１９０】
即ち、通常動作では、制御信号ＰＶ又は制御信号ＥＶが“１”のとき、制御信号ＭＤを“０”にして、通常の書き込みベリファイ電位ＰＶＴ１又は消去ベリファイ電位ＥＶＴ１を用いる。また、書き換えテストでは、制御信号ＰＶ又は制御信号ＥＶが“１”のとき、制御信号ＭＤを“１”にして、ＰＶＴ１又はＥＶＴ１よりも高い書き込みベリファイ電位ＰＶＴ２又は消去ベリファイ電位ＥＶＴ２を用いる。
【０１９１】
図１４は、本発明が適用された書き換えテスト時のシーケンスを示している。なお、以下の説明で使用する各回路は、図１に示すものとする。
【０１９２】
まず、アドレスカウンタ１６、タイマ２５などがリセットされ、書き換え回数Ｎが０にセットされた後、選択されたブロック内のメモリセルについて、書き込み動作が実行される（ステップＳＴ１〜ＳＴ２）。
【０１９３】
書き込み動作は、図１０のサブル−チンに示すような手順で行われる。
【０１９４】
まず、制御回路２１により、制御信号ＰＶが“１”に設定され、かつ、制御信号ＭＤが“１”に設定される。これにより、書き込みベリファイ電位（閾値）がＰＶＴ２に切り替わる（ステップＳＴ４０）。
【０１９５】
また、アドレスカウンタ１６のアドレスＡｄｄが初期値“０”に設定され、かつ、タイマ２５の数値（書き込み回数に対応）Ｃｙｃｌｅが初期値“０”に設定される（ステップＳＴ４１〜ＳＴ４２）。また、電位発生回路２２において、プログラムベリファイＰ．Ｖ．の内部電源がセットアップされる（ステップＳＴ４３）。
【０１９６】
この後、アドレスＡｄｄによって選択されたメモリセルのデ−タが読み出される（ステップＳＴ４４）。アドレスＡｄｄによって選択されたメモリセル（以下、選択メモリセル）のデ−タは、プログラムデ−タ“０”と比較される（ステップＳＴ４５）。
【０１９７】
即ち、書き込み状態と判別できる閾値の下限となる電位（書き込みベリファイ電位）ＰＶＴ２を境界値とし、選択メモリセルの閾値が境界値よりも高ければ、選択メモリセルのデ−タは“０”と判定し、選択メモリセルの閾値が境界値よりも低ければ、選択メモリセルのデ−タは“１”と判定する。
【０１９８】
そして、選択メモリセルのデ−タとプログラムデ−タ“０”が不一致の場合、書き込みＮＧと判断し、選択メモリセルに対してデ−タの書き込み（フロ−ティングゲ−トに対する電子の注入）を実行する。
【０１９９】
このデ−タの書き込みは、予め設定された回数Ｌｉｍｉｔに達するまでは、選択メモリセルのデ−タがプログラムデ−タ“０”と一致するまで、繰り返して行われる（ステップＳＴ４８〜ＳＴ４９）。
【０２００】
また、選択メモリセルに対する書き込み回数Ｃｙｃｌｅが予め設定された回数Ｌｉｍｉｔに達したときは、選択メモリセルのデ−タとプログラムデ−タが不一致であっても、書き込み動作を終了する。（ステップＳＴ４６）。
【０２０１】
この場合、書き込み不良が発生したことを示す信号ＥＲＲＯＲが“１”に設定される（ステップＳＴ４７）。
【０２０２】
一方、選択メモリセルのデ−タとプログラムデ−タ“０”が一致すれば、選択メモリセルの書き込みＯＫと判断し、アドレスＡｄｄを１つ進めることにより、次のアドレスの選択メモリセルについて同様の動作が行われる。この時、タイマ２５の数値は、初期値にリセットされる（ステップＳＴ４２，ＳＴ５１）。
【０２０３】
また、選択メモリセルのデ−タとプログラムデ−タ“０”が一致する場合において、アドレスＡｄｄが、そのブロック内の最終アドレスであるときは、書き込み動作を終了する。この時、選択ブロック内のメモリセルの閾値分布は、図１１に示すようになっている（ステップＳＴ５０）。
【０２０４】
次に、書き込み不良の有無を示す信号ＥＲＲＯＲが“１”か否かを確認し、書き込み不良が発生している場合、即ち、信号ＥＲＲＯＲが“１”の場合には、その製品を不良品とみなし、書き換えテストを終了する（ステップＳＴ３）。
【０２０５】
書き込みが確実に実行された場合、即ち、信号ＥＲＲＯＲが“０”の場合には、消去動作が実行される（ステップＳＴ４）。
【０２０６】
消去動作は、図１２のサブル−チンに示すような手順で行われる。
【０２０７】
まず、制御回路２１により、制御信号ＥＶが“１”に設定され、かつ、制御信号ＭＤが“１”に設定される。これにより、消去ベリファイ電位（閾値）がＥＶＴ２に切り替わる（ステップＳＴ６０）。
【０２０８】
また、アドレスカウンタ１６のアドレスＡｄｄが初期値“０”に設定され、かつ、タイマ２５の数値（消去回数に対応）Ｃｙｃｌｅが初期値“０”に設定される（ステップＳＴ６１〜ＳＴ６２）。また、電位発生回路２２において、イレ−ズベリファイＥ．Ｖ．の内部電源がセットアップされる（ステップＳＴ６３）。
【０２０９】
この後、アドレスＡｄｄによって選択されたメモリセルのデ−タが読み出される（ステップＳＴ６４）。アドレスＡｄｄによって選択されたメモリセル（以下、選択メモリセル）のデ−タは、期待値“１”と比較される（ステップＳＴ６５）。
【０２１０】
即ち、消去状態と判別できる閾値の上限となる電位（消去ベリファイ電位）ＥＶＴ２を境界値とし、選択メモリセルの閾値が境界値よりも高ければ、選択メモリセルのデ−タは“０”と判定し、選択メモリセルの閾値が境界値よりも低ければ、選択メモリセルのデ−タは“１”と判定する。
【０２１１】
そして、選択メモリセルのデ−タと期待値“１”が不一致の場合、消去ＮＧと判断し、選択ブロック内の全てのメモリセルに対してデ−タの消去（フロ−ティングゲ−ト中の電子を抜く動作）を実行する。
【０２１２】
ここで、選択ブロック内の全てのメモリセルに対してデ−タの消去（一括消去）を実行しているが、これは、フラッシュＥＥＰＲＯＭに特有の動作である。よって、選択メモリセル以外の既に消去が完了しているメモリセルに対しても、消去動作が実行される。
【０２１３】
この消去動作は、予め設定された回数Ｌｉｍｉｔに達するまでは、選択メモリセルのデ−タが期待値“１”と一致するまで、繰り返して行われる（ステップＳＴ６６，ＳＴ６８，ＳＴ６９）。
【０２１４】
また、選択メモリセルに対する書き込み回数Ｃｙｃｌｅが予め設定された回数Ｌｉｍｉｔに達したときは、選択メモリセルのデ−タと期待値“１”が不一致であっても、消去動作を終了する。（ステップＳＴ６６）。
【０２１５】
この場合、消去不良が発生したことを示す信号ＥＲＲＯＲが“１”に設定される（ステップＳＴ６７）。
【０２１６】
一方、選択メモリセルのデ−タと期待値“１”が一致すれば、選択メモリセルの消去ＯＫと判断し、アドレスＡｄｄを１つ進めることにより、次のアドレスの選択メモリセルについて同様の動作が行われる。この時、タイマ２５の数値は、初期値にリセットされない。消去動作は、全メモリセルに対して行われるためである（ステップＳＴ７１）。
【０２１７】
また、選択メモリセルのデ−タと期待値“１”が一致する場合において、アドレスＡｄｄが、そのブロック内の最終アドレスであるときは、消去動作を終了する。この時、選択ブロック内のメモリセルの閾値分布は、例えば、図１３に示すようになっている。即ち、ブロック内の“１”状態のメモリセルの閾値分布の下限は、過消去ベリファイ電位ＯＥＶＴを下回ることがないため、この後、自己収束を行う必要もない（ステップＳＴ７０）。
【０２１８】
次に、消去不良の有無を示す信号ＥＲＲＯＲが“１”か否かを確認し、消去不良が発生している場合、即ち、信号ＥＲＲＯＲが“１”の場合には、その製品を不良品とみなし、書き換えテストを終了する（ステップＳＴ５）。
【０２１９】
消去が確実に実行された場合、即ち、信号ＥＲＲＯＲが“０”の場合には、書き換え回数Ｎが最大値Ｎｍａｘになっているか否かを確認し、書き換え回数Ｎが最大値Ｎｍａｘに達していないときは、再び、上述の書き込み動作と消去動作を実行する。
【０２２０】
書き換え回数Ｎが最大値Ｎｍａｘに達したときは、その製品を良品とみなし、書き換えテストを終了する（ステップＳＴ５）。
【０２２１】
【発明の効果】
以上、説明したように、本発明の不揮発性半導体メモリによれば、通常の書き込みベリファイ電位ＰＶＴ１及び通常の消去ベリファイ電位ＥＶＴ１の他に、新たに、このＰＶＴ１及びＥＶＴ１よりも高い書き込みベリファイ電位ＰＶＴ２及び消去ベリファイ電位ＥＶＴ２を生成できるようにしている。
【０２２２】
そして、例えば、この書き込みベリファイ電位ＰＶＴ２及び消去ベリファイ電位ＥＶＴ２を用いて、消去動作を行えば、過消去状態のメモリセルが発生することがなくなるため、自己収束をなくすことができる。よって、短い時間で消去動作を完了させることができる。
【０２２３】
特に、フラッシュＥＥＰＲＯＭでは、信頼性試験として、書き換えテスト（トンネル酸化膜の耐久性テスト）が実行されるが、このときの消去ベリファイ電位にＥＶＴ２を用いれば、消去動作時に自己収束を行う必要がないため、テスト時間の大幅な短縮が可能であり、テストコストを低減できる。また、書き換えテスト時における書き込みベリファイ電位にＰＶＴ２を用いれば、書き換えテスト時のトンネル酸化膜の電荷の通過量（閾値の差ＰＶＴ２−ＥＶＴ２に置き換えることができる）が通常動作時のトンネル酸化膜の電荷の通過量（ＰＶＴ１−ＥＶＴ１）に実質的に等しくなるため、書き換えテストの信頼性を向上できる。
【０２２４】
ところで、書き換えテストとは、書き込み動作と消去動作を繰り返し行うもので、書き込みベリファイ電位（閾値）と消去ベリファイ電位（閾値）により“０”又は“１”を判断する。つまり、書き換えテストにおいては、通常動作時に“０”又は“１”の判断の基準（閾値）となる読み出し電位Ｖｃｃは必要としないため、本発明の書き換えテストは、問題なく行うことができる。
【０２２５】
よって、書き換えテスト時においては、ＰＶＴ２及びＥＶＴ２を用いることでテスト時間の短縮を図り、通常動作時においては、ＰＶＴ１及びＥＶＴ１を用いることで電源電位（読み出し電位）Ｖｃｃの低電圧化に対応させることができる。この場合、通常動作では、当然に、消去動作に自己収束が必要となる。
【図面の簡単な説明】
【図１】本発明に関わるＮＯＲ型フラッシュＥＥＰＲＯＭを示す図。
【図２】消去ベリファイ電位を生成する回路を示す図。
【図３】図２の回路の動作波形を示す図。
【図４】書き込みベリファイ電位を生成する回路を示す図。
【図５】図４の回路の動作波形を示す図。
【図６】本発明の原理を説明する図。
【図７】本発明の原理を説明する図。
【図８】本発明の原理を説明する図。
【図９】本発明が適用された自動消去シーケンスを示す図。
【図１０】書き込みのサブルーチンを示す図。
【図１１】書き込み後の閾値分布を示す図。
【図１２】消去のサブルーチンを示す図。
【図１３】消去後の閾値分布を示す図。
【図１４】本発明が適用された書き込みテストのシーケンスを示す図。
【図１５】従来のＮＯＲ型フラッシュＥＥＰＲＯＭを示す図。
【図１６】図１５のメモリセルアレイを示す図。
【図１７】図１６の破線Ｘで囲んだ領域のデバイス構造を示す図。
【図１８】図１７のＸＶＩＩＩ−ＸＶＩＩＩ線に沿う断面図。
【図１９】図１７のＸＩＸ−ＸＩＸ線に沿う断面図。
【図２０】従来の自動消去シーケンスを示す図。
【図２１】書き込みのサブルーチンを示す図。
【図２２】書き込み後の閾値分布を示す図。
【図２３】消去のサブルーチンを示す図。
【図２４】消去後の閾値分布を示す図。
【図２５】自己収束のサブルーチンを示す図。
【図２６】自己収束後の閾値分布を示す図。
【図２７】従来の書き込みテストのシーケンスを示す図。
【図２８】メモリセルの過消去について示す図。
【符号の説明】
１１                          ：メモリセルアレイ、
１２                          ：アドレスレジスタ、
１３                          ：マルチプレクサ、
１４                          ：ロウデコーダ、
１５                          ：カラムデコーダ、
１６                          ：アドレスカウンタ、
１７                          ：入出力バッファ、
１８                          ：データ入力レジスタ、
１９                          ：コマンドレジスタ、
２０                          ：カラム選択回路、
２１                          ：制御回路、
２２                          ：電位発生回路、
２３                          ：ベリファイ回路、
２４                          ：最終アドレス検知回路、
２５                          ：タイマ、
２６                          ：クロック発生回路、
３１〜３４                    ：オペアンプ、
１１０                        ：Ｐ型シリコン基板、
１１１                        ：Ｎ型ウェル、
１１２                        ：Ｐ型ウェル、
１１３                        ：フィールド酸化膜、
１１４                        ：シリコン酸化膜（ゲート絶縁膜）、
１１５                        ：フローティングゲート、
１１６，１１８                ：シリコン酸化膜、
１１７                        ：コントロールゲート（ワード線）、
１１９                        ：ビット線、
１２０                        ：コンタクトホール、
１２１                        ：ソース領域、
１２２                        ：ドレイン領域、
Ｐ１，Ｐ２                    ：ＰチャネルＭＯＳトランジスタ、
Ｎ１〜Ｎ６                    ：ＮチャネルＭＯＳトランジスタ、
ＮＡ１〜ＮＡ４                ：ナンド回路、
Ｉ１〜Ｉ６                    ：インバータ、
Ｒ１〜Ｒ６                    ：抵抗。
【図１】
0003808656.tif 000003
【図２】
0003808656.tif 000004
【図３】
0003808656.tif 000005
【図４】
0003808656.tif 000006
【図５】
0003808656.tif 000007
【図６】
0003808656.tif 000008
【図７】
0003808656.tif 000009
【図８】
0003808656.tif 000010
【図９】
0003808656.tif 000011
【図１０】
0003808656.tif 000012
【図１１】
0003808656.tif 000013
【図１２】
0003808656.tif 000014
【図１３】
0003808656.tif 000015
【図１４】
0003808656.tif 000016
【図１５】
0003808656.tif 000017
【図１６】
0003808656.tif 000018
【図１７】
0003808656.tif 000019
【図１８】
0003808656.tif 000020
【図１９】
0003808656.tif 000021
【図２０】
0003808656.tif 000022
【図２１】
0003808656.tif 000023
【図２２】
0003808656.tif 000024
【図２３】
0003808656.tif 000025
【図２４】
0003808656.tif 000026
【図２５】
0003808656.tif 000027
【図２６】
0003808656.tif 000028
【図２７】
0003808656.tif 000029
【図２８】
0003808656.tif 000030