複数のメモリセルがマトリックス状に配置されたメモリセルアレイと、前記メモリセルの書き込み動作、しきい値分布の目標ベリファイレベルに基づいて書き込みベリファイ動作を制御する書き込み制御部と、前記書き込み制御部は、第1のしきい値分布についての第1書き込み動作を行い、前記第1のしきい値分布の第1ベリファイ動作を行い、前記第1ベリファイ動作の結果に基づいて第2書き込み動作を行い、第2のしきい値分布についての第3書き込み動作を開始することを特徴とすることを特徴とする不揮発性半導体記憶装置。前記書き込み制御部は、前記第2書き込み動作後に前記第1ベリファイ動作を行うことなく前記第3書き込み動作を行うことを特徴とする請求項1に記載の不揮発性半導体記憶装置。前記書き込み制御部は、前記第3書き込み動作において、前記第1のしきい値分布に書き込まれる前記メモリセルに書き込みも行うことを特徴とする請求項2に記載の不揮発性半導体記憶装置。前記書き込み制御部は、前記第1のしきい値分布に書き込まれる前記メモリセルに対してのみ前記第1書き込み動作を行うことを特徴とする請求項1乃至3のいずれかに記載の不揮発性半導体記憶装置。複数のメモリセルがマトリックス状に配置されたメモリセルアレイと、前記メモリセルの書き込み動作、しきい値分布の目標ベリファイレベルに基づいて書き込みベリファイ動作を制御する書き込み制御部と、前記書き込み制御部は、第1のしきい値分布についての第1書き込み動作を行い、前記第1のしきい値分布以外の少なくとも1つの第2のしきい値分布についての第2の書き込み動作を行い、前記第1のしきい値分布、及び前記第2のしきい値分布の第1ベリファイ動作を行い、前記第1ベリファイ動作の結果に基づいて、前記第1のしきい値分布に対する第3書き込み動作を行い、前記第1ベリファイ動作の結果に基づいて、前記第2のしきい値分布に対する第4書き込み動作を行うことを特徴とすることを特徴とする不揮発性半導体記憶装置。前記第1のしきい値分布は前記第2のしきい値分布よりも高いレベルであることを特徴とする請求項1乃至5のいずれかに記載の不揮発性半導体記憶装置。本発明の一つの実施形態の目的は、多値書き込み時におけるメモリセルのしきい値分布の拡大を抑制することが可能な不揮発性半導体記憶装置を提供することである。実施形態の不揮発性半導体記憶装置によれば、書き込み制御部は、レベルの高い第1のしきい値分布についての第1書き込み動作を行い、前記第1のしきい値分布の第1ベリファイ動作を行い、前記第1ベリファイ動作の結果に基づいて、第2書き込み動作を行い、前記第1のしきい値分布よりもレベルの低い第2のしきい値分布についての書き込み動作を開始する。以下、実施形態に係る不揮発性半導体記憶装置について図面を参照しながら説明する。なお、これらの実施形態により本発明が限定されるものではない。第1実施形態図1は、第1実施形態に係る不揮発性半導体記憶装置の概略構成を示すブロック図である。図1において、この不揮発性半導体記憶装置には、メモリセルアレイ1、ロウ選択回路2、ウェル電位設定回路3、ソース電位設定回路4、カラム選択回路5、データ入出力バッファ6、制御回路7およびセンスアンプ回路8が設けられている。メモリセルアレイ1には、データを記憶するメモリセルがロウ方向およびカラム方向にマトリックス状に配置されている。なお、1個のメモリセルは、1ビット分のデータを記憶するようにしてもよいし、2ビット以上のデータが記憶できるように多値化されていてもよい。ここで、メモリセルアレイ1は、nnは正の整数個のブロックB1~Bnに分割されている。なお、各ブロックB1~Bnは、NANDセルユニットをロウ方向に複数配列して構成することができる。図2は、図1の不揮発性半導体記憶装置のブロックの概略構成を示す回路図である。図2において、ブロックBi1≦i≦n、i及びnは正の整数には、llは正の整数本のワード線WL1~WLl、セレクトゲート線SGD、SGSおよびソース線SCEが設けられている。また、ブロックB1~Bnには、mmは正の整数本のビット線BL1~BLmが共通に設けられている。そして、ブロックBiには、m個のNANDセルユニットNU1~NUmが設けられ、NANDセルユニットNU1~NUmはビット線BL1~BLmにそれぞれ接続されている。ここで、NANDセルユニットNU1~NUmには、セルトランジスタMT1~MTlおよびセレクトトランジスタMS1、MS2がそれぞれ設けられている。なお、モリセルアレイ1の1個のメモリセルは、1個のセルトランジスタMTk1≦k≦l、kは正の整数にて構成することができる。そして、セルトランジスタMT1~MTlが直列に接続されることでNANDストリングが構成され、そのNANDストリングの両端にセレクトトランジスタMS1、MS2が接続されることでNANDセルユニットNUj1≦j≦m、jは正の整数が構成されている。そして、NANDセルユニットNU1~NUmにおいて、セルトランジスタMT1~MTlの制御ゲート電極には、ワード線WL1~WLlがそれぞれ接続されている。また、NANDセルユニットNUjにおいて、セルトランジスタMT1~MTlからなるNANDストリングの一端は、セレクトトランジスタMS1を介してビット線BLjに接続され、NANDストリングの他端は、セレクトトランジスタMS2を介してソース線SCEに接続されている。また、NANDセルユニットNU1~NUmにおいて、ワード線WLkに共通に接続されたセルトランジスタMTkからなるm個のメモリセルにてページPEを構成することができる。図3は、図1の不揮発性半導体記憶装置の1セルユニット分の断面図である。図3において、ウェル11上には電荷蓄積層15およびセレクトゲート電極19、20が配置され、電荷蓄積層15上には制御ゲート電極16が配置されている。なお、ウェル11と電荷蓄積層15とは、不図示のトンネル絶縁膜を介して絶縁することができる。電荷蓄積層15と制御ゲート電極16とは、不図示の電極間絶縁膜を介して絶縁することができる。ここで、1個の電荷蓄積層15とその上の制御ゲート電極16とで1個のメモリセルを構成することができる。そして、ウェル11には、電荷蓄積層15間または電荷蓄積層15とセレクトゲート電極19、20との間に配置された不純物拡散層12、13、14が形成されている。なお、例えば、ウェル11はP型、不純物拡散層12、13、14はN型に形成することができる。そして、不純物拡散層13は接続導体18を介してビット線BLjに接続され、不純物拡散層14は接続導体17を介してソース線SCEに接続されている。なお、各メモリセルの制御ゲート電極16はワード線WL1~WLlに接続され、セレクトゲート電極19、20はセレクトゲート線SGD、SGSにそれぞれ接続されている。また、図1において、ロウ選択回路2は、メモリセルの読み書き消去動作時において、メモリセルアレイ1のロウ方向のメモリセルを選択することができる。ウェル電位設定回路3は、メモリセルの読み書き消去動作時において、メモリセルアレイ1のウェル電位を設定することができる。ソース電位設定回路4は、メモリセルの読み書き消去動作時において、メモリセルアレイ1のソース電位を設定することができる。カラム選択回路5は、メモリセルの読み書き消去動作時において、メモリセルアレイ1のカラム方向のメモリセルを選択することができる。センスアンプ回路8は、メモリセルから読み出されたデータをカラムごとに判別することができる。データ入出力バッファ6は、外部から受け取ったコマンドやアドレスを制御回路7に送ったり、センスアンプ回路8と外部との間でデータの授受を行ったりすることができる。制御回路7は、コマンドおよびアドレスに基づいて、ロウ選択回路2、ウェル電位設定回路3、ソース電位設定回路4およびカラム選択回路5の動作を制御することができる。ここで、制御回路7には、書き込み制御部7a、書き込みベリファイ制御部7b、探索ベリファイ制御部7cおよび再書き込み制御部7dが設けられている。書き込み制御部7aは、メモリセルの書き込み動作を制御することができる。ベリファイ制御部7bは、目標ベリファイレベルよりも低いしきい値電圧を有するメモリセルを探索することができる。同様に、ベリファイ制御部7bは、目標ベリファイレベルよりも高いしきい値電圧を有するメモリセルを探索することもができる。再書き込み制御部7cは、ベリファイ制御部7dにて目標ベリファイよりも低いしきい値、または、高いしきい値を有するメモリセルの書き込み電圧を変更することができる。そして、書き込み動作では、ブロックBiの選択ワード線WLkに書き込み電圧VWが印加され、ブロックBiの選択ビット線BLjに書き込むデータに応じて0V後述する書き込み電圧、または、例えば2.5V後述する書き込み禁止電圧が印加される。例えば、データ0を書き込みたい場合は選択ビット線BLjを0Vに、データ1を書き込みたい場合は選択ビット線BLjを書き込み禁止電圧にする。また、非選択ワード線WL1~WLk-1、WLk1~WLlにはセルトランジスタMT1~MTk-1をオンさせるのに十分な高電圧例えば、10Vが印加される。なお、選択ワード線WLkよりもビット線BLj側の非選択ワード線WL1~WLk-1には、セルトランジスタMT1~MTk-1をオンさせるのに十分な高電圧例えば、10Vが印加され、選択ワード線WLkよりもソース線SCE側の非選択ワード線WLk1~WLlには、セルトランジスタMTk1~MTlをオフさせるのに十分な低電圧例えば、0Vが印加される場合もある。また、セレクトゲート線SGDには、ビット線BL電圧との関係で、セルトランジスタMTの閾値を上昇させたい場合にセレクトトランジスタMS1がオンし、セルトランジスタMTの閾値を上昇させたくない場合にセレクトトランジスタMS1がオフする電圧、例えば、2.5Vが印加される。また、セレクトゲート線SGSには、セレクトトランジスタMS2をオフさせるのに十分な低電圧が印加される。すると、電荷蓄積層15に電荷を注入したい場合、ビット線BLjに印加された0Vの電圧は、セレクトトランジスタMS1がオンしているためNANDセルユニットNUjに0Vが転送される。ここで、電荷蓄積層15に電荷を注入したい場合にビット線BLに印加する電圧を書き込み電圧と称する場合がある。ビット線BLjに印加された0Vの電圧は、NANDセルユニットNUjのセルトランジスタMT1~MTk-1を介してセルトランジスタMTkのドレインに伝わるとともに、選択セルの制御ゲート電極16に高電圧がかかり、選択セルの電荷蓄積層15の電位が上昇する。このため、トンネル現象によって選択セルのドレインから電荷が電荷蓄積層15に注入され、セルトランジスタMTkのしきい値が上昇することで、選択セルの書き込み動作が実行される。一方、電荷蓄積層15に電荷を注入したくない場合、ビット線BLjに印加された2.5Vの電圧により、セレクトトランジスタMS1がオフする。ここで、電荷蓄積層15に電荷を注入したくない場合にビット線BLに印加する電圧を書き込み禁止電圧と称する場合がある。その結果、いわゆるセルフブーストにより、選択ワード線WLkに接続された選択セルのチャネルの電位が上昇する。その結果、選択セルのドレインから電荷が電荷蓄積層15に注入されない。そのため、セルトランジスタMTkのしきい値電圧は上昇しない。書き込みベリファイ動作では、ブロックBiの選択セルの書き込み動作が実行された後、選択セルのしきい値が目標しきい値レベルに達したかどうかが確認される。この時、ブロックBiの選択ワード線WLkに書き込みベリファイ電圧VYが印加され、非選択ワード線WL1~WLk-1、WLk1~WLlには、セルトランジスタMT1~MTk-1、MTk1~MTlをオンさせるのに十分な高電圧例えば、4.5Vが印加される。また、セレクトゲート線SGD、SGSには、セレクトトランジスタMS1、MS2をオンさせるのに十分な高電圧例えば、4.5Vが印加される。また、ビット線BLjにプリチャージ電圧が印加され、ソース線SCEに0Vが印加される。この時、選択セルのしきい値が目標しきい値レベルに達していない場合は、ビット線BLjに充電された電荷がNANDセルユニットNUjを介して放電され、ビット線BLjの電位がロウレベルになる。一方、選択セルのしきい値が目標しきい値レベルに達している場合は、ビット線BLjに充電された電荷がNANDセルユニットNUjを介して放電されないので、ビット線BLjの電位がハイレベルになる。そして、ビット線BLjの電位がロウレベルかハイレベルかを判定することで選択セルのしきい値が探索しきい値レベルに達しているかどうかが判定される。そして、選択セルのしきい値が目標しきい値レベルに達しているなら、選択セルの書き込み処理が終了する。一方、選択セルのしきい値が探索しきい値レベルに達していないなら、その選択セルの再書き込み動作が実行される。再書き込み動作では、再書き込み制御部に7cより、ブロックBiの選択ワード線WLkに再書き込み電圧VRWが設定される。なお、再書き込み電圧VRWは、選択セルの書き込み動作の開始時の書き込み電圧VWよりも高くすることができる。その後、書き込み制御部7aは、が探索しきい値レベルに達していないメモリセルの選択ワード線WLkに再書き込み電圧VRWを印加する。また、探索しきい値レベルに達していないメモリセルのビット線に0Vが印加される。この時、書き込み後のしきい値が探索しきい値レベルに達しているメモリセルの再書き込みが行われないようにするために、書き込み制御部7aは、書き込み後のしきい値が探索しきい値レベルに達しているメモリセルのビット線に書き込み禁止電圧を印加、または、フローティングにする。また、非選択ワード線WL1~WLk-1、WLk1~WLlにはセルトランジスタMT1~MTk-1をオンさせるのに十分な高電圧例えば、10Vが印加される。なお、選択ワード線WLkよりもビット線BLj側の非選択ワード線WL1~WLk-1には、セルトランジスタMT1~MTk-1をオンさせるのに十分な高電圧例えば、10Vが印加され、選択ワード線WLkよりもソース線SCE側の非選択ワード線WLk1~WLlには、セルトランジスタMTk1~MTlをオフさせるのに十分な低電圧例えば、0Vが印加される場合もある。また、書き込み制御部7aは、セレクトゲート線SGDには、ビット線BLに書き込み電圧が印加された場合にセレクトトランジスタMS1がオンし、ビット線BLに書き込み禁止電圧が印加された場合にセレクトトランジスタMS1がオフする電圧を印加する。また、書き込み制御部7aは、セレクトゲート線SGSには、セレクトトランジスタMS2をオフさせるのに十分な低電圧を印加する。すると、書き込み後のしきい値が探索しきい値レベルに達していないメモリセルのビット線に印加された0Vの電圧が、NANDセルユニットNUjのセルトランジスタMT1~MTk-1を介し、そのメモリセルのセルトランジスタMTkのドレインに伝わるとともに、そのメモリセルの制御ゲート電極16に高電圧がかかる。このため、書き込み後のしきい値が探索しきい値レベルに達していないメモリセルの電荷蓄積層15の電位が上昇する。この結果、書き込み後のしきい値が探索しきい値レベルに達していないメモリセルのドレインからトンネル現象によって電荷蓄積層15に電荷が注入され、そのメモリセルのセルトランジスタMTkのしきい値が上昇することで、書き込み後のしきい値が探索しきい値レベルに達していないメモリセルの再書き込み動作が実行される。ここで、書き込み後のしきい値が探索しきい値レベルに達していないメモリセルのみの再書き込み動作を実行する。以降ロックアウト動作と称する場合がある。このロックアウト動作により、書き込み後のしきい値分布の高レベル領域をシフトさせることなく、書き込み後のしきい値分布の低レベル領域を高レベル領域側にシフトさせることができる。このため、書き込みベリファイ回数を増大させることなく、書き込み後のしきい値分布を狭くすることができ、パフォーマンスの低下を抑制しつつ、読み出しマージンを増大させることができる。図4は、図1の不揮発性半導体記憶装置の書き込み時のしきい値分布の遷移状態を示す図である。なお、図4では、各メモリセルが4値化1つのメモリセルに2ビットのデータを記憶されている場合を例にとった。また、4値が記憶される時の最もレベルの低いしきい値分布をE、3番目にレベルの高いしきい値分布をA、2番目にレベルの高いしきい値分布をB、最もレベルの高いしきい値分布をCとした。これらのしきい値分布E、A~Cは、2ビット分のデータ‘11’、‘10’、‘00’、‘01’にそれぞれ対応させることができる。また、しきい値分布Aの目標ベリファイレベルをVfA、しきい値分布Bの目標ベリファイレベルをVfB、しきい値分布Cの目標ベリファイレベルをVfCとした。なお、0<VfA<VfB<VfCである。ここでベリファイレベルVfはそれぞれのしきい値分布の低レベル側の裾の値とほぼ等しくなる。図4aにおいて、消去動作では、例えば、各ブロックの全てのメモリセルのしきい値分布Eが負になるように設定することができる。そして、メモリセルの書き込みでは、ロウアーページの書き込みが行われることにより、書き込み対象のメモリセルについてしきい値分布LMが生成される。この動作をロウ書き込みと称する場合がある。なお、しきい値分布LMが正になるように、しきい値分布LMの目標ベリファイレベルをVfLMに設定することができる。なお、ベリファイレベルVfLMはベリファイレベルVfBよりも低いことが好ましい。また、ベリファイレベルVfLMはベリファイレベルVfAと同じでも良いし、異なっていても良い。ここで、書き込み動作では、書き込み電圧VWを一回印加し、しきい値分布A~CのベリファイVfを行う。その後、書き込み後のしきい値が探索しきい値レベルに達していないメモリセルの再書き込み動作が実行される。この動作を、以降通常書き込み動作と称する場合がある。ここで、本例の4値の書き込み動作では、通常書き込み動作を行う前に、書き込み制御部7aはしきい値分布Cに対応した初期の書き込み動作を行うことができる。この動作を、以降Cパルス書き込み動作と称する場合がある。このCパルス書き込み動作では、図4bに示すように、しきい値分布BCはしきい値分布LMからCレベルのしきい値を書き込むセルを高レベル側に移動させて生成する。このしきい値分布BCは、しきい値分布LMの高レベル側に生成される。また、このしきい値分布BCは、その高レベル側の裾が目標ベリファイレベルVfCにかかり、その低レベル側の裾が目標ベリファイレベルVfBにかかるように分布幅が広くなる。なお、初期の書き込み動作の条件によっては、しきい値分布BCの低レベル側の裾が目標ベリファイレベルVfBよりも高くなる場合もある。また、この時、初期の書き込み動作における書き込み電圧は、しきい値分布A~Cの書き込み動作の開始時の書き込み電圧よりも大きくすることが好ましい。そして、しきい値分布BCが生成されると、図4cに示すように、書き込みベリファイレベルVfCLに基づいて、しきい値分布BCについてのみ書き込みベリファイ動作が行われる。この動作を探索ベリファイ動作と称する場合がある。なお、書き込みベリファイレベルVfCLは、目標ベリファイレベルVfCよりも小さな値に設定する。この探索ベリファイ動作では、ベリファイ制御部7bが、しきい値分布BCに対応した書き込み動作が行われたメモリセルが書き込みベリファイレベルVfCLに達しているかどうかをチェックすることで、しきい値分布BCの低レベル領域BCLと高レベル領域BCHが探索される。そして、図4dに示すように、しきい値分布BCの低レベル領域BCLに属するメモリセルのみに再書き込み動作が行われることで、しきい値分布BCの低レベル領域BCLが高レベル側にシフトされる。この書き込み動作を追加Cパルス書き込み動作と称する場合がある。なお、低レベル領域BCLの再書き込み動作の再書き込み電圧は、しきい値分布BCの書き込み動作の書き込み電圧よりも高くすることが好ましい。この探索ベリファイ動作と追加Cパルス書き込み動作により、しきい値分布BCの低レベル側の裾のみを高レベル側に移動させることができる。その結果、しきい値分布BCの幅を狭くすることができる。すなわち、しきい値分布BCを高レベルに移動させてしきい値分布Cを生成するため、しきい値分布BCの幅が狭くなるということはしきい値分布Cの幅も狭くできることに繋がる。また、追加Cパルス書き込み動作後には、探索ベリファイ動作は行わない。その結果、書き込み動作を高速化することができる。なお、探索ベリファイ動作を行いしきい値分布BCの低レベル側の裾をベリファイレベルVfCL以上にすればしきい値分布BCの幅を狭くすることができる。しかし、しきい値分布Cは、後の書き込みベリファイ動作にて、ベリファイレベルVfCを用いてしきい値分布Cの低レベル側の裾を調整することになる。すなわち、追加Cパルス書き込み動作後には、探索ベリファイ動作は行う必要性は小さい。そこで、追加Cパルス書き込み動作後には、探索ベリファイ動作は行わないことで、書き込み動作を高速化させることができる。そして、図4eに示すように、通常書き込み動作及び書き込みベリファイ動作により、しきい値分布Eからしきい値分布Aを生成し、しきい値分布LMからしきい値分布Bを生成し、しきい値分布BCの高レベル領域BCHおよび高レベル側にシフトされた低レベル領域BCLからしきい値分布Cを生成する。ここで、しきい値分布A、Bを生成する前にしきい値分布BCを生成し、しきい値分布BCからしきい値分布Cを生成することにより、しきい値分布A、Bを生成した後にしきい値分布LMからしきい値分布Cを生成する方法に比べて、しきい値分布A、Bが受けるセル間干渉を低減でき、しきい値分布A、Bの広がりを抑制することができる。セル間干渉では、図3において、隣接セルの制御ゲート電極16に高電圧がかかると、自セルの電荷蓄積層15に蓄積された電荷が容量結合にて引き抜かれ、自セルのしきい値が変化する。また、しきい値分布BCの低レベル領域BCLに属するメモリセルのみに追加Cパルス書き込み動作を実行することにより、しきい値分布BCの高レベル領域BCHをシフトさせることなく、しきい値分布BCの低レベル領域BCLを高レベル領域側にシフトさせることができる。その結果、しきい値分布Cを狭くすることができる。また、しきい値分布Cはしきい値分布BCから生成される。そのため、しきい値分布BCの低レベル側の裾が高くすることにより、しきい値分布Cを生成するまでに必要な書き込み電圧VWの印加回数が少なくなる。その結果、しきい値分布Cが、しきい値分布A、Bに与えるセル間干渉を小さくすることができる。すなわち、しきい値分布A、Bのしきい値変動を小さくすることができる。特に、高い書き込み電圧を必要とするしきい値分布Cの書き込み回数書き込み電圧VWを印加する回数を少なくすることは、セル間干渉を小さくする効果が大きい。なお、ロウ書き込みは本実施例の必須の条件ではない。ロウ書き込みを行わず、Cパルス書き込み動作、探索ベリファイ動作、追加Cパルス書き込み動作を行い、しきい値分布A~Cを生成することもできる。この場合は、Cパルス書き込み動作によりしきい値分布Eからしきい値分布BCを生成する。このように、ロウ書き込みを行わなくても上述した効果を得ることができる。その結果、書き込み速度をさらに高速化することができる。図5は、図1の不揮発性半導体記憶装置の書き込み電圧および書き込みベリファイ電圧の印加方法を示すタイミングチャートである。図5において、図4aのしきい値分布LMが生成されると、選択セルに書き込み電圧VWを印加し、その選択セルの書き込み動作を実行することでしきい値分布BCを生成するT1、Cパルス書き込み動作。この時、書き込み電圧VWはプログラム電圧VPにオフセット電圧ΔVP1を加算することが好ましい。なお、オフセット電圧ΔVP1は、ステップアップ電圧ΔVP3より大きな値に設定することができる。なお、Cパルス書き込み動作を複数回行うことも可能である。その結果、しきい値分布BCの低レベル側の裾を高くすることにより、しきい値分布BCからしきい値分布Cへの書き込み電圧の印加回数を少なくすることができる。次に、選択セルにベリファイ電圧VFを印加することで、しきい値分布BCについてのベリファイ動作を行い、しきい値分布BCの低レベル領域BCを探索するT2、探索ベリファイ動作。この時、ベリファイ電圧VFはベリファイレベルVfCLに設定することができる。次に、しきい値分布BCの低レベル領域BCのメモリセルのみに再書き込み電圧VRWを印加し、そのメモリセルの再書き込み動作を実行することで、しきい値分布BCの低レベル領域BCを高レベル側にシフトさせるT3、追加Cパルス書き込み動作。この時、再書き込み電圧VRWはプログラム電圧VPにオフセット電圧ΔVP1、ΔVP2を加算することが好ましい。Cパルス書き込み動作においてしきい値の移動量が小さいメモリセルを移動させるためである。なお、オフセット電圧ΔVP2は、ステップアップ電圧ΔVP3より大きな値に設定することができる。また、追加Cパルス書き込みは複数回行うことも可能である。その結果、しきい値分布BCの低レベル側の裾を高くすることにより、しきい値分布BCからしきい値分布Cへの書き込み電圧の印加回数を少なくすることができる。次に、探索ベリファイ動作を行うことなく、通常書き込み動作を行う。選択セルに書き込み電圧VWを印加し、その選択セルの書き込み動作を実行することで、しきい値分布A~Cに収さまるように選択セルのしきい値を調整するT4。この時、書き込み電圧VWはプログラム電圧VPに設定することができる。次に、選択セルに書き込みベリファイ電圧VYを順次印加することで、各しきい値分布A~Cについての書き込みベリファイを順次行うT5~T7。この時、しきい値分布Aについての書き込みベリファイ電圧VYは目標ベリファイレベルVfAに設定し、しきい値分布Bについての書き込みベリファイ電圧VYは目標ベリファイレベルVfBに設定し、しきい値分布Cについての書き込みベリファイ電圧VYは目標ベリファイレベルVfCに設定することができる。そして、選択セルのしきい値が目標ベリファイレベルVfA~VfCに達していないなら、選択セルのしきい値が目標ベリファイレベルVfA~VfCに達するまで、書き込み電圧VWをステップアップ電圧ΔVP3だけ加算しながらその選択セルの書き込み動作を繰り返すT8~T15。ここで、ロックアウト動作により、目標ベリファイレベルVfに達したメモリセルから順に書き込みが行われなくなる。図6は、図1の不揮発性半導体記憶装置の書き込み動作を示すフローチャートである。図6において、書き込み制御部7aは、書き込み電圧VWをVPΔVP1に設定しS1、しきい値分布Cに書き込まれる選択セルの書き込み動作を実行するS2、Cパルス書き込み動作。次に、ベリファイ制御部7bは、選択セルのベリファイを行うことで、選択セルのしきい値分布の低レベル領域を探索するS3、探索ベリファイ動作。次に、書き込み制御部7aは、書き込み電圧VWをVPΔVP1ΔVP2に設定しS4、選択セルの低レベル領域にのみ再書き込み動作を実行するS5、追加Cパルス書き込み動作。次に、書き込み制御部7aは、書き込み電圧VWをVPに設定しS6、しきい値分布A~Cに書き込まれる選択セルの書き込み動作を実行するS7。そして、ベリファイ制御部7bは、選択セルの書き込みベリファイを行いS8、ベリファイチェックに不合格ならS9、ベリファイチェックに合格するまで、再書き込み制御部7cが書き込み電圧VWをステップアップ電圧ΔVP3だけ加算しながら、書き込み制御部7aがその選択セルの書き込み動作を繰り返すT9、S10。第2実施形態図7は、第2実施形態に係る不揮発性半導体記憶装置の書き込み電圧および書き込みベリファイ電圧の印加方法を示すタイミングチャートである。第2実施形態は、第1実施形態のCパルス書き込み動作、及び、探索ベリファイ動作を通常書き込み動作に取り入れた形態である。第1実施形態と同様の構成、動作においてはその説明を省略する。図7において、図4aのしきい値分布LMが生成されると、書き込み制御部7aは、しきい値分布Cに書き込まれる予定の選択セルに書き込み電圧VWを印加し、その選択セルの書き込み動作を実行する。その結果、しきい値分布BCを生成するT21。この時、書き込み電圧VWはプログラム電圧VPにオフセット電圧ΔVP1を加算することが好ましい。なお、ロウ書き込み動作は第1実施形態と同様に省略することも可能である。次に、通常書き込み動作と書き込みベリファイ動作を変形させた書き込み行う。以降、この通常書き込み動作を第1通常書き込み動作と称する。書き込み制御部7aは、選択セルに書き込み電圧VWを印加し、しきい値分布A、Bに書き込まれる選択セルの書き込み動作を実行することで、しきい値分布A、Bが目標ベリファイレベルVfA、VfBに収さまるように選択セルのしきい値を調整するT22。この時、書き込み電圧VWはプログラム電圧VPに設定することができる。なお、第1通常書き込み動作において、しきい値分布Cに書き込まれる選択セルも書き込みの対象にしても良い。次に、選択セルに書き込みベリファイ電圧VYを順次印加することで、各しきい値分布A、Bについての書き込みベリファイを順次行うT23、T24。この時、ベリファイ制御部7bは、しきい値分布Aについての書き込みベリファイ電圧VYは目標ベリファイレベルVfAに設定し、しきい値分布Bについての書き込みベリファイ電圧VYは目標ベリファイレベルVfBに設定することができる。このベリファイ動作に合わせて、探索ベリファイ動作と同様の動作も行う。ベリファイ制御部7bは、しきい値分布BCしきい値分布Cに書き込まれるメモリセルについての書き込みベリファイ電圧VYは目標ベリファイレベルVfCBに設定する。T23~T25の動作を第1ベリファイ動作と称する場合がある。次に、書き込み制御部7aは、しきい値分布BCの低レベル領域BCのメモリセルのみに再書き込み電圧VRWを印加し、そのメモリセルの再書き込み動作を実行することで、しきい値分布BCの低レベル領域BCを高レベル側にシフトさせるT26、追加Cパルス書き込み動作。この時、再書き込み電圧VRWはプログラム電圧VPにオフセット電圧ΔVP1、ΔVP2およびステップアップ電圧ΔVP3を加算することが好ましい。次に、探索ベリファイ動作を行わずに、通常書き込み動作を行う。以降、第2通常書き込み動作と称する。書き込み制御部7aは、選択セルに書き込み電圧VWを印加し、その選択セルの書き込み動作を実行することで、しきい値分布A~Cに収さまるように選択セルのしきい値を調整するT27。この時、再書き込み制御部7cは、書き込み電圧VWはプログラム電圧VPにステップアップ電圧ΔVP3を加算することができる。次に、ベリファイ制御部7bは、選択セルに書き込みベリファイ電圧VYを順次印加することで、各しきい値分布A~Cについての書き込みベリファイを順次行うT28~T30。この時、しきい値分布Cについての書き込みベリファイ電圧VYは目標ベリファイレベルVfCに設定することができる。以降、T28~T30の動作を第2ベリファイ動作と称する場合がある。そして、選択セルのしきい値が目標ベリファイレベルVfA~VfCに達していないなら、選択セルのしきい値が目標ベリファイレベルVfA~VfCに達するまで、再書き込み制御部7cは電圧VWをステップアップ電圧ΔVP3だけ加算しながら、書き込み制御部7aはその選択セルの書き込み動作を繰り返すT31~T38。ここで、第2実施形態は第1実施形態と同様の効果が得られる、また、Cパルス書き込み動作、及び、探索ベリファイ動作を通常書き込み動作に取り入れることにより、書き込み処理を効率化することができる。本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。また、本実施の形態では、各メモリセルが4値化されている場合を例にとったが、8値化、16値化している場合でも適用可能である。その場合は、最も高いしきい値分布にCパルス書き込み動作、探索ベリファイ動作、及び、追加Cパルス書き込み動作を行えばよい。また、Cパルス書き込み動作、探索ベリファイ動作、及び、追加Cパルス書き込み動作はしきい値分布の移動量が大きい分布に対して適用することも可能である。例えば、しきい値分布Eからしきい値分布Aに移動させる場合である。このしきい値分布Eからしきい値分布Aの移動量は、しきい値分布LMからしきい値分布Bへの移動量よりも大きい。ここで、しきい値分布の移動量が大きい場合、より大きな書き込み電圧が必要となり、セル間干渉が強くなる。その結果、しきい値分布の幅が大きくなってしまう。すなわち、しきい値分布のレベルではなく、しきい値分布の移動量に基づいて、本発明を適用しても該述の効果が得られる。