(57)【特許請求の範囲】
【請求項１】
規定容量の均等ブロックと、該均等ブロックとは容量が異なるブートブロックまたはパラメータブロックとを含むブートブロックフラッシュメモリとホストシステムの間に介在し、
ブートブロックフラッシュメモリに対して、ホストシステムから消去コマンドおよびアドレスが発行されたときに、そのアドレスがブートブロックまたはパラメータブロックを指定していることを検出し、
ホストシステムからの１回の消去コマンドにより複数のブートブロックまたは複数のパラメータブロックの消去を行うように、ブートブロックフラッシュメモリに対して消去コマンドおよびブートブロックのアドレスを出力し、
複数のブートブロックまたは複数のパラメータブロックを消去する際に、前記均等ブロックの容量と等しくなるように複数個を組み合わせて消去を行う、ブートブロックフラッシュメモリ制御回路。
【請求項２】
複数のブートブロックまたは複数のパラメータブロックを消去している間に、均等ブロック１個を消去しているときと同様なＲＥＡＤＹ信号および動作ステータス信号をホストシステムに対して出力する請求項１に記載のブートブロックフラッシュメモリ制御回路。
【請求項３】
ホストシステムから入力されたアドレスに基づいて、ブートブロックまたはパラメータブロックが指定されていることを検出するブートブロックアドレス検出回路と、
該ブートブロックアドレス検出回路からの出力、ホストシステムから入力されたデータおよび制御信号に基づいて、消去コマンドが入力されているか否かを検出するコマンド検出回路と、
該コマンド検出回路からの出力およびブートブロックフラッシュメモリからの制御信号に基づいて、ブートブロックフラッシュメモリに対してブートブロックのアドレスおよび消去コマンドを出力するアドレス＆コマンド発生回路と、
複数のブートブロックを消去している間、連続して消去状態を示す信号をホストシステムに対して出力するＲＥＡＤＹ信号＆ステータス信号制御回路とを有する請求項１または請求項２に記載のブートブロックフラッシュメモリ制御回路。
【請求項４】
外部とのインターフェースＩＣに請求項１乃至請求項３のいずれかに記載のブートブロックフラッシュメモリ制御回路を備えているＩＣメモリカード。
【請求項５】
フラッシュメモリに存在する全てのブートブロックおよび全てのパラメータブロックが、均等ブロックとして動作する場合に、ホストシステムがアクセスする可能性の低いアドレス領域に連続して集中デコードされるように、全てのブートブロックおよび全てのパラメータブロックのアドレスが最終アドレス部に設定されている請求項４に記載のＩＣメモリカード。
【請求項６】
フラッシュメモリに存在するブートブロックおよびパラメータブロックがホストシステムからアクセスされないように、ホストシステムから入力されたアドレスに対して、ブートブロックブロック部およびパラメータブロックブロック部を削除してデコードする請求項４に記載のＩＣメモリカード。
【請求項７】
請求項１乃至請求項３のいずれかに記載のブートブロックフラッシュメモリ制御回路を備えている半導体記憶装置。
【請求項８】
請求項１乃至請求項３のいずれかに記載のブートブロックフラッシュメモリ制御回路を用いてブートブロックフラッシュメモリを消去する方法であって、
ホストシステムからブートブロックまたはパラメータブロックに対応するアドレスが前記ブートブロックアドレス検出回路に入力されたときに、該ブートブロックアドレス検出回路からアクティブな信号を出力し、
該ブートブロックアドレス検出回路からアクティブな信号が前記コマンド検出回路に入力され、かつ、ホストシステムから消去動作を指示するデータと制御信号とが該コマンド検出回路に入力されたときに、該コマンド検出回路から消去コマンドが入力されていることを示す信号を出力し、
該コマンド検出回路から消去コマンドが入力されていることを示す信号が前記アドレス＆コマンド発生回路に入力され、かつ、該ブートブロックフラッシュメモリから制御信号が該アドレス＆コマンド発生回路に入力されたときに、該アドレス＆コマンド発生回路から該ブートブロックフラッシュメモリに対してブートブロックのアドレスおよび消去コマンドを出力し、
複数のブートブロックが消去されている間、前記ＲＥＡＤＹ信号＆ステータス信号制御回路から連続して消去状態を示す信号を出力するブートブロックフラッシュメモリの消去方法。
【請求項９】
ホストシステムから入力されるアドレスに関わらずに、個々のブートブロックまたは個々のパラメータブロックの消去を禁止するようにデコードする請求項８に記載のブートブロックフラッシュメモリの消去方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ブートブロックフラッシュメモリを利用するＩＣメモリカード等の半導体記憶装置、およびそれに用いられるブートブロックフラッシュメモリ制御回路並びにブートブロックフラッシュメモリの消去方法に関する。
【０００２】
【従来の技術】
従来、フラッシュメモリを記憶媒体とするＩＣメモリカードにおいては、図１２（ａ）に示すように、各ブロックが規定容量（例えば６４ｋバイト）を有する均等ブロックフラッシュメモリを採用しているものが大多数を占めている。このため、従来のＩＣメモリカード応用機器では、均等ブロックフラッシュメモリを採用したＩＣメモリカードを想定したカード制御ソフトウェアが組み込まれている。この場合、ブートブロックフラッシュメモリを採用したＩＣメモリカードについては考慮されていない。
【０００３】
従って、市場に出回っている大多数の機器は、カード制御ソフトウェアの更新が不可能であり、均等ブロックフラッシュメモリを採用したＩＣメモリカードしか利用することができないという問題がある。
【０００４】
さらに、均等ブロックとは異なる容量を有するブートブロックを含むブートブロックフラッシュメモリを採用したＩＣメモリカードは、図１２（ｂ）に示すように、各社毎にブートブロックのサイズ（容量）が異なる。このため、専用のデータ書き換え処理プログラムが必要となり、汎用的に使用することができない。
【０００５】
従って、汎用性のあるＩＣメモリカードを実現するためには、均等ブロックフラッシュメモリが必要であった。
【０００６】
そこで、例えば特開平６−１１９２３０号公報においては、図１３（ａ）および図１３（ｂ）に示すように、ブートブロックモードと均等ブロックモードとを切り換えて、均等ブロックとブートブロックとを使用可能としたフラッシュメモリが提案されている。
【０００７】
これに対して、特開平１０−２４１３７７号公報には、ブートブロックフラッシュメモリにおいて、均等ブロックおよび変則ブロックのセルを指定するために同じアドレスカウンタを用い、回路規模の縮小を図った半導体記憶装置が提案されている。
【０００８】
【発明が解決しようとする課題】
しかしながら、上述した特開平６−１１９２３０号公報の技術では、ブートブロックと均等ブロックの両方をチップ上に設けているため、チップ面積が増大し、コストアップの要因となるという問題がある。
【０００９】
また、特開平１０−２４１３７７号公報の技術では、消去されるブロックサイズに変更が無いため、ブートブロック部を均等ブロックとして動作させることはできない。
【００１０】
本発明はこのような従来技術の課題を解決するためになされたものであり、フラッシュメモリ単体でのチップ面積の増大を避けることができ、ブートブロックフラッシュメモリにおいてブートブロック部を均等ブロックとして動作させて、従来のカード応用機器においても利用可能な均等ブロックフラッシュメモリと同等機能を有する汎用性のあるＩＣメモリカードを実現することができるブートブロックフラッシュメモリ制御回路およびそれを用いたＩＣメモリカードと半導体記憶装置並びにブートブロックフラッシュメモリの消去方法を提供することを目的とする。
【００１１】
【課題を解決するための手段】
本発明のブートブロックフラッシュメモリ制御回路は、規定容量の均等ブロックと、該均等ブロックとは容量が異なるブートブロックまたはパラメータブロックとを含むブートブロックフラッシュメモリとホストシステムの間に介在し、ブートブロックフラッシュメモリに対して、ホストシステムから消去コマンドおよびアドレスが発行されたときに、そのアドレスがブートブロックまたはパラメータブロックを指定していることを検出し、ホストシステムからの１回の消去コマンドにより複数のブートブロックまたは複数のパラメータブロックの消去を行うように、ブートブロックフラッシュメモリに対して消去コマンドおよびブートブロックのアドレスを出力し、複数のブートブロックまたは複数のパラメータブロックを消去する際に、前記均等ブロックの容量と等しくなるように複数個を組み合わせて消去を行うものであり、そのことにより上記目的が達成される。
【００１３】
本発明のブートブロックフラッシュメモリ制御回路は、複数のブートブロックまたは複数のパラメータブロックを消去している間に、均等ブロック１個を消去しているときと同様なＲＥＡＤＹ信号および動作ステータス信号をホストシステムに対して出力する構成とすることができる。
【００１４】
本発明のブートブロックフラッシュメモリ制御回路は、ホストシステムから入力されたアドレスに基づいて、ブートブロックまたはパラメータブロックが指定されていることを検出するブートブロックアドレス検出回路と、該ブートブロックアドレス検出回路からの出力、ホストシステムから入力されたデータおよび制御信号に基づいて、消去コマンドが入力されているか否かを検出するコマンド検出回路と、該コマンド検出回路からの出力およびブートブロックフラッシュメモリからの制御信号に基づいて、ブートブロックフラッシュメモリに対してブートブロックのアドレスおよび消去コマンドを出力するアドレス＆コマンド発生回路と、複数のブートブロックを消去している間、連続して消去状態を示す信号をホストシステムに対して出力するＲＥＡＤＹ信号＆ステータス信号制御回路とを有する構成とすることができる。
【００１５】
本発明のＩＣメモリカードは、外部とのインターフェースＩＣに本発明のブートブロックフラッシュメモリ制御回路を備えており、そのことにより上記目的が達成される。
【００１６】
本発明のＩＣメモリカードは、フラッシュメモリに存在する全てのブートブロックおよび全てのパラメータブロックが、均等ブロックとして動作する場合に、ホストシステムがアクセスする可能性の低いアドレス領域に連続して集中デコードされるように、全てのブートブロックおよび全てのパラメータブロックのアドレスが最終アドレス部に設定されている構成とすることができる。
【００１７】
本発明のＩＣメモリカードは、フラッシュメモリに存在するブートブロックおよびパラメータブロックがホストシステムからアクセスされないように、ホストシステムから入力されたアドレスに対して、ブートブロック部およびパラメータブロック部を削除してデコードする構成とすることができる。
【００１８】
本発明の半導体記憶装置は、本発明のブートブロックフラッシュメモリ制御回路を備えており、そのことにより上記目的が達成される。
【００１９】
本発明のブートブロックフラッシュメモリの消去方法は、本発明のブートブロックフラッシュメモリ制御回路を用いてブートブロックフラッシュメモリを消去する方法であって、ホストシステムからブートブロックまたはパラメータブロックに対応するアドレスが前記ブートブロックアドレス検出回路に入力されたときに、該ブートブロックアドレス検出回路からアクティブな信号を出力し、該ブートブロックアドレス検出回路からアクティブな信号が前記コマンド検出回路に入力され、かつ、ホストシステムから消去動作を指示するデータと制御信号とが該コマンド検出回路に入力されたときに、該コマンド検出回路から消去コマンドが入力されていることを示す信号を出力し、該コマンド検出回路から消去コマンドが入力されていることを示す信号が前記アドレス＆コマンド発生回路に入力され、かつ、該ブートブロックフラッシュメモリから制御信号が該アドレス＆コマンド発生回路に入力されたときに、該アドレス＆コマンド発生回路から該ブートブロックフラッシュメモリに対してブートブロックのアドレスおよび消去コマンドを出力し、複数のブートブロックが消去されている間、前記ＲＥＡＤＹ信号＆ステータス信号制御回路から連続して消去状態を示す信号を出力し、そのことにより上記目的が達成される。
【００２０】
本発明のブートブロックフラッシュメモリの消去方法は、ホストシステムから入力されるアドレスに関わらずに、個々のブートブロックまたは個々のパラメータブロックの消去を禁止するようにデコードする構成とすることができる。
【００２１】
以下、本発明の作用について説明する。
【００２２】
本発明にあっては、ブートブロックフラッシュメモリを均等ブロックフラッシュメモリとして利用するために、インターフェース部にブートブロックフラッシュメモリ制御回路を設ける。このブートブロックフラッシュメモリ制御回路は、ホストシステムから消去コマンドおよびアドレスが発行されたときに、そのアドレスがブートブロックまたはパラメータブロックを指定していることを検出する。そして、複数のブートブロックまたは複数のパラメータブロックの消去を行うためにブートブロックのアドレスおよび消去コマンドを出力する。これにより、後述する実施形態１に示すように、ホストシステムから１回の消去コマンドを発行することにより複数のブートブロックを消去することが可能であるので、従来のようにホストシステムがブロック指定アドレスを切り換えて消去コマンドを複数回発行する必要はない。また、ホストシステムからは、複数のブートブロックを仮想的に１個のブロックとして取り扱うことが可能である。
【００２３】
また、本発明にあっては、ブートブロックまたはパラメータブロックを、ブートブロックフラッシュメモリに存在するその他の均等ブロックの容量と等しくなるように複数個を組み合わせて消去を行うのが好ましい。これにより、後述する実施形態２に示すように、ブロックサイズが統一されるので、均等ブロックフラッシュメモリを採用したカードを想定して制御用ソフトウェアを設計したホストシステムによって、ブートブロックフラッシュメモリを動作させることが可能となる。この場合、複数個の組み合わされたブロックは、順次消去することができる。
【００２４】
さらに、本発明にあっては、フラッシュメモリに存在する全てのブートブロックおよび全てのパラメータブロックが、ホストシステムがアクセスする可能性の低いアドレス領域に連続して集中デコードされるように、アドレスを設定してもよい。この場合、後述する実施形態３に示すように、全てのブートブロックがＩＣメモリカードのメモリマップ上でホストシステムがアクセスする可能性の低い領域に連続して集合するが、ホストシステムからブートブロック部にアクセス可能である。ユーザーがＩＣメモリカードを使用する場合には、通常、先頭アドレスから使用するため、最終アドレス部にブートブロックを集めると、利用される可能性がかなり低くなる。一方、均等ブロックと仮想的均等ブロック（ブートブロックやパラメータブロックの順次消去）とについて、ブロック消去時間を比較すると、１対４で仮想的均等ブロックの方が遅くなる。このため、消去する頻度が低い最終アドレスにブートブロックやパラメータブロックを配置する構成とすることにより、パフォーマンスの低下を防ぐことが可能となる。
【００２５】
または、本発明にあっては、フラッシュメモリに存在するブートブロックおよびパラメータブロックがホストシステムからアクセスされないように、ホストシステムから入力されるアドレスに対してブートブロック部およびパラメータブロック部を削除してデコードしてもよい。この場合、後述する実施形態４に示すように、ブートブロックがＩＣメモリカードのメモリマップ上から削除され、ホストシステムからブートブロック部にアクセスすることはできない。上述したように、均等ブロックと仮想的均等ブロック（ブートブロックやパラメータブロックの順次消去）とでは、消去時間に４倍の違いがあるため、均等ブロックを想定して作製されたカード制御ソフトウェアでは、消去時間の待ち時間をオーバーしてしまうおそれがある。よって、ブートブロック部やパラメータブロック部を用いずに均等ブロック部のみを用いたＩＣメモリカードを構成すると、問題無く動作を行うことが可能である。
【００２６】
さらに、本発明にあっては、複数のブートブロックまたは複数のパラメータブロックを消去している間に、ホストシステムに対して均等ブロック１個を消去しているときと同様なＲＥＡＤＹ信号および動作ステータス信号を出力してもよい。これにより、後述する実施形態５に示すように、ホストシステムからは、複数のブートブロックを消去する動作を均等ブロックを１個消去する動作とみなすことが可能である。
【００２７】
【発明の実施の形態】
以下に、図面を参照しながら本発明の実施の形態について説明する。なお、本発明においては、消去ブロックの容量を仮想的に同一サイズとすることを目的としており、以下の実施形態ではブートブロックについて説明しているが、パラメータブロックについてもブートブロックと同様に扱うことができる。一般に、ブートブロックフラッシュメモリーと称される製品には、先頭アドレス部または最終アドレス部に均等ブロックとは容量が異なる複数のブロックが設けられており、これらの複数のブロックのうち、いくつかをブートブロック、残りのいくつかをパラメータブロックと称している。このように呼び方を変えているのは、各ブロックに格納するプログラムの内容が異なるためである。例えば、ブートブロックにはＣＰＵをスタートするためのブートプログラムを格納し、パラメータブロックには機器の設定情報（パラメータ）が格納される。
【００２８】
（実施形態１）
図１は、実施形態１の半導体記憶装置について説明するための図である。ここでは、ブートブロック部３０４を含むブートブロックフラッシュメモリを備えたＩＣメモリカード３０１のインターフェースＩＣ３０２内に、ブートブロックフラッシュメモリ制御回路３０３を備えている。
【００２９】
ホストシステム３００が、ブロック指定アドレスとブロック消去コマンドをＩＣメモリカード３０１に対して発行する。その際、インターフェースＩＣ３０２内のブートブロックフラッシュメモリ制御回路３０３が、そのブロック指定アドレスがブートブロック部を指定していることを検出すると、ブロック０〜ブロック７までの８個のブロックを順次消去する。このブートブロックフラッシュメモリ制御回路３０３の動作について、さらに詳細に説明する。
【００３０】
図２は、ブートブロックフラッシュメモリ制御回路３０３の構成を示すブロック図である。このブートブロックフラッシュメモリ制御回路３０３は、ブートブロックアドレス検出回路８０１によりブロック指定アドレスを検出し、コマンド検出回路８０２により消去コマンドを検出した場合に、アドレス＆コマンド発生回路８０４によりブートブロック部３０４の消去を行う。なお、ＲＥＡＤＹ信号＆ステータス信号制御回路８０３については、後述する実施形態５において説明する。
【００３１】
ブートブロックアドレス検出回路８０１は、例えば図３に示すように、アドレスＡ１６とアドレスＡ１７を反転した信号を入力するＡＮＤ回路からブートブロックアドレスの検出出力を得るように構成されている。図１２（ｂ）に示したＡ社製品のような構成のブートブロックフラッシュメモリに対して消去動作を行う場合を考えると、外部から入力されたアドレスのＡ１６とＡ１７とが各々「０」である場合には、下記表１に示すように、ブロック０（ブートブロック）〜ブロック７（ブートブロック）７が選択される。この場合、ブートブロックアドレス検出回路８０１から出力されるブートブロックアドレスの検出出力はＨｉｇｈレベル（アクティブ）となる。一方、外部から入力されたアドレスのＡ１６とＡ１７とが「０１」〜「１１」である場合には、下記表１に示すように、ブートブロック８〜ブートブロック１０が選択される。この場合、ブートブロックアドレス検出回路８０１から出力されるブートブロックアドレスの検出出力はＬｏｗレベル（非アクティブ）となる。
【００３２】
【表１】
0003627915.tif 000002
このブートブロックアドレスの検出出力は、例えば図４に示すようなコマンド検出回路８０２に出力される。消去動作を行う場合には、このコマンド検出回路８０２に、制御信号ＣＥ＃、ＯＥ＃およびＷＥ＃として各々Ｌｏｗレベル、ＨｉｇｈレベルおよびＬｏｗレベルがホストシステム３００から入力される。このコマンド検出回路８０２は、ブートブロックアドレスの検出出力がＨｉｇｈレベル（ブートブロック０〜ブートブロック７を消去する場合）であるときに、動作可能（ＯＮ）に設定されるコマンド比較回路を備えている。このコマンド比較回路にはデータとしてブロック消去コマンドの２０ｈとＤ０ｈとが入力されて、コマンド比較回路に設定されている期待値（２０ｈとＤ０ｈ）と比較され、一致した場合にはコマンドの検出出力がＨｉｇｈレベルとなる。一方、ブートブロックアドレスの検出出力がＬｏｗレベル（ブロック８〜ブロック１０に対応するアドレスが入力されている）である場合や、入力されたコマンドが消去動作でない場合には、コマンドの検出出力がＬｏｗレベルとなる。
【００３３】
コマンドの検出出力としてＨｉｇｈレベルが、例えば図５に示すようなアドレス＆コマンド発生回路８０４に入力されると、ブートブロックフラッシュメモリが消去可能である場合にはブートブロックフラッシュメモリからの制御信号Ｒ／Ｂ＃がＨｉｇｈレベルであるため、コマンド出力バッファを介して消去コマンドレジスタから２０ｈおよびＤ０ｈが消去コマンドとして出力される。
【００３４】
これにより、ブートブロック０〜ブートブロック７までの８ブロックが連続して消去されることになるが、外部から入力されたアドレスのＡ１６およびＡ１７とアドレスカウンタから出力されるアドレスのＡ１３〜Ａ１５は、最初はいずれも「０」であるため、上記表１に示したようにＡ１７〜Ａ１３までが「０」であるブートブロック０の消去が初めに実行される。このとき、ブートブロックフラッシュメモリからの制御信号Ｒ／Ｂ＃はＬｏｗレベルであり、コマンド出力バッファを介した消去コマンドの出力は行われない。そして、ブートブロック０の消去が終了すると、ブートブロックフラッシュメモリからの制御信号Ｒ／Ｂ＃がＨｉｇｈレベルとなる。これにより、アドレスカウンタがカウントアップしてＡ１３〜Ａ１７が「１００００」となり、さらに、コマンド出力バッファを介して消去コマンドが出力されているため、上記表１に示したようにＡ１３〜Ａ１７が「１００００」であるブートブロック１の消去が実行される。このような動作がブートブロック２〜ブートブロック７に対しても行われる。
【００３５】
なお、上記ブートブロックフラッシュメモリ制御回路３０３に外部からブロック消去コマンドの２０ｈとＤ０ｈとが入力されたとき、Ａ１６とＡ１７とが各々「０」である場合には、ブートブロックアドレス検出回路８０１から出力されるブートブロックアドレスの検出出力（Ｈｉｇｈレベル）が切り換え回路（図示せず）を制御して、アドレス＆コマンド発生回路８０４から出力されるコマンドがブートブロックフラッシュメモリに入力される。一方、Ａ１６とＡ１７のいずれか一方が「０」でない場合には、外部から入力されるブロック消去コマンドの２０ｈとＤ０ｈとがブートブロックフラッシュメモリに入力される。
【００３６】
よって、従来ではブートブロック部３０４の８ｋバイト×８個＝６４ｋバイト分の記憶を消去するためには、ホストシステム３００がブロック指定アドレスを切り換えてブロック消去コマンドを８回発行する必要があったが、本実施形態では１回発行するだけでよいという利点がある。さらに、ホストシステム３００からＩＣメモリカード３０１を眺めた場合、８個に分割されているブロック０〜ブロック７までを仮想的に１個のブロックとして取り扱うことが可能となる。なお、消去はブロック一括で行われるのに対して、読み出しや書き込みはブロックを構成するセル毎に行われるので、ブートブロックの読み出しおよび書き込みについては本発明による影響は生じない。
【００３７】
（実施形態２）
図６は、実施形態２の半導体記憶装置について説明するための図である。この実施形態では、ブートブロックフラッシュメモリ制御回路によって、図６（ａ）に示すように８ｋバイト×８個で構成されているブートブロック部４００を、図６（ｂ）に示すように仮想的に６４ｋバイト×１個のブロック（均等ブロック）４０１として取り扱う。これにより、ブートブロックフラッシュメモリに存在するその他の均等ブロックのサイズと同じにする。
【００３８】
例えば、図５に示したアドレス＆コマンド発生回路８０４において、アドレスカウンタを３ビット出力とすることにより、８個のブートブロックアドレスを指定することができる。
【００３９】
この構成によれば、ブートブロックフラッシュメモリ制御回路により、ブートブロック部４００とブロック８〜ブロック１０を、アドレスＡ１６、Ａ１７のみで指定することができる。また、ブートブロック部４００を消去する場合、外部から入力されるブロック消去コマンドの２０ｈとＤ０ｈは、ブートブロックフラッシュメモリに入力されず、アドレス＆コマンド発生回路８０４で生成したブロック消去コマンドが入力されるので、ユーザーはＩＣメモリカードを均等ブロックのみで構成されたものと同様に使用することができる。
【００４０】
さらに、ブロックサイズが６４ｋバイトに統一されるので、均等ブロックフラッシュメモリを採用したＩＣメモリカード用にソフトウェアを設計したホストシステムを用いてＩＣメモリカードの動作を行うことが可能となる。
【００４１】
（実施形態３）
図７は、実施形態３の半導体記憶装置について説明するための図である。ここでは、第１のブートブロックフラッシュメモリ５００と第２のブートブロックフラッシュメモリ５０１から構成されるＩＣメモリカードについて説明する。
【００４２】
本実施形態では、図７（ｂ）に示すように、ブートブロック部▲１▼５０１とブートブロック部▲２▼５０３とが、ホストシステムからアクセスされる可能性が低いアドレス領域に集中デコードされるように、アドレスを設定する。通常は先頭アドレスから使用されるため、本実施形態では、下記表２に示すように、ブートブロック部▲１▼５０１とブートブロック部▲２▼５０３とが最終アドレス部に集中デコードされるようにアドレスを設定した。本実施形態において、ホストシステムから入力される上位アドレスとデコードされるブロックの関係を下記表２に示す。
【００４３】
【表２】
0003627915.tif 000003
そして、入力されたアドレスをアドレスデコーダ（図示せず）でデコードすることにより、ブートブロック部▲１▼５０１とブートブロック部▲２▼５０３とを選択することができる。
【００４４】
また、図３に示したブートブロックアドレス検出回路８０１は、最終アドレス部に集中するブートブロック部▲１▼５０１とブートブロック部▲２▼５０３に対するアドレスが入力されたときに、Ｈｉｇｈレベルのブートブロックアドレスの検出出力を出力するように構成する。
【００４５】
この構成によれば、図７（ａ）に示すようにブートブロック部▲１▼５０１とブートブロック部▲２▼５０３とのアドレスが分散して設定されている従来技術に比べて、ブートブロック部を消去する頻度が低くなり、パフォーマンスの低下を防ぐことができる。また、後述する実施形態４に比べて、メモリ容量を減らさずにパフォーマンスの低下を防ぐことができる。
【００４６】
（実施形態４）
図８は、実施形態４の半導体記憶装置について説明するための図である。ここでは、第１のブートブロックフラッシュメモリ６００と第２のブートブロックフラッシュメモリ６０１から構成されるＩＣメモリカードについて説明する。
【００４７】
本実施形態では、図８（ｂ）に示すように、ブートブロック部▲１▼６０１とブートブロック部▲２▼６０３とが、削除デコードされてホストシステムからアクセスされないようにする。
【００４８】
ＩＣメモリカード内には、一般に、メインメモリと補助メモリが存在しており、ホストシステムはＩＣメモリカードの状況を補助メモリにアクセスすることで知ることができる。例えばメインメモリ（フラッシュメモリー）が６４ｋＢ×６＝３８４ｋＢで構成されている場合、ホストシステムは、補助メモリにアクセスして「このカードは３８４ｋＢであり、それ以上のメモリ空間は無い」という情報を読み出すことができる。よって、この情報に基づいて、メインメモリに対して３８４ｋＢ以内をアクセスすることができる。本実施形態では、メモリ容量がブートブロック部の容量だけ減少していることを示すメモリ容量情報を、補助メモリに格納することにより、ホストシステムからブートブロック部がアクセスされないようにすることが可能である。
【００４９】
本実施形態において、ホストシステムから入力される上位アドレスとデコードされるブロックの関係を上記表２に示す。このときのアドレスデコーダによる削除デコードは、例えば図９に示すような構成により、ホストシステムからのアドレス入力とアドレスデコーダの出力とを下記表３に示すような関係として行うことができる。
【００５０】
【表３】
0003627915.tif 000004
図９において、ＣＥ０＃、ＣＥ１＃はＬｏｗアクティブの信号である。アドレスデコーダは、ホストシステムからのアドレス入力に応じて上記式のようにＣＥ０＃、ＣＥ１＃、ＺＡ１７、ＺＡ１６を出力する。そして、上記表３に示すように、ＣＥ１＃、ＣＥ１＃が共に”１”の場合には図９に示すチップ０、チップ１は共に非活性であり、ホストシステムからのアドレス入力Ａ０〜Ａ１５によらず、表２に示したブートブロック部の消去を行うことができない。それ以外の場合には、ホストシステムからのアドレス入力Ａ１６〜Ａ１８に応じて表２に示す均等ブロックＡ〜Ｆが選択される。
【００５１】
この構成によれば、図８（ａ）に示すようにブートブロック部▲１▼６０１とブートブロック部▲２▼６０３とのアドレスがホストシステムからアクセスされる従来技術に比べて、消去時間の長いブートブロック部を使用しなくてもよいという利点がある。
【００５２】
（実施形態５）
図１０は、実施形態５の半導体記憶装置について説明するための図である。ここでは、ＩＣメモリカード内のブートブロック部に該当するアドレスに対して、ホストシステム側からブロック消去コマンド（２０ｈ、Ｄ０ｈ）が与えられている場合について説明する。
【００５３】
図１に示したインターフェースＩＣ３０２（ＲＥＡＤＹ信号＆ステータス信号制御回路８０３）、ブートブロックの消去コマンド（データ２０ｈ、Ｄ０ｈ）を受け取ると、図１０に示すＲＥＡＤＹ信号をＬｏｗレベルにする。その後、ブートブロック０〜ブートブロック７までの消去を上記実施形態１〜実施形態４と同様に行う。
【００５４】
このとき、ブートブロックフラッシュメモリからのＲ／Ｂ＃信号は、Ｌ→Ｈ→Ｌ→Ｈ・・・→Ｈと繰り返し変化するが、図１１に示すようなカウンタを備えたＲＥＡＤＹ信号＆ステータス信号制御回路８０３によって、ホストシステムに送出するＲＥＡＤＹ信号のＬｏｗレベルを維持し、ブートブロック７の消去が完了した時点でＨｉｇｈレベルにする。
【００５５】
動作ステータス信号についても、図１１のＲＥＡＤＹレジスタまたはＢＵＳＹレジスタから、図１０に示すように何回読み出しを行っても（例えば図１０では３回）、ブートブロック７の消去が完了するまでは、図１１に示すようなＲＥＡＤＹ信号＆ステータス信号制御回路８０３によって、ＢＵＳＹレジスタからステータス出力バッファを介して００ｈ（消去実行中を表す）を送出する。そして、ブートブロック７の消去が完了した後の読み出しで、ＲＥＡＤＹレジスタからステータス出力バッファを介して８０ｈ（消去完了を表す）を送出する。なお、図１０において、アドレスはホストシステムからのアドレス入力、データはホストシステムからのデコード入力、ＣＥ＃はホストシステムからのカードイネーブル入力、ＷＥ＃はホストシステムからのライトイネーブル入力、ＯＥ＃はホストシステムからのアウトプットイネーブル入力を示す。
【００５６】
この構成によれば、ホストシステム側からは、複数のブートブロックの消去中にＲＥＡＤＹ信号と動作ステータス信号のいずれを調べても、均等ブロックを１個消去している動作とみなすことができる。
【００５７】
【発明の効果】
以上詳述したように、本発明によれば、ホストシステムからブロック消去コマンドを複数回発行しなくても、一定個数のブートブロックを消去することができるので、ホストシステムの負担を軽減することができる。また、ブートブロックと均等ブロックとを切り換え使用する従来技術のようにフラッシュメモリ単体でチップ面積が増大することはなく、ＩＣメモリカードのコストアップを防ぐことができる。
【００５８】
さらに、消去されるブートブロックのサイズを均等ブロックと同一にすることができるので、ブートブロック部を均等ブロックとして動作させることができる。よって、均等ブロックフラッシュメモリを採用したＩＣメモリカードを想定してプログラム開発がなされた既存ホストシステムを用いて、ブートブロックを含むＩＣメモリカードを動作させることが可能となる。
【図面の簡単な説明】
【図１】実施形態１の半導体記憶装置について説明するための図である。
【図２】実施形態に係るブートブロックフラッシュメモリ制御回路の構成を示すブロック図である。
【図３】実施形態に係るブートブロックフラッシュメモリ制御回路において、ブートブロックアドレス検出回路の構成例を示す図である。
【図４】実施形態に係るブートブロックフラッシュメモリ制御回路において、コマンド検出回路の構成例を示す図である。
【図５】実施形態に係るブートブロックフラッシュメモリ制御回路において、アドレス＆コマンド発生回路の構成例を示す図である。
【図６】（ａ）および（ｂ）は実施形態２の半導体記憶装置について説明するための図である。
【図７】（ａ）および（ｂ）は実施形態３の半導体記憶装置について説明するための図である。
【図８】（ａ）および（ｂ）は実施形態４の半導体記憶装置について説明するための図である。
【図９】実施形態４の半導体記憶装置において、アドレスデコーダの動作を説明するための図である。
【図１０】実施形態５の半導体記憶装置について説明するための図である。
【図１１】実施形態に係るブートブロックフラッシュメモリ制御回路において、ＲＥＡＤＹ信号＆ステータス信号制御回路の構成例を示す図である。
【図１２】（ａ）および（ｂ）はＩＣメモリカードに搭載されるフラッシュメモリの構成例を示す図である。
【図１３】（ａ）および（ｂ）は従来のフラッシュメモリについて説明するための図である。
【符号の説明】
３００  ホストシステム
３０１  ＩＣメモリカード
３０２  インターフェースＩＣ
３０３  ブートブロックフラッシュメモリ制御回路
３０４、４００  ブートブロック部
４０１  仮想的な均等ブロック
５００、６００  第１のブートブロックフラッシュメモリ
５０１、６０１  ブートブロック部▲１▼
５０２、６０２  第２のブートブロックフラッシュメモリ
５０３、６０３  ブートブロック部▲２▼
８０１  ブートブロックアドレス検出回路
８０２  コマンド検出回路
８０３  ＲＥＡＤＹ信号＆ステータス信号検出回路
８０４    アドレス＆コマンド発生回路
【図１】
0003627915.tif 000005
【図２】
0003627915.tif 000006
【図３】
0003627915.tif 000007
【図４】
0003627915.tif 000008
【図５】
0003627915.tif 000009
【図６】
0003627915.tif 000010
【図７】
0003627915.tif 000011
【図８】
0003627915.tif 000012
【図９】
0003627915.tif 000013
【図１０】
0003627915.tif 000014
【図１１】
0003627915.tif 000015
【図１２】
0003627915.tif 000016
【図１３】
0003627915.tif 000017