(57)【要約】【課題】  フラッシュメモリ上のファイルデータを管理するために記憶したファイルアロケーションテーブルを更新する際に、高速に更新できるようにする。【解決手段】  フラッシュメモリ２の記憶領域に、ホストシステム２０から与えられるファイルデータが記憶される。これに対し、ファイルデータを管理するためのファイルアロケーションテーブル（ＦＡＴ）をＦＲＡＭ４に格納する。ファイルデータが更新されるごとにＦＡＴが更新されるが、ＦＲＡＭ４にＦＡＴを記憶させることにより、変更の必要な箇所のみを更新するだけで更新処理を終了できる。【選択図】  図１
2006040168.tif 000002
【特許請求の範囲】
【請求項１】
データの書込み及び読出しがページ単位で行われ、データの消去が複数ページからなるブロック単位で行われる記憶領域を有し、該記憶領域にホスト側から与えられたファイルデータを記憶するデータ領域が割当てられたフラッシュメモリと、
データの重ね書きが可能な記憶領域を有し、該記憶領域に前記ファイルデータを管理するためのファイル・アロケーション・テーブルを記憶するテーブル領域が割当てられた重ね書き可能な不揮発性メモリと、
前記データ領域に記憶されているファイルデータの更新に対応して、前記ファイル・アロケーション・テーブルを更新するテーブル更新手段と、
前記重ね書き可能な不揮発性メモリに記憶されたファイル・アロケーション・テーブルに基づき、前記データ領域に対するアクセスを制御するアクセス制御手段と、
を備えることを特徴とするフラッシュメモリシステム。
【請求項２】
前記データ領域に記憶されているファイルデータに関するファイル情報を記憶するディレクトリ領域が、前記重ね書き可能な不揮発性メモリの記憶領域に割当てられていることを特徴とする請求項１に記載のフラッシュメモリシステム。
【請求項３】
起動時に使用される初期化情報を記憶するブートセクタが、前記重ね書き可能な不揮発性メモリの記憶領域に割当てられていることを特徴とする請求項１又は２に記載のフラッシュメモリシステム。
【請求項４】
前記重ね書き可能な不揮発性メモリは、強誘電体メモリで構成されていることを特徴とする請求項１乃至３のいずれか１項に記載のフラッシュメモリシステム。
【請求項５】
前記重ね書き可能な不揮発性メモリは、
前記テーブル領域が割当てられた記憶領域を持つスタティックランダムアクセスメモリと、
前記スタティックランダムアクセスメモリに記憶された情報をバックアップするバックアップ手段と、
を備えることを特徴とする請求項１乃至３のいずれか１項に記載のフラッシュメモリシステム。
【請求項６】
データの書込み及び読出しがページ単位で行われ、データの消去が複数ページからなるブロック単位で行われる記憶領域を有し、該記憶領域にホスト側から与えられたファイルデータを記憶するデータ領域が割当てられたフラッシュメモリと、
データの重ね書きが可能な記憶領域を有し、該記憶領域に前記ファイルデータを管理するためのファイル・アロケーション・テーブルを記憶するテーブル領域が割当てられた重ね書き可能な不揮発性メモリとを備えるシステムにおいて、
前記フラッシュメモリに記憶されているファイルデータの更新に対応して、前記ファイル・アロケーション・テーブルを更新する処理と、
前記重ね書き可能な不揮発性メモリに記憶されたファイル・アロケーション・テーブルに基づき、データ領域に対するアクセスを制御する処理と、
を行なうことを特徴とするフラッシュメモリの制御方法。
【請求項７】
前記重ね書き可能な不揮発性メモリは、強誘電体メモリで構成されていることを特徴とする請求項６に記載のフラッシュメモリの制御方法。
【請求項８】
前記重ね書き可能な不揮発性メモリは、
前記テーブル領域が割当てられた記憶領域を持つスタティックランダムアクセスメモリと、
前記スタティックランダムアクセスメモリに記憶された情報をバックアップするバックアップ手段と、
を備えることを特徴とする請求項６に記載のフラッシュメモリの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フラッシュメモリシステム及びフラッシュメモリの制御方法に関する。
【背景技術】
【０００２】
近年、メモリーカードやシリコンディスク等の形態でメモリシステムに使用される半導体メモリとして、フラッシュメモリが広く採用されている。フラッシュメモリに格納されたデータは、電力が供給されていないときでも保持されていることが要求される。
【０００３】
ＮＡＮＤ型フラッシュメモリは、上記のメモリシステムで特に多く用いられるフラッシュメモリである。
ＮＡＮＤ型フラッシュメモリに含まれている複数のメモリセルのそれぞれは、消去状態のときに論理値"１"を示し、書込み状態の時に"０"を示す。そして、複数のメモリセルは、他のメモリセルとは独立して消去状態から書込状態へと変化することができる。
【０００４】
これとは対照的に、書込状態から消去状態へと変化させるときには、各メモリセルは他のメモリセルと独立して変化させることができない。この書込状態から消去状態に変化させるときには、ブロックと称される予め定められた所定数のメモリセルを全て同時に消去状態にする。この一括消去動作は、一般的に、「ブロック消去」と称されている。ＮＡＮＤ型フラッシュメモリに対する書込処理若しくは読出処理は、ページと称される予め定められた数のメモリセル単位に処理が行なわれる。消去処理の単位であるブロックは複数のページで構成されている。
【０００５】
このようなフラッシュメモリには、書込み回数（消去回数）に制限があるため、一部のブロックに書込み（消去）が集中すると、そのブロックにおける書込み（消去）回数が制限を超えて不良ブロック化し、正常にデータの書込みを行なうことができなくなる。
【０００６】
従って、ＦＡＴ（ファイル・アロケーション・テーブル）ファイルシステムのようなファイル管理を用いてフラッシュメモリにファイルデータを記憶させる場合にフラッシュメモリの寿命を延ばすためには、書替え回数の多くなるＦＡＴ（ファイル・アロケーション・テーブル）の書込みが、一部のブロックに集中しないように管理しなければならない。
【０００７】
下記特許文献１では、フラッシュメモリの記憶領域内にＦＡＴを記憶するテーブル領域を複数を形成し、そのテーブル領域を、ローテーションして使用することにより、書込み回数を平準化させている。
【０００８】
下記特許文献２では、ＦＡＴを、ランダムアクセスメモリ（以下、ＲＡＭという）に読出し、ＲＡＭ上で更新することにより、フラッシュメモリの書替回数の増大を抑制している。
【特許文献１】特開平１１−２４９９６８号公報
【特許文献２】特開平7−２９５８６６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
特許文献１では、フラッシュメモリ上でＦＡＴの更新を行なっている。そのため、ＦＡＴを更新するときに、消去済みブロックに更新後のＦＡＴを再書込みしなければならない。これにより、ＦＡＴの更新処理時間が長くなる。
又、特許文献２では、ＦＡＴを、ＲＡＭ上で更新しているので、突然電源が遮断された場合、最新のＦＡＴのデータが消失しまう。
【００１０】
本発明は、このような従来の問題を解決し、ＦＡＴの更新時間を短くできると共に、電源を切断するときに、ＦＡＴをバックアップしなくてもよいフラッシュメモリシステム及びフラッシュメモリの制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、本発明の第１の観点に係るフラッシュメモリシステムは、データの書込み及び読出しがページ単位で行われ、データの消去が複数ページからなるブロック単位で行われる記憶領域を有し、該記憶領域にホスト側から与えられたファイルデータを記憶するデータ領域が割当てられたフラッシュメモリと、データの重ね書きが可能な記憶領域を有し、該記憶領域に前記ファイルデータを管理するためのファイル・アロケーション・テーブルを記憶するテーブル領域が割当てられた重ね書き可能な不揮発性メモリと、前記データ領域に記憶されているファイルデータの更新に対応して、前記ファイル・アロケーション・テーブルを更新するテーブル更新手段と、前記重ね書き可能な不揮発性メモリに記憶されたファイル・アロケーション・テーブルに基づき、前記データ領域に対するアクセスを制御するアクセス制御手段と、を備えることを特徴とする。
【００１２】
なお、前記データ領域に記憶されているファイルデータに関するファイル情報を記憶するディレクトリ領域が、前記重ね書き可能な不揮発性メモリの記憶領域に割当てられてもよい。
【００１３】
また、起動時に使用される初期化情報を記憶するブートセクタが、前記重ね書き可能な不揮発性メモリの記憶領域に割当てられてもよい。
【００１４】
また、前記重ね書き可能な不揮発性メモリは、強誘電体メモリで構成されてもよい。
【００１５】
また、前記重ね書き可能な不揮発性メモリは、前記テーブル領域が割当てられた記憶領域を持つスタティックランダムアクセスメモリと、前記スタティックランダムアクセスメモリに記憶された情報をバックアップするバックアップ手段と、を備えてもよい。
【００１６】
上記目的を達成するために、本発明の第２の観点に係るフラッシュメモリの制御方法は、データの書込み及び読出しがページ単位で行われ、データの消去が複数ページからなるブロック単位で行われる記憶領域を有し、該記憶領域にホスト側から与えられたファイルデータを記憶するデータ領域が割当てられたフラッシュメモリと、データの重ね書きが可能な記憶領域を有し、該記憶領域に前記ファイルデータを管理するためのファイル・アロケーション・テーブルを記憶するテーブル領域が割当てられた重ね書き可能な不揮発性メモリとを備えるシステムにおいて、前記フラッシュメモリに記憶されているファイルデータの更新に対応して、前記ファイル・アロケーション・テーブルを更新する処理と、前記重ね書き可能な不揮発性メモリに記憶されたファイル・アロケーション・テーブルに基づき、データ領域に対するアクセスを制御する処理と、を行なうことを特徴とする。
【００１７】
なお、前記重ね書き可能な不揮発性メモリは、強誘電体メモリで構成されていてもよい。
【００１８】
また、前記重ね書き可能な不揮発性メモリは、前記テーブル領域が割当てられた記憶領域を持つスタティックランダムアクセスメモリと、前記スタティックランダムアクセスメモリに記憶された情報をバックアップするバックアップ手段と、を備えてもよい。
【発明の効果】
【００１９】
本発明によれば、フラッシュメモリにファイルデータを記憶させる場合に、ＦＡＴを重ね書き可能な不揮発性メモリ上で更新し、保存するようにしたので、ＦＡＴの更新時間を短くできる。また、突然電源が遮断された場合に、最新のＦＡＴのデータが消失してしまうという問題も解消される。
【発明を実施するための最良の形態】
【００２０】
以下、図面に基づき、本発明の実施形態について説明する。
図１は、本発明の実施形態に係るフラッシュメモリシステム１を概略的に示す機能ブロック図である。
【００２１】
図１に示したようにフラッシュメモリシステム１は、ＮＡＮＤ型フラッシュメモリで構成されたフラッシュメモリ２と、フラッシュメモリ２を制御するメモリコントローラ３と、フラッシュメモリ２に記憶されているファイルデータを管理するためのファイル・アロケーション・テーブル（以下、ＦＡＴという）を保存する強誘電体メモリ（Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  ＲＡＭ：以下、ＦＲＡＭという）４とで構成されている。
【００２２】
フラッシュメモリシステム１は、ホストシステム２０に着脱可能に装着されて使用され、ホストシステム２０の一種の外部記憶装置として用いられる。ホストシステム２０から与えられたファイルデータが、フラッシュメモリ２に格納される。フラッシュメモリ２のファイルデータを管理するためのＦＡＴ（ファイル・アロケーション・テーブル）がＦＲＡＭ４に記憶される。
【００２３】
尚、ホストシステム２０としては、文字、音声、或いは画像情報等の種々の情報を処理するパーソナルコンピュータやデジタルスチルカメラをはじめとする各種情報処理装置が挙げられる。
【００２４】
フラッシュメモリ２は、ページ単位で読出し又は書込みを実行し、ブロック単位で消去を実行するデバイスである。
【００２５】
メモリコントローラ３は、ホストインターフェース制御ブロック５と、マイクロプロセッサ６と、ホストインターフェースブロック７と、ワークエリア８と、バッファ９と、内部インターフェースブロック１０と、ＥＣＣ（エラー・コレクション・コード）ブロック１１と、フラッシュメモリシーケンサブロック１２とから構成される。
【００２６】
これら機能ブロックによって構成されるメモリコントローラ３は、一つの半導体チップ上に集積されている。以下に各ブロックの機能を説明する。
マイクロプロセッサ６は、メモリコントローラ３を構成する各機能ブロック全体の動作を制御する機能ブロックである。
【００２７】
ホストインターフェース制御ブロック５は、ホストインターフェースブロック７の動作を制御する機能ブロックである。ここで、ホストインターフェース制御ブロック５は、ホストインターフェースブロック７の動作を設定する動作設定レジスタ（図示せず）を備えており、この動作設定レジスタに基づきホストインターフェースブロック７は動作する。
【００２８】
ホストインターフェースブロック７は、ホストシステム２０とデータ、アドレス情報、ステータス情報及び外部コマンド情報の授受を行なう機能ブロックである。すなわち、フラッシュメモリシステム１がホストシステム２０に装着されると、フラッシュメモリシステム１とホストシステム２０とは、外部バス１３を介して相互に接続される。この状態において、ホストシステム２０よりフラッシュメモリシステム１に供給されるデータ等は、ホストインターフェースブロック７を入口としてメモリコントローラ３の内部に取り込まれる。フラッシュメモリシステム１からホストシステム２０に供給されるデータ等は、ホストインターフェースブロック７を出口としてホストシステム２０に供給される。
【００２９】
さらに、ホストインターフェースブロック７は、ホストシステム２０より供給されるアドレス情報及び外部コマンドを一時的に保持するタスクファイルレジスタ（図示せず）及びエラーが発生した場合にセットされるエラーレジスタ（図示せず）等を有している。
【００３０】
ワークエリア８は、フラッシュメモリ２の制御に必要なデータが一時的に格納される作業領域であり、複数のスタティックランダムアクセスメモリ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ：以下、ＳＲＡＭという）によって構成される機能ブロックである。
【００３１】
バッファ９は、フラッシュメモリ２から読出したデータ及びフラッシュメモリ２に書込むデータを一時的に保持する機能ブロックである。すなわち、フラッシュメモリ２から読出したデータは、ホストシステム２０の受取り準備ができるまでバッファ９に保持され、フラッシュメモリ２に書込むデータは、フラッシュメモリ２の書込み準備ができるまでバッファ９に保持される。
【００３２】
フラッシュメモリシーケンサブロック１２は、内部コマンドに基づきフラッシュメモリ２の動作を制御する機能ブロックである。フラッシュメモリシーケンサブロック１２は、複数のレジスタ（図示せず）を備え、この複数のレジスタに内部コマンドを実行する際に必要な情報が設定される。この複数のレジスタに内部コマンドを実行する際に必要な情報が設定されると、フラッシュメモリシーケンサブロック１２は、その情報に基づいて処理を実行する。
【００３３】
ここで、「内部コマンド」とは、メモリコントローラ３からフラッシュメモリ２に与えられるコマンドであり、ホストシステム２０からフラッシュメモリシステム１に与えられるコマンドである「外部コマンド」とは区別される。
【００３４】
内部インターフェースブロック１０は、内部バス１４を介して、フラッシュメモリ２或いはＦＲＡＭ４とデータ、アドレス情報、ステータス情報、内部コマンド情報及びデバイスＩＤ情報等の授受を行なう機能ブロックである。尚、フラッシュメモリ２用のバスとＦＲＡＭ４用のバスについては、一部を共用（例えば、データバスを共用）しても、別々に設けてもよい。
【００３５】
ＥＣＣブロック１１は、フラッシュメモリ２に書込むデ―タに付加されるエラーコレクションコードを生成するとともに、フラッシュメモリ２から読出したデータに付加されたエラーコレクションコードに基づいて、読出したデータに含まれる誤りを検出・訂正する機能ブロックである。
【００３６】
次に、フラッシュメモリ２について説明する。
フラッシュメモリシステム１で、フラッシュメモリ２を構成するＮＡＮＤ型フラッシュメモリは、ストレージデバイスへの用途として(ハードディスクの代わりになるものとして)開発された不揮発性メモリである。このＮＡＮＤ型フラッシュメモリは、ランダムアクセスを行なうことができず、書込みと読出しはページ単位で、消去はブロック単位で行なわれる。又、データの上書きができないので、データを書込むときは、消去されている領域にデータの書込みを行なう。
【００３７】
フラッシュメモリ２は、このような特徴を有するため、通常、データの書替を行なう場合には、ブロック消去されている消去済みブロックに新たなデータ（書替後のデータ）を書込み、古いデータ（書替前のデータ）が書込まれていたブロックを消去するという処理を行なっている。このようなデータの書替えを行なった場合、書替後のデータは、書替前のデータと異なるブロックに書込まれる。
【００３８】
そのため、ホストシステム２０側から与えられるアドレスに基づく論理ブロックアドレスと、フラッシュメモリ２内でのブロックアドレスである物理ブロックアドレスとの対応関係は、データを書替える毎に動的に変化する。この論理ブロックアドレスと物理ブロックアドレスとの対応関係は、通常、その対応関係を示したアドレス変換テーブルによって管理されており、アドレス変換テーブルは、後述する対応論理ブロックアドレスに基づいて作成される。
【００３９】
上記ブロックの構成は、ＮＡＮＤ型フラッシュメモリの仕様によって異なる。
図２（ａ），（ｂ）は、ブロックとページの関係を示す説明図である。
【００４０】
一般的なＮＡＮＤ型フラッシュメモリでは、図２（ａ）に示したように、１ブロックが３２ページ（Ｐ００〜Ｐ３１）で構成され、各ページが５１２バイトのユーザ領域と１６バイトの冗長領域で構成されている。
【００４１】
又、記憶容量の増加に伴い、図２（ｂ）に示したように、１ブロックが６４ページ（Ｐ００〜Ｐ６３）で構成され、各ページが２０４８バイトのユーザ領域と６４バイトの冗長領域で構成されているものも提供されている。
【００４２】
この実施形態のフラッシュメモリ２では、１ブロックが３２ページ（Ｐ００〜Ｐ３１）で構成され、各ページを５１２バイトのユーザ領域と１６バイトの冗長領域で構成したものを用いる。
【００４３】
ユーザ領域は、主に、ホストシステム２０から供給されるファイルデ―タが記憶されるデータ領域であり、冗長領域は、エラーコレクションコード、対応論理ブロックアドレス及びブロックステータス等の付加データが記憶される領域である。
【００４４】
エラ―コレクションコードとは、ユーザ領域に記憶されているデータに含まれる誤りを検出、訂正するための付加データであり、外部のＥＣＣブロック１１によって生成される。
【００４５】
対応論理ブロックアドレスは、そのブロックにデータが格納されている場合に、そのブロックがどの論理ブロックアドレスに対応するかを示している。尚、そのブロックにデータが格納されていない場合は、対応論理ブロックアドレスも格納されていないので、対応論理ブロックアドレスが格納されているか否かで、そのブロックが消去済ブロックであるか否かを判断することもできる。つまり、対応論理ブロックアドレスが格納されていない場合は、消去済ブロックであると判断される。
【００４６】
ブロックステータスは、そのブロックが不良ブロック（正常にデータの書込み等を行なうことができないブロック）であるか否かを示すフラグであり、そのブロックが不良ブロックであると判断された場合には、不良ブロックであることを示すフラグが設定される。
【００４７】
一般的なＮＡＮＤ型フラッシュメモリと同様に、フラッシュメモリ２は、書込みデータ若しくは読出しデータを保持するためのレジスタと、データを記憶するメモリセルアレイによって構成されている。メモリセルアレイは、複数のメモリセルが直列に接続されたメモリセル群を複数備えており、ワード線によってメモリセル群の特定のメモリセルが選択される。このワード線によって選択されたメモリセルとレジスタとの間で、データの複写（レジスタからメモリセルへの複写、若しくはメモリセルからレジスタへの複写）が行なわれる。
【００４８】
メモリセルアレイを構成するメモリセルは、２つのゲートを備えたＭＯＳトランジスタで構成されている。ここで、上側のゲートはコントロールゲートと呼ばれ、下側のゲートはフローティングゲートと呼ばれている。フローティングゲートに電荷（電子）を注入若しくはフローティングゲートから電荷（電子）を排出することによって、データの書込み若しくはデータの消去を行なっている。
【００４９】
このフローティングゲートは周囲を絶縁体で囲まれているので、注入された電子は長期間にわたって保持される。尚、フローティングゲートに電子を注入するときは、コントロールゲートが高電位側となる高電圧を印加して電子を注入し、フローティングゲートから電子を排出するときは、コントロールゲートが低電位側となる高電圧を印加して電子を排出する。
【００５０】
フローティングゲートに電子が注入されている状態（書込状態）が、論理値の"０"のデータに対応し、フローティングゲートから電子が排出されている状態（消去状態）が、論理値の"１"のデータに対応する。
【００５１】
次に、ＦＲＡＭ４について説明する。
ＦＲＡＭ４は、強誘電体膜の自発分極現象を利用したメモリであり、印加電界方向によって反転する分極方向により、データを記憶している。メモリセルに強誘電体膜を採用することによって、データの不揮発特性を確保している。このＦＲＡＭ４の記憶領域は、フラッシュメモリ２に記憶されるファイルデータを管理する情報としてＦＡＴが保存されるテーブル領域が割当てられる。更に、ＦＡＴファイルシステムで、ブートレコードやディレクトリ領域に記憶されている情報を保存してもよい。マイクロプロセッサ６は、ＦＡＴをＦＲＡＭ４に保存すると共に、その更新を適宜に実施する。
【００５２】
次に、フラッシュメモリシステム１で用いられているファイル管理システムであるＦＡＴファイルシステムについて説明する。
図３は、記憶領域の割当ての説明図である。
【００５３】
ＦＡＴファイルシステムでは、データ領域に記憶されるファイルデータが、ブートレコード、ＦＡＴ領域及びディレクトリ領域に記憶されている情報によって管理されている。本発明に係るフラッシュメモリシステム１では、図３に示したように、データ領域がフラッシュメモリ２の記憶領域に割当てられ、テーブル領域はＦＲＡＭ４のような重ね書き可能な不揮発性メモリの記憶領域に割当てられている。又、ブートレコードやディレクトリ領域も、ＦＲＡＭ４のような重ね書き可能な不揮発性メモリの記憶領域に割当てられることが好ましい。
【００５４】
データ領域に記憶されるファイルデータは、１又は複数のページで構成されたクラスタ単位で保存される。１つのファイルが複数のクラスタに分けて保存されている場合、それらのクラスタがどのような順序でつながって、１つのファイルを構成しているかは、ＦＡＴによって管理されている。
【００５５】
このＦＡＴによる管理について、図４を参照して説明する。
図４は、クラスタとＦＡＴエントリの関係を示す説明図である。
データ領域に記憶されているファイルのファイル名、拡張子、ファイルサイズ、更新年月日、ファイルの最初のクラスタ等は、ディレクトリ領域に記憶される。
【００５６】
例えば、ＦＩＬＥ６の最初のクラスタが１５（００００  ０００Ｆｈ（１６進数））の場合、テーブル領域の１５番目のクラスタに対応するＦＡＴエントリに、このクラスタにつながるクラスタの番号、若しくはこのクラスタが最終であることを示す数値が記憶される。
【００５７】
図４の例では。１５番目のクラスタに対応するＦＡＴエントリには、２５（００００  ００１９ｈ（１６進数））が記憶されている。２５番目のクラスタに対応するＦＡＴエントリには、１７（００００  ００１１ｈ（１６進数））が記憶されている。１７番目のクラスタに対応するＦＡＴエントリには、１９（００００  ００１３ｈ（１６進数））が記憶されている。１９番目のクラスタに対応するＦＡＴエントリには、２８（００００  ００１Ｃｈ（１６進数））が記憶されている。２８番目のクラスタに対応するＦＡＴエントリには、最終のクラスタであることを示す２６８４３５４５５（０ＦＦＦ  ＦＦＦＦｈ（１６進数））が記憶されている。
【００５８】
これらのＦＡＴエントリから、ＦＩＬＥ６は、１５番目のクラスタ、２５番目のクラスタ、１７番目のクラスタ、１９番目のクラスタ及び２８番目のクラスタを、この順番でつなげたファイルであることがわかる。
【００５９】
クラスタは、１又は複数のページで構成されている。例えば、フラッシュメモリ２の１ブロックが３２個のページで構成されている場合に、クラスタが８個のページで構成されていれば、４クラスタがフラッシュメモリ２の１ブロックに対応する。この構成で、同一のブロックに割当てられている４クラスタのうちの１つだけを書替える場合、他の３つクラスタについても、他の消去済ブロックに割当てられているクラスタに再書込みしなければならない。
【００６０】
ファイルの一部が異なるクラスタに書替えられた場合、書替えられたクラスタのＦＡＴエントリだけでなく、そのクラスタがつながる１つ前のクラスタのＦＡＴも書替えなければならない。例えば、１７番目のクラスタに書込まれていたデータを更新するときに、３３番目のクラスタに新たなデータを書込んだ場合は、３３番目のクラスタに対応するＦＡＴエントリに１９（００００  ００１３ｈ（１６進数））を書込むと共に、２５番目のクラスタに対応するＦＡＴエントリを、１７（００００  ００１１ｈ（１６進数））から３３（００００  ００２１ｈ（１６進数））に書替えなければならない。尚、１７番目のクラスタに記憶されていたデータは消去され、１７番目のクラスタに対応するＦＡＴエントリには、未使用クラスタを示す０（００００  ００００ｈ（１６進数））が書込まれる。
【００６１】
正常な書込みを行なうことができない不良ブロックが発生した場合には、そのブロックに割当てられているクラスタのＦＡＴエントリに、不良クラスタを示す２６８４３５４４７（０ＦＦＦ  ＦＦＦ７ｈ（１６進数））が書込まれる。
【００６２】
上記のように、ファイルの書込み、書替えに伴いＦＡＴエントリは頻繁に書替えられるため、ページ単位で書込みが行なわれ、ブロック単位で消去が行なわれる。フラッシュメモリ２内にテーブル領域を割当てた場合、ＦＡＴの更新処理が非常に煩雑になる。しかし、本実施形態のフラッシュメモリシステム１では、テーブル領域がＦＲＡＭ４のような重ね書き可能な不揮発性メモリに割当てられているので、変更のあったＦＡＴだけを書替えるだけでよい。これにより、更新処理の高速化が期待できる。また、電源が途中で切れても、ＦＡＴの最新の情報が消失することがなく、信頼性が向上する。
【００６３】
尚、上記の説明では、重ね書き可能な不揮発性メモリとしてＦＲＡＭ４を用いている。ＦＲＡＭは、ＤＲＡＭセルにおいて電荷を保持する誘電体キャパシタを強誘電体とすることで不揮発性を強化したものである。重ね書き可能な不揮発性メモリとしてＦＲＡＭ以外にも、熱によりアモルファス状態と結晶状態を切替えて抵抗値を変化させることで“１”と“０”とを記憶するＯＵＭ（Ｏｖｏｎｉｃ  Ｕｎｉｆｉｅｄ  Ｍｅｍｏｒｙ）や、強磁性トンネル磁気抵抗効果（ＴＭＲ：Ｔｕｎｎｅｌ  Ｍａｇｎｅｔｏ  Ｒｅｓｉｓｔａｎｃｅ）素子を用いて抵抗値の変化を論理値の"１"と"０"とに対応させるＭＲＡＭ（Ｍａｇｎｅｔｉｃ  ＲＡＭ）等が、使用できる。
【００６４】
さらに、ＦＲＡＭ４は、ＳＲＡＭにデータバックアップ用ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）を搭載したものや、ＳＲＡＭのデータを電池でバックアップしたもの（Ｂａｔｔｅｒｙ  Ｂａｃｋ  Ｕｐ  ＳＲＡＭ）であってもよい。
【図面の簡単な説明】
【００６５】
【図１】本発明の実施形態に係るフラッシュメモリシステムを示す機能ブロック図である。
【図２】ブロックとページの関係を示す説明図である。
【図３】フラッシュメモリとＦＲＡＭに割当てられた領域を示す説明図である。
【図４】クラスタとＦＡＴ（ファイル・アロケーション・テーブル）エントリの関係を示す説明図である。
【符号の説明】
【００６６】
１  フラッシュメモリシステム
２  フラッシュメモリ
３  メモリコントローラ
４  ＦＲＡＭ
５  ホストインターフェース制御ブロック
６  マイクロプロセッサ
７  ホストインターフェースブロック
８  ワークエリア
９  バッファ
１０  内部インターフェースブロック
１１  ＥＣＣブロック
１２  フラッシュメモリシーケンサブロック
１３  外部バス
１４  内部バス
２０  ホストシステム
【図１】
2006040168.tif 000003
【図２】
2006040168.tif 000004
【図３】
2006040168.tif 000005
【図４】
2006040168.tif 000006