(57)【要約】【課題】隣接セルの書き込みにより、既に書き込まれたセルの閾値レベルの変動を抑制することを可能とする。【解決手段】メモリセルアレイは、複数の閾値レベルのうちの１つを記憶する複数のメモリセルがマトリックス状に配置されている。制御回路は、メモリセルアレイ内の第１のメモリセルに複数の閾値レベルのうちの１つの閾値レベルを書き込むとき、本来の閾値レベルより僅かに低い閾値レベルに書き込み、第１のメモリセルと隣接する第２のメモリセルに連続して書き込みが行なわれない場合、第１のメモリセルに本来の閾値レベルを書き込む。【選択図】図１
2007287207.tif 000002
【特許請求の範囲】
【請求項１】
複数の閾値レベルのうちの１つを記憶する複数のメモリセルがマトリックス状に配置されたメモリセルアレイと、
前記メモリセルアレイ内の第１のメモリセルに複数の前記閾値レベルのうちの１つの閾値レベルを書き込むとき、本来の閾値レベルより低い閾値レベルに書き込み、前記第１のメモリセルと隣接する第２のメモリセルに連続して書き込みが行なわれない場合、前記第１のメモリセルに前記本来の閾値レベルを書き込む制御回路と
を具備することを特徴とする半導体記憶装置。
【請求項２】
前記制御回路は、前記第１のメモリセルに、本来の閾値レベルを書き込んだ後、次の書き込みにおいて、前記第２のメモリセルに書き込みを行なわず、前記第２のメモリセル側で、前記第１のメモリセルから離れた位置の第３のメモリセルに書き込みを行なうことを特徴とする請求項１の半導体記憶装置。
【請求項３】
前記第２のメモリセルは消去時の閾値レベルに保持されることを特徴とする請求項２記載の半導体記憶装置。
【請求項４】
複数の閾値レベルのうちの１つを記憶する複数のメモリセルがマトリックス状に配置されたメモリセルアレイと、
前記メモリセルアレイ内の第１のメモリセルに複数の前記閾値レベルのうちの１つの閾値レベルを書き込むときで、前記第１のメモリセルと隣接する第２のメモリセルに連続して書き込みが行われる場合、本来の閾値レベルより低い閾値レベルに書き込み、前記第１のメモリセルと隣接する第２のメモリセルに連続して書き込みが行われない場合、書き込み速度を低下させて、前記第１のメモリセルに書き込む制御回路と
を具備することを特徴とする半導体記憶装置。
【請求項５】
前記制御回路は、特定のコマンドの受信により、前記書き込み速度を低下させることを特徴とする請求項４記載の半導体記憶装置。
【請求項６】
複数の閾値レベルのうちの１つを記憶する複数のメモリセルがマトリックス状に配置されたメモリセルアレイと、
前記メモリセルアレイ内の第１のメモリセルに複数の前記閾値レベルのうちの１つの閾値レベルを書き込むとき、本来の閾値レベルより低い閾値レベルに書き込み、
前記第１のメモリセルと隣接する第２のメモリセルに連続して書き込みが行なわれない場合、前記第１のメモリセルは、前記低い閾値レベルに保持し、
時間経過後、前記第２のメモリセルに複数の前記閾値レベルのうちの１つの閾値レベルを書き込むとき、前記第１のメモリセルの閾値レベルを読み出し、この後、前記第２メモリセルに所定の閾値レベルに書き込んだ後、前記読み出した結果に基づき、前記第１のメモリセルに本来の閾値レベルを書き込む制御回路と
を具備することを特徴とする半導体記憶装置。
【請求項７】
制御回路は、前記第１のメモリセルと隣接する第２のメモリセルに連続して書き込みが行なわれる場合、前記第２メモリセルの閾値レベルを本来の閾値レベルより低い閾値レベルに書き込んだ後、前記第１のメモリセルに本来の閾値レベルを書き込むことを特徴とする請求項６記載の半導体記憶装置。
【請求項８】
複数の閾値レベルのうちの１つを記憶する直列接続された複数のメモリセルと、
前記直列接続された複数のメモリセルの一端部及び他端部に接続された第１、第２の選択ゲートと、
前記第１、第２の選択ゲートの少なくとも１つと、前記第１、第２の選択ゲートの少なくとも１つと隣接するメモリセルとの間に接続された少なくとも１つのダミーセルと
を具備することを特徴とする半導体記憶装置。
【請求項９】
前記メモリセルにデータを書き込むとき、前記ダミーセルのゲートに前記第１の選択ゲートの電圧より高い電位を供給することを特徴とする請求項８の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばＮＡＮＤ型フラッシュメモリに係り、特に、１つのメモリセルに多値データを記憶することが可能な半導体記憶装置に関する。
【背景技術】
【０００２】
ＮＡＮＤ形フラッシュメモリは、カラム方向に配置された複数のセル全て、又は半数のセルが、直列接続されてＮＡＮＤセルを構成し、このＮＡＮＤセルのドレイン側が選択ゲートを介してそれぞれビット線に接続されている。各ビット線は書き込み、及び読み出し用のラッチ回路に接続されている。ロウ方向に配置された全てのセル又は半数のセルに対してデータを一括して書き込み、又は読み出し動作を行なう。近時、メモリの大容量化に伴い、１つのセルに２ビット以上のデータを記憶する多値メモリが開発されている（例えば、特許文献１参照）。
【０００３】
この多値メモリにおいて、隣接するセルにデータを書き込むと、これより前にデータが書き込まれたセルの閾値電圧が、両セルの浮遊ゲート（ＦＧ−ＦＧ）間のカップリングにより上がってしまうという問題がある。このため、例えば８値のレベルにより３ビットを記憶するセルの場合、先ず、３ビットのデータを本来のベリファイレベルより低めのベリファイレベルまで書き込んだ後、このセルに隣接するセルにも書き込みを行い、この後、再び前のセルに戻り本来のベリファイレベルまで書き込むことが提案されている。しかし、隣接セルに書き込むデータ（隣接セル内のデータ）が決まらない限り、前のセルの書き込みを完了することができない。このため、ＮＡＮＤセル内の全セルについて書き込まなくてはならなかった。
【特許文献１】特開２００４−１９２７８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、隣接セルの書き込みにより、既に書き込まれたセルの閾値レベルの変動を抑制することが可能な半導体記憶装置を提供しようとするものである。
【課題を解決するための手段】
【０００５】
本発明の半導体記憶装置の第１の態様は、複数の閾値レベルのうちの１つを記憶する複数のメモリセルがマトリックス状に配置されたメモリセルアレイと、前記メモリセルアレイ内の第１のメモリセルに複数の前記閾値レベルのうちの１つの閾値レベルを書き込むとき、本来の閾値レベルより低い閾値レベルに書き込み、前記第１のメモリセルと隣接する第２のメモリセルに連続して書き込みが行なわれない場合、前記第１のメモリセルに前記本来の閾値レベルを書き込む制御回路とを具備することを特徴とする。
【０００６】
本発明の半導体記憶装置の第２の態様は、複数の閾値レベルのうちの１つを記憶する複数のメモリセルがマトリックス状に配置されたメモリセルアレイと、前記メモリセルアレイ内の第１のメモリセルに複数の前記閾値レベルのうちの１つの閾値レベルを書き込むときで、前記第１のメモリセルと隣接する第２のメモリセルに連続して書き込みが行われる場合、本来の閾値レベルより低い閾値レベルに書き込み、前記第１のメモリセルと隣接する第２のメモリセルに連続して書き込みが行われない場合、書き込み速度を低下させて、前記第１のメモリセルに書き込む制御回路とを具備することを特徴とする。
【０００７】
本発明の半導体記憶装置の第３の態様は、複数の閾値レベルのうちの１つを記憶する複数のメモリセルがマトリックス状に配置されたメモリセルアレイと、前記メモリセルアレイ内の第１のメモリセルに複数の前記閾値レベルのうちの１つの閾値レベルを書き込むとき、本来の閾値レベルより低い閾値レベルに書き込み、前記第１のメモリセルと隣接する第２のメモリセルに連続して書き込みが行なわれない場合、前記第１のメモリセルは、前記低い閾値レベルに保持し、時間経過後、前記第２のメモリセルに複数の前記閾値レベルのうちの１つの閾値レベルを書き込むとき、前記第１のメモリセルの閾値レベルを読み出し、この後、前記第２メモリセルに所定の閾値レベルに書き込んだ後、前記読み出した結果に基づき、前記第１のメモリセルに本来の閾値レベルを書き込む制御回路とを具備することを特徴とする。
【０００８】
本発明の半導体記憶装置の第４の態様は、複数の閾値レベルのうちの１つを記憶する直列接続された複数のメモリセルと、前記直列接続された複数のメモリセルの一端部及び他端部に接続された第１、第２の選択ゲートと、前記第１、第２の選択ゲートの少なくとも１つと、前記第１、第２の選択ゲートの少なくとも１つと隣接するメモリセルとの間に接続された少なくとも１つのダミーセルとを具備することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、隣接セルの書き込みにより、既に書き込まれたセルの閾値レベルの変動を抑制することが可能な半導体記憶装置を提供できる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態について、図面を参照して説明する。
【００１１】
（第１の実施形態）
図２は、例えば３ビット、８値のデータを記憶するＮＡＮＤ型フラッシュメモリの概略構成を示している。
【００１２】
メモリセルアレイ１は、複数のビット線と複数のワード線と共通ソース線を含み、例えばＥＥＰＲＯＭセルからなる電気的にデータを書き換え可能なメモリセルがマトリクス状に配置されている。このメモリセルアレイ１には、ビット線を制御するためのビット制御回路２とワード線制御回路６が接続されている。
【００１３】
ビット線制御回路２は、ビット線を介してメモリセルアレイ１中のメモリセルのデータを読み出したり、ビット線を介してメモリセルアレイ１中のメモリセルの状態を検出したり、ビット線を介してメモリセルアレイ１中のメモリセルに書き込み制御電圧を印加してメモリセルに書き込みを行なう。ビット線制御回路２には、カラムデコーダ３、データ入出力バッファ４が接続されている。ビット線制御回路２内のデータ記憶回路はカラムデコーダ３によって選択される。データ記憶回路に読み出されたメモリセルのデータは、前記データ入出力バッファ４を介してデータ入出力端子５から外部へ出力される。データ入出力端子５は、メモリチップ外部のホスト１１に接続される。このホスト１１は例えばマイクロコンピュータにより構成され、前記データ入出力端子５から出力されたデータを受ける。さらに、ホスト１１は、ＮＡＮＤ型フラッシュメモリの動作を制御する各種コマンドＣＭＤ、アドレスＡＤＤ、及びデータＤＴを出力する。ホスト１１からデータ入出力端子５に入力された書き込みデータは、データ入出力バッファ４を介して、カラムデコーダ３によって選択されたデータ記憶回路に供給され、コマンド及びアドレスは制御信号及び制御電圧発生回路７に供給される。
【００１４】
ワード線制御回路６は、メモリセルアレイ１に接続されている。このワード線制御回路６は、メモリセルアレイ１中のワード線を選択し、選択されたワード線に読み出し、書き込みあるいは消去に必要な電圧を印加する。
【００１５】
メモリセルアレイ１、ビット線制御回路２、カラムデコーダ３、データ入出力バッファ４、及びワード線制御回路６は、制御信号及び制御電圧発生回路７に接続され、この制御信号及び制御電圧発生回路７によって制御される。制御信号及び制御電圧発生回路７は、制御信号入力端子８に接続され、ホスト１１から制御信号入力端子８を介して入力される制御信号ＡＬＥ（アドレス・ラッチ・イネーブル）、ＣＬＥ（コマンド・ラッチ・イネーブル）、ＷＥ（ライト・イネーブル）によって制御される。
【００１６】
前記ビット線制御回路２、カラムデコーダ３、ワード線制御回路６、制御信号及び制御電圧発生回路７は書き込み回路、及び読み出し回路を構成している。
【００１７】
また、制御信号及び制御電圧発生回路７は、ダイナミックデータキャッシュ（ＤＤＣ）制御回路７−１を有している。このＤＤＣ制御回路７−１は、後述するデータ記憶回路に含まれるダイナミックラッチ回路としての複数のＤＲＡＭのリフレッシュ動作を制御する制御信号を発生する。
【００１８】
図３は、図２に示すメモリセルアレイ１及びビット線制御回路２の構成の一例を示している。メモリセルアレイ１には複数のＮＡＮＤセルが配置されている。１つのＮＡＮＤセルは、直列接続された例えば３２個のＥＥＰＲＯＭからなるメモリセルＭＣと、選択ゲートＳ１、Ｓ２とにより構成されている。選択ゲートＳ２はビット線ＢＬ０ｅに接続され、選択ゲートＳ１はソース線ＳＲＣに接続されている。各ロウに配置されたメモリセルＭＣの制御ゲートはワード線ＷＬ０〜ＷＬ２９、ＷＬ３０、ＷＬ３１に共通接続されている。また、選択ゲートＳ２はセレクト線ＳＧＤに共通接続され、選択ゲートＳ１はセレクト線ＳＧＳに共通接続されている。
【００１９】
ビット線制御回路２は複数のデータ記憶回路１０を有している。各データ記憶回路１０には、一対のビット線（ＢＬ０ｅ、ＢＬ０ｏ）、（ＢＬ１ｅ、ＢＬ１ｏ）…（ＢＬｉｅ、ＢＬｉｏ）、（ＢＬ８ｋｅ、ＢＬ８ｋｏ）が接続されている。
【００２０】
メモリセルアレイ１は、破線で示すように、複数のブロックを含んでいる。各ブロックは、複数のＮＡＮＤセルにより構成され、例えばこのブロック単位でデータが消去される。また、消去動作は、データ記憶回路１０に接続されている２本のビット線について同時に行なわれる。
【００２１】
また、ビット線の１つおきに配置され、１つのワード線に接続された複数のメモリセル（破線で囲まれた範囲のメモリセル）は、１セクタを構成する。このセクタ毎にデータが書き込まれ、読み出される。すなわち、ロウ方向に配置された複数のメモリセルのうち半数のメモリセルが対応するビット線に接続される。このため、ロウ方向に配置された複数のメモリセルの半数ずつに対して書き込み又は読み出し動作が実行される。
【００２２】
リード動作、プログラムベリファイ動作及びプログラム動作時において、データ記憶回路１０に接続されている２本のビット線（ＢＬｉｅ、ＢＬｉｏ）のうち外部より供給されるアドレス信号（ＹＡ０、ＹＡ１…ＹＡｉ…ＹＡ８ｋ）に応じて１本のビット線が選択される。さらに、外部アドレスに応じて、１本のワード線が選択され、破線で示す、３ページが選択される。この３ページの切り替えはアドレスによって行われる。
【００２３】
図４は、図２に示すメモリセルアレイ１及びビット線制御回路２の構成の他の例を示している。図３に示す構成の場合、データ記憶回路１０に２本のビット線（ＢＬｉｅ、ＢＬｉｏ）が接続されていた。これに対して、図４に示す構成の場合、各ビット線にデータ記憶回路１０が接続され、ロウ方向に配置された複数のメモリセルは、全て対応するビット線に接続される。このため、ロウ方向に配置された全てのメモリセルに対して書き込み又は読み出し動作を行うことができる。
【００２４】
尚、以下の説明は、図３に示す構成、及び図４に示す構成のいずれも適用することが可能であるが、図３を使用する場合について説明する。
【００２５】
図５（ａ）（ｂ）はメモリセル及び選択トランジスタの断面図を示している。図５（ａ）はメモリセルを示している。基板５１（後述するＰ型ウェル領域５５）にはメモリセルのソース、ドレインとしてのｎ型拡散層４２が形成されている。Ｐ型ウェル領域５５の上にはゲート絶縁膜４３を介して浮遊ゲート（ＦＧ）４４が形成され、この浮遊ゲート４４の上には絶縁膜４５を介して制御ゲート（ＣＧ）４６が形成されている。図５（ｂ）は選択ゲートを示している。Ｐ型ウェル領域５５にはソース、ドレインとしてのｎ型拡散層４７が形成されている。Ｐ型ウェル領域５５の上にはゲート絶縁膜４８を介して制御ゲート４９が形成されている。
【００２６】
図６は、ＮＡＮＤ型フラッシュメモリの断面図を示している。例えばＰ型半導体基板５１内には、Ｎ型ウェル領域５２、５３、５４、Ｐ型ウェル領域５６が形成されている。Ｎ型ウェル領域５２内にはＰ型ウェル領域５５が形成され、このＰ型ウェル領域５５内にメモリセルアレイ１を構成する低電圧ＮチャネルトランジスタＬＶＮＴｒが形成されている。さらに、前記Ｎ型ウェル領域５３、Ｐ型ウェル領域５６内に、データ記憶回路１０を構成する低電圧ＰチャネルトランジスタＬＶＰＴｒ、低電圧ＮチャネルトランジスタＬＶＮＴｒが形成されている。前記基板５１内には、ビット線とデータ記憶回路１０を接続する高電圧ＮチャネルトランジスタＨＶＮＴｒが形成されている。また、前記Ｎ型ウェル領域５４内には例えばワード線駆動回路等を構成する高電圧ＰチャネルトランジスタＨＶＰＴｒが形成されている。図５に示すように、高電圧トランジスタＨＶＮＴｒ、ＨＶＰＴｒは、低電圧トランジスタＬＶＮＴｒ、ＬＶＰＴｒに比べて例えば厚いゲート絶縁膜を有している。
【００２７】
図７は、図６に示す各領域に供給される電圧の例を示している。消去、プログラム、リードにおいて、各領域に図７に示すような電圧が供給される。ここで、Ｖｅｒａは、データの消去時に基板に印加される電圧、Ｖｓｓは接地電圧、Ｖｄｄは電源電圧、Ｖｐｇｍｈはデータの書き込み時にワード線に供給される電圧Ｖｐｇｍ＋Ｖｔｈ、Ｖｒｅａｄｈは、データの読み出し時にワード線に供給される電圧Ｖｒｅａｄ＋Ｖｔｈである。
【００２８】
図８は、図３に示すデータ記憶回路１０の一例を示す回路図である。
【００２９】
このデータ記憶回路１０は、例えば３ビット、８値のデータを書き込み、読み出す場合を示しており、プライマリデータキャッシュ（ＰＤＣ）、セコンダリデータキャッシュ（ＳＤＣ）、ダイナミックデータキャッシュ（ＤＤＣＡ、ＤＤＣＢ、ＤＤＣＣ）、テンポラリデータキャッシュ（ＴＤＣ）を有している。ＳＤＣ、ＰＤＣ、ＤＤＣＡ、ＤＤＣＢ、ＤＤＣＣは、書き込み時に入力データを保持し、読み出し時に読み出しデータを保持し、ベリファイ時に一時的にデータを保持し、多値データを記憶する際に内部データの操作に使用される。ＴＤＣは、データの読み出し時にビット線のデータを増幅し、一時的に保持するとともに、多値データを記憶する際に内部データの操作に使用される。
【００３０】
ＳＤＣは、スタティックラッチ回路を構成するクロックドインバータ回路６１ａ、６１ｂ、及びトランジスタ６１ｃ、６１ｄにより構成されている。トランジスタ６１ｃはクロックドインバータ回路６１ａの入力端と、クロックドインバータ回路６１ｂの入力端の間に接続されている。このトランジスタ６１ｃのゲートには信号ＥＱ２が供給されている。トランジスタ６１ｄはクロックドインバータ回路６１ａの出力端と接地間に接続されている。このトランジスタ６１ｄのゲートには信号ＰＲＳＴが供給されている。ＳＤＣのノードＮ２ａは、カラム選択トランジスタ６１ｅを介して入出力データ線ＩＯｎに接続され、ノードＮ２ｂは、カラム選択トランジスタ６１ｆを介して入出力データ線ＩＯに接続される。これらトランジスタ６１ｅ、６１ｆのゲートにはカラム選択信号ＣＳＬｉが供給されている。ＳＤＣのノードＮ２ａは、トランジスタ６１ｇ、６１ｈを介してＰＤＣのノードＮ１ａに接続されている。トランジスタ６１ｇのゲートには信号ＢＬＣ２が供給され、トランジスタ６１ｈのゲートには信号ＢＬＣ１が供給されている。
【００３１】
ＰＤＣは、スタティックラッチ回路を構成するクロックドインバータ回路６１ｉ、６１ｊ及びトランジスタ６１ｋにより構成されている。トランジスタ６１ｋは、クロックドインバータ回路６１ｉの入力端とクロックドインバータ回路６１ｊの入力端の相互間に接続されている。このトランジスタ６１ｋのゲートには信号ＥＱ１が供給されている。ＰＤＣのノードＮ１ｂはトランジスタ６１ｌのゲートに接続されている。このトランジスタ６１ｌの電流通路の一端はトランジスタ６１ｍを介して接地されている。このトランジスタ６１ｍのゲートには信号ＣＨＫ１が供給されている。また、トランジスタ６１ｌの電流通路の他端はトランスファーゲートを構成するトランジスタ６１ｎ、６１ｏの電流通路の一端に接続されている。このトランジスタ６１ｎのゲートには信号ＣＨＫ２ｎが供給されている。また、トランジスタ６１ｏのゲートはノードＮ３に接続されている。トランジスタ６１ｎ、６１ｏの電流通路の他端は、信号線ＣＯＭｉに接続されている。この信号線ＣＯＭｉは全データ記憶回路１０に共通に接続され、この信号線ＣＯＭｉのレベルにより、全データ記憶回路１０のベリファイが完了したかどうかを判定できる。すなわち、後述するように、ベリファイが完了すると、ＰＤＣのノードＮ１ｂがローレベル（ノードＮ１ａがハイレベル）となる。この状態において、信号ＣＨＫ１、ＣＨＫ２ｎをハイレベルとすると、ベリファイが完了している場合、信号ＣＯＭｉがハイレベルとなる。
【００３２】
さらに、前記ＴＤＣは、例えばＭＯＳキャパシタ６１ｐにより構成されている。このキャパシタ６１ｐは、一端が前記トランジスタ６１ｇ、６１ｈの接続ノードＮ３に接続され、他端に後述する信号ＢＯＯＳＴが供給されている。また、接続ノードＮ３には、トランジスタ６１ｑＡ〜６１ｑＣを介してＤＤＣＡ、ＤＤＣＢ、ＤＤＣＣが接続される。前記トランジスタ６１ｑＡ〜６１ｑＣのゲートには、信号ＲＥＧＡ〜ＲＥＧＣが供給されている。
【００３３】
ダイナミックラッチ回路を構成するＤＤＣＡ、ＤＤＣＢ、ＤＤＣＣは、トランジスタ６１ｒＡ〜６１ｒＣにより構成されている。トランジスタ６１ｒＡ〜６１ｒＣの電流通路の一端には信号ＶＰＲＥが供給され、他端は前記トランジスタ６１ｑＡ〜６１ｑＣの電流通路にそれぞれ接続されている。このトランジスタ６１ｒＡ〜６１ｒＣのゲートはトランジスタ６１ｓＡ〜６１ｓＣを介して前記ＰＤＣのノードＮ１ａにそれぞれ接続されている。このトランジスタ６１ｓＡ〜６１ｓＣのゲートには信号ＤＴＧＡ〜ＤＴＧＣがそれぞれ供給されている。
【００３４】
さらに、前記接続ノードＮ３にはトランジスタ６１ｔ、６１ｕの電流通路の一端が接続されている。トランジスタ６１ｕの電流通路の他端には信号ＶＰＲＥが供給され、ゲートにはＢＬＰＲＥが供給されている。前記トランジスタ６１ｔのゲートには信号ＢＬＣＬＡＭＰが供給されている。このトランジスタ６１ｔの電流通路の他端はトランジスタ６１ｖを介してビット線ＢＬｏの一端に接続され、トランジスタ６１ｗを介してビット線ＢＬｅの一端に接続されている。ビット線ＢＬｏの一端はトランジスタ６１ｘの電流通路の一端に接続されている。このトランジスタ６１ｘのゲートには信号ＢＩＡＳｏが供給されている。ビット線ＢＬｅの一端はトランジスタ６１ｙの電流通路の一端に接続されている。このトランジスタ６１ｙのゲートには信号ＢＩＡＳｅが供給されている。これらトランジスタ６１ｘ、６１ｙの電流通路の他端には、信号ＢＬＣＲＬが供給されている。トランジスタ６１ｘ、６１ｙは、信号ＢＩＡＳｏ、ＢＩＡＳｅに応じてトランジスタ６１ｖ、６１ｗと相補的にオンとされ、非選択のビット線に信号ＢＬＣＲＬの電位を供給する。
【００３５】
尚、前記ノードＮ３と接地間には、例えばＭＯＳキャパシタ６１ｚが接続されている。このキャパシタ６１ｚは、後述するＴＤＣのキャパシタ６１ｐを信号ＢＯＯＳＴにより昇圧する際、カップリングにより、ノードＮ３の電位が上昇し過ぎないように、ノードＮ３の電位を調整する。以後、ＰＤＣのデータはノードＮ１ａの電位、ＳＤＣのデータはノードＮ２ａの電位、ＴＤＣのデータはノードＮ３の電位とする。ＤＤＣＡ〜ＤＤＣＣのデータは、トランジスタ６１ｒＡ〜６１ｒＣのゲートの電位とする。
【００３６】
上記各信号及び電圧は、図２に示す制御信号及び制御電圧発生回路７により生成され、この制御信号及び制御電圧発生回路７の制御に基づき、データの書き込み、ベリファイ、読み出し動作が制御される。さらに、ＤＤＣＡ〜ＤＤＣＣは、ＤＤＣ制御回路７−１により、発生された制御信号によりリフレッシュされる。
【００３７】
本メモリは、１つのセルに８個の閾値電圧により、３ビットのデータを記憶する。この３ビットの切り替えはアドレス（第１ページ、第２ページ、第３ページ）によって制御される。
【００３８】
図９は、アドレス入力サイクルを示すタイミング図を示している。図９に示すコマンド・ラッチ・イネーブル信号ＣＬＥをローレベル（以下、ローレベルと記す）アドレス・ラッチ・イネーブル信号ＡＬＥをハイレベル（以下、ハイレベルと記す）として、ライトイネーブル信号ＷＥｎをローレベルからハイレベルとした時、外部から入力されるＩ／Ｏ０−７がアドレスとして読み取られる。
【００３９】
図１０は、入力サイクルとアドレスの割当てを示している。図１０に示すように、第１、第２サイクルはカラムアドレス、第３サイクルのＩ／Ｏ０−１（Ａ１６，Ａ１７）は、ページアドレスを切り替えるＭＬＣ（Multi Level Cell）アドレスであり、例えば（Ａ１６，Ａ１７）＝（Ｌ，Ｌ）のときロワーページ、（Ａ１６，Ａ１７）＝（Ｈ，Ｌ）のときアッパーページ、（Ａ１６，Ａ１７）＝（Ｌ，Ｈ）のときハイアーページとなる、第３サイクルのＩ／Ｏ３（Ａ１８）は、２本のビット線（ＢＬｉｅ、ＢＬｉｏ）の一方を選択し、第３サイクルのＩ／Ｏ３−７（Ａ１９−Ａ２３）は、ＮＡＮＤセル内の３２本のワード線の１つを選択する。第４、５サイクルはブロックアドレスを示している。
【００４０】
図１１は、メモリセルアレイ（プレーン０、１）とブロックの関係を示している。図１１に示すように、本ＮＡＮＤ型フラッシュメモリは、２つのプレーン０、１を有している。各プレーン０，１は、例えば図２に示すメモリセルアレイ１、ビット線制御回路２、カラムデコーダ３、ワード線制御回路６有している。制御信号及び制御電圧発生回路７、制御信号入力端子８、データ入出力バッファ４、データ入出力端子５は、各プレーンに共有される。尚、図１１には、ビット線制御回路２のみを示している。
【００４１】
また、プレーン０にブロック０〜２０４７が配置され、プレーン１にブロック２０４８〜４０９５が配置されている。このように、プレーン０、１に対して複数のブロックが配置されているため、プレーンを第５サイクルのＩ／Ｏ３（Ａ３６）で選択する。また、各プレーン内の任意のブロックを１ずつ、合計２ブロック同時に選択して、リード、プログラム、イレーズすることが可能とされている。
【００４２】
図１２は、メモリセルのデータとメモリセルの閾値電圧分布の関係を表している。消去動作を行うとメモリセルのデータは一番左の閾値電圧となる。書き込み動作により、１つのセルに３ビット（８値）のデータが記憶されることによって８個の閾値分布となる。
【００４３】
上記構成において、動作について説明する。
【００４４】
（プログラム及びプログラムベリファイ）
（プログラム順序）
図１３は、ＮＡＮＤセルの書き込み順序を示している。ブロック内において、ソース線に近いメモリセルからページごとに書き込み動作を行なう。図１４（ａ）〜（ｆ）は、書き込み毎の閾値電圧の遷移を示している。図１３、図１４（ａ）〜（ｆ）に示すように、第１ステージ、第２ステージの２回の書き込み動作により、１つのセルに３ビット（８値）のデータが書き込まれる。
【００４５】
先ず、第０回目の書き込み［０］において、ワード線ＷＬ０、ビット線ＢＬｅのセルに、第１ステージの書き込み動作により、ロワーページ、アッパーページ、ハイアーページ（ページアドレス：０，１，２）の３ビット（７値）のデータが書き込まれる。この結果、図１４（ａ）に示す閾値電圧の分布となる。
【００４６】
次に、第１回目の書き込み［１］において、ワード線ＷＬ０、ビット線ＢＬｏのセルに、第１ステージの書き込み動作により、ロワーページ、アッパーページ、ハイアーページ（ページアドレス：３，４，５）の３ビット（７値）のデータが書き込まれる。
【００４７】
次に、第２回目の書き込み［２］において、ワード線ＷＬ１、ビット線ＢＬｅのセルに、第１ステージの書き込み動作により、ロワーページ、アッパーページ、ハイアーページ（ページアドレス：６，７，８）の３ビット（７値）のデータが書き込まれる。
【００４８】
次に、第３回目の書き込み［３］において、ワード線ＷＬ１、ビット線ＢＬｏのセルに、第１ステージの書き込み動作により、ロワーページ、アッパーページ、ハイアーページ（ページアドレス：９，１０，１１）の３ビット（７値）のデータが書き込まれる。
【００４９】
すると、例えばワード線ＷＬ０、ビット線ＢＬｅのセルの閾値電圧の分布は、図１４（ｂ）に破線で示すように、隣接セルの閾値電圧が変化することにより、広がってしまう。
【００５０】
次に、第４回目の書き込み［４］において、ワード線ＷＬ０、ビット線ＢＬｅのセルに、第２ステージの書き込み動作により、ロワーページ、アッパーページ、ハイアーページ（ページアドレス：０，１，２）の３ビット（８値）のデータが書き込まれ、図１４（ｃ）に実線で示す閾値分布となる。
【００５１】
次に、第５回目の書き込み［５］において、ワード線ＷＬ０、ビット線ＢＬｏのセルに、第２ステージの書き込み動作により、ロワーページ、アッパーページ、ハイアーページ（ページアドレス：３，４，５）の３ビット（８値）のデータが書き込まれる。
【００５２】
次に、第６回目の書き込み［６］において、ワード線ＷＬ２、ビット線ＢＬｅのセルに、第１ステージの書き込み動作により、ロワーページ、アッパーページ、ハイアーページ（ページアドレス：１２，１３，１４）の３ビット（７値）のデータが書き込まれる。
【００５３】
次に、第７回目の書き込み［７］において、ワード線ＷＬ２、ビット線ＢＬｏのセルに、第１ステージの書き込み動作により、ロワーページ、アッパーページ、ハイアーページ（ページアドレス：１２，１３，１４）の３ビット（７値）のデータが書き込まれる。
【００５４】
次に、第８回目の書き込み［８］において、ワード線ＷＬ１，ビット線ＢＬｅのセルに、第２ステージの書き込み動作により、ロワーページ、アッパーページ、ハイアーページ（ページアドレス：６，７，８）の３ビット（８値）のデータが書き込まれる。
【００５５】
次に、第９回目の書き込み［９］において、ワード線ＷＬ１、ビット線ＢＬｏのセルに、第２ステージの書き込み動作により、ロワーページ、アッパーページ、ハイアーページ（ページアドレス：９，１０，１１）の３ビット（８値）のデータが書き込まれる。
【００５６】
すると、例えばワード線ＷＬ０、ビット線ＢＬｅのセルの閾値電圧の分布は、図１４（ｄ）に破線で示すように、隣接セルの閾値電圧が変化することにより広がってしまう。
【００５７】
図１５は、図４に示す１つのＮＡＮＤセルに関して、上記のような書き込み動作を行った場合を示している。図１５において、図１３と同一書き込み順序、同一ページアドレスには同一符号を付している。図１５に示す書き込み動作の場合においても、各メモリセルの閾値レベルは図１４に示すように変化する。このため、図１５に示す書き込み動作の場合も上記と同様の問題を有している。
【００５８】
そこで、第１の実施形態は、次のような書き込み動作により、隣接セルの書き込み動作による閾値レベルの変動を防止している。
【００５９】
図１は、第１の実施形態に係る書き込み動作を示している。この書き込み動作は、例えば図２に示す制御信号及び制御電圧発生回路７、又は、ホスト１１により実行される。図１４、図１５を参照して書き込み動作について説明する。
【００６０】
図１４、図１５に示す書き込み順序の場合、先ず、ホスト１１から送られてきたデータが最後かどうかを判別し、最後のデータである場合と、最後のデータではない場合、つまり続けて次のページの書き込みがある場合で書き込み動作が異なっている。
【００６１】
すなわち、先ず、ホスト１１から送られてきたデータが、最後かどうかが判別される（Ｓ１）。例えばホスト１１から送られてきたデータが有るかどうかが判別される。この結果、送られてきたデータが有り、最後のデータではない場合、上記と同様の動作により、書き込むべきセルが本来の閾値レベルより低いレベルに書き込まれる。例えば書き込み［１］のページアドレス３，４，５が最後のデータではない場合、書き込み［１］に示すワード線ＷＬ１に接続されたメモリセルのページアドレス３，４，５に、本来の閾値レベルより低めの閾値レベルが書き込まれる（Ｓ２）。すなわち、この場合、本来のベリファイレベルより低めのベリファイレベルを用いてプログラムベリファイが行われる。この後、隣接セルに所定の閾値レベルが書き込まれる。すなわち、書き込むべきセルより前に書き込まれたセル、つまり、書き込み［２］に示すワード線ＷＬ０に接続されたメモリセルのページアドレス０，１，２に本来のベリファイレベルが書き込まれる（Ｓ３）。次いで、書き込むべきセルより後に書き込まれるセル、つまり、書き込み［３］に示すワード線ＷＬ２に接続されたメモリセルのページアドレス６、７、８に本来の閾値レベルより低い閾値レベルが書き込まれる（Ｓ４）。
【００６２】
この後、書き込むべきセルに本来の閾値レベルが書き込まれる（Ｓ５）。つまり、書き込み［４］に示すワード線ＷＬ１に接続されたメモリセルのページアドレス３，４，５に、本来の閾値レベルが書き込まれる。このような動作がホスト１１から送られてきたデータに従って実行される。
【００６３】
一方、例えば書き込み［１］のページアドレス３，４，５が最後のデータである場合、次のように動作する。前記ステップＳ１において、書き込み［１］のページアドレス３，４，５に続く、書き込み［３］のページアドレス６，７，８データが、ホスト１１から送られてないと判別された場合、ステップＳ６に制御が移行される。このステップＳ６において、書き込み［１］に示すワード線ＷＬ１に接続されたメモリセルのページアドレス３，４，５に、本来の閾値レベルより低めの閾値レベルが書き込まれる。すなわち、この場合、本来のベリファイレベルより低めのベリファイレベルを用いてプログラムベリファイが行われる。この後、隣接セルに所定の閾値レベルが書き込まれる（Ｓ７）。すなわち、既に送られているページアドレス０，１，２のデータに基づき、書き込み［２］に示すワード線ＷＬ０に接続されたメモリセル、つまり、書き込むべきセルより前に書き込まれたセルのページアドレス０，１，２に本来のベリファイレベルが書き込まれる。
【００６４】
この後、書き込むべきセルに本来の閾値レベルが書き込まれる（Ｓ８）。つまり、書き込み［４］に示すように、最後に送られてきたページアドレス３，４，５のデータに基づき、ワード線ＷＬ１に接続されたメモリセルのページアドレス３，４，５に、本来の閾値レベルが書き込まれる。このような動作がホスト１１から送られてきたデータに従って実行される。
【００６５】
この後、時間が経過し、書き込みを再会する場合、例えばホスト１１の指示により、最後に書き込んだメモリセルと隣接するセルには書き込まず、最後に書き込んだメモリセルと離れたセルに書き込む。すなわち、上記のように、書き込み［１］のページアドレス３，４，５が最後の書き込みであった場合、書き込み［３］のページアドレス６，７，８には書き込まず、ホスト１１は、例えば書き込み［５］のページアドレス９，１０，１１から書き始めるように制御する。
【００６６】
すなわち、書き込み再開後、ホスト１１から書き込み［５］のページアドレス９，１０，１１のデータが送られてくると、制御がステップＳ１からＳ２乃至Ｓ５に移行され、上記と同様の書き込み動作が実行される。このため、書き込み済みのページアドレス０，１，２と、ページアドレス３，４，５のセルのデータの閾値電圧は、浮遊ゲート相互間のカップリングにより上昇しない。
【００６７】
尚、上記説明では、書き込み[３]に変えて書き込み[５]に位置するセルにデータを書き込んだが、これに限らず、書き込み[５]に対してワード線方向に隣接する図示せぬ書き込み[７]に位置するセルにデータを書き込んでもよい。
【００６８】
上記第１の実施形態によれば、書き込みデータが最後のデータである場合、メモリセルに本来の閾値レベルを書き込んでいる。このため、最後に書き込んだメモリセルは、隣接セルのデータ送られて来る以前に書き込みを完了できるため、時間経過に伴う閾値レベルの変動を防止することができる。
【００６９】
しかも、書き込みが再開された場合、前回の書き込み動作の最後に書き込んだメモリセルと隣接するセルには書き込まず、最後に書き込んだメモリセルから離れたメモリセルにデータを書き込んでいる。このため、前回の書き込み動作の最後に書き込んだセルの閾値レベルの変動を防止することが可能である。
【００７０】
尚、上記説明は、図１５に示す構成のメモリセルアレイについて説明したが、図１３に示すメモリセルアレイについても同様である。
【００７１】
また、隣接するセルは、特定のメモリセルに対してワード線方向、ビット線方向に隣接するセルに限定されるものではない。例えば図１３において、特定のメモリセルを書き込み[２]のメモリセルとした場合、書き込み[７]のメモリセルは書き込み[２]のメモリセルに対して斜め方向に隣接している。この書き込み[７]のメモリセルも、書き込み[２]のメモリセルとのカップリング容量が大きい場合、書き込み[７]のメモリセルにデータが書き込まれたとき、書き込み[２]のメモリセルの閾値レベルが変動する。このため、特定のメモリセルに対して斜め方向に配置されたメモリセルも、特定のメモリセルとの間のカップリング容量が大きい場合、隣接セルとして考慮される。また、特定のメモリセルに対して斜め方向に配置されたメモリセルと、特定のメモリセルとの間のカップリング容量が小さい場合は、隣接セルとしては扱わない。
【００７２】
（第２の実施形態）
図１６は、第２の実施形態を示すものであり、図１と同一部分には同一符号を付している。第２の実施形態において、ホスト１１は、ＮＡＮＤ型フラッシュメモリに供給する最後のデータに続いて、特定のコマンド、例えば書き込み速度を低下させるコマンドを出力し、制御信号及び制御電圧発生回路７は、このコマンドに応じて例えば書き込み速度を低下させる。
【００７３】
例えば図１５に示す書き込み順序において、ホスト１１から特定のコマンドが出力されるまでは、図１６に示すステップＳ１１、Ｓ２、Ｓ３、Ｓ４、Ｓ５に従って上記と同様の書き込み動作が実行される。
【００７４】
一方、例えばページアドレス３，４，５が最終である場合、制御がステップＳ１１からステップＳ１２に移行される。この場合、ホスト１１は、このページアドレス３，４，５に続いて特定のコマンドを出力する。制御信号及び制御電圧発生回路７は、このコマンドを受けると（Ｓ１２）、書き込むべきセルの例えば書き込み速度を遅くする（Ｓ１３）。具体的には、例えばワード線に供給するプログラム電圧の印加時間を短縮したり、プログラム電圧の増加分を少なく設定したりする。書き込み速度を遅くすることにより、図１４（ｅ）に示すように、各閾値レベル分布を本来の閾値レベル分布より狭く設定することができる。
【００７５】
このように、各閾値レベル分布を狭く設定した場合、次回の書き込みにおいて、隣接セルが書き込まれ、隣接セルの浮遊ゲート間のカップリングにより先に書き込んだセルの閾値レベルが広がった場合においても、図１４（ｆ）に示すように、各閾値レベルの間隔を確保することができる。したがって、各閾値レベルを読み出すことが可能となる。
【００７６】
上記第２の実施形態によれば、最後の書き込みデータの後に特定のコマンドをホスト１１から供給し、このコマンドに応じて最後に書き込まれるセルの閾値レベルを本来の閾値レベル分布より狭く設定している。このため、隣接セルにデータを書き込んだ場合においても、既に書き込んだセルの閾値レベル分布が大幅に広がることを防止でき、読み出し時のマージンを確保することができる。
【００７７】
尚、図１３の場合、場合によっては最後の１つ前と、最後に書き込まれるセルの閾値レベルをコマンドによって区別する。
【００７８】
（第３の実施形態）
図１７は、第３の実施形態を示しており、図１と同一部分には同一符号を付している。
【００７９】
例えば図１５に示す書き込み順序において、書き込みの最初と最後以外の動作は、第１の実施形態と同様である。一方、図１５に示す、例えば書き込み［１］のページアドレス３，４，５が最終の書き込みである場合、すなわち、ホスト１１から書き込み［３］のデータが送られてこない場合、制御がステップＳ１からステップＳ２２に移行され、書き込み対象セルに、図１４（ａ）（ｂ）に示すように、本来の閾値レベルより低めの閾値レベルが書き込まれる。
【００８０】
この後、書き込みが再開され、ホスト１１から書き込みコマンドと共に隣接セルの書き込みデータが供給された場合、制御がステップＳ２１からステップＳ２３に移行される。ステップＳ２３では、前回の書き込み［１］に対して、例えば書き込み［３］に示すページアドレス６、７、８のデータがホスト１１から供給された場合、書き込み［３］のデータに書き込む前に、書き込み［１］において本来の閾値レベルより低めに書いたセルのデータを読み出し、このデータを図４に示すデータ記憶回路１０に記憶する。次いで、書き込み［３］において、書き込むべきセルに本来の閾値レベルより低めの閾値レベルで書き込む（Ｓ２４）。この後、書き込み［４］において、データ記憶回路１０に記憶したデータに基づき、書き込み［１］において書いたセルの閾値レベルを本来の閾値レベルまで書き込む（Ｓ２５）。この後、書き込み［５］において、隣接セルに本来の閾値レベルより低い閾値レベルが書き込まれ（Ｓ２６）、上記ホスト１１から供給された書き込み[４]に示すページアドレス３，４，５のデータが本来の閾値レベルに書き込まれる（Ｓ２７）。
【００８１】
上記第３の実施形態によれば、セルに書き込むデータが最後のデータである場合、セルに本来の閾値レベルより低い閾値レベルを書き込み、次の書き込み時において、隣接セルにデータを書き込む際、既に書き込んだデータをデータ記憶回路１０に退避させ、隣接セルに本来の閾値レベルより低い閾値レベルを書き込んだ後、データ記憶回路１０に退避させたデータに基づき、先に書き込んだセルの閾値レベルを本来の閾値レベルに設定している。このため、書き込み再開後、隣接セルにデータを書き込んだ際に、カップリングにより先に書き込んだメモリセルの閾値レベルが広がることを防止できる。
【００８２】
尚、第３の実施形態において、最後に書き込まれたデータは、次回の書き込みの際、データ記憶回路１０に退避したが、これに限定されるものではなく、例えばホスト１１に退避させることも可能である。
【００８３】
上記第１乃至第３の実施形態は、書き込みの第１ステージにおいて、８値のデータを書き込む場合について説明した。しかし、これに限定されるのもではない。
【００８４】
また、上記第１乃至第３の実施形態は、図１５を参照して説明したが、図１３に示し書き込み順序の場合も同様に実施することができる。
【００８５】
図１８、１９、２０（ａ）〜（ｆ）は、第１乃至第３の実施形態の第１の変形例を示すものである。この例の場合、初めに２ビット（ロワーページとアッパーページ）のデータにより４値を書き込み（図２０（ａ））、この後、隣接セルに４値を書き込む（図２０（ｂ））。次いで、１ビット（ハイアーページ）又は３ビット（ロワーページ、アッパーページ、ハイアーページ）のデータにより、低めのベリファイレベルを用いて低めの閾値レベルまで８値を書き込む（図２０（ｃ））。この後、隣接セルに４値を書き込み、さらに、隣接セルに、１ビット（ハイアーページ）又は３ビット（ロワーページ、アッパーページ、ハイアーページ）のデータを用いて８値の閾値レベルを書き込む（図２０（ｄ））。続いて、再び３ビットのデータ（ロワーページ、アッパーページ、ハイアーページ）及び本来のベリファイレベルを用いて、８値を本来の閾値レベルまで書き込む（図２０（ｅ））。さらに、同様にして隣接セルに８値を書き込む（図２０（ｆ））。
【００８６】
図２１、２２、２３（ａ）〜（ｆ）は、第１乃至第３の実施形態の第２の変形例を示すものである。この例の場合、初めに１ビット（ロワーページ）のデータにより２値を書き込む（図２３（ａ））。この後、隣接セルに２値を書き込む（図２３（ｂ））。次に、２ビット（アッパーページ、ハイアーページ）又は３ビット（ロワーページ、アッパーページ、ハイアーページ）のデータにより８値を低めのベリファイレベルまで書き込む（図２３（ｃ））。この後、隣接セルに２ビット（アッパーページ、ハイアーページ）又は３ビット（ロワーページ、アッパーページ、ハイアーページ）のデータを用いて８値を書き込む（図２３（ｄ））。次いで、再び３ビットのデータ（ロワーページ、アッパーページ、ハイアーページ）のデータを用いて８値を本来の閾値レベルまで書き込む（図２３（ｅ））。さらに、同様にして隣接セルに８値を書き込む（図２３（ｆ））。
【００８７】
第３の変形例において、図２３（ｅ）に示す閾値レベルの分布幅は、図１４（ｄ）に示す閾値レベルの分布幅と、図２０（ｅ）に示す閾値レベルの分布幅の中間となる。
【００８８】
上記第１、第２の変形例は、いずれも浮遊ゲート間のカップリングが大きい場合に用いると有効である。
【００８９】
次に、第１乃至第３の実施形態に適用される各種動作について説明する。
【００９０】
（アドレス入力及びデータ入力）
図２４は、アドレス及びデータの入力タイミングを示している。図２４に示すように、データロードコマンド（８０ｈ：ｈは１６進数を示す）とアドレスと、書き込みデータを入力する。書き込みデータは、アドレスで指定されたプレーンのデータ記憶回路１０、具体的には、図８に示すＳＤＣに記憶される。この後、データ転送コマンド（１Ａｈ）、又は書き込みコマンド（１０ｈ又は１５ｈ）が入力される。すると、選択されているプレーンのデータ記憶回路１０内のＳＤＣのデータがＰＤＣに転送され、さらに、ＤＤＣに転送される。この後、データキャッシュの操作が行われ、ホスト１１よりデータ“１”（書き込みを行なわない）が入力されると、ＰＤＣのノードＮ１ａはハイレベルになり、データ“０”（書き込みを行なう）が入力されるとローレベルとなる。以後、ＰＤＣのデータはノードＮ１ａの電位、ＳＤＣのデータはノードＮ２ａの電位とする。
【００９１】
図２５（ａ）は、上記第１の変形例に適用されるコマンドとデータの関係を示している。この場合、第１ステージで２ビット（４値）の書き込みを行う。先ず、ロワーページのアドレスとデータを入力し、データ転送コマンド（１Ａｈ）を入力する。この後、アッパーページアドレスとデータを入力し、書き込みコマンド（１０ｈ又は１５ｈ）を入力する。回路内部では、アッパーページのアドレスが入力されているため、４値の書き込みであることが分かる。
【００９２】
図２５（ｂ）は、上記第２の変形例に適用されるコマンドとデータの関係を示している。この場合、第１ステージで１ビット（２値）の書き込みを行う。このため、先ずロワーページのアドレスとデータを入力し、書き込みコマンド（１０ｈ又は１５ｈ）を入力する。
【００９３】
図２５（ｃ）も、第１ステージで２ビット（４値）の書き込みを行う場合である。この場合、ロワーページとアッパーページを替えても、アッパーページが入力されているため、４値の書き込みと認識できる。
【００９４】
図２５（ｄ）は、８値を低めの閾値レベルに書き込む場合（第１回目）であり、８値を最終値まで書き込む場合（第２回目）と区別するため、コマンド（０Ｄｈ）が追加されている。この場合、先ず、ロワーページのアドレスとデータを入力し、データ転送コマンド（１Ａｈ）を入力した後、アッパーページアドレスとデータを入力し、データ転送コマンド（１Ａｈ）を入力する。この後、ハイアーページアドレスとデータを入力し、書き込みコマンド（１０ｈ又は１５ｈ）を入力する。
【００９５】
図２５（ｅ）は、８値を低めの閾値レベルに書き込む場合より前に、２値ロワーページのデータが既に書き込まれている場合を示している。この場合、ロワーページのデータを外部から入力する必要はなく、メモリセルからロワーページのデータを読み出して、データ記憶回路１０に記憶させる内部データロードが行なわれる。したがって、アッパーページアドレスとデータを入力し、データ転送コマンド（１Ａｈ）を入力した後、ハイアーページアドレスとデータを入力し、データ転送コマンド（１Ａｈ）を入力する。このように、内部データロードを用いるほかに、図２５（ｄ）と同様に、再度ロワーページのデータを外部より入力してもよい。
【００９６】
図２５（ｆ）は、８値を低めの閾値レベルに書き込む場合より前に、４値ロワーページ、アッパーページのデータが既に書き込まれている場合を示している。この場合、ロワーページ、アッパーページのデータを外部から入力する必要はなく、内部データロードによりロワーページとアッパーページを読む。したがって、ハイアーページアドレスとデータを入力し、書き込みコマンド（１０ｈ又は１５ｈ）を入力する。このように、内部データロードを用いてもよいが、図２５（ｄ）と同様に、再度ロワーページとアッパーページのデータを外部より入力してもよい。
【００９７】
図２５（ｇ）は、３ビット（８値）の書き込みを行う場合を示している。この場合、先ず、ロワーページのアドレスとデータを入力し、データ転送コマンド（１Ａｈ）を入力する。この後、アッパーページのアドレスとデータを入力し、データ転送コマンド（１Ａｈ）を入力する。次いで、ハイアーページのアドレスとデータを入力し、書き込みコマンド（１０ｈ又は１５ｈ）を入力する。ハイアーページのアドレスが入力されているため、３ビット（８値）の書き込みであることが認識される。
【００９８】
図２５（ｇ）に代えて、図２５（ｈ）に示すように、入力するアドレス及びデータの銃所を変えることも可能である。また、内部データロードを用いてもよい。
【００９９】
（データ転送コマンド）
ホスト１１からデータ転送コマンド（１Ａｈ）が供給されると、選択されているプレーンのデータ記憶回路１０内のＳＤＣのデータがＰＤＣに転送され、さらに、ＤＤＣに転送される。ＤＤＣはキャパシタンスであるため、リフレッシュ動作が必要である。したがって、転送コマンド（１Ａｈ）を入力後、ＤＤＣへの転送動作が済むと、次のデータの入力待ちのため、チップはビジー状態からレディ状態となる。しかし、チップ内部では、リフレッシュ動作を繰り返される。
【０１００】
（書き込みシーケンス：データロード、プログラムセット）
図２６は、書き込みシーケンスを示し、図２７（ａ）〜（ｅ）は、図２６に対応した各部のデータを示している。図２７（ａ）は、ホスト１１より供給されるデータと書き込みレベルの関係を示している。図２６に示すステップ３１において、“８０ｈ−Ａｄｄ−Ｄａｔａ”が実行されると、任意のページ（例えば２ｋＢ）のデータがホスト１１からＳＤＣに供給される。１ページのみのデータ入力の場合、書き込みコマンドである１０ｈ又はキャッシ書き込みコマンド１５ｈが入力される（Ｓ３２）。複数ページのデータが供給される場合、コマンド１Ａｈが入力される（Ｓ３３）。第１回目のコマンド１Ａｈのとき、ＳＤＣのデータは例えばＤＤＣＡ（ＬＤＤＣ１）へ転送され、第２回目のコマンド１Ａｈのとき転送され、ＳＤＣのデータは例えばＤＤＣＢ（ＬＤＤＣ０）へ転送され、第３回目のコマンド１Ａｈのとき、ＳＤＣのデータはＤＤＣＣ（ＬＤＤＣＱ）へ転送される。ここで、ＬＤＤＣ０，ＬＤＤＣ１、ＬＤＤＣＱは、ＤＤＣＡ、ＤＤＣＢ、ＤＤＣＣの何れかに記憶されたデータを示している。これらデータは、ＳＤＣを介したリフレッシュ動作により、ＤＤＣＡ、ＤＤＣＢ、ＤＤＣＣの何れかに記憶される。
【０１０１】
この後、書き込みコマンドである１０ｈ又はキャッシ機能つき書き込みコマンド１５ｈが入力され（Ｓ３５，Ｓ３６）、チップはビジー状態となる。
【０１０２】
チップ内部では、ＳＤＣのデータをＬＤＤＣＱへ転送した後、内部データロードを行う場合（Ｓ３７）、メモリセルからデータをロードする。この結果はＬＤＤＣＱ、ＬＤＤＣ１に転送される。ホスト１１より入力されたデータ、内部データロードにより入力されたデータ、及び入力後のデータキャッシュに記憶されるデータの関係を、図２７（ｃ）に示す。
【０１０３】
この後、データキャッシュ操作及びデータキャッシュの定義が行なわれる（Ｓ３８）（図２７（ｄ））。本例では、書き込み及び非書き込みの区別をＰＤＣに記憶し、書き込みの場合、ＰＤＣ＝０、非書き込みの場合、ＰＤＣ＝１である。
【０１０４】
本来のベリファイレベルの他に低めのベリファイレベルを設定し、この低めのベリファイレベルを超えた以降の書き込みを小さくすることで、書き込み分布を狭めることが可能である。この低めのベリファイレベルを超えたかどうかの区別をＬＤＤＣＱに記憶する。低めのベリファイレベルを超えていない場合、ＬＤＤＣＱ＝０、低めのベリファイレベルを超えた場合、ＬＤＤＣＱ＝１とする。
【０１０５】
８値の書き込みの場合、８値を区別するため３ビット必要であり、ＳＤＣ，ＬＤＤＣ１，ＬＤＤＣ０を使う。４値の書き込みの場合、４値を区別するため２ビット必要であり、ＬＤＤＣ１，ＬＤＤＣ０を使う。２値の書き込みの場合、２値を区別するため１ビット必要であり、ＬＤＤＣ０を使う。これらの書き込みレベルとデータキャッシ内に設定されるデータを、図２７（ｅ）に示す。低い閾値から高い閾値へ、０−レベルから７−レベルと定義してある。消去動作により０−レベルとなり、書き込み動作により１−レベルから７−レベルへ変化する。尚、０−レベルへの書き込みを行う場合もある。
【０１０６】
ＲＥＡＳＢ（Revised Erased Area Self Boost）方式の書き込みにおいて、選択ワード線をプログラム電圧Ｖｐｇｍ（２４Ｖ）に設定し、選択ワード線に対してソース側に隣接するワード線をＶｐａｓｓ又は中間電位に設定し、そのまたワード線に隣接するワード線を接地電圧Ｖｓｓに設定してオフさせることにより、誤書き込みを防止する。しかし、消去セルの閾値レベルが低く過ぎるとオフしなくなってしまう。
【０１０７】
データの書き込み中、低い閾値レベルへの書き込みは、高い閾値レベルへの書き込みより早く完了する。このため、キャッシ機能付き書き込みコマンド１５ｈが入力された場合、８値の書き込みにおいて、０−レベルから３−レベルへの書き込みが完了すると、ＳＤＣのデータデータが不要になる。このため、チップ外部にレディ状態を出力し、次の書き込みデータを入力する。この後、コマンド１Ａｈ／１０ｈ／１５ｈの入力によりビジー状態となる。
【０１０８】
また、４−レベルから５−レベルへの書き込みが完了すると、ＬＤＤＣ１のデータデータが不要になる。このため、ＳＤＣに入力されているデータをＬＤＤＣ１に転送した後、チップ外部にレディ状態を出力する。すると、次の書き込みデータがＳＤＣに入力される。この後、コマンド１Ａｈ／１０ｈ／１５ｈの入力によりビジー状態となる。
【０１０９】
さらに、６−レベルへの書き込みが完了すると、ＬＤＤＣ０のデータデータも不要になる。このため、ＳＤＣに入力されているデータをＬＤＤＣ０に転送した後、チップ外部にレディ状態を出力する。すると、次の書き込みデータがＳＤＣに入力される。この後、コマンド１Ａｈ／１０ｈ／１５ｈの入力によりビジー状態となる。この後、書き込みコマンドであるコマンド１５ｈ又は１０ｈによりビジー状態となり、前のページの書き込みが終了した後、次のページの書き込み動作が開始される。
【０１１０】
４値の書き込みの場合、もともとＳＤＣは使用しない。このため、データキャッシュ操作後、チップ外部にレディ状態を出力し、次の書き込みデータを入力する。この後、コマンド１Ａｈ／１０ｈ／１５ｈの入力によりビジー状態となる。
【０１１１】
０と１−レベルへの書き込みが完了すると、ＬＤＤＣ１のデータデータが不要になる。このため、ＳＤＣに入力されているデータをＬＤＤＣ１に転送した後、チップ外部にレディ状態を出力する。すると、次の書き込みデータがＳＤＣに入力される。この後、コマンド１Ａｈ／１０ｈ／１５ｈの入力によりビジー状態となる。
【０１１２】
また、２−レベルへの書き込みが完了すると、ＬＤＤＣ０のデータが不要になる。このため、ＳＤＣに入力されているデータをＬＤＤＣ０に転送した後、チップ外部にレディ状態を出力する。すると、次の書き込みデータがＳＤＣに入力される。この後、書き込みコマンドである１５ｈコマンド又は１０ｈコマンドによりビジー状態となり、前のページの書き込みが終了した後、次のページの書き込み動作が開始される。
【０１１３】
一方、２値の書き込みでは、もともとＳＤＣは使用しない。このため、データキャッシュの操作後、チップ外部にレディ状態を出力する。すると、次の書き込みデータが入力される。この後、コマンド１Ａｈ／１０ｈ／１５ｈの入力によりビジー状態となる。
【０１１４】
２値の書き込みでは、ＬＤＤＣ１は使用しない。このため、ＳＤＣに入力されているデータをＬＤＤＣ０に転送した後、チップ外部にレディ状態を出力する。すると、次の書き込みデータがＳＤＣに入力される。この後、コマンド１Ａｈ、１０ｈ又は１５ｈの入力によりビジー状態となる。
【０１１５】
２値の書き込みでは、ＬＤＤＣ０も使用しない。このため、ＳＤＣに入力されているデータをＬＤＤＣ０に転送した後、チップ外部にレディ状態を出力する。すると、次の書き込みデータがＳＤＣに入力される。この後、コマンド１Ａｈ、１０ｈ又は１５ｈの入力によりビジー状態となる。この後、書き込みコマンド１Ａｈ、１０ｈ又は１５ｈによりビジー状態となり、前のページの書き込みが終了した後、次のページの書き込み動作が開始される。
【０１１６】
このようにすることで、転送コマンド１Ａｈが３回続くこと、即ち、次の書き込みデータが３ページ、８値の場合にも本回路を使用できる。しかし、例えば次の書き込みが２値の場合、１ページのデータ入力の後、書き込みコマンドである１０ｈ／１５ｈが入力される。
【０１１７】
（プログラム設定）
データキャッシュの定義及びデータキャッシュ操作（Ｓ３８、Ｓ３９）の後、プログラム動作が行なわれる（Ｓ４０）。
【０１１８】
図８に示す信号ＢＬＣ１にＶｄｄ＋Ｖｔｈ（Ｖｄｄ：例えば電源電圧、Ｖｔｈ：ＮチャネルＭＯＳトランジスタの閾値電圧）の電圧を印加すると、ＰＤＣにデータ１（書き込みを行なわない）が記憶されている時、ビット線はＶｄｄとなり、ＰＤＣにデータ０（書き込みを行なう）が記憶されている時、ビット線がＶｓｓになる。また、選択されたワード線に接続され、非選択ページのセル（ビット線が非選択であるセル）は、書き込まれてはならない。このため、これらのセルに接続されているビット線もデータ１と同じようにＶｄｄを印加する。信号ＢＬＣ１をＶｓｓとした後、ＬＤＤＣＱの信号ＲＥＧをハイレベルとする。低めのベリファイレベルをパスしている場合、ビット線を中間電位とする。但し、書き込みループの１回目は、１度もベリファイ動作を行なっていないため、ビット線を中間電位にすることは無い。
【０１１９】
ここで、選択されているブロックのセレクト線ＳＧＳ（図３、図４に示す）をＶｄｄ、選択ワード線にＶｐｇｍ（２４Ｖ）、非選択ワード線にＶｐａｓｓ（１０Ｖ）を印加すると、ビット線がＶｓｓになっている場合、セルのチャネルがＶｓｓ、ワード線がＶｐｇｍとなるので書き込みが行なわれる。一方、ビット線がＶｄｄである場合、セルのチャネルがＶｓｓではなく、Ｖｐｇｍを上昇することとなり、カップリングによりＶｐｇｍ／２程度となる。このため、プログラムされない。また、ビット線が中間電位になっている場合、少しのみ書き込みが行われる。
【０１２０】
（プログラムとプログラムベリファイリード）
図２６に示すプログラムとベリファイ（Ｓ４１）を繰り返す。
【０１２１】
また、図２８は、ベリファイシーケンスにおけるワード線とビット線の波形を示している。先ず、１回のビット線ＢＬの充電後に、本来のベリファイレベル（０Ｖ，１Ｖ〜７Ｖ）より低いレベルについてベリファイレベル（０ＶＬ，１ＶＬ〜７ＶＬ）を順次変えてベリファイする。この後、１回のビット線ＢＬの充電後に、本来のベリファイレベル（０Ｖ，１Ｖ〜７Ｖ）を用いて、ベリファイする。このような動作により、高速なベリファイが可能である。
【０１２２】
図２９は、図２８の変形例を示している。メモリセルの各レベルの電位が近いとき、図２９に示すように、レベルを１レベルずつ飛ばして連続的にベリファイする。これは、例えば３−レベルでベリファイするとき、２−レベルと３−レベルの電位が近い場合、２−レベルのセルも電流が流れてしまうためである。
【０１２３】
各レベルでのベリファイがパスすると、ＰＤＣがローレベルからハイレベルとなり、次回のプログラムでは、書き込みが行われない。
【０１２４】
プログラムは複数回繰り返されるが、プログラムループの初めにおいて、高いレベルを書き込むセルはまだ書き込まれない。このため、最初は０−レベルのみ、０−レベル及び１−レベルのみ、０−レベルと１−レベルと２−レベルのみ、というように順次ベリファイ動作を行う。また、プログラムループの終わり頃は、低いレベルのセルは書き込が完了している。このため、最初は５−レベルと６−レベルと７−レベルのみ、６−レベルと７−レベルのみ、７−レベルのみというようにベリファイ動作を行う。このとき、例えば６−レベルと７−レベルのみのベリファイを行う場合、６−レベルの波形と、５−レベルと６−レベルと７−レベルを連続でベリファイした場合における６−レベルの波形が異なってしまう。このため、６−レベルと７−レベルのみベリファイする場合、５−レベルと６−レベルと７−レベルをベリファイする。ここで、５−レベルのベリファイはダミーとして用い、５−レベルのベリファイ操作では、データキャッシュの内容は変えない。
【０１２５】
（プログラム電圧ステップアップ）
上記ベリファイにおいて、書き込みが不十分と判別された場合、プログラム電圧Ｖｐｇｍを僅かに上昇させる（Ｓ４２）。この後、再度プログラム及びプログラムベリファイが繰り返される。
【０１２６】
（プログラム）
ＰＤＣがローレベルの場合、再び書き込み動作を行ない、全てのデータ記憶回路１０のＰＤＣがハイレベルとなるまで、プログラム動作とベリファイ動作が繰り返される（Ｓ４０）。すなわち、プログラム中、全てのＰＤＣがハイレベルとなっているかチェックされる。
【０１２７】
（消去動作）
イレーズ動作は、図３、図４の破線で示すブロック単位で行われる。また、図３において、データ記憶回路１０に接続されている２本のビット線（ＢＬｉｅ、ＢＬｉｏ）について同時に行う。消去後、セルの閾値は、図１２に示すように、レベル０となる。
【０１２８】
ＥＡＳＢ（Erased Area Self Boost）書き込み方法の場合、消去セルの閾値レベルを浅くする必要がある。
【０１２９】
先ず、図３０を参照して、ＥＡＳＢ書き込み方法について説明する。この書き込み方法では、必ずソース側から書き込む。まず、ビット線に書き込みの場合Ｖｓｓ、非書き込みの場合Ｖｄｄにする。次に、例えばＷＬ７のセルを書き込む場合、ワード線ＷＬ０〜４の電位をＶｐａｓｓ、ワード線ＷＬ５はＶｓｓ、ワード線ＷＬ６はＶｄｄ、ワード線ＷＬ７はＶｐｇｍ、ワード線ＷＬ８〜３１はＶｐａｓｓにする。このとき、書き込みの場合、ワード線ＷＬ７のゲートがＶｐｇｍ、チャネルがＶｓｓとなり書き込まれる。非書き込みの場合、チャネルは、ブースされて例えばＶｐａｓｓ／２となる。しかし、書き込まれたセルの数が多いと、チャネルはブーストされにくくなる。ところが、ＥＡＳＢ書き込み方法は、必ずソース側から書き込まれている。したがって、ワード線ＷＬ５をＶｓｓ＝０Ｖとしてブーストすると、ワード線ＷＬ４〜３１のセルは消去されているため、これらのセルのチャネルはブーストされ、書き込まれなくなる。このように、既に書き込まれたセルにブーストした電荷が移動しないようにしなくてはならず、ワード線ＷＬ５のセルが消去状態の場合で、閾値レベルが深いとオフしなくなってしまう。したがって、消去セルの閾値レベルを浅くする必要がある。
【０１３０】
このため、イレーズシーケンス中に、消去後、消去セルの閾値レベルを浅くする。又は、図１４、図２０、図２３に示すプログラムシーケンス中に閾値レベルを浅くする。また、イレーズシーケンス中に適度に浅くしておき、プログラムシーケンスに、精度よく浅くすることも可能である。図１４に示す書き込み順序では、第２ステージにおいて、消去セル（レベル０）を書き込んでいるが、第１ステージにおいて消去セルに書き込むことも可能である。
【０１３１】
また、図２０、図２３に示す書き込み順序では、第２ステージにおいて、消去セル（レベル０）を書き込んでいるが、第１ステージ、又は第３ステージにおいて消去セルに書き込むことも可能である。
【０１３２】
（読み出し動作）
図３１は、８レベルが書き込まれた後の閾値レベル分布とデータの割付を示している。ロワーページのデータを読む場合、４−レベルで読み出し動作を行う。この結果、セルがオンし、ビット線がローレベルとなった場合、出力データは“１”となり、セルがオフし、ビット線がハイレベルとなった場合、出力データは“０”となる。アッパーページのデータを読む場合、６−レベルと２−レベルで読み出し動作を行う。したがって、２シーケンスの読み出しが必要である。ハイアーページのデータを読む場合、７−レベルと５−レベルと３−レベルと１−レベルで読み出し動作を行う。したがって、４シーケンスの読み出しが必要である。
【０１３３】
図３２は、読み出し動作のアルゴリズムを示している。図３２において、読み出しコマンド００ｈ、読み出しアドレスＡｄｄ，転送コマンド３０ｈ／３１ｈ／３Ｆｈが供給されると（Ｓ４１）、制御信号及び制御電圧発生回路７の図示せぬポンプ回路が昇圧動作を開始し、読み出し電圧を発生する（Ｓ４２）。この後、発生された読み出し電圧により、読み出し動作が行われる（Ｓ４３）。メモリセルから読み出されたデータは、データ記憶回路１０のＰＤＣからＳＤＣに転送される（Ｓ４４）。この後、ＳＤＣのデータは、図２に示すデータ入出力バッファ４に転送され（Ｓ４５）、このデータ入出力バッファ４に転送されたデータは、データ入出力端子５を介してホスト１１に転送される。
【０１３４】
図３３は、図２８に示すプログラムベリファイによりプログラムをした場合における読み出し時のワード線とビット線の波形である。図２８において、例えば４−レベルのベリファイは、３−レベルの後に連続して行った。このため、図３３に示すリード動作もダミーで３−レベルのリードを行い、この後、連続して４−レベルのリードを行う。
【０１３５】
図３４は、図２９に示すプログラムベリファイによりプログラムをした場合のリードのワード線とビット線の波形である。図２９において、例えば４−レベルのベリファイは、２−レベルの後に連続して行った。このため、リード動作もダミーで２−レベルのリードを行い、この後、連続して４−レベルのリードを行う。
【０１３６】
（第４の実施形態）
ＮＡＮＤ型フラッシュメモリを構成するＮＡＮＤセルは、図３又は図４に示すように、ワード線ＷＬ０〜３１が制御ゲートに接続された３２個のセルが直列に接続され、セレクト線ＳＧＳとＳＧＤがゲートに接続された選択ゲートＳ１、Ｓ２で構成される。ワード線ＷＬ０に接続されたセルにデータを書き込む場合、ワード線ＷＬ０はＶｐｇｍ、ワード線ＷＬ１〜３１はＶｐａｓｓ、セレクト線ＳＧＤは電源電圧Ｖｄｄ又は中間電位、セレクト線ＳＧＳは接地電位Ｖｓｓに設定される。データ“１”を書き込む場合（書き込み非選択）、ビット線をＶｄｄとし、セルのチャネルがブートされ、高い電位となり、セルは書き込まれない。しかし、ワード線ＷＬ０にデータを書き込む場合、ワード線ＷＬ０がプログラム電圧Ｖｐｇｍであるため、非常に高い電圧までブートされる。しかも、セレクト線ＳＧＳは接地電位Ｖｓｓであるため、ＧＩＤＬ(Gate Induced Drain Leakage)が発生し、ワード線ＷＬ０に接続されたメモリセルが誤書き込みされてしまう問題がある。
【０１３７】
このため、例えば８値の場合、１セルは３ビットを記憶するが、３２個のセルを直列接続するのではなく、４３個のセルを直列接続し、ワード線ＷＬ０に接続されたセルのみ、４値、２ビットを記憶することとする。すると、１つのＮＡＮＤセルに、２ビット＋３ビット×４２＝１２８ビット記憶でき、２のべき乗とすることができる。しかも、ワード線ＷＬ０のセルは８値を記憶する必要がなく、４値の記憶あるため、高い閾値レベルまで書き込む必要がない。このため、高いプログラム電圧Ｖｐｇｍを必要とせず、ＧＩＤＬの問題を抑えることができる。
【０１３８】
また、ｎ値を記憶するメモリにおいて、ワード線ＷＬ０に接続されたセル、又は誤書き込みが発生する確率の高いワード線のみ、ｋ値（ｋ＜ｎ）を記憶することにより、ＧＩＤＬの問題を抑えることもできる。さらに、ワード線ＷＬ３１に接続されたセルも同様の構成とすることが可能である。
【０１３９】
さらに、図３５に示すように、ワード線ＷＬ０に接続されたメモリセルと、セレクト線ＳＧＳに接続された選択ゲートＳ1との間に、ダミーセルＤＭＣを設ける。このダミーセルＤＭＣは、例えば選択ゲートと同様のトランジスタ、又は破線で示すように、メモリセルと同じ構成とすることが可能である。このダミーセルＤＭＣのゲートは信号線ＳＧＤＵＭに接続されている。このような構成において、ワード線ＷＬ０に接続されたメモリセルにデータを書き込む時、ダミーセルＤＭＣに接続された信号線ＳＧＤＵＭを中間電位（＞Ｖｓｓ）とし、セレクト線ＳＧＳを接地電位Ｖｓｓとする。この構成によれば、ワード線ＷＬ０にプログラム電圧Ｖｐｇｍが印加された状態において、ダミーセルＤＭＣのゲートに接地電位より高い中間電位が印加されている。このため、ＧＩＤＬが発生することを抑制できる。プログラム時の選択ブロック以外において、ダミーセルＤＭＣのゲート電位は、セレクト線ＳＧＳと同じ電位とする。
【０１４０】
第４の実施形態によれば、ワード線ＷＬ０にデータ“１”を書き込む場合におけるＧＩＤＬの発生防止することができる。
【０１４１】
尚、上記例ではワード線ＷＬ０とセレクト線ＳＧＳとの間にダミーセルを設けたが、これに限定されるものではない。
【０１４２】
図３６は、ワード線ＷＬ３１とセレクト線ＳＧＤとの間にダミーセルＤＵＭを設けた場合を示している。図３６に示すように、セレクト線ＳＧＳ、ＳＧＤの両方に隣接してダミーセル設けることも可能である。さらに、図３６からセレクト線ＳＧＳに隣接するダミーセルを削除し、セレクト線ＳＧＤに隣接するダミーセルのみを設けてもよい。
【０１４３】
尚、第４の実施形態は、ワード線ＷＬ０又はＷＬ３１の誤書き込みを減らすため、ダミーセルを追加したが、ダミーを追加せずに誤書き込みを防止することも可能である。ワード線ＷＬ０とセレクト線ＳＧＳとの距離、ワード線ＷＬ３１とセレクト線ＳＧＤとの距離を他のワード線とワード線との間の距離よりを大きくする。
【０１４４】
その他、例えば第１の変形例において、ワード線ＷＬ０のみ、ベリファイレベルを全体的に下げ、プログラム電圧の増加分ＤＶｐｇｍを細かくし、１回１回の閾値の変化を細かくし、閾値分布幅を狭める。これにより、ワード線ＷＬ０に接続されたセルのプログラム時間が延びることが考えられる。しかし、ワード線ＷＬ０について、高いベリファイレベルがなくなるため、プログラム電圧Ｖｐｇｍを下げることができ、誤書き込みを低減することができる。
【０１４５】
第２の変形例において、ワード線ＷＬ０及びワード線ＷＬ１のベリファイレベルも全体的に下げ、ワード線ＷＬ１書き込み時のプログラム電圧の増加分ＤＶｐｇｍを細かくし、１回１回の閾値の変化を細かくし、閾値分布幅を狭める。このようにして、ワード線ＷＬ１に接続されたセルにデータを書き込むことによりワード線ＷＬ１に接続されたセルの閾値の移動が小さくなるため、ワード線ＷＬ０に接続されたセルの閾値レベルがカップリングにより変わる変動が小さくなる。このため、ワード線ＷＬ０のベリファイレベルも全体的に下げることが可能となり、ワード線ＷＬ０について、高いベリファイレベルがなくなるため、プログラム電圧Ｖｐｇｍを下げることができ、誤書き込みを低減することが可能である。さらに、第１の変形例、及び第２の変形例を合わせて実施することも可能である。
【０１４６】
その他、本発明は、上記各実施形態に限定されるものではなく、発明の要旨を変えない範囲において種々変形実施可能なことは勿論である。
【図面の簡単な説明】
【０１４７】
【図１】第１の実施形態の動作を示すフローチャート。
【図２】ＮＡＮＤ型フラッシュメモリの概略構成を示す図。
【図３】図２に示すメモリセルアレイ及びビット線制御回路の構成の一例を示す回路図。
【図４】図２に示すメモリセルアレイ及びビット線制御回路の構成の他の例を示す回路図。
【図５】図５（ａ）（ｂ）はメモリセル及び選択トランジスタを示す断面図。
【図６】ＮＡＮＤ型フラッシュメモリを示す断面図。
【図７】図６に示す各領域に供給される電圧の例を示す図。
【図８】図３に示すデータ記憶回路の一例を示す回路図。
【図９】アドレス入力サイクルを示すタイミング図。
【図１０】入力サイクルとアドレスの割当てを示す図。
【図１１】メモリセルアレイのプレーンとブロックの関係を示す図。
【図１２】メモリセルのデータとメモリセルの閾値電圧分布の関係を示す図。
【図１３】ＮＡＮＤセルの書き込み順序を示す図。
【図１４】図１４（ａ）〜（ｆ）は、書き込み毎の閾値電圧の遷移を示す図。
【図１５】図４に示す１つのＮＡＮＤセルの書き込み動作を示す図。
【図１６】第２の実施形態の動作を示すフローチャート。
【図１７】第３の実施形態の動作を示すフローチャート。
【図１８】第１乃至第３の実施形態の第１の変形例を示す図。
【図１９】第１乃至第３の実施形態の第１の変形例を示す図。
【図２０】第１の変形例の動作を示す図。
【図２１】第１乃至第３の実施形態の第２の変形例を示す図。
【図２２】第１乃至第３の実施形態の第２の変形例を示す図。
【図２３】第２の変形例の動作を示す図。
【図２４】アドレス及びデータの入力タイミングを示す図。
【図２５】図２５（ａ）〜（ｈ）は、上記第１の変形例に適用されるコマンドとデータの関係を示す図。
【図２６】書き込みシーケンスを示す図。
【図２７】図２７（ａ）〜（ｅ）は、図２６に対応した各部のデータを示す図。
【図２８】ベリファイシーケンスにおけるワード線とビット線の波形を示す図。
【図２９】図２８の変形例を示す図。
【図３０】ＥＡＳＢ書き込み方法を示す図。
【図３１】８レベルが書き込まれた後の閾値レベル分布とデータの割付を示す図。
【図３２】読み出し動作のアルゴリズムを示す図。
【図３３】図２８に示すプログラムベリファイによりプログラムをした場合における読み出し時のワード線とビット線の波形図。
【図３４】図２９に示すプログラムベリファイによりプログラムをした場合のリードのワード線とビット線の波形図。
【図３５】第４の実施形態を示す回路図。
【図３６】第４の実施形態の変形例を示す回路図。
【符号の説明】
【０１４８】
１…メモリセルアレイ、２…ビット線制御回路、５…データ入出力端子、７…制御信号及び制御電圧発生回路、８…制御信号入力端子、１０…データ記憶回路、１１…ホスト、ＤＭＣ…ダミーセル。
【図１】
2007287207.tif 000003
【図２】
2007287207.tif 000004
【図３】
2007287207.tif 000005
【図４】
2007287207.tif 000006
【図５】
2007287207.tif 000007
【図６】
2007287207.tif 000008
【図７】
2007287207.tif 000009
【図８】
2007287207.tif 000010
【図９】
2007287207.tif 000011
【図１０】
2007287207.tif 000012
【図１１】
2007287207.tif 000013
【図１２】
2007287207.tif 000014
【図１３】
2007287207.tif 000015
【図１４】
2007287207.tif 000016
【図１５】
2007287207.tif 000017
【図１６】
2007287207.tif 000018
【図１７】
2007287207.tif 000019
【図１８】
2007287207.tif 000020
【図１９】
2007287207.tif 000021
【図２０】
2007287207.tif 000022
【図２１】
2007287207.tif 000023
【図２２】
2007287207.tif 000024
【図２３】
2007287207.tif 000025
【図２４】
2007287207.tif 000026
【図２５】
2007287207.tif 000027
【図２６】
2007287207.tif 000028
【図２７】
2007287207.tif 000029
【図２８】
2007287207.tif 000030
【図２９】
2007287207.tif 000031
【図３０】
2007287207.tif 000032
【図３１】
2007287207.tif 000033
【図３２】
2007287207.tif 000034
【図３３】
2007287207.tif 000035
【図３４】
2007287207.tif 000036
【図３５】
2007287207.tif 000037
【図３６】
2007287207.tif 000038