(57)【特許請求の範囲】
【請求項１】
保護情報を記憶するＫ個の不揮発性記憶素子と、
保護状態を記憶する不揮発性記憶素子と、
２Ｋ−１個より多く２Ｋ個以下のブロックに論理的に分割された記憶領域とを有し、
前記Ｋ個の不揮発性記憶素子及び前記保護状態を記憶する不揮発性記憶素子に記憶されている情報に基づき、前記論理的に分割された記憶領域内の連続するブロックへの情報の書き込みを防止し、
前記Ｋ個の不揮発性記憶素子に記憶されている情報は、書き込みを防止する前記連続するブロックの最後のブロックを示す情報であり、
前記記憶領域の先頭のブロックから前記最後のブロックまでの書き込みが防止され、前記最後のブロックの次のブロックから順に情報の書き込みを行った際に、前記Ｋ個の不揮発性記憶素子に記憶されている書き込みを防止する前記連続するブロックの最後のブロックを示す情報を順次記憶する
電気的に書き換え可能な不揮発性半導体記憶装置。
【請求項２】
前記記憶領域は、主記憶領域である請求項１記載の電気的に書き換え可能な不揮発性半導体記憶装置。
【請求項３】
前記記憶領域は、主記憶領域以外の記憶領域である請求項１記載の電気的に書き換え可能な不揮発性半導体記憶装置。
【請求項４】
特定の命令に従って、前記主記憶領域以外の記憶領域に対してアクセスを行う状態となると、前記Ｋ個の不揮発性記憶素子に記憶されている情報に基づいた特定のブロックがアクセスされる請求項３記載の電気的に書き換え可能な不揮発性半導体記憶装置。
【請求項５】
読み出しモードの場合には、書き込みが防止されているブロックの先頭ブロックから最後のブロックまでに記憶されている情報を順に読み出し、書き込みモードの場合には、書き込みが防止されていないブロックの先頭ブロックから順に情報を書き込む請求項３記載の電気的に書き換え可能な不揮発性半導体記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、誤書き込み等によるデータの破壊を防止する、保護機能を有する不揮発性半導体記憶装置に関する。
【０００２】
【従来の技術】
フラッシュメモリは、従来より、誤書き込み等によるデータの破壊を防止する、保護機能を有している。通常は、フラッシュメモリ内のメモリセルアレイは、ブロックと呼ばれる消去単位に分割され、この最小単位毎に保護が行われている。ブロックの大きさは、６４ｋバイトの場合が多い。更に小さい単位で保護を行うために、ブロックの大きさを小さくする要求がある。しかし、ブロックは、メモリチップ内で物理的に分離されて形成されるので、ブロックの大きさをあまり小さくすると、チップサイズが増大する。ブロックの大きさが６４ｋバイトの場合には、４Ｍビットのメモリは、８ブロックを有し、８Ｍビットのメモリは、１６ブロックを有する。フラッシュメモリは、ブロック数と等しい数の保護情報を記憶する不揮発性素子を有し、この不揮発性素子を使用してブロック毎に保護を行う。
【０００３】
一方、最近では、フラッシュメモリの大容量化が進み、３２Ｍビットや６４Ｍビットのメモリが開発されている。このような大容量メモリを、６４ｋバイトのブロックで分割すると、６４Ｍビットのメモリでは、ブロック数は、１２８個となる。従って、メモリ内のブロック数の増加に従って、保護情報を記憶する不揮発性素子も同時に必要となり、チップサイズが増大する。そこで、大きなメモリでは、複数のブロックを一括して保護をかけることにより、保護情報を記憶する不揮発性素子の数を減らし、これによってチップサイズを低減する方法が採用されている。
【０００４】
また、フラッシュメモリには、主記憶領域のほかに、製品情報等の情報を記憶する記憶領域が設けられているものがある。これをヒドンブロックと呼ぶ。ヒドンブロックは、通常は、一旦保護をかけた状態とすると、解除できない様になっている。ヒドンブロックのサイズは、フラッシュメモリの形式によりことなり、例えば、５１２バイトから、６４ｋバイトである。
【０００５】
フラッシュメモリにプログラムを行う場合には、フラッシュメモリにプログラムが行われる前に、先ずプログラムを行うブロックの保護状態を記憶素子から読み取る。そして、保護すべきブロックである場合には、プログラム電圧を発生しないようにして保護を行う。
【０００６】
図１は、従来のフラッシュメモリの概略の構成を示す図である。フラッシュメモリ１００は、主に、主記憶領域１０１、ヒドンブロック１０４、ｙ−デコーダ１０６−１から１０６−４、アドレスバッファ１１０、ブロック選択デコーダ１１１、ｘ−プリデコーダ１１２、ヒドンブロック用ｘ−デコーダ１１３、保護状態記憶素子群１１４、プログラム電圧発生回路１１５及び、センスアンプと入出バッファ部１１６を有する。主記憶領域１０１は、６４ｋバイトの消去単位（ブロック）１０１−１から１０１−ｎと、ｘ−デコーダ１０２及び１０３を有する。ヒドンブロックには、ヒドンブロック用ｘ−デコーダ１０５が設けられている。
【０００７】
フラッシュメモリからデータをリードする場合には、先ずアドレスバッファ１１０にアドレスが入力される。アドレスバッファ１１０は、入力されたアドレスに従ってブロック選択デコーダ１１１にブロックアドレスを送る。更にブロック選択デコーダ１１１の出力するブロック選択信号と、アドレスバッファから送られるロウアドレスをｘ−プリデコーダ１１２がデコードし、出力をｘ−デコーダ１０２及び１０３に送る。そして、ｘ−デコーダ１０２及び１０３により、メモリセルの１本のワード線が選択される。次に、ブロック選択信号とコラムアドレスにより、ｙ−デコーダ１０６−１から１０６−４がビット線を選択する。これにより、選択されたメモリセルに記憶されているデータがデータバス線へ送られ、センスアンプと入出力バッファ１１６を介して、出力データとして出力される。
【０００８】
フラッシュメモリにデータを記憶する場合には、即ちプログラムを行う場合には、プログラム実行コマンドが入力される。プログラム実行コマンドが入力されると、先ず最初に、プログラムすべきセルのあるブロックについて、保護状態記憶素子に記憶された情報が検査される。保護状態記憶素子に記憶された情報がアンプロテクト（保護を要しない状態）を示す場合には、上述のリード時と同様な方法でアドレス入力に従って選択されたセルに対して、プログラム電圧発生回路を介して、入力データに従ったプログラム電圧を供給しプログラムを行い入力データを記憶する。一方、保護状態記憶素子に記憶された情報がプロテクト（保護を要する状態）を示す場合には、プログラム電圧発生回路を活性化しないことにより、プログラム電圧を発生させない。この場合でも、上述のリード時と同様な方法でアドレス入力に従ってセルが選択されているが、プログラム電圧が発生しないので、選択されたセルに対してプログラムが行われない。
【０００９】
一方、ヒドンブロックに対してリード又は、プログラムを行う場合には、ヒドンブロックアクセスコマンド１２３が、ヒドンブロック用ｘ−プリデコーダ１１３及び、保護状態記憶素子群１１４の中のヒドンブロック用の記憶素子に対して入力される。その後は、ヒドンブロック用ｘ−デコーダ１０５を介してヒドンブロック内のワード線が選択され、上述の主記憶領域１０１の中のメモリセルに行われたのと同様に、ヒドンブロック内のメモリセルに対して、リード又は、プログラムが行われる。
【００１０】
【発明が解決しようとする課題】
近年、フラッシュメモリの記憶容量が増加したことによって、複数のブロックに対して一括して保護を行う方法が多く行われるようになってきた。これにより、保護を行うデータの単位は、例えば、２５６ｋバイトのような大きなサイズとなってきた。しかし、保護をかけるべきデータの量は、２５６ｋバイトのような大きな値となることが少ないために、保護をかけた領域の多くが、使用されないままで残ることになる。例えば、保護を行うべきデータの量が１００ｋバイトの場合には、残りの１５６ｋバイトのデータ領域に対しては、データが記憶されずに残る。
【００１１】
ヒドンブロックのアクセスを行うヒドンモードの場合には、ヒドンブロックは例えば、１領域しかないので、数バイトのデータを書きこんだ後に保護を行うと、ヒドンブロックの残りの領域は、使用することができない。そこで、最近では、前に書き込まれた領域のデータを破壊することなく、この残りの領域に、更にデータを書き込みたいという要求が高まってきた。
【００１２】
これを可能とする最も簡単な方法は、保護を行う単位であるブロックの大きさを小さくすることであるが、これは、上述の様にメモリチップサイズの増大を招く。
【００１３】
更に、ヒドンブロックに対してのアクセスは、主記憶領域と比較すると、限定された小領域のアクセスであるので、アドレスの入力無しにアクセスを行いたいという要求もある。しかし、現在においては、アドレスを入力してヒドンブロックのメモリセルを選択する必要がある。
【００１４】
【課題を解決するための手段】
本発明は、上述の問題点を解決した、メモリチップ面積を増大させることなく、小さなブロック毎に保護をかけ、且つ、ヒドンブロックをアクセスするヒドンモードの時にはアドレスを入力せずにヒドンブロックのメモリセルのアクセスを行うことができる不揮発性半導体記憶装置を提供することである。
【００１５】
請求項１は、電気的に書き換え可能な不揮発性半導体記憶装置において、保護情報を記憶するＫ個の不揮発性記憶素子と、
保護状態を記憶する不揮発性記憶素子と、
２のＫ乗個以下のブロックに論理的に分割された記憶領域とを有し、
前記Ｋ個の不揮発性記憶素子及び前記保護状態を記憶する不揮発性記憶素子に記憶されている情報に基づき、前記論理的に分割された記憶領域内の連続する前記ブロックへの情報の書き込みを防止することを特徴とする。
【００１６】
また、前記保護情報を記憶するＫ個の不揮発性記憶素子に記憶されている情報は、書き込みを防止する前記論理的に分割された記憶領域内の連続する前記ブロックの最後のブロックを示す情報であることを特徴とする。
【００１７】
更に、前記記憶領域の先頭の前記ブロックから、前記Ｋ個の不揮発性記憶素子に記憶されている情報により示される前記最後のブロックへの書き込みが防止され、前記Ｋ個の不揮発性記憶素子に記憶されている情報により示される前記最後のブロックの次のブロックから順に情報の書き込みを行うことを特徴とする。
【００１８】
請求項１によれば、論理的に最初のブロックから書き込みが行われ、その後保護が行われると、保護情報を記憶するＫ個の不揮発性記憶素子には、情報の書き込みが行われた最後のブロックを示す情報が記憶され、また、保護状態を記憶する不揮発性記憶素子には、保護が行われていることを示す情報が書き込まれる。これにより、その後に書き込みを行う際には、常に、保護情報を記憶するＫ個の不揮発性記憶素子に書き込まれた情報が示す最後のブロックの次のブロックより書き込みが行われるので、前に書き込まれた情報を破壊することがない。
【００１９】
他の例において、電気的に書き換え可能な不揮発性半導体記憶装置において、保護情報を記憶するＫ個の不揮発性記憶素子と、
２のＫ乗個以下のブロックに論理的に分割された記憶領域とを有し、
前記Ｋ個の不揮発性記憶素子に記憶されている情報に基づき、前記論理的に分割された記憶領域内の連続する前記ブロックへの情報の書き込みの防止を解除することを特徴とする。
【００２０】
この例において、前記保護情報を記憶するＫ個の不揮発性記憶素子に記憶されている情報は、書き込みの防止を解除する前記論理的に分割された記憶領域内の連続する前記ブロックの先頭のブロックを示す情報であることを特徴とする。
【００２１】
更にこの例において、前記記憶領域の先頭の前記ブロックから、前記Ｋ個の不揮発性記憶素子に記憶されている情報により示される前記先頭のブロックの直前の前記ブロックへの書き込みが防止され、前記Ｋ個の不揮発性記憶素子に記憶されている情報により示される前記先頭のブロックから順に情報の書き込みを行うことを特徴とする。
【００２２】
この例によれば、常に保護が行われ、情報を書き込む際には、保護情報を記憶するＫ個の不揮発性記憶素子に記憶された保護を解除できる最初のブロックを示す情報に示されたブロックより、書き込み保護が解除されて、書き込みが行われる。情報の書き込み後、情報が書き込まれた最後のブロックの次のブロックを示す情報が、保護情報を記憶するＫ個の不揮発性記憶素子に記憶される。これにより、情報を書き込む際に、前に書き込まれた情報を破壊することがない。
【００２３】
前記記憶領域は、主記憶領域とし得る。
【００２４】
それによれば、本発明に従った保護を、メモリの主記憶領域に対して行うことができる。
【００２５】
前記記憶領域は、主記憶領域以外の記憶領域としてもよい。
【００２６】
それによれば、本発明に従った保護を、メモリの主記憶領域以外の記憶領域に対して行うことができる。
【００２７】
前記記憶領域が主記憶領域以外の記憶領域である例において、特定の命令に従って、前記主記憶領域以外の記憶領域に対してアクセスを行う状態となると、前記Ｋ個の不揮発性記憶素子に記憶されている情報に基づいた特定のブロックがアクセスされる。
【００２８】
それによれば、外部からアドレスを入力することなく前記主記憶領域以外の記憶領域に対してアクセスが可能となる。
【００２９】
前記記憶領域が主記憶領域以外の記憶領域である例において、読み出しモードの場合には、書き込みが防止されているブロックの先頭ブロックから最後のブロックまでに記憶されている情報を順に読み出し、書き込みモードの場合には、書き込みが防止されていないブロックの先頭ブロックから順に情報を書き込む。
【００３０】
それによれば、外部からアドレスを入力することなく前記主記憶領域以外の記憶領域に対して、順次連続してアクセスが可能となる。
【００３１】
【発明の実施の形態】
本発明による保護の理解を容易とするために、従来の保護の動作について先ず最初に説明する。図２は、従来の保護の方法の一例を示す図である。図２において図１と同一番号の構成要素は、同一の構成要素を示す。図２は、図１に示すフラッシュメモリに対する保護の方法を示す。図１の保護状態記憶素子群１１４は、図２に示すように、保護を行うブロック毎に保護の状態を記憶する不揮発性記憶素子２０１−１から２０１−４有し、且つ、判定回路２０２を有する。また、不揮発性記憶素子２０１−１から２０１−４及び、ブロック１０１−１から１０１−４の上部に付された番号（１）から（４）はブロックアドレスを表すものとする。
【００３２】
図２（Ａ）は、ブロック１０１−１から１０１−４に何のデータも記憶されておらずかつ、保護も行われていない状態を示し、この状態において、ブロックアドレス（２）のブロックに６４ｋバイトのデータを書き込む場合を示す。
【００３３】
プログラムを行うときには、先ず最初に、保護状態記憶素子群１１４の中のブロックアドレス（２）の不揮発性記憶素子２０１−２に記憶された情報が読まれる。ここで、不揮発性記憶素子２０１−２に記憶された情報が”０”なら、ブロックアドレス（２）のブロックは、アンプロテクト状態であり、また、”１”ならば、プロテクト状態である。図２（Ａ）の場合には、不揮発性記憶素子２０１−２から”０”が読み出されるので、ブロック（２）はアンプロテクト状態である。従って、プログラム電圧発生回路１１５によりプログラム電圧が発生される。図１で説明したのと同様な方法で入力されるアドレスによりブロック（２）が選択されて、６４ｋバイトの入力データは、ブロック（２）に書き込まれる。そして、保護状態記憶素子群１１４の中の不揮発性記憶素子２０１−２には、プロテクト状態を示す”１”が書き込まれる。
【００３４】
次に、図２（Ｂ）は、図２（Ａ）において既にデータが書き込まれ且つ保護されているブロック（２）に対して、更にデータを書き込む場合を示す。（Ａ）と同様に先ず最初に、保護状態記憶素子群１１４の中のブロックアドレス（２）の不揮発性記憶素子２０１−２に記憶された情報が読まれる。この場合には、不揮発性記憶素子２０１−２から”１”が読み出されるので、ブロック（２）はプロテクト状態である。従って、プログラム電圧発生回路１１５によりプログラム電圧が発生されず、且つ、データ入力回路１１６が活性化されない。従って、図１で説明した様に外部よりアドレスが入力されても、データは書き込まれない。
【００３５】
図２（Ｃ）は、ブロック（２）は保護されている状態で、ブロック（４）に対して、６４ｋバイトのデータを書き込む場合を示す。この場合には、図２（Ａ）に示したのと同様に、ブロック（４）に対してデータが書き込まれ、その後に、保護状態記憶素子群１１４の不揮発性記憶素子２０１−４に”１”が書き込まれる。
【００３６】
図３は、本発明によるフラッシュメモリの一実施例の概略構成を示す。図３において図１と同一番号の構成要素は、同一の構成要素を示す。図３と図１の違いは、図１においては、保護状態記憶素子群１１４からプログラム電圧発生回路１１５に対して、制御信号が接続されていたが、図３においては保護状態記憶素子群１１４の出力が、ｙ−デコーダ１０６−１から１０６−４に接続されていることである。これによって、保護を行うブロックに対しては、デコーダが選択されないようにして、データの書き込みを防止することにより、保護を行う。
【００３７】
以下に、図３に示す概略構成のフラッシュメモリに対する本発明の実施例を説明する。
【００３８】
図４は本発明の第１実施例を示す。本実施例は、本発明による、保護の動作を示す。本実施例においては、６４ｋバイトのブロック（１）から（４）は、論理的に連続しているとする。即ち、ブロックアドレス（１）、（２）、（３）及び、（４）は論理的に連続している。また、図２に示したのと同様に、６４ｋバイトのブロック毎に保護を行う。図４（Ａ）に示す保護状態記憶素子群１１４は、どのブロックまでプログラムされたかを示す２ビットの不揮発性記憶素子４０１と、１回でもプログラムが行われたか否かを示す１ビットの不揮発性記憶素子４０２を有する。不揮発性記憶素子４０２には、１回もプログラムが行われていない場合には”０”が記憶され、１回でもプログラムが行われた場合には、”１”が記憶される。
【００３９】
図４（Ａ）は、ブロック１０１−１から１０１−４に何のデータも記憶されておらずかつ、保護も行われていない状態を示し、この状態において、ブロックに６４ｋバイトのデータを書き込む場合を示す。プログラムを行う場合には、先ず最初に、保護状態記憶素子群１１４の中の不揮発性記憶素子４０２に記憶された情報が読まれる。この場合には、不揮発性記憶素子４０２から”０”が読み出されるので、１回もプログラムが行われていないことを示す。また、保護状態記憶素子群１１４の不揮発性記憶素子４０２には、ブロック（１）を示す値（０，０）が記憶されている。従って、デコーダ１０６−１は、自動的にブロック（１）を選択する。この場合、外部より入力されるアドレスでブロックを選択することも可能である。そして、６４ｋバイトのデータがブロック（１）に書き込まれる、且つ、不揮発性記憶素子４０２には、プログラムが行われたことを示す”１”が記憶される。この場合、書き込まれた最後ブロックは（１）であるので、不揮発性記憶素子４０１はブロック（１）を示す（０，０）のままである。ここで、不揮発性記憶素子４０１に記憶された情報が、（０，０）の時はブロック（１）、（０，１）の時はブロック（２）、（１，１）の時はブロック（３）及び、（１，０）の時はブロック（４）を示すものとする。
【００４０】
次に、図４（Ｂ）は、ブロック（１）にデータが書き込まれ、且つブロック（１）が保護された状態で、２つのブロックに亘る８０ｋバイトのデータを記憶する場合を示す。不揮発性記憶素子４０１はブロック（１）まで保護されていることを示す（０，０）が記憶されており、また、不揮発性記憶素子４０２には、プログラムが行われたことを示す”１”が記憶されている。従って、プログラムが行われると、ブロック（１）は選択されずブロック（２）からブロック（３）に亘って、８０ｋバイトのデータが書き込まれる。データの書き込みのときには、図３に示すプログラム電圧発生回路１１５はプログラム電圧を発生し、選択されたブロック（２）及び（３）にデータが書き込まれる。しかし、デコーダ１０６−１は、選択されないのでブロック（１）へ誤ってデータが書き込まれることはない。ブロック（３）まで書きこんだ後に、不揮発性記憶素子４０１はブロック（３）まで保護されていることを示す（１，１）が記憶される。
【００４１】
次に図４（Ｃ）は、ブロック（３）までデータが書き込まれ且つ保護されている時に、更に６４ｋバイトのデータを記憶する場合を示す。不揮発性記憶素子４０１はブロック（３）まで保護されていることを示す（１，１）が記憶されているので、上述の図４（Ｂ）と同様に、ブロック（１）から（３）は選択されず、ブロック（４）に対して、６４ｋバイトのデータが書き込まれる。
【００４２】
以上の様に、不揮発性記憶素子４０１により、前に書き込まれたデータの最後のブロックを順次記憶しながら、その最後のブロックの次のブロックよりデータを記憶するので既に書き込まれたデータが破壊されることがない。
【００４３】
次に本発明の第２実施例を説明する。図５は、本発明の第２実施例を示す図である。本実施例では、初期状態では、例えば製造時より、全ブロックは、保護された状態であるとする。また、図５（Ａ）に示す保護状態記憶素子群１１４は、どのブロックからプログラム可能かを示す２ビットの不揮発性記憶素子５０１と、不揮発性記憶素子５０１及びフラッシュメモリ外部より入力される保護解除コマンドを入力とする制御回路５０２を有する。
【００４４】
本実施例では、プログラムを行うには、プロテクト状態の一時解除コマンドを入力する。このプロテクト状態の一時解除コマンドが入力されるまでは、たとえプログラムを行う状態となっていても、全てのデコーダ１０６−１から１０６−４は活性化されず、プロテクト状態は解除されない。
【００４５】
プロテクト状態の一時解除コマンドが入力されると、不揮発性記憶素子５０１に記憶した情報で示されるブロックから、メモリの最後のブロックまでのプロテクト状態が解除される。
【００４６】
図５(Ａ)は、ブロック１０１−１から１０１−４に何のデータも記憶されておらず、この状態において、ブロックに６４ｋバイトのデータを書き込む場合を示す。この場合には、不揮発性記憶素子５０１に記憶した情報は（０，０）であるので、プロテクト状態の一時解除コマンドが入力されると、ブロック（１）から最後までのブロックのプロテクトが解除される。そして、ブロック（１）に、６４ｋバイトのデータが記憶される。その後、不揮発性記憶素子５０１には、データの書き込まれたブロック（１）の次のブロック（２）を示す情報（０，１）が記憶される。そして、プロテクト状態の一時解除コマンドを停止すると、再び、メモリの全ブロックが保護される。
【００４７】
次に、図５（Ｂ）は、ブロック（１）にデータが記憶された状態で、更に８０ｋバイトのデータを記憶する場合を示す。上述の、図５(Ａ)と同様に、プログラムを行うときには、プロテクト状態の一時解除コマンドが入力されると、不揮発性記憶素子５０１にはブロック（２）を示す情報（０，１）が記憶されているので、ブロック（２）から最後までのブロックのプロテクトが解除される。これにより、ブロック（２）からブロック（３）に亘って、８０ｋバイトのデータが記憶される。従って、ブロック（１）のデコーダ１０６−１は活性化されることがないので、誤ってブロック（１）にデータが書き込まれることはない。そして、データはブロック（３）まで書き込まれたので、不揮発性記憶素子５０１には、データの書き込まれたブロック（３）の次のブロック（４）を示す情報（１，０）が記憶される。そして、プロテクト状態の一時解除コマンドを停止すると、再び、メモリの全ブロックが保護される。
【００４８】
図５（Ｃ）は更に、６４ｋバイトのデータを記憶する場合を示す。この場合は、上述の図５（Ｂ）と同様に、ブロック（４）のプロテクト状態のみが解除され、６４ｋバイトのデータがブロック（４）に記憶され、ブロック（１）から（３）は誤って書き込まれることはない。
【００４９】
次に本発明の第３実施例を説明する。図６は、本発明の第３実施例を示す図である。本実施例は、ヒドンブロックに対しての保護を行うものである。ヒドンブロックは、ビット６０１から６０８、デコーダ６１１から６１８により構成される。ヒドンブロックは、サイズが小さいので、上述の実施例の保護の単位であるブロックに相当するものは、１ビット（バイト単位のメモリの場合は、１バイト、また、ワード単位のメモリの場合は、１ワード）である。本実施例では、保護の単位は１ビットとする。
【００５０】
図６（Ａ）はヒドンブロックにプログラムを行う場合を示す。図６（Ａ）に示す、図３のヒドンブロック用の保護状態記憶素子群１１４は、どのビットまでプログラムされたかを示す３ビットの不揮発性記憶素子６２１と、不揮発性記憶素子６２１及び外部より入力されるプログラムモードコマンドをデコードするデコーダ６２０を有する。
【００５１】
ヒドンブロックは、図３に示すヒドンブロックアクセスコマンド１２３を入力することによりアクセスが可能となる。この状態をヒドンモードと呼ぶ。
【００５２】
ヒドンモードでプログラムを行うには、先ず最初に、ヒドンブロック用の保護状態記憶素子群１１４内の不揮発性記憶素子６２１の内容が読まれ、プログラムモードと不揮発性記憶素子６２１の出力をデコーダ６２０によりデコードして、不揮発性記憶素子６２１の内容の示す次のビットよりプログラムを行う。
【００５３】
図６（Ａ）の場合には、ビット６０３まで既にプログラムされ、不揮発性記憶素子６２１にはビット６０３を示す値（０，１，１）が記憶されており、この状態で更にデータをプログラムする場合を示す。この場合には、不揮発性記憶素子６２１の示すビット６０３の次のビット６０４からプログラムが行われ、図４に示した実施例で説明したのと同様に、ビット６０１から６０３に対するデコーダ６１１から６１３が活性化されることはないので、誤ってデータが書き込まれることがない。
【００５４】
図６（Ｂ）は、ヒドンブロックからのデータのリード動作を示す。上述の様に、ヒドンブロックは、図３に示すヒドンブロックアクセスコマンド１２３を入力することによりアクセスが可能となり、外部よりアドレスを入力しなくても、自動的に、不揮発性記憶素子６２１に示すビットのデータが読み出される。この場合は、常に最後に書き込まれたビットのデータが読み出される。
【００５５】
次に本発明の第４実施例を説明する。図７は、本発明の第４実施例を示す図である。本実施例は、ヒドンブロックに対しての別の保護を行うものである。
【００５６】
図７（Ａ）はヒドンブロックにプログラムを行う場合を示す。図７（Ａ）に示す、図３で示したヒドンブロック用の保護状態記憶素子群１１４は、どのビットからプログラムが可能かを示す３ビットの不揮発性記憶素子６２１と、不揮発性記憶素子６２１及び外部より入力されるプログラムモードコマンド及びプロテクト一時解除コマンドをデコードするデコーダ６２０を有する。
【００５７】
ヒドンモードでプログラムを行うには、先ず最初に、ヒドンブロック用の保護状態記憶素子群１１４内の不揮発性記憶素子６２１の内容が読まれ、プロテクト一時解除コマンドとプログラムモードと不揮発性記憶素子６２１の出力をデコーダ６２０によりデコードして、不揮発性記憶素子６２１の内容が示すビットよりプログラムを行う。
【００５８】
図７（Ａ）の場合には、ビット６０３まで既にプログラムされ、不揮発性記憶素子６２１にはビット６０３の次のビットを示す値（１，１，１）が記憶されており、この状態で更にデータをプログラムする場合を示す。この場合には、不揮発性記憶素子６２１の示すビット６０４からプログラムが行われ、図５に示した実施例で説明したのと同様に、ビット６０４から６０８に対するデコーダ６１４から６１８が活性化され、ビット６０１から６０３に対するデコーダ６１１から６１３が活性化されることはないので、誤ってデータが書き込まれることがない。
【００５９】
図７（Ｂ）は、ヒドンブロックからのデータのリード動作を示す。上述の様に、ヒドンブロックは、図３に示すヒドンブロックアクセスコマンド１２３を入力することによりアクセスが可能となり、外部よりアドレスを入力しなくても、自動的に、不揮発性記憶素子６２１に示すビットの１つ前のビットのデータが読み出される。この場合は、常に最後に書き込まれたビットのデータが読み出される。
【００６０】
次に本発明の第５実施例を説明する。図８は、フラッシュメモリが、シリアルアクセスポートを有する場合の保護の動作を示す。図８は、図６で示した第３実施例と同様に、図３のヒドンブロック用の保護状態記憶素子群１１４は、どのビットまでプログラムされたかを示す３ビットの不揮発性記憶素子６２１と、不揮発性記憶素子６２１及び外部より入力されるプログラムモードコマンドをデコードするデコーダ６２０を有する。図６で示した第３実施例においては、プログラム及び、リードがビット単位でしか行われない。しかし、本実施例は、連続してプログラム及び、リードが可能なので、複数のビットに対してプログラム及び、リードが可能である。
【００６１】
図８（Ａ）の場合には、ビット６０３まで既にプログラムされ、不揮発性記憶素子６２１にはビット６０３を示す値（０，１，１）が記憶されており、この状態で更にデータを数ビット（バイト単位のメモリの場合は、数バイト、また、ワード単位のメモリの場合は、数ワード）プログラムする場合を示す。この場合には、不揮発性記憶素子６２１の示すビット６０３の次のビット６０４から連続してプログラムが行われ、図６に示した実施例で説明したのと同様に、ビット６０１から６０２に対するデコーダ６１１から６１３が活性化されることはないので、誤ってデータが書き込まれることがない。そして、４つ目の領域のビット６０１から順にメモリセルが選択されるように、デコーダ６１４から６１８を制御して、順次データが書き込まれる。
【００６２】
図８（Ｂ）は、ヒドンブロックからのデータのリード動作を示す。上述の様に、ヒドンブロックは、図３に示すヒドンブロックアクセスコマンド１２３を入力することによりアクセスが可能となり、外部よりアドレスを入力しなくても、自動的に、先頭アドレスから不揮発性記憶素子６２１に示す最終領域ビットのデータまでが、順次に読み出される。以上説明した様に、ヒドンモードでは、外部よりアドレスを入力する必要がない。
【００６３】
次に本発明の第６実施例を説明する。図９は、フラッシュメモリが、シリアルアクセスポートを有する場合の保護の動作を示す。図９は、本発明の第６実施例を示す図である。本実施例は、ヒドンブロックに対しての別の保護を行うものである。図９は、図７で示した第４実施例と同様に、図３のヒドンブロック用の保護状態記憶素子群１１４は、どのビットからプログラムが可能かを示す３ビットの不揮発性記憶素子６２１と、不揮発性記憶素子６２１及び外部より入力されるプログラムモードコマンドとプロテクト一時解除コマンドをデコードするデコーダ６２０を有する。
【００６４】
図７で示した第４実施例においては、プログラム及び、リードがビット単位でしか行われない。しかし、本実施例は、連続してプログラム及び、リードが可能なので、複数のビットに対してプログラム及び、リードが可能である。
【００６５】
図９（Ａ）の場合には、ビット６０３まで既にプログラムされ、不揮発性記憶素子６２１にはビット６０３の次のビットを示す値（１，１，１）が記憶されており、この状態で更にデータを数ビット（バイト単位のメモリの場合は、数バイト、また、ワード単位のメモリの場合は、数ワード）プログラムする場合を示す。この場合には、不揮発性記憶素子６２１の示すビット６０４からプログラムが行われ、図７に示した実施例で説明したのと同様に、ビット６０４から６０８に対するデコーダ６１４から６１８が活性化され、ビット６０１から６０３に対するデコーダ６１１から６１３が活性化されることはないので、誤ってデータが書き込まれることがない。
【００６６】
図９（Ｂ）は、ヒドンブロックからのデータのリード動作を示す。上述の様に、ヒドンブロックは、図３に示すヒドンブロックアクセスコマンド１２３を入力することによりアクセスが可能となり、外部よりアドレスを入力しなくても、自動的に、先頭アドレスから不揮発性記憶素子６２１に示す先頭領域ビットの直前のデータまでが、順次に読み出される。以上説明した様に、ヒドンモードでは、外部よりアドレスを入力する必要がない。
【００６７】
【発明の効果】
以上、本発明により、メモリの主記憶領域を論理的に分割し、順次に保護を行うことにより小さなブロック毎に保護を行い且つ保護用の不揮発性素子を減らすことができるので、メモリチップ面積を増大させることなく、且つ、ヒドンブロックをアクセスするヒドンモードの時にはアドレスを入力せずにヒドンブロックのメモリセルのアクセスを行うことができる不揮発性半導体記憶装置を提供することができる。
【図面の簡単な説明】
【図１】従来のフラッシュメモリの概略構成を示す図である。
【図２】従来の保護の方法の一例を示す図である。
【図３】本発明のフラッシュメモリの一実施例の概略構成を示す図である。
【図４】本発明の第１実施例を示す図である。
【図５】本発明の第２実施例を示す図である。
【図６】本発明の第３実施例を示す図である。
【図７】本発明の第４実施例を示す図である。。
【図８】本発明の第５実施例を示す図である。
【図９】本発明の第６実施例を示す図である。
【符号の説明】
１００  フラッシュメモリ
１０１  主記憶領域
１０１−１から１０１−ｎ  ６４ｋバイトの消去単位（ブロック）
１０２、１０３  ｘ−デコーダ
１０４  ヒドンブロック
１０５  ヒドンブロック用ｘ−デコーダ
１０６−１から１０６−４  ｙ−デコーダ
１１０  アドレスバッファ
１１１  ブロック選択デコーダ
１１２  ｘ−プリデコーダ
１１３  ヒドンブロック用ｘ−デコーダ１１３
１１４  保護状態記憶素子群
１１５  プログラム電圧発生回路
１１６  センスアンプと入出バッファ部
２０１−１から２０１−４  不揮発性記憶素子
２０２  判定回路
４０１  ２ビットの不揮発性記憶素子
４０２  １ビットの不揮発性記憶素子
５０１  ２ビットの不揮発性記憶素子
５０２  制御回路
６０１から６０８  ビット
６１１から６１８  デコーダ
６２０  デコーダ
６２１  ３ビットの不揮発性記憶素子
【図１】
0004463378.tif 000002
【図２】
0004463378.tif 000003
【図３】
0004463378.tif 000004
【図４】
0004463378.tif 000005
【図５】
0004463378.tif 000006
【図６】
0004463378.tif 000007
【図７】
0004463378.tif 000008
【図８】
0004463378.tif 000009
【図９】
0004463378.tif 000010