"2値または多値で書き込み可能なメモリセルを有する第1メモリブロックおよび第2メモリブロックと、外部からのコマンドに応じて、前記第1メモリブロックおよび第2メモリブロックにデータを書き込み、前記第1メモリブロックおよび第2メモリブロックからデータを読み出す制御回路と、を具備し、前記制御回路は、書き込み動作において、書き込み対象ブロックが前記第1メモリブロックである場合、前記第1メモリブロックが2値であるか多値であるかを識別する第1フラグを前記第1メモリブロック内のメモリセルに書き込み、書き込み対象ブロックが前記第2メモリブロックである場合、前記第2メモリブロックが2値であるか多値であるかを識別する第2フラグを前記第2メモリブロック内のメモリセルに書き込み、読み出し動作において、読み出し対象ブロックが前記第1メモリブロックである場合、前記第1フラグに応じて前記第1メモリブロックが2値であるか多値であるかを判定してその第1判定結果を記憶し、読み出し対象ブロックが前記第1メモリブロックである間、前記第1判定結果に応じて前記第1メモリブロックを2値または多値で読み出し、読み出し対象ブロックが前記第1メモリブロックから前記第2ブロックに変更された場合、前記第1判定結果を消去し、前記第2フラグに応じて前記第2メモリブロックが2値であるか多値であるかを判定してその第2判定結果を記憶し、読み出し対象ブロックが前記第2メモリブロックである間、前記第2判定結果に応じて前記第2メモリブロックを2値または多値で読み出すことを特徴とする不揮発性半導体記憶装置。前記第1メモリブロックおよび前記第2メモリブロックはそれぞれページを含み、前記制御回路は前記ページ毎にデータの書き込みおよび読み出しを行い、前記第1判定結果は前記第1メモリブロック内において最初に読み出されるページに含まれる前記第1フラグに応じて判定された結果であり、前記第2判定結果は前記第2メモリブロック内において最初に読み出されるページに含まれる前記第2フラグに応じて判定された結果であることを特徴とする請求項1に記載の不揮発性半導体記憶装置。前記制御回路は、前記第1判定結果および前記第2判定結果を前記外部に出力することを特徴とする請求項1または請求項2に記載の不揮発性半導体記憶装置。前記第1フラグは前記第1メモリブロックが多値である場合に書き込まれるフラグであり、前記第2フラグは前記第2メモリブロックが多値である場合に書き込まれるフラグであることを特徴とする請求項1乃至請求項3のいずれか1項に記載の不揮発性半導体記憶装置。2値または多値で書き込み可能なメモリセルを有する第1メモリブロックおよび第2メモリブロックと、外部からのコマンドに応じて、前記第1メモリブロックおよび第2メモリブロックにデータを書き込み、前記第1メモリブロックおよび第2メモリブロックからデータを読み出す制御回路と、を具備し、前記制御回路は、読み出し動作において、読み出し対象ブロックが前記第1メモリブロックである場合、前記第1メモリブロックに書き込まれた第1フラグに応じて前記第1メモリブロックが2値であるか多値であるかを判定してその第1判定結果を記憶し、読み出し対象ブロックが前記第1メモリブロックである間、前記第1判定結果に応じて前記第1メモリブロックを2値または多値で読み出し、読み出し対象ブロックが前記第1メモリブロックから前記第2ブロックに変更された場合、前記第1判定結果を消去し、前記第2メモリブロックに書き込まれた第2フラグに応じて前記第2メモリブロックが2値であるか多値であるかを判定してその第2判定結果を記憶し、読み出し対象ブロックが前記第2メモリブロックである間、前記第2判定結果に応じて前記第2メモリブロックを2値または多値で読み出すことを特徴とする不揮発性半導体記憶装置。前記第1メモリブロックおよび前記第2メモリブロックはそれぞれページを含み、前記制御回路は前記ページ毎にデータの書き込みおよび読み出しを行い、前記第1判定結果は前記第1メモリブロック内において最初に読み出されるページに含まれる前記第1フラグに応じて判定された結果であり、前記第2判定結果は前記第2メモリブロック内において最初に読み出されるページに含まれる前記第2フラグに応じて判定された結果であることを特徴とする請求項5に記載の不揮発性半導体記憶装置。前記制御回路は、前記第1判定結果および前記第2判定結果を前記外部に出力することを特徴とする請求項5または請求項6に記載の不揮発性半導体記憶装置。前記第1フラグは前記第1メモリブロックが多値である場合に書き込まれるフラグであり、前記第2フラグは前記第2メモリブロックが多値である場合に書き込まれるフラグであることを特徴とする請求項5乃至請求項7のいずれか1項に記載の不揮発性半導体記憶装置。誤読み出しを抑制し、かつ高速性の向上を図る不揮発性半導体記憶装置を提供する。本実施形態による不揮発性半導体記憶装置は、2値または多値で書き込み可能なメモリセルを有する第1メモリブロックおよび第2メモリブロックと、外部からのコマンドに応じて、前記第1メモリブロックおよび第2メモリブロックにデータを書き込み、前記第1メモリブロックおよび第2メモリブロックからデータを読み出す制御回路と、を具備する。前記制御回路は、書き込み動作において、書き込み対象ブロックが前記第1メモリブロックである場合、前記第1メモリブロックが2値であるか多値であるかを識別する第1フラグを前記第1メモリブロック内のメモリセルに書き込み、書き込み対象ブロックが前記第2メモリブロックである場合、前記第2メモリブロックが2値であるか多値であるかを識別する第2フラグを前記第2メモリブロック内のメモリセルに書き込み、読み出し動作において、読み出し対象ブロックが前記第1メモリブロックである場合、前記第1フラグに応じて前記第1メモリブロックが2値であるか多値であるかを判定してその第1判定結果を記憶し、読み出し対象ブロックが前記第1メモリブロックである間、前記第1判定結果に応じて前記第1メモリブロックを2値または多値で読み出し、読み出し対象ブロックが前記第1メモリブロックから前記第2ブロックに変更された場合、前記第1判定結果を消去し、前記第2フラグに応じて前記第2メモリブロックが2値であるか多値であるかを判定してその第2判定結果を記憶し、読み出し対象ブロックが前記第1メモリブロックである間、前記第2判定結果に応じて前記第2メモリブロックを2値または多値で読み出す。近年、データの大容量化のため、多値メモリを用いる場合がある。例えば、メモリ内に2値メモリと多値メモリとを混在させて用いる製品が存在する。この製品は、外部ホストからの指定コマンド入力により、2値メモリと多値メモリを使い分ける。このとき、外部からの指定に応じて、各メモリセルが2値メモリとして、または多値メモリとして機能する。多値メモリと2値メモリとの混在型不揮発メモリにおいて、書き込みと読み出しとの間で整合をとる必要がある。すなわち、多値データを保持するメモリセルに、多値として読み出しを行わなければデータが誤り、誤読み出しとなる。同様に、2値データを保持するメモリセルに、2値として読み出しを行わなければデータが誤り、誤読み出しとなる。これは、メモリセルの閾値分布の違いによりデータを記憶する不揮発性メモリにおいて、読み出し時の閾値判定電位が多値と2値とで異なるためである。本実施形態では、UPフラグとLPフラグを用いて、メモリセルに保持されたデータが2値データか多値データかを判定し、最適な読み出しモードを設定する。その結果、データの誤読み出しを低減するかつ高速性の向上を図る不揮発性半導体記憶装置を提供する。以下、具体的に説明する。本実施形態を以下に図面を参照して説明する。図面において、同一部分には同一の参照符号を付す。<全体構成例>以下に、図1乃至図3を用いて、本実施形態に係る不揮発性半導体記憶装置の構成例について説明する。なお、ここで、不揮発性半導体記憶装置としてNAND型フラッシュメモリを例に説明するが、本実施形態はこれに限らない。本実施形態は、2値SLC:SingleLevelCellおよび多値MLC:MultiLevelCellとして書き込み可能なメモリ全般に適用可能である。図1は、本実施形態に係る不揮発性半導体記憶装置の全体構成例を示すブロック図である。図1に示すように、不揮発性半導体記憶装置9は、メモリセルアレイ1、ロウ制御回路2、カラム制御回路3、ソース線制御回路4、Pウェル制御回路5、データ入出力バッファ6、コマンドインターフェイス7、ステートマシン8を有する。メモリセルアレイ1は、複数のブロックBLK1~BLKm以下、特に区別しない場合は単にブロックBLKと称すを備えている。これらブロックBLK毎に消去動作が行われ、また、ブロックBLK毎に外部ホストの指定に応じて2値モードまたは多値モードとして使用される。すなわち、各ブロックBLKは、2値モードまたは多値モードとして選択的に用いられる最小単位である。図2に示すように、メモリセルアレイ1は、複数のワード線WL0~WL31以下、特に区別しない場合は単にワード線WLと称す、複数のビット線BL0~BLn以下、特に区別しない場合は単にビット線BLと称す、複数のセレクトゲートSGS,SGDを有する。これら複数のワード線WLと複数のビット線BLとの交差位置に対応する部分それぞれにメモリセルMCが配置されている。メモリセルアレイ1において、複数のメモリセルMCはマトリクス上に配置されている。また、複数のセレクトゲートSGS,SGDと複数のビット線BLとの交差位置のそれぞれに選択トランジスタST1,SGSが配置されている。ロウ制御回路2は、ステートマシン8の制御に従い、メモリセルアレイ1中のワード線WLを選択し、選択されたワード線WLに読み出し、書き込みあるいは消去に必要な電圧を印加する。カラム制御回路3は、ステートマシン8の制御に従い、ビット線BLを介してメモリセルアレイ1中のメモリセルMCのデータを読み出し、ビット線BLを介してメモリセルアレイ1中のメモリセルMCの状態を検出する。また、カラム制御回路3は、ビット線BLを介してメモリセルアレイ1中のメモリセルMCに書き込み制御電圧を印加してメモリセルMCに書き込みを行う。ソース線制御回路4は、ステートマシン8の制御に従い、メモリセルアレイ1中のソース線SLに、必要な電圧を印加する。Pウェル制御回路5は、ステートマシン8の制御に従い、メモリセルアレイ1中の半導体基板中に形成されたウェル例えば、pwell等に、必要な電圧を印加する。データ入出力バッファ6は外部のホスト図示せずにI/O線を介して接続され、ホストとの間でデータの入出力を行う。すなわち、データ入出力バッファ6は、ホストからの書き込みデータ、アドレスデータ、およびコマンドデータを受信し、ホストに読み出しデータを送信する。より具体的には、データ入出力バッファ6は、ホストからの書き込みデータをカラム制御回路2に送信し、カラム制御回路2からの読み出しデータをホストに送信する。また、メモリセルMCの選択をするために、ホストからのアドレスデータをカラム制御回路2やロウ制御回路3にステートマシン8を介して送信する。さらに、ホストからのコマンドデータをコマンドインターフェイス7に送信する。コマンドインターフェイス7は、ホストからの制御信号を受信し、データ入出力バッファ6に入力されたデータが書き込みデータかコマンドデータかアドレスデータか判定する。データがコマンドデータであれば、コマンドインターフェイス7はそのデータをコマンド信号としてステートマシン8に送信する。ステートマシン8は、ホストからコマンドインターフェイス7を介して入力されるコマンドを受信し、書き込み/読み出し/消去等の不揮発性半導体記憶装置9全体の動作制御を行う。図2は、図1に示すメモリセルアレイ1およびカラム制御回路2の構成の一例を示す回路図である。図2に示すように、メモリセルアレイ1は、複数のブロックBLKを備え、各ブロックBLKはロウ方向に並ぶ複数のNANDストリングにより構成されている。各NANDストリングは、例えば、電流経路が直列接続された32個のメモリセルMC、および選択ゲートトランジスタST1,ST2で構成されている。メモリセルMCは、p型半導体基板上にゲート絶縁膜を介在して形成された浮遊ゲート導電層と、浮遊ゲート上にゲート間絶縁膜を介在して形成された制御ゲートとを含んだFG構造である。なお、図示せぬ半導体基板上に、順に形成されたトンネル絶縁膜、電荷蓄積層、ブロック絶縁膜、およびワード線WLとして機能するゲート電極で構成され、MONOS構造としてもよい。また、メモリセルMCのドレインはビット線BLに電気的に接続され、ソースはソース線SLに電気的に接続されている。選択トランジスタST1は、ソース領域が直列接続された複数のメモリセルMCの一端側のドレイン領域に接続され、ドレイン領域がドレインコンタクトDCを介してビット線BLに接続されている。一方、選択トランジスタST2は、ドレイン領域が直列接続された複数のメモリセルMCの他端側のソース領域に接続され、ソース領域がソースコンタクトSCを介してソース線SLに接続されている。なお、選択トランジスタST1、ST2は必ずしも両方必要ではなく、NANDストリング61を選択できるのであればいずれか一方のみが設けられていてもよい。ロウ方向に並ぶ複数のメモリセルMCの制御ゲートは、ワード線WLに共通に接続されている。また、ロウ方向に並ぶ複数の選択ゲートトランジスタST2はセレクトゲートSGDに共通に接続され、ロウ方向に並ぶ複数の選択ゲートST1はセレクトゲートSGSに共通に接続されている。カラム制御回路3は、複数のデータ記憶回路10を有している。各データ記憶回路10には、例えば、偶数番目および奇数番目で構成される一対のビット線BL0e、BL0o、BL1e、BL1o...BLie、BLio...BLne、BLnoが接続されている。データ記憶回路10は、読み出し/書き込み動作時に、読み出し/書き込みデータの転送を制御する。本例では、各データ記憶回路10は、一対のビット線例えば、BL1e、BL1oに対して1つ設けられる。すなわち、読み出し/書き込み動作は、各一対のビット線のうちの1本偶数番目のビット線BLe1~BLenまたは奇数番目のビット線BLo1~BLonに接続されるメモリセルに対して同時に実行される。このように各一対のビット線BLのうちの1本に接続され、共通のワード線WLに接続された複数のメモリセルMCで1ページが構成されている。言い換えると、共通のワード線WLに接続された半分のメモリセルMCで1ページが構成されている。このページ単位で読み出し/書き込み動作が行われる。また、他の例として、各ビット線にデータ記憶回路10が接続される例がある。本例では、読み出し/書き込み動作は、全てのビット線に接続されるメモリセルMCに対して同時に実行される。また、各ビット線に接続され、共通のワード線WLに接続された複数のメモリセルMCで1ページが構成される。言い換えると、共通のワード線WLに接続された全てのメモリセルMCで1ページが構成される。このページ単位で読み出し/書き込み動作が行われる。図3は、図1に示す各ブロックBLKの構成を示すブロック図である。図3に示すように、各ブロックBLKは、複数のページPAGE0~PAGE31以下、特に区別しない場合は単にページPAGEと称すを有する。各ページPAGEは、メモリ領域40とフラグ領域41とを有する。メモリ領域40は、ユーザによるデータが書き込まれる領域である。このメモリ領域40には、2値データまたは多値データを書き込むことが可能である。ここで、本例では、データを圧縮することで多値データを書き込むことが可能となる。多値データ例えば2ビットデータの下位ビットにはLPLowerPageアドレスが割り当てられ、上位ビットにはUPUpperPageアドレスが割り当てられる。フラグ領域41は、UPフラグおよびLPフラグのデータが書き込まれる領域である。このフラグ領域41は、各ページPAGEにおいて例えば1ビット存在し、各ブロックBLKにおいて例えば1カラム、すなわち32ビット存在する。UPフラグはメモリ領域40のUPアドレスにデータが書き込まれる際にフラグ領域41に書き込まれる例えば1ビットのフラグであり、LPフラグはメモリ領域40のLPアドレスにデータが書き込まれる際にフラグ領域41に書き込まれる例えば1ビットのフラグである。すなわち、UPフラグまたはLPフラグを確認することにより、メモリ領域40に多値データが書き込まれているか2値データが書き込まれているかを識別することができる。<書き込み動作>以下に、図4、図5a、図5bおよび図5cを用いて、本実施形態に係る不揮発性半導体記憶装置の書き込み動作について説明する。図4は、本実施形態に係る不揮発性半導体記憶装置の書き込み動作を示すフローチャートである。図5aは、多値書き込みにおけるLPアドレスへの書き込みの際のセルの閾値分布を示すグラフであり、図5bは、多値書き込みにおけるUPアドレスへの書き込みの際のセルの閾値分布を示すグラフであり、図5cは、2値書き込みの際のセルの閾値分布を示すグラフである。図4に示すように、まずステップS1において、ホストから入力される書き込みデータを多値書き込みするか否かを判定する。より具体的には、書き込みデータと同時にホストからコマンドインターフェイス7を介してステートマシン8に入力されるコマンド信号専用コマンドに応じて、ステートマシン8は多値として書き込み対象のブロックBLKにデータを書き込むか否かを判定する。ステップS1において、多値書き込みであると判定された場合、次にステップS2において、データをLPアドレスに書き込むか否かを判定する。ステップS2において、LPアドレスへの書き込みであると判定された場合、次にステップS3において、メモリ領域40におけるLPアドレスにデータが書き込まれる。このとき、図5aに示すように、メモリセルMCは、閾値電圧の低い順に11、10の2つのデータを記憶する。ここで、11の閾値電圧はARALevelReadの閾値電圧より低く、10の閾値電圧はARの閾値電圧より高い。すなわち、読み出し動作において、ARにより、11データまたは10データであるかが判定される。また、LPアドレスへのデータ書き込みと同時に、フラグ領域41にLPフラグが書き込まれる。このLPフラグは、10データの閾値電圧と同等のレベルに書き込まれる。すなわち、LPフラグは、ARの閾値電圧より高く書き込まれる。このため、LPフラグは、ARによって書き込まれているか否か判定することができる。また、この際、UPフラグは書き込まれない。一方、ステップS2において、LPアドレスへの書き込みではないUPアドレスへの書き込みであると判定された場合、次にステップS4において、メモリ領域40におけるUPアドレスにデータが書き込まれる。このとき、図5bに示すように、メモリセルMCは、閾値電圧の低い順に11Eレベル、01Aレベル、00Bレベル、10Cレベルの4つのデータを記憶する。ここで、11の閾値電圧は、ARの閾値電圧より低い。また、01の閾値電圧は、ARの閾値電圧より高く、BRBLevelReadの閾値電圧より低い。また、00の閾値電圧は、BRの閾値電圧より高く、CRCLevelReadの閾値電圧より低い。さらに、10の閾値電圧は、CRの閾値電圧より高い。すなわち、読み出し動作において、AR、BRまたはCRにより、11データ、01データ、00データ、または10データであるかが判定される。また、UPアドレスへのデータ書き込みと同時に、フラグ領域41にUPフラグが書き込まれる。このUPフラグは、00データの閾値電圧と同等のレベルに書き込まれる。すなわち、UPフラグは、BRの閾値電圧より高く、また上記LPフラグとは異なる閾値電圧で書き込まれる。このため、UPフラグは、BRによって書き込まれているか否か判定することができる。一方、ステップS1において、多値書き込みではない2値書き込みであると判定された場合、次にステップS4において、メモリ領域40に2値データが書き込まれる。このとき、図5cに示すように、メモリセルMCは、閾値電圧の低い順に1、0の2つのデータを記憶する。ここで、1の閾値電圧はLP書き込みにおける11の閾値電圧と同等であり、0の閾値電圧はLP書き込みにおける10の閾値電圧と同等である。すなわち、読み出し動作において、ARにより、1データまたは0データであるかが判定される。このように外部指定に応じて2値書き込みされる場合、多値書き込みLP書き込みおよびUP書き込みにおいて書き込まれるフラグLPフラグおよびUPフラグは書き込まれない。<読み出し回路>以下に、図6a、図6bおよび図7を用いて、本実施形態に係る不揮発性半導体記憶装置の読み出し回路について説明する。図6aおよびbは、本実施形態に係る不揮発性半導体記憶装置の読み出し回路の一部を示す回路図である。より具体的には、図6aは、読み出し回路におけるブロックアドレス制御回路を示す回路図であり、図6bは、読み出し回路におけるSLCモード判定回路を示す回路図である。なお、この読み出し回路は、図1に示すステートマシン制御回路8に含まれるものである。図6aおよびbに示すように、本実施形態に係る読み出し回路は、ブロックアドレス制御回路70およびSLCモード判定回路80を有している。ブロックアドレス制御回路70は、読み出し動作において、ホストから受信されるブロックアドレス入力信号に応じてブロックアドレスを記憶し、そのブロックアドレスに対して読み出し動作を行うようにブロックアドレス出力信号を図示せぬ各制御部へと送信する。また、本実施形態において、ブロックアドレス制御回路70は、読み出し動作が行われるブロックアドレスが変更されたか否かを判定し、変更された際にブロックアドレス変更パルス信号をSLCモード判定回路に送信する。より具体的には、図6aに示すように、ブロックアドレス制御回路70は、選択回路71、フリップフロップ回路72、およびブロックアドレス変更判定回路73を備えている。選択回路71は、ホストからのブロックアドレス入力信号に応じた新たなブロックアドレス信号とフリップフロップ回路72に記憶されているブロックアドレス信号とを受信する。そして、選択回路71は、更新信号に応じて受信した2つのブロックアドレス信号のうちいずれかのブロックアドレス信号を選択してフリップフロップ回路72に送信する。フリップフロップ回路72は、選択回路71からのブロックアドレス信号を受信してそのブロックアドレスを記憶ラッチする。そして、フリップフロップ回路72は、クロックCLKに応じて受信したブロックアドレス信号を選択回路71、およびブロックアドレス変更判定回路73に送信する。さらに、フリップフロップ回路72は、そのブロックアドレス信号ブロックアドレス出力信号を各制御部へと送信する。各制御部は、このブロックアドレス出力信号に応じたブロックアドレスに対して読み出し動作を行う。ブロックアドレス変更判定回路73は、EX-OR回路74、AND回路75、およびパルス化回路76を含む。EX-OR回路74は、ホストからのブロックアドレス入力信号に応じた新たなブロックアドレス信号とフリップフロップ回路72に記憶されているブロックアドレス信号とを受信し、これらのEX-ORExclusiveOR演算を行う。すなわち、EX-OR回路74は、これらのブロックアドレス信号が不一致の場合、ブロックアドレス不一致信号をAND回路75に送信する。AND回路75は、EX-OR回路74からのブロックアドレス不一致信号と更新信号とを受信し、これらのAND演算を行う。すなわち、ブロックアドレス不一致信号および更新信号を受信した場合、ブロックアドレス変更信号をパルス化回路76に送信する。パルス化回路76は、AND回路75からのブロックアドレス変更信号を受信し、これをパルス化したブロックアドレス変更パルス信号を送信する。SLCモード判定回路80は、読み出し動作において、読み出し動作が行われるブロックBLKがSLCモードであるか否かを判定し、SLCモードである場合にその情報判定結果を記憶する。そして、SLCモード判定回路80は、SLCモード信号を各制御部およびホストに送信する。より具体的には、図6bに示すように、SLCモード判定回路80は、読み出し時において、セット信号とLPフラグ信号とを受信することで読み出し動作が行われるブロックBLKがSLCモードであるか否かを判定する。このとき、LPフラグがLレベルである場合、SLCモード判定回路80は読み出しブロックBLKがSLCモードであると判定し、図示せぬセット回路により内部のフリップフロップ回路81にその判定結果としてSLCモード情報を記憶ラッチする。そして、フリップフロップ回路81は、クロックCLKに応じてSLCモード信号を各制御部に送信する。読み出し動作が行われるブロックBLKがSLCモードである2値書き込みしていることが認識された時点で、2値として読み出すための専用コマンドにより成立する内部信号をORの関係として成立させる。これにより、メモリ内部としては、専用コマンドがなくても、2値書き込み状態であることを示すことができる。また、SLCモード判定回路80は、SLCモード情報の信号2値書き込みを示す状態信号をホストへステータスとして出力する。これにより、ホストから読み出し対象ブロックが多値か2値かを判定することができる。外部への出力方法としては、専用または既存のステータスコマンドによって行うことができる。一方、SLCモード判定回路80は、読み出し時において、ブロックアドレス制御回路70からのブロックアドレス変更パルス信号を受信した場合、読み出し対象のブロックBLKが変更されたと判断し、図示せぬリセット回路によりフリップフロップ回路81に記憶されたSLCモード情報をリセットする。その後、再びセット信号とLPフラグ信号とを受信することで変更された新たな読み出し対象のブロックBLKがSLCモードであるか否かを判定する。図7は、図6aおよび図6bに示す読み出し回路の動作時における各種信号のタイミングチャートの一例である。図7は、読み出し対象のブロックBLKがブロックBLK1からブロックBLK2に変更する場合を示している。図7に示すように、まず、時刻t0~t1において、ブロックアドレス入力信号としてブロックBLK2のアドレス信号が入力され、ブロックアドレス出力信号としてブロックBLK1のアドレス信号が出力される。すなわち、フリップフロップ回路72にはブロックBLK1のアドレスが記憶されており、選択回路71にはフリップフロップ回路72からのブロックBLK1のアドレス信号とホストからのブロックBLK2のアドレス信号が入力される。このとき、更新信号はLレベルであるため、選択回路71はブロックBLK1のアドレス信号を出力する。また、EX-OR回路74にはフリップフロップ回路72からのブロックBLK1のアドレス信号とホストからのブロックBLK2のアドレス信号が入力される。入力されるアドレス信号が不一致であるため、EX-OR回路74はブロックアドレス不一致信号を出力する。AND回路75にはこのブロックアドレス不一致信号が入力されるが、更新信号が入力されないLレベルであるため、ブロックアドレス変更信号およびブロックアドレス変更パルス信号は出力されないLレベルである。次に、時刻t1~t2において、更新信号がHレベルになる。このとき、EX-OR回路74に入力されるアドレス信号が不一致であるため、ブロックアドレス不一致信号が出力される。また、AND回路75には、ブロックアドレス不一致信号と更新信号とが入力される。このため、AND回路75はブロックアドレス変更信号を出力し、その結果、パルス化回路76を介してブロックアドレス変更パルス信号が出力されるHレベルとなる。また、この間、選択回路71はブロックBLK2のアドレス信号を出力することで、フリップフロップ回路72はブロックBLK2のアドレスを記憶するように動作する。その後、時刻t2~t3において、更新信号がLレベルになると同時にブロックアドレス変更パルス信号がLレベルになる。さらに、フリップフロップ回路72は、ブロックアドレス出力信号としてブロックBLK2のアドレス信号を出力する。一方、時刻t4~t5に示すように、ブロックアドレス入力信号およびブロックアドレス出力信号として同じブロックBLK2のアドレス信号が入出力される場合、EX-OR回路74に入力されるアドレス信号が一致することになる。このため、ブロックアドレス不一致信号が出力されない。その結果、AND回路75には、更新信号が入力されるが、ブロックアドレス不一致信号が入力されないため、ブロックアドレス変更信号およびブロックアドレス変更パルス信号は出力されないLレベルである。<読み出し動作>以下に、図8および図9を用いて、本実施形態に係る不揮発性半導体記憶装置の読み出し動作について説明する。図8は、本実施形態に係る不揮発性半導体記憶装置の読み出し動作を示すフローチャートである。なお、図8は、読み出し動作において最初のページPAGEにアクセスする場合を示している。すなわち、読み出し対象として選択されたブロックBLKにおける最初のページPAGEにアクセスする場合を示している。この場合、まず内部では多値メモリの読み出し動作として、LPアドレスから読み出し動作が行われる。以下に、詳細に説明する。図8に示すように、まず、ステップS11において、BR動作が行われる。より具体的には、ホストからコマンドインターフェイス7を介してステートマシン8に入力されるコマンド信号専用コマンドに応じて、ステートマシン8は読み出し対象のブロックBLKに対してBR動作を行う。すなわち、BRの閾値電圧によりメモリ領域40に書き込まれたデータを読み出す。このとき、同時にフラグ領域41に書き込まれたUPフラグも読み出される。次に、ステップS12において、UPフラグがHレベルであるか否かUPフラグが書き込まれているか否かが判定される。すなわち、メモリ領域40において、データがUPアドレスまで書き込まれているか否かが判定される。ステップS12において、UPフラグがHレベルであると判定された場合、ステップS13において、AR動作およびCR動作が行われる。すなわち、ARの閾値電圧およびCRの閾値電圧によりメモリ領域40に書き込まれたデータを読み出すことで、UPアドレスの読み出し動作が行われる。このように、UPフラグがHレベルであると判定されることで、UPアドレスまでデータが書き込まれていることがわかる。その結果、読み出し対象として選択されたブロックBLKにデータが多値で書き込まれていると判定される。一方、ステップS12において、UPフラグがHレベルではないLレベルであると判定された場合、ステップS14において、AR動作が行われる。すなわち、ARの閾値電圧によりメモリ領域40に書き込まれたデータを読み出すことで、LPアドレスの読み出し動作が行われる。このように、読み出し電圧を変更BRからARに変更して再読み出しを行い、LPアドレスの正しいデータを読み出す。このとき、LPアドレスまでしか書かれていないデータの分布は、2値として書かれているものと相違がない。このため、読み出し対象として選択されたブロックBLKが多値としてLPアドレスまで書き込まれたものか2値として書き込まれたものかを判別する必要がある。このため、次に、ステップS15において、LPフラグがHレベルであるか否かLPフラグが書き込まれているか否かが判定される。すなわち、メモリ領域40において、データがLPアドレスに書き込まれているか否かが判定される。言い換えると、読み出し対象として選択されたブロックBLKにデータが多値として書き込まれているか2値として書き込まれているかが判定される。ステップS15において、LPフラグがHレベルであると判定された場合、LPアドレスにデータが書き込まれていることがわかる。その結果、読み出し対象として選択されたブロックBLKにデータが多値で書き込まれていると判定される。一方、ステップS15において、LPフラグがHレベルではないLレベルであると判定された場合、次にステップS16において、SLCモードがオンされる。すなわち、読み出し対象として選択されたブロックBLKにデータが2値で書き込まれていると判定される。これにより、SLC判定回路80は、フリップフロップ回路81にSLCモード情報を記憶する。図9は、本実施形態に係る不揮発性半導体記憶装置の読み出し動作を示すフローチャートである。なお、図9は、読み出し動作において、図8に続くページPAGEにアクセスする場合を示している。すなわち、読み出し対象として選択されたブロックBLKにおける最初のページPAGE以降のページPAGEにアクセスする場合を示している。図9に示すように、まず、ステップS21において、読み出しページアドレスが選択される。次に、ステップS22において、ブロックアドレス制御回路70により、読み出しブロックアドレスが変更したか否かが判定される。すなわち、ステップS21で読み出し対象として選択されたページアドレスの属するブロックアドレスが、前に読み出し対象として選択されたブロックアドレスから変更したか否かが判定される。ステップS22において、読み出し対象のブロックアドレスが変更していないと判定された場合ブロックアドレス変更パルス信号が出力されない場合、ステップS23において、SLCモード判定回路80により、その読み出し対象のブロックアドレスがSLCモードであるか否かが判定される。ステップS23において、SLCモードであると判定されたSLCモードがオンされている場合、2値メモリの読み出し動作が行われる。より具体的には、ステップS24において、AR動作が行われる。すなわち、ARの閾値電圧によりメモリ領域40に書き込まれたデータを読み出すことで、2値の読み出し動作が行われる。一方、ステップS23において、SLCモードではないSLCモードがオフされていると判定された場合、多値の読み出し動作が行われる。すなわち、多値の読み出し動作として、LPアドレスから読み出し動作が行われる。より具体的には、ステップS25において、BR動作が行われる。すなわち、BRの閾値電圧によりメモリ領域40に書き込まれたデータを読み出す。このとき、同時にフラグ領域41に書き込まれたUPフラグも読み出される。次に、ステップS26において、UPフラグがHレベルであるか否かUPフラグが書き込まれているか否かが判定される。すなわち、メモリ領域40において、データがUPアドレスまで書き込まれているか否かが判定される。ステップS26において、UPフラグがHレベルであると判定された場合、ステップS27において、AR動作およびCR動作が行われる。すなわち、ARの閾値電圧およびCRの閾値電圧によりメモリ領域40に書き込まれたデータを読み出すことで、UPアドレスの読み出し動作が行われる。一方、ステップS26において、UPフラグがHレベルではないLレベルであると判定された場合、ステップS27において、AR動作が行われる。すなわち、ARの閾値電圧によりメモリ領域40に書き込まれたデータを読み出すことで、LPアドレスの読み出し動作が行われる。その後、ステップS29において、読み出されたページPAGEが読み出し最終ページであるか否かが判定される。ステップS29において読み出されたページPAGEが読み出し最終ページではない場合、ステップS30において次のページアドレスが読み出され、その後、ステップS22において読み出し対象のブロックアドレスが変更したか否かが判定される。ステップS29において読み出されたページPAGEが読み出し最終ページである場合、読み出し動作は終了する。このステップS29における読み出し最終ページであるか否かの判定、およびステップS30におけるページインクリメントは、内部のステートマシン8が自動で行う場合と、外部からのコマンド信号に応じて行う場合とがあり得る。一方、ステップS22において、読み出し対象のブロックアドレスが変更したと判定された場合ブロックアドレス変更パルス信号が出力された場合、ステップS31において、SLCモードがオフされる。すなわち、SLC判定回路80は、フリップフロップ回路81に記憶されたSLCモード情報をリセット消去する。その後、図8に示すステップS11において、読み出し対象のブロックアドレスが多値であるか2値であるかの判定が再度行われる。なお、ステップS31において、読み出し対象のブロックアドレスが多値である場合、SLCモードはもともとオフであるため、ステップS31はスキップされてステップS11の工程が行われる。<効果>上記実施形態によれば、2値および多値として書き込み可能な不揮発性半導体記憶装置において、多値書き込みの際、メモリ領域40にデータを書き込むと同時に、フラグ領域41にUPフラグおよび/またはLPフラグのデータが書き込まれる。これにより、読み出し動作時において、メモリ内部でUPフラグおよび/またはLPフラグを確認することにより、メモリセルに書かれているデータが多値か2値かを判定することができる。その判定結果をメモリ外部にステータスコマンドとして出力することにより、多値または2値に対応した読み出し制御を自動で行うことができ、誤読み出しを解消することができる。また、判定結果を示す信号は、次にブロックアドレスが切り替わるまで有効となる。すなわち、同一ブロック内を読み出す間は、この判定結果は保持される。このため、2値書き込みされていると判定されたブロックアドレスにおいて、そのブロックアドレス内の次のページアドレスを読み出す時は、2値読み出しが行われる。2値読み出しは、多値読み出しに比べて、高速性および信頼性等において優れている。上記実施形態によれば、読み出し対象のブロックBLKが2値読み出しと判定された場合、読み出し対象のブロックBLKが変更されるまで2値読み出しの性能で実行することができる。なお、本実施形態において、多値として4値の場合を例に説明したが、これに限らず、8値または16値であってもよい。<変形例>以下に、図10を用いて、本実施形態に係る不揮発性半導体記憶装置の変形例について説明する。図10は、本実施形態に係る不揮発性半導体記憶装置の読み出し動作の変形例を示すフローチャートである。なお、図10は、読み出し動作において最初のページPAGEにアクセスする場合を示している。すなわち、図8に示す読み出し動作のフローチャートの変形例を示している。図10に示すように、まず、ステップS41において、BR動作が行われる。すなわち、BRの閾値電圧によりメモリ領域40に書き込まれたデータを読み出す。このとき、同時にフラグ領域41に書き込まれたUPフラグも読み出される。次に、ステップS42において、UPフラグがHレベルであるか否かUPフラグが書き込まれているか否かが判定される。すなわち、メモリ領域40において、データがUPアドレスまで書き込まれているか否かが判定される。ステップS42において、UPフラグがHレベルであると判定された場合、ステップS43において、AR動作およびCR動作が行われる。すなわち、ARの閾値電圧およびCRの閾値電圧によりメモリ領域40に書き込まれたデータを読み出すことで、UPアドレスの読み出し動作が行われる。このように、UPフラグがHレベルであると判定されることで、UPアドレスまでデータが書き込まれていることがわかる。その結果、読み出し対象として選択されたブロックBLKにデータが多値で書き込まれていると判定される。一方、ステップS42において、UPフラグがHレベルではないLレベルであると判定された場合、ステップS44において、AR動作が行われる。すなわち、ARの閾値電圧によりメモリ領域40に書き込まれたデータを読み出すことで、LPアドレスの読み出し動作が行われる。このように、読み出し電圧を変更BRからARに変更して再読み出しを行い、LPアドレスの正しいデータを読み出す。次に、ステップS45において、使用モードであるか否かが判定される。すなわち、読み出し対象として選択されたブロックBLKにデータが2値で書き込まれているか多値で書き込まれているかを認識する必要があるか否かが判定される。言い換えると、SLCモード判定回路80を動作させるか否かが判定される。このような使用モードであるか否かの判定は、例えば1ビットの使用モードフラグをたてることによって実現することが可能である。例えば、読み出し対象として選択されたブロックBLKにデータを2値で書き込むか多値で書き込むかは、外部からの専用コマンドを受信したステートマシン8内の図示せぬコントローラが実行する。すなわち、コントローラがブロックBLKに書き込まれたデータが2値であるか多値であるかを認識している場合等は、改めて2値か多値かを判定する必要はなく、使用モードはオフされる。一方、コントローラがブロックBLKに書き込まれたデータが2値であるか多値であるかを認識していない場合等は、2値か多値かを判定する必要があり、使用モードはオンされる。このようにコントローラからのコマンドによって、使用モードのオン/オフが制御される。または、使用モードのオン/オフを予め不揮発性半導体記憶装置9内の特殊な記憶領域RAM等に記憶させておき、読み出し動作時においてステートマシン8内の図示せぬレジスタにセットすることで使用モードのオン/オフが制御してもよい。また、メモリセルアレイ1内の一部に記憶してもよい。このように、ステップS45において、使用モードではないと判定された場合は、読み出し動作は終了する。このとき、SLCモード判定回路80は、LPフラグ信号を受信しないため、読み出し対象のブロックBLKがSLCモードであるか否か2値か多値かを判定しない。一方、ステップS45において使用モードである判定された場合、図8と同様に、読み出し対象として選択されたブロックBLKが多値か2値かを判別する。このため、次に、ステップS46において、LPフラグがHレベルであるか否かLPフラグが書き込まれているか否かが判定される。すなわち、メモリ領域40において、データがLPアドレスに書き込まれているか否かが判定される。言い換えると、データが多値として書き込まれているか2値として書き込まれているかが判定される。ステップS46において、LPフラグがHレベルであると判定された場合、LPアドレスにデータが書き込まれていることがわかる。その結果、読み出し対象として選択されたブロックBLKにデータが多値で書き込まれていると判定される。一方、ステップS46において、LPフラグがHレベルではないLレベルであると判定された場合、次にステップS47において、SLCモードがオンされる。すなわち、読み出し対象として選択されたブロックBLKにデータが2値で書き込まれていると判定される。これにより、SLC判定回路80は、フリップフロップ回路81にSLCモード情報を記憶する。<効果>上記変形例によれば、読み出し対象として選択されたブロックBLKに書き込まれたデータが2値か多値かの判定を必要に応じて実行しない。これにより、2値か多値かを判定することで劣化する性能高速性または信頼性等を最小限に抑えることができる。その他、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で、種々に変形することが可能である。さらに、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。"