"ワード線、及びビット線に接続された複数のメモリセルがマトリックス状に配置されたメモリセルアレイと、前記ワード線、及びビット線の電位を制御する制御回路とを具備し、前記制御回路は、前記メモリセルからデータを読み出す読み出し動作時に、前記ワード線のうち選択されたワード線に隣接する非選択ワード線を立ち上げた後、選択ワード線を立ち上げることを特徴とする半導体記憶装置。前記非選択ワード線を立ち上げた後、前記選択ワード線を立ち上げる間に、前記ワード線に供給される電圧を決定するための電圧データを演算する演算回路をさらに具備することを特徴とする請求項1記載の半導体記憶装置。複数のメモリセルと選択ゲートが直列接続されたNANDセルを有するメモリセルアレイと、基準電圧に基づき前記NANDセルのワード線に電位を供給する電圧発生回路と、前記基準電圧の電位を変える可変回路とを具備し、前記可変回路は、前記NANDセルのうち最後に書き込まれるメモリセルに対して、前記NANDセルの他のセルを書き込むときの第1の基準電圧より低い第2の基準電圧を出力することを特徴とする半導体記憶装置。複数のメモリセルと選択ゲートが直列接続された少なくとも第1、第2のNANDセルを有するメモリセルアレイと、基準電圧に基づき前記第1、第2のNANDセルのワード線に電位を供給する電圧発生回路と、前記基準電圧の電位を変える可変回路とを具備し、前記可変回路は、第1のNANDセルのうち最後に書き込まれるメモリセルに対して、第1のNANDセルの他のセルを書き込むときの第1の基準電圧より低い第2の基準電圧を出力し、前記第2のNANDセルのうち最後に書き込まれるメモリセルに対して、前記第2の基準電圧より低い第3の基準電圧を出力し、前記第2のNANDセルの他のセルを書き込むときの第1の基準電圧より低い第4の基準電圧を出力することを特徴とする半導体記憶装置。複数のメモリセルと選択ゲートが直列接続されたNANDセルを有するメモリセルアレイと、基準電圧に基づき前記NANDセルのワード線に電位を供給する電圧発生回路と、前記基準電圧の電位を変える可変回路とを具備し、前記可変回路は、前記NANDセルのうち特定のメモリセルを書き込むとき第1の基準電圧を出力し、前記特定のメモリセルと別のメモリセルを書き込むとき、前記第1の基準電圧と異なる第2の基準電圧を出力することを特徴とする半導体記憶装置。複数のメモリセルと選択ゲートが直列接続された少なくとも第1、第2のNANDセルを有するメモリセルアレイと、基準電圧に基づき前記第1、第2のNANDセルのワード線に電位を供給する電圧発生回路と、前記基準電圧の電位を変える可変回路とを具備し、前記可変回路は、第1のNANDセルのうち特定のメモリセルを書き込むとき第1の基準電圧を出力し、前記第1のNANDセルの前記特定のメモリセルと別のメモリセルを書き込むとき、前記第1の基準電圧と異なる第2の基準電圧を出力し、前記第2のNANDセルのうち特定のメモリセルを書き込むとき、前記第1、第2の基準電圧と異なる第3の基準電圧を出力し、前記第2のNANDセルの前記特定のセルと別のメモリセルを書き込むとき前記第1、第2、第3の基準電圧と異なる第4の基準電圧を出力することを特徴とする半導体記憶装置。本発明は、閾値レベルに対応した読み出し電圧を発生するためのパラメータの数を大幅に削減することが可能な半導体記憶装置を提供しようとするものである。本発明の半導体記憶装置の態様は、ワード線、及びビット線に接続された複数のメモリセルがマトリックス状に配置されたメモリセルアレイと、前記ワード線、及びビット線の電位を制御する制御回路とを具備し、前記制御回路は、前記メモリセルからデータを読み出す読み出し動作時に、前記ワード線のうち選択されたワード線に隣接する非選択ワード線を立ち上げた後、選択ワード線を立ち上げることを特徴とする。以下、本発明の実施の形態について、図面を参照して説明する。第1の実施形態図2は、第1の実施形態に係る半導体記憶装置、具体的には例えば16値4ビットのデータを記憶するNANDフラッシュメモリの構成を示している。メモリセルアレイ1は複数のビット線と複数のワード線と共通ソース線を含み、例えばEEPROMセルからなる電気的にデータを書き換え可能なメモリセルがマトリクス状に配置されている。このメモリセルアレイ1には、ビット線を制御するためのビット制御回路2とワード線制御回路6が接続されている。ビット線制御回路2は、ビット線を介してメモリセルアレイ1中のメモリセルのデータを読み出したり、ビット線を介してメモリセルアレイ1中のメモリセルの状態を検出したり、ビット線を介してメモリセルアレイ1中のメモリセルに書き込み制御電圧を印加してメモリセルに書き込みを行なう。ビット線制御回路2には、カラムデコーダ3、データ入出力バッファ4が接続されている。ビット線制御回路2内のデータ記憶回路はカラムデコーダ3によって選択される。データ記憶回路に読み出されたメモリセルのデータは、前記データ入出力バッファ4を介してデータ入出力端子5から外部へ出力される。また、外部からデータ入出力端子5に入力された書き込みデータは、データ入出力バッファ4を介して、カラムデコーダ3によって選択されたデータ記憶回路に入力される。ワード線制御回路6は、メモリセルアレイ1に接続されている。このワード線制御回路6は、メモリセルアレイ1中のワード線を選択し、選択されたワード線に読み出し、書き込みあるいは消去に必要な電圧を印加する。メモリセルアレイ1、ビット線制御回路2、カラムデコーダ3、データ入出力バッファ4、及びワード線制御回路6は、制御信号及び制御電圧発生回路7に接続され、この制御信号及び制御電圧発生回路7によって制御される。制御信号及び制御電圧発生回路7は、制御信号入力端子8に接続され、外部から制御信号入力端子8を介して入力される制御信号によって制御される。前記ビット線制御回路2、カラムデコーダ3、ワード線制御回路6、制御信号及び制御電圧発生回路7は書き込み回路、及び読み出し回路を構成している。また、前記メモリセルアレイ1は、電気フューズとしてのROM部1-1を有している。このROM部1-1は、メモリセルアレイと同様に、EEPROMセルにより構成されている。このROM部1-1は、後述するように、ベリファイ読み出し電圧やデータの読み出し電圧を発生するためのパラメータデータを記憶する。さらに、制御信号及び制御電圧発生回路7は、後述するように、演算回路21及び電圧発生回路31を有している。演算回路21は、ROM部1-1から供給されるパラメータデータに基づき、トリミングデータを発生し、電圧発生回路31はトリミングデータに基づきベリファイ読み出し電圧やデータの読み出し電圧を発生する。図3は、図2に示すメモリセルアレイ1及びビット線制御回路2の構成を示している。メモリセルアレイ1には複数のNANDセルが配置されている。1つのNANDセルは、直列接続された例えば32個のEEPROMからなるメモリセルMCと、選択ゲートS1、S2とにより構成されている。選択ゲートS2はビット線BL0eに接続され、選択ゲートS1はソース線SRCに接続されている。各ロウに配置されたメモリセルMCの制御ゲートはワード線WL0~WL29、WL30、WL31に共通接続されている。また、選択ゲートS2はセレクト線SGDに共通接続され、選択ゲートS1はセレクト線SGSに共通接続されている。ビット線制御回路2は複数のデータ記憶回路10を有している。各データ記憶回路10には、一対のビット線BL0e、BL0o、BL1e、BL1o...BLie、BLio、BL8ke、BL8koが接続されている。メモリセルアレイ1は、破線で示すように、複数のブロックを含んでいる。各ブロックは、複数のNANDセルにより構成され、例えばこのブロック単位でデータが消去される。また、消去動作は、データ記憶回路10に接続されている2本のビット線について同時に行なわれる。また、ビット線の1つおきに配置され、1つのワード線に接続された複数のメモリセル破線で囲まれた範囲のメモリセルは、1セクタを構成する。このセクタ毎にデータが書き込まれ、読み出される。リード動作、プログラムベリファイ動作及びプログラム動作時において、データ記憶回路10に接続されている2本のビット線BLie、BLioのうち外部より供給されるアドレス信号YA0、YA1...YAi...YA8kに応じて1本のビット線が選択される。さらに、外部アドレスに応じて、1本のワード線が選択される。図4abはメモリセル及び選択トランジスタの断面図を示している。図4aはメモリセルを示している。基板51後述するP型ウェル領域55にはメモリセルのソース、ドレインとしてのn型拡散層42が形成されている。P型ウェル領域55の上にはゲート絶縁膜43を介して浮遊ゲートFG44が形成され、この浮遊ゲート44の上には絶縁膜45を介して制御ゲートCG46が形成されている。図4bは選択ゲートを示している。P型ウェル領域55にはソース、ドレインとしてのn型拡散層47が形成されている。P型ウェル領域55の上にはゲート絶縁膜48を介して制御ゲート49が形成されている。図5は、半導体記憶装置の断面図を示している。例えばP型半導体基板51内には、N型ウェル領域52、53、54、P型ウェル領域55、56が形成されている。N型ウェル領域52内にはP型ウェル領域55が形成され、このP型ウェル領域55内にメモリセルアレイ1を構成する低電圧NチャネルトランジスタLVNTrが形成されている。さらに、前記N型ウェル領域53、P型ウェル領域56内に、データ記憶回路10を構成する低電圧PチャネルトランジスタLVPTr、低電圧NチャネルトランジスタLVNTrが形成されている。前記基板51内には、ビット線とデータ記憶回路10を接続する高電圧NチャネルトランジスタHVNTrが形成されている。また、前記N型ウェル領域54内には例えばワード線駆動回路等を構成する高電圧PチャネルトランジスタHVPTrが形成されている。図5に示すように、高電圧トランジスタHVNTr、HVPTrは、低電圧トランジスタLVNTr、LVPTrに比べて例えば厚いゲート絶縁膜を有している。図6は、図3に示すデータ記憶回路10の一例を示す回路図である。このデータ記憶回路10は、例えば4ビット、16値のデータを書き込み、読み出す場合を示しており、プライマリデータキャッシュPDC、セコンダリデータキャッシュSDC、ダイナミックデータキャッシュDDC、テンポラリデータキャッシュTDCを有している。SDC、PDC、DDCは、書き込み時に入力データを保持し、読み出し時に読み出しデータを保持し、ベリファイ時に一時的にデータを保持し、多値データを記憶する際に内部データの操作に使用される。TDCは、データの読み出し時にビット線のデータを増幅し、一時的に保持するとともに、多値データを記憶する際に内部データの操作に使用される。SDCは、ラッチ回路を構成するクロックドインバータ回路61a、61b、及びトランジスタ61c、61dにより構成されている。トランジスタ61cはクロックドインバータ回路61aの入力端と、クロックドインバータ回路61bの入力端の間に接続されている。このトランジスタ61cのゲートには信号EQ2が供給されている。トランジスタ61dはクロックドインバータ回路61aの出力端と接地間に接続されている。このトランジスタ61dのゲートには信号PRSTが供給されている。SDCのノードN2aは、カラム選択トランジスタ61eを介して入出力データ線IOnに接続され、ノードN2bは、カラム選択トランジスタ61fを介して入出力データ線IOに接続される。これらトランジスタ61e、61fのゲートにはカラム選択信号CSLiが供給されている。SDCのノードN2aは、トランジスタ61g、61hを介してPDCのノードN1bに接続されている。トランジスタ61gのゲートには信号BLC2が供給され、トランジスタ61hのゲートには信号BLC1が供給されている。PDCは、クロックドインバータ回路61i、61j及びトランジスタ61kにより構成されている。トランジスタ61kは、クロックドインバータ回路61iの入力端とクロックドインバータ回路61jの入力端の相互間に接続されている。このトランジスタ61kのゲートには信号EQ1が供給されている。PDCのノードN1bはトランジスタ61lのゲートに接続されている。このトランジスタ61lの電流通路の一端はトランジスタ61mを介して接地されている。このトランジスタ61mのゲートには信号CHK1が供給されている。また、トランジスタ61lの電流通路の他端はトランスファーゲートを構成するトランジスタ61n、61oの電流通路の一端に接続されている。このトランジスタ61nのゲートには信号CHK2nが供給されている。また、トランジスタ61oのゲートはノードN3に接続されている。トランジスタ61n、61oの電流通路の他端には、信号COMiが供給されている。この信号COMiは全データ記憶回路10に共通の信号であり、全データ記憶回路10のベリファイが完了したかどうかを示す信号である。すなわち、後述するように、ベリファイが完了すると、PDCのノードN1bがローレベルノードN1aがハイレベルとなる。この状態において、信号CHK1、CHK2nをハイレベルとすると、ベリファイが完了している場合、信号COMiがハイレベルとなる。さらに、前記TDCは、例えばMOSキャパシタ61pにより構成されている。このキャパシタ61pは、一端が前記トランジスタ61g、61hの接続ノードN3に接続され、他端に後述する信号BOOSTが供給されている。また、接続ノードN3には、トランジスタ61qA~61qDを介してDDCが接続されている。トランジスタ61qA~61qDのゲートには、信号REGA~REGDが供給されている。DDCは、トランジスタ61rA~61rD、61sA~61sDにより構成されている。トランジスタ61rA~61rDの電流通路の一端には信号VREGA~VREGDが供給され、他端は前記トランジスタ61qA~61qDの電流通路に接続されている。このトランジスタ61rA~61rDのゲートはトランジスタ61sA~61sDを介して前記PDCのノードN1aに接続されている。このトランジスタ61sA~61sDのゲートには信号DTGA~DTGDが供給されている。さらに、前記接続ノードN3にはトランジスタ61t、61uの電流通路の一端が接続されている。トランジスタ61uの電流通路の他端には信号VPREが供給され、ゲートにはBLPREが供給されている。前記トランジスタ61tのゲートには信号BLCLAMPが供給されている。このトランジスタ61tの電流通路の他端はトランジスタ61vを介してビット線BLoの一端に接続され、トランジスタ61wを介してビット線BLeの一端に接続されている。ビット線BLoの一端はトランジスタ61xの電流通路の一端に接続されている。このトランジスタ61xのゲートには信号BIASoが供給されている。ビット線BLeの一端はトランジスタ61yの電流通路の一端に接続されている。このトランジスタ61yのゲートには信号BIASeが供給されている。これらトランジスタ61x、61yの電流通路の他端には、信号BLCRLが供給されている。トランジスタ61x、61yは、信号BlASo、BlASeに応じてトランジスタ61v、61wと相補的にオンとされ、非選択のビット線に信号BLCRLの電位を供給する。尚、前記ノードN3と接地間には、例えばMOSキャパシタ61zが接続されている。このキャパシタ61zは、後述するTDCのキャパシタ61pを信号BOOSTにより昇圧する際、カップリングにより、ノードN3の電位が上昇し過ぎないように、ノードN3の電位を調整する。以後、PDCのデータはノードN1aの電位、SDCのデータはノードN2aの電位、TDCのデータはノードN3の電位、DDCのデータはノードN4の電位とする。上記各信号及び電圧は、図2に示す制御信号及び制御電圧発生回路7により生成され、この制御信号及び制御電圧発生回路7の制御に基づき、データの書き込み、ベリファイ、読み出し動作が制御される。本メモリは、例えば1つのセルに16値のレベルにより、4ビットのデータを記憶する。この4ビットの切り替えはアドレス第1ページ、第2ページ、第3ページ、第4ページによって制御される。尚、本実施形態において、図6に示すデータ記憶回路の構成及び具体的な動作は、本質的ではないため省略する。図7は、メモリセルのデータとメモリセルの閾値の関係を示している。消去動作を行なうとメモリセルのデータは0となる。書込み動作によりメモリセルのデータは1~Fへと変化する。データ書き込み時のベリファイ読み出しは、閾値レベル1’~F’を用いて行なわれ、データ読み出し時は、閾値レベル1~Fを用いて行なわれる。読み出し時の閾値レベルは、ベリファイ読み出し時の閾値レベルより若干低く設定されている。すなわち、ベリファイ読み出し時の閾値レベルは、読み出し時の閾値レベルに対して若干マージンが設定されている。図8、図9は、ベリファイ読み出し、及び読み出し時における閾値レベルの生成方法を示している。本実施形態において、ベリファイ読み出し時の、及び読み出し時における閾値レベルは、複数のパラメータを用いて演算される。すなわち、ベリファイ読み出し時の閾値レベルは、パラメータVCG_T_PT_0V、DVCG_T_V、DDVCG_T_1V~DDVCG_T_FVに基づいて演算される。パラメータVCG_T_PT_0Vは、チップ固有の値であり、例えば0V~0.375Vのうち25mV毎に設定された1つの値である。パラメータDVCG_T_Vは、例えば0.2V~0.575Vのうち25mV毎に設定された1つの値である。DDVCG_T_1V~DDVCG_T_FVは、例えば0V~0.375Vのうち25mV毎に設定された16個の値である。また、図8、図10に示すように、読み出し時の閾値レベルに関するパラメータDVCG_T_R、DDVCG_T_1V~DDVCG_T_FRは、ベリファイ読み出し時の閾値レベルと読み出し時の閾値レベルとの差に設定されている。すなわち、パラメータDVCG_T_Rは、-0.375V~0Vのうち25mV毎に設定された1つの値である。DDVCG_T_1R~DDVCG_T_FRは、例えば-0.375V~0Vのうち25mV毎に設定された16個の値である。上記パラメータVCG_T_PT_0V、DVCG_T_V、DDVCG_T_1V~DDVCG_T_FV、DVCG_T_R、DDVCG_T_1V~DDVCG_T_FRは、図2に示すメモリセルアレイ1のROM部1-1に記憶されている。図9に示すように、ベリファイ読み出しにおいて、例えば閾値レベル1の電圧VCG_T_1V~閾値レベルFの電圧VCG_T_FVは、次式1により求められる。VCG_T_1V=VCG_TPT_0VDVCG_T_VDDVCG_T_1VVCG_T_2V=VCG_T_1VDVCG_T_VDDVCG_T_2V::VCG_T_FV=VCG_T_EVDVCG_T_VDDVCG_T_FV...1また、読み出し時において、例えば閾値レベル1の電圧VCG_T_1R~閾値レベルFの電圧VCG_T_FRは、次式2のように、ベリファイ読み出し時の電圧からベリファイ読み出し時の電圧と読み出し時の電圧の差分を減算負の値である差分を加算することにより求められる。VCG_T_1R=VCG_T_1VDVCG_T_RDDVCG_T_1RVCG_T_2R=VCG_T_2VDVCG_T_RDDVCG_T_2R::VCG_T_FR=VCG_T_EVDVCG_T_RDDVCG_T_FR...2図1は、上記演算を行なう演算回路21を示している。この演算回路21は、図2の制御信号及び制御電圧発生回路7に設けられている。演算回路21は、レジスタ22-1~22-33と、23-1、23-2と、セレクタ24、セレクタ25と、加算器26と、レジスタ27とにより構成されている。レジスタ22-1~22-33は、ベリファイ読み出し用パラメータVCG_T_PT_0V、DDVCG_T_1V~DDVCG_T_FV、及び読み出し用パラメータDDVCG_T_1V~DDVCG_T_FRをそれぞれ保持する。レジスタ23-1、23-2は、ベリファイ読み出し用パラメータDVCG_T_Vと、読み出し用パラメータDVCG_T_Rをそれぞれ保持する。セレクタ24は、レジスタ22-1~22-33に接続され、制御信号CS1に従って、これらのうちの1つを選択する。セレクタ25は、レジスタ23-1、23-2に接続され、制御信号CS2に従って、これらのうちの1つを選択する。加算器26は、セレクタ24、セレクタ25の出力端、レジスタ27の出力端に入力端が接続され、出力端がレジスタ27の入力端に接続されている。上記構成において、チップに電源が投入されたとき、ROM部1-1に記憶された各パラメータが読み出され、制御信号及び制御電圧発生回路7に供給される。これらパラメータは、演算回路21の対応するレジスタに供給される。すなわち、ベリファイ読み出し用パラメータVCG_T_PT_0V、DDVCG_T_1V~DDVCG_T_FV、及び読み出し用パラメータDDVCG_T_1V~DDVCG_T_FRは、レジスタ22-1~22-33に保持され、ベリファイ読み出し用パラメータDVCG_T_Vと読み出し用パラメータDVCG_T_Rは、レジスタ23-1、23-2に保持される。この状態において、ベリファイ読み出し時、セレクタ24、25、加算器26、レジスタ27は、上記式1に従って動作し、ベリファイ読み出し電圧に対応するパラメータが順次累積される。また、データ読み出し時、セレクタ24、25、加算器26、レジスタ27は、上記式2に従って動作し、読み出し電圧に対応するパラメータが順次累積される。上記のようにして算出されたベリファイ読み出し用閾値レベル、又は読み出し用閾値レベルは、トリミングデータとして制御信号及び制御電圧発生回路7の電圧発生回路31に供給される。図11は、電圧発生回路31の一例を示している。この電圧発生回路31は、基準電圧発生回路31-1と、内部電圧発生回路31-2とにより構成されている。基準電圧発生回路31-1は、差動増幅器32、PチャネルMOSトランジスタ33、抵抗34、35により構成されている。差動増幅器32の一方入力端には、例えば図示せぬバンドギャップリファレンス回路により発生された基準電圧Vbgrが供給されている。差動増幅器32の出力端はトランジスタ33のゲートに接続されている。このトランジスタ33のソースは電源Vccが供給されるノードに接続され、ドレインは抵抗34の一端に接続されている。この抵抗34の他端は抵抗35を介して接地されるとともに、差動増幅器32の他方入力端に接続されている。この基準電圧発生回路31-1は、基準電圧Vbgr例えば0.8V~1.0Vより若干高い基準電圧Vrefを出力する。この電圧Vrefは、抵抗34、35の抵抗値をそれぞれR1、R2とすると、次式で表される。Vref=R1R2/R2×Vbgr一方、内部電圧発生回路31-2は、差動増幅器36、PチャネルMOSトランジスタ37、抵抗38、複数のNチャネルMOSトランジスタ39-1~39-n、デコーダ40により構成されている。差動増幅器36の一方入力端には、基準電圧発生回路31-1の出力電圧Vrefが供給される。差動増幅器36の出力端は、トランジスタ37のゲートに接続される。このトランジスタ37のソースは昇圧電位VCGHH例えば7Vが供給されるノードに接続され、ドレインは抵抗38を介して接地されている。この抵抗38の中間タップは差動増幅器36の他方入力端に接続されている。さらに、抵抗38は一端と他端との間に複数のタップを有している。トランジスタ39-1~390nの一端はこれらタップにそれぞれ接続されて、他端は出力ノードVCGRVに接続されている。これらトランジスタ39-1~390nのゲートはデコーダ40の出力端に接続されている。このデコーダ40の入力端は前記演算回路21の出力端に接続されている。上記構成において、差動増幅器36とトランジスタ37は、基準電圧発生回路31-1の出力電圧Vrefに基づき、抵抗38の抵抗比に応じた電圧を発生させる。また、演算回路21から出力されるベリファイ読み出し電圧、及び読み出し電圧に対応するトリミングデータVCG_T_nV,Rは、デコーダ40に供給される。デコーダ40は、トリミングデータをデコードし、トランジスタ39-1~39-nのいずれかをオンさせる。このため、出力端VCGRVからトリミングデータに対応したベリファイ読み出し電圧、又は読み出し電圧が出力される。図12は、メモリセルのプログラムシーケンスを概略的に示している。先ず、図12を参照して、プロがラムシーケンスを概略的に説明する。データを書き込む以前に消去動作が実行され、メモリセルの閾値電圧は例えば負の値に設定されている。この状態において、外部より第1乃至第4ページ分の書込みデータが入力されS11、図3、図6に示すデータ記憶回路10のデータキャッシュに所定の値がセットされるS12。図6において、データを書き込む場合、PDCのノードN1aがローレベルとされ、データを書き込まない場合、ノードN1aがハイレベルとされる。この後、メモリセルへデータが書き込まれるS13。この書き込み動作は、4ページ分16値又は15値のレベルへ同時に書き込む。プログラムが終了すると、例えば閾値レベル1’でベリファイが実行されるS14。このとき、図1に示す演算回路21は、複数のレジスタに保持されたパラメータから閾値レベル1’に対応するトリミングデータVCG_T_1Vを生成する。このトリミングデータVCG_T_1Vは、図11に示す内部電圧発生回路31のデコーダ40に供給される。このデコーダ40は、トリミングデータをデコードし、トランジスタ39-1~39nから対応する1つのトランジスタを選択してオンさせる。このため、トリミングデータに対応した閾値レベル1’に対応する電圧が発生される。メモリセルの閾値データが閾値レベル1’に達している場合、PDCのノードはハイレベルとなり、次回以降のプログラムでは書き込まれない。しかし、閾値レベル1’に達していない場合、PDCのノードはローレベルのままとなり、次回のプログラムで書き込まれ、閾値レベル1’に達するまで、プログラムとベリファイが繰り返される。次に、閾値レベル2’でベリファイが実行されるS15。このとき、図1に示す演算回路21は、複数のレジスタに保持されたパラメータから閾値レベル2’に対応するトリミングデータVCG_T_2Vを生成する。このトリミングデータVCG_T_2Vは、図11に示す内部電圧発生回路31のデコーダ40に供給される。このデコーダ40は、トリミングデータをデコードし、トランジスタ39-1~39nから対応する1つのトランジスタを選択してオンさせる。このため、トリミングデータに対応した閾値レベル2’に対応する電圧が発生される。メモリセルの閾値データが閾値レベル2’に達していない場合、メモリセルの閾値データが閾値レベル2’に達するまでプログラムとベリファイが繰り返される。このような動作が、閾値レベル3’から閾値レベルF’まで繰り返し実行されS29、全てのデータ記憶回路10のPDCのノードN1aがハイレベルとなるとベリファイ動作が終了されるS30。次に、上記プログラムシーケンスにおいて、ベリファイ読み出し動作の詳細について説明する。図13は、従来のベリファイ読み出しにおけるワード線及びビット線の波形を示している。選択されたワード線以下、選択ワード線とう称すには、メモリセルのデータを読み出すための閾値レベルに対応する電圧が供給され、非選択ワード線には非選択セルをオンさせるための電圧Vread例えば6Vが供給される。このため、選択ワード線は非選択ワード線とのカップリングにより、立ち上がりが高い電位VREとなってしまう。この間、ビット線を所定のレベル例えば0.7Vまでプリチャージして充電させる。選択ワード線の電位がVREから所定のレベルに戻った後、選択ゲートに例えば読み出し電圧6Vを供給し、選択ゲートをオンさせる。セルがオンしている場合ベリファイ用閾値レベルを超えていない場合、ビット線は放電し、セルがオフしている場合ベリファイ用閾値レベルを超えている場合、ビット線は放電せず、前のプリチャージ電位を保持する。このように、従来は、選択ワード線の電位がVREから所定のレベルに戻るまでの時間を待って選択ゲートをオンしていたため、ベリファイに時間がかかる欠点があった。一方、図14は、本実施形態のベリファイ読み出しにおけるワード線及びビット線の波形を示している。本実施形態において、例えば図12に示すベリファイレベル1’の状態となると直ぐに、非選択ワード線が電圧Vreadに設定される。これと同時に、図1に示す演算回路21により、ベリファイ用のトリミングデータが計算される。この後、選択ワード線に、ベリファイ読み出し電圧が供給される。この時、非選択ワード線は、ある程度の電位に立ち上がっているため、選択ワード線がカップリングにより非選択ワード線の電位の影響を受けることが少ない。この後、選択ゲートをオンさせる。セルがオンしている場合ベリファイ用閾値レベルを超えていない場合、ビット線は放電し、セルがオフしている場合ベリファイ用閾値レベルを超えている場合、ビット線は放電せず、プリチャージ電位を保持する。このようなタイミング制御とすることにより、選択ワード線の電位が安定するまでの時間を短縮することができる。しかも、非選択ワード線に電位を供給してから選択ワード線に電位を供給する間で、トリミングデータを演算することができるため、無駄な待ち時間を削減でき、高速動作が可能である。尚、プログラムの開始時において、メモリセルの閾値電圧は、高い閾値電圧に達していない。このため、図12に示すベリファイ1’~F’において、例えばベリファイ7’~F’は行なわず、スキップしてもよい。また、プログラムの終盤において、低い閾値電圧のベリファイは終了している。このため、例えばベリファイ1’~6’は行なわず、スキップすることも可能である。上記説明は、ベリファイ読み出しについて行なった。しかし、メモリセルに記憶されたデータを読み出す読み出し動作の場合も、ベリファイ読み出し動作と同様である。すなわち、非選択ワード線に電圧Vreadを供給した後、読み出し電圧を生成するためのトリミングデータを計算し、このトリミングデータに基づいて読み出し電圧を生成し、選択ワード線に供給する。読み出し時のトリミングデータは、前述したように、ベリファイ読み出し時のトリミングデータに基づいて計算される。例えば閾値レベル3を読み出す場合、図1に示す演算回路21の加算器26は、DVCG_T_VとDDVCG_T_1Vの2つのパラメータを加え、この結果をVCG_T_1Vとする。次に、このVCG_T_1VにDVCG_T_VとDDVCG_T_2Vの2つのパラメータを加え、この結果をVCG_T_2Vとする。次に、このVCG_T_2VにDVCG_T_VとDDVCG_T_3Vの2つのパラメータを加え、この結果VCG_T_3Vが閾値レベル3のベリファイ読み出し用のトリミングデータとなる。次にこのVCG_T_3VにDVCG_T_RとDDVCG_T_3Rの2つのパラメータを加え、この結果、VCG_T_3Rが閾値レベル3の読み出し用トリミングデータとなる。上記第1の実施形態によれば、ベリファイ読み出しの閾値レベルに対応したパラメータ、及び読み出しの閾値レベルに対応したパラメータをROM部1-1に記憶し、このROM部1-1に記憶されたパラメータを演算回路21により累積することによって、ベリファイ読み出し用トリミングデータ、及び読み出し用トリミングデータを生成している。このため、各パラメータの数を従来に比べて削減することができ、ROM部1-1の記憶容量、及びレジスタの数を削減できる。しかも、読み出し用トリミングデータはベリファイ読み出し用トリミングデータに基づき生成されるため、読み出しの閾値レベルに対応したパラメータの数を大幅に低減できる利点を有している。さらに、選択ワード線は、非選択ワード線を立ち上げた後で、演算回路21により、トリミングデータを算出した後に立ち上げている。このため、選択ワード線の電位が非選択ワード線の電位に影響を受けることを防止できるため、選択ワード線の電位が安定するまでの時間を短縮することができる。しかも、非選択ワード線に電位を供給してから選択ワード線に電位を供給する間で、トリミングデータを演算することができるため、無駄な待ち時間を削減でき、高速動作が可能である。第2の実施形態次に、上記パラメータの設定について説明する。図15は、図1に示すレジスタ22-1~22-33の一例を示している。各レジスタ22-1~22-33は、例えば4個のフリップフロップ回路FF1~FF4により構成されている。フリップフロップ回路FF1~FF4には、クロック信号CLKが供給され、各レジスタ22-1~22-33、23-1、23-2は、クロック信号CLKに応じてカウンタと同様の動作を行なう。つまり、フリップフロップ回路FF1~FF4は、クロック信号CLKに応じて順次入力信号をシフトしカウントする。パラメータの設定は、ウェハ状態におけるダイソートテスト時に行われる。ダイソートテスト時において、チップより出力されるベリファイ読み出し用閾値レベル及び読み出し用閾値レベルが所定の電圧となるようトリミングを行なう。すなわち、先ず、ベリファイ読み出しの例えば閾値レベル0の電圧が所定の電位となるよう、パラメータVCG_T_PT_0Vを変化させてトリミングする。つまり、レジスタ22-1のフリップフロップ回路FF1~FF4にクロック信号を供給し、順次レジスタの値をカウントアップする。セレクタ24は、レジスタ22-1の出力信号を選択し、セレクタ25は非選択とする。また、加算器26は、累積加算は行なわない。このため、セレクタ24により選択されたレジスタ22-1の出力信号はレジスタ27を介して図11に示す内部電圧発生回路31-2に供給される。内部電圧発生回路31-2は、デコーダ40でレジスタ22-1の出力信号をデコードし、このデコード出力信号によりトランジスタ39-1~39-nから1つのトランジスタをオンさせる。このオンとされたトランジスタの出力電圧は、例えば図示せぬ外部のテスタに供給され、パラメータVCG_T_PT_0Vに対応する基準電圧と比較される。この動作をフリップフロップ回路FF1~FF4にクロック信号が供給される毎に繰り返される。そして、内部電圧発生回路31-2から出力される電圧とパラメータVCG_T_PT_0Vに対応する基準電圧とが一致した場合、クロック信号が停止され、そのときのフリップフロップ回路FF1~FF4のカウント値がパラメータVCG_T_PT_0Vとしてレジスタ22-1に保持される。パラメータDVCG_T_V、DVCG_T_Rは、予め適当な値を定めておく、したがって、これらのパラメータについてトリミングは行なわない。次に、ベリファイ読み出し用の閾値レベル1に対応する電圧がトリミングされる。このトリミングは、閾値レベルの低い側から行なう。すなわち、先ず、セレクタ24は、VCG_T_PT_0Vを選択し、セレクタ25は非選択としてレジスタ27にVCG_T_PT_0Vを保持させる。この後、セレクタ24はDDVCG_T_1Vを選択し、セレクタ25はDVCG_T_Vを選択する。加算器26は、これらを加算する。このため、加算器26の出力信号VCG_T_1V=VCG_T_TP_0VDVCG_T_VDDVCG_T_1Vとなる。この出力信号はレジスタ27を介して図11に示す内部電圧発生回路31-2に供給される。内部電圧発生回路31-2に供給された信号は、デコーダ40でデコードされ、このデコード出力信号によりトランジスタ39-1~39-nから1つのトランジスタをオンされる。このオンされたトランジスタから出力される電圧は、図示せぬテスタにおいて、ベリファイ読み出し用の閾値レベル1に対応する基準電圧と比較される。このトランジスタから出力される電圧と基準電圧とが不一致である場合、クロック信号に応じてレジスタ22-2から出力される信号がセレクタ24、加算器26、レジスタ27を介してデコーダ40に供給される。デコーダ40のデコード出力信号により、トランジスタ39-1~39-nから1つのトランジスタがオンされる。この内部電圧発生回路31-2から出力される電圧は、図示せぬテスタにおいて、ベリファイ読み出し用の閾値レベル1に対応する基準電圧と比較される。上記動作が繰り返され、内部電圧発生回路31-2から出力される電圧とベリファイ読み出し用の閾値レベル1に対応する基準電圧とが一致したとき、クロック信号CLKが停止され、そのときのフリップフロップ回路のカウント値がパラメータDDVCG_T_1Vとしてレジスタ22-2に保持される。このような動作が、ベリファイ読み出し用の閾値レベル2~F、読み出し用の閾値レベル1~Fに対して実行される。トリミング終了後、各レジスタ22-1~22-33、23-1、23-2に保持されたパラメータは、図2に示すビット線制御回路2、図6に示すデータ記憶回路10を介してメモリセル1のROM部1-1に記憶される。尚、16値のデータを記憶するNAND型フラッシュメモリの場合、下のレベルより、15回のトリミングを行なう必要がある。しかし、各閾値レベルの増分としてのパラメータDDVCG_T_nVの値は、パラメータVCG_T_PT_0V、DVCG_T_V、及びDVCG_T_Rに比べて小さい。このため、例えば閾値レベル2、3、5、6、9、10、11、12、14のトリミング動作を省略し、例えば閾値レベル1、4、8、C、Fの順のように飛ばして行なうことも可能である。この場合、例えば閾値レベル1のトリミングを行う場合、レジスタ22-2にクロック信号を供給するとともに、レジスタ22-3、22-4にもクロック信号を供給し、レジスタ22-3、22-4をレジスタ22-2-と同時にカウントアップ動作させる。セレクタ24はレジスタ22-2の出力信号を選択し、この信号に基づき閾値レベル1のトリミングを行う。閾値レベル1のトリミングが終了し、レジスタ22-2に保持されているカウント値をパラメータDDVCG_T_2Vとしてレジスタ22-2に保持するとき、レジスタ22-3、22-4に保持されているカウント値をパラメータDDVCG_T_3V、DDVCG_T_4Vとしてレジスタ22-3、22-4に保持する。同様にして、閾値レベル5、6、9、10、11、12、14のパラメータを設定する。このような方法によりパラメータを設定することにより、トリミングに要する時間を短縮することができる。上記第2の実施形態によれば、演算回路21、内部電圧発生回路31-2を用いて、トリミングデータとしてのパラメータを設定することができる。このため、別途回路を増加することなくパラメータを設定することができるため、チップ面積の増大を防止できる。また、値の小さなパラメータDDVCG_T_nVの値は、全てをトリミング動作により決定せず、1つのパラメータの値を複数のパラメータで共有することにより、トリミング時間を一層高速化することができる。第3の実施形態図16乃至図20は、第3の実施形態を示している。第1の実施形態において、基準電圧発生回路31-1により発生される基準電圧Vrefは一定であり、内部電圧発生回路31-2の抵抗値を変えることにより、閾値レベルに対応する電圧を発生していた。しかし、基準電圧発生回路31-1により発生される基準電圧Vrefを変化させ、全体的に閾値レベルを変えることも可能である。図16abは、第1の実施形態におけるベリファイ電圧と、その40、-40の値の変化を示している。尚、図16abは、閾値レベル1~8までを示している。一方、図17abは、第1の実施形態の基準電圧Vrefを例えば0.6~1.4倍させた場合を示している。図16ab、図17abから明らかなように、基準電圧Vrefを変化させた場合、閾値レベルが大きなほうが閾値レベルの小さいほうに比べて電圧を大きくシフトさせることができる。ところで、近時、素子の微細化に伴いビット線方向、ワード線方向に隣接するセル相互のカップリング容量による閾値分布のずれが問題となっている。NAND型フラッシュメモリは、図18に示すように、NANDセル内のビット線BL1、BL2から離れたワード線WL0からワード線WL31の順序で書込みを行う。ワード線WL31に接続されたセルは最後に書かれるため、ワード線WL0~WL30に接続されたセルより、隣接セルのカップリング容量による閾値のずれが少ない。このため、ワード線WL31の閾値分布を全体的に下げることが可能である。すなわち、図19aは、ワード線WL0~WL30に接続されたメモリセルの閾値電圧の分布をDAで示し、ワード線31に接続されたメモリセルの閾値電圧の分布をDBで示している。分布DBのような閾値電圧の分布の場合、各閾値電圧間の電位を下げた場合においても、読み出し動作に支障がない。このため、図19bに示すように、全体的にレベルを低下させることができる。このように、閾値電圧を全体的に低下させる場合、基準電圧Vrefを低下させることが有効である。隣接セルのカップリング容量の影響は、書き込み順序により相違する。このため、具体的には、例えば図18に示すように、ビット線BL1に接続されたNANDセルのうちワード線WL0~WL30に接続されたメモリセルを書き込む場合の基準電圧Vrefの値を基準とすると、隣接するビット線BL2に接続されたNANDセルのうちワード線WL0~WL30に接続されたメモリセルを書き込む場合の基準電圧は、Vref×0.95に設定され、ビット線BL1に接続されたNANDセルのうちワード線WL31に接続されたメモリセルを書き込む場合の基準電圧は、Vref×0.90に設定され、ビット線BL2に接続されたNANDセルのうちワード線WL31に接続されたメモリセルを書き込む場合の基準電圧は、Vref×0.85に設定されることが好ましい。図20は、第3の実施形態に適用される基準電圧発生回路の一例を示しており、図11と同一部分には同一符号を付す。図20において、抵抗R1には例えば複数のタップが設けられ、各タップに例えばNチャネルMOSトランジスタ51-1~51-4の一端が接続されている。これらトランジスタ51-1~51-4の他端は、出力ノードに接続されている。各トランジスタ51-1~51-4のゲートには、倍率を設定するための制御信号MSが供給される。例えば図18に示すビット線BL2、ワード線WL31に接続されたセルにデータを書き込む場合、すなわち、基準電圧Vref×0.85の電圧を出力する場合、トランジスタ51-1のゲートに供給される制御信号MSがハイレベル、その他の制御信号MSがローレベルとされる。このようにして発生された基準電圧Vref×0.85は、図11に示す内部電圧発生回路31-2に供給され、内部電圧発生回路31-2は、基準電圧Vref×0.85に基づき、各閾値レベルに対応した電圧を発生する。上記第3の実施形態によれば、基準電圧発生回路31-1は、書き込むべきメモリセルの位置に応じて異なる基準電圧を発生している。すなわち、ビット線に近く、書き込み順序が遅いセルほど基準電圧を低く設定している。このため、隣接セルのカップリング容量の影響が少ないメモリセルの全体的な閾値電圧の分布を低下することができる。したがって、閾値電圧分布の広いセルに比べて書き込み速度を向上させることができる。しかも、基準電圧Vrefの電位を変化させているため、各閾値レベルに対応したパラメータを変更する必要がない。又は、異なる基準電圧Vref毎にパラメータを設定する必要がない。したがって、パラメータの増加を防止することができる利点を有している。第4の実施形態また、第2の実施形態において、パラメータの設定は、各レベル毎にトリミングを行なうことにより定めたが、これに限定されるものではなく、基準電圧発生回路31-1を用いてパラメータを設定することも可能である。図21は、第4の実施形態を示すものであり、基準電圧発生回路31-1の変形例を示している。抵抗34には、さらにトランジスタ51-5,51-6の一端が接続され、これらトランジスタ51-5,51-6の他端は出力ノードに接続されている。これらトランジスタ51-1~51-6のゲートはデコーダ61の出力端に接続されている。このデコーダ61の入力端は、図22に示す複数のフリップフロップ回路FF1~FF4により構成された複数のレジスタ62が接続されている。このような構成において、レジスタにクロック信号CLKを供給して、クロック信号CLKをカウントする。このカウント出力信号はデコーダ61に供給され、デコーダ61の出力信号によりトランジスタ51-1~51-6のいずれかがオンとされる。この基準電圧発生回路31-1から出力された内部電圧発生回路31-2に供給される。このとき、内部電圧発生回路31-2のトランジスタはいずれか1つのみが選択されており、内部電圧発生回路31-2の出力ノードVCGRVの出力電圧が図示せぬテスタによりモニタされる。テスタは、先ず、例えば基準電圧Vref×0.9に対応した参照電圧にセットされ、VCGRVがこの参照電圧に達していない場合、レジスタに供給されるクロック信号CLKがインクリメントされる。また、VCGRVが参照電圧に達した場合、レジスタの値が保持される。このような動作が参照電圧の値を基準電圧Vref×0.95、×1.0、×1.05、×1.1と増加させて行なわれる。第4の実施形態において、図8、図15に示すパラメータは事前に適当な値を決めておき、上記のようにして、基準電圧をトリミングすることにより、レジスタにベリファイ読み出し用のパラメータを保持させることができる。また、第2の実施形態で説明したように、全てのパラメータをトリミング動作により決定せず、1つのパラメータの値を複数のパラメータで共有することにより、トリミング時間を一層高速化することができる。第4の実施形態によっても、パラメータを設定することができる。しかも、各閾値レベル毎にトリミングをしないため、トリミングに要する時間を短縮できる利点を有している。本発明は、上記各実施形態に限定されるものではなく、発明の要旨を変えない範囲において、種々変形実施可能なことは勿論である。"