(57)【特許請求の範囲】
【請求項１】
データを格納するメモリセルと，
ベリファイ開始信号が入力されると，前記メモリセルに格納されたデータの検証を行い，所望の結果が得られた場合に適合信号を出力するベリファイ回路と，
前記適合信号が入力されるまで前記メモリセルに対するデータ・ライト動作を所定回数反復し，各データ・ライト動作の後，前記ベリファイ開始信号を出力するデータ書き込み制御回路と，
テストモードに設定された場合，前記適合信号を無効化する適合信号無効化手段と，
前記テストモードに設定された場合，前記ベリファイ回路が前記テストモードに設定された後に最初に出力した適合信号を受けると活性化して，以降前記データ書き込み制御回路から出力される前記ベリファイ開始信号を無効化するベリファイ動作省略化手段と，
前記データ書き込み制御回路による前記データ・ライト動作の反復回数をカウントし，当該反復回数に基づいて前記データ・ライト動作の終了を判定するデータ書き込みカウンタ回路と，
を備えたことを特徴とする，半導体記憶装置。
【請求項２】
前記データ書き込みカウンタ回路は，前記データ書き込み制御回路による前記データ・ライト動作の前記反復回数が所定の最大書き込み回数に達した場合に，前記データ書き込み制御回路にデータ・ライト動作不良信号を出力し，
前記データ書き込み制御回路は，前記データ・ライト動作不良信号を受けると，前記データ・ライト動作を終了することを特徴とする，請求項１に記載の半導体記憶装置。
【請求項３】
活性化された前記ベリファイ動作省略化手段は，
前記データ書き込み制御回路から前記ベリファイ開始信号を受けると，前記データ書き込み制御回路に対して，前記ベリファイ開始信号の出力を停止させる信号を与えることを特徴とする，請求項１または２に記載の半導体記憶装置。
【請求項４】
前記ベリファイ動作省略化手段が活性化した後のメモリセルに対するデータ・ライト動作は，
前記メモリセルを構成するトランジスタのソース，ドレイン，およびゲートのうち，ゲートにのみ電圧を印加することによって実行されるものであることを特徴とする，請求項１，２，または３に記載の半導体記憶装置。
【請求項５】
以下の通常モードとテストモードを有する半導体記憶装置のデータ書き込み方法。
前記通常モードに設定された場合：
所定回数に達するまで，または，メモリセルのスレショルド電圧が所定値に達するまでデータ・ライト動作とデータ・ベリファイ動作を順番に繰り返し実行する。
前記テストモードに設定された場合：
メモリセルのスレショルド電圧が所定値に達するまでデータ・ライト動作とデータ・ベリファイ動作を順番に繰り返し実行し，前記メモリセルのスレショルド電圧が所定値に達した後は，所定回数に達するまでデータ・ライト動作のみを繰り返し実行する。
【請求項６】
前記テストモードに設定された場合，メモリセルのスレショルド電圧が所定値に達した後に所定回数に達するまで繰り返し実行されるデータ・ライト動作は，
前記メモリセルを構成するトランジスタのソース，ドレイン，およびゲートのうち，ゲートにのみ電圧を印加することによって実行されるものであることを特徴とする，請求項５に記載の半導体記憶装置のデータ書き込み方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は，半導体記憶装置および半導体記憶装置のデータ書き込み方法に関するものである。
【０００２】
【従来の技術】
ベリファイ（検証）機能付きのフラッシュメモリやＥＥＰＲＯＭ等の不揮発性半導体記憶装置に対して所定のデータがプログラムされる（書き込まれる）場合，データ・ライト動作とデータ・ベリファイ動作が複数回反復される。不揮発性半導体記憶装置が備えるベリファイ回路は，複数のメモリセルのスレショルド電圧Ｖｔをチェックし，それぞれが所望の値に達したとき適合信号を出力する。データ書き込み制御回路は，ベリファイ回路から適合信号を受け取るとそれ以降のライト動作を中止する。この時点で不揮発性半導体記憶装置に対するデータ・プログラミングが完了となる。
【０００３】
通常，不揮発性半導体記憶装置において，データ・ライト動作／データ・ベリファイ動作が３回程度繰り返されるとデータ・プログラミングは完了する。つまり，データ・ライト動作／データ・ベリファイ動作の反復は，データ書き込みカウンタ回路に設定されている最大データ書き込み回数（例えば８回）に達する前に終了する。このため，従来，不揮発性半導体記憶装置の製品テスト工程において，データ・ライト動作を最大限繰り返した場合に要する時間を把握することは困難であった。また，メモリセル毎にベリファイがパス（適合）するまでのデータ・ライト動作回数が異なるため，チップ間あるいはウェハ間のメモリセル特性のばらつきを評価することも事実上不可能であった。
【０００４】
この問題の解決を図るべく，テストモードに設定されたときにはデータ書き込みカウンタ回路に設定されている最大データ書き込み回数に達するまでデータ・ライト動作／データ・ベリファイ動作を繰り返す不揮発性半導体記憶装置が既に提案されている（特開平１１‐０８６５７５号公報）。この不揮発性半導体記憶装置によれば，最大データ書き込み回数に達する前にベリファイがパスした場合，それを無視してデータ・ライト動作が繰り返されることになる。
【０００５】
【発明が解決しようとする課題】
しかしながら，従来の不揮発性半導体記憶装置によれば，ベリファイがパスした後に繰り返される各データ・ライト動作は，ベリファイがパスする以前と同様に，ベリファイ動作を伴っていた。これは，不揮発性半導体記憶装置の製品テストにかかる時間を短縮するという観点からすれば好ましい状態とは言えない。
【０００６】
本発明は，上記のような問題点に鑑みてなされたものであり，その目的は，データ・ライト動作を最大回数繰り返す場合であっても，所要時間を最小限に抑えることが可能な，新規かつ改良された半導体記憶装置および半導体記憶装置のデータ書き込み方法を提供するものである。
【０００７】
【課題を解決するための手段】
上記課題を解決するために，本発明の第１の観点によれば，データを格納するメモリセルと，ベリファイ開始信号が入力されると，メモリセルに格納されたデータの検証を行い，所望の結果が得られた場合に適合信号を出力するベリファイ回路と，適合信号が入力されるまでメモリセルに対するデータ・ライト動作を所定回数反復し，各データ・ライト動作の後，ベリファイ開始信号を出力するデータ書き込み制御回路と，テストモードに設定された場合，ベリファイ回路がテストモードに設定された後に最初に出力した適合信号を受けると活性化して，以降データ書き込み制御回路から出力されるベリファイ開始信号を無効化するベリファイ動作省略化手段と，データ書き込み制御回路によるデータ・ライト動作の反復回数をカウントし，当該反復回数に基づいてデータ・ライト動作の終了を判定するデータ書き込みカウンタ回路と，を備えたことを特徴とする半導体記憶装置が提供される（請求項１）。
【０００８】
かかる構成によれば，テストモードに設定されると，データ・ライト動作の反復回数が所定回数に達するまでにベリファイ回路が適合信号を出力しても，適合信号無効化手段がこの適合信号を無効とする。したがって，データ・ライト動作を所定回数反復することが可能となる。さらに，テストモードに設定されると，ベリファイ動作省略化手段は，ベリファイ回路が最初に出力した適合信号を受けて活性化する。そして，活性化したベリファイ動作省略化手段は，データ書き込み制御回路から出力されるベリファイ開始信号を無効とする。したがって，データ・ライト動作を所定回数反復するにあたり，データ・ベリファイ動作を省略することが可能となる。
【００１０】
活性化されたベリファイ動作省略化手段は，データ書き込み制御回路からベリファイ開始信号を受けると，データ書き込み制御回路に対して，ベリファイ開始信号の出力を停止させる信号を与えることが好ましい（請求項３）。これによって，短い周期でデータ・ライト動作が繰り返されることになる。
【００１１】
ベリファイ動作省略化手段が活性化した後のメモリセルに対するデータ・ライト動作は，メモリセルを構成するトランジスタのソース，ドレイン，およびゲートのうち，ゲートにのみ電圧を印加することによって実行されるものであることが好ましい（請求項４）。メモリセルのスレショルド電圧を所定レベルに調整することが可能となる。
【００１２】
本発明の第２の観点によれば，通常モードとテストモードを有する半導体記憶装置のデータ書き込み方法が提供される。そして，通常モードに設定された場合，所定回数に達するまで，または，メモリセルのスレショルド電圧が所定値に達するまでデータ・ライト動作とデータ・ベリファイ動作が順番に繰り返し実行される。また，テストモードに設定された場合，メモリセルのスレショルド電圧が所定値に達するまでデータ・ライト動作とデータ・ベリファイ動作が順番に繰り返し実行され，メモリセルのスレショルド電圧が所定値に達した後は，所定回数に達するまでデータ・ライト動作のみが繰り返し実行される（請求項５）。
【００１３】
この方法によれば，テストモードにおいて，メモリセルのスレショルド電圧が所定値に達した後は，データ・ベリファイ動作を伴わないデータ・ライト動作が繰り返し実行される。したがって，短時間でテストを終了させることが可能となる。
【００１５】
テストモードにおいて所定回数繰り返されるデータ・ライト動作は，メモリセルを構成するトランジスタのソース，ドレイン，およびゲートのうち，ゲートにのみ電圧を印加することによって実行されるものであることが好ましい（請求項６）。メモリセルのスレショルド電圧を所定レベルに調整することが可能となる。
【００１６】
【発明の実施の形態】
以下に添付図面を参照しながら，本発明にかかる半導体記憶装置および半導体記憶装置のデータ書き込み方法の好適な実施の形態について詳細に説明する。なお，以下の説明および添付された図面において，略同一の機能および構成を有する要素については，同一符号を付することによって重複説明を省略する。
【００１７】
まず，テストモードに設定された場合，データ書き込みカウンタ回路に設定されている最大データ書き込み回数に達するまでデータ・ライト（データ書き込み）動作／データ・ベリファイ（データ検証）動作を繰り返す半導体記憶装置としてのフラッシュメモリ１００の構成およびその動作について説明する。
【００１８】
フラッシュメモリ１００は，図１に示すように，メモリセルＭＣ，データ書き込み制御回路ＷＣＣ，データ書き込みカウンタ回路ＷＣＴ，ベリファイ回路ＶＣ，および適合信号無効化手段３から構成されている。
【００１９】
データ書き込み制御回路ＷＣＣは，データ・ライト動作（以下，「ライト動作」と言う）の際，メモリセルＭＣおよびデータ書き込みカウンタ回路ＷＣＴに対してプログラム信号ＰＧを出力し，ライト動作終了後にベリファイ回路ＶＣに対してベリファイ開始信号ＶＲを出力する。
【００２０】
ベリファイ回路ＶＣは，データ・ベリファイ動作（以下，「ベリファイ動作」と言う）の間，メモリセルＭＣに対してデータ電圧レベルチェック信号ＤＶＣを出力し，メモリセルＭＣからデータ電圧レベル信号ＤＶを受ける。そして，ベリファイ動作を終了したとき，データ書き込み制御回路ＷＣＣに対してベリファイ終了信号ＶＤＯＮＥを出力する。さらに，ベリファイ回路ＶＣは，ベリファイがパスしたか否かを示す適合信号ＶＰＡＳＳを適合信号無効化手段３に与える。
【００２１】
適合信号無効化手段３は，テストパッドＴＰが論理的高レベル（以下，「Ｈレベル」と言う）に設定されているときには，ベリファイ回路ＶＣから受けた適合信号ＶＰＡＳＳを，その論理レベルを維持して，データ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に与える。これに対して，テストパッドＴＰが論理的低レベル（以下，「Ｌレベル」と言う）に設定されているときには適合信号ＶＰＡＳＳをＬレベル信号に変換して，データ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に与える。
【００２２】
データ書き込みカウンタ回路ＷＣＣは，設定された最大データ書き込み回数に達するまでライト動作が反復されてもベリファイがパスしなかったとき，最終的なデータ書き込みの不良を示すライト動作不良信号ＦＡＩＬをデータ書き込み制御回路ＷＣＣに対して出力する。
【００２３】
以上のように構成されたフラッシュメモリ１００のデータ・プログラム動作を，図２のフローチャートおよび図３のタイミングチャートに基づいて説明する。
【００２４】
まず，テストパッドＴＰをＨレベルに固定することによって通常モードに設定されたフラッシュメモリ１００のデータ・プログラム動作を説明する。
【００２５】
フラッシュメモリ１００は，データ・プログラム動作を開始するにあたり，まずデータ・イレース（消去）動作を実行し（ステップＳ１），続いてライト動作を実行する（ステップＳ２）。
【００２６】
ライト動作が終了した時点で，データ書き込み制御回路ＷＣＣは，ベリファイ開始信号ＶＲをベリファイ回路ＶＣに対して出力する。このベリファイ開始信号ＶＲを受けたベリファイ回路ＶＣは，ベリファイ動作を開始する（ステップＳ３）。
【００２７】
ベリファイが終了した時点で，ベリファイ回路ＶＣは，ワンショットのベリファイ終了信号ＶＤＯＮＥをデータ書き込み制御回路ＷＣＣに対して出力し，それと同時に適合信号ＶＰＡＳＳを適合信号無効化手段３に対して出力する。適合信号ＶＰＡＳＳは，適合信号無効化手段３に属するＮＡＮＤゲート１の一方の入力端子に入力される。ベリファイ回路ＶＣからベリファイ終了信号ＶＤＯＮＥを受け取ったデータ書き込み制御回路ＷＣＣは，ベリファイ開始信号ＶＲの出力を停止する。
【００２８】
ベリファイ回路ＶＣは，ベリファイ動作として，メモリセルＭＣから出力されるデータ電圧レベル信号ＤＶをチェックする。そして，ライト動作によってメモリセルＭＣのスレショルド電圧Ｖｔが所定レベルに達しなかったと判断するとＬレベルの適合信号ＶＰＡＳＳを出力し，所定レベルに達したと判断するとＨレベルの適合信号ＶＰＡＳＳを出力する（ステップＳ４）。
【００２９】
ベリファイ回路ＶＣがＬレベルの適合信号ＶＰＡＳＳを出力した場合，テストパッドＴＰがＨレベルに調整されている適合信号無効化手段３は，Ｌレベル信号をデータ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に与える。
【００３０】
ライト動作の繰り返し回数が，データ書き込みカウンタ回路ＷＣＴに設定されている最大書き込み回数（ここでは８回）に達していなければ，データ書き込みカウンタ回路ＷＣＴはライト動作不良信号ＦＡＩＬを出力せず，データ書き込み制御回路ＷＣＣにはライト動作不良信号ＦＡＩＬが入力されない。上述の通り，データ書き込み制御回路ＷＣＣは，ベリファイ回路ＶＣからベリファイ終了信号ＶＤＯＮＥを受けると，ベリファイ開始信号ＶＲの出力を停止する（ベリファイ開始信号ＶＲをＬレベルとする）。そしてこれと同時に，データ書き込み制御回路ＷＣＣは，ライト動作不良信号ＦＡＩＬが入力されておらず，かつ，適合信号入力端子（ＶＰＡＳＳ）がＬレベルであることを検出して，メモリセルＭＣおよびデータ書き込みカウンタ回路ＷＣＴに対してプログラム信号ＰＧを出力してライト動作を再実行する。これに対して，ライト動作の繰り返し回数が，データ書き込みカウンタ回路ＷＣＴに設定されている最大書き込み回数に達していれば，データ書き込みカウンタ回路ＷＣＴは，データ書き込み制御回路ＷＣＣに対してライト動作不良信号ＦＡＩＬを出力する（ステップＳ５）。そして，データ・プログラム動作は「失敗」終了する。
【００３１】
ベリファイ回路ＶＣがＨレベルの適合信号ＶＰＡＳＳを出力した場合，テストパッドＴＰがＨレベルに調整されている適合信号無効化手段３は，Ｈレベル信号をデータ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に与える（ステップＳ６）。ここでデータ・プログラム動作は「成功」終了する。
【００３２】
以上のように，フラッシュメモリ１００が通常モードに設定された場合，すなわちテストパッドＴＰがＨレベルに固定された場合，適合信号無効化手段３は，ベリファイ回路ＶＣから出力される適合信号ＶＰＡＳＳの論理レベルに一致する信号をデータ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に与える。そして，フラッシュメモリ１００は，ベリファイがパスして適合信号ＶＰＡＳＳがＨレベルとなるまで，または，ライト動作の繰り返し回数が設定上の最大書き込み回数に達するまでライト動作を反復する。
【００３３】
次に，テストパッドＴＰをＬレベルに固定することによってテストモードに設定されたフラッシュメモリ１００のデータ・プログラム動作を説明する。
【００３４】
テストモードに設定されたフラッシュメモリ１００は，ステップＳ１〜ステップＳ５については，上述の通常モードに設定された場合と同様に動作する。両者の相違点は，ベリファイ回路ＶＣがＨレベルの適合信号ＶＰＡＳＳを出力した後の動作にある。
【００３５】
通常モードの場合，テストパッドＴＰがＨレベルに固定されているため，適合信号無効化手段３は，入力されるＨレベルの適合信号ＶＰＡＳＳに応じて，Ｈレベルの信号をデータ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に与える。この結果，例えライト動作の実行回数が最大書き込み回数に達していなくても，その時点でデータ・プログラム動作は「成功」終了する。
【００３６】
ところが，テストモードの場合，テストパッドＴＰがＬレベルに固定されているため，適合信号無効化手段３は，入力される適合信号ＶＰＡＳＳの論理レベルとは無関係にＬレベル信号をデータ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に与える。つまり，ベリファイ回路ＶＣがＨレベルの適合信号ＶＰＡＳＳを出力しても，適合信号無効化手段３は，適合信号ＶＰＡＳＳに代えて，Ｌレベル信号をデータ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に与えることになる。このため，データ書き込み制御回路ＷＣＣは，再びプログラム信号ＰＧを出力し，ライト動作開始の指示を繰り返す（ステップＳ６）。
【００３７】
データ書き込みカウンタ回路ＷＣＴは，データ書き込み制御回路ＷＣＣから出力されたプログラム信号ＰＧを受けてライト動作の回数をカウントする。そして，ライト動作の繰り返し回数が最大書き込み回数に達したところでライト動作不良信号ＦＡＩＬをデータ書き込み制御回路ＷＣＣに対して出力する。ここでテストモードにおけるデータ・プログラム動作が終了する。
【００３８】
図３のタイミングチャートは，フラッシュメモリ１００をテストモードに設定した場合のデータ・プログラム動作を示している。ここでは，４回目のベリファイ動作においてベリファイがパスし，適合信号ＶＰＡＳＳがＨレベルに立ち上がっているが，この時点ではデータ・プログラム動作は終了せず，以後もライト動作とベリファイ動作が繰り返されている。そして，ライト動作とベリファイ動作の繰り返し回数が最大書き込み回数（ここでは８回）に達したところでデータ・プログラム動作が終了している。
【００３９】
以上のように，フラッシュメモリ１００およびフラッシュメモリ１００のデータ・プログラム動作によれば，データ・ライト動作を最大限繰り返した場合に要する時間やメモリセルの書き込み深さを把握することが可能となる。しかし，図３から明らかなように，ベリファイがパスするまで反復される各ライト動作のみならず，途中でベリファイがパスした後に継続反復される各ライト動作にもベリファイ動作が付随している。ライト動作を最大回数繰り返すテストに要する時間を短縮するためには，各ライト動作後に実行されるベリファイ動作を適宜省略することが好ましい。
【００４０】
［第１の実施の形態］
本発明の第１の実施の形態にかかる半導体記憶装置としてのフラッシュメモリ１０１の構成およびその動作について説明する。
【００４１】
フラッシュメモリ１０１は，図４に示すように，メモリセルＭＣ，データ書き込み制御回路ＷＣＣ，データ書き込みカウンタ回路ＷＣＴ，ベリファイ回路ＶＣ，適合信号無効化手段３，およびベリファイ動作省略化手段１０から構成されている。すなわち，フラッシュメモリ１０１は，上述のフラッシュメモリ１００に対してベリファイ動作省略化手段１０が追加された構成を有している。
【００４２】
ベリファイ動作省略化手段１０は，ラッチ回路ＬＣ，ＮＡＮＤゲート５，６，インバータ７，８，ＮＯＲゲート９，および遅延回路ＤＬＣから構成されている。
【００４３】
ラッチ回路ＬＣは，ベリファイ回路ＶＣから出力されたＨレベルの適合信号ＶＰＡＳＳをラッチして，これをＨレベルのラッチ適合信号ＶＰＬとして出力する。なお，ラッチ適合信号ＶＰＬの初期値はＬレベルである。
【００４４】
ＮＡＮＤゲート５の一方の入力端子は，データ書き込み制御回路ＷＣＣのベリファイ開始信号出力端子（ＶＲ）に接続されている。また，ＮＡＮＤゲート５の他方の入力端子は，ラッチ回路ＬＣのラッチ適合信号出力端子（ＶＰＬ）に接続されている。ＮＡＮＤゲート５の出力端子は，遅延回路ＤＬＣを介してＮＡＮＤゲート６の一方の入力端子に接続されている。この遅延回路ＤＬＣは，ＮＡＮＤゲート５が出力する信号を所定の時間遅延させた上で，ノードＮ１２を介してＮＡＮＤゲート６の一方の入力端子に与える機能を有する。
【００４５】
ＮＡＮＤゲート６の他方の入力端子は，インバータ８の出力端子に接続されており，ＮＡＮＤゲート６の出力端子は，ノードＮ１３を介してデータ書き込み制御回路ＷＣＣのベリファイ終了信号入力端子（ＶＤＯＮＥ）に接続されている。
【００４６】
インバータ８の入力端子は，ベリファイ回路ＶＣのベリファイ終了信号出力端子（ＶＤＯＮＥ）に接続されている。
【００４７】
インバータ７の入力端子は，データ書き込み制御回路ＷＣＣのベリファイ開始信号出力端子（ＶＲ）に接続されており，インバータ７の出力端子は，ＮＯＲゲート９の一方の入力端子に接続されている。
【００４８】
ＮＯＲゲート９の他方の入力端子は，ラッチ回路ＬＣのラッチ適合信号出力端子（ＶＰＬ）に接続されており，ＮＯＲゲート９の出力端子は，ノードＮ１１を介してベリファイ回路ＶＣのベリファイ開始信号入力端子（ＶＲ）に接続されている。
【００４９】
適合信号無効化手段３に属するＮＡＮＤゲート１の一方の入力端子は，ベリファイ回路ＶＣの適合信号出力端子（ＶＰＡＳＳ）に接続されており，ＮＡＮＤゲート１の他方の入力端子は，テストパッドＴＰに接続されている。ＮＡＮＤゲート１の出力端子は，インバータ２を介してデータ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に接続されている。
【００５０】
以上のように構成されたフラッシュメモリ１０１のデータ・プログラム動作を，図５のフローチャートおよび図６のタイミングチャートに基づいて説明する。
【００５１】
まず，図５のフローチャートを用いて，本実施の形態にかかるデータ・プログラム動作を説明する。
【００５２】
フラッシュメモリ１０１は，データ・プログラム動作を開始するにあたり，まずデータ・イレース（消去）動作を実行し（ステップＳ１１），続いてライト動作を実行する（ステップＳ１２）。
【００５３】
ライト動作の後，ベリファイ動作の前に，ライト動作の繰り返し回数がデータ書き込みカウンタ回路ＷＣＴに設定されている最大書き込み回数に達しているか否かを判断する（ステップＳ１３）。
【００５４】
ライト動作の繰り返し回数が最大書き込み回数に達している場合，データ・プログラム動作を終了する。ライト動作の繰り返し回数が最大書き込み回数に達していない場合，データが書き込まれる対象となるメモリセルＭＣが既にベリファイをパスしているか否かを判断する。具体的にはラッチ適合信号ＶＰＬの論理レベルをチェックする（ステップＳ１４）。この位置にラッチ適合信号ＶＰＬの論理レベルをチェックするステップを用意することによって，フラッシュメモリ１０１がテストモードに設定されたとき，すなわちテストパッドＴＰがＬレベルとされ適合信号無効化手段３が有効とされたとき，フラッシュメモリ１０１は，一旦ベリファイがパスした後はベリファイ動作を伴わないライト動作を繰り返すことになる。この動作については，後に詳しく説明する。
【００５５】
ラッチ適合信号ＶＰＬがＨレベルの場合，すなわちメモリセルＭＣに対して既に１回以上のライト動作を実行しており，しかもベリファイがパスしている場合，再度のベリファイ動作を実行せず，次のライト動作を開始する（ステップＳ１２）。以降，ライト動作の繰り返し回数が最大書き込み回数に達するまで，ベリファイ動作を行うことなくライト動作のみを反復する（ステップＳ１２，Ｓ１３，Ｓ１４のループ）。
【００５６】
一方，ラッチ適合信号ＶＰＬがＬレベルの場合，すなわちベリファイが一度もパスしてない場合，ベリファイ動作を実行し（ステップＳ１５），適合信号ＶＰＡＳＳの論理レベルをチェックする（ステップＳ１６）。
【００５７】
適合信号ＶＰＡＳＳがＬレベルの場合，すなわちベリファイの結果が「フェイル（不適合）」である場合，次のライト動作を開始する（ステップＳ１２）。適合信号ＶＰＡＳＳがＨレベルの場合，すなわちベリファイがパスしている場合，ラッチ適合信号ＶＰＬをＨレベルにラッチし，テストパッドＴＰの論理レベルをチェックする（ステップＳ１７）。
【００５８】
テストパッドＴＰがＬレベルに設定されている場合，すなわちフラッシュメモリ１０１がテストモードに設定されている場合，次のライト動作を開始する（ステップＳ１２）。テストパッドＴＰがＨレベルに設定されている場合，すなわちフラッシュメモリ１０１が通常モードに設定されている場合，データ・プログラム動作を終了する。
【００５９】
次に，図４の回路図および図６のタイミングチャートを用いて，フラッシュメモリ１０１の通常モード動作およびテストモード動作を説明する。
【００６０】
＜通常モード＞
テストパッドＴＰをＨレベルに設定することによってフラッシュメモリ１０１は通常モードにセットされる。
【００６１】
データ書き込み制御回路ＷＣＣは，Ｈレベルのプログラム信号ＰＧを出力してメモリセルＭＣに対するライト動作を行った後，Ｈレベルのベリファイ開始信号ＶＲを出力する。このベリファイ開始信号ＶＲは，インバータ７を介してＮＯＲゲート９の一方の入力端子に入力されるとともに，ＮＡＮＤゲート５の一方の入力端子に入力される。
【００６２】
ベリファイがパスするまでは，ラッチ回路ＬＣが出力するラッチ適合信号ＶＰＬはＬレベル（初期値）であるため，ＮＡＮＤゲート５の他方の入力端子とＮＯＲゲート９の他方の入力端子はともにインアクティブ状態を維持する。
【００６３】
したがって，ＮＯＲゲート９は，データ書き込み制御回路ＷＣＣが出力するベリファイ開始信号ＶＲに同期し，かつ，その論理レベルに一致する論理レベルを有する信号を，ノードＮ１１を介してベリファイ回路ＶＣのベリファイ開始信号入力端子（ＶＲ）に与える。
【００６４】
また，ＮＡＮＤゲート５は，データ書き込み制御回路ＷＣＣが出力するベリファイ開始信号ＶＲとは無関係にＨレベルの信号を遅延回路ＤＬＣに与える。このため，ノードＮ１２に接続されているＮＡＮＤゲート６の一方の入力端子はＨレベルに固定される。したがって，ＮＡＮＤゲート６は，ベリファイ動作が終了したときベリファイ回路ＶＣが出力するベリファイ終了信号ＶＤＯＮＥに同期し，かつ，その論理レベルに一致する論理レベルを有する信号を，ノードＮ１３を介してデータ書き込み制御回路ＷＣＣのベリファイ終了信号入力端子（ＶＤＯＮＥ）に与える。
【００６５】
ベリファイの結果が「フェイル」のとき，データ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）はＬレベルを維持するため，ライト動作が反復される。一方，ベリファイがパスしたときには，ベリファイ回路ＶＣがＨレベルの適合信号ＶＰＡＳＳを出力するため，適合信号無効化手段３は，データ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に対してＨレベル信号を与える。ここで，データ・プログラム動作が終了する。
【００６６】
以上のように，通常モードにセットされたフラッシュメモリ１０１は，ライト動作を繰り返し，ベリファイがパスした時点でデータ・プログラム動作を終了する。
【００６７】
＜テストモード＞
テストパッドＴＰをＬレベルに設定することによってフラッシュメモリ１０１はテストモードにセットされる。
【００６８】
テストモードにセットされた場合も通常モードにセットされた場合と同様に，ベリファイがパスするまでは，ラッチ回路ＬＣが出力するラッチ適合信号ＶＰＬはＬレベル（初期値）であるため，ＮＡＮＤゲート５の他方の入力端子とＮＯＲゲート９の他方の入力端子はともにインアクティブ状態を維持する。したがって，ベリファイ回路ＶＲのベリファイ開始信号入力端子（ＶＲ）には，データ書き込み制御回路ＷＣＣが出力するベリファイ開始信号ＶＲに同期し，かつ，その論理レベルに一致する論理レベルを有する信号が入力され，データ書き込み制御回路ＷＣＣのベリファイ終了信号入力端子（ＶＤＯＮＥ）には，ベリファイ回路ＶＲが出力するベリファイ終了信号ＶＤＯＮＥに同期し，かつ，その論理レベルに一致する論理レベルを有する信号が入力される。
【００６９】
ベリファイの結果が「フェイル」のとき，テストモードにセットされたフラッシュメモリ１０１は，通常モードにセットされた場合と同様に動作する。すなわち，データ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）はＬレベルに維持され，ライト動作が反復される。
【００７０】
一方，ベリファイがパスしたときには，テストモードにセットされたフラッシュメモリ１０１は，次のように動作する。
【００７１】
テストパッドＴＰがＬレベルに調整されているため，ベリファイ回路ＶＣがＨレベルの適合信号ＶＰＡＳＳを出力しても，データ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）は，適合信号無効化手段３によってＬレベルに固定される。したがって，ライト動作が反復される。
【００７２】
ラッチ回路ＬＣは，Ｈレベルの適合信号ＶＰＡＳＳを受けてＨレベルのラッチ適合信号ＶＰＬを出力する。このため，以後ＮＡＮＤゲート５の他方の入力端子とＮＯＲゲート９の他方の入力端子はともにアクティブ状態を維持する。
【００７３】
上述の通り，テストモードにセットされたフラッシュメモリ１０１は，一旦ベリファイがパスしても以後ライト動作をその回数が最大書き込み回数に達するまで反復する。ただし，ベリファイがパスした後，データ書き込み制御回路ＷＣＣからＨレベルのベリファイ開始信号ＶＲが出力されると，ＮＡＮＤゲート５，遅延回路ＤＬＣ，およびＮＡＮＤゲート６の動作によって，ノードＮ１３およびデータ書き込み制御回路ＷＣＣのベリファイ終了信号入力端子（ＶＤＯＮＥ）には，ベリファイ開始信号ＶＲに対して所定の遅延を有する信号が入力される。そして，図６のタイミングチャートに示すように，データ書き込み制御回路ＷＣＣは，ベリファイ終了信号入力端子（ＶＤＯＮＥ）に入力される信号の立ち上がりエッジに同期して，ベリファイ開始信号ＶＲをＨレベル（アクティブ）からＬレベル（インアクティブ）に遷移させる。
【００７４】
遅延回路ＤＬＣの時定数を調整して遅延時間を短く設定すれば，データ書き込み制御回路ＷＣＣは，Ｈレベルのベリファイ開始信号ＶＲを出力してすぐにベリファイ終了信号入力端子（ＶＤＯＮＥ）にベリファイ終了信号ＶＤＯＮＥのダミー信号を受けることになる。加えて，データ書き込み制御回路ＷＣＣは，適合信号入力端子（ＶＰＡＳＳ）に適合信号無効化手段３からＬレベルの信号を受けている。したがって，データ書き込み制御回路ＷＣＣは，極めて短い間Ｈレベルのベリファイ開始信号ＶＲを出力した後，速やかにプログラム信号ＰＧを出力することになる。
【００７５】
また，一旦ベリファイがパスすると，ラッチ回路ＬＣはラッチ適合信号ＶＰＬをＨレベルに保持し，ノードＮ１１に接続されたベリファイ回路ＶＣのベリファイ開始信号入力端子（ＶＲ）はＬレベルに固定される。ベリファイ開始信号入力端子（ＶＲ）がＬレベルであれば，ベリファイ動作は行われず，ベリファイ回路ＶＣはＨレベルの適合信号ＶＰＳＳを出力しない。したがって，ベリファイがパスした後は，ライト動作のみが繰り返され，ベリファイ動作は省略される。そして，ライト動作の繰り返し回数が最大書き込み回数に達したところで，データ・プログラム動作が終了する。
【００７６】
以上のように，第１の実施の形態にかかるフラッシュメモリ１０１およびそのデータ・プログラム動作によれば，テストモードに設定された場合，ベリファイがパスした後のデータ書き込み制御回路ＷＣＣは，Ｈレベルのベリファイ開始信号ＶＲを出力してすぐにベリファイ終了信号入力端子（ＶＤＯＮＥ）にベリファイ終了信号ＶＤＯＮＥのダミー信号を受けることになる。また，一旦ベリファイがパスしてしまえば，ベリファイ回路ＶＣはベリファイ動作を行うことはない。したがって，ベリファイがパスした後は，ベリファイ動作を伴わないライト動作が短い周期で繰り返されることになり，結果として，テストに要する時間の短縮が実現する。
【００７７】
［第２の実施の形態］
本発明の第２の実施の形態にかかる半導体記憶装置としてのフラッシュメモリ１０２の構成およびその動作について説明する。
【００７８】
フラッシュメモリ１０２は，図７に示すように，メモリセルＭＣ，データ書き込み制御回路ＷＣＣ，データ書き込みカウンタ回路ＷＣＴ，ベリファイ回路ＶＣ，適合信号無効化手段３，およびベリファイ動作省略化手段２０から構成されている。すなわち，フラッシュメモリ１０２は，上述のフラッシュメモリ１００に対してベリファイ動作省略化手段２０が追加された構成を有している。
【００７９】
ベリファイ動作省略化手段２０は，ＮＯＲゲート１５，１６，ＮＡＮＤゲート１９，インバータ１７，１８，および遅延回路ＤＬＣから構成されている。
【００８０】
ＮＯＲゲート１５の一方の入力端子は，データ書き込み制御回路ＷＣＣのベリファイ開始信号出力端子（ＶＲ）に接続されている。また，ＮＯＲゲート１５の他方の入力端子は，適合信号無効化手段３に属するテストパッドＴＰに接続されている。ＮＯＲゲート１５の出力端子は，遅延回路ＤＬＣを介してＮＯＲゲート１６の一方の入力端子に接続されている。この遅延回路ＤＬＣは，ＮＯＲゲート１５が出力する信号を所定の時間遅延させた上で，ノードＮ２２を介してＮＯＲゲート１６の一方の入力端子に与える機能を有する。
【００８１】
ＮＯＲゲート１６の他方の入力端子は，インバータ１８の出力端子に接続されており，ＮＯＲゲート１６の出力端子は，ノードＮ２３を介してデータ書き込み制御回路ＷＣＣのベリファイ終了信号入力端子（ＶＤＯＮＥ）に接続されている。
【００８２】
インバータ１８の入力端子は，ベリファイ回路ＶＣのベリファイ終了信号出力端子（ＶＤＯＮＥ）に接続されている。
【００８３】
ＮＡＮＤゲート１９の他方の入力端子は，適合信号無効化手段３に属するテストパッドＴＰに接続されており，このＮＡＮＤゲート１９の出力端子は，インバータ１７の入力端子に接続されている。インバータ１７の出力端子は，ノードＮ２１を介してベリファイ回路ＶＣのベリファイ開始信号入力端子（ＶＲ）に接続されている。
【００８４】
以上のように構成されたフラッシュメモリ１０２のデータ・プログラム動作を，図８のフローチャートおよび図９のタイミングチャートに基づいて説明する。
【００８５】
まず，図８のフローチャートを用いて，本実施の形態にかかるデータ・プログラム動作を説明する。
【００８６】
フラッシュメモリ１０２は，データ・プログラム動作を開始するにあたり，まずデータ・イレース（消去）動作を実行し（ステップＳ２１），続いてライト動作を実行する（ステップＳ２２）。
【００８７】
ライト動作の後，ライト動作の繰り返し回数がデータ書き込みカウンタ回路ＷＣＴに設定されている最大書き込み回数に達しているか否かを判断する（ステップＳ２３）。
【００８８】
ライト動作の繰り返し回数が最大書き込み回数に達している場合，データ・プログラム動作を終了する。ライト動作の繰り返し回数が最大書き込み回数に達していない場合，テストパッドＴＰの論理レベルをチェックする（ステップＳ２４）。
【００８９】
テストパッドＴＰがＬレベルに設定されている場合，すなわちフラッシュメモリ１０２がテストモードに設定されている場合，ベリファイ動作を実行することなく次のライト動作を開始する（ステップＳ２２）。以降，ライト動作の繰り返し回数が最大書き込み回数に達するまで，ベリファイ動作を行うことなくライト動作のみを反復する（ステップＳ２２，Ｓ２３，Ｓ２４のループ）。
【００９０】
テストパッドＴＰがＨレベルに設定されている場合，すなわちフラッシュメモリ１０２が通常モードに設定されている場合，ベリファイ動作を実行し（ステップＳ２５），適合信号ＶＰＡＳＳの論理レベルをチェックする（ステップＳ２６）。
【００９１】
適合信号ＶＰＡＳＳがＬレベルの場合，すなわちベリファイの結果が「フェイル（不適合）」である場合，次のライト動作を開始する（ステップＳ２２）。適合信号ＶＰＡＳＳがＨレベルの場合，すなわちベリファイがパスしている場合，データ・プログラム動作を終了する。
【００９２】
次に，図７の回路図および図９のタイミングチャートを用いて，フラッシュメモリ１０２の通常モード動作およびテストモード動作を説明する。
【００９３】
＜通常モード＞
テストパッドＴＰをＨレベルに設定することによってフラッシュメモリ１０２は通常モードにセットされる。
【００９４】
データ書き込み制御回路ＷＣＣは，Ｈレベルのプログラム信号ＰＧを出力してメモリセルＭＣに対するライト動作を行った後，Ｈレベルのベリファイ開始信号ＶＲを出力する。このベリファイ開始信号ＶＲは，ＮＡＮＤゲート１９の一方の入力端子に入力されるとともに，ＮＯＲゲート１５の一方の入力端子に入力される。
【００９５】
通常モードの間はテストパッドＴＰがＨレベルに設定されているため，ＮＡＮＤゲート１９の他方の入力端子とＮＯＲゲート１５の他方の入力端子はともにアクティブ状態を維持する。
【００９６】
したがって，インバータ１７は，データ書き込み制御回路ＷＣＣが出力するベリファイ開始信号ＶＲに同期し，かつ，その論理レベルに一致する論理レベルを有する信号を，ノードＮ２１を介してベリファイ回路ＶＣのベリファイ開始信号入力端子（ＶＲ）に与える。
【００９７】
また，ＮＯＲゲート１５は，データ書き込み制御回路ＷＣＣが出力するベリファイ開始信号ＶＲとは無関係にＬレベルの信号を遅延回路ＤＬＣに与える。このため，ノードＮ２２に接続されているＮＯＲゲート１６の一方の入力端子はＬレベルに固定される。したがって，ＮＯＲゲート１６は，ベリファイ回路ＶＣが出力するベリファイ終了信号ＶＤＯＮＥに同期し，かつ，その論理レベルに一致する論理レベルを有する信号を，ノードＮ２３を介してデータ書き込み制御回路ＷＣＣのベリファイ終了信号入力端子（ＶＤＯＮＥ）に与える。
【００９８】
ベリファイの結果が「フェイル」のとき，データ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）はＬレベルを維持するため，ライト動作が反復される。一方，ベリファイがパスしたときには，ベリファイ回路ＶＣがＨレベルの適合信号ＶＰＡＳＳを出力するため，適合信号無効化手段３は，データ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）に対してＨレベル信号を与える。ここで，データ・プログラム動作が終了する。
【００９９】
以上のように，通常モードにセットされたフラッシュメモリ１０２は，ライト動作を繰り返し，ベリファイがパスした時点でデータ・プログラム動作を終了する。
【０１００】
＜テストモード＞
テストパッドＴＰをＬレベルに設定することによってフラッシュメモリ１０２はテストモードにセットされる。
【０１０１】
データ書き込み制御回路ＷＣＣは，Ｈレベルのプログラム信号ＰＧを出力してメモリセルＭＣに対するライト動作を行った後，Ｈレベルのベリファイ開始信号ＶＲを出力する。このベリファイ開始信号ＶＲは，ＮＡＮＤゲート１９の一方の入力端子に入力されるとともに，ＮＯＲゲート１５の一方の入力端子に入力される。
【０１０２】
テストモードの間はテストパッドＴＰがＬレベルに設定されているため，ＮＯＲゲート１５の他方の入力端子はインアクティブ状態を維持する。したがって，データ書き込み制御回路ＷＣＣのベリファイ終了信号入力端子（ＶＤＯＮＥ）には，ノードＮ２３を介して，自らが出力するベリファイ開始信号ＶＲに対して所定の遅延を有する信号が入力される。そして，図９のタイミングチャートに示すように，データ書き込み制御回路ＷＣＣは，ベリファイ終了信号入力端子（ＶＤＯＮＥ）に入力される信号の立ち上がりエッジに同期して，ベリファイ開始信号ＶＲをＨレベル（アクティブ）からＬレベル（インアクティブ）に遷移させる。
【０１０３】
遅延回路ＤＬＣの時定数を調整して遅延時間を短く設定すれば，データ書き込み制御回路ＷＣＣは，Ｈレベルのベリファイ開始信号ＶＲを出力してすぐにベリファイ終了信号入力端子（ＶＤＯＮＥ）にベリファイ終了信号ＶＤＯＮＥのダミー信号を受けることになる。加えて，データ書き込み制御回路ＷＣＣは，適合信号入力端子（ＶＰＡＳＳ）に適合信号無効化手段３からＬレベルの信号を受けている。したがって，データ書き込み制御回路ＷＣＣは，極めて短い間Ｈレベルのベリファイ開始信号ＶＲを出力した後，速やかにプログラム信号ＰＧを出力することになる。
【０１０４】
また，テストパッドＴＰがＬレベルに設定されているため，ＮＡＮＤゲート１９の他方の入力端子もインアクティブ状態を維持する。したがって，ノードＮ２１およびベリファイ回路ＶＲのベリファイ開始信号入力端子（ＶＲ）は，Ｌレベルに保持される。したがって，テストモードに設定されたフラッシュメモリ１０２は，一度のベリファイ動作も実行しないまま，所定の最大書き込み回数に達するまでライト動作のみを反復する。
【０１０５】
以上のように，第２の実施の形態にかかるフラッシュメモリ１０２およびそのデータ・プログラム動作によれば，テストモードに設定された場合，初めからベリファイ動作を伴わないライト動作が短い周期で繰り返されることになり，第１の実施の形態と比較して，テストに要する時間の一層の短縮が実現する。
【０１０６】
［第３の実施の形態］
本発明の第３の実施の形態にかかる半導体記憶装置としてのフラッシュメモリ１０３の構成およびその動作について説明する。
【０１０７】
フラッシュメモリ１０３は，図１０に示すように，メモリセルＭＣ，データ書き込み制御回路ＷＣＣ２，データ書き込みカウンタ回路ＷＣＴ２，ベリファイ回路ＶＣ，適合信号無効化手段３，およびベリファイ動作省略化手段１０から構成されている。すなわち，フラッシュメモリ１０３は，第１の実施の形態にかかるフラッシュメモリ１０１に対して，データ書き込み制御回路ＷＣＣがデータ書き込み制御回路ＷＣＣ２に置き換えられ，データ書き込みカウンタ回路ＷＣＴがデータ書き込みカウンタ回路ＷＣＴ２に置き換えられた構成を有している。
【０１０８】
データ書き込み制御回路ＷＣＣ２は，データ書き込み制御回路ＷＣＣに対してゲート・ディスターブ（以下，「ＧＤ」と言う）モードセット端子（ＧＤ）が追加されており，データ書き込みカウンタ回路ＷＣＴ２は，データ書き込みカウンタ回路ＷＣＴに対してリセット端子（ＲＳＴ）が追加されている。データ書き込み制御回路ＷＣＣ２のＧＤモードセット端子（ＧＤ）およびデータ書き込みカウンタ回路ＷＣＴ２のリセット端子（ＲＳＴ）は，ベリファイ回路ＶＣの適合信号出力端子（ＶＰＡＳＳ）に共通接続されている。
【０１０９】
以上のように構成されたフラッシュメモリ１０３は，「ＧＤモード」を備えることになる。このモードに設定された場合，全てのメモリセルＭＣに対して"１"を書き込む，いわゆる「ＦＦライト動作」が実行される。
【０１１０】
次に，フラッシュメモリ１０３のデータ・プログラム動作を，図１１のフローチャートおよび図１２のタイミングチャートに基づいて説明する。
【０１１１】
まず，図１１のフローチャートを用いて，本実施の形態にかかるデータ・プログラム動作を説明する。
【０１１２】
フラッシュメモリ１０３のデータ・プログラム動作におけるステップＳ３１〜Ｓ３６については，第１の実施の形態にかかるフラッシュメモリ１０１のデータ・プログラム動作におけるステップＳ１１〜Ｓ１６と略同一である。
【０１１３】
ステップＳ３７においてテストパッドＴＰの論理レベルをチェックする。テストパッドＴＰがＨレベルに設定されている場合，すなわちフラッシュメモリ１０３が通常モードに設定されている場合，データ・プログラム動作を終了する。フラッシュメモリ１０３のデータ・プログラム動作とフラッシュメモリ１０１のデータ・プログラム動作の相違点は，ステップＳ３７においてテストパッドがＬレベルに設定されていると判断した後の動作にある。
【０１１４】
テストパッドＴＰがＬレベルに設定されると，フラッシュメモリ１０３はテストモードとなる。そして，ベリファイ回路ＶＣが出力するＨレベルの適合信号ＶＰＡＳＳによって，データ書き込みカウンタ回路ＷＣＴ２がリセットされる（ステップＳ３８）。データ書き込みカウンタ回路ＷＣＴ２は，リセットされることによってそれまでにカウントしてきたライト動作の繰り返し回数をクリアする。また，ベリファイ回路ＶＣが出力するＨレベルの適合信号ＶＰＡＳＳによって，データ書き込み制御回路ＷＣＣ２がＧＤモードにセットされる（ステップＳ３９）。
【０１１５】
ＧＤモードにセットされたデータ書き込み制御回路ＷＣＣ２は，全てのメモリセルＭＣに対してＦＦライト動作を行う（ステップＳ４０）。これによって各メモリセルＭＣにはデータ"１"が書き込まれる。このＦＦライト動作は，データ書き込みカウンタ回路ＷＣＴ２に設定されている最大書き込み回数（ここでは８回）に達するまで繰り返される。なお，このＧＤモードに入る前にステップＳ３２におけるライト動作が何回か繰り返されるが，ステップＳ３８においてデータ書き込みカウンタ回路ＷＣＴ２がリセットされるため，ステップＳ３２におけるライト動作の回数に関わらずステップＳ４０におけるＦＦライト動作は最大書き込み回数に達するまで繰り返される。
【０１１６】
ＦＦライト動作の繰り返し回数がデータ書き込みカウンタ回路ＷＣＴ２に設定されている最大書き込み回数に達したところで，フラッシュメモリ１０３はデータ・プログラム動作を終了する。
【０１１７】
ところで，一般的に，各メモリセルＭＣに対してイレース動作を伴うＦＦライト動作（"１"書き込み動作）が何度も繰り返されると，スレショルド電圧Ｖｔが上昇し過ぎてしまい，デバイスの絶縁膜に過度のストレスが加わってしまうおそれがある。この点，本実施の形態によれば，ステップＳ４０，Ｓ４１において全てのメモリセルＭＣに対してイレース動作を伴わないＦＦライト動作（"１"書き込み動作）が繰り返される。ＦＦライト動作とは，具体的には，各メモリセルＭＣを構成するトランジスタのドレイン，ソース，およびゲートのうち，ゲートにのみ所定の電圧が印加される動作である。このＦＦライト動作を繰り返し実行することによって，メモリセルＭＣのスレショルド電圧Ｖｔが上昇した場合であっても，そのメモリセルＭＣのスレショルド電圧Ｖｔを低下させてデバイスに加わるストレスを軽減させることが可能となる。
【０１１８】
次に，図１０の回路図および図１２のタイミングチャートを用いて，フラッシュメモリ１０３の通常モード動作およびテストモード動作を説明する。
【０１１９】
＜通常モード＞
テストパッドＴＰをＨレベルに設定することによってフラッシュメモリ１０３は通常モードにセットされる。
【０１２０】
この通常モードにセットされたフラッシュメモリ１０３は，第１の実施の形態にかかるフラッシュメモリ１０１と同様に，ベリファイがパスするまでライト動作を繰り返す。
【０１２１】
＜テストモード＞
テストパッドＴＰをＬレベルに設定することによってフラッシュメモリ１０３はテストモードにセットされる。
【０１２２】
テストモードにセットされた場合も通常モードにセットされた場合と同様に，ベリファイがパスするまでは，ラッチ回路ＬＣが出力するラッチ適合信号ＶＰＬはＬレベル（初期値）であるため，ＮＡＮＤゲート５の他方の入力端子とＮＯＲゲート９の他方の入力端子はともにインアクティブ状態を維持する。したがって，ベリファイ回路ＶＲのベリファイ開始信号入力端子（ＶＲ）には，データ書き込み制御回路ＷＣＣ２が出力するベリファイ開始信号ＶＲに同期し，かつ，その論理レベルに一致する論理レベルを有する信号が入力され，データ書き込み制御回路ＷＣＣ２のベリファイ終了信号入力端子（ＶＤＯＮＥ）には，ベリファイ回路ＶＲが出力するベリファイ終了信号ＶＤＯＮＥに同期し，かつ，その論理レベルに一致する論理レベルを有する信号が入力される。
【０１２３】
ベリファイの結果が「フェイル」のとき，テストモードにセットされたフラッシュメモリ１０３は，通常モードにセットされた場合と同様に動作する。すなわち，データ書き込み制御回路ＷＣＣ２およびデータ書き込みカウンタ回路ＷＣＴ２の各適合信号入力端子（ＶＰＡＳＳ）はＬレベルを維持するため，ライト動作が反復される。
【０１２４】
一方，ベリファイがパスしたときには，テストモードにセットされたフラッシュメモリ１０３は，次のように動作する。
【０１２５】
テストパッドＴＰがＬレベルに調整されているため，ベリファイ回路ＶＣがＨレベルの適合信号ＶＰＡＳＳを出力しても，データ書き込み制御回路ＷＣＣおよびデータ書き込みカウンタ回路ＷＣＴの各適合信号入力端子（ＶＰＡＳＳ）は，適合信号無効化手段３によってＬレベルに固定される。また，この適合信号ＶＰＡＳＳの立ち上がりエッジに同期してデータ書き込みカウンタ回路ＷＣＴ２がリセットされ，データ書き込み制御回路ＷＣＣ２がＧＤモードにセットされる。
【０１２６】
ベリファイ回路ＶＣがＨレベルの適合信号ＶＰＡＳＳを出力すると，ラッチ回路ＬＣはラッチ適合信号ＶＰＬをＨレベルに保持するため，ＮＡＮＤゲート５の他方の入力端子とＮＯＲゲート９の他方の入力端子はともにアクティブ状態を維持する。したがって，データ書き込み制御回路ＷＣＣ２からＨレベルのベリファイ開始信号ＶＲが出力されると，ＮＡＮＤゲート５，遅延回路ＤＬＣ，およびＮＡＮＤゲート６の動作によって，ノードＮ１３およびデータ書き込み制御回路ＷＣＣ２のベリファイ終了信号入力端子（ＶＤＯＮＥ）には，ベリファイ開始信号ＶＲに対して所定の遅延を有する信号が入力される。また，ノードＮ１１に接続されたベリファイ回路ＶＣのベリファイ開始信号入力端子（ＶＲ）はＬレベルに固定される。この結果，ベリファイ動作を伴わないライト動作が速やかに繰り返される。
【０１２７】
ただし，このテストモードでは，フラッシュメモリ１０３は自動的にＧＤモードにセットされる。したがって，各メモリセルＭＣに対して，ＦＦライト動作を，データ書き込みカウンタ回路ＷＣＴ２に設定されている最大書き込み回数（ここでは８回）に達するまで繰り返すことになる。なお，上述のように，ＧＤモードにセットされたときには，ベリファイ回路ＶＣのベリファイ開始信号入力端子（ＶＲ）は，Ｌレベルに固定されているため，ＦＦライト動作はベリファイ動作を伴わない。ＦＦライト動作の繰り返し回数が最大書き込み回数に達したところで，データ・プログラム動作が終了する。
【０１２８】
以上のように，第３の実施の形態にかかるフラッシュメモリ１０３およびそのデータ・プログラム動作によれば，第１の実施の形態にかかるフラッシュメモリ１０１およびそのデータ・プログラム動作と同様の効果が得られる。
【０１２９】
加えて，第３の実施の形態にかかるフラッシュメモリ１０３およびそのデータ・プログラム動作は，ＧＤモードを備えている。このモードでは，イレース動作を伴う"１"の書き込み動作が繰り返される。したがって，過度にスレショルド電圧Ｖｔが上昇してしまうおそれのあるメモリセルＭＣについて，そのスレショルド電圧Ｖｔの上昇を抑制する効果が期待できる。
【０１３０】
添付図面を参照しながら本発明の好適な実施の形態について説明したが，本発明はかかる実施の形態に限定されない。当業者であれば，特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例に想到し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
【０１３１】
例えば，半導体記憶装置としてフラッシュメモリを用いて本発明の実施の形態を説明したが，本発明は，ＥＥＰＲＯＭ等その他の半導体記憶装置にも適用可能である。
【０１３２】
また，第３の実施の形態にかかるフラッシュメモリ１０３が備えるデータ書き込み制御回路ＷＣＣ２およびデータ書き込みカウンタ回路ＷＣＴ２を第２の実施の形態にかかるフラッシュメモリ１０２に適用することも可能である。この場合，テストモードに設定されると初めから各メモリセルＭＣに対してＦＦライト動作が実行されることになる。
【０１３３】
【発明の効果】
以上説明したように，本発明によれば，テストモードにおいてデータ・ライト動作を最大回数繰り返す場合であっても，テストにかかる時間を最小限に抑えることが可能となる。また，本発明によれば，各メモリセルのスレショルド電圧を所定値に調整することが可能となる。
【図面の簡単な説明】
【図１】テストモードにおいてデータ・ライト動作を所定回数繰り返すことが可能なフラッシュメモリの構成を示す回路図である。
【図２】図１のフラッシュメモリの動作を示すフローチャートである。
【図３】図１のフラッシュメモリの動作を示すタイミングチャートである。
【図４】本発明の第１の実施の形態にかかるフラッシュメモリの構成を示す回路図である。
【図５】図４のフラッシュメモリの動作を示すフローチャートである。
【図６】図４のフラッシュメモリの動作を示すタイミングチャートである。
【図７】本発明の第２の実施の形態にかかるフラッシュメモリの構成を示す回路図である。
【図８】図７のフラッシュメモリの動作を示すフローチャートである。
【図９】図７のフラッシュメモリの動作を示すタイミングチャートである。
【図１０】本発明の第３の実施の形態にかかるフラッシュメモリの構成を示す回路図である。
【図１１】図１０のフラッシュメモリの動作を示すフローチャートである。
【図１２】図１０のフラッシュメモリの動作を示すタイミングチャートである。
【符号の説明】
３：適合信号無効化手段
１０，２０：ベリファイ動作省略化手段
１００，１０１，１０２，１０３：フラッシュメモリ
ＤＬＣ：遅延回路
ＤＶ：データ電圧レベル信号
ＤＶＣ：データ電圧レベルチェック信号
ＦＡＩＬ：ライト動作不良信号
ＬＣ：ラッチ回路
ＭＣ：メモリセル
ＰＧ：プログラム信号
ＴＰ：テストパッド
ＶＣ：ベリファイ回路
ＶＤＯＮＥ：ベリファイ終了信号
ＶＰＡＳＳ：適合信号
ＶＲ：ベリファイ開始信号
ＷＣＣ，ＷＣＣ２：データ書き込み制御回路
ＷＣＴ，ＷＣＴ２：データ書き込みカウンタ回路
【図１】
0004122750.tif 000002
【図２】
0004122750.tif 000003
【図３】
0004122750.tif 000004
【図４】
0004122750.tif 000005
【図５】
0004122750.tif 000006
【図６】
0004122750.tif 000007
【図７】
0004122750.tif 000008
【図８】
0004122750.tif 000009
【図９】
0004122750.tif 000010
【図１０】
0004122750.tif 000011
【図１１】
0004122750.tif 000012
【図１２】
0004122750.tif 000013