(57)【要約】【課題】  大容量メモリカードにおけるアドレス管理情報の更新時間の合理化を行う。【解決手段】  複数の論理アドレス範囲に分割され、ユーザデータ領域と集中型アドレス管理情報領域とからなる記憶単位を不揮発性メモリ１１５に設定する。読み書きメモリ１１３は集中型アドレス管理情報を一時記憶する。アドレス管理情報制御部１０８はアクセス装置１００からの一連の書き込み指示に応じて、読み書きメモリ１１３上の集中型アドレス管理情報を更新する。不揮発性メモリアクセス部１０９はホストからの一連の書き込み指示の初期に、その指示対象となる論理アドレス範囲ナンバーとそれに対応づけられた時刻情報を読み書きメモリ１１３に記憶させる。そして論理アドレス範囲ナンバーと異なる論理アドレス範囲にアクセスが移行した際に、読み書きメモリ１１３上の集中型アドレス管理情報を不揮発性メモリ１１５に書き込む。【選択図】図１
2005216042.tif 000002
【特許請求の範囲】
【請求項１】
複数の論理アドレス範囲に分割され、集中型アドレス管理情報記憶領域、並びに分散型アドレス管理情報及びデータを記憶するユーザデータ領域を有する不揮発性メモリと、
前記集中型アドレス管理情報を一時記憶する読み書きメモリと、
前記不揮発性メモリ及び読み書きメモリの制御を行うメモリ制御部とを有し、
前記メモリ制御部は、アクセス装置からの書き込み指示に応じて前記ユーザデータ領域に分散型アドレス管理情報とデータを書き込むと共に、前記読み書きメモリ上の集中型アドレス管理情報を更新し、更に前記アクセス装置が指示した書き込み先アドレスが現在の論理アドレス範囲から他の論理アドレス範囲に切り替わる際に、前記読み書きメモリ上に一時記憶された集中型アドレス管理情報を現在の論理アドレス範囲の集中型アドレス管理情報記憶領域に書き込むことを特徴とする半導体メモリ装置。
【請求項２】
前記メモリ制御部は、
前記アクセス装置からの書き込み指示の初期にその指示対象となる論理アドレス範囲ナンバーとそれに対応づけられた時間的な前後関係を識別する時刻情報とを前記不揮発性メモリに記憶させると共に、前記論理アドレス範囲ナンバーと異なる論理アドレス範囲にアクセスが移行した際に前記読み書きメモリ上の集中型アドレス管理情報を前記不揮発性メモリに書き込み、電源立ち上げ後の初期化時に、電源立ち上げ前にアクセスしていた論理アドレス範囲を前記時刻情報に基づき特定し、当該論理アドレス範囲に対応する集中型アドレス管理情報を当該論理アドレス範囲の分散型アドレス管理情報に基づき前記読み書きメモリ及び前記不揮発性メモリに構築することを特徴とする請求項１記載の半導体メモリ装置。
【請求項３】
前記メモリ制御部は、
不揮発性メモリアクセス部と、
前記アクセス装置が指示した書き込み先アドレスが所定の論理アドレス範囲から他の論理アドレス範囲に切り替わったことを検出すると共に、時間的な前後関係を識別する時刻情報を生成する論理アドレス範囲切替部と、
前記アクセス装置の書き込み指示に応じて前記読み書きメモリに一時記憶された集中型アドレス管理情報を更新すると共に、前記論理アドレス範囲の切替時に前記読み書きメモリに一時記憶された集中型アドレス管理情報を前記不揮発性メモリアクセス部を介して前記不揮発性メモリに書き込む集中型アドレス管理情報制御部と、
電源立ち上げ後の初期化時に電源立ち上げ前にアクセスされていた論理アドレス範囲を特定する論理アドレス範囲特定部と、
前記特定された論理アドレス範囲内の分散型アドレス管理情報に基づいて集中型アドレス管理を前記読み書きメモリ上及び前記不揮発性メモリ上に構築する集中型アドレス管理情報構築部と、を備えたことを特徴とする請求項１又は２記載の半導体メモリ装置。
【請求項４】
前記論理アドレス範囲特定部は、
所定の論理アドレス範囲への書き込みを始める際に、前記時刻情報と前記所定の論理アドレス範囲を識別する為の論理アドレス範囲ナンバーを前記不揮発性メモリアクセス部を介して前記不揮発性メモリの所定領域に記憶すると共に、電源立ち上げ後の初期化時に前記所定領域に記憶された時刻情報に基づいて電源立ち上げ前にアクセスされていた論理アドレス範囲を特定することを特徴とする請求項３記載の半導体メモリ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体メモリ装置に関し、詳しくは半導体メモリとして不揮発性メモリ（フラッシュメモリ）を用いたメモリカードに関するものである。
【背景技術】
【０００２】
半導体メモリ装置の中で、ＳＤメモリカードやコンパクトフラッシュ（登録商標）等のメモリカードは小型サイズなので、デジタルスチルカメラ等のポータブル機器の着脱可能なメモリ装置として実用に供されている。
【０００３】
実用に供されている半導体メモリ装置は、通常内部に不揮発性メモリ（フラッシュメモリ）及びその制御回路であるコントローラＬＳＩが内蔵されている。近年、半導体メモリ装置の大容量化のニーズに伴い、不揮発性メモリチップ自体も多値化による大容量が進み、また実装技術の進歩により半導体メモリ装置に実装される不揮発性メモリのチップ数も増加しつつある。例えば半導体メモリ装置のメモリ空間として１ＧＢを超えるものが実用化されている。
【０００４】
ここで半導体メモリ装置におけるアドレス管理方法として、分散型管理方法が従来から適応されている。分散型管理方法とは、書き込み単位であるページの管理領域に論理アドレスやそのページの状態フラグを記憶し、初期化においてコントローラＬＳＩ内のＲＡＭにアドレス管理テーブル等を構成する方法である。しかし、上述したような大容量メモリ空間を有する半導体メモリ装置においては、初期化時に全メモリ空間の管理領域を読み出すには多大な時間を要してしまう。これでは半導体メモリ装置の規格上の初期化時間上限値を超えてしまう等の規格違反が生じる。また特に規格が無い半導体メモリ装置においては、規格違反ではないものの、アクセス可能になるまでの待ち時間の面でユーザにデメリットを強いていた。更にはアドレス管理テーブル等を一時記憶するＲＡＭの容量が膨大となり、コスト面でも問題を有していた。
【０００５】
このような問題を回避するために、半導体メモリ装置に搭載されている不揮発性メモリのアドレス空間を複数の論理アドレス範囲に区分し、各論理アドレス範囲に対応した複数のアドレス管理テーブルを不揮発性メモリに記憶しておき、ホストからの所定の論理アドレスへの書き込みや消去命令に応じて、対応するアドレス管理テーブルをＲＡＭに読み出す方法が提案されている。この方法を集中型管理方法と呼び、例えば特許文献１にその内容が開示されている。
【０００６】
但し、特許文献１においては、電源遮断等の障害対応のため、通常ホストからの所定の論理アドレスへの書き込みや消去命令毎に、ＲＡＭ上のアドレス管理テーブルを更新し、更新されたアドレス管理テーブルをユーザデータの書き込みや消去の後に不揮発性メモリに書き戻す処理が必要であった。この方法は上述した分散型管理方法と比較すると、アドレス管理テーブルの書き戻し処理の時間分、アクセス速度が低下するといった問題を有していた。
【０００７】
一方、特許文献２には、分散型管理方法と、アドレス管理テーブル自体を不揮発性メモリに記憶する集中型管理方法の両者を併用する方法が開示されている。特許文献２に開示される方法及び装置においては、常に集中型管理情報を不揮発性メモリに書き戻すのではなく、電源ＯＦＦ等といった所定の演算処理を行わない区切りの良いところで書き戻しを行い、初期化時に集中型管理情報の有効性を判断し、有効ならば集中型管理情報を使用し、有効でなければ分散型管理情報に基づいて集中型管理情報を構築するものである。しかし分散型管理情報に基づいて集中型管理情報を構築する際の初期化時間については開示されていない。特に大容量メモリ空間を有する半導体メモリ装置においては、上述したような初期化時間の規格制限や、ユーザの利便性あるいはコストに関する問題を解決されていなかった。
【特許文献１】特開２００１−１４２７７４号公報
【特許文献２】特開平１１−７３３７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明はこのような従来の問題点に鑑みてなされたものであって、初期化時間の規格制限やユーザの利便性あるいはコストに関する問題を解決すると共に、アドレス管理テーブルの書き戻し処理に起因するアクセス速度の低下を回避する方法を確立することを目的とする。
【課題を解決するための手段】
【０００９】
この課題を解決するために、本発明の半導体メモリ装置は、複数の論理アドレス範囲に分割され、集中型アドレス管理情報記憶領域、並びに分散型アドレス管理情報及びデータを記憶するユーザデータ領域を有する不揮発性メモリと、前記集中型アドレス管理情報を一時記憶する読み書きメモリと、前記不揮発性メモリ及び読み書きメモリの制御を行うメモリ制御部とを有し、前記メモリ制御部は、アクセス装置からの書き込み指示に応じて前記ユーザデータ領域に分散型アドレス管理情報とデータを書き込むと共に、前記読み書きメモリ上の集中型アドレス管理情報を更新し、更に前記アクセス装置が指示した書き込み先アドレスが現在の論理アドレス範囲から他の論理アドレス範囲に切り替わる際に、前記読み書きメモリ上に一時記憶された集中型アドレス管理情報を現在の論理アドレス範囲の集中型アドレス管理情報記憶領域に書き込むことを特徴とするものである。
【００１０】
ここで前記メモリ制御部は、前記アクセス装置からの書き込み指示の初期にその指示対象となる論理アドレス範囲ナンバーとそれに対応づけられた時間的な前後関係を識別する時刻情報とを前記不揮発性メモリに記憶させると共に、前記論理アドレス範囲ナンバーと異なる論理アドレス範囲にアクセスが移行した際に前記読み書きメモリ上の集中型アドレス管理情報を前記不揮発性メモリに書き込み、電源立ち上げ後の初期化時に、電源立ち上げ前にアクセスしていた論理アドレス範囲を前記時刻情報に基づき特定し、当該論理アドレス範囲に対応する集中型アドレス管理情報を当該論理アドレス範囲の分散型アドレス管理情報に基づき前記読み書きメモリ及び前記不揮発性メモリに構築するようにしてもよい。
【００１１】
ここで前記メモリ制御部は、不揮発性メモリアクセス部と、前記アクセス装置が指示した書き込み先アドレスが所定の論理アドレス範囲から他の論理アドレス範囲に切り替わったことを検出すると共に、時間的な前後関係を識別する時刻情報を生成する論理アドレス範囲切替部と、前記アクセス装置の書き込み指示に応じて前記読み書きメモリに一時記憶された集中型アドレス管理情報を更新すると共に、前記論理アドレス範囲の切替時に前記読み書きメモリに一時記憶された集中型アドレス管理情報を前記不揮発性メモリアクセス部を介して前記不揮発性メモリに書き込む集中型アドレス管理情報制御部と、電源立ち上げ後の初期化時に電源立ち上げ前にアクセスされていた論理アドレス範囲を特定する論理アドレス範囲特定部と、前記特定された論理アドレス範囲内の分散型アドレス管理情報に基づいて集中型アドレス管理を前記読み書きメモリ上及び前記不揮発性メモリ上に構築する集中型アドレス管理情報構築部と、を備えるようにしてもよい。
【００１２】
ここで前記論理アドレス範囲特定部は、所定の論理アドレス範囲への書き込みを始める際に、前記時刻情報と前記所定の論理アドレス範囲を識別する為の論理アドレス範囲ナンバーを前記不揮発性メモリアクセス部を介して前記不揮発性メモリの所定領域に記憶すると共に、電源立ち上げ後の初期化時に前記所定領域に記憶された時刻情報に基づいて電源立ち上げ前にアクセスされていた論理アドレス範囲を特定するようにしてもよい。
【発明の効果】
【００１３】
本発明によれば、ホストから所定の論理アドレス範囲をアクセスする毎に、集中型アドレス管理情報を不揮発性メモリに書き戻す必要がないので、アクセスの高速化が可能となる。電源遮断等の障害が起きた際に、アクセスしていた論理アドレス範囲を、時刻情報に基づき特定できるので、その論理アドレス空間（全メモリ空間より十分小さい）のみの分散型アドレス管理情報に基づいて集中型アドレス管理情報を構築する。このため初期化に要する時間を短縮でき、集中型アドレス管理情報を一時記憶する読み書きメモリの容量を小さくすることができる。
【発明を実施するための最良の形態】
【００１４】
本発明の半導体メモリ装置は、複数の論理アドレス範囲に分割された不揮発性メモリを搭載する。この不揮発性メモリは、複数の論理アドレス範囲に分割され、任意のユーザデータ、及びユーザデータを管理する分散型アドレス管理情報を記憶するユーザデータ領域と、ユーザデータを一括して管理する集中型アドレス管理記憶領域とを有する。分散型アドレス管理情報を記憶する領域は冗長領域といい、ユーザデータの記憶領域と冗長領域は複数の記憶単位で構成される。これらの記億単位のうち、少なくとも１つに分散型アドレス管理情報に対応してユーザデータを一括して管理する集中型アドレス管理情報を記録する。
【００１５】
本発明の半導体メモリ装置は、不揮発性メモリアクセス部、アドレス管理情報制御部、ユーザデータの書き込みや消去を伴う不揮発性メモリのアクセス対象領域が所定の論理アドレス範囲から、所定の論理アドレス範囲と異なる論理アドレス範囲に切り替わったことを検出すると共に、時間的な前後関係を識別する時刻情報を生成する論理アドレス範囲切替部を含むメモリ制御部と、集中型アドレス管理情報を一時記憶する読み書きメモリとを有するものとする。
【００１６】
また本発明の半導体メモリ装置は、メモリ制御部内のアドレス管理情報制御部を用いて、ユーザデータの書き込み等に応じて読み書きメモリに一時記憶された集中型アドレス管理情報を更新すると共に、論理アドレス範囲の切替時に読み書きメモリに一時記憶された集中型アドレス管理情報を、不揮発性メモリアクセス部を介して不揮発性メモリに書き込む。また起動時にその起動前にアクセスされていた論理アドレス範囲を特定する論理アドレス範囲特定部と、起動時に特定された論理アドレス範囲内の分散型アドレス管理情報に基づいて、集中型アドレス管理を読み書きメモリ上及び不揮発性メモリ上に構築する集中型アドレス管理情報構築部をメモリ制御部に設ける。
【００１７】
なお、本発明における論理アドレス範囲は、記憶単位の冗長領域を読み出し、集中型アドレス管理情報を構築する時間が規格等で定められた時間より小さくなる容量である必要がある。更に言えば、良ブロック保証率を所望値（例えば９８％）より大きくできる容量であることが望ましい。
【００１８】
（実施の形態）
図１は本発明の実施の形態における半導体メモリ装置の全体構成を示したブロック図である。半導体メモリ装置はアクセス装置１００からのデータ書込み命令でデータを記憶し、データ読出し命令で記憶されたデータを読み出すものである。この半導体メモリ装置は不揮発性メモリコントローラ１１４及び不揮発性メモリ１１５を含んで構成される。不揮発性メモリコントローラ１１４は、ホストＩ／Ｆ部１０１、ＣＰＵ１０２、ＲＡＭ１０３、ＲＯＭ１０４、メモリ制御部１２２、読み書きメモリ１１３を有する。そしてメモリ制御部１２２には、論理アドレス範囲切替部１０５、論理アドレス範囲特定部１０６、集中型アドレス管理情報構築部１０７、集中型アドレス管理情報制御部１０８、不揮発性メモリアクセス部１０９を設ける。
【００１９】
メモリ制御部１２２は、アクセス装置１００からの書き込み指示に応じてユーザデータ領域に分散型アドレス管理情報とデータを書き込むと共に、読み書きメモリ１１３上の集中型アドレス管理情報を更新し、更にアクセス装置１００が指示した書き込み先アドレスが現在の論理アドレス範囲から他の論理アドレス範囲に切り替わる際に、読み書きメモリ１１３上に一時記憶された集中型アドレス管理情報を、現在の論理アドレス範囲の集中型アドレス管理情報記憶領域に書き込む機能を有する。
【００２０】
またメモリ制御部１２２は、アクセス装置１００からの書き込み指示の初期にその指示対象となる論理アドレス範囲ナンバーと、それに対応づけられた時間的な前後関係を識別する時刻情報とを不揮発性メモリ１１５に記憶させると共に、論理アドレス範囲ナンバーと異なる論理アドレス範囲にアクセスが移行した際に、読み書きメモリ１１３上の集中型アドレス管理情報を不揮発性メモリ１１５に書き込む機能を有する。更にメモリ制御部１２２は、電源立ち上げ後の初期化時に、電源立ち上げ前にアクセスしていた論理アドレス範囲を時刻情報に基づき特定し、当該論理アドレス範囲に対応する集中型アドレス管理情報を当該論理アドレス範囲の分散型アドレス管理情報に基づき構築する機能を有する。
【００２１】
以下に、不揮発性メモリコントローラ１１４内の各ブロックの機能について詳細に説明する。ホストＩ／Ｆ部１０１はアクセス装置１００が転送した各種命令や論理アドレスや書き込みデータを受信する。ＣＰＵ１０２は不揮発性メモリコントローラ１１４内全体を制御する。ＲＡＭ１０３はＣＰＵ１０２のワーク用のＲＡＭである。ＲＯＭ１０４はＣＰＵ１０２が実行するプログラムを格納する。メモリ制御部１２２内の論理アドレス範囲切替部１０５は、アクセス装置１００が転送した論理アドレスに基づき論理アドレス範囲ナンバー（論理アドレス範囲０〜論理アドレス範囲７）が切り替わったか否かを検出し、更にアクセス装置１００が転送した命令が何時の時点での命令か、即ち各命令の時間的前後関係を表す時刻情報を生成する。
【００２２】
論理アドレス範囲特定部１０６は、論理アドレス範囲が切り替わった時点での時刻情報と、切り替わり後の論理アドレス範囲を不揮発性メモリ１１５に記憶する指示を不揮発性メモリアクセス部１０９に転送すると共に、起動前にアクセスしていた論理アドレス範囲ナンバーを起動時に特定する。また論理アドレス範囲特定部１０６は、所定の論理アドレス範囲への書き込みを始める際に、時刻情報と所定の論理アドレス範囲を識別するための論理アドレス範囲ナンバーを、不揮発性メモリアクセス部１０９を介して不揮発性メモリ１１５の所定領域に記憶すると共に、電源立ち上げ後の初期化時に所定領域に記憶された時刻情報に基づいて、電源立ち上げ前にアクセスされていた論理アドレス範囲を特定する。
【００２３】
集中型アドレス管理情報構築部１０７は、論理アドレス範囲特定部１０６が特定した論理アドレス範囲の記憶単位であるイレーズブロックの管理領域（冗長領域）に記憶された分散型アドレス管理情報に基づいて、読み書きメモリ１１３上に集中型アドレス範囲情報を構築する。
【００２４】
集中型アドレス管理情報制御部１０８は、アクセス装置１００の書き込み指示に応じて読み書きメモリ１１３に一時記憶された集中型アドレス管理情報を更新すると共に、論理アドレス範囲の切替時に読み書きメモリ１１３に一時記憶された集中型アドレス管理情報を、不揮発性メモリアクセス部１０９を介して不揮発性メモリ１１５に書き込む。
【００２５】
不揮発性メモリアクセス部１０９は不揮発性メモリ１１５をアクセスする。読み書きメモリ１１３は集中型アドレス管理情報１１２を一時記憶する揮発性の読み書きメモリであり、例えばＲＡＭで構成される。読み書きメモリ１１３内のアドレス変換テーブル１１０は、アクセス装置１００がホストＩ／Ｆ部１０１を介して転送した論理アドレスを不揮発性メモリ１１５の物理アドレスに変換するものである。物理領域管理テーブル１１１は不揮発性メモリ１１５の物理領域の使用状況を管理するものである。アドレス変換テーブル１１０と物理領域管理テーブル１１１の総称を集中型アドレス管理情報１１２という。
【００２６】
不揮発性メモリ１１５は、論理アドレス範囲０〜７を有する不揮発性メモリであり、例えば複数のフラッシュメモリチップを用いて構成される。不揮発性メモリ１１５の夫々の論理アドレス範囲にはユーザデータの記憶領域とアドレス管理情報の記憶領域が設けられている。ユーザデータ１１６〜１１８はアクセス装置１００が指定する各論理アドレス範囲に応じたユーザデータであり、複数のイレーズブロックにより構成される。アドレス管理情報１１９〜１２１はアクセス装置１００が指定する各論理アドレス範囲に応じたアドレス管理情報であり、これらも複数のイレーズブロックにより構成される。なおイレーズブロックとは、選択的に消去できる最小単位のことをいう。
【００２７】
図２は、本実施の形態の半導体メモリ装置に用いられる不揮発性メモリ１１５の各情報記録領域を示す説明図である。ここでは１Ｇビットの半導体メモリを使用するものとする。因みに１ＧＢの半導体メモリ装置を実現する場合は、不揮発性メモリ１１５として８チップのフラッシュメモリを実装すればよい。不揮発性メモリ１１５は縦方向に論理アドレス範囲０〜７の８つの範囲に論理分割されており、各論理アドレス毎にユーザデータ領域と集中型アドレス管理領域を有する。また横方向にバンク０〜３の４バンクに分割されており、最大同時書き込み数は４バンクの各１ページ、即ち最大４ページ分が同時に書き込める。ページについては図３を用いて後述する。なお、論理アドレス範囲０〜７に対応する各集中型アドレス管理領域は１つの領域にまとめてもよい。
【００２８】
各論理アドレス範囲は記憶単位であるイレーズブロック（１つあたり約４ｋＢ）を４ｋブロック個有する。論理アドレス範囲７はカレント論理アドレス範囲ナンバー記憶領域（図２ではカレント記憶領域と表記）を有する。このため、論理アドレス範囲７ではユーザデータ領域及び集中型アドレス管理領域の和は他の論理アドレス範囲より少なくなる。なおカレント論理アドレス範囲ナンバー記憶領域は、電源遮断等の障害によって再起動された際に、起動前にアクセスされていた論理アドレス範囲ナンバーを特定する情報が格納される領域である。またセキュリティ関係の情報やメーカコード等が書き込まれた所謂システム領域については、ここでは説明を省略する。
【００２９】
図３は本実施の形態におけるイレーズブロックを示した説明図である。イレーズブロックは２ページから構成され、各ページは４セクタのデータ領域（各５１２バイトずつ、計２０４８バイト）と管理領域（６４バイト）とから構成される。
【００３０】
図４は本実施の形態における論理アドレスフォーマットを示した説明図である。図４において下位ビットから順に、セクタナンバー、ページナンバー、論理ブロックナンバー、論理アドレス範囲ナンバーである。論理ブロックナンバーに対応する１２ビット分がアドレス変換の対象であり、図１のアドレス変換テーブル１１０のアドレスに相当する。
【００３１】
図５は本実施の形態における物理管理領域テーブル１１１を示した説明図である。図５において、物理管理領域テーブル１１１のアドレスは、不揮発性メモリ１１５の各物理ブロックナンバー（イレーズブロックのアドレス）であり、各イレーズブロックの状態（ブロックステータス）である有効、無効、不良等を記憶する。２進数で「００」が有効ブロックであり、既に有効なデータが書き込まれているブロックを表す。２進数で「１１」が無効ブロックであり、消去済みブロック、又は既にデータが書き込まれているが不要なブロックである。２進数で「１０」が不良ブロックであり、メモリセル上のソリッドエラー等により使用できなくなったブロックである。このように少なくとも３つの状態が存在する。
【００３２】
図６は本実施の形態におけるアドレス変換テーブル１１０を示した説明図である。図６において、そのアドレスはアクセス装置１００が指定した論理アドレス、即ち図４に示す論理ブロックナンバーであり、当該論理ブロックナンバーに物理ブロックナンバーが記憶されている。
【００３３】
図７は本実施の形態における論理アドレス範囲切替部１０５の構成を示した回路図である。カウンター７０１は論理アドレス範囲切替信号がアクティブになった時に値を１ずつインクリメントする。レジスタ７０２はアクセス装置１００が転送した論理アドレス範囲ナンバーをシステムクロックＳＣＫに応じて一時記憶する。比較器７０３は前記２７ビットの論理アドレス範囲ナンバーと、レジスタ７０２が一時記憶した論理アドレス範囲ナンバーとを比較する。レジスタ７０４は論理アドレス範囲ナンバーが切り替わった時点の論理アドレス範囲ナンバー（以下、切替時論理アドレス範囲ナンバーという）を一時記憶する。但し論理アドレス範囲切替信号がアクティブ時に記憶する。
【００３４】
ここでカウンター７０１のビット数であるが、不揮発性メモリ１１５の書換寿命、即ち保証良ブロック率を下回る書換回数を１０万回（≒２の１７乗）とし、アクセス装置１００からの１回の書き込みコマンドにおける平均的な書き込みデータ容量を１６ｋＢ（ＦＡＴ１６における１クラスタ分）、即ち４イレーズブロック分とした場合に、１つの論理アドレス範囲のユーザデータ領域において、全てのイレーズブロックを書き込むコマンド数は、数式（１）により約１ｋ回（２の１０乗）となり、数式（２）により平均２７ビットとした。
（４ｋブロック個×４ｋＢ）÷１６ｋＢ＝１ｋ・・・・（１）
１７＋１０＝２７・・・・（２）
なお不揮発性メモリ１１５の書換寿命の違いや、設計余裕を鑑みてビット数を増やしても構わない。カウンター７０１のカウント値は、論理アドレス範囲が切り替わる毎にインクリメントされるものであり、現在アクセスしている論理アドレス範囲ナンバー（カレント論理アドレス範囲ナンバー）に対応する時刻情報と考えることができる。
【００３５】
図８は本実施の形態における論理アドレス範囲特定情報を示した説明図である。図８において下位側の２７ビット分が時刻情報、上位２ビット分が切替時の論理アドレス範囲ナンバーである。図９は本実施の形態における書き込みシーケンスを示した第1のタイムチャートである。なお図９は論理アドレス範囲の切り替えが発生しない場合、即ち通常の書き込みシーケンスを示している。図１０は本実施の形態における書き込みシーケンスを示した第２のタイムチャートである。なお図１０は論理アドレス範囲の切り替えが発生した直後の書き込みシーケンスを示している。
【００３６】
以上のように構成された半導体メモリ装置について、以下その動作を説明する。まず、本半導体メモリ装置が出荷された後、最初に使用される際は、不揮発性メモリ１１５の良ブロックは全て消去された状態となっている。但し実際はシステム領域には所定の値が書き込まれているが、ここではこの状態を省略して説明する。電源ＯＮ後、ＣＰＵ１０２はＲＯＭ１０４に記憶されたプログラムに基づいて初期化処理を行った後、アクセス装置１００からの読み書き等のコマンドの受付状態に入る。
【００３７】
その後アクセス装置１００が任意の論理アドレス範囲内への書き込み指示を行う。ここでは論理アドレス範囲０への書き込みを行うものとする。ＣＰＵ１０２は論理アドレス範囲０に対応するアドレス管理情報を不揮発性メモリ１１５から読み書きメモリ１１３上のアドレス変換テーブル１１０と物理領域管理テーブル１１１に読み込むために、不揮発性メモリアクセス部１０９に読み込み指示を発行する。
【００３８】
ここで読み込まれるアドレス管理情報は、図２の論理アドレス範囲０内の集中型アドレス管理情報領域内におけるイレーズブロックの最新のアドレス管理情報である。どれが最新であるかの判断については、集中型アドレス管理情報領域に対応するイレーズブロックのページを最上位アドレス、具体的には図２における１０２３＿ａ１〜１０２３＿ｄ１の４ページ分（全８ｋＢ）をセットとして消去されているか否かを判断基準とする。そして図２の上位方向にサーチしていき、消去されていない、即ち何らかの値が書き込まれた４ページ分を最新の集中型アドレス管理情報として選択すればよい。
【００３９】
なお工場出荷直後は全て消去されているので、その場合は最下位（図面上は最上位方向）の４ページ、即ち１０２２＿ａ０〜１０２２＿ｄ０を集中型アドレス管理情報として読み書きメモリ１１３に読み込むこととなる。この場合は図５に示す物理領域管理テーブルは全て無効ブロック（２進で「１１」）、即ち有効なユーザデータは不揮発性メモリ１１５には記憶されていないということになる。ここで、アクセス装置１００からの書き込み命令がなされ、不揮発性メモリ１１５に有効データが書かれている状態において、例えば最新のアドレス管理情報が１０２３＿ａ０〜１０２３＿ｄ０であるとすると、それより下位（図２中、上位方向）の集中型アドレス管理情報（１０２２＿ａ１〜１０２２＿ｄ１と１０２２＿ａ０〜１０２２＿ｄ０）は無効ブロックとして消去しておく。そしてこの領域は後々使用できるようにしておく必要があるが、ここでは本発明における本質的な処理ではないので説明を省略する。
【００４０】
前述した集中型アドレス管理情報の読み込み処理が図１０のＡＴリード期間に相当する。ここでＡＴは、アロケーションテーブルの略でアドレス管理情報に相当する。ＡＴリード期間では、出荷直後のアクセス装置１００の書き込み又は消去コマンド発行時、もしくは論理アドレス範囲が切り替わった直後のアクセス装置１００の書き込み又は消去コマンド発行時に、集中型アドレス管理情報の読み込み処理がなされる。その後は読み書きメモリ１１３に読み込まれた集中型アドレス管理情報、即ちアドレス管理テ−ブル１１０と物理領域管理テーブル１１１を参照又は更新しながら、アクセス装置１００の指示に応じた処理がなされる。
【００４１】
ここで図１０のＡＴリード期間の直前に存在するＡＴライト期間とは、論理アドレス範囲の切り替わりにおいて、例えば論理アドレス範囲０から論理アドレス範囲１への切り替わりにおいて、それまで読み書きメモリ１１３に一時記憶されていた論理アドレス範囲０の集中型アドレス管理情報を、論理アドレス範囲０の集中型アドレス管理情報領域に最新の集中型アドレス管理情報として書き戻す期間である。
【００４２】
図１０のＡＴリード期間の直後における論理アドレス範囲特定情報ライト期間は、図８に示した論理アドレス範囲特定情報を不揮発性メモリ１１５のカレント論理アドレス範囲ナンバー記憶領域に記憶する処理である。この処理が本発明の中核をなす処理であり、電源遮断などの障害が発生したとき、その直後の起動時にこの情報に基づいて、どの論理アドレス範囲の処理中に電源遮断などの障害が起きたかを判別する。
【００４３】
判別方法としては、論理アドレス範囲特定部１０６が不揮発性メモリアクセス部１０９を介して図２に示すカレント論理アドレス範囲ナンバー記憶領域をサーチし、図８の時刻情報が最も大きな論理アドレス範囲特定情報を見つけ出す。但し全てのビット値が１の部分は除くことする。そこに書かれている切替時論理アドレス範囲ナンバーを、電源遮断などの障害が起きた時点でアクセス装置１００からの書き込み指示等が転送されていた論理アドレス範囲ナンバーと特定することができる。
【００４４】
なお図２のカレント論理アドレス範囲ナンバー領域も集中型アドレス管理情報領域と同様、不要となった古い情報は消去しながら巡回的に使用（記憶）していくものとする。ここでは、特にその詳細動作については説明を省略する。なお工場出荷直後は全て消去されているので、その場合は最下位の１ページのデータ（全て値１）が図７のカウンター７０１にプリセットされ、その後は各起動時において、最新の論理アドレス範囲特定情報の時刻情報がプリセットされる。
【００４５】
一方、図９は論理アドレス範囲の切り替えが無い場合の通常の書き込み処理を示している。具体的には論理アドレス０＿ａ０〜０＿ｄ０の８ｋＢ分（４ページ分）のマルチバンクライトと０＿ａ１〜０＿ｄ１の８ｋＢ分（４ページ分）のマルチバンクライトを連続して行う動作例である。ここでＦＡＴ１６でのアクセス装置においては、通常１クラスターが１６ｋＢであり、多くの製品において１６ｋＢ単位でアクセス装置１００が書き込み指示を転送する。
【００４６】
特許文献１に示すような従来の半導体メモリ装置は、この指示に応じて１６ｋＢ分を書き込んだ後にＡＴライト、即ち読み書きメモリ１１３に一時記憶された集中型アドレス管理情報を不揮発性メモリ１１５に書き戻す処理がなされており、その時間的オーバヘッドが処理速度を下げる要因となっていた。本実施の形態においては、論理アドレス範囲が切り替わらない場合は、読み書きメモリ１１３に一時記憶された集中型アドレス管理情報を不揮発性メモリ１１５に書き戻す処理は行わず、ユーザデータの書き込みの時に併せて分散型アドレス管理情報を書き込むことにより、上述したオーバヘッドの合理化を行っている。
【００４７】
ユーザデータの書き込み毎に集中型アドレス管理情報を不揮発性メモリ１１５に書き戻さないため、電源遮断等の障害が起きた場合、不揮発性メモリ１１５上の集中型アドレス管理情報は最新のアドレス管理情報ではなくなる。そこで論理アドレス範囲特定部１０６が電源遮断等の障害が起きた直後の起動時に、電源遮断等の障害が起きた時の論理アドレス範囲を上述した手順で特定する。そして、その論理アドレス範囲に記憶されている分散型アドレス管理情報に基づき、集中型管理情報構築部１０７が読み書きメモリ１１３上に最新の集中型アドレス管理情報を構築する。
【００４８】
ここで、集中型管理情報構築部１０７が不揮発性メモリアクセス部１０９を介して読み込むデータ量は、論理アドレス範囲内の分散型アドレス管理情報に限るので、比較的少ない時間で読み込むことができる。例えば不揮発性メモリ１１５がマルチバンクページリード機能を備え、各マルチバンクページリードの所要時間が１００μ秒とすると、数式（３）により、約１００ｍ秒で読み出しが完了する。
１００μ秒×１ｋ＝１００ｍ秒・・・・（３）
【００４９】
１ＧＢの容量をもつ半導体メモリ装置（フラッシュメモリチップが８枚分）の場合は、数式（４）により、約８００ｍ秒となる。
１００ｍ秒×８枚＝８００ｍ秒・・・・（４）
これに対して、特許文献２に示すような従来の半導体メモリ装置は、全領域の分散型アドレス管理情報の読み出し時間は数式（５）により約６４００ｍ秒となる。
８００ｍ秒×８＝６４００ｍ秒・・・・（５）
この値はユーザの起動時の待ち時間としては長時間であるといえる。このような問題は、半導体メモリ装置の容量が大きくなればなる程、致命的な問題となる。（５）式の値は論理アドレス範囲に８区分していないので（４）式の値に比較して８倍となる。
【００５０】
さて、次に書き込み速度の向上に関して、以下定量的に説明する。図９に示したデータライト期間Ａ，Ｂ、及び図１０に示したＡＴライト期間、データライト期間Ｃを各々１．５ｍ秒と要するとする。特許文献１に示すような従来の半導体メモリ装置では図９のデータライト期間Ａ，Ｂの後にＡＴライト期間が必要であったので、数式（６）により４．５ｍ秒を要していた。
１．５ｍ秒×３＝４．５ｍ秒・・・・（６）
一方、本実施の形態においては数式（７）により３ｍ秒で済む。
１．５ｍ秒×２＝３ｍ秒・・・・（７）
【００５１】
但し、本実施の形態においては、図１０に示すように旧論理アドレス範囲の後処理と新論理アドレス範囲の後処理の分、従来例より余分に処理時間を要する。これを踏まえて、１つの論理範囲全体を１６ｋＢ単位で全て書き換えるレート値を基準にして比較する。まず、１つの論理アドレス範囲の容量は約１６ＭＢ（簡単のため、集中型アドレス管理領域分は誤差とする）であり、数式（８）により１６ｋＢ単位の書き込みで１つの論理アドレス範囲を書き換えるのに、アクセス装置１００は１ｋ回の書き込みを指示することになる。
１６ＭＢ÷１６ｋＢ＝１ｋ回・・・・（８）
【００５２】
まず特許文献１に示すような従来の半導体メモリ装置では、数式（９）に示すように平均３．６ＭＢ／秒の書き換えレートとなる。
１６ＭＢ÷（１ｋ回×４．５ｍ秒）≒３．６ＭＢ／秒・・・・（９）
一方、本実施の形態の半導体メモリ装置では、数式（１０）に示すように平均５．５ＭＢ／秒の書き換えレートとなり、本実施の形態における半導体メモリ装置の方がより高速に書き換えることができる。
１６ＭＢ÷｛（１ｋ回×３ｍ秒）＋（２回×１．５ｍ秒）｝
≒５．５ＭＢ／秒・・・・（１０）
なお、論理アドレス範囲切り替え時の瞬間的な速度劣化は、数ｍ秒オーダであるので、アクセス装置側が通常備えているバッファを使用することにより、十分吸収することができる。これにより処理が破綻することはない。
【００５３】
以上のように、本実施の形態によれば、半導体装置のメモリ容量が大きくなっても、起動時の初期化時間を極小化することができ、また集中型アドレス管理情報の更新における時間的なオーバヘッドを合理化し、結果として書き換えレートを向上できる。なお、図３における管理領域（冗長領域）には分散型アドレス管理情報等に加え、時刻情報も記憶させることにより、図２のカレント論理アドレス範囲ナンバー記憶領域に記憶された論理アドレス範囲特定情報の時刻情報と一致するイレーズブロックのみの情報に基づき、集中型アドレス管理領域に記憶された最も新しい集中型アドレス管理情報を改訂することによって、真の最新の集中型アドレス管理情報を構築してもよい。
【００５４】
また、論理アドレス範囲の区分の基準、即ちどの程度の容量で区分するかについては、初期化時の集中型アドレス管理情報構築に要する時間と、保証良のブロック率の少なくとも２つのファクターで決まるものであり、両者のバランスを考慮して決定すればよい。また、読み書きメモリ１１３は、比較的高速にアクセスできればＲＡＭ以外の読み書きメモリを使用しても構わない。また、不揮発性メモリ１１５は、複数の不揮発性メモリチップを内蔵しても構わない。また不揮発性メモリ１１５は、フラッシュメモリ以外の不揮発性メモリを用いても良い。
【００５５】
また集中型アドレス管理情報領域は、対応する各論理アドレス範囲内に備えられているが、アドレス管理情報用の領域を不揮発性メモリ１１１の例えば最後尾に確保し、そこにまとめて記憶させてもよい。またアドレス管理情報の記憶位置を、本実施の形態のように物理的に固定させるのではなく、アドレス管理情報の物理アドレスを指し示すポインタ情報を別に設け、ユーザデータ領域と同じ領域にアドレス管理情報を混在させ、ポインタ情報に応じて記憶位置を移動させるようにしてもよい。
【産業上の利用可能性】
【００５６】
本発明の半導体メモリ装置は、特に大容量の不揮発性メモリ（フラッシュメモリ）を用いたメモリカード等の初期化時間の短縮と高速処理化において有益であり、主に動画記録再生装置に好適に利用することができる。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施の形態における半導体メモリ装置の全体構成を示すブロック図である。
【図２】本実施の形態における不揮発性メモリの情報記録領域を示す説明図である。
【図３】本実施の形態におけるイレーズブロックの説明図である。
【図４】本実施の形態における論理アドレスフォーマットの説明図である。
【図５】本実施の形態における物理管理領域テーブルの説明図である。
【図６】本実施の形態におけるアドレス変換テーブルの説明図である。
【図７】本実施の形態における論理アドレス範囲切替部の構成例を示す回路図である。
【図８】本実施の形態における論理アドレス範囲特定情報の説明図である。
【図９】本実施の形態における書込みシーケンス（その１）を示す説明図である。
【図１０】本実施の形態における書込みシーケンス（その２）を示す説明図である。
【符号の説明】
【００５８】
１００  アクセス装置
１０１  ホストＩ／Ｆ部
１０２  ＣＰＵ
１０３  ＲＡＭ
１０４  ＲＯＭ
１０５  論理アドレス範囲切替部
１０６  論理アドレス範囲特定部
１０７  集中型アドレス管理情報構築部
１０８  集中型アドレス管理情報制御部
１０９  不揮発性メモリアクセス部
１１０  アドレス変換テーブル
１１１  物理領域管理テーブル
１１２  集中型アドレス管理情報
１１３  読み書きメモリ
１１４  不揮発性メモリコントローラ
１１５  不揮発性メモリ
１１６〜１１８  ユーザデータ
１１９〜１２１  アドレス管理情報
１２２  メモリ制御部
【図１】
2005216042.tif 000003
【図２】
2005216042.tif 000004
【図３】
2005216042.tif 000005
【図４】
2005216042.tif 000006
【図５】
2005216042.tif 000007
【図６】
2005216042.tif 000008
【図７】
2005216042.tif 000009
【図８】
2005216042.tif 000010
【図９】
2005216042.tif 000011
【図１０】
2005216042.tif 000012