"複数行複数列に配置され、各々がしきい値電圧の変化によって情報を記憶する複数のメモリセルと、それぞれ複数行に対応して設けられた複数のワード線と、それぞれ複数列に対応して設けられた複数のビット線と、それぞれ前記複数のビット線に対応して設けられた複数のセンスラッチとを備えた不揮発性半導体記憶装置において、前記複数のメモリセルの各々に情報を書込む書込方法であって、1本の選択ワード線に対応する複数のメモリセルのうちの書込対象のメモリセルに対応する各センスラッチに第1の信号をラッチさせるとともに、書込非対象のメモリセルに対応する各センスラッチに第2の信号をラッチさせる第1のステップと、前記選択ワード線に対応する前記複数のメモリセルのうちの前記第1の信号をラッチしたセンスラッチに対応する各メモリセルに書込を行なうとともにベリファイ電圧を用いてベリファイを行ない、書込が終了したメモリセルに対応する各センスラッチに前記第2の信号をラッチさせる第2のステップと、前記第2のステップを繰り返すことにより前記複数のセンスラッチの全てが前記第2の信号をラッチした後に、前記複数のセンスラッチの全てに前記第1の信号をラッチさせる第3のステップと、前記第1の信号をラッチしたセンスラッチに対応する各メモリセルに前記第2のステップにおける書込とは異なる書込条件で書込を行なう第4のステップとを含む、不揮発性半導体記憶装置の書込方法。複数行複数列に配置され、各々がしきい値電圧の変化によって情報を記憶する複数のメモリセルと、それぞれ複数行に対応して設けられた複数のワード線と、それぞれ複数列に対応して設けられた複数のビット線と、それぞれ前記複数のビット線に対応して設けられた複数のセンスラッチとを備えた不揮発性半導体記憶装置において、前記複数のメモリセルの各々に情報を書込む書込方法であって、1本の選択ワード線に対応する複数のメモリセルのうちの書込対象のメモリセルに対応する各センスラッチに第1の信号をラッチさせるとともに、書込非対象のメモリセルに対応する各センスラッチに第2の信号をラッチさせる第1のステップと、前記選択ワード線に対応する前記複数のメモリセルのうちの前記第1の信号をラッチしたセンスラッチに対応する各メモリセルに書込を行なうとともにベリファイ電圧を用いてベリファイを行ない、書込が終了したメモリセルに対応する各センスラッチに前記第2の信号をラッチさせる第2のステップと、前記第2のステップを繰り返すことにより前記複数のセンスラッチの全てが前記第2の信号をラッチした後に、前記書込対象のメモリセルに対応する各センスラッチに前記第1の信号をラッチさせる第3のステップと、前記第1の信号をラッチしたセンスラッチに対応する各メモリセルに前記第2のステップにおける書込とは異なる書込条件で書込を行なう第4のステップとを含む、不揮発性半導体記憶装置の書込方法。前記第4のステップにおける書込は、前記第2のステップにおける書込よりも前記メモリセルへの電荷注入量が少なくなる条件で行なわれる、請求項1または請求項2に記載の不揮発性半導体記憶装置の書込方法。しかし、従来の方法では、データラッチ、ベリファイおよび書込動作を単に2回繰返していたので、しきい値電圧VTHの分布の狭帯化は十分でなかった。それゆえに、この発明の主たる目的は、しきい値電圧分布の狭帯化を図ることが可能な不揮発性半導体記憶装置の書込方法を提供することである。この発明に係る不揮発性半導体記憶装置の書込方法は、複数行複数列に配置され、各々がしきい値電圧の変化によって情報を記憶する複数のメモリセルと、それぞれ複数行に対応して設けられた複数のワード線と、それぞれ複数列に対応して設けられた複数のビット線と、それぞれ複数のビット線に対応して設けられた複数のセンスラッチとを備えた不揮発性半導体記憶装置において、複数のメモリセルの各々に情報を書込む書込方法であって、1本の選択ワード線に対応する複数のメモリセルのうちの書込対象のメモリセルに対応する各センスラッチに第1の信号をラッチさせるとともに、書込非対象のメモリセルに対応する各センスラッチに第2の信号をラッチさせる第1のステップと、選択ワード線に対応する複数のメモリセルのうちの第1の信号をラッチしたセンスラッチに対応する各メモリセルに書込を行なうとともにベリファイ電圧を用いてベリファイを行ない、書込が終了したメモリセルに対応する各センスラッチに第2の信号をラッチさせる第2のステップと、第2のステップを繰り返すことにより複数のセンスラッチの全てが第2の信号をラッチした後に、複数のセンスラッチの全てに第1の信号をラッチさせる第3のステップと、第1の信号をラッチしたセンスラッチに対応する各メモリセルに第2のステップにおける書込とは異なる書込条件で書込を行なう第4のステップとを含む。本発明においては、選択ワード線に対応する複数のメモリセルのうちの書込対象の全メモリセルに書込を行なった後に、選択ワード線に対応する全メモリセルに通常の書込とは異なる条件で追加書込を行なう。したがって、しきい値分布の下裾を形成するメモリセルのしきい値電圧を引き上げることができ、しきい値電圧分布の狭帯化を実現することができる。[実施の形態1]図1は、この発明の実施の形態1によるフラッシュメモリの全体構成を示すブロック図である。図1において、このフラッシュメモリは、複数図では4つのバンクBA0~BA3を備える。バンクBA0~BA3の各々は、情報を記憶するメモリアレイMAと、行アドレス信号に従ってメモリアレイMAの行アドレスを指定するXデコーダXDと、列アドレス信号に従ってメモリアレイMAの列アドレスを指定するYデコーダYDと、メモリアレイMAとデータの授受を行なうYゲートYGと、データを一時的に保持するデータレジスタDRと、データの検知、増幅および保持を行なうセンスラッチ回路SLCとを含む。読出/プログラム/消去制御回路2は、制御信号バッファ1を介して与えられた制御信号/CE,/RE,/WE,...に従って、フラッシュメモリ全体を制御する。行アドレス信号は、マルチプレクサ3、ページアドレスバッファ4を介してバンクBA0~BA3の各々のXデコーダXDに与えられる。列アドレスカウンタ5で生成された列アドレス信号は、バンクBA0~BA3の各々のYデコーダYDに与えられる。書込データ信号は、マルチプレクサ3、データ入力バッファ6および入力データ制御回路7を介してバンクBA0~BA3の各々のYゲートYGに与えられ、さらにデータレジスタDRおよびセンスラッチ回路SLCを介してメモリアレイMAの指定されたアドレスに書き込まれる。メモリアレイMAの指定されたアドレスから読み出されたデータ信号は、センスラッチ回路SLC、データレジスタDR、YゲートYG、データ出力バッファ8およびマルチプレクサ3を介して外部に出力される。図2は、図1に示したメモリアレイMAの構成を示す図である。図2において、メモリアレイMAは、複数行複数列に配置された複数のメモリセルMCと、それぞれ複数行に対応して設けられた複数のワード線WL0~WLmと、それぞれ複数列に対応して設けられた複数のビット線GBL0~GBLnとを含む。各メモリセルMCは、しきい値電圧が変化することによって情報を記憶するMOSトランジスタを含む。ビット線GBL0~GBLnの端部には、それぞれセンスラッチSL0~SLnが配置され、各センスラッチSLはメモリセルMCの書込/読出を制御する。各ワード線WLは、XデコーダXDにより駆動される。図3は、図2に示したセンスラッチSLの構成を示す回路図である。図3において、センスラッチSLは、NチャネルMOSトランジスタ11~18とデータラッチ20を含む。信号PCGがHレベルにされると、NチャネルMOSトランジスタ11が導通してビット線GBLがノードCHG0に接続される。データラッチ20の一方ノードSLSがHレベルとなり、かつ信号TR1がHレベルにされると、NチャネルMOSトランジスタ12,16が導通してビット線GBLがノードCHG1に接続される。データラッチ20の他方ノードSLRがHレベルとなり、かつ信号TR2がHレベルにされると、NチャネルMOSトランジスタ13,15が導通してビット線GBLがノードCHG2に接続される。信号TR3がHレベルにされると、NチャネルMOSトランジスタ14が導通してビット線GBLがノードSLRに接続される。ビット線GBLがHレベルにされ、かつ信号SENSEがHレベルにされると、NチャネルMOSトランジスタ17,18が導通してノードSLSが接地される。図4は、図3に示したデータラッチ20の構成を示す回路図である。図4において、データラッチ20は、PチャネルMOSトランジスタ21~23とNチャネルMOSトランジスタ24~28を含む。信号PCR,PCSがHレベルにされると、NチャネルMOSトランジスタ24,25が導通し、ノードSLR,SLSがそれぞれノードCHGR,CHGSに接続される。信号SLNがHレベルにされるとNチャネルMOSトランジスタ28が導通し、NチャネルMOSトランジスタ26,27のソースが接地される。信号SLPがLレベルにされるとPチャネルMOSトランジスタ21が導通し、PチャネルMOSトランジスタ22,23のソースに電源電位VCCが与えられる。トランジスタ22,23,26,27は差動増幅回路を構成する。図5は、このフラッシュメモリの書込動作を示すフローチャートである。図5において、まずセンスラッチSL0~SLnの各々に、入力データ制御回路7などにより1か0のデータがセットされるS1。各センスラッチSLでは、そのデータに従い、ビット線GBL0~GBLnのうち、書き込みたくないビット線GBLに選択的に書込阻止電圧VINHを与えるS2。続く書込動作においては、ワード線WL0~WLmのうち1本のワード線WL図2ではWL3が高電位とされ、チャージ線図示せずに蓄えられた高電位が、選択されたメモリセルMC30~MC3nを介してビット線GBLに放電される。このとき、ビット線GBLに書込阻止電圧VINHが与えられていると、電位差が少ないため放電が起こらず、与えられていないと放電の際に発生したホットエレクトロンがメモリセルMCに注入されてそのしきい値電圧VTHが上昇するS3。続いてビット線GBL0~GBLnは所望の電位にプリチャージされ、ワード線WL3は所定のベリファイ電位VVRとされる。結果、書込が不十分なメモリセルMCに対応するビット線GBLおいては、メモリセルMCのしきい値電圧VTHが低いため、ビット線電位が放電され、一方、書込が完了したメモリセルMCに対応するビット線GBLでは、メモリセルMCのしきい値電圧VTHが高いため、ビット線GBLのプリチャージ電位は維持される。これがベリファイ読出S4であり、センスラッチSLでの差動増幅を経て、書込完了セルMCの接続されたセンスラッチSLのデータを1から0に変更するS5。これら一連の動作を4種類のメモリセルMCに対して示したのが図6である。書込を行なうメモリセルMCのうち書込の早いセルMCでは、初期の書込でしきい値電圧VTHが高くなり、センスラッチSLのデータが0にされてビット線GBLに書込阻止電圧VINHが与えられる。書込を行なうメモリセルMCのうち書込の遅いセルMCでは、初期の書込ではしきい値電圧VTHは高くならず、センスラッチSLのデータは1のまま変化せず、後期の書込でしきい値電圧VTHが高くなってセンスラッチSLのデータが0にされる。書込を行なわないメモリセルMCでは、しきい値電圧VTHの高低にかかわらず、センスラッチSLのデータが0にされてビット線GBLに書込阻止電圧VINHが与えられる。図2の例では、第1回目の書込でビット線GBL5に接続されたメモリセルMC35のしきい値電圧VTHが所望の値に到達し、センスラッチSL5のデータが1から0に変更されたとした。しかしながら、センスラッチSL1とSLn-1に接続されたメモリセルMC31とMC3n-1のしきい値電圧VTHはまだ低く、センスラッチSL1とSLn-1のデータは1のままである。結果、ステップS6のオール判定にてallSL=0ではないためステップS2に戻り、ステップS2~S6の動作が繰返し実行されることとなる。このようにして書込が繰返された後、メモリセルMC31とMC3n-1のしきい値電圧VTHも所望の値に達すると、全てのセンスラッチSLのデータが0となり、一連の書込動作が完了する。ステップS1~S6は従来と同じである。本発明においては、この後、図5のステップS7~S9に示すとおり、下裾チェックによりラッチデータを戻し、追加書込が実行されることにより、前述の問題点が解決されることとなる。下裾チェックから追加書込に至る一連の動作には、いくつかの実施形態が考えられ、追って順次説明するが、その前に図7を用いて、下裾チェックの目的と方法を説明する。図7は、多値4値記憶の場合のVTH分布と判定レベルの関係を示す図である。多値記憶の場合は、VTH分布の狭帯化は必須要件である。書込直後に実施されるベリファイ動作においては、前述のとおりワード線レベルをVVRとして、メモリセルMCのしきい値電圧VTHがそれ以上であることを確認している。したがって、VTH分布は本来実線で示すような分布となり、読出動作の際にワード線レベルをVVRよりも低いVRWとすれば、判定レベルと分布の間には所定の動作マージンが確保できており、安定した読出ができると期待されている。しかしながら、実際の書込動作は、数千~数万個のメモリセルMCに対し同時に実行されるため、書込初期では図8abに示すように、大半のメモリセルMCにおいてもまだ書込が不十分な状態、すなわち電流が流れる状態においては、共通の電流経路であるグランド線の電位ソース電位が浮き、メモリセルMCを構成するMOSトランジスタのゲートソース間に印加される電圧VVRが実効的に小さくなるため、実際にはまだオン状態のセルMCをオフ状態と誤判定する可能性がある。その結果、そのメモリセルMCは、そのしきい値電圧VTHがまだ低い状態で書込完了とされ、書込後期に書上がったセルMCも含めたしきい値電圧VTHの分布は、図7の破線で示したように、下側に裾を引いた分布となってしまう。下裾チェックはこのようなセルMCを検出するために実施され、具体的には、書込後、ベリファイ時のワード線レベルVVRでの読出結果と、下裾判定ワード線レベルVLTでの読出結果との排他的論理和EX-ORをとることにより実施される。図9は図5のステップS7~S9を具体的に示すフローチャートであり、図10はVTH≧VVR、VVR≧VTH≧VLT、VLT≧VTHの3種類のメモリセルMCに対応するビット線GBLの電位、センスラッチSLのノードSLR,SLSのレベル変化を示す図である。図9のステップS11~S18は図5のステップS7に対応し、図9のステップS19は図5のステップS8に対応し、図9のステップS20,S21は図5のステップS9に対応している。図9および図10を参照して、まずノードCHG0から各ビット線GBLが所定の電位VSHにプリチャージされるS11。次にワード線WLがVLTレベルとされるとS12、書込非対象であったしきい値電圧VTHの低いセルMCにより、ビット線GBLが放電されてビット線電位がVSLとなるS13。図3のセンスラッチSLの比較ノードSLR,SLSには、それぞれ信号PCR,PCSにより、予めVSLR<VSLSとなる電位がプリチャージされている。書込非対象セルによって放電されてビット線電位がVSLとなったビット線GBL対応するセンスラッチSLでは、ノードSLSの電位を引抜くことができないためVSLR<VSLSの関係が保たれる。一方、書込対象セルのしきい値電圧VTHが高いため放電されなかったビット線GBLに対応するセンスラッチSLでは、高いビット線電位によってノードSLSの電位が引抜かれるため、VSLR<VSLSの関係は逆転し、VSLR>VSLSとなる。この状態で差動増幅回路を動作させると、ノードSLSとSLRの電位関係に従ってラッチ状態が確定するS14。次にセンスラッチSLにラッチされた情報をもとに、VLT未満のしきい値電圧VTHを持つセルMCにつながったビット線GBLをノードCHG1から選択的にディスチャージするとともに、VLT以上のしきい値電圧VTHを持つセルMCにつながったビット線GBLをノードCHG2から選択的にプリチャージするS15。次いでワード線電位をVVRに上げてS16、メモリディスチャージを行なうと、下裾に位置していたセルMCでは、ビット線GBLが放電されてVSLとなるので、正規の分布にあるセルMCとの分離が行なわれることになるS17。ここで注目すべき点は、ステップS15においてしきい値電圧VTHの低いセルMCのビット線GBLを完全に放電してしまっているので、図11abに示すように、メモリディスチャージの対象が、VLT以上のしきい値電圧VTHを持つセルMCに限定され、放電経路に多数のしきい値電圧VTHの低いセルMCからの電流が流入ししきい値電圧VTHを低く判定してしまった初期のメモリディスチャージ図8ab参照に比べて、より正しく判定されるということである。続いて先のVLTレベルによる判定で非選択とされたセルMCにつながるビット線GBLを、ラッチデータをもとに再度ノードCHG1からVSHレベルに選択プリチャージしS18、ビット線GBLに保持されたVVRレベルでの判定結果下裾はVSL、正規はVSHとともに差動増幅回路によって増幅、再ラッチすると、2つの判定レベルに対する排他的論理和の演算結果、すなわち下裾セルMCを分離することができるS19。このようにして、下裾に位置するメモリセルMCを、ビット線GBLの放電電流による影響のない条件下で取出すことができたので、このデータに従い、下裾のセルMCに対応するビット線GBLをノードCHG1にディスチャージするとともに、しきい値電圧VTHの低い非選択セルMCとしきい値電圧VTHの高い選択セルMCにノードCHG2から書込阻止電圧VINHを与えるS20。この後、追加書込を行なえばS21、下裾に位置していたメモリセルMCのみに選択的に追加書込して、しきい値電圧VTHを正規のセルMCと同様のレベルまで引上げることが可能となる。本実施の形態1によれば、各分布の下裾に位置するメモリセルMCを、ビット線GBLの放電電流による影響のない条件下で取出すことができるので、選択的に追加書込を行なうことによって、そのしきい値電圧VTHを正規のセルMCと同様のレベルまで引上げることが可能となり、VTH分布を狭帯化できるという効果がある。[実施の形態2]図12は、この発明の実施の形態2のよるフラッシュメモリのセンスラッチSLの構成を示す回路図であって、図3と対比される図である。また図13は、図5のステップS7~S9を具体的に示すフローチャートであって、図9と対比される図である。また図14は、VTH≧VVR、VVR≧VTH≧VLT、VLT≧VTHの3種類のメモリセルMCに対応するビット線GBLの電位、センスラッチSLのノードSLR,SLSのレベル変化を示す図であって、図10と対比される図である。本実施の形態2においても、図1および図2に示すフラッシュメモリの構成が採用され、図5のステップS1~S6に従って初期の書込動作が行なわれた結果、図7において破線で示したVTH分布が形成されたものとする。図12のセンスラッチSLは、図3のセンスラッチSLからノードCHG1からビット線GBLに至る電流経路を形成する2つのNチャネルMOSトランジスタ12,16を除去した構成となっている。したがって、図9のステップS15,S18,S20をそのままでは実行することができない。しかしながら、以下のような動作を行なうことで、図3のセンスラッチSLと同様、分布の下裾を検出し、そのラッチデータを元に戻して追加書込を実行することができる。図13のフローチャートが図9のフローチャートと異なる点は、ステップS15がステップS31~S35で置換され、ステップS18で選択プリチャージがノードCHG2から行なわれ、ステップS20がステップS36,S37で置換されている点である。図13および図14を参照して、まず実施の形態1と同様に、ステップS11~S14が実行される。ステップS14後では、VTH≧VVR、VVR≧VTH≧VLTの書込対象のメモリセルMCに対応するセンスラッチSLではノードSLR,SLSはそれぞれHレベルおよびLレベルとなり、VLT≧VTHの書込非対象のメモリセルMCに対応するセンスラッチSLのノードSLR,SLSはそれぞれLレベルおよびHレベルとなる。ここまでは実施の形態1の動作と全く変わらない。本実施の形態2においては、ここでセンスラッチ反転処理と呼ばれる一定の処理S31~S33が追加で実行される。この処理では、まずビット線GBLがノードCHG0から所定の電位VSHに再度プリチャージされS31、その後、センスラッチSLのデータに従い、ノードCHG2からビット線GBLを選択的にディスチャージするS32。この結果、先にVLTレベルで読出を行なった際、しきい値電圧VTHが高いためにビット線GBLに高い電圧が残り、ノードSLS,SLRをそれぞれLレベルおよびHレベルにセットしたセンスラッチSLではビット線GBLのディスチャージが起こり、一方、先にVLTレベルで読出を行なった際、VTHが低いためにビット線GBLが放電され、ノードSLS,SLRをHレベルおよびLレベルにセットしたセンスラッチSLでは選択ディスチャージは実行されずにプリチャージレベルが維持されることになる。すなわち、先のVLTでの読出の際にビット線GBLに形成された電位とは逆の電位がビット線GBLに形成されることになる。したがって、ここで先の読出で形成したセンスラッチSLのデータをクリアし、再度新しく形成されたビット線GBLのレベルに従ってセンス動作を実行すれば、センスラッチSLに所望の反転データを形成することができる。ここでセンスラッチSLに反転データを形成するのは、実施の形態1でビット線GBLからノードCHG1の電流経路で行なった選択ディスチャージを、ビット線GBLからノードCHG2の電流経路で実行するためである。すなわち、再度ビット線GBLをノードCHG0から所定の電位VSHにプリチャージしS34、ラッチされた情報をもとにノードCHG2からビット線GBLの選択ディスチャージを行なうとS35、VLT未満のしきい値電圧VTHを持つセルMCにつながったビット線GBLでは、ノードSLRがHレベルであるため、選択ディスチャージが実行され、実施の形態1と同様の電位形成を実現できたことになる。続いて、ワード線WLの電位をVVRに上げてS16、メモリディスチャージを行なうと、下裾に位置していたセルMCでは、ビット線GBLが放電されてVSLレベルとなるので、正規の分布にあるセルMCとの分離が行なわれることになるS17。ここで注目すべき点は、実施の形態1同様、ステップS35においてしきい値電圧VTHの低いセルMCのビット線GBLを完全に放電してしまっているので、図11abに示すように、メモリディスチャージの対象が、VLT以上のしきい値電圧VTHを持つセルMCに限定され、放電経路に多数のしきい値電圧VTHの低いセルMCからの電流が流入ししきい値電圧VTHを低く判定してしまった初期のメモリディスチャージ図8abに比べて、より正しく判定されるということである。続いて先のVLTレベルによる判定で非選択とされたセルMCにつながるビット線GBLを、ラッチデータをもとにノードCHG2から再度VSHレベルに選択プリチャージしS18、ビット線GBLに保持されたVVRレベルでの判定結果下裾はVSL、正規はVSHとともに差動増幅回路によって増幅、再ラッチすると、2つの判定レベルに対する排他的論理和の演算結果、すなわち下裾セルを分離することができるS19。このようにして、下裾に位置するメモリセルMCを、ビット線GBLの放電電流による影響のない条件下で取出すことができたので、このデータに従いしきい値電圧VTHの低い非選択セルMCとしきい値電圧VTHの高い選択セルMCに書込阻止電圧VINHを与えてS36,S37、追加書込を行なえばS21、下裾に位置していたメモリセルMCのみ選択的に追加書込されるため、しきい値電圧VTHを正規のセルMCと同様のレベルにまで引上げることが可能となる。本実施の形態2においても、各分布の下裾に位置するメモリセルMCを、ビット線GBLの放電電流による影響のない条件下で取出すことができるので、選択的に追加書込を行なうことによって、そのしきい値電圧VTHを正規のセルMCと同様のレベルにまで引上げることが可能となり、実施の形態1と同様、VTH分布を狭帯化できるという効果がある。[実施の形態3]図15は、この発明の実施の形態3のよるフラッシュメモリの書込方法を示すフローチャートであって、図5と対比される図である。図15を参照して、図15の書込方法が図5の書込方法と異なる点は、分布の下裾チェックS7と下裾セルMCに対してセンスラッチデータを0から1に戻す処理S8を、ラッチのオール0判定S6より前に実施する点である。すなわち、実施の形態1,2では、全ての書込対象セルMCを書上げてから下裾判定を行なっていたのに対し、本実施の形態3では、通常の書込処理が行なわれる過程で、毎回下裾判定を実施する。このようにすることにより、実施の形態1,2で行なっていた追加書込処理S9は、通常の書込処理S2,S3と合せて行なうことが可能となる。本実施の形態3においても、実施の形態1,2と同様に、各分布の下裾に位置するメモリセルMCを、ビット線GBLの放電電流による影響のない条件下で取出すことができるので、一旦書込完了と判断されたセルMCを再度書込対象とすることによって、そのしきい値電圧VTHを正規のセルMCと同様のレベルにまで引上げることが可能となり、VTH分布を狭帯化できるという効果がある。[実施の形態4]図16は、この発明の実施の形態4のよるフラッシュメモリの書込方法を示すフローチャートであって、図15と対比される図である。図16を参照して、図16の書込方法が図15の書込方法と異なる点は、通常の書込処理S3の後、ベリファイ読出S4の前に、全ビット線GBLをプリチャージした後に書込対象外のセルMCにつながるビット線GBLをノードCHG2から予めディスチャージしておきS41、ベリファイ読出S4の後に、書込対象外のセルMCにつながるビット線GBLをノードCHG2からVSHレベルに選択プリチャージするS42。このようにすることにより、通常のベリファイ読出S4と分布の下裾判定S12~S18をまとめて実施でき、工程の簡略化が可能となる。本実施の形態4の場合も、実施の形態3と同様、分布の下裾チェックS41,S4,S42と下裾セルに対してセンスラッチデータを0から1に戻す処理S43を、ラッチのオール0判定S6より前に実施する。すなわち、実施の形態1,2では、全ての書込対象セルを書上げてから下裾判定を行なっていたのに対し、本実施の形態4では、通常の書込処理が行なわれる過程で、毎回下裾判定を実施する。このようにすることにより、実施の形態1,2で行なっていた追加書込処理S18~S20は、通常の書込処理S2,S3と合せて行なうことが可能となる。本実施の形態4においても、実施の形態1~3と同様に、各分布の下裾に位置するメモリセルMCを、ビット線GBLの放電電流による影響のない条件下で取出すことができるので、一旦書込完了と判断されたセルMCを再度書込対象とすることによって、そのしきい値電圧VTHを正規のセルMCと同様のレベルにまで引上げることが可能となり、VTH分布を狭帯化できるという効果がある。[実施の形態5]図17は、この発明の実施の形態5のよるフラッシュメモリの書込方法を示すフローチャートであって、図5と対比される図である。また図18は、メモリセルMCのVTH分布とワード線WLの電位を示す図であって、図7と対比される図である。図17および図18を参照して、図17の書込方法が従来方式および実施の形態1~4と異なる点は、低めのワード線電圧VVRを使ってベリファイ読出を実施する点である。その結果、通常の書込処理が終了した時点S6では、その分布が図18の破線で示すように、実線で示す所望の分布に比べて低いところに位置する。従来技術の問題点にて述べたように、そもそも分布の下裾は、多数のセルMCがまだオン状態にある書込初期に書上がったと誤判定されたセルMCによって形成される。言換えれば、下裾を形成するメモリセルMCは、他のメモリセルMCに比べて簡単にしきい値電圧VTHが上昇するセルMCであるということが言える。本実施の形態5は、この特徴を利用し、全セルMCの書込が完了した後、全てのセンスラッチSLのデータを0から1に戻しS51、全セルMCに一律に弱い書込パルスを与えて書上げるというものであるS52。通常の書込処理のベリファイレベルを低めに設定した理由はここにある。弱い書込では、通常の書込ステップS3よりもメモリセルMCへの電荷注入量が少なくなるような書込条件でメモリセルMCへの書込を行なう。ここで、電荷注入量は、メモリセルMCのコントロールゲートおよびドレイン間に印加される書込電圧×書込電圧のパルス幅×パルス回数に比例する。したがって、弱い書込は、書込電圧を下げる、書込電圧のパルス幅を狭くするすなわち、書込電圧の印加時間を短くする、パルス回数を通常の書込よりも減らすことにより、実現される。本実施の形態5においても、実施の形態1~4と同様に、各分布の下裾に一致するメモリセルMCを、その書上がりやすいという特性を利用して他のメモリセルMCより大きく持上げることができるので、そのしきい値電圧VTHを正規のセルMCと同様のレベルまで引上げることが可能となり、VTH分布を狭帯化できるという効果がある。[実施の形態6]図19は、この発明の実施の形態6のよるフラッシュメモリの書込方法を示すフローチャートであって、図17と対比される図である。本実施の形態6においても、実施の形態5と同様に、図18に示した低いベリファイレベルVVRを使って通常の書込が実施され、下裾判定は実施されない。すなわち、実施の形態5と同様に、下裾に位置するメモリセルMCの特徴を利用して狭帯化を図るものである。本実施の形態6が実施の形態5と異なるのは、通常の書込完了後に実施する追加書込のデータを、書込対象セルMCに限って0から1に戻すことであるS61,S62。書込対象セルMCのデータは、ステップS1でセットした入力データ制御回路7から取込んでもよいし、実施の形態1,2で示した下裾判定の前半の処理、すなわちVLTレベルでの読出S11~S14,S31~S33を行なって得てもよい。本実施の形態6においては、書込対象セルMCに限って追加書込がなされるため、実施の形態5と比較して、書込非対象のセルMCに無用な書込処理が行なわれないという特徴がある。本実施の形態6においても、実施の形態1~5と同様に、各分布の下裾に位置するメモリセルMCを、その書上がりやすいという特性を利用して他のメモリセルMCより大きく持上げることができるので、そのしきい値電圧VTHを正規のセルMCと同様のレベルまで引上げることが可能となり、VTH分布を狭帯化できるという効果がある。今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。"