(57)【要約】【課題】  消去時間を短縮可能な不揮発性半導体記憶装置およびそのデータの消去方法を提供する。【解決手段】  複数の電気的に書き換え可能なメモリセルからなるブロックＢＬＫを複数有し、且つブロックごとにデータの消去が可能な不揮発性半導体記憶装置のデータの消去方法であり、このデータの消去方法は以下の工程を具備する。複数のブロックからなる複数のブロック群ＳＣＴのうち、消去対象ブロックが属するブロック群が検出される。消去対象ブロックが属するブロック群内で、消去対象ブロックが検出される。検出された消去対象ブロック内のメモリセルのデータが消去される。【選択図】      図１
2005243117.tif 000002
【特許請求の範囲】
【請求項１】
複数の電気的に書き換え可能なメモリセルからなるブロックを複数有し、且つ前記ブロックごとにデータの消去が可能な不揮発性半導体記憶装置のデータの消去方法であって、
複数の前記ブロックからなる複数のブロック群のうち、消去対象ブロックが属する前記ブロック群を検出する工程と、
前記消去対象ブロックが属する前記ブロック群内で、前記消去対象ブロックを検出する工程と、
検出された前記消去対象ブロック内の前記メモリセルのデータを消去する工程と、
を具備することを特徴とする不揮発性半導体記憶装置のデータの消去方法。
【請求項２】
前記ブロック群を検出する工程の前に、消去対象の複数のブロックの数に応じて１つの前記ブロック群を構成する前記ブロックの数を設定する工程をさらに具備することを特徴とする請求項１に記載の不揮発性半導体記憶装置のデータの消去方法。
【請求項３】
複数の電気的に書き換え可能なメモリセルからなるブロックを複数有し、且つ前記ブロックごとにデータの消去が可能な不揮発性半導体記憶装置のデータの消去方法であって、
１つの前記ブロックを特定可能なｎ（ｎは自然数）ビットを有するアドレスの最上位のビットの値を検査することにより、消去対象の前記ブロックを含んでいるブロック群の範囲を狭める工程と、
前記検査されたビットの最下位ビット側に隣接するビットの値を検査することにより、前記消去対象のブロックを含んでいる前記ブロック群の範囲をさらに狭める工程を、前記消去対象ブロックが特定されるまで繰り返す工程と、
特定された前記消去対象ブロック内の前記メモリセルのデータを消去する工程と、
を具備することを特徴とする不揮発性半導体記憶装置のデータの消去方法。
【請求項４】
複数の電気的に書き換え可能なメモリセルからなる複数のブロックと、
前記複数のブロックにそれぞれ対応付けされ、且つ消去対象の前記ブロックに対応してセットされる、複数の第１レジスタと、
それぞれが所定数の前記ブロックからなるブロック群にそれぞれ対応付けされ、且つ前記消去対象の前記ブロックを含んでいることに対応してセットされる、複数の第２レジスタと、
前記複数の第２レジスタからセットされているものを検出し、この検出された第２レジスタに対応する前記ブロック群に属する前記ブロック群に対応する前記第１レジスタからセットされているものを検出し、且つこの検出された第１レジスタに対応する前記ブロック内の前記メモリセルのデータを消去する、消去制御回路と、
を具備することを特徴とする不揮発性半導体記憶装置。
【請求項５】
複数の電気的に書き換え可能なメモリセルからなる複数のブロックと、
１つの前記ブロックを特定可能なｎ（ｎは自然数）ビットを有する消去対象の前記ブロックのアドレスの最上位のビットから最下位のビットに向かって値を順次検査することにより消去対象の前記ブロックを含んでいるブロック群の範囲を順次狭め、特定された前記ブロック内の前記メモリセルのデータを消去する、消去制御回路と、
を具備することを特徴とする不揮発性半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性半導体記憶装置に関し、詳しくは、例えば不揮発性半導体記憶装置のデータの消去方法に関する。
【背景技術】
【０００２】
フラッシュ型ＥＥＰＲＯＭ（electrically erasable programmable read only memory）のメモリセルアレイは、複数個のメモリセルから構成されるブロックに分割され、特定された１つまたは２つ以上のブロック内のメモリセルが有する情報を１つの消去コマンドにより一度に消去することができる（マルチブロック消去）。各ブロックは、例えばメモリセルのアドレスの上位の数ビットの値が同じものを１つのブロックとまとめる等することにより特定される。
【０００３】
図１０は、従来のフラッシュ型ＥＥＰＲＯＭ（以下、フラッシュメモリ）１０１のブロック図であり、図１１は図１０の消去処理のフローチャートである。この例は、メモリセルアレイＭＣＡが２５６個のブロックＢＬＫ０〜ＢＬＫ２５５に分割された場合を示している。まず、フラッシュメモリにブロック消去コマンドおよび消去対象の１つまたは２つ以上のブロックのアドレスが入力される（ステップＳ１０１）。次に、各ブロックＢＬＫ０〜ＢＬＫ２５５と対応して設けられたブロック選択レジスタＳ０〜Ｓ２５５のうち、消去対象ブロックＢＬＫに対応するものが全てセットされる（ステップＳ１０２）。次に、書き込み／消去（Ｗ／Ｅ）制御回路１０３の内部のカウンタの値ｎが０にセットされる（ステップＳ１０３）。次に、書き込み／消去制御回路１０３は、ブロック消去選択レジスタＳ０がセットされているか否かを判断する（ステップＳ１０４）。セットされていない場合、現在スキャン対象のブロックが最終ブロックであるかの判定がなされ、（ステップＳ１０５）、値ｎ＝ｎ＋１とされた（ステップＳ１０６）後、ステップＳ１０４に移行する。
【０００４】
これまでの動作が繰り返された結果、セットされた消去対象ブロックＢＬＫが検出されると、書き込み／消去制御回路１０２は消去対象ブロックＢＬＫに対して消去動作を行う（ステップＳ１０７）。次に、スキャン対象のブロックＢＬＫが最終のものでない場合、ステップＳ１０４〜ステップＳ１０７が繰り返され、全ブロックＢＬＫのスキャン終了後、消去処理が終了する。
【０００５】
マルチブロック消去の場合、消去対象ブロックＢＬＫの検出、消去後、さらなる消去対象ブロックＢＬＫの有無は不明なので、最終のブロックＢＬＫ２５５までスキャンが継続されなければならない。したがって、例示のようにブロック数が２５６のうちただ１つのブロックを消去する場合、残り２５５個のブロックＢＬＫをスキャンする動作は無駄な時間である。この結果、この手法では、消去動作に要する時間を短縮することはできない。さらに、フラッシュメモリの大容量化が進んでいることに伴ってブロック数が増加しているため、消去時間が増大する問題が生じる。
【０００６】
この出願の発明に関連する先行技術文献情報としては次のものがある。
【特許文献１】特開平7-98991号公報
【特許文献２】特開平6-131889号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、上記事情に鑑みてなされたものであり、その目的とするところは、消去時間を短縮可能な不揮発性半導体記憶装置およびそのデータの消去方法を提供しようとするものである。
【課題を解決するための手段】
【０００８】
本発明の第１の視点による不揮発性半導体記憶装置のデータの消去方法は、複数の電気的に書き換え可能なメモリセルからなるブロックを複数有し、且つ前記ブロックごとにデータの消去が可能な不揮発性半導体記憶装置のデータの消去方法であって、複数の前記ブロックからなる複数のブロック群のうち、消去対象ブロックが属する前記ブロック群を検出する工程と、前記消去対象ブロックが属する前記ブロック群内で、前記消去対象ブロックを検出する工程と、検出された前記消去対象ブロック内の前記メモリセルのデータを消去する工程と、を具備することを特徴とする。
【０００９】
本発明の第２の視点による不揮発性半導体記憶装置は、複数の電気的に書き換え可能なメモリセルからなる複数のブロックと、前記複数のブロックにそれぞれ対応付けされ、且つ消去対象の前記ブロックに対応してセットされる、複数の第１レジスタと、それぞれが所定数の前記ブロックからなるブロック群にそれぞれ対応付けされ、且つ前記消去対象の前記ブロックを含んでいることに対応してセットされる、複数の第２レジスタと、前記複数の第２レジスタからセットされているものを検出し、この検出された第２レジスタに対応する前記ブロック群に属する前記ブロック群に対応する前記第１レジスタからセットされているものを検出し、且つこの検出された第１レジスタに対応する前記ブロック内の前記メモリセルのデータを消去する、消去制御回路と、を具備することを特徴とする。
【００１０】
更に、本発明に係る実施の形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、実施の形態に示される全構成要件から幾つかの構成要件が省略されることで発明が抽出された場合、その抽出された発明を実施する場合には省略部分が周知慣用技術で適宜補われるものである。
【発明の効果】
【００１１】
本発明によれば、消去時間の短い不揮発性半導体記憶装置およびそのデータ消去方法を提供できる。
【発明を実施するための最良の形態】
【００１２】
以下に本発明の実施の形態について図面を参照して説明する。なお、以下の説明において、略同一の機能及び構成を有する構成要素については、同一符号を付し、重複説明は必要な場合にのみ行う。
【００１３】
（第１実施形態）
図１は、本発明の第１実施形態に係る不揮発性半導体記憶装置（フラッシュメモリ）１のデータの消去に関する主要部分の構成を概略的に示すブロック図である。図１に示すように、コマンドデコーダ２には、フラッシュメモリの外部からアドレス信号Ａｄｄ、データ信号Ｄａｔａ、制御信号／ＣＥ、書き込みイネーブル信号／ＷＥが供給される。コマンドデコーダ２は、制御信号／ＣＥおよび書き込みイネーブル信号／ＷＥ等に従ってデータ信号Ｄａｔａをデコードし、デコードされた制御の内容に応じて、書き込み／消去制御回路３を制御する。参照符号１２に関しては、第２実施形態において説明する。
【００１４】
メモリセルアレイＭＣＡは、複数のフラッシュメモリセルを有する。各メモリセル（図示せぬ）は、不揮発性であり、電気的な制御によって情報の書き換え、消去が可能である。また、各メモリセルは、半導体基板上の第１ゲート絶縁膜上に設けられた浮遊ゲート電極、浮遊ゲート電極上の第２ゲート絶縁膜上に設けられた制御ゲート電極、浮遊ゲート電極下のチャネル領域を挟むように半導体基板の表面に形成されたソース／ドレイン拡散層等を有する。各メモリセルの一端（ドレイン）はビット線（図示せぬ）と接続されている。
【００１５】
メモリセルアレイＭＣＡは、メモリセルを一義的に特定できるアドレスに応じて複数のブロックに分割される。図では、２５６個のブロックＢＬＫ（ＢＬＫ０〜ＢＬＫ２５５）に分割された例を示している。この例の場合、例えばメモリセルアドレスの上位８ビットが共通のメモリセルが、１つのブロックＢＬＫに属する。フラッシュメモリ１は、ブロック単位で、ブロックＢＬＫに含まれる全てのメモリセルのデータを一括して消去可能なように構成されている。
【００１６】
メモリセルアレイＭＣＡは、さらに複数のブロックＢＬＫからなるセクタ（ブロック群）ＳＣＴ（ＳＣＴ０〜ＳＣＴ７）に分割される。セクタＳＣＴ０〜ＳＣＴ７は、後述するように、消去対象のブロックＢＬＫを検出する際の検索の単位として用いられる。１つのセクタＳＣＴを構成するブロックＢＬＫの数は、ブロックＢＬＫの総数に応じて、後述する方法によって消去対象のブロックＢＬＫを最も効率的に検出可能なように決定される。本実施形態の例では、３２個のブロックＢＬＫにより１つのセクタＳＣＴが構成され、セクタＳＣＴの総数は８個である。この場合、例えばメモリセルアドレスの上位３ビットを参照することにより各セクタＳＣＴを特定できる。なお、このような分割の仕方は例示であり、この形態に限られるものではない。
【００１７】
書き込み／消去制御回路３は、コマンドデコーダ２の制御に応じて、指定されたアドレスのメモリセルに対してデータの書き込みまたは消去を行う機能を有する。典型的には、基板電位制御回路、プログラム電圧発生回路、カラムデコーダ、ロウデコーダ等を有する。各メモリセルの他端（ソース）は基板電位制御回路に接続される。ロウデコーダおよびカラムデコーダは、対象のメモリセルと、基板電位制御回路およびプログラム電圧発生回路と、の接続を制御する。基板電位制御回路およびプログラム電圧発生回路によって、プログラム電圧または消去電圧が対象のメモリセルに印加されることにより、データの書き込みまたは消去が行われる。
【００１８】
フラッシュメモリ１は、ブロック選択レジスタ群４およびセクタ選択レジスタ群５を有する。ブロック選択レジスタ群４は、ブロックＢＬＫの数と同数の複数のブロック選択レジスタＢＳ０〜ＢＳ２５５により構成される。各ブロック選択レジスタＢＳ０〜ＢＳ２５５は、ブロックＢＬＫ０〜ＢＬＫ２５５に対してそれぞれ設けられ、対応するブロックＢＬＫが消去の対象となっている場合にセットされることにより、その旨の情報を保持する。
【００１９】
セクタ選択レジスタ群５は、セクタＳＣＴの数と同数の複数のセクタ選択レジスタＳＳから構成される。上記した例に従えば、セクタ選択レジスタ群５は、８個のセクタ選択レジスタＳＳ０〜ＳＳ７から構成される。各セクタ選択レジスタＳＳ０〜ＳＳ７は、セクタＳＣＴ０〜ＳＣＴ７ごとに設けられ、対応するセクタＳＣＴ内のいずれかのブロックＢＬＫが消去対象として指定されている場合にセットされることにより、消去対象のブロックＢＬＫを含んでいる旨の情報を保持する。
【００２０】
なお、フラッシュメモリは、上記各部に加えて、データの読み出しに必要な回路を備えている。
【００２１】
図２は、図１の書き込み／消去制御回路３の主要部の構成を概略的に示すブロック図である。図２に示すように、書き込み／消去制御回路３は、カウンタＣ１、Ｃ２、比較判断部３１、制御部３２、書き込み／消去制御部３３を有する。書き込み／制御部３３には、データの消去および書き込みに直接関与する基板電位制御回路、プログラム電圧発生回路等が含まれる。
【００２２】
カウンタＣ１は、少なくとも、ブロック選択レジスタＢＳ０〜ＢＳ２５５と同数まで計数が可能である。カウンタＣ１が保持している値が順次増分されながら、その値と同じ順位のブロック選択レジスタＢＳのセットの有無が、比較判断部３１によって順次検査されることにより、セットされているブロック選択レジスタＢＳが検出される。
【００２３】
カウンタＣ２は、少なくとも、セクタ選択レジスタＳＳ０〜ＳＳ７と同数まで計数が可能である。カウンタＣ２が保持している値が順次増分されながら、その値と同じ順位のセクタ選択レジスタＳＳのセットの有無が、比較判断部３１によって順次検査されることにより、セットされているセクタ選択レジスタＳＳが検出される。
【００２４】
制御部３２は、コマンドデコーダ２の制御に応じて、カウンタＣ１、Ｃ２の増分、比較判断部３１、および書き込み／制御部３３を制御する。
【００２５】
次に、第１実施形態に係るフラッシュメモリの消去動作について、図１〜図４を用いて説明する。図３は、消去処理の全体の動作のタイミングチャートを示している。図３に示すように、複数のデータ信号から構成される消去コマンドが、制御信号／ＣＥおよび／ＷＥ（／は否定論理を示す、以下同じ）がローレベルの間に取り込まれることにより消去モードに移行する。次に、消去対象のブロックのアドレスが、１つまたは２つ以上順次入力されることにより、消去対象のブロックに対して消去動作が行われる。
【００２６】
図４は、本発明の第１実施形態に係るフラッシュメモリの消去処理を示すフローチャートである。図４に示すように、複数のデータ信号から構成される消去コマンドおよび１つまたは２つ以上の消去対象ブロックＢＬＫのアドレスがコマンドデコーダ２に供給される（ステップＳ１）。次に、コマンドデコーダ２は、消去対象ブロックＢＬＫのアドレスを解析し、消去対象ブロックＢＬＫに対応するブロック選択レジスタＢＳをセットするとともに、消去対象ブロックＢＬＫが属するセクタＳＣＴに対応するセクタ選択レジスタＳＳをセットする（ステップＳ２）。ブロック選択レジスタＳＳのセットの際、本例ではメモリセルアレイＭＣＡが２５６個のブロックＢＬＫ０〜ＢＬＫ２５５に分割されているので、例えばアドレスの上位８ビットを読み取ることにより、消去対象のブロックＢＬＫが特定される。同様に、本例では、ブロックＢＬＫが８個のセクタＳＣＴ０〜ＳＣＴ７へと分割されているので、例えばアドレスの上位３ビットを読み取ることにより、消去対象のブロックＢＬＫがどのセクタＳＣＴに属しているかが特定される。
【００２７】
次に、書き込み／消去制御回路２は、カウンタＣ１の値ｎおよびカウンタＣ２の値ｍを０にセットする（ステップＳ３）。書き込み／消去制御回路３は、まず、セクタ選択レジスタＳＳ０〜ＳＳ７をスキャンすることにより、消去対象ブロックＢＬＫが属するセクタＳＣＴを検出する。すなわち、制御部３２の制御により、比較判断部３１はカウンタＣ１の値ｎを用いて、セクタ選択レジスタＳＳｎがセットされているか否かを判断する（ステップＳ４）。セットされていない場合、次いで比較判断の対象となったセクタが最終のセクタであるかの判定、すなわち、本例ではｎ＝７であるかの判定が行われる（ステップＳ５）。最終セクタでない場合、制御部３２は、カウンタＣ１の値ｎをｎ＋１へと増分した（ステップＳ６）後、ステップＳ４に移行する。制御部３２は、セクタ選択レジスタＳＳのスキャンを継続し、セットされたセクタ選択レジスタＳＳが検出されるまでステップＳ４〜ステップＳ６の処理が繰り返される。セットされたセクタ選択レジスタＳＳの検出後、処理はステップＳ７に移行する。
【００２８】
制御部３２は、消去対象ブロックＢＬＫが属するセクタＳＣＴ内のブロックＢＬＫに対応するブロック選択レジスタＢＳをスキャンすることにより、消去対象ブロックＢＬＫを検出する。すなわち、まず、制御部３２の制御に応じて、比較判断部３１は、カウンタＣ２の値ｍを用いて対象のセクタＳＣＴ内の先頭のブロック選択レジスタＢＳのセットの有無を判断する（ステップＳ７）。スキャン対象のブロック選択レジスタＢＬＫがセットされていない場合、このブロックＢＬＫがスキャン対象中のセクタＳＣＴ内で最終のブロックＢＬＫであるかの判定、すなわち、本例ではｍ＝３１であるかの判定が行われる（ステップＳ８）。最終ブロックＢＬＫでない場合、制御部３２は、カウンタＣ２の値ｍをｍ＋１へと増分した（ステップＳ９）後、ステップＳ７に移行する。制御部３２はスキャン対象中のセクタ内のブロック選択レジスタ群４のスキャンを継続し、セットされたブロック選択レジスタＢＳが検出されるまでステップＳ７〜ステップＳ９の処理が繰り返される。
【００２９】
制御部３２によるスキャンが、消去対象のブロックＢＬＫに到達すると、制御部３２の制御に応じて、書き込み／消去制御部３３はそのブロックＢＬＫに対して消去動作を行う（ステップＳ１０）。この後、ステップＳ８において、消去されたブロックＢＬＫが、スキャン対象中のセクタ内の最終ブロックＢＬＫであるか否かの判定が行われる。最終ブロックＢＬＫであった場合、制御部３２はステップＳ５に移行する。
【００３０】
ステップＳ５において、最後にスキャンの対象となったセクタＳＣＴが最終セクタＳＣＴであったか否かの判定が行われる。この結果、最終セクタＳＣＴでなかった場合、制御部３２は、ステップＳ４〜Ｓ６によって、消去対象ブロックＢＬＫが属する次のセクタＳＣＴを検出するための処理を行う。消去対象ブロックＢＬＫが属するさらなるセクタＳＣＴが検出されると、ステップＳ７〜Ｓ９が繰り返され、消去対象ブロックＢＬＫの検出、消去動作が行われる。
【００３１】
上記動作が繰り返され、ステップＳ５において、スキャン対象のセクタＳＣＴが最終セクタＳＣＴであった場合、処理が終了する。
【００３２】
本発明の第１実施形態に係る不揮発性半導体記憶装置によれば、第１段階として消去対象のブロックＢＬＫが属するセクタＳＣＴが検出され、続く第２段階として、検出されたセクタＳＣＴ内で消去対象のブロックＢＬＫが検出される。また、消去対象ブロックＢＬＫを含まないセクタＳＣＴは、第２段階でのブロックスキャンの対象から除外される。このため、全ブロックＢＬＫを全て検索して消去対象ブロックＢＬＫを発見する手法より、消去対象ブロックＢＬＫを発見する時間を短縮することができる。
【００３３】
上記利点について、例えば、２５６個のブロックＢＬＫ０〜ＢＬＫ２５５を８個のブロックＢＬＫからなる３２個のセクタＳＣＴ０〜ＳＣＴ７へと分割した場合について説明する。消去対象が１ブロックの場合、従来のように全てのブロックＢＬＫを全てスキャンするとすれば、スキャン動作が２５６回行われる。これに対して、第１実施形態によれば、セクタのスキャンが３２回行われ、消去対象ブロックＢＬＫが属するセクタＳＣＴ内でブロックＢＬＫのスキャンが８回行われる。したがって、最大でも３２＋８＝４０回のスキャンにより、２５６ブロックの中から１つの消去対象ブロックを検出できる。
【００３４】
（第２実施形態）
第２実施形態では、消去対象ブロックＢＬＫがいくつ指定されているかに応じて１つのセクタＳＣＴを構成するブロックＢＬＫの数が設定される。
【００３５】
図１、図５を参照して、第２実施形態に係る不揮発性半導体記憶装置について以下に説明する。図５は、本発明の第２実施形態に係る不揮発性半導体記憶装置のコマンドデコーダ１２の主要部分を概略的に示すブロック図である。図５に示すように、コマンドデコーダ１２は、デコーダ部４１、カウンタＣ３、レジスタＲ１、処理部４２を有する。デコーダ部４１は、通常のデコーダ動作を行う。カウンタＣ３は、１つの消去コマンドにおいて指定された消去対象ブロックＢＬＫの個数を計数する。レジスタＲ１は、消去対象ブロックの指定を含む消去コマンドの入力が終了した際に、カウンタＣ３が有する値を記憶する。処理部４２は、カウンタＣ３が有する値に応じて、全ブロックＢＬＫ０〜ＢＬＫ２５５をいくつのセクタＳＣＴへと分割するかの判断を行う。ブロックＢＬＫの総数が２５６であった場合を例にとると、消去対象のブロックＢＬＫが１６個であれば、ブロックＢＬＫ０〜ＢＬＫ２５５は１６個のセクタＳＣＴへと分割される。また、消去対象のブロックＢＬＫが１７〜６４個の場合、ブロックＢＬＫ０〜ＢＬＫ２５５は８個のセクタＳＣＴへと分割される。さらに、消去対象のブロックＢＬＫが６５個以上の場合、ブロックＢＬＫ０〜ＢＬＫ２５５はセクタへと分割されない。
【００３６】
処理部４２はまた、先に決定されたセクタＳＣＴの数を考慮しつつ、消去対象ブロックＢＬＫが属するセクタＳＣＴに対応付けられたセクタ選択レジスタＳＳをセットする。この場合、処理部４２は、セクタＳＣＴの数に応じた桁数のビット列を観察することにより、消去対象ブロックＢＬＫがどのセクタＳＣＴに属するかを判断する。すなわち、例えば、セクタＳＣＴの数が１６の場合、アドレスの上位４ビットを参照することにより、どのセクタ選択レジスタＳＳがセットされるべきかが特定される。同様に、セクタＳＣＴの数が８の場合、アドレスの上位３ビットが参照される。
【００３７】
処理部４２は、さらに、各セクタＳＣＴがいくつのブロックＢＬＫから構成されるかの情報を書き込み／消去制御回路３に供給する。
【００３８】
書き込み／消去制御回路３は、各セクタＳＣＴを構成するブロックＢＬＫの数を踏まえつつ、第１実施形態と同じ工程により、まず、消去対象ブロックＢＬＫが属するセクタＳＣＴを検出する。次いで、書き込み／消去制御回路３は、消去対象ブロックＢＬＫが属するセクタＳＣＴを検出すると、そのセクタＳＣＴ内のブロックＢＬＫをスキャンすることにより消去対象ブロックＢＬＫの検出およびそのブロックＢＬＫ内のメモリセルが保持するデータを消去する。消去対象ブロックＢＬＫが属するセクタＳＣＴ内の全てのブロックＢＬＫがスキャンされた後、さらなる消去対象ブロックＢＬＫが属する次のセクタＳＣＴの検出、消去対象ブロックＢＬＫの検出、データの消去が順次行われる。
【００３９】
図６は、本発明の第２実施形態に係るフラッシュメモリの消去処理を示すフローチャートである。図６に示すように、フラッシュメモリは、ステップＳ１の後、ステップＳ２１において、消去対象ブロックＢＬＫの数に応じてセクタＳＣＴの数を決定する。この後の動作は、ステップＳ５およびステップＳ８での判断に用いられる値が異なることを除いて第１実施形態と同じである。すなわち、ステップＳ５では、ステップＳ１１において決定されたセクタの数が、例えば書き込み／消去制御回路３内のレジスタ等に記憶され、その値とカウンタＣ１の値ｎとが比較される。同様に、ステップＳ８においては、セクタの数に応じて決定されたブロックＢＬＫの数が、書き込み／消去制御回路３内のレジスタ等に記憶され、その値とカウンタＣ２の値ｍとが比較される。
【００４０】
本発明の第２実施形態に係る不揮発性半導体記憶装置によれば、消去対象ブロックＢＬＫのスキャンの際、消去対象ブロックＢＬＫの数に応じてセクタＳＣＴの数が決定される。この後、第１実施形態と同じ工程により、消去対象ブロックＢＬＫが属するセクタＳＣＴの検出、およびそのセクタＳＣＴ内での消去対象ブロックＢＬＫの検出が行われる。このため、第１実施形態と同じ効果を得られる。さらに、第２実施形態によれば、消去対象ブロックＢＬＫが、多数である場合、その数に応じてセクタの数が減少する。このため、特に消去対象ブロックＢＬＫが多数で且つ全ブロックＢＬＫに亘って分散している場合、セクタＳＣＴをスキャンする時間を短縮することにより、消去対象ブロックＢＬＫを検出する時間を短縮することができる。
【００４１】
（第３実施形態）
第３実施形態では、第１実施形態および第２実施形態と異なり、消去対象ブロックＢＬＫのアドレスを参照しながら、ブロック選択レジスタ群４がスキャンされる。
【００４２】
図７は、本発明の第３実施形態に係る不揮発性半導体記憶装置のデータの消去に関する主要部分の構成を概略的に示すブロック図である。図７に示すように、フラッシュメモリ１１は、コマンドデコーダ２２、書き込み／消去制御回路２３、ブロック選択レジスタ群４、メモリセルアレイＭＣＡを有する。コマンドデコーダ２２は、消去対象ブロックＢＬＫと対応付けされたブロック選択レジスタＢＳをセットするとともに、消去対象ブロックＢＬＫのアドレスを書き込み／消去制御回路２３に供給する。書き込み／消去制御回路２３は、消去対象ブロックＢＬＫのアドレスをその内部のレジスタ等に一時保存する。次いで、書き込み／消去制御回路２３は、このアドレスを用いて、スキャンすべきブロック選択レジスタ４の範囲を順次狭めながら、セットされたブロック選択レジスタＢＳをブロック選択レジスタ群４から検出する。
【００４３】
図８は、書き込み／消去制御回路２３の主要部の構成を概略的に示すブロック図である。図８に示すように、書き込み／消去制御回路２３は、レジスタＲ２、検査部５１、制御部５２、書き込み／消去制御部３３を有する。レジスタＲ２は、コマンドデコーダ２２から供給された、各消去対象ブロックＢＬＫのアドレスを記憶する。検査部５１は、消去動作の際、ブロックレジスタＢＳ０〜ＢＳ２５５が保持する情報を読み出し、レジスタＲ２が記憶するアドレスを参照しながらセットされたブロック選択レジスタＢＳを検出する。検査部５１は、検出の結果を含む情報を書き込み／消去制御部３３に供給し、書き込み／消去制御部３３はこの情報に応じて、対象のブロックＢＬＫに対して消去動作を行う。制御部５２は、レジスタＲ２、検査部５１、書き込み／消去制御部３３が、上記動作を行うように制御する。
【００４４】
図８および図９を参照して、第３実施形態のフラッシュメモリの動作について説明する。図９は、第３実施形態のフラッシュメモリの消去処理を示すフローチャートである。図９に示すように、コマンドデコーダ２１に消去コマンドが供給された（ステップＳ１）後、書き込み／消去制御回路２２は最初の消去対象ブロックＢＬＫのアドレスの最上位ビット（第１位ビット）の値を検査する（ステップＳ３１）。この検査により、セットされているブロック選択レジスタＢＳが、ブロック選択レジスタ群４のいずれの半分に属しているかが判断される。この結果、消去対象ブロックＢＬＫを含んでいない半分は、さらなるスキャンの対象から除外される。すなわち、例えば、消去対象ブロックＢＬＫのアドレスの最上位ビットが“０”の場合、この消去対象ブロックＢＬＫに対応するブロック選択レジスタＢＳは、ブロック選択レジスタ群４の１つ目の半分に属することが判明する。もう一方の半分に属するブロック選択レジスタＢＳは、スキャンの対象から除外される。“１”の場合、各半分の関係は逆転する。
【００４５】
次に、書き込み／消去制御回路２２は、消去対象ブロックＢＬＫのアドレスの最上位ビットの１つ最下位ビット側のビット（第２位ビット）の値を検査する（ステップＳ３２）。第１位ビットにおける説明と同じ原理により、第２位ビットの値に応じて、スキャン対象のブロック選択レジスタＢＳの範囲はさらに半分へと狭められる。
【００４６】
次に、書き込み／消去制御回路２２は、消去対象ブロックＢＬＫのアドレスの第２位ビットから１つ最下位ビット側の第３位ビットの値を検査する（ステップＳ３３）。この結果によって、スキャン対象のブロック選択レジスタＢＳの範囲はさらに半分へと狭められる。
【００４７】
同様にして、スキャン対象のブロック選択レジスタＢＳが特定されるまで、順次、最下位ビット側のビットの値が検査される。例えば、ブロックＢＬＫの数が２５６の場合、８個のビットに関して検査、スキャン対象の絞込みを行うことにより、最終的に目的のブロック選択レジスタＢＳが特定される（ステップＳ４１）。この後、書き込み／消去制御回路２２は、消去対象のブロックのメモリセルのデータを消去する（ステップＳ４２）。
【００４８】
次に、ステップＳ４３において、消去対象ブロックが最後のものであるか否かが判定される。さらなる消去対象ブロックＢＬＫがある場合、この消去対象ブロックＢＬＫのアドレスが読み出され、ステップＳ３２〜ステップＳ４２までの動作がこのアドレスに関して繰り返される。これまでの動作が、全ての消去対象ブロックに対して繰り返された後、消去処理が終了する。
【００４９】
本発明の第３実施形態に係る不揮発性半導体記憶装置によれば、消去対象ブロックＢＬＫのアドレスを最上位ビットから最下位ビットへと順次検査することにより、スキャン対象のブロック選択レジスタＢＳの範囲が順次半分へと狭められる。このため、１つのブロック選択レジスタＢＳを特定するのに要するスキャン動作は、１つのブロックＢＬＫを特定可能なビット数と同数のスキャン工程により完了する。したがって、消去対象ブロックを発見する時間を短縮することができる。
【００５０】
その他、本発明の思想の範疇において、当業者であれば、各種の変更例及び修正例に想到し得るものであり、それら変更例及び修正例についても本発明の範囲に属するものと了解される。
【図面の簡単な説明】
【００５１】
【図１】本発明の第１実施形態に係る不揮発性半導体記憶装置のデータの消去に関する主要部分の構成を概略的に示すブロック図。
【図２】図１の書き込み／消去制御回路の主要部の構成を概略的に示すブロック図。
【図３】本発明の第１実施形態に係るフラッシュメモリの消去処理を示すフローチャート。
【図４】本発明の第２実施形態に係る不揮発性半導体記憶装置のコマンドデコーダの主要部の構成を概略的に示すブロック図。
【図５】図１のコマンドデコーダの主要部の構成を概略的に示すブロック図。
【図６】本発明の第２実施形態に係るフラッシュメモリの消去処理を示すフローチャート。
【図７】本発明の第３実施形態に係る不揮発性半導体記憶装置のコマンドデコーダの主要部の構成を概略的に示すブロック図。
【図８】図７の書き込み／制御回路２３の主要部の構成を概略的に示すブロック図。
【図９】本発明の第３実施形態のフラッシュメモリの消去処理を示すフローチャート。
【図１０】従来のフラッシュメモリのブロック図。
【図１１】従来のフラッシュメモリの消去処理を示すフローチャート。
【符号の説明】
【００５２】
１、１１…フラッシュメモリ、２、１２…コマンドデコーダ、３、１３…書き込み／消去制御回路、４…ブロック選択レジスタ群、５…セクタ選択レジスタ群、３１…比較判断部、３２、５２…制御部、３３…書き込み／消去制御部、４１…デコーダ部、４２…処理部、５１…検査部、ＭＣＡ…メモリセルアレイ、ＢＬＫ０〜ＢＬＫ２５５…ブロック、ＳＣＴ０〜ＳＣＴ７…セクタ、ＢＳ０〜ＢＳ２５５…ブロック選択レジスタ、ＳＳ０〜ＳＳ７…セクタ選択レジスタ、Ｃ１、Ｃ２、Ｃ３…カウンタ、Ｒ１、Ｒ２…レジスタ。
【図１】
2005243117.tif 000003
【図２】
2005243117.tif 000004
【図３】
2005243117.tif 000005
【図４】
2005243117.tif 000006
【図５】
2005243117.tif 000007
【図６】
2005243117.tif 000008
【図７】
2005243117.tif 000009
【図８】
2005243117.tif 000010
【図９】
2005243117.tif 000011
【図１０】
2005243117.tif 000012
【図１１】
2005243117.tif 000013