制御ゲート及び電荷蓄積層を有する複数のメモリセルが直列接続され、その一端が第1の選択ゲートトランジスタを介してビット線に、他端が第2の選択ゲートトランジスタを介してソース線に接続されたNANDセルユニットを有し、複数の前記メモリセルの前記制御ゲートがそれぞれワード線に接続され、前記第1及び第2の選択ゲートトランジスタのゲートがそれぞれ第1及び第2の選択ゲート線に接続されたメモリセルアレイと、前記ワード線に所定の書き込み電圧を印加して前記メモリセルの前記電荷蓄積層の蓄積電荷量を制御してデータに応じたしきい値電圧を設定する書き込み制御を実行する制御回路とを備え、前記制御回路は、選択メモリセルへのデータ書き込みに際し、前記選択メモリセルに隣接し前記選択メモリセルへの前記データ書き込みの後にデータが書き込まれる参照メモリセルの書き込みデータに応じて前記データ書き込みに付随する補正書き込みを実行し、前記制御回路は、前記補正書き込みに際し、前記参照メモリセルのしきい値電圧が消去レベルのしきい値電圧である場合に、前記選択メモリセルへの前記補正書き込みを行うことを特徴とする不揮発性半導体記憶装置。前記制御回路は、前記補正書き込みに際し、前記参照メモリセルのしきい値電圧が消去レベルのしきい値電圧でない場合には、前記選択メモリセルへの前記補正書き込みを行わないことを特徴とする請求項1記載の不揮発性半導体記憶装置。前記制御回路は、前記補正書き込みに際し、前記参照メモリセルのしきい値電圧が消去レベルのしきい値電圧でない場合にも、前記選択メモリセルへの前記補正書き込みを行い、前記制御回路は、前記参照メモリセルのしきい値電圧に応じて前記選択メモリセルの前記補正書き込みの程度を決定することを特徴とする請求項1記載の不揮発性半導体記憶装置。前記制御回路は、前記補正書き込み時のベリファイ読み出しに際し、前記選択メモリセルに隣接するメモリセルに接続されたワード線に前記データ書き込み時のベリファイ読み出しよりも高い読み出し電圧を印加することを特徴とする請求項1乃至3のいずれか記載の不揮発性半導体記憶装置。前記制御回路は、前記選択メモリセルへの前記データ書き込みを行った後、前記メモリセルアレイへのアクセスが行われない期間中にバックグラウンドで前記選択メモリセルへの前記補正書き込みを実行することを特徴とする請求項1乃至4のいずれか記載の不揮発性半導体記憶装置。本発明は、隣接セル間の干渉によるしきい値電圧変動の影響を抑制することのできる不揮発性半導体記憶装置を提供することを目的とする。一の実施の形態に係る不揮発性半導体記憶装置は、制御ゲート及び電荷蓄積層を有する複数のメモリセルが直列接続され、その一端が第1の選択ゲートトランジスタを介してビット線に、他端が第2の選択ゲートトランジスタを介してソース線に接続されたNANDセルユニットを有し、複数のメモリセルの制御ゲートがそれぞれワード線に接続され、第1及び第2の選択ゲートトランジスタのゲートがそれぞれ第1及び第2の選択ゲート線に接続されたメモリセルアレイと、ワード線に所定の書き込み電圧を印加してメモリセルの電荷蓄積層の蓄積電荷量を制御してデータに応じたしきい値電圧を設定する書き込み制御を実行する制御回路とを備える。制御回路は、選択メモリセルへのデータ書き込みに際し、選択メモリセルに隣接し選択メモリセルへのデータ書き込みの後にデータが書き込まれる参照メモリセルの書き込みデータに応じてデータ書き込みに付随する補正書き込みを実行する。制御回路は、補正書き込みに際し、参照メモリセルのしきい値電圧が消去レベルのしきい値電圧である場合に、選択メモリセルへの補正書き込みを行う。次に、図面を参照して、実施の形態に係る不揮発性半導体記憶装置について説明する。[第1の実施の形態][構成]図1は、第1の実施の形態に係る不揮発性半導体記憶装置の構成を示している。この不揮発性半導体記憶装置は、4値記憶方式を採用したNAND型フラッシュメモリである。不揮発性半導体記憶装置は、データを記憶するメモリセルMCをマトリックス状に配置してなるメモリセルアレイ1を備えている。メモリセルアレイ1は、複数のビット線BL、複数のワード線WL、ソース線SRC、及び複数のメモリセルMCを含む。メモリセルMCは、電気的にデータを書き換え可能に構成され、ビット線BLとワード線WLの交点にマトリクス状に配置されている。メモリセルアレイ1には、ビット線BLの電圧を制御するためのビット線制御回路2、及びワード線WLの電圧を制御するためのワード線制御回路6が接続されている。すなわち、ビット線制御回路2は、ビット線BLを介してメモリセルアレイ1中のメモリセルMCのデータを読み出す一方、ビット線BLを介してメモリセルアレイ1中のメモリセルMCに制御電圧を印加してメモリセルMCに書き込みを行う。ビット線制御回路2には、カラムデコーダ3、データ入出力バッファ4及びデータ入出力端子5が接続されている。メモリセルアレイ1から読み出されたメモリセルMCのデータは、データ入出力端子5から外部へ出力される。また、外部からデータ入出力端子5に入力された書き込みデータは、カラムデコーダ3によってビット線制御回路2に入力され、指定されたメモリセルMCへの書き込みが行われる。また、メモリセルアレイ1、ビット線制御回路2、カラムデコーダ3、データ入出力バッファ4、及びワード線制御回路6は、制御回路7に接続されている。制御回路7は、制御信号入力端子8に入力される制御信号に従い、ビット線制御回路2、カラムデコーダ3、データ入出力バッファ4、及びワード線制御回路6を制御するための制御信号を発生させる。図2は、図1に示すメモリセルアレイ1の構成を示している。メモリセルアレイ1は、図2に示すように、複数のブロックBにて構成されている。メモリセルアレイ1においては、このブロックB単位でデータが消去されるブロック消去処理。ブロックBは、図2に示すように、複数のメモリユニットMUを含んで構成されている。1つのメモリユニットMUは、直列接続された例えば16個のメモリセルMCEEPROMからなるメモリストリングMSと、その両端に接続される第1、第2選択トランジスタS1、S2とにより構成されている。第1選択トランジスタS1の一端はビット線BL0に接続され、第2選択トランジスタS2の一端はソース線SRCに接続されている。Y方向に一列に配置されたメモリセルMCの制御ゲートはワード線WL1~WL16のいずれかに共通接続されている。また、Y方向に一列に配置された第1選択トランジスタS1の制御ゲートはセレクト線SG1に共通接続され、Y方向に一列に配置された第2選択トランジスタS2の制御ゲートはセレクト線SG2に共通接続されている。また1本のワード線WLに接続された複数のメモリセルMCの集合Pは、1ページ又は複数ページを構成する。この集合P毎にデータが書き込まれ、読み出される。[書き込み方式]次に、不揮発性半導体記憶装置の書き込み方式の概略を説明する。不揮発性半導体記憶装置は、メモリセルMCのしきい値電圧が、4通りの分布を持ち得るように構成されている。まず、第1の実施の形態を説明する前に、比較例に係る不揮発性半導体記憶装置の書き込み方式について説明する。図3は、比較例に係る不揮発性半導体記憶装置のメモリセルMCに記憶される2ビットの4値データデータ11、01、10、00とメモリセルMCのしきい値電圧分布との関係を示している。なお、図3において、電圧VA、VB、VCは4つのデータを読み出す場合に選択したワード線WLに印加される電圧である。電圧VAV、VBV、VCVは、各しきい値電圧分布A、B、Cへの書き込みを行う場合において、書き込みが完了したかどうかを確認するために印加されるベリファイ電圧を示している。また、電圧Vreadは、データの読み出しを行う場合に、メモリストリングMS中の非選択のメモリセルMCに対し印加され、その保持データにかかわらず非選択のメモリセルMCを導通させる読み出し電圧を示している。さらに、電圧Vevは、メモリセルMCのデータを消去する場合において、その消去が完了したか否かを確認するためメモリセルMCに印加される消去ベリファイ電圧である。上述の各電圧の大小関係は、Vev<VA<VAV<VB<VBV<VC<VCV<Vreadである。ブロック消去後のメモリセルMCのしきい値電圧分布Eは、その上限値も負の値であり、データ11が割り当てられる。また、書き込み状態のデータ01、10、00を示すメモリセルMCは、それぞれ正のしきい値電圧分布A、B、Cを有するすなわち、分布A、B、Cの下限値も正の値である。データ01のしきい値電圧分布Aが最も電圧値が低く、データ00のしきい値電圧分布Cが最も電圧値が高く、データ10のしきい値電圧分布Bは、データ01とデータ00の中間の電圧値を有する。図3に示すように、1つのメモリセルMCの2ビットデータは、下位ページデータと上位ページデータからなり、データと表記するとき、は上位ページデータを、は下位ページデータを表している。比較例において、下位ページデータと上位ページデータは別々のデータ書き込み処理、つまり、2回のデータ書き込み処理により、メモリセルMCに書き込まれる。次に、下位ページデータの書き込みを、図4を参照して説明する。図4において、全てのメモリセルMCは、消去状態のしきい値電圧分布Eを示し、データ11を記憶しているものとする。図4に示すように、下位ページデータの書き込みを行うと、メモリセルMCのしきい値電圧分布Eは、下位ページデータの値1又は0に応じて、2つのしきい値電圧分布E、B’に分けられる。すなわち、下位ページデータの値が1の場合には、消去状態のしきい値電圧分布Eを維持する。一方、下位ページデータの値が0の場合には、メモリセルMCのトンネル酸化膜に高電界を印加し、浮遊ゲート電極に電子を注入して、メモリセルMCのしきい値電圧Vthを所定量だけ上昇させる。具体的には、ベリファイ電圧VBV’を設定し、電子注入動作とベリファイ動作を繰り返す。メモリセルMCのしきい値電圧がベリファイ電圧VBV’以上となるまで電子の注入が繰り返される。その結果、メモリセルMCは、書き込み状態データ10に変化する。次に、上位ページデータの書き込みを、図5を参照して説明する。上位ページデータの書き込みは、チップの外部から入力される書き込みデータ上位ページデータと、メモリセルMCに既に書き込まれている下位ページデータとに基づいて行われる。即ち、図5に示すように、上位ページデータの値が1の場合には、メモリセルMCのトンネル酸化膜に高電界がかからないようにし、メモリセルMCのしきい値電圧Vthの上昇を防止する。その結果、データ11消去状態のしきい値電圧分布EのメモリセルMCは、データ11をそのまま維持し、データ10しきい値電圧分布B’のメモリセルMCは、データ10をそのまま維持する。ただし、上述のベリファイ電圧VBV’よりも大きい正規のベリファイ電圧VBVを参照してしきい値電圧分布B’の下限値を調整し、これによりしきい値電圧分布B’の幅を狭めて、しきい値電圧分布Bを形成する。一方、上位ページデータの値が0の場合には、メモリセルMCのトンネル酸化膜に高電界を印加し、浮遊ゲート電極に電子を注入して、メモリセルMCのしきい値電圧Vthを所定量だけ上昇させる。具体的には、ベリファイ電圧VAV、VCVを設定し、電子注入動作とベリファイ動作を繰り返す。メモリセルMCのしきい値電圧がベリファイ電圧VAV、VCV以上となるまで電子の注入が繰り返される。その結果、データ11消去状態のしきい値電圧分布EのメモリセルMCは、しきい値電圧分布Aのデータ01に変化し、データ10のメモリセルMCは、しきい値電圧分布Cのデータ00に変化する。以上が、比較例に係る不揮発性半導体記憶装置におけるデータ書き込み方式の一例である。メモリセルMCは、消去状態を示すしきい値電圧分布E、及び3通りのしきい値電圧分布A、B、Cのいずれかを与えられ、1メモリセルあたり2ビットのデータを記憶する。3ビット以上の多値記憶方式においては、上記の動作に加えて、しきい値電圧分布を更に分割する動作が加わるのみであり、基本的な動作は同様である。上記のメモリセルMCへの書き込みとして、図2に示した集合P単位で行われる場合を例にとり説明する。すなわち、1本のワード線WLに接続される全てのメモリセルMCに一括してデータが書き込まれる。しかし、集合P単位のうち、奇数ビット線に接続されたメモリセルMCと、偶数ビット線に接続されたメモリセルMCとに交互にデータを書き込む場合にも、以下の説明は拡張可能である。次に、図6A及び図6Bを参照して、集合P単位の書き込み方法について説明する。ここでは、上位ページ書き込み動作を例にとって説明する。図6Aは、メモリセルアレイ1をビット線BLに沿う方向に切断した断面を模式的に表す図である。図6Aは、選択ワード線WLnに接続されるメモリセルMCに書き込みを行う際の電圧印加状態を示している。ワード線WL毎の上位ページ書き込み動作は、書き込み動作と、ベリファイ動作とを交互に繰り返すことにより行われる。書き込み動作は、選択ワード線WLnに書き込み電圧Vpgmを印加して浮遊ゲート電極に電子を注入する動作である。ベリファイ動作は、選択ワード線WLnにベリファイ電圧図6Aでは例として電圧VAVを、非選択ワード線WLn-1、WLn1に電圧Vreadを印加する。このときチャネルに電流が流れるか否かにより、選択メモリセルMCにデータが書き込まれたか否かを判定する。上述したようにメモリセルMCへの書き込みは集合P単位で行われる。ここで、図6Bに示すように、ワード線WLnに接続されるメモリセルMCに対して一括して上位ページが書き込まれるステップS11。次に、ワード線WLn1に接続されるメモリセルMCに対して一括して上位ページが書き込まれるステップS12。このように集合P単位で行われる上位ページ書き込みでは、隣接する集合PのメモリセルMCへの書き込み動作により、メモリセルMCのしきい値電圧が変動する。すなわち、ワード線WLn1に接続されるメモリセルMCに電圧を印加する書き込み動作により、ワード線WLnに接続され既に書き込み済みのメモリセルMCのしきい値電圧が変動する。この現象を隣接セルの干渉と称する。この現象は、メモリセルMC間の距離が短くなるほど顕著になる。図5に示したようなしきい値電圧分布は、隣接セルへのデータ書き込みにより、選択メモリセルMCへの書き込み動作の終了後においても変動することがある。例えば、図7aに示すように、メモリセルMCaにデータ01しきい値電圧分布Aが書き込まれた後、隣接するメモリセルMCbにデータ00しきい値電圧分布Cが書き込まれる場合を考える。この場合、メモリセルMCaは、しきい値電圧分布Aに書き込まれ、メモリセルMCbは、しきい値電圧分布Cに書き込まれる。その結果、メモリセルMCaは、隣接するメモリセルMCbへの書き込み動作に基づく隣接セルの干渉を大きく受ける。よって、このようなメモリセルMCaのしきい値電圧は、正方向に大きくシフトする。一方、例えば、図7bに示すように、メモリセルMCaにデータ01しきい値電圧分布Aが書き込まれた後、隣接するメモリセルMCbにデータ11しきい値電圧分布Eが書き込まれる場合を考える。この場合、メモリセルMCaは、しきい値電圧分布Aに書き込まれ、メモリセルMCbは、しきい値電圧分布Eに保持される。その結果、メモリセルMCbには高電圧が印加されないので、メモリセルMCaは隣接セルの干渉をほとんど受けない。よって、このようなメモリセルMCaのしきい値電圧は、図7aに示した例と異なり、ほとんどシフトしない。このように、メモリセルMCaのしきい値電圧は、隣接するメモリセルMCbにデータ011000書き込み状態が書き込まれるときは、大きく変動する。一方、メモリセルMCaのしきい値電圧は、隣接するメモリセルMCbがデータ11消去状態に保持されるときは、ほとんど変動しない。ここで、メモリセルアレイ1には多くのメモリセルMCが存在する。すなわち、メモリセルアレイ1内には、図7a及び図7bのようなデータ保持パターンが混在している。その結果、しきい値電圧のシフト量が大きなメモリセルMCとシフト量が小さなメモリセルMCが混在することになる。従って、図7cに示すように、メモリセルMCaのしきい値電圧分布Aは、隣接メモリセルMCbの干渉に基づきより大きな分布幅を持つしきい値電圧分布Axとなる。ここで、しきい値電圧分布Axの下限値は、元のしきい値電圧分布Aの下限値と殆ど変わらない図7c中の矢印。同様の理由から、しきい値電圧分布B、Cは、各々、より大きな分布幅を持つしきい値電圧分布Bx、Cxとなる。なお、しきい値電圧分布B、Cの下限値は、元のしきい値電圧分布B、Cの下限値と殆ど変わらない。また、しきい値電圧分布Eも、より大きな分布幅を持つしきい値電圧分布Exとなる。以上のようにして分布幅が広がったしきい値電圧分布Ax、Bx、Cx、Exは、誤読み出し等の原因となる。[第1の実施の形態の書き込み方式]上記比較例に係る書き込み方式の問題に鑑み、第1の実施の形態は、図8、図9A、及び図9Bに示す書き込み方式を採用している。以下に示す処理は、制御回路7によって実行される。第1の実施の形態では、上位ページデータの書き込み後に、しきい値電圧分布の幅を調整する補正書き込み動作を実行する。また、本実施の形態では、補正書き込み動作を実行するとともに、データが正確に書き込まれたかを検証する書き込みベリファイ動作の電圧を調整する。なお、補正書き込み動作に伴う書き込みベリファイ動作時の電圧は、補正書き込み動作を行う選択メモリセルMCに隣接するメモリセルMCに書き込まれたデータに基づき設定される。また、書き込み動作が実行される順番は、ワード線WL0、WL1、WL2、WLn、WLn1に接続されるメモリセルMCの集合P単位の順である。この書き込み動作、補正書き込み動作、及び書き込みベリファイ動作について、図8を参照して説明する。図8は、ワード線WLn、WLn1に接続されたメモリセルMCに対する書き込み動作が終了した後に、新たに追加される動作を詳細に説明するフローチャートである。ワード線WLnに接続されたメモリセルMCに対してデータ書き込み動作が実行され、その後ワード線WLn1に接続されたメモリセルMCに対してデータ書き込み動作が実行される。このワード線WLn1に接続されたメモリセルMCに対するデータ書き込み動作が終了すると、ワード線WLnに接続されたメモリセルMCに対して補正書き込み動作が開始されるステップS21。補正書き込み動作では、まず、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが読み出されるステップS22。次に、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11しきい値電圧分布Eであるか、又はそれ以外のデータ01、10、00しきい値電圧分布A、B、Cであるかが判定されるステップS23。上述したように、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11しきい値電圧分布Eである場合、このメモリセルMCに対するデータ書き込み動作が、ワード線WLnに接続されたメモリセルMCに及ぼす隣接セル干渉の影響は小さい。一方、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが00しきい値電圧分布Cである場合、このメモリセルMCに対するデータ書き込み動作が、ワード線WLnに接続されたメモリセルMCに及ぼす隣接セル干渉の影響は大きい図7参照。ステップS23の判定動作において、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11であると判定された場合、ワード線WLnに接続されたメモリセルMCに対して補正書き込み動作を実行するステップS24。一方、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11でないと判定された場合、補正書き込み動作は実行しないステップS25。この後、ワード線WLnに接続されたメモリセルMCに対する補正書き込み動作が終了するステップS26。図9Aは、選択ワード線WLnに接続されるメモリセルMCに補正書き込みを行う際の電圧印加状態を示している。補正書き込み動作も、書き込み動作と、ベリファイ動作とを交互に繰り返すことにより行われる。書き込み動作は、選択ワード線WLnに書き込み電圧Vpgmを印加して浮遊ゲート電極に電子を注入する動作であり、通常の上位ページ書き込み時と同様の動作である。ベリファイ動作は、選択ワード線WLnにベリファイ電圧図9Aでは例として電圧VAVを、非選択ワード線に電圧Vreadを印加する。ここで、補正書き込み時のベリファイ動作は、ベリファイ電圧VAVを通常のデータ書き込み時よりも増加させることにより実現できる。しかし、本実施の形態では、ベリファイ電圧VAV自体は変化させず、選択ワード線WLnに隣接する非選択ワード線WLn1に印加する電圧がVreadKVreadK>Vreadである点が、通常の書き込み時のベリファイ動作と異なる。図9Bは、ベリファイ動作時の電圧を説明するタイミングチャートである。時刻t0において、セレクト線SG1に電圧Vsgを印加して選択トランジスタS1を導通させる。同時に選択ワード線WLにベリファイ電圧VAVを印加する。時刻t1において、非選択ワード線WLに電圧Vread又はVreadKを印加する。そして、時刻t2においてビット線BLに電圧Vblを印加する。時刻t3において、セレクト線SG2に電圧Vsgを印加して選択トランジスタS2を導通させる。このとき選択ワード線WLに接続されたメモリセルMCのしきい値電圧によりチャネルに電流が流れてビット線BLが放電されるか否かが決定される。ここで、選択ワード線WLにはベリファイ電圧VAVが印加されているが、隣接するワード線WLに印加された電圧VreadKの影響により、選択メモリセルMCのしきい値電圧は若干低下する。そのため、補正書き込み動作時には、選択ワード線WLにベリファイ電圧VAVαが印加されたベリファイ動作が実行されている場合と同様の状況になる。[効果]このような補正書き込み動作の効果を図7c及び図10を参照して説明する。図7cは、上述のように比較例の書き込み動作後のしきい値電圧分布を示す図である。図10は、実施の形態に係る補正書き込み動作後のしきい値電圧分布を示す図である。上述したように、上位ページ書き込み後のメモリセルMCのしきい値電圧分布A、B、Cは、隣接メモリセルMCへのデータ書き込みによりしきい値電圧分布の上裾が拡大して、大きな分布幅を持つしきい値電圧分布Ax、Bx、Cxとなる図7c参照。これに対し、本実施の形態では、隣接メモリセルMCにデータ11しきい値電圧分布Eが書き込まれ、隣接セル干渉による影響を殆ど受けなかったメモリセルMCに対し補正書き込み動作を実行している。すなわち、しきい値電圧分布Ax、Bx、Cxの下裾の方に存在するメモリセルMCに対し補正書き込み動作を実行している。さらに、この補正書き込み時に、ベリファイ電圧を電圧αだけ上げた状態と等価になるように、隣接メモリセルMCに接続された非選択ワード線WLの印加電圧を調整している。その結果、図10に示すように補正書き込み後のしきい値電圧分布A、B、Cは、しきい値電圧分布Ax、Bx、Cxよりも分布幅がαだけ狭くなっている。このように分布幅が狭まったしきい値電圧分布A、B、Cにより、誤読み出しの可能性を低減することができる。また、上述の書き込み動作において、しきい値電圧分布A、B、Cの幅を狭くすることができる。その結果、読み出し時において、選択ワード線WLnに隣接するワード線WLn1のしきい値電圧を読み出して補正する必要がない。その結果、高速に読み出し動作を行うことができる。特に、データの書き換えが少なく読み出し回数が多いデバイスに対して有効である。また、ステップS23の判定動作において、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11最も低いしきい値電圧分布Eであるか否かを判定している。すなわち、ワード線WLn1に接続されたメモリセルMCを1回の読み出し動作で判別することが出来る。その結果、高速に補正書き込み動作を行うことができる。[第2の実施の形態]次に、第2の実施の形態の不揮発性半導体記憶装置を、図11A及び図11Bを参照して説明する。本実施の形態の不揮発性半導体記憶装置の全体構成は、第1の実施の形態と同様であり、その詳細な説明は省略する。また、第1の実施の形態と同様の構成を有する箇所には、同一の符号を付して重複する説明を省略する。第1の実施の形態において、補正書き込み動作は、隣接するワード線WLn1に接続されたメモリセルMCへのデータ書き込みが終了するとともに実行されていた。これに対し、本実施の形態の補正書き込み動作は、全てのワード線WLに接続されたメモリセルMCへのデータ書き込みが終了し、メモリセルアレイ1へのアクセスが行われない期間中にバックグラウンドで行われる点において第1の実施の形態と異なる。以下、図11Aを参照して説明する。図11Aは、全てのワード線WLに接続されたメモリセルMCに対する書き込み動作が終了した後に追加される動作を詳細に説明するフローチャートである。メモリセルアレイ1内のメモリセルMCにデータ書き込みが行われた後、補正書き込み動作が開始されるステップS31。次に、制御回路7がバックグラウンドコマンドを受信しているか又はデータアクセスコマンドを受信していないかが判定されるステップS32。これらのコマンドに基づき、メモリセルアレイ1に対してアクセスが行われておらず、他の動作が実行されていないと判断された場合ステップS32のY、メモリセルMCに既に補正書き込みが実行されているかが判定されるステップS33。この判定は、例えば制御回路7内に設けられ、メモリセルMCに補正書き込みを実行したか否かを記憶する回路のデータに基づき行うことができる。メモリセルMCに補正書き込みが実行されていない場合、補正書き込み動作が実行される。そして、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが読み出されるステップS34。次に、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11しきい値電圧分布Eであるか、又はそれ以外のデータ01、10、00しきい値電圧分布A、B、Cであるかが判定されるステップS35。ステップS35の判定動作において、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11であると判定された場合、ワード線WLnに接続されたメモリセルMCに対して補正書き込み動作を実行するステップS36。一方、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11でないと判定された場合、補正書き込み動作は実行しないステップS37。この後、ワード線WLnに接続されたメモリセルMCに対する補正書き込み動作が終了するステップS38。図11Bは、選択ワード線WLnに接続されるメモリセルMCに補正書き込みを行う際の電圧印加状態を示している。本実施の形態の補正書き込み動作時の印加電圧は、第1の実施の形態と同様である。ここでも、補正書き込み時のベリファイ動作では、ベリファイ電圧VAV自体は変化させず、選択ワード線WLnに隣接する非選択ワード線WLn1に電圧VreadKVreadK>Vreadを印加している。[効果]本実施の形態でも、隣接メモリセルMCにデータ11しきい値電圧分布Eが書き込まれ、隣接セル干渉による影響を殆ど受けなかったメモリセルMCに対し補正書き込み動作を実行している。さらに、この補正書き込み時に、ベリファイ電圧を電圧αだけ上げた状態と等価になるように、隣接メモリセルMCに接続された非選択ワード線WLの印加電圧を調整している。その結果、図10に示すように補正書き込み後のしきい値電圧分布A、B、Cは、しきい値電圧分布Ax、Bx、Cxよりも分布幅がαだけ狭くなっている。このように分布幅が狭まったしきい値電圧分布A、B、Cにより、誤読み出しの可能性を低減することができる。ここで、第1の実施の形態の補正書き込み動作では、データ書き込みと補正書き込みを連続して実行しているため、書き込み時間が増加するおそれがある。これに対し、本実施の形態の補正書き込み動作は、メモリセルアレイ1へのアクセスが行われない期間中に行われる。そのため、補正書き込みは、ユーザの認識しないバックグラウンドジョブとして行うことが可能であり、データ書き込み時に必要な時間が増加することがない。なお、メモリセルアレイ1に対して動作が実行されている場合でも、動作速度に影響を及ぼすことがなければ、補正書き込み動作を実行するように設定してもよい。[第3の実施の形態]次に、第3の実施の形態の不揮発性半導体記憶装置を、図12A及び図12Bを参照して説明する。本実施の形態の不揮発性半導体記憶装置の全体構成は、第1の実施の形態と同様であり、その詳細な説明は省略する。また、第1の実施の形態と同様の構成を有する箇所には、同一の符号を付して重複する説明を省略する。第1の実施の形態において、補正書き込み動作は、隣接するワード線WLに接続されたメモリセルMCへの書き込みデータが11しきい値電圧分布Eである場合に実行されていた。これに対し、本実施の形態の補正書き込み動作は、隣接するワード線WLに接続されたメモリセルMCへの書き込みデータが11及び10しきい値電圧分布E及びBのときに行われる点において第1の実施の形態と異なる。以下、図12Aを参照して説明する。図12Aは、ワード線WLn、WLn1に接続されたメモリセルMCに対する書き込み動作が終了した後に追加される動作を詳細に説明するフローチャートである。メモリセルアレイ1内のメモリセルMCにデータ書き込みが行われた後、補正書き込み動作が開始されるステップS41。次に、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが読み出されるステップS42。次に、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11しきい値電圧分布Eであるか、又はそれ以外のデータ01、10、00しきい値電圧分布A、B、Cであるかが判定されるステップS43。さらに、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが10しきい値電圧分布Bであるか、又はそれ以外のデータ01、00しきい値電圧分布A、Cであるかが判定されるステップS44。ステップS43、S44の判定動作において、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11又は10であると判定された場合、ワード線WLnに接続されたメモリセルMCに対して補正書き込み動作を実行するステップS45、S46。一方、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11又は10でないと判定された場合、補正書き込み動作は実行しないステップS47。この後、ワード線WLnに接続されたメモリセルMCに対する補正書き込み動作が終了するステップS48。図12Bは、選択ワード線WLnに接続されるメモリセルMCに補正書き込みを行う際の電圧印加状態を示している。本実施の形態の補正書き込み動作に伴うベリファイ動作では、選択ワード線WLnに隣接する非選択ワード線WLn1に印加する電圧をVreadK’又はVreadKVreadK’>VreadK>Vreadとしている点において、第1の実施の形態のベリファイ動作と異なる。ここで、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11である場合、非選択ワード線WLn1に印加する電圧をVreadK’とする。また、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが10である場合、非選択ワード線WLn1に印加する電圧をVreadKとする。[効果]上述したように、上位ページ書き込み後のメモリセルMCのしきい値電圧分布A、B、Cは、隣接メモリセルMCへのデータ書き込みによりしきい値電圧分布の上裾が拡大して、大きな分布幅を持つしきい値電圧分布Ax、Bx、Cxとなる図7c参照。ここで、隣接メモリセルMCの干渉による影響は、隣接メモリセルMCにデータが書き込まれる際に印加される電圧の大きさにより、その影響の大きさが変動する。ここで、隣接メモリセルMCの上位ページ書き込み時にデータ0100が書き込まれる際には、しきい値電圧分布E又はB’からしきい値電圧を移動させるために大きな書き込み電圧が必要とされる図5参照。また、隣接メモリセルMCの上位ページ書き込み時にデータ10が書き込まれる際には、しきい値電圧分布B’からしきい値電圧を移動させるためにやや大きな書き込み電圧が必要とされる図5参照。そして、隣接メモリセルMCの上位ページ書き込み時にデータ11を保持する際には、しきい値電圧分布Eからしきい値電圧を移動させる必要がないため、書き込み電圧は必要ない図5参照。つまり、隣接メモリセルMCにデータ10しきい値電圧分布Bが書き込まれる場合の干渉による影響は、データ0100しきい値電圧分布A、Cが書き込まれる場合よりも小さい。ここで、本実施の形態では、隣接メモリセルMCにデータ11及び10しきい値電圧分布E及びBが書き込まれ、隣接セル干渉による影響を殆ど受けなかったか、または受けた影響が小さいメモリセルMCに対し補正書き込み動作を実行している。さらに、この補正書き込み時に、選択ワード線WLnに隣接する非選択ワード線WLn1に印加する電圧をVreadK’又はVreadKとしている。ここで、隣接するワード線WLに印加された電圧VreadK’又はVreadKの影響により、選択メモリセルMCのしきい値電圧が低下する。隣接メモリセルMCにデータ11が書き込まれた場合、選択メモリセルMCのしきい値電圧が大きく低下し、データ10が書き込まれた場合、選択メモリセルMCのしきい値電圧が小さく低下する。これにより、隣接メモリセルMCにデータ11が書き込まれた場合、選択ワード線WLにベリファイ電圧VAVα’が印加され、隣接メモリセルMCにデータ10が書き込まれた場合、選択ワード線WLにベリファイ電圧VAVαα’>αが印加されたベリファイ動作が実行される状態と等価になる。本実施の形態では、このようなベリファイ電圧に基づいて補正書き込み動作を実行する。このような補正書き込み動作によれば、隣接メモリセルMCの干渉による影響の大きさ、すなわちしきい値電圧の遷移量に基づいて補正書き込み動作時のベリファイ電圧を調整することが可能となる。本実施の形態の補正書き込み動作によれば、第1の実施の形態の効果に加えて、図10に示すように補正書き込み後のしきい値電圧分布A、B、Cの分布幅をさらに狭くすることができ、誤読み出しの可能性をさらに低減することができる。[第4の実施の形態]次に、第4の実施の形態の不揮発性半導体記憶装置を、図13、図14及び図15を参照して説明する。本実施の形態の不揮発性半導体記憶装置の全体構成は、第1の実施の形態と同様であり、その詳細な説明は省略する。また、第1の実施の形態と同様の構成を有する箇所には、同一の符号を付して重複する説明を省略する。[第4の実施の形態の書き込み方式]本実施の形態では、上位ページデータ/下位ページデータの粗い書き込みであるフォギー書き込み処理と、上位ページデータ/下位ページデータの正確な書き込みであるファイン書き込み処理との2段階の書き込み処理を実行する書き込み方式を採用している点で、上述の実施の形態と異なっている。フォギー書き込み処理、及びファイン書き込み処理を伴う4値記憶方式における書き込み動作を、図13及び図14を参照して説明する。はじめに、図13に示すように、全てのメモリセルMCが消去された状態しきい値電圧分布Eから、あるメモリセルMCに対しフォギー書き込み処理を実行する。フォギー書き込み処理は、最終的に得ようとする各しきい値電圧分布E、A、B、Cの下限値よりも小さいベリファイ電圧VAVf、VBVf、VCVfを参照して、しきい値電圧分布Af、Bf、Cfを得る書き込み処理である。フォギー書き込み後のしきい値電圧分布は、互いに重なり合うしきい値電圧分布Af、Bf、Cfとなる。この後、図14に示すように、メモリセルMCに対しファイン書き込み処理を行う。ファイン書き込み処理は、最終的に得ようとする複数のしきい値電圧分布A、B、Cの下限値と等しいベリファイ電圧VAV、VBV、VCVを参照して、しきい値電圧分布Af、Bf、Cfを正方向に移動させ、しきい値電圧分布E、A、B、Cを得る。このファイン書き込み処理後も、隣接セルの干渉により、上述の実施の形態と同様にしきい値電圧分布E、A、B、Cは変動する。これに対し、本実施の形態では、ファイン書き込み後に、しきい値電圧分布の幅を調整する補正書き込み動作を実行する。また、本実施の形態では、補正書き込み動作を実行するとともに、データが正確に書き込まれたかを検証する書き込みベリファイ動作の電圧を調整する。なお、補正書き込み動作に伴う書き込みベリファイ動作時の電圧は、補正書き込み動作を行う選択メモリセルMCに隣接するメモリセルMCに書き込まれたデータに基づき設定される。ここで、本実施の形態における補正書き込み動作は、図8~図9Bを用いて説明した第1の実施の形態と同様の動作を採用することができる。この書き込み動作、補正書き込み動作、及び書き込みベリファイ動作について、図15を参照して説明する。図15は、ワード線WLn、WLn1に接続されたメモリセルMCに対する書き込み動作が終了した後に追加される動作を詳細に説明するフローチャートである。ワード線WLnに接続されたメモリセルMCに対してデータ書き込み動作が実行され、その後ワード線WLn1に接続されたメモリセルMCに対してデータ書き込み動作が実行される。このワード線WLn1に接続されたメモリセルMCに対するデータ書き込み動作が終了すると、ワード線WLnに接続されたメモリセルMCに対して補正書き込み動作が開始されるステップS51。補正書き込み動作では、まず、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが読み出されるステップS52。次に、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11しきい値電圧分布Eであるか、又はそれ以外のデータ01、10、00しきい値電圧分布A、B、Cであるかが判定されるステップS53。ステップS53の判定動作において、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11であると判定された場合、ワード線WLnに接続されたメモリセルMCに対して補正書き込み動作を実行するステップS54。一方、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11でないと判定された場合、補正書き込み動作は実行しないステップS55。この後、ワード線WLnに接続されたメモリセルMCに対する補正書き込み動作が終了するステップS56。[効果]本実施の形態でも、隣接メモリセルMCにデータ11しきい値電圧分布Eが書き込まれ、隣接セル干渉による影響を殆ど受けなかったメモリセルMCに対し補正書き込み動作を実行している。さらに、この補正書き込み時に、ベリファイ電圧を電圧αだけ上げた状態と等価になるように、隣接メモリセルMCに接続された非選択ワード線WLの印加電圧を調整している。その結果、図10に示すように補正書き込み後のしきい値電圧分布A、B、Cは、しきい値電圧分布Ax、Bx、Cxよりも分布幅がαだけ狭くなっている。このように分布幅が狭まったしきい値電圧分布A、B、Cにより、誤読み出しの可能性を低減することができる。また、高速に読み出し動作を行うことができる。なお、本実施の形態における補正書き込み動作として、図11A及び図11Bを用いて説明した第2の実施の形態と同様の動作を採用することもできる。[第5の実施の形態]次に、第5の実施の形態の不揮発性半導体記憶装置を、図16及び図17を参照して説明する。本実施の形態の不揮発性半導体記憶装置の全体構成は、第1の実施の形態と同様であり、その詳細な説明は省略する。また、第1の実施の形態と同様の構成を有する箇所には、同一の符号を付して重複する説明を省略する。[第5の実施の形態の書き込み方式]本実施の形態では、上位ページデータ/下位ページデータの書き込みの際に段階的な書き込み処理を実行せず、1度の書き込み処理により上位ページデータ/下位ページデータの正確な書き込みを行う書き込み方式を採用している点で、上述の実施の形態と異なっている。1度の書き込み処理による4値記憶方式における書き込み動作を、図16を参照して説明する。図16に示すように、全てのメモリセルMCが消去された状態しきい値電圧分布Eから、最終的に得ようとする複数のしきい値電圧分布A、B、Cの下限値と等しいベリファイ電圧VAV、VBV、VCVを参照して、しきい値電圧分布を正方向に移動させ、しきい値電圧分布E、A、B、Cを得る。本実施の形態における書き込み処理後も、隣接セルの干渉により、上述の実施の形態と同様にしきい値電圧分布E、A、B、Cは変動する。これに対し、本実施の形態では、書き込み処理後に、しきい値電圧分布の幅を調整する補正書き込み動作を実行する。また、本実施の形態では、補正書き込み動作を実行するとともに、データが正確に書き込まれたかを検証する書き込みベリファイ動作の電圧を調整する。なお、補正書き込み動作に伴う書き込みベリファイ動作時の電圧は、補正書き込み動作を行う選択メモリセルMCに隣接するメモリセルMCに書き込まれたデータに基づき設定される。ここで、本実施の形態における補正書き込み動作は、図8~図9Bを用いて説明した第1の実施の形態と同様の動作を採用することができる。この書き込み動作、補正書き込み動作、及び書き込みベリファイ動作について、図17を参照して説明する。図17は、ワード線WLn、WLn1に接続されたメモリセルMCに対する書き込み動作が終了した後に追加される動作を詳細に説明するフローチャートである。ワード線WLnに接続されたメモリセルMCに対してデータ書き込み動作が実行され、その後ワード線WLn1に接続されたメモリセルMCに対してデータ書き込み動作が実行される。このワード線WLn1に接続されたメモリセルMCに対するデータ書き込み動作が終了すると、ワード線WLnに接続されたメモリセルMCに対して補正書き込み動作が開始されるステップS61。補正書き込み動作では、まず、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが読み出されるステップS62。次に、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11しきい値電圧分布Eであるか、又はそれ以外のデータ01、10、00しきい値電圧分布A、B、Cであるかが判定されるステップS63。ステップS63の判定動作において、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11であると判定された場合、ワード線WLnに接続されたメモリセルMCに対して補正書き込み動作を実行するステップS64。一方、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11でないと判定された場合、補正書き込み動作は実行しないステップS65。この後、ワード線WLnに接続されたメモリセルMCに対する補正書き込み動作が終了するステップS66。[効果]本実施の形態でも、隣接メモリセルMCにデータ11しきい値電圧分布Eが書き込まれ、隣接セル干渉による影響を殆ど受けなかったメモリセルMCに対し補正書き込み動作を実行している。さらに、この補正書き込み時に、ベリファイ電圧を電圧αだけ上げた状態と等価になるように、隣接メモリセルMCに接続された非選択ワード線WLの印加電圧を調整している。その結果、図10に示すように補正書き込み後のしきい値電圧分布A、B、Cは、しきい値電圧分布Ax、Bx、Cxよりも分布幅がαだけ狭くなっている。このように分布幅が狭まったしきい値電圧分布A、B、Cにより、誤読み出しの可能性を低減することができる。また、高速に読み出し動作を行うことができる。なお、本実施の形態における補正書き込み動作として、図11A及び図11Bを用いて説明した第2の実施の形態と同様の動作を採用することもできる。[第6の実施の形態]次に、第6の実施の形態の不揮発性半導体記憶装置を、図18A及び図18Bを参照して説明する。本実施の形態の不揮発性半導体記憶装置の全体構成は、第1の実施の形態と同様であり、その詳細な説明は省略する。また、第1の実施の形態と同様の構成を有する箇所には、同一の符号を付して重複する説明を省略する。本実施の形態では、第5の実施の形態において説明した1度の書き込み処理により上位ページデータ/下位ページデータの正確な書き込みを行う書き込み方式を採用している。第5の実施の形態において、補正書き込み動作は、隣接するワード線WLに接続されたメモリセルMCへの書き込みデータが11しきい値電圧分布Eである場合に実行されていた。これに対し、本実施の形態の補正書き込み動作は、隣接するワード線WLに接続されたメモリセルMCへの書き込みデータが11、01及び10しきい値電圧分布E、A及びBのときに行われる点において第5の実施の形態と異なる。以下、図18Aを参照して説明する。図18Aは、ワード線WLn、WLn1に接続されたメモリセルMCに対する書き込み動作が終了した後に追加される動作を詳細に説明するフローチャートである。まず、ワード線WLnに接続されたメモリセルMCに対してデータ書き込み動作が実行され、その後ワード線WLn1に接続されたメモリセルMCに対してデータ書き込み動作が実行される。このワード線WLn1に接続されたメモリセルMCに対するデータ書き込み動作が終了すると、ワード線WLnに接続されたメモリセルMCに対して補正書き込み動作が開始されるステップS70。次に、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが読み出されるステップS71。次に、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11しきい値電圧分布Eであるか、又はそれ以外のデータ01、10、00しきい値電圧分布A、B、Cであるかが判定されるステップS72。さらに、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが01しきい値電圧分布Aであるか、又はそれ以外のデータ10、00しきい値電圧分布B、Cであるかが判定されるステップS73。そして、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが10しきい値電圧分布Bであるか、又はそれ以外のデータ00しきい値電圧分布Cであるかが判定されるステップS74。ステップS72、S73、S74の判定動作において、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11、01又は10であると判定された場合、ワード線WLnに接続されたメモリセルMCに対して補正書き込み動作を実行するステップS75、S76、S77。一方、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが00であると判定された場合、補正書き込み動作は実行しないステップS78。この後、ワード線WLnに接続されたメモリセルMCに対する補正書き込み動作が終了するステップS79。図18Bは、選択ワード線WLnに接続されるメモリセルMCに補正書き込みを行う際の電圧印加状態を示している。本実施の形態の補正書き込み動作に伴うベリファイ動作では、選択ワード線WLnに隣接する非選択ワード線WLn1に印加する電圧をVreadK’’、VreadK’又はVreadKVreadK’’>VreadK’>VreadK>Vreadとしている。ここで、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが11である場合、非選択ワード線WLn1に印加する電圧をVreadK’’とする。また、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが01である場合、非選択ワード線WLn1に印加する電圧をVreadK’とする。そして、ワード線WLn1に接続されたメモリセルMCに書き込まれたデータが10である場合、非選択ワード線WLn1に印加する電圧をVreadKとする。[効果]1度の書き込み処理により上位ページデータ/下位ページデータの正確な書き込みを行う方式でも、書き込み後のメモリセルMCのしきい値電圧分布A、B、Cは、隣接メモリセルMCへのデータ書き込みによりしきい値電圧分布の上裾が拡大して、大きな分布幅を持つしきい値電圧分布となる図7c参照。ここで、隣接メモリセルMCの干渉による影響は、隣接メモリセルMCにデータが書き込まれる際に印加される電圧の大きさにより、その影響の大きさが変動する。隣接メモリセルMCの書き込み時にデータ00が書き込まれる際には、しきい値電圧分布Eからしきい値電圧を移動させるために大きな書き込み電圧が必要とされる図16参照。また、隣接メモリセルMCの書き込み時にデータ10が書き込まれる際には、データ00が書き込まれる際よりも小さい書き込み電圧が必要とされる。そして、隣接メモリセルMCの書き込み時にデータ01が書き込まれる際には、データ10が書き込まれる際よりもさらに小さい書き込み電圧が必要とされる。隣接メモリセルMCをデータ11に保持する際には、しきい値電圧分布Eからしきい値電圧を移動させる必要がないため、書き込み電圧は必要ない。つまり、隣接メモリセルMCにデータが書き込まれる場合の干渉による影響の大きさは、データ01<10<00のようになる。つまり、しきい値電圧分布A、B、Cの順にデータ書き込みによる選択メモリセルMCへの干渉の影響が大きくなる。ここで、本実施の形態では、隣接メモリセルMCにデータ11、01及び10しきい値電圧分布E、A及びBが書き込まれたメモリセルMCに対し補正書き込み動作を実行している。さらに、この補正書き込み時に、選択ワード線WLnに隣接する非選択ワード線WLn1に印加する電圧をVreadK’’、VreadK’又はVreadKとしている。ここで、隣接するワード線WLに印加された電圧VreadK’’、VreadK’又はVreadKの影響により、選択メモリセルMCのしきい値電圧が低下する。隣接メモリセルMCにデータ11が書き込まれた場合、選択メモリセルMCのしきい値電圧が最も大きく低下する。データ01が書き込まれた場合、選択メモリセルMCのしきい値電圧の低下量はデータ11の場合よりも小さくなり、データ10が書き込まれた場合、選択メモリセルMCのしきい値電圧の低下量はデータ01の場合よりもさらに小さくなる。これにより、隣接メモリセルMCにデータ11が書き込まれた場合、選択ワード線WLにベリファイ電圧VAVα’’が印加され、隣接メモリセルMCにデータ01が書き込まれた場合、選択ワード線WLにベリファイ電圧VAVα’が印加されたベリファイ動作が実行される状態と等価になる。そして、隣接メモリセルMCにデータ10が書き込まれた場合、選択ワード線WLにベリファイ電圧VAVαが印加されたベリファイ動作が実行される状態と等価になるα’’>α’>α。本実施の形態では、このようなベリファイ電圧に基づいて補正書き込み動作を実行する。このような補正書き込み動作によれば、隣接メモリセルMCの干渉による影響の大きさ、すなわちしきい値電圧の遷移量に基づいて補正書き込み動作時のベリファイ電圧を調整することが可能となる。本実施の形態の補正書き込み動作によっても、補正書き込み後のしきい値電圧分布A、B、Cの分布幅を狭くすることができ、誤読み出しの可能性を低減することができる。また、高速に読み出し動作を行うことができる。以上、本発明のいくつかの実施の形態を説明したが、これらの実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施の形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。例えば、上記実施の形態では、4値記憶方式2ビット/セルの不揮発性半導体装置を説明したが、本発明はこれに限定されるものではなく、8値記憶方式などより多ビットの記憶方式にも適用可能であることは言うまでもない。