(57)【要約】【目的】半導体メモリから消去回数が最小のブロックを高速に検索することが可能な半導体装置、及び半導体メモリにおける消去回数の検索方法を提供することを目的とする。【構成】検索開始命令に応じて、ブロック各々のアドレスの系列からなる読出アドレス信号を生成し、当該読出アドレス信号をブロック管理メモリに供給することにより、ブロック管理メモリから各ブロックに対応した消去回数データ片の系列を連続して読み出す。そして、ブロック管理メモリから読み出された消去回数データ片が最小消去回数データ片よりも小なる消去回数を示す場合に、当該消去回数データ片を取り込んで保持しこれを上記最小消去回数データ片として出力すると共に、読出アドレス信号を取り込んで保持し当該読出アドレス信号によって示されるアドレスを最小消去回数アドレスとして出力する。【選択図】図５
2015069542.tif 000002
【特許請求の範囲】
【請求項１】
ブロックの単位でデータ消去を行う半導体メモリを有する半導体装置であって、
前記ブロックの各々に対応付けして当該ブロックで実施されたデータ消去の消去回数を示す消去回数データ片を記憶するブロック管理メモリと、
検索開始命令に応じて読出アドレス信号を生成し、当該読出アドレス信号を前記ブロック管理メモリに供給することにより当該ブロック管理メモリから前記消去回数データ片の各々を連続して読み出す読出アドレス生成回路と、
前記ブロック管理メモリから読み出された前記消去回数データ片各々のうちから最小の消去回数を示す消去回数データ片に対応したブロックを検索する最小消去回数検索回路と、を有し、
前記最小消去回数検索回路は、
前記ブロック管理メモリから読み出された前記消去回数データ片が最小消去回数データ片よりも小なる消去回数を示す場合に当該消去回数データ片を前記最小消去回数データ片として出力する第１ラッチと、
前記ブロック管理メモリから読み出された前記消去回数データ片が前記最小消去回数データ片よりも小なる消去回数を示す場合に前記読出アドレス信号によって示されるアドレスを最小消去回数アドレスとして出力する第２ラッチと、を有することを特徴とする半導体装置。
【請求項２】
前記ブロック管理メモリには、前記ブロックの各々に対応付けして前記消去回数データ片と共に当該ブロックの属性を示す属性データ片が記憶されており、
前記属性データ片が、指定された指定属性データ片との比較結果に基づいて、検索対象から除外される第１検索除外回路を更に備えたことを特徴とする請求項１記載の半導体装置。
【請求項３】
前記ブロック管理メモリには、前記ブロックの各々に対応付けして前記消去回数データ片と共に当該ブロックの属性を示す属性データ片が記憶されており、
前記属性データ片が、指定された指定属性データ片と一致していない場合には当該属性データ片に対応した前記消去回数データ片にて示される消去回数を、消去回数データ片によって表現可能な最大の消去回数に変更したものを前記最小消去回数検索回路に供給する第１検索除外回路を更に備えたことを特徴とする請求項１記載の半導体装置。
【請求項４】
前記ブロック管理メモリから読み出された前記消去回数データ片各々のうちから最大の消去回数を示す消去回数データ片に対応したブロックを検索する最大消去回数検索回路を有し、
前記最大消去回数検索回路は、
前記ブロック管理メモリから読み出された前記消去回数データ片が最大消去回数データ片よりも大なる消去回数を示す場合に当該消去回数データ片を前記最大消去回数データ片として出力する第３ラッチと、
前記ブロック管理メモリから読み出された前記消去回数データ片が前記最大消去回数データ片よりも大なる消去回数を示す場合に前記読出アドレス信号によって示されるアドレスを最大消去回数アドレスとして出力する第４ラッチと、を有することを特徴とする請求項１〜３に記載の半導体装置。
【請求項５】
前記ブロック管理メモリには、前記ブロックの各々に対応付けして前記消去回数データ片と共に当該ブロックの属性を示す属性データ片が記憶されており、
前記属性データ片が、指定された指定属性データ片との比較結果に基づいて、検索対象から除外される第２検索除外回路を更に備えたことを特徴とする請求項４記載の半導体装置。
【請求項６】
前記ブロック管理メモリには、前記ブロックの各々に対応付けして前記消去回数データ片と共に当該ブロックの属性を示す属性データ片が記憶されており、
前記属性データ片が、指定された指定属性データ片と一致していない場合には当該属性データ片に対応した前記消去回数データ片にて示される消去回数を、消去回数データ片によって表現可能な最小の消去回数に変更したものを前記最大消去回数検索回路に供給する第２検索除外回路を更に備えたことを特徴とする請求項４記載の半導体装置。
【請求項７】
前記属性データは、対応するブロックがデータ書き込み済みであるか否かを表す使用済情報、当該ブロックが破壊されているか否かを表す破壊情報、及び／又は当該ブロックに消去不可な保護データが記憶されているか否かを表す保護情報を含むことを特徴とする請求項２、３、５、６のいずれか１に記載の半導体装置。
【請求項８】
データ書込命令に応じて、又は定期的に前記検索開始命令を前記読出アドレス生成回路に供給するＣＰＵを有し、
前記ＣＰＵは、前記第２ラッチから出力された前記最小消去回数アドレスに対応したブロックをデータ書込先のブロックとして選定し、当該選定したブロックにデータを書き込ませるべく前記半導体メモリを制御することを特徴とする請求項１〜７のいずれか１に記載の半導体装置。
【請求項９】
データ書込命令に応じて、又は定期的に前記検索開始命令を前記読出アドレス生成回路に供給するＣＰＵを有し、
前記ＣＰＵは、前記第２ラッチから出力された前記最小消去回数アドレスに対応したブロックに書き込まれているデータと、前記第４ラッチから出力された前記最大消去回数アドレスに対応したブロックに書き込まれているデータとを互いに入れ替えるべく前記半導体メモリを制御することを特徴とする請求項４〜７のいずれか１に記載の半導体装置。
【請求項１０】
ブロックの単位でデータ消去を行う半導体メモリにおける消去回数の検索方法であって、
前記ブロックの各々に対応付けして当該ブロックで実施されたデータ消去の消去回数を示す消去回数データ片をブロック管理メモリに記憶するステップと、
検索開始命令に応じて読出アドレス信号を生成し、当該読出アドレス信号を前記ブロック管理メモリに供給することにより当該ブロック管理メモリから前記消去回数データ片の各々を連続して読み出すステップと、
前記ブロック管理メモリから読み出された前記消去回数データ片各々のうちから最小の消去回数を示す消去回数データ片に対応したブロックを検索する最小消去回数検索ステップと、を有し、
前記最小消去回数検索ステップでは、前記ブロック管理メモリから読み出された前記消去回数データ片が最小消去回数データ片よりも小なる消去回数を示す場合に、当該消去回数データ片を前記最小消去回数データ片として出力すると共に前記読出アドレス信号によって示されるアドレスを最小消去回数アドレスとして出力することを特徴とする半導体メモリにおける消去回数の検索方法。
【請求項１１】
ブロックの単位でデータ消去を行う半導体メモリを有する半導体装置であって、
前記ブロックの各々に対応付けして当該ブロックで実施されたデータ消去の消去回数を示す消去回数データ片を記憶するブロック管理メモリと、
検索開始命令に応じて読出アドレス信号を生成し、当該読出アドレス信号を前記ブロック管理メモリに供給することにより当該ブロック管理メモリから前記消去回数データ片の各々を連続して読み出す読出アドレス生成回路と、
前記ブロック管理メモリから読み出された前記消去回数データ片各々のうちから所望の消去回数を示す消去回数データ片に対応したブロックを検索し、その検索結果を送信する消去回数検索回路と、を有することを特徴とする半導体装置。
【請求項１２】
前記検索開始命令を出力し、前記消去回数検索回路から前記検索結果を受信するＣＰＵを有することを特徴とする請求項１１に記載の半導体装置。
【請求項１３】
前記検索結果は、前記消去回数データ片各々のうちから所望の消去回数を示す消去回数データに対応したブロックの消去回数アドレスであることを特徴とする請求項１１又は１２に記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置、例えば半導体メモリを備えた半導体装置、及び半導体メモリにおけるデータの消去回数の検索方法に関する。
【背景技術】
【０００２】
データ書き換えが可能であり、電源を切ってもデータが消えない不揮発性の半導体メモリとしてフラッシュメモリがある。特にＮＡＮＤ型のフラッシュメモリでは、データの書き込みを行うにあたり、先ず、複数のメモリセルからなるブロック単位でデータの消去を行う。しかしながら、各ブロックで消去可能な回数には上限があるため、メモリ内の各ブロックに対して随時、消去回数の管理を行う必要がある。そこで、フラッシュメモリの各ブロックに対応付けしてそのブロックで実施された消去回数を示す消去回数データを記憶するＲＡＭ（Random Access Memory）と、このＲＡＭから消去回数データを読み出して消去回数が最小のブロックを検索する制御を行うＣＰＵと、を搭載した半導体記憶装置が提案されている（例えば特許文献１参照）。かかるＣＰＵは、読出命令を繰り返しＲＡＭに供給することにより各ブロック毎の消去回数データを１つずつ読み出しつつ、各ブロックの消去回数データ同士を大小比較することにより、消去回数が最も少ないブロックを消去対象として検索するようにしている。よって、ＣＰＵは、１ブロックに対応した消去回数データを読み出す読出制御と、消去回数データ同士を比較する比較制御とからなる一連の制御を、ＲＡＭに記憶されている全ての消去回数データの数の分だけ繰り返し実行することになる。しかしながら、ＣＰＵによってこれら読出制御及び比較制御を順次実行するには、各制御を指定する為の命令フェッチサイクルが介在することから、検索に多くの時間が費やされてしまうという問題があった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2008-123314号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、かかる問題を解決すべく為されたものであり、消去回数が最小のブロックを高速に検索することが可能な半導体装置、及び半導体メモリにおける消去回数の検索方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明に係る半導体装置は、ブロックの単位でデータ消去を行う半導体メモリを有する半導体装置であって、前記ブロックの各々に対応付けして当該ブロックで実施されたデータ消去の消去回数を示す消去回数データ片を記憶するブロック管理メモリと、検索開始命令に応じて読出アドレス信号を生成し、当該読出アドレス信号を前記ブロック管理メモリに供給することにより当該ブロック管理メモリから前記消去回数データ片の各々を連続して読み出す読出アドレス生成回路と、前記ブロック管理メモリから読み出された前記消去回数データ片各々のうちから最小の消去回数を示す消去回数データ片に対応したブロックを検索する最小消去回数検索回路と、を有し、前記最小消去回数検索回路は、前記ブロック管理メモリから読み出された前記消去回数データ片が最小消去回数データ片よりも小なる消去回数を示す場合に当該消去回数データ片を前記最小消去回数データ片として出力する第１ラッチと、前記ブロック管理メモリから読み出された前記消去回数データ片が前記最小消去回数データ片よりも小なる消去回数を示す場合に前記読出アドレス信号によって示されるアドレスを最小消去回数アドレスとして出力する第２ラッチと、を有する。
【０００６】
また、本発明に係る半導体装置は、ブロックの単位でデータ消去を行う半導体メモリを有する半導体装置であって、前記ブロックの各々に対応付けして当該ブロックで実施されたデータ消去の消去回数を示す消去回数データ片を記憶するブロック管理メモリと、検索開始命令に応じて読出アドレス信号を生成し、当該読出アドレス信号を前記ブロック管理メモリに供給することにより当該ブロック管理メモリから前記消去回数データ片の各々を連続して読み出す読出アドレス生成回路と、前記ブロック管理メモリから読み出された前記消去回数データ片各々のうちから所望の消去回数を示す消去回数データ片に対応したブロックを検索し、その検索結果を送信する消去回数検索回路と、を有する。
【０００７】
また、本発明に係る半導体メモリにおける消去回数の検索方法は、ブロックの単位でデータ消去を行う半導体メモリにおける消去回数の検索方法であって、前記ブロックの各々に対応付けして当該ブロックで実施されたデータ消去の消去回数を示す消去回数データ片をブロック管理メモリに記憶するステップと、検索開始命令に応じて読出アドレス信号を生成し、当該読出アドレス信号を前記ブロック管理メモリに供給することにより当該ブロック管理メモリから前記消去回数データ片の各々を連続して読み出すステップと、前記ブロック管理メモリから読み出された前記消去回数データ片各々のうちから最小の消去回数を示す消去回数データ片に対応したブロックを検索する最小消去回数検索ステップと、を有し、前記最小消去回数検索ステップでは、前記ブロック管理メモリから読み出された前記消去回数データ片が最小消去回数データ片よりも小なる消去回数を示す場合に、当該消去回数データ片を前記最小消去回数データ片として出力すると共に前記読出アドレス信号によって示されるアドレスを最小消去回数アドレスとして出力する。
【発明の効果】
【０００８】
本発明によれば、検索開始指令に応じて、消去回数が最小のブロックを検索し、この消去回数が最小となるブロックのアドレスを高速に出力することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明に係る半導体装置１００の内部構成と、この半導体装置１００に接続されるホスト装置２００を示すブロック図である。
【図２】検索開始データＳＴのデータフォーマットの一例を示す図である。
【図３】各ブロックのアドレスに対応付けしてＳＲＡＭ５に記憶される管理データＥＡＤ（属性データＡＴ、消去回数データＥＤ）の一例を示す図である。
【図４】読出アドレス生成回路６１において生成された読出アドレス信号ＲＤＡ、及び読出アドレス信号ＲＤＡに応じて連続してＳＲＡＭ５から読み出される、各ブロック毎の管理データＥＡＤの系列を示すタイムチャートである。
【図５】消去回数検索回路６の内部構成を示すブロック図である。
【図６】最小消去回数検索部６４の内部構成を示す回路図である。
【図７】最大消去回数検索部６３の内部構成を示す回路図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施例を図面を参照しつつ詳細に説明する。
【００１１】
図１は、本発明に係る半導体装置１００の内部構成と、この半導体装置１００に接続されるホスト装置２００とを示すブロック図である。ホスト装置２００は、自身の主動作の実行によって生成されたデータ片を記憶させるべく、書込命令及びアドレスデータを半導体装置１００に供給する。また、ホスト装置２００は、所望のデータ片を読み出すべき読出命令及びアドレスデータを半導体装置１００に供給することにより、かかる半導体装置１００に記憶されている所望のデータ片を読み出し、これを取得する。
【００１２】
半導体装置１００は、図１に示すように、半導体メモリとしての例えばＮＡＮＤ型のフラッシュメモリ１０１と、メモリコントローラ１０２と、を含む。メモリコントローラ１０２は、メモリ制御バス１に接続された、ホストＩＦ（interface）部２、ＣＰＵ（Central Processing Unit）３、メモリＩＦ（interface）部４、ＳＲＡＭ（Static Random Access Memory）５、及び消去回数検索回路６を含む。
【００１３】
ホストＩＦ部２は、ホスト装置１００から供給されたアドレスデータ、書込用のデータ片、コマンド（書込命令又は読出命令）をメモリ制御バス１に送出する。また、ホストＩＦ部２は、メモリ制御バス１及びメモリＩＦ部４を介してフラッシュメモリ１０１から読み出されたデータ片をホスト装置２００に供給する。
【００１４】
ＣＰＵ３は、メモリ制御バス１を介してホスト装置２００から供給されたアドレスデータ及び読出命令に応じて、そのアドレスデータによって示されるフラッシュメモリ１０１の各ページから所望データ片を読み出すべき読出信号をメモリＩＦ部４に供給する。
【００１５】
また、ＣＰＵ３は、メモリ制御バス１を介してホスト装置２００から供給されたアドレスデータ、書込用のデータ片及び書込命令に応じて、先ず、書き込み先となるブロックを選定すべく、図２に示す、スタートアドレスＡST、エンドアドレスＡED、及び検索対象設定データＳＣＳを含む検索開始データＳＴを消去回数検索回路６に供給する。尚、上記したブロックとは、フラッシュメモリ１０１においてデータ消去を行う際の最小単位となる、複数のメモリセルからなる領域である。上記した検索開始データＳＴに応じて消去回数検索回路６は、フラッシュメモリ１０１の全ブロックのうちから累積の消去回数が最小及び最大となるブロックを検索し、その消去回数が最小となるブロックのアドレス及び最大となるブロックのアドレスをＣＰＵ３に供給する。ＣＰＵ３は、これら消去回数が最小となるブロックのアドレス及び最大となるブロックのアドレスを内蔵レジスタ（図示せぬ）に保持する。そして、ＣＰＵ３は、消去回数が最小となるアドレスに対応したブロックをデータ書込先のブロックとして選定し、このブロックに対して先ず、データ消去処理を施すべき消去信号をメモリＩＦ部４に供給する。次に、ＣＰＵ３は、このデータ消去処理の施されたブロック内に、アドレスデータに対応付けした書込用のデータ片を書き込ませるべき書込信号をメモリＩＦ部４に供給する。引き続き、ＣＰＵ３は、ブロック毎の累積の消去回数を更新する消去回数更新処理を実行する。
【００１６】
また、ＣＰＵ３は、定期的に、書き換え頻度が高いブロック、つまり累積消去回数が多いブロックに記憶されているデータと、書き換え頻度が低いブロック、つまり累積消去回数が多いブロックに記憶されているデータとを互いに入れ替えるべきデータ入れ替え制御をメモリＩＦ部４を介してフラッシュメモリ１０１に施す。すなわち、ブロックの消去回数には上限がある為、消去回数が多いブロックは、消去回数が少ないブロックに比して早い時点で消去回数の上限に達してしまい、書き換え寿命の低下を招くことになる。そこで、ブロック毎の消去回数のバラツキを少なくすべく、ＣＰＵ３は、以下のようなデータ入れ替え制御をフラッシュメモリ１０１に対して施す。先ず、ＣＰＵ３は、上記したように検索された消去回数が最大のブロックに記憶されているデータ（第１データと称する）、及び累積消去回数が最小のブロックに記憶されているデータ（第２データと称する）を一旦、フラッシュメモリ１０１の空のブロックに書き込ませる。次に、ＣＰＵ３は、上記した消去回数最大のブロック及び消去回数最小のブロックに対してデータ消去処理を施す。そして、ＣＰＵ３は、消去回数最大のブロックに第２データを書き込ませると共に、消去回数最小のブロックに第１データを書き込ませるべき書き込み処理を行う。このようなデータ入れ替え制御を定期的に実行することにより、ブロック毎の消去回数のバラツキを抑え、フラッシュメモリ１０１の書き換え寿命を長くするのである。
【００１７】
メモリＩＦ部４は、ＣＰＵ３から供給された読出信号に応じて所望データ片を読み出すべき制御をフラッシュメモリ１０１に対して施し、この際、フラッシュメモリ１０１から読み出されたデータ片をメモリ制御バス１を介してホストＩＦ部２に供給する。また、メモリＩＦ部４は、ＣＰＵ３から供給された消去信号に応じて、この消去信号にて示されるブロックからデータを消去させるべき制御をフラッシュメモリ１０１に対して施す。更に、メモリＩＦ部４は、ＣＰＵ３から供給された書込信号に応じて、書込用のデータ片を書き込ませるべき制御をフラッシュメモリ１０１に対して施す。
【００１８】
ブロック管理メモリとしてのＳＲＡＭ５には、図３に示すように、フラッシュメモリ１０１の各ブロックのアドレスを示すアドレスデータＡＤに対応づけして、そのブロックに関するｎビット（ｎは２以上の自然数）の管理データＥＡＤを記憶する領域が設けられている。管理データＥＡＤは、そのブロックで実施されたデータ消去の累積消去回数（以下、単に消去回数と称する）を例えば２０ビットで表す消去回数データＥＤと、そのブロックの各種属性を例えば１２ビットで表す属性データＡＴを含む。ここで、消去回数データＥＤは、製品出荷時には全て「０」であり、その後、前述したようなデータ片の消去が為される度に、ＣＰＵ３が消去回数更新処理を実行することにより、消去対象となったブロックに対応した消去回数データＥＤだけを「１」だけインクリメントする。一方、属性データＡＴは、例えばそのブロックがデータ書き込み済みであるか否かを表す使用済情報、そのブロックが破壊されているか否かを表す破壊情報、及び／又はそのブロックに顧客データ等の消去不可な保護データが記憶されているか否かを表す保護情報等を含む各種属性情報を表すものである。ＳＲＡＭ５は、図４に示すように、消去回数検索回路６から供給された読出アドレス信号ＲＤＡに応じて、各ブロック毎の管理データＥＡＤを順次連続して読み出し、かかる管理データＥＡＤの系列を消去回数検索回路６に供給する。尚、読出アドレス信号ＲＤＡは、図４に示すように、フラッシュメモリ１０１の各ブロックに割り当てられているアドレスデータの系列からなる信号である。
【００１９】
図５は、消去回数検索回路６の内部構成を示すブロック図である。図５に示すように、消去回数検索回路６は、読出アドレス生成回路６１、検索対象設定データ抽出回路６２、最大消去回数検索部６３、最小消去回数検索部６４、クロック生成回路６５及びレジスタ６６を含む。
【００２０】
読出アドレス生成回路６１は、ＣＰＵ３から供給された検索開始データＳＴ中から図２に示すスタートアドレスＡST及びエンドアドレスＡEDを抽出する。尚、スタートアドレスＡSTは、フラッシュメモリ１０１の全ブロックのうちで最初に検索対象となるブロックのアドレスであり、エンドアドレスＡEDは、全ブロックのうちで最後に検索対象となるブロックのアドレスである。そして、読出アドレス生成回路６１は、図４に示すように、このスタートアドレスＡSTからエンドアドレスＡEDに向けて「１」ずつその値が増加するアドレスデータの系列を含む読出アドレス信号ＲＤＡを生成し、これを最大消去回数検索部６３及び最小消去回数検索部６４、並びにＳＲＡＭ５に夫々供給する。更に、読出アドレス生成回路６１は、スタートアドレスＡSTからエンドアドレスＡEDまでのアドレスデータの系列からなる読出アドレス信号ＲＤＡを生成している間に亘り、クロック生成回路６５をイネーブル状態に設定すべく、例えば図４に示す論理レベル１のイネーブル信号ＥＮをクロック生成回路６５に供給する。
【００２１】
検索対象設定データ抽出回路６２は、ＣＰＵ３から供給された検索開始データＳＴ中から図２に示す検索対象設定データＳＣＳを抽出する。検索対象設定データＳＣＳは、図２に示すように、消去回数有効ビットデータＥＳ、属性有効ビットデータＡＳ及び指定属性データＤＤからなる。消去回数有効ビットデータＥＳは、図３に示す管理データＥＡＤ内において消去回数データＥＤに該当するビット群だけを有効にする為のデータであり、管理データＥＡＤと同一ビット長を有する。例えば、図３に示すような３２ビットの管理データＥＡＤに対して、消去回数有効ビットデータＥＳは、管理データＥＡＤ内の消去回数データＥＤに該当する２０ビット分の各ビット桁だけを論理レベル１とした３２ビットのデータ［０００ＦＦＦＦＦｈ］である。属性有効ビットデータＡＳは、図３に示す管理データＥＡＤ内の属性データＡＴに該当するビット群だけを有効にする為のデータであり、管理データＥＡＤと同一ビット長を有する。例えば、図３に示すような３２ビットの管理データＥＡＤに対して、属性有効ビットデータＡＳは、管理データＥＡＤ内の属性データＡＴに該当する１２ビット分の各ビット桁だけを論理レベル１とした例えば３２ビットのデータ［ＦＦＦ０００００ｈ］である。指定属性データＤＤは、消去回数の検索対象とすべきブロックの属性内容を指定する為のものである。例えば、属性データＡＴが上記した使用済情報、破壊情報、及び保護情報等の属性項目をブロックの属性として表すことができる場合、指定属性データＤＤにより、これら属性項目のうちから、消去回数の検索対象とするブロックの属性として必要となるものだけ指定するのである。尚、属性有効ビットデータＡＳは、管理データＥＡＤと同一ビット長を有する。例えば、図３に示すような３２ビットの管理データＥＡＤに対して、指定属性データＤＤは、管理データＥＡＤ内の属性データＡＴに該当するビット桁にて、消去回数の検索対象とすべきブロックの属性データを指定する、例えば３２ビットのデータ［ＸＸＸ０００００ｈ］である。尚、「Ｘ」は０ｈ〜Ｆｈの任意の値である。
【００２２】
検索対象設定データ抽出回路６２は、検索開始データＳＴ中から抽出した検索対象設定データＳＣＳとしての上記消去回数有効ビットデータＥＳ、属性有効ビットデータＡＳ及び指定属性データＤＤを最大消去回数検索部６３及び最小消去回数検索部６４に供給する。
【００２３】
クロック生成回路６５は、読出アドレス生成回路６１から図４に示すイネーブル信号ＥＮが供給されている間だけ、図４に示す読出アドレス信号ＲＤＡにおけるアドレス系列の周期と等しいクロック周期を有するクロック信号ＣＬＫを生成し、これを最大消去回数検索部６３、最小消去回数検索部６４及びレジスタ６６に供給する。
【００２４】
レジスタ６６は、ＳＲＡＭ５から読み出された、各ブロック毎の管理データＥＡＤの系列をクロック信号ＣＬＫに同期して順次取り込んで記憶しつつ、記憶した管理データＥＡＤを最大消去回数検索部６３及び最小消去回数検索部６４に供給する。
【００２５】
図６は、最小消去回数検索部６４の内部構成を示す回路図である。図６に示すように、最小消去回数検索部６４は、検索除外回路６４０、比較器６４１、セレクタ６４２、６４３、Ｄフリップフロップ（以下、ＤＦＦと称する）６４４及び６４５を含む。
【００２６】
検索除外回路６４０は、ＡＮＤ（論理積）ゲート群Ｑ１、ＯＲ（論理和）ゲート群Ｑ２、ＡＮＤゲート群Ｑ３及びＱ４、ＥＸＯＲ（排他的論理和）ゲートＱ５からなる。ＡＮＤゲート群Ｑ１は、ｎビット（ｎは２以上の自然数）の消去回数有効ビットデータＥＳのビット長と同数のｎ個の２入力ＡＮＤゲートからなり、ＥＳ及びＥＡＤ各々の同一ビット桁同士の論理積を求める。これにより、ＡＮＤゲート群Ｑ１は、管理データＥＡＤ中から消去回数データＥＤを抽出し、この消去回数データＥＤをｎビットで表す消去回数データｄ１をＯＲゲート群Ｑ２に供給する。ＡＮＤゲート群Ｑ３は、ｎ個の２入力ＡＮＤゲートからなり、属性有効ビットデータＡＳ及び管理データＥＡＤ各々の同一ビット桁同士の論理積を求める。これにより、ＡＮＤゲート群Ｑ３は、管理データＥＡＤ中から属性データＡＴを抽出し、この属性データＡＴをｎビットで表す属性データｄ２をＥＸＯＲゲートＱ５に供給する。ＡＮＤゲート群Ｑ４は、ｎ個の２入力ＡＮＤゲートからなり、属性有効ビットデータＡＳ及び指定属性データＤＤ各々の同一ビット桁同士の論理積を求める。これにより、ＡＮＤゲート群Ｑ４は、指定属性データＤＤ中における、属性有効ビットデータＡＳにて有効指定されたビット群からなる指定属性データをｎビットで表す指定属性データｄ３を、ＥＸＯＲゲートＱ５に供給する。ＥＸＯＲゲートＱ５は、上記した属性データｄ２と指定属性データｄ３とが同一である場合には消去回数データｄ１を検索対象とすべき論理レベル０の検索除外信号ｄ４をＯＲゲート群Ｑ２に供給する。一方、属性データｄ２と指定属性データｄ３とが互いに異なる場合には、ＥＸＯＲゲートＱ５は、消去回数データｄ１を検索対象から除外すべき論理レベル１の検索除外信号ｄ４をＯＲゲート群Ｑ２に供給する。ＯＲゲート群Ｑ２は、ｎビットの消去回数データｄ１の各ビットに対応したｎ個の２入力ＯＲゲートからなり、消去回数データｄ１の各ビットと検索除外信号ｄ４との論理和を求める。これにより、ＯＲゲート群Ｑ２は、検索除外信号ｄ４が論理レベル０である場合には、消去回数データｄ１をそのままｎビットの消去回数データＦｎとして生成する。一方、検索除外信号ｄ４が論理レベル１である場合には、ＯＲゲート群Ｑ２は、消去回数データｄ１を検索対象から除外すべく、全ビットが論理レベル１の消去回数データＦｎを生成する。ＯＲゲート群Ｑ２は、かかる消去回数データＦｎを、比較器６４１及びセレクタ６４２に夫々供給する。
【００２７】
かかる構成により、検索除外回路６４０は、ＳＲＡＭ５から読み出された管理データＥＡＤ中から消去回数データＥＤを抽出し、この消去回数データＥＤをｎビットで表す消去回数データＦｎを出力する。ただし、管理データＥＡＤに含まれている属性データＡＴが、指定属性データＤＤにて指定された属性データと異なる場合には、検索除外回路６４０は、この管理データＥＡＤに対応したブロックを最小消去回数の検索対象から除外すべく、全ビットが論理レベル１、つまり消去回数データＦｎとして表現可能な最大の消去回数を示す消去回数データＦｎを出力する。また、検索除外回路６４０では、属性有効ビットデータＡＳ及び消去回数有効ビットデータＥＳを用いることにより、管理データＥＡＤ中から属性データＡＴ及び消去回数データＥＤを分離抽出している。これにより、搭載されるフラッシュメモリ１０１の仕様に基づき属性データＡＴ及び消去回数データＥＤのビット長が変わる場合にも、管理データＥＡＤ中から属性データＡＴ及び消去回数データＥＤを分離抽出することが可能となる。
【００２８】
比較器６４１は、かかる消去回数データＦｎと、ＤＦＦ６４４から供給された最小消去回数データＦMINとの大小比較を行ってその大小比較結果を示す比較結果信号ＣＭ１を生成し、これをセレクタ６４２及び６４３に供給する。すなわち、比較器６４１は、最小消去回数データＦMINよりも消去回数データＦｎの方が小である場合には論理レベル１を有する比較結果信号ＣＭ１を生成する一方、消去回数データＦｎが最小消去回数データＦMIN以上である場合には論理レベル０を有する比較結果信号ＣＭ１を生成する。セレクタ６４２は、比較結果信号ＣＭ１が論理レベル１、つまり最小消去回数データＦMINよりも消去回数データＦｎの方が小であることを示す場合には、上記した消去回数データＦｎ及び最小消去回数データＦMINのうちから消去回数データＦｎを選択し、これをＤＦＦ６４４に供給する。一方、比較結果信号ＣＭ１が論理レベル０、つまり消去回数データＦｎが最小消去回数データＦMIN以上であることを示す場合には、セレクタ６４２は、最小消去回数データＦMINの方を選択し、これをＤＦＦ６４４に供給する。ＤＦＦ６４４は、セレクタ６４２から供給された消去回数データＦｎ又は最小消去回数データＦMINをクロック信号ＣＬＫに同期して取り込んで記憶し、これを、現時点までに検索した消去回数データのうちで最も小なる最小消去回数データＦMINとして比較器６４１及びセレクタ６４２に供給する。
【００２９】
すなわち、上記した比較器６４１、セレクタ６４２及びＤＦＦ６４４からなる第１ラッチは、ブロック管理メモリとしてのＳＲＡＭ５から読み出された消去回数データＦｎが最小消去回数データＦMINよりも小なる消去回数を示す場合に、当該消去回数データＦｎを取り込んで保持しこれを新たな最小消去回数データＦMINとして出力する。
【００３０】
セレクタ６４３は、比較結果信号ＣＭ１が論理レベル１、つまり最小消去回数データＦMINより消去回数データＦｎの方が小であることを示す場合には、読出アドレス生成回路６１から供給された読出アドレス信号ＲＤＡにて示されるアドレス、及びＤＦＦ６４５から供給された最小消去回数アドレスＡMINのうちから、読出アドレス信号ＲＤＡにて示されるアドレスを選択し、これをＤＦＦ６４５に供給する。一方、比較結果信号ＣＭ１が論理レベル０、つまり消去回数データＦｎが最小消去回数データＦMIN以上であることを示す場合には、セレクタ６４３は、最小消去回数アドレスＡMINの方を選択しこれをＤＦＦ６４５に供給する。ＤＦＦ６４５は、セレクタ６４３から供給されたアドレスをクロック信号ＣＬＫに同期して取り込んで記憶し、これを、現時点までに検索した消去回数データのうちで最も小なる消去回数データに対応したブロックの最小消去回数アドレスＡMINとして、メモリ制御バス１を介してＣＰＵ３に供給する。
【００３１】
すなわち、上記した比較器６４１、セレクタ６４３及びＤＦＦ６４５からなる第２ラッチは、ブロック管理メモリとしてのＳＲＡＭ５から読み出された消去回数データＦｎが最小消去回数データＦMINよりも小なる消去回数を示す場合に、読出アドレス信号ＲＤＡにて示されるアドレスを取り込んで保持しこれを新たな最小消去回数アドレスＡMINとして出力する。
【００３２】
かかる構成により、比較器６４１、セレクタ６４２、６４３、ＤＦＦ６４４及びＤＦＦ６４５からなる最小消去回数検索回路は、まず、検索除外回路６３０から送出された各ブロックに対応した消去回数データＦｎの系列と、各ブロックのアドレスの系列からなる読出アドレス信号ＲＤＡとを同時に受ける。この際、最小消去回数検索回路は、各ブロックに対応した消去回数データＦｎを受ける度に、この消去回数データＦｎと、現時点までに検索された最小消去回数データＦMINとの大小比較を行い、小なる方を新たな最小消去回数データＦMINとする。最小消去回数検索回路は、かかる一連の処理を、図４に示すスタートアドレスＡSTからエンドアドレスＡEDまでの各アドレスに対応した消去回数データＦｎの各々に対して実行する。この際、エンドアドレスＡEDに対応した消去回数データＦｎに対する処理が終了した時点で得られた最小消去回数アドレスＡMINが、検索対象となった全ブロックの内で最も消去回数が少ないブロックを示すアドレスとなる。
【００３３】
図７は、最大消去回数検索部６３の内部構成を示す回路図である。図７に示すように、最大消去回数検索部６３は、検索除外回路６３０、比較器６３１、セレクタ６３２、６３３、ＤＦＦ６３４及び６３５を含む。
【００３４】
検索除外回路６３０は、ＡＮＤ（論理積）ゲート群Ｇ１〜Ｇ４及びＥＸＮＯＲ（否定排他的論理和）ゲートＧ５からなる。ＡＮＤゲート群Ｇ１は、ｎビットの消去回数有効ビットデータＥＳのビット長と同数のｎ個の２入力ＡＮＤゲートからなり、ＥＳ及びＥＡＤ各々の同一ビット桁同士の論理積を求める。これにより、ＡＮＤゲート群Ｇ１は、管理データＥＡＤ中から消去回数データＥＤを抽出し、この消去回数データＥＤをｎビットで表す消去回数データｃ１をＡＮＤゲート群Ｇ２に供給する。ＡＮＤゲート群Ｇ３は、ｎ個の２入力ＡＮＤゲートからなり、属性有効ビットデータＡＳ及び管理データＥＡＤ各々の同一ビット桁同士の論理積を求める。これにより、ＡＮＤゲート群Ｇ３は、管理データＥＡＤ中から属性データＡＴを抽出し、この属性データＡＴをｎビットで表す属性データｃ２をＥＸＮＯＲゲートＧ５に供給する。ＡＮＤゲート群Ｇ４は、ｎ個の２入力ＡＮＤゲートからなり、属性有効ビットデータＡＳ及び指定属性データＤＤ各々の同一ビット桁同士の論理積を求める。これにより、ＡＮＤゲート群Ｇ４は、指定属性データＤＤ中における、属性有効ビットデータＡＳにて有効指定されたビット群からなる指定属性データをｎビットで表す指定属性データｃ３を、ＥＸＮＯＲゲートＧ５に供給する。ＥＸＮＯＲゲートＧ５は、上記した属性データｃ２と指定属性データｃ３とが同一である場合には消去回数データｃ１を検索対象とすべき論理レベル１の検索除外信号ｃ４をＡＮＤゲート群Ｇ２に供給する。一方、属性データｃ２と指定属性データｃ３とが互いに異なる場合には、ＥＸＮＯＲゲートＧ５は、消去回数データｃ１を検索対象から除外すべき論理レベル０の検索除外信号ｃ４をＡＮＤゲート群Ｇ２に供給する。ＡＮＤゲート群Ｇ２は、ｎビットの消去回数データｃ１の各ビットに対応したｎ個の２入力ＡＮＤゲートからなり、消去回数データｃ１の各ビットと検索除外信号ｃ４との論理積を求める。これにより、ＡＮＤゲート群Ｇ２は、検索除外信号ｃ４が論理レベル１である場合には、消去回数データｃ１をそのままｎビットの消去回数データＥｎとして生成する。一方、検索除外信号ｃ４が論理レベル０である場合には、ＡＮＤゲート群Ｇ２は、消去回数データｃ１を検索対象から除外すべく、全ビットが論理レベル０の消去回数データＥｎを生成する。ＡＮＤゲート群Ｇ２は、かかる消去回数データＥｎを、比較器６３１及びセレクタ６３２に夫々供給する。
【００３５】
かかる構成により、検索除外回路６３０は、ＳＲＡＭ５から読み出された管理データＥＡＤ中から消去回数データＥＤを抽出し、この消去回数データＥＤをｎビットで表す消去回数データＥｎを出力する。ただし、管理データＥＡＤに含まれている属性データＡＴが、指定属性データＤＤにて指定された属性データと異なる場合には、検索除外回路６３０は、この管理データＥＡＤに対応したブロックを最大消去回数の検索対象から除外すべく、全ビットが論理レベル０、つまり消去回数データＥｎとして表現可能な最小の消去回数を示す消去回数データＥｎを出力する。また、検索除外回路６３０では、属性有効ビットデータＡＳ及び消去回数有効ビットデータＥＳを用いることにより、管理データＥＡＤ中から属性データＡＴ及び消去回数データＥＤを分離抽出している。これにより、搭載されるフラッシュメモリ１０１の仕様によって属性データＡＴ及び消去回数データＥＤのビット長が変わる場合にも、管理データＥＡＤ中から属性データＡＴ及び消去回数データＥＤを分離抽出することが可能となる。
【００３６】
比較器６３１は、かかる消去回数データＥｎと、ＤＦＦ６３４から供給された最大消去回数データＥMAXとの大小比較を行ってその大小比較結果を示す比較結果信号ＣＭ２を生成し、これをセレクタ６３２及び６３３に供給する。すなわち、比較器６３１は、消去回数データＥｎが最大消去回数データＥMAXよりも大なる場合には論理レベル１を有する比較結果信号ＣＭ２を生成する一方、消去回数データＥｎが最大消去回数データＥMAX以下の消去回数を示す場合には論理レベル０を有する比較結果信号ＣＭ２を生成する。セレクタ６３２は、比較結果信号ＣＭ２が論理レベル１、つまり最大消去回数データＥMAXよりも消去回数データＥｎの方が大であることを示す場合には、上記した消去回数データＥｎ及び最大消去回数データＥMAXのうちから消去回数データＥｎを選択しこれをＤＦＦ６３４に供給する。一方、比較結果信号ＣＭ２が論理レベル０、つまり消去回数データＥｎが最大消去回数データＥMAX以下であることを示す場合には、セレクタ６３２は、最大消去回数データＥMAXの方を選択し、これをＤＦＦ６３４に供給する。ＤＦＦ６３４は、セレクタ６３２から供給された消去回数データＥｎ又は最大消去回数データＥMAXをクロック信号ＣＬＫに同期して取り込んで記憶し、これを、現時点までに検索した消去回数データのうちで最も大なる最大消去回数データＥMAXとして比較器６３１及びセレクタ６３２に供給する。
【００３７】
すなわち、上記した比較器６３１、セレクタ６３２及びＤＦＦ６３４からなる第３ラッチは、ブロック管理メモリとしてのＳＲＡＭ５から読み出された消去回数データＥｎが最大消去回数データＥMAXよりも大なる消去回数を示す場合に、当該消去回数データＥｎを取り込んで保持しこれを新たな最大消去回数データＥMAXとして出力する。
【００３８】
セレクタ６３３は、比較結果信号ＣＭ２が論理レベル１、つまり最大消去回数データＥMAXよりも消去回数データＥｎの方が大であることを示す場合には、上記した読出アドレス信号ＲＤＡにて示されるアドレス、及びＤＦＦ６３５から供給された最大消去回数アドレスＡMAXのうちから、読出アドレス信号ＲＤＡにて示されるアドレスを選択し、これをＤＦＦ６３５に供給する。一方、比較結果信号ＣＭ２が論理レベル０、つまり消去回数データＥｎが最大消去回数データＥMAX以下であることを示す場合には、セレクタ６３３は、最大消去回数アドレスＡMAXの方を選択しこれをＤＦＦ６３５に供給する。ＤＦＦ６３５は、セレクタ６３３から供給されたアドレスをクロック信号ＣＬＫに同期して取り込んで記憶し、これを、現時点までに検索した消去回数データのうちで最も大なる消去回数データに対応したブロックの最大消去回数アドレスＡMAXとして、メモリ制御バス１を介してＣＰＵ３に送出する。
【００３９】
すなわち、上記した比較器６３１、セレクタ６３３及びＤＦＦ６３５からなる第４ラッチは、ブロック管理メモリとしてのＳＲＡＭ５から読み出された消去回数データＥｎが最大消去回数データＥMAXよりも大なる消去回数を示す場合に、読出アドレス信号ＲＤＡにて示されるアドレスを取り込んで保持しこれを新たな最大消去回数アドレスＡMAXとして出力する。
【００４０】
かかる構成により、比較器６３１、セレクタ６３２、６３３、ＤＦＦ６３４及びＤＦＦ６３５からなる最大消去回数検索回路は、まず、検索除外回路６３０から送出された各ブロックに対応した消去回数データＥｎの系列と、各ブロックのアドレスデータの系列からなる読出アドレス信号ＲＤＡとを同時に受ける。この際、最大消去回数検索回路は、１ブロックに対応した消去回数データＥｎを受ける度に、この消去回数データＥｎと、現時点までに検索された最大消去回数データＥMAXとの大小比較を行い、大なる方を新たな最大消去回数データＥMAXとする。最大消去回数検索回路は、かかる一連の処理を、図４に示すスタートアドレスＡSTからエンドアドレスＡEDまでの各アドレスに対応した消去回数データＥｎの各々に対して実行する。この際、エンドアドレスＡEDに対応した消去回数データＥｎに対する処理が終了した時点で得られた最大消去回数アドレスＡMAXが、検索対象となった全ブロックの内で最も消去回数が多いブロックを示すアドレスとなる。
【００４１】
尚、図３に示す一例では、管理データＥＡＤ、属性データＡＴ及び消去回数データＥＤ各々のビット長を夫々３２ビット、１２ビット及び２０ビットとしているが、各データのビット長は上記したビット長に限定されない。
【００４２】
また、上記実施例では、最大消去回数検索部６３及び最小消去回数検索部６４を共に動作させているが、最大消去回数検索部６３だけ、或いは必要に応じていずれか一方のみを動作させるようにしても良い。
【００４３】
また、上記実施例では、最小消去回数検索部６４の比較器６４１は、最小消去回数データＦMINよりも消去回数データＦｎの方が小である場合には論理レベル１、消去回数データＦｎが最小消去回数データＦMIN以上である場合には論理レベル０の比較結果信号ＣＭ１を生成するようにしているが、比較結果信号ＣＭ１の出力レベルはこれに限定されない。要するに、比較器６４１は、最小消去回数データＦMINよりも消去回数データＦｎの方が小である場合には第の１レベルを有する比較結果信号ＣＭ１を生成する一方、消去回数データＦｎが最小消去回数データＦMIN以上である場合には第１のレベルとは異なる第２レベルの比較結果信号ＣＭ１を生成するものであれば良い。また、最大消去回数検索部６３の比較器６３１は、最大消去回数データＥMAXよりも消去回数データＥｎの方が大である場合には論理レベル１、消去回数データＥｎが最大消去回数データＥMAX以上である場合には論理レベル０の比較結果信号ＣＭ２を生成するようにしているが、比較結果信号ＣＭ２の出力レベルはこれに限定されない。要するに、比較器６３１は、最大消去回数データＥMAXよりも消去回数データＥｎの方が大である場合には第１のレベルを有する比較結果信号ＣＭ２を生成する一方、消去回数データＥｎが最大消去回数データＥMAX以上である場合には第１のレベルとは異なる第２のレベルを有する比較結果信号ＣＭ２を生成するものであれば良いのである。
【００４４】
以上のように、本発明に係る半導体装置１００は、半導体メモリ（１０１）のデータ消去単位であるブロックの各々に対応付けして累積の消去回数を示す消去回数データ片（ＥＤ）が記憶されているブロック管理メモリ（５）から、以下のように、最小の消去回数を示す消去回数データ片（ＦMIN）に対応したブロックのアドレス（ＡMIN）を検索する。先ず、読出アドレス生成回路（６１）が、検索開始命令に応じて、ブロック各々のアドレスの系列からなる読出アドレス信号（ＲＤＡ）を生成し、当該読出アドレス信号をブロック管理メモリに供給することにより、ブロック管理メモリから消去回数データ片（Ｆｎ）の系列を読み出す。ここで、第１ラッチ（６４１、６４２、６４４）は、ブロック管理メモリから読み出された消去回数データ片が最小消去回数データ片（ＦMIN）よりも小なる消去回数を示す場合に当該消去回数データ片を取り込んで保持しこれを新たな最小消去回数データ片とする。そして、第２ラッチ（６４３、６４５）が、ブロック管理メモリから読み出された消去回数データ片が最小消去回数データ片よりも小なる消去回数を示す場合に、上記した読出アドレス信号を取り込んで保持し当該読出アドレス信号によって示されるアドレスを最小消去回数アドレス（ＡMIN）として出力するのである。
【００４５】
かかる構成によれば、ブロック管理メモリからバースト状に連続して読み出した各ブロック毎の消去回数データ片の系列中から、命令フェッチサイクルを介在させることなく、最小の消去回数を示す消去回数データ片に対応したブロックを検索することが可能となる。また、消去回数検索回路内で消去回数検索を行うため、ＣＰＵが検索開始命令を出してから、その検索結果をＣＰＵへ送信されるまでの処理時間が短くなり、高速で検索することが可能となる。特に、ＣＰＵからの検索開始命令が連続して複数出された場合にも、順次検索結果をＣＰＵに供給することが可能となる。これにより、装置に負荷をかけることなく、応答までの処理時間が短縮されるので、高速検索が可能となる。
【００４６】
よって、本発明に係る半導体装置によれば、ＮＡＮＤ型フラッシュメモリ等の不揮発性の半導体メモリにおいてデータ消去の単位となるブロックのうちから、消去回数が最小のブロックを高速に検索することが可能となる。
【００４７】
また、半導体装置１００によると、図３に示すように、最小消去回数検索回路６４と共に、消去回数が最大のブロックを検索する最大消去回数検索部６３を設けた場合でも、両検索回路（６３、６４）を同時に動作させることができる。よって、消去回数が最大のブロックを示すアドレス（ＡMAX）と、消去回数が最小のブロックを示すアドレス（ＡMIN）とを同時に取得できるので、その後、直ちにＣＰＵは、消去回数が最大のブロックに記憶されているデータと、消去回数が最小のブロックに記憶されているデータとを互いに入れ替えるべきデータ入れ替え制御の実行に移行することが可能となる。
【００４８】
また、最小消去回数検索部６４及び最大消去回数検索部６３及び内には、全ブロックのうちから、指定属性データＤＤにて指定した属性内容を有するもの以外を検索対象から除外する検索除外回路（６４０、６３０）が設けられている。これにより、例えば消去保護されているブロック、破壊されているブロック等を最初から検索対象から外すことができるので、このような実質的に消去不可なブロックが最大又は最小のブロックとして検索されてしまったが故に生じる検索処理のやり直しを防ぐことができる。
【００４９】
尚、上記実施例では、最大消去回数検索部６３及び最小消去回数検索部６４において、消去回数が最大のブロック及び消去回数が最小のブロックを検索するようにしているが、最大、最小に限らず、消去回数が所定数より多いブロック及び消去回数が所定数より少ないブロックを検索させるようにしても良い。すなわち、例えば第２番目に消去回数が少ない（又は多い）ブロック、或いは第３番目に消去回数が少ない（又は多い）ブロックを検索するような構成であっても良い。
【００５０】
また、上記実施例では、ホスト装置２００から供給されたデータ書込命令に応じて、ＣＰＵ３が検索動作を開始させるべき検索開始データＳＴを消去回数検索回路６に供給するようにしているが、検索開始データＳＴを定期的に消去回数検索回路６に供給するようにしても良い。また、書込命令以外の他の命令に応じて、検索開始データＳＴを消去回数検索回路６に供給するようにしても良い。
【００５１】
また、上記実施例では、図３に示すような属性データＡＴに対して、属性有効ビットデータＡＳを、この属性データＡＴに対応した各ビット桁を全て有効とすべき論理レベル１としているが、属性有効ビットデータＡＳにて有効にするビット長は属性データＡＴのビット長より短くても良く、また有効にするビット桁は連続していなくても良い。同様に、消去回数データＥＤに対して、消去回数有効ビットデータＥＳによって有効にするビット長は消去回数データＥＤのビット長より短くても良く、また有効にするビット桁は連続していなくても良い。
【００５２】
また、上記実施例では、ＣＰＵから供給された検索開始データに対する検索結果として消去回数検索回路が出力する最小消去回数ブロックのアドレスＡＭＩＮとしては、検索結果が出次第、これをＣＰＵへ送信しても良いし、或いはＣＰＵからの検索結果回収指示に応じて送信するようにしても良い。
【００５３】
また、上記実施例では、消去回数検索回路６は、ブロック管理メモリから読み出された消去回数データ片各々のうちから最小又は最大の消去回数を示す消去回数データ片に対応したブロックを検索するようにしているが、検索対象とする消去回数はこれらに限定されない。つまり、消去回数検索回路としては、前述したようにブロック管理メモリから連続して読み出した消去回数データ片各々のうちから、予め指定しておいた所望の消去回数を示す消去回数データ片を検索し、その消去回数データ片に対応したブロックのアドレスをＣＰＵに供給するものであっても良い。従って、本発明に係る半導体装置としては、ブロックの各々に対応付けして当該ブロックで実施されたデータ消去の消去回数を示す消去回数データ片を記憶するブロック管理メモリと、検索開始命令に応じて読出アドレス信号を生成し、当該読出アドレス信号をブロック管理メモリに供給することにより当該ブロック管理メモリから消去回数データ片の各々を連続して読み出す読出アドレス生成回路と、ブロック管理メモリから読み出された消去回数データ片各々のうちから所望の消去回数を示す消去回数データ片に対応したブロックを検索し、その検索結果を送信する消去回数検索回路と、を有するものであれば良いのである。
【符号の説明】
【００５４】
３              ＣＰＵ
５              ＳＲＡＭ
６              消去回数検索回路
６１            読出アドレス生成回路
６３            最大消去回数検索部
６４            最小消去回数検索部
630、640          検索除外回路
631、641          比較器
632、633、642、643  セレクタ
【図１】
2015069542.tif 000003
【図２】
2015069542.tif 000004
【図３】
2015069542.tif 000005
【図４】
2015069542.tif 000006
【図５】
2015069542.tif 000007
【図６】
2015069542.tif 000008
【図７】
2015069542.tif 000009