(57)【特許請求の範囲】
【請求項１】
ブロック化された単位領域を有し、時間的に連続して入力されるストリームデータ等の主情報を、離散的なブロック又は連続的なブロックに記録していくことができる主情報記録領域と、上記主情報に対する上記主情報記録領域上の記録開始位置と、上記主情報が記録された各ブロックを論理的に結合させるリンク情報と、上記主情報を管理するディレクトリ情報と、から成る管理情報を記録する管理領域とから構成される記録媒体に、主情報を記録する記録装置における記録方法として、
新規な主情報を記録する際に上記ディレクトリ情報として暫定ファイル名を記録する暫定ファイル名記録手順と、
上記主情報記録領域に存在する記録可能なブロックを所定の順序で検索する検索手順と、
上記検索手順において検知した記録可能なブロックに上記主情報を順次記録する主情報記録手順と、
上記主情報記録手順による主情報の上記主情報記録領域への記録が終了した後に、上記リンク情報を生成して、生成されたリンク情報と記録開始位置を上記管理領域に記録する管理情報記録手順と、
上記暫定ファイル名を消去する暫定ファイル名消去手順と、
が実行される記録方法。
【請求項２】
上記検索手順での記録可能なブロックの検索は、ブロックに付与された番号を昇順に検索していく請求項１に記載の記録方法。
【請求項３】
上記主情報記録手順での、上記記録可能なブロックヘの主情報の記録は、上記検索手順で検索された記録可能なブロックの番号を記録媒体の物理アドレスに変換してから行う請求項１に記載の記録方法。
【請求項４】
上記主情報記録手順では、上記記録可能なブロックへの主情報の記録終了前に、次に記録可能なブロックの内容を消去するようにした請求項１に記載の記録方法。
【請求項５】
上記管理情報記録手順では、上記管理情報で記録可能とされているブロックのうちで主情報が既に記録されたブロックを検索して、そのブロックの番号を順に結合させることで上記リンク情報を作成する請求項１に記載の記録方法。
【請求項６】
上記リンク情報の作成の際には、上記管理情報で記録可能とされているブロックの番号を所定の順に検索して行き、上記主情報が記録されていないブロックを検出した際の直前のブロックを、上記主情報が最後に記録されたブロックと判別してリンク情報を作成する請求項５に記載の記録方法。
【請求項７】
上記主情報記録手順では、最後に主情報を記録したブロックに付与された番号を記憶しておき、
上記管理情報記録手順では、上記主情報記録手順で記憶した番号を最後に主情報の記録されたブロックと判別してリンク情報を作成する請求項５に記載の記録方法。
【請求項８】
上記暫定ファイル名とともに、新たな主情報を最初に記録するブロックに付与された番号を記憶しておき、
上記管理情報記録手順では、上記暫定ファイル名とともに記憶した番号を主情報の記録された最初のブロックと判別してリンク情報を作成する請求項５に記載の記録方法。
【請求項９】
上記暫定ファイル名消去手順では、上記暫定ファイル名を消去するとともに、記録された主情報を示すファイル名を上記管理領域に記録する請求項１に記載の記録方法。
【請求項１０】
ブロック化された単位領域を有し、時間的に連続して入力されるストリームデータ等の主情報を、離散的なブロック又は連続的なブロックに記録していくことができる主情報記録領域と、上記主情報に対する上記主情報記録領域上の記録開始位置と、上記主情報が記録された各ブロックを論理的に結合させるリンク情報と、上記主情報を管理するディレクトリ情報と、から成る管理情報を記録する管理領域とから構成される記録媒体を管理する記録装置における管理方法として、
上記ディレクトリ情報に暫定ファイル名が書き込まれているか否かを判定する暫定ファイル名判定手順と、
上記判定手順によって暫定ファイル名が書き込まれていると判定された場合に、上記管理情報に基づいて記録可能とされるブロックを所定の順序で検索する検索手順と、
上記検索されたブロックに主情報が記録されているか否かを判定する記録判定手順と、
上記記録判定手順において最初に主情報が記録されたブロックであると判定されたブロックを記録開始位置とし、さらに上記検索手順の検索順序で主情報が記録されていると判定されたブロックが論理的に結合されるようにリンク情報を作成するリンク情報作成手順と、
上記記録開始位置と上記リンク情報を、上記管理情報として上記管理領域に記録する管理情報記録手順と、
上記暫定ファイル名を消去する暫定ファイル名消去手順と、
が実行される管理方法。
【請求項１１】
上記検索手順での所定順序の検索は、ブロックに付与された番号の昇順に行う請求項１０に記載の管理方法。
【請求項１２】
上記リンク情報作成手順では、上記管理情報で記録可能とされているブロックの番号の所定の順の検索において、上記主情報が記録されていないブロックを検出した際の直前のブロックを、上記主情報が最後に記録されたブロックと判別してリンク情報を作成する請求項１０に記載の管理方法。
【請求項１３】
ブロック化された単位領域を有し、時間的に連続して入力されるストリームデータ等の主情報を、離散的なブロック又は連続的なブロックに記録していくことができる主情報記録領域と、上記主情報に対する上記主情報記録領域上の記録開始位置と、上記主情報が記録された各ブロックを論理的に結合させるリンク情報と、上記主情報を管理するディレクトリ情報と、から成る管理情報を記録する管理領域とから構成される記録媒体に対して、主情報を記録する記録装置として、
上記ディレクトリ情報と上記主情報と上記管理情報の各々を、上記記録媒体の所定の領域に記録しまたは消去することができる記録消去手段と、
上記記録媒体の記録可能なブロックを所定の順番で検索する検索手段と、
リンク情報を生成するリンク情報生成手段と、
新規な主情報を記録する際に暫定ファイル名を上記ディレクトリ情報として上記管理領域に記録させ、また連続して入力される主情報を上記検索手段により検索された記録可能なブロックに順次記録させ、また上記主情報の記録が終了した後に上記リンク情報生成手段によって生成されたリンク情報と記録開始位置とを上記管理領域に記録させ、また上記暫定ファイル名を消去させるように、上記記録消去手段を制御する制御手段と、
を備えている記録装置。
【請求項１４】
上記検索手段は、ブロックに付与された番号の昇順に検索を行う請求項１３に記載の記録装置。
【請求項１５】
上記検索手段で検索された記録可能なブロックの番号を記録媒体の物理アドレスに変換する変換手段を更に備え、
上記記録消去手段による記録可能なブロックヘの主情報の記録は、上記物理アドレスに基づいて行われる請求項１３に記載の記録装置。
【請求項１６】
上記制御手段は、上記記録可能なブロックへの主情報の記録が終了する前に、次に記録可能なブロックの記録内容を上記記録消去手段によって消去させる請求項１３に記載の記録装置。
【請求項１７】
上記リンク情報生成手段は、上記検索手段によって検索された記録可能なブロックのうち主情報が既に書き込まれたブロックの番号を所定の順に結合させて上記リンク情報を生成する請求項１３に記載の記録装置。
【請求項１８】
上記検索手段によって上記所定の順序で検索された記録可能なブロックのうちで、主情報が記録されていた最後のブロックを、上記主情報の連続した記録における最後のブロックと判断する請求項１３に記載の記録装置。
【請求項１９】
上記制御手段は、上記記録消去手段により上記暫定ファイル名を消去させるとともに新たに記録した主情報を示すファイル名を上記管理領域に記録させる請求項１３に記載の記録装置。
【請求項２０】
上記記録媒体が着脱可能とされている請求項１３に記載の記録装置。
【請求項２１】
上記記録媒体は、フラッシュメモリで構成される請求項１３に記載の記録装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は各種データファイルを記録できる記録媒体に対するデータファイルの記録方法、管理方法、及び記録装置に関するものである。
【０００２】
【従来の技術】
近年、例えばフラッシュメモリなどの固体記憶素子を搭載した小型の記録媒体を形成し、専用のドライブ装置や、或いはドライブ装置をオーディオ／ビデオ機器、情報機器などに内蔵して、コンピュータデータ、静止画像データ、動画像データ、音楽や音声のオーディオデータなどを記憶できるようにするものが開発されている。
【０００３】
【発明が解決しようとする課題】
ところで、このような固体記憶素子を利用した記録システムにおいては、動画像データ、オーディオデータなど、内容的に時間的連続性があり、記録データとしては時間的に連続して供給されてくるデータ（以下、ストリームデータという）を記録する場合には、単位時間当たりの記録可能データ量とストリームデータのビットレートの関係で、適切に記録ができない場合がある。
換言すれば、時間的に連続して供給されてくるストリームデータのビットレート（単位時間当たりのデータ量）が記録可能なデータ量としてのビットレートを超える場合は、ストリームデータがオーバーフローしてしまうことになる。そのため、記録可能なストリームデータとしてのビットレートが制限されることになる。つまりビットレートが所定値以上高いストリームデータはリアルタイムには書込ができない。
【０００４】
ここで、フラッシュメモリを用いる記録媒体に対して、ＦＡＴ（File Allocation Table）により書込データのアドレスを管理するとともに、アドレス変換テーブルを用いるシステムについてのデータ書込処理について図３２に示す。
ＦＡＴ及びアドレス変換テーブルについて詳しくは後述するが、ＦＡＴとは所定データ単位（後述するクラスタ）毎にデータを書き込んだ際に、そのアドレスをリンクさせることで１つのファイルとしての各クラスタのつながりを管理する情報である。
またアドレス変換テーブルは、ＦＡＴで用いる論理アドレスを実際の記録媒体上の実アドレスである物理アドレスに変換するための情報である。
即ち或る１つのファイルデータは、記録媒体上で通常複数のクラスタに渡って記録されるが、ＦＡＴではそのクラスタのつながりを記録することで、１つのデータファイルとしての記録部分（各クラスタのアドレス及び順序）が管理される。またＦＡＴでは論理アドレスとしてデータに対応するアドレスで処理を行うが、これがアドレス変換テーブルに基づいて物理アドレスに変換されて記録媒体に対する記録再生アクセスが行われることになる。
【０００５】
ストリームデータの記録が行われる場合には、記録装置のコントローラは、図３２に示すようにまずステップＦ３０１としてファイルオープンを行なって記録動作を開始する。
そして供給されてくるストリームデータとして、１クラスタ分のデータが取り込まれる毎に、ステップＦ３０２でそのクラスタ分のデータの記録媒体への書込を行い、ステップＦ３０３、Ｆ３０４でクラスタの書込に伴ったアドレス変換テーブル及びＦＡＴの更新を行う。つまり記録媒体上のＦＡＴ及びアドレス変換テーブルを書き換える。
【０００６】
これらの更新処理が必要なのは、クラスタデータの書き込みには、ＦＡＴ上の未使用の論理アドレスを割り当てて使用し、記録媒体上ではこの論理アドレスに対応した物理アドレスが使用されるためである。
つまり、１つのクラスタの記録に応じてＦＡＴ上のある未使用領域が割り当てられ、その論理アドレスに対応させて未使用の物理アドレスをアドレス変換テーブル上で割り当てるためである。
【０００７】
１クラスタ分のストリームデータが取り込まれる毎にこのステップＦ３０２〜Ｆ３０４を繰り返していき、記録データとして供給された全ストリームデータの記録が完了したら、ステップＦ３０５からＦ３０６に進み、ファイルクローズを行って処理を終える。
【０００８】
このような処理が通常行われるわけであるが、この場合、１クラスタ分のデータを書き込む毎に、ＦＡＴの更新データの書込及びアドレス変換テーブルの更新データの書込が必要になる。つまりストリームデータ量：１に対して管理情報更新データ量：２の割合で書込が必要になるため、ストリームデータの書込可能量は単位時間当たりの書込可能データ量の約１／３となっていた。
【０００９】
記録媒体に書込可能な単位時間当たりのデータ量はシステムのハードウエアのスペックにより決まってしまうため、上述したようにこれを越えるようなビットレートのストリームデータに対応不能となることは仕方ないが、上記処理の事情により、書込可能な単位時間当たりのデータ量の約１／３など、ハードウエアのスペックによる上限よりも遙かに低い上限が生じてしまうことは好ましいものではない。
このようなことから、或る１つのシステムとして、ハードウエア的には可能であるが、ソフトウエア的な事情により高ビットレートのストリームデータの書込に対応できないというようなことをできるだけ解消したいという要望がある。
言い換えれば、可能な限りハードウエアのスペックにより決まる上限に近いビットレートのストリームデータまで記録可能とさせたい。
【００１０】
【課題を解決するための手段】
本発明はこのような事情に応じて、ブロック化された単位領域を有し、時間的に連続して入力されるストリームデータ等の主情報を、離散的なブロック又は連続的なブロックに記録していくことができる主情報記録領域と、上記主情報に対する上記主情報記録領域上の記録開始位置と、上記主情報が記録された各ブロックを論理的に結合させるリンク情報と、上記主情報を管理するディレクトリ情報と、から成る管理情報を記録する管理領域とから構成される記録媒体に対して、効率的な記録処理を実行することで、より高ビットレートのストリームデータにも対応して記録を実行できるようにすることを目的とする。
【００１１】
このため上記記録媒体に主情報を記録する本発明の記録装置の記録方法は、新規なストリームデータ等の主情報を記録する際に上記ディレクトリ情報として暫定ファイル名を記録する暫定ファイル名記録手順と、上記主情報記録領域に存在する記録可能なブロックを所定の順序で検索する検索手順と、上記検索手順において検知した記録可能なブロックに上記主情報を順次記録する主情報記録手順と、上記主情報記録手順により、主情報の上記主情報記録領域への記録が終了した後に、上記リンク情報を生成して、生成されたリンク情報と記録開始位置を上記管理領域に記録する管理情報記録手順と、上記暫定ファイル名を消去する暫定ファイル名消去手順と、が行われるようにする。
【００１２】
また上記記録媒体に対する本発明の記録装置の管理方法は、上記ディレクトリ情報に暫定ファイル名が書き込まれているか否かを判定する暫定ファイル名判定手順と、上記判定手順によって暫定ファイル名が書き込まれていると判定された場合に、上記管理情報に基づいて記録可能とされるブロックを所定の順序で検索する検索手順と、上記検索されたブロックに主情報が記録されているか否かを判定する記録判定手順と、上記記録判定手順において最初に主情報が記録されたブロックであると判定されたブロックを記録開始位置とし、さらに上記検索手順の検索順序で主情報が記録されていると判定されたブロックが論理的に結合されるようにリンク情報を作成するリンク情報作成手順と、上記記録開始位置と上記リンク情報を、上記管理情報として上記管理領域に記録する管理情報記録手順と、上記暫定ファイル名を消去する暫定ファイル名消去手順と、が行われるようにする。
【００１３】
また上記記録媒体に対する本発明の記録装置は、上記ディレクトリ情報と上記主情報と上記管理情報の各々を、上記記録媒体の所定の領域に記録しまたは消去することができる記録消去手段と、上記記録媒体の記録可能なブロックを所定の順番で検索する検索手段と、リンク情報を生成するリンク情報生成手段と、新規な主情報を記録する際に暫定ファイル名を上記ディレクトリ情報として上記管理領域に記録させ、また連続して入力される主情報を上記検索手段により検索された記録可能なブロックに順次記録させ、また上記主情報の記録が終了した後に上記リンク情報生成手段によって生成されたリンク情報と記録開始位置とを上記管理領域に記録させ、また上記暫定ファイル名を消去させるように、上記記録消去手段を制御する制御手段と、を備えているようにする。
【００１４】
即ち本発明では、ストリームデータ等の主情報を記録している期間には、管理情報やアドレス変換情報の更新は行わないようにする（別の時点で行う）。これにより主情報の記録に関して、単位時間当たりの書込可能データ量を大幅に増大させ、より高ビットレートのストリームデータにも対応できるようにする。
【００１５】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。なお、この実施の形態は、記録媒体として板状の外形形状を有する板状メモリを挙げ、これに対してデータの記録再生を行うことのできるドライブ装置及びそのドライブ装置による記録方法、管理方法とする。
説明は次の順序で行う。
１．板状メモリの外形形状
２．板状メモリのフォーマット
２−１．メモリファイルシステム処理階層
２−２．物理的データ構造
２−３．物理アドレス及び論理アドレスの概念
２−４．論理−物理アドレス変換テーブル
３．ドライブ装置の構成
４．ＦＡＴ構造
５．ストリームデータの書込処理
６．復活処理
【００１６】
１．板状メモリの外形形状
まず図１により、本例の記録媒体である、板状メモリ１の外形形状について説明する。
板状メモリ１は、例えば図１に示すような板状の筐体内部に例えば所定容量ののメモリ素子を備える。本例としては、このメモリ素子としてフラッシュメモリ（Flash Memory）が用いられるものである。
図１に平面図、正面図、側面図、底面図として示す筐体は例えばプラスチックモールドにより形成され、サイズの具体例としては、図に示す幅Ｗ１１、Ｗ１２、Ｗ１３のそれぞれが、Ｗ１１＝６０ｍｍ、Ｗ１２＝２０ｍｍ、Ｗ１３＝２．８ｍｍとなる。
【００１７】
筐体の正面下部から底面側にかけて例えば９個の電極を持つ端子部２が形成されており、この端子部２から、内部のメモリ素子に対する読出又は書込動作が行われる。
筐体の平面方向の左上部は切欠部３とされる。この切欠部３は、この板状メモリ１を、例えばドライブ装置本体側の着脱機構へ装填する際などに挿入方向を誤ることを防止するためのものとなる。
また筐体底面側には使用性の向上のため滑り止めを目的とした凹凸部４が形成されている。
さらに底面側には、記憶内容の誤消去を防止する目的のスライドスイッチ５が形成されている。
【００１８】
２．板状メモリのフォーマット
２−１．メモリファイルシステム処理階層
続いて、板状メモリ１を記録媒体とするシステムにおけるフォーマットについて説明していく。
図２は、板状メモリ１を記録媒体とするシステムのファイルシステム処理階層を示すものである。
この図に示すように、ファイルシステム処理階層としては、アプリケーション処理層の下に、順次、ファイル管理処理層、論理アドレス層、物理アドレス層、フラッシュメモリアクセスがおかれる。
この階層では、ファイル管理処理層がいわゆるＦＡＴ（File Allocation Table）となる。
また、この図から分かるように、本例のファイルシステムでは論理アドレス及び物理アドレスという概念が導入されているが、これについては後述する。
【００１９】
２−２．物理的データ構造
図３には、板状メモリ１内の記憶素子である、フラッシュメモリの物理的データ構造が示されている。
フラッシュメモリとしての記憶領域は、セグメントという固定長のデータ単位が大元となる。このセグメントは、１セグメントあたり４ＭＢ（メガバイト）或いは８ＭＢとして規定されるサイズであり、１つのフラッシュメモリ内におけるセグメント数は、そのフラッシュメモリの容量に依存して異なってくる。
【００２０】
そして、この１セグメントを図３（ａ）に示すように、ブロックという固定長のデータ単位として８ＫＢ（キロバイト）又は１６ＫＢにより区切るようにされる。原則として、１セグメントは５１２ブロックに区切られることから、図３（ａ）に示すブロックｎについては、ｎ＝５１１とされることになる。但し、フラッシュメモリでは、書き込み不可な損傷エリアであるディフェクトエリアとしてのブロック数が所定数の範囲で許可されているため、データ書き込みが有効とされる実質的なブロック数を対象とすれば、上記ｎは５１１よりも少なくなる。
【００２１】
図３（ａ）に示すようにして形成されるブロック０〜ｎのうち、先頭の２つのブロック０，１はブートブロックといわれる。但し、実際には有効なブロックの先頭から２つのブロックがブートブロックとして規定されることになっており、必ずしもブートブロックがブロック０，１である保証はない。
そして、残りのブロックが、ユーザデータが格納されるユーザブロックとなる。
【００２２】
１ブロックは、図３（ｄ）に示すようにして、ページ０〜ｍにより分割される。１ページの容量は、図３（ｅ）に示すように、５１２バイトのデータエリアと１６バイトの冗長部よりなる、５２８（＝５１２＋１６）バイトの固定長とされる。なお、冗長部の構造については図３（ｆ）により後述する。
また、１ブロック内のページ数としては、１ブロックの容量が８ＫＢの場合には１６ページ、１６ＫＢの場合には３２ページとなる。
【００２３】
このような、図３（ｄ）（ｅ）に示されるブロック内のページ構造は、上記ブートブロックとユーザブロックとで共通である。
また、フラッシュメモリでは、データの読み出し、及び書き込みはページ単位で行われ、データの消去はブロック単位で行われるものとされる。そして、データの書き込みは、消去済みのページに対してしか行われないものとされている。従って、実際のデータの書き換えや書き込みは、ブロック単位を対象として行われることになる。
【００２４】
先頭のブートブロックは、図３（ｂ）に示すように、ページ０に対してヘッダーが格納され、ページ１には初期不良データの位置（アドレス）を示す情報が格納される。また、ページ２にはＣＩＳ／ＩＤＳといわれる情報が格納される。
２つめのブートブロックは図３（ｃ）に示すように、ブートブロックとしてのバックアップのための領域とされている。
【００２５】
図３（ｅ）に示された冗長部（１６バイト）は、図３（ｆ）に示す構造を有する。
この冗長部は、図のように先頭の第０バイト〜第２バイトの３バイトが、データエリアのデータ内容の更新に応じて書き換えが可能なオーバーライトエリアとされる。このオーバーライトエリアのうち、第０バイトにはブロックステータスが格納され、第１バイトにはデータステータスが格納される(Block Flag Data)。また、第２バイトの上位の所定ビットを利用して変換テーブルフラグ(Page Data Status1)が格納される。
【００２６】
原則として第３バイト〜第１５バイトは、その内容が現ページのデータ内容に応じて固定とされ、書き換えが不可とされる情報が格納される領域となる。
第３バイトには管理フラグ(Block Info)が格納され、第４，第５バイトから成る２バイトの領域には、後述する論理アドレス(Logic Address)が格納される。第６〜第１０バイトの５バイトの領域は、フォーマットリザーブの領域とされ、続く第１１，第１２バイトの２バイトが、上記フォーマットリザーブに対して誤り訂正を施すための分散情報ＥＣＣを格納する領域とされる。
残る第１３〜第１５バイトには、図３（ｅ）に示すデータエリアのデータに対して誤り訂正を行うためのデータＥＣＣが格納される。
【００２７】
上記図３（ｆ）に示した冗長部の第３バイトに格納される管理フラグは、図４に示すようにして、ビット７〜ビット０の各ビットに、その内容が定義されている。
ビット７，６、及びビット１，０はリザーブ（未定義）領域とされている。
ビット５は現ブロックに対してのアクセス許可の「有効」（‘１’；Free）／「無効」(‘０’；Read Protected）を示すフラグが格納される。ビット４には現ブロックについてのコピー禁止指定（‘１’；ＯＫ ／‘０’；ＮＧ）についてのフラグが格納される。
【００２８】
ビット３は変換テーブルフラグとされる。この変換テーブルフラグは、現ブロックが後述する論理−物理アドレス変換テーブルであるのか否かを示す識別子であり、このビット３の値が‘０’とされていれば、現ブロックは論理−物理アドレス変換テーブルであることが識別され、‘０’であれば無効となる。つまり、現ブロックは論理−物理アドレス変換テーブルではないことが識別される。
【００２９】
ビット２はシステムフラグが格納され、‘１’であれば現ブロックがユーザブロックであることが示され、‘０’であればブートブロックであることが示される。
【００３０】
ここで、セグメント及びブロックと、フラッシュメモリ容量との関係を図９（左３列を参照）により説明しておく。
板状メモリ１のフラッシュメモリ容量としては、４ＭＢ，８ＭＢ，１６ＭＢ，３２ＭＢ，６４ＭＢ，１２８ＭＢの何れかであるものとして規定されている。
そして、最も容量の小さい４ＭＢの場合であると、１ブロックは８ＫＢと規定された上で、そのブロック数としては５１２個とされる。つまり、４ＭＢはちょうど１セグメントの容量を有するものとされる。そして、４ＭＢの容量であれば、同様に１ブロック＝８ＫＢの容量が規定された上で、２セグメント＝１０２４ブロックとなる。なお、前述したように、１ブロック＝８ＫＢであれば、１ブロック内のページ数は１６ページとなる。
但し１６ＭＢの容量では、１ブロックあたりの容量として８ＫＢと１６ＫＢの両者が存在することが許可されている。このため、２０４８ブロック＝４セグメント（１ブロック＝８ＫＢ）のものと、１０２４ブロック＝２セグメント（１ブロック＝１６ＫＢ）のものとの２種類が在ることになる。１ブロック＝１６ＫＢの場合には、１ブロック内のページ数は３２ページとなる。
【００３１】
また、３２ＭＢ，６４ＭＢ，１２８ＭＢの容量では、１ブロックあたりの容量は１６ＫＢのみであるとして規定される。従って、３２ＭＢでは２０４８ブロック＝４セグメントとなり、６４ＭＢでは４０９６ブロック＝８セグメントとなり、１２８ＭＢでは８１９２ブロック＝１６セグメントとなる。
【００３２】
２−３．物理アドレス及び論理アドレスの概念
次に、上述したようなフラッシュメモリの物理的データ構造を踏まえたうえで、図５に示すデータ書き換え動作に従って、本例のファイルシステムにおける物理アドレスと論理アドレスの概念について説明する。
【００３３】
図５（ａ）には、或るセグメント内から４つのブロックを抜き出して、これを模式的に示している。
各ブロックに対しては物理アドレスが付される。この物理アドレスはメモリにおけるブロックの物理的な配列順に従って決まるもので、或るブロックとこれに対応付けされた物理アドレスとの関係は不変となる。ここでは、図５（ａ）に示す４ブロックに対して、上から順に物理アドレスの値として、１０５，１０６，１０７，１０８が付されている。なお、実際の物理アドレスは２バイトにより表現される。
【００３４】
ここで、図５（ａ）に示すように、物理アドレス１０５，１０６で示されるブロックがデータの記憶されている使用ブロックで、物理アドレス１０７，１０８で示されるブロックがデータが消去、即ち、未記録領域とされた未使用ブロックとなっている状態であるとする。
【００３５】
そして、論理アドレスであるが、この論理アドレスは、ブロックに対して書き込まれたデータに付随するようにして割り振られるアドレスとされる。そして、この論理アドレスが、後述するＦＡＴファイルシステムが利用するアドレスとされている。
図５（ａ）では、４つの各ブロックに対して、上から順に論理アドレスの値として、１０２，１０３，１０４，１０５が付されている状態が示されている。なお、論理アドレスも実際には２バイトにより表現されるものである。
【００３６】
ここで、上記図５（ａ）に示す状態から、例えば物理アドレス１０５に格納されているデータの更新として、内容の書き換え又は一部消去を行うとする。
このような場合、フラッシュメモリのファイルシステムでは、同じブロックに対して更新したデータを再度書き込むことはせずに、未使用のブロックに対してその更新したデータを書き込むようにされる。
つまり、例えば図５（ｂ）に示すようにして、物理アドレス１０５のデータは消去したうえで、更新されたデータはこれまで未使用ブロックであった物理アドレス１０７で示されるブロックに書き込むようにされる（処理▲１▼）。
【００３７】
そして、処理▲２▼として示すように、データ更新前（図５（ａ））の状態では物理アドレス１０５に対応していた論理アドレス１０２が、更新されたデータが書き込まれたブロックの物理アドレス１０７に対応するように、論理アドレスについての変更を行うものである。これに伴って、データ更新前は物理アドレス１０７に対応していた論理アドレス１０４については、物理アドレス１０５に対応するように変更されている。
【００３８】
つまり、物理アドレスはブロックに対して固有に付されるアドレスであり、論理アドレスは、一旦ブロックに対して書き込まれたデータに付随するようにしてついて回る、ブロック単位の書き込みデータに固有となるアドレスであるとみることができる。
【００３９】
このようなブロックのスワップ処理が行われることで、或る同一の記憶領域（ブロック）に対して繰り返し集中的にアクセスされることが無くなり、書き換え回数の上限があるフラッシュメモリの寿命を延ばすことが可能となる。
そして、この際に論理アドレスを上記処理▲２▼のようにして扱うことで、ブロックのスワップ処理によって更新前と更新後のデータとで書き込まれるブロックの移動があるようにされても、ＦＡＴからは同一のアドレスが見えることになり、以降のアクセスを適正に実行することができるものである。
なお、後述する論理−物理アドレス変換テーブル上での更新のための管理を簡略にすることなどを目的として、ブロックのスワップ処理は、１セグメント内で完結するものとして規定されている。逆に言えば、ブロックのスワップ処理はセグメント間で跨るようにしては行われない。
【００４０】
２−４．論理−物理アドレス変換テーブル
上記図５による説明から分かるように、ブロックのスワップ処理が行われることで、物理アドレスと論理アドレスの対応は変化する。従って、フラッシュメモリに対するデータの書き込み及び読み出しのためのアクセスを実現するには、物理アドレスと論理アドレスとの対応が示される論理−物理アドレス変換テーブルが必要となる。つまり、論理−物理アドレス変換テーブルをＦＡＴが参照することで、ＦＡＴが指定した論理アドレスに対応する物理アドレスが特定され、この特定された物理アドレスにより示されるブロックにアクセスすることが可能になるものである。逆に言えば、論理−物理アドレス変換テーブルが無ければ、ＦＡＴによるフラッシュメモリへのアクセスが不可能となる。
【００４１】
従来では、例えばセット本体に対して板状メモリ１が装着されたときに、セット本体側のマイクロプロセッサが板状メモリ１の記憶内容をチェックすることで、セット本体側で論理−物理アドレス変換テーブルの構築を行い、更にこの構築された論理−物理アドレス変換テーブルをセット本体側のＲＡＭに格納するようにしていた。つまり、板状メモリ１内には、論理−物理アドレス変換テーブルの情報は格納されてはいなかった。
これに対して本例では、以降説明するように板状メモリ１に対して、論理−物理アドレス変換テーブルを格納するように構成している。
【００４２】
図６は、本例の板状メモリ１に対して格納される論理−物理アドレス変換テーブルの構築形態を概念的に示すものである。
つまり、本例では、例えば論理アドレスの昇順に従って、これに対応する２バイトの物理アドレスを格納するようにしたテーブル情報を論理−物理アドレス変換テーブルとして構築するようにされる。
なお、前述したように、物理アドレス、及び論理アドレスは共に２バイトで表現される。これは、１２８ＭＢの最大容量のフラッシュメモリの場合には８１９２個のブロックが存在するため、最大で、この８１９２個のブロック数をカバーできるだけのビット数が必要とされることに基づく。
このため、図６において例示している物理アドレスと論理アドレスとについても、実際に即して２バイトで表現している。
但し、ここでは、この２バイトを１６進数により表記している。つまり、「０ｘ」によりその後に続く値が１６進法表記であることが示される。なお、この「０ｘ」により１６進数であることを表す表記は、以降の説明において１６進数を表記する場合にも同様に用いることとする。（但し、表記の煩雑化を防ぐため「０ｘ」を省略している図面もある。）
【００４３】
図７に、上記図６に示した概念に基づく論理−物理アドレス変換テーブルの構造例を示す。
論理−物理アドレス変換テーブルは、フラッシュメモリの最後のセグメント内の或るブロックに対して、図７に示すようにして格納される。
先ず図７（ａ）に示すように、ブロックを分割するページのうち、ページ０，１からなる２ページの領域がセグメント０用の論理−物理アドレス変換テーブルとして割り当てられる。例えば、図９にて説明したように、フラッシュメモリが４ＭＢの容量であれば１セグメントしか有さないために、このページ０，１のみの領域が論理−物理アドレス変換テーブルの領域となる。
また、例えばフラッシュメモリが８ＭＢの容量であれば２セグメントを有するため、セグメント０用の論理−物理アドレス変換テーブルとして割り当てられるページ０，１に加え、これに続くページ２，３の２ページがセグメント１用の論理−物理アドレス変換テーブルとして割り当てられることになる。
【００４４】
以降、フラッシュメモリの容量の増加に応じて、続く２ページごとにセグメントごとの論理−物理アドレス変換テーブルの割り当て領域が設定されていくことになる。そして、最大の１２８ＭＢの容量を有する場合であれば１６セグメントが存在するため、最大では、セグメント１５用までのページが論理−物理アドレス変換テーブルの領域として割り当てられることになる。従って、最大の１２８ＭＢの容量のフラッシュメモリでは、３２ページが使用されることになり、図７（ａ）に示すページＮとしては、最大でＮ＝３１となる。
これまでの説明から分かるように、論理−物理アドレス変換テーブルは、セグメントごとに管理されるものである。
【００４５】
図７（ｂ）は、１セグメントあたりの論理−物理アドレス変換テーブルの構造を示すものとして、２ページ分のデータエリアを抜き出して示している。つまり、１ページのデータエリアは５１２バイト（図３（ｅ）参照）であることから、図７（ｂ）には、１０２４（＝５１２×２）バイトが展開されている状態が示されている。
【００４６】
図７（ｂ）に示すように、この２ページ分のデータエリアである１０２４バイトについて２バイトごとに区切り、この２バイトごとの領域を、先頭から順次、論理アドレス０用、論理アドレス１用・・・・、のようにして割付を行い、最後は先頭から９９１バイト目と９９２バイト目の２バイトの領域を論理アドレス４９５用の領域として割り付けるように規定を行う。これら２バイトごとの領域に対して、各論理アドレスが対応する物理アドレスを書き込むようにする。従って、本例の論理−物理アドレス変換テーブルでは、実際のデータ更新によるブロックのスワップ処理などにより物理アドレスと論理アドレスの対応が変更された場合には、論理アドレスを基準として、物理アドレスの格納状態が更新されるようにしてテーブル情報の書き換えが行われることになる。
【００４７】
また、残る９９３バイト目から最後の１０２４バイト目までの計３２バイトの領域は、余剰ブロックの物理アドレスが格納される領域として割り当てられる。つまり、１６個の余剰ブロックの物理アドレスを管理することができる。ここでいう余剰ブロックとは、例えばブロック単位でデータの更新を行う際に書き換え対象となるデータを一時待避させる領域として設定されたいわゆるワークブロックなどを言うものである。
【００４８】
ところで、１セグメントは５１２ブロックに分割されているものであると先に説明したのにも関わらず、図７に示したテーブル構造では、管理可能なブロック数が論理アドレス０用〜論理アドレス４９５用の４９６ブロックとしている。これは、実際上、上記した余剰アドレスが設定されることと、前述したように、フラッシュメモリでは、或ブロック数のディフェクト（使用不可領域）が許可されている。そのため現実には、相当数のディフェクトブロックが存在することに依る。
従って、実際には、書き込み又は消去が有効なブロックを管理するのに、４９６ブロックを管理できるように構成しておけば充分とされるものである。
【００４９】
そして、このようにして論理−物理アドレス変換テーブルが格納されるブロックについては、これを形成する各ページの冗長部における管理フラグ（図４参照）のデータ内容として、この管理フラグのビット３に対して‘０’がセットされることになる。これにより、当該ブロックが論理−物理アドレス変換テーブルが格納されているブロックであることが示されることになる。
【００５０】
論理−物理アドレス変換テーブルが格納されるブロックも、論理−物理アドレス変換テーブルの内容の書き換えがあった場合には、例外なく、先に図５にて説明したスワップ処理が行われる。従って、論理−物理アドレス変換テーブルが記録されているブロックは不定であり、或る特定のブロックに論理−物理アドレス変換テーブルを格納するように規定することは出来ない。
そこで、ＦＡＴは、フラッシュメモリにアクセスして上記した管理フラグのビット３が‘０’とされているブロックを検索することで、論理−物理アドレス変換テーブルが格納されているブロックを識別するようにされる。但し、論理−物理アドレス変換テーブルが格納されているブロックの検索がＦＡＴによって容易に行われるようにすることを考慮して、論理−物理アドレス変換テーブルが格納されているブロックは、そのフラッシュメモリ内における最後のナンバが付されたセグメントに在るように、本例では規定するものとされる。これにより、ＦＡＴは最後のナンバが付されたセグメントのブロックのサーチだけで、論理−物理アドレス変換テーブルを検索することができる。つまり、論理−物理アドレス変換テーブルを検索するのに、フラッシュメモリの全てのセグメントを検索する必要は無いようにされる。
上記図７に示した論理−物理アドレス変換テーブルは、例えば板状メモリ１の製造時において格納するようにされる。
【００５１】
ここで、再度図９を参照して、フラッシュメモリ容量と論理−物理アドレス変換テーブルのサイズとの関係を説明しておく。
上記図７にて説明したように、１セグメントを管理するための論理−物理アドレス変換テーブルのサイズは２ページ分の１０２４バイト、つまり１ＫＢとなる。従って、図９の最右列に記されているように、フラッシュメモリが４ＭＢ（１セグメント）の容量では論理−物理アドレス変換テーブルは１ＫＢのサイズとなる。また、フラッシュメモリの容量が８ＭＢ（２セグメント）では論理−物理アドレス変換テーブルは２ＫＢ（４ページ）となる。
また、フラッシュメモリの容量が１６ＭＢの場合、２０４８ブロック＝４セグメントのものでは論理−物理アドレス変換テーブルは４ＫＢ（８ページ）、１０２４ブロック＝２セグメントのものでは論理−物理アドレス変換テーブルは２ＫＢ（４ページ）となる。
そして、フラッシュメモリの容量が３２ＭＢ（４セグメント）では論理−物理アドレス変換テーブルは４ＫＢ（８ページ）、フラッシュメモリの容量が６４ＭＢ（８セグメント）では論理−物理アドレス変換テーブルは８ＫＢ（１６ページ）となり、フラッシュメモリの容量が最大の１２８ＭＢ（１６セグメント）では論理−物理アドレス変換テーブルは１６ＫＢ（３２ページ）となる。
【００５２】
ところで、例えば従前におけるフラッシュメモリのファイルシステムの構成では、論理−物理アドレス変換テーブル上において、未使用とされる論理アドレスに対応する物理アドレスの領域には、実質的なアドレス値は不確定として格納しないようにされている。
一例を挙げると、図８（ｂ）に示す論理−物理アドレス変換テーブルにおいて、例えば論理アドレス０ｘ００００，０ｘ０００１，０ｘ０００２，０ｘ０００３は既に使用されているものとすると、これらに対応する物理アドレスの格納領域には、例えばそれぞれ、０ｘ０００２，０ｘ０００６，０ｘ０００７，０ｘ０００８という実際に論理アドレス（０ｘ００００〜０ｘ０００３）に対応してデータが書き込まれた物理アドレスの値が格納されていることになる。
これに対して、論理アドレス０ｘ０００４は未使用であるとするならば、この論理アドレス０ｘ０００４が対応する物理アドレスの格納領域には、０ｘＦＦＦＦという無効値（即ち、未使用であることが識別される値）が設定される。
【００５３】
ここで、上記図８（ｂ）に示す論理−物理アドレス変換テーブルを利用して、論理アドレス０ｘ０００４に対応するデータを新規に記録しようとした場合には、例えばＦＡＴにより、論理−物理アドレス変換テーブルとは異なる階層で、物理的に未使用とされているブロックの検索を行い、この検索されたブロックに対してデータの書き込みを実行するようにされる。そして、論理−物理アドレス変換テーブルに対しては、そのデータ書き込みが新規に行われたブロックを示す物理アドレスを論理アドレス０ｘ０００４に対応する格納領域に対して書き込むようにして、その内容を更新することになる。
【００５４】
このような論理−物理アドレス変換テーブルの管理形態であると、次のような不都合が生じることが想定される。
ここで、セット本体側において扱うべきデータが、動画像データや楽曲等の音声データなど、いわゆるリアルタイム性を有する時系列データ（本例でいうストリームデータ）であるとする。
そして、セット本体では、入力されてきたストリームデータについてリアルタイムに信号処理を行って、このデータを記録データとして板状メモリ１に記録するような構成が採られているものとする。
【００５５】
このとき上記図８（ｂ）により説明したような論理−物理アドレス変換テーブルの管理形態を採っているとすると、データ記録時には、先に述べたような未使用ブロックのサーチが必然となる。しかし、上記したようなストリームデータを記録していく場合には、入力された記録データがオーバーフローしない程度の平均速度で書き込む必要があるため、この際の未使用ブロックのサーチは非常に重い処理となってしまう。つまり、リアルタイム性を有するストリームデータを板状メモリ１に記録することは非常に困難であり、実用上は、リアルタイム性が要求されない文書ファイルや静止画ファイルなどの記録にとどめられてしまう。
【００５６】
そこで、本例の論理−物理アドレス変換テーブルとしては、未使用の論理アドレスに対応する格納領域に対して、未使用のエリアとして管理されているブロックの物理アドレスを予め割り当てておくようにする。この具体例を図８（ａ）に示す。
図８（ａ）に示す論理−物理アドレス変換テーブルにおいては、論理アドレス０ｘ００００，０ｘ０００１，０ｘ０００２，０ｘ０００３は使用されているものとされ、これに対応する物理アドレスの格納領域に対して、例えば０ｘ０００２，０ｘ０００６，０ｘ０００７，０ｘ０００８という、実際にデータが記録されている物理アドレスの値が格納されている点では図８（ｂ）と同様である。また、論理アドレス０ｘ０００４は未使用であるとしている点も図８（ｂ）と同様である。
【００５７】
但しこの本例の場合、この未使用の論理アドレス０ｘ０００４が対応する物理アドレスの格納領域に対しては、０ｘＦＦＦＦという無効値を設定するのではなく、未使用のエリアのブロックを指定する物理アドレスとして、例えば０ｘ０００９を格納する。ここでは、未使用のエリアに関して、論理アドレス０ｘ０００４に対応する格納領域しか示していないが、他の未使用とされる論理アドレスに対応する格納領域の各々に対しても、同様にして、それぞれ異なる未使用のブロックの物理アドレスが格納されるものである。
【００５８】
このようにして論理−物理アドレス変換テーブルを構築した場合、論理−物理アドレス変換テーブルに対して既に空きエリアを示す物理アドレスが、論理アドレスと対応付けされて示されているものと見ることができる。
これにより、ＦＡＴでは、論理−物理アドレス変換テーブルを参照することで事前に未使用のブロックの物理アドレスと論理アドレスとの対応を採ることができ、データ記録時においては、図８（ｂ）に示した形態の場合のように、未使用のブロックをサーチする処理を実行する必要が無くなる。つまり、ＦＡＴ上で空きエリアとして管理される論理アドレスに対応する物理アドレスを論理−物理アドレス変換テーブルを参照することにより得て、この物理アドレスにより示されるブロックに対してアクセスしてデータ書き込みを実行すればよいことになる。このため、セット本体のマイクロコンピュータの処理負担は大幅に軽減され、例えば先に述べたストリームデータの記録も容易に実現可能となるものである。なお、これまでのように文書ファイルや静止画データなど、リアルタイムな処理が要求されないデータ書き込みに際しても、図８（ａ）に示した本例のファイルシステムとすれば、当然のこととして、これまでよりもデータ書き込みに要する時間は短縮されるものである。
【００５９】
以上のようにあらかじめ未使用の論理アドレスと物理アドレスについてまでも対応をとったアドレス変換テーブルを、板状メモリ１に記録又は必要に応じて更新することは、次に説明するドライブ装置によって行われることになるが、少なくとも後述する高速書込処理が実行される時点よりも前において、未使用の論理アドレスと物理アドレスが対応づけられた状態とされていればよい。
また、実際には、板状メモリ１の使用前の最初のフォーマット処理として、ドライブ装置が、全論理アドレスと全物理アドレスを対応づけしたアドレス変換テーブルを作成して、板状メモリ１に記録するとともに、その後、記録／編集動作に応じて、図５で説明したような更新を行うようにすることが考えられる。
【００６０】
３．ドライブ装置の構成
続いて図１０で本例のドライブ装置の構成を説明する。
図１０は、これまで説明した板状メモリ１に対応してデータの読出・書込・編集を行うことの出来るドライブ装置のセット本体（本体装置）の構成を示している。この図に示すセット本体１００と板状メモリ１とにより、ファイル記憶システムが構成される。
なお、セット本体１００が、板状メモリ１に対する書込や読出の対象として扱うことのできる主データの種類は多様であり、例えば動画データ、静止画データ、マイクロホン入力音声等のボイスデータ、高音質（ＨｉＦｉ）オーディオデータ（音楽用データともいう）、制御用データなどがある。
本例では、ストリームデータの効率的な記録を実現することを目的とするものであるため、主データとしてのストリームデータの１つであるボイスデータを記録／再生するシステムとして説明していくが、セット本体１００内に、動画、静止画、音楽等のデータの入出力系／処理系やコンピュータインターフェースを備えることにより、他のストリームデータや、リアルタイム性を要しないデータとしてのデータファイルの記録システムとできることはいうまでもない。
【００６１】
セット本体１００の構成としては、当該セット本体１００が着脱可能に装填される着脱機構１２０が備えられ、この着脱機構１２０に装填された板状メモリ１と、マイクロコンピュータ１０９とのデータの授受は、ホストインターフェイスＩＣ１０１を介することで行われる。
【００６２】
また、このセット本体１００には、例えば、マイクロフォン１０３が備えられて、このマイクロフォン１０３により収音された音声は、マイクアンプ１０４を介して音声信号としてＤＳＰ(Digital Signal Processor)１０２に対して供給される。ＤＳＰ１０２では、この入力された音声信号をデジタルオーディオデータに変換して、エンコード処理等をはじめとする所要の信号処理を施し、記録データとしてボイスデータを制御用マイクロコンピュータ１０９に供給する。
マイクロコンピュータ１０９は、この記録データをホストインターフェイスＩＣ１０１を介して板状メモリ１に記録するための処理を実行することが可能とされる。
【００６３】
また、マイクロコンピュータ１０９は、板状メモリ１に記録されているオーディオデータ又はボイスデータファイルをホストインターフェイスＩＣ１０１を介して読み出し、この読み出したデータをＤＳＰ１０２に供給する。
ＤＳＰ１０２では、供給されたデータについて復調処理をはじめとする所要の信号処理を施して、最終的にはアナログ音声信号としてスピーカアンプ１０５に出力する。スピーカアンプ１０５では、入力された音声信号を増幅してスピーカ１０６に出力する。これにより、再生音声が出力される。
【００６４】
また、マイクロコンピュータ１０９は、表示ドライバ１０７を制御することで、表示部１０８に対して、所要の画像を表示させることが可能とされる。例えばユーザーの操作のためのメニューやガイド表示、或いは板状メモリ１に記憶されたファイル内容などの表示が実行される。また、例えば板状メモリ１に対して動画若しくは静止画の画像データが記録されているとすれば、この画像データを読み出して、表示部１０８に表示させるようにすることも可能とされる。
【００６５】
操作部１１２には、セット本体１００に対する各種操作をユーザが行うための各種キーが設けられている。マイクロコンピュータ１０９は、この操作部１１２に対して行われた操作に応じたコマンドを受信し、コマンドに応じた所要の制御処理を実行する。
操作内容としては、ファイル記録指示、ファイル選択指示、ファイル再生指示、編集指示などが可能とされる。
【００６６】
この図１０に示す構成のセット本体１００により、上述したような板状メモリ１に対する記録再生（データ書き込み又は読み出し）を実現するのには、ファイルシステム上でＦＡＴが参照する論理−物理アドレス変換テーブルが必要となるのは前述したとおりである。
そこで図１１に、上記図１０に示す構成に基づくセット本体１００のマイクロコンピュータ１０９と板状メモリ１に格納されている論理−物理アドレス変換テーブル間とのインターフェイスを概念的に示す。
例えば、本例の板状メモリ１が装填されたときには、マイクロコンピュータ１０９は、ホストインターフェイスＩＣ１０１を介して、板状メモリ１に格納されている論理−物理アドレス変換テーブルのうちから必要なデータ部分を読み込んで、内部のＲＡＭ１１１に格納すればよいことになる。
【００６７】
なおこのことから、本例では、セット本体１００のマイクロコンピュータ１０１の処理として、論理−物理アドレス変換テーブルを構築する処理は必要なく、このため、マイクロコンピュータ１０９による論理−物理アドレス変換テーブル構築処理のための待ち時間はなくなり、例えば板状メモリ１を装着したときに行われるファイルシステムの立ち上げ処理は、従来よりもはるかに短時間で済むことになる。
【００６８】
更に、図８（ａ）にて説明したように、未使用のブロックの物理アドレスを未使用の論理アドレスと対応させた論理−物理アドレス変換テーブルとしていることで、ＦＡＴによる未使用のブロックへのアクセスは、従来よりも軽い処理で迅速に実行されることになる。特に、図１０に示したように、音声データ等のリアルタイムな処理が要求されるデータを記録する構成をセット本体１００が採るような場合には有効となるものである。
【００６９】
なお、図１０に示したセット本体１００の構成はあくまでも一例であり、これに限定されるものではない。つまり、板状メモリ１に対応してデータの書込が可能な構成を採る限りは、どのようなタイプの記録装置とされていても構わないものである。
【００７０】
４．ＦＡＴ構造
図２のファイルシステム階層で説明したように、ファイル管理処理はＦＡＴにより行われることになる。
即ち図１０に示した構成のドライブ装置により、板状メモリ１に対する記録再生を実現するには、アプリケーション処理での要求に伴ってＦＡＴによるファイル記憶位置管理が参照され、さらに上述した論理−物理アドレス変換が行われて実際のアクセスが行われることになる。
ここで、ＦＡＴの構造について説明しておく。
【００７１】
図１２はＦＡＴによる管理構造の概要を示している。
なお、本例ではＦＡＴ及び論理−物理アドレス変換テーブルは板状メモリ１内に格納されることになるが、図１２に示すＦＡＴ構造が、板状メモリ１内での管理構造となるものである。
【００７２】
そして、図示するようにＦＡＴ管理構造は、パーティションテーブル、空き領域、ブートセクタ、ＦＡＴ、ＦＡＴのコピー、ルートディレクトリ、データ領域から成る。
データ領域には、クラスタ２、クラスタ３・・・として単位データを示しているが、このクラスタとは、ＦＡＴで扱う管理単位としての１データ単位となる。
一般にＦＡＴでは、クラスタサイズは標準で４Ｋバイトとされるが、このクラスタサイズは５１２バイト〜３２Ｋバイトの間で２のべき乗の大きさをとることができる。
本例の板状メモリ１では、上述したように１つのブロックが８Ｋバイト又は１６Ｋバイトとされるが、１ブロック＝８Ｋバイトとされる板状メモリ１の場合は、ＦＡＴで扱うクラスタは８Ｋバイトとされる。また１ブロック＝１６Ｋバイトとされる板状メモリ１の場合は、ＦＡＴで扱うクラスタは１６Ｋバイトとされる。即ち、８Ｋバイト又は１６ＫバイトがＦＡＴ管理上でのデータ単位であり、かつ板状メモリ１でのブロックとしての１つのデータ単位とされる。なお、従って板状メモリからみれば、ＦＡＴで扱われるクラスタサイズ＝その板状メモリのブロックサイズとなる。このため、本例の以降の説明については、簡略化のためにブロック＝クラスタとして考えることとする。
【００７３】
そして図１２左側にブロックナンバとしてｘ・・・（ｘ＋ｍ−１）、（ｘ＋ｍ）（ｘ＋ｍ＋１）（ｘ＋ｍ＋２）・・・と示したが、例えばこのように各ブロックにおいてＦＡＴ構造を構築する各種データは記憶されることになる。
なお、実際には必ずしもこのように物理的に連続する各ブロックに各情報が記憶されるものではない。
【００７４】
ＦＡＴ構造において、まずパーティションテーブルには、ＦＡＴパーティション（最大２Ｇバイト）の先頭と終端のアドレスが記述されている。
ブート領域には、いわゆる１２ｂｉｔＦＡＴ、１６ｂｉｔＦＡＴの別や、ＦＡＴ構造（大きさ、クラスタサイズ、各領域のサイズなど）が記述される。
【００７５】
ＦＡＴは、後述するように各ファイルを構成するクラスタのリンク構造を示すテーブルとなり、またＦＡＴについては続く領域にコピーが記述される。
ルートディレクトリには、ファイル名、先頭クラスタ番号、各種属性が記述される。これらの記述は１つのファイルにつき３２バイト使用される。
【００７６】
ＦＡＴにおいては、ＦＡＴのエントリとクラスタは１対１で対応しており、各クラスタのエントリにはリンク先、つまり後に続くクラスタの番号が記述される。つまり、複数のクラスタ（＝ブロック）で形成されている或るファイルについてみると、まずディレクトリによって先頭のクラスタ番号が示され、ＦＡＴにおけるその先頭クラスタのエントリには、次のクラスタ番号が示される。さらに次のクラスタ番号のエントリには、さらに次のクラスタ番号が示される。このようにクラスタのリンクがＦＡＴに記述される。
【００７７】
図１３はこのようなリンクの概念を模式的に示している（数値は１６進値）。
例えば２つのファイル「ＭＡＩＮ．Ｃ」「ＦＵＮＣ．Ｃ」が存在するとすると、ディレクトリにはこの２つのファイルの先頭クラスタ番号が例えば「００２」「００４」と記述される。
そしてファイル「ＭＡＩＮ．Ｃ」については、クラスタ番号「００２」のエントリに次のクラスタ番号「００３」が記述され、またクラスタ番号「００３」のエントリに次のクラスタ番号「００６」が記述される。さらに、クラスタ番号００６がこのファイル「ＭＡＩＮ．Ｃ」の最後のクラスタであるとすると、クラスタ番号「００６」のエントリには、最後のクラスタであることを示す「ＦＦＦ」が記述される。
これによりファイル「ＭＡＩＮ．Ｃ」がクラスタ「００２」→「００３」→「００６」という順番で記憶されている。即ち、仮にクラスタ番号と板状メモリ１でのブロック番号が一致していると仮定すると、ファイル「ＭＡＩＮ．Ｃ」は、板状メモリ１内でブロック「００２」「００３」「００６」に記憶されていることが表現されている。（但し、ＦＡＴで扱うクラスタは、上述のように論理アドレスで扱うものとなるため、ブロックの物理アドレスとそのまま一致するものではない）
【００７８】
また同様にファイル「ＦＵＮＣ．Ｃ」については、ＦＡＴにより、クラスタ「００４」→「００５」に記憶されていることが表現される。
【００７９】
なお、未使用のブロックに対応するクラスタについては、そのエントリは「０００」とされる。
【００８０】
ところでルートディレクトリの領域に記憶される各ファイルのディレクトリにおいては、図１３に示した先頭クラスタ番号だけでなく、例えば図１４のように各種データが記述される。
即ちファイル名、拡張子、属性、変更時刻情報、変更日付情報、先頭クラスタ番号、ファイルサイズが、それぞれ図示するバイト数で記述される。
【００８１】
また或るディレクトリの下層となるサブディレクトリについては、図１２のルートディレクトリの領域ではなく、データ領域に記憶される。つまりサブディレクトリは、ディレクトリ構造を持つファイルとして扱われる。そしてサブディレクトリの場合はサイズは無制限とされ、また自分自身へのエントリと親ディレクトリへのエントリが必要になる。
【００８２】
図１５に、或るルートディレクトリ内にファイル「ＤＩＲ１」（属性＝ディレクトリ：つまりサブディレクトリ）があり、さらにその中にファイル「ＤＩＲ２」（属性＝ディレクトリ：つまりサブディレクトリ）があり、さらにその中にファイル「ＦＩＬＥ」が存在する場合の構造例を示している。
つまりルートディレクトリの領域には、サブディレクトリであるファイル「ＤＩＲ１」としての先頭クラスタ番号が示され、上述したＦＡＴにより、クラスタＸ、Ｙ、Ｚがリンクされている状態となる。
この図からわかるように、サブディレクトリ「ＤＩＲ１」「ＤＩＲ２」についてはファイルとして扱われてＦＡＴのリンクに組み込まれる。
【００８３】
以上の説明を図２２を用いてまとめる。
図２２にＦＡＴ管理による管理方法を説明する。
図２２は、板状メモリ１内の模式図（メモリマップ）を示しており、上からパーティションテーブル、空き領域、ブートセクター、ＦＡＴ領域、ＦＡＴのコピー領域、ルートディレクトリ領域、サブディレクトリ領域、データ領域が積層されている。
なお、このメモリマップは上述した論理−物理アドレス変換テーブルに基づく、論理アドレス→物理アドレス変換後のメモリマップである。
【００８４】
ブートセクター、ＦＡＴ領域、ＦＡＴのコピー領域、ルートディレクトリ領域、サブディレクトリ領域、データ領域を全部まとめてＦＡＴパーティション領域と称する。
【００８５】
上記パーティションテーブルにはＦＡＴパーティション領域のはじめと終わりのアドレスが記録されている。
なお通常フロッピーディスクで使用されているＦＡＴには上記パーティションテーブルは備えられていない。
またメモリ内の先頭領域にはパーティションテーブル以外のものは置かないために図示するように空きエリアが生ずる。
【００８６】
ブートセクターには１２ビットＦＡＴ／１６ビットＦＡＴであるかの別に応じてＦＡＴ構造の大きさ、クラスタサイズ、それぞれの領域のサイズが記録されている。
ＦＡＴはデータ領域に記録されているファイル位置を管理するものである。
ＦＡＴのコピー領域はＦＡＴのバックアップ用の領域である。
【００８７】
ルートディレクトリはファイル名、先頭クラスタアドレス、各種属性が記録されており、１ファイルにつき３２バイト使用する。
サブディレクトリはディレクトリというファイルの属性のファイルとして存在しており、この図２２の例ではＰＢＬＩＳＴ．ＭＳＶ，ＣＡＴ．ＭＳＶ，ＤＯＧ．ＭＳＶ、ＭＡＮ．ＭＳＶという４つのファイルが存在する。
【００８８】
このサブディレクトリにはファイル名とＦＡＴ上の記録位置が管理されている。即ち、図２２においては、ＣＡＴ．ＭＳＶというファイル名が記録されているスロットには”５”というＦＡＴ上のアドレスが管理されており、ＤＯＧ．ＭＳＶというファイル名が記録されているスロットには”１０”というＦＡＴ上のアドレスが管理されている。更に、ＭＡＮ．ＭＳＶというファイル名が記録されているスロットには”１１０”というＦＡＴ上のアドレスが管理されている。
【００８９】
クラスタ２以降が実際のデータ領域で、このエリアに本例ではＡＤＰＣＭで圧縮処理されたボイスデータが記録される。
本例では、クラスタ５〜クラスタ８にＣＡＴ．ＭＳＶというファイル名のＡＤＰＣＭで圧縮処理されたボイスデータが記録され、クラスタ１０〜クラスタ１２にＤＯＧ．ＭＳＶというファイル名の前半パートであるＤＯＧ−１がＡＤＰＣＭで圧縮処理されたボイスデータが記録され、クラスタ１００〜クラスタ１０１にＤＯＧ．ＭＳＶというファイル名の後半パートであるＤＯＧ−２がＡＤＰＣＭで圧縮処理されたボイスデータが記録されている。
更に、クラスタ１１０〜クラスタ１１１にＭＡＮ．ＭＳＶというファイル名のＡＤＰＣＭで圧縮処理されたボイスデータが記録されている。
またデータ領域上のＥｍｐｒｙとかかれた領域は記録可能領域である。
【００９０】
この例において、ＤＯＧ．ＭＳＶというファイル名のファイルは、単一のファイルが２分割されて離散的に記録されている例となっている。
【００９１】
クラスタ２００以降はファイルネームを管理する領域であり、クラスタ２００にはＣＡＴ．ＭＳＶというファイルが、クラスタ２０１にはＤＯＧ．ＭＳＶというファイルが、クラスタ２０２にはＭＡＮ．ＭＳＶというファイルが記録されている。
ファイル順を並び替える場合には上記クラスタ２００以降で並び替えを行えばよい。
【００９２】
最初、このような板状メモリ１が挿入された場合には、ドライブ装置は、先頭のパーティションテーブルを参照してＦＡＴパーティション領域のはじめと終わりのアドレスを把握する。
そしてブートセクタの再生を行った後にルートディレクトリ，サブディレクトリの再生を行う。
そしてサブディレクトリに記録されている再生管理情報である、ＰＢＬＩＳＴ．ＭＳＦが記録されているスロットを検索して、ＰＢＬＩＳＴ．ＭＳＦが記録されているスロットの終端部のアドレスを参照する。
図２２の例では、ＰＢＬＩＳＴ．ＭＳＦが記録されているスロットの終端部には”２００”というアドレスが記録されているので、これに基づいてクラスタ２００を参照することになる。
【００９３】
上述したようにクラスタ２００以降はファイル名を管理するとともにファイルの再生順を管理する領域であり、この例の場合にはＣＡＴ．ＭＳＶというファイルが１番目となり、ＤＯＧ．ＭＳＶというファイルが２番目となり、ＭＡＮ．ＭＳＶというファイルが３番目となる。
【００９４】
ここでクラスタ２００以降を全て参照したら、サブディレクトリに移行して、上記ＣＡＴ．ＭＳＶ及びＤＯＧ．ＭＳＶ及びＭＡＮ．ＭＳＶという名前のファイル名と合致するスロットを参照する。
図２２においては、ＣＡＴ．ＭＳＶというファイル名が記録されたスロットの終端には”５”というアドレスが記録され、ＤＯＧ．ＭＳＶというファイルが記録されたスロットの終端には”１０”というアドレスが記録され、ＭＡＮ．ＭＳＶというファイルが記録されたスロットの終端には１１０というアドレスが記録されている。
【００９５】
ここで、ＣＡＴ．ＭＳＶのスロットにおける”５”というアドレスに基づいて、ＦＡＴ上のエントリーアドレスを検索すると”６”というクラスタアドレスがエントリーをされており、”６”というエントリーアドレスを参照すると”７”というクラスターアドレスがエントリーされており、”７”というエントリーアドレスを参照すると”８”というクラスターアドレスがエントリーされており、”８”というエントリーアドレスを参照すると”ＦＦＦ”という終端を意味するコードが記録されている。
よって、ＣＡＴ．ＭＳＶというファイルは、クラスタ５，６，７，８の領域を使用しており、データ領域のクラスタ５，６，７，８を参照することでＣＡＴ．ＭＳＶというＡＤＰＣＭデータが実際に記録されている領域をアクセスすることができる。
【００９６】
また離散的に記録されているＤＯＧ．ＭＳＶというファイルを検索する場合は以下のようになる。
ＤＯＧ・ＭＳＶというファイルが記録されたスロットの終端には”１０”というアドレスが記録されている。
ここで、上記”１０”というアドレスに基づいて、ＦＡＴ上のエントリーアドレスを検索すると”１１”というクラスタアドレスがエントリーをされており、”１１”というエントリーアドレスを参照すると”１２”というクラスターアドレスがエントリーされており、”１２”というエントリーアドレスを参照すると”１００”というクラスターアドレスがエントリーされており、”１００”というエントリーアドレスを参照すると”１０１”というクラスターアドレスがエントリーされており、”１０１”というエントリーアドレスを参照するとＦＦＦという終端を意味するコードが記録されている。
【００９７】
よって、ＤＯＧ．ＭＳＶというファイルは、クラスタ１０，１１，１２、１００，１０１というクラスタ領域を使用しており、データ領域のクラスタ１０，１１，１２を参照することでＤＯＧ．ＭＳＶというファイルの前半パートに対応するＡＤＰＣＭデータが実際に記録されている領域をアクセスすることができる。更に、データ領域のクラスタ１００，１０１を参照することでＤＯＧ．ＭＳＶというファイルの後半パートに対応するＡＤＰＣＭデータが実際に記録されている領域をアクセスすることができる。
【００９８】
また、上記ＭＡＮ．ＭＳＶのスロットにおける”１１０”というアドレスに基づいて、ＦＡＴ上のエントリーアドレスを検索すると”１１１”というクラスタアドレスがエントリーをされており、”１１１”というエントリーアドレスを参照すると”ＦＦＦ”という終端を意味するコードが記録されている。
よって、ＭＡＮ．ＭＳＶというファイルは、クラスタ１１０，１１１という領域を使用していることがわかる。
【００９９】
以上のように板状メモリ１上に記録されたデータファイルをＦＡＴを参照して再生することができ、またデータファイルが離散的に記録されていても、それらを連結してシーケンシャルに再生することが可能となる。
【０１００】
５．ストリームデータの書込処理
続いて本例の最も特徴的な動作となる、ストリームデータの板状メモリ１への記録処理について説明していく。
上述したように、板状メモリ１で扱うことのできる主データとしては、動画データ、静止画データ、ボイスデータ、高音質なオーディオデータ（音楽用データ）、制御用データなどがあるが、例えばボイスデータ、動画データ、オーディオデータ等のリアルタイム性を有するストリームデータを記録する場合には、より高いビットレートのストリームデータにも対応できるように、効率的な記録処理がおこなわれることが必要である。
このために本例で実行するデータ書込処理を、図３２により前述した書込処理と区別して高速書込処理と呼ぶこととし、図１６〜図２０により説明する。
【０１０１】
図１６、図１７は、ドライブ装置のマイクロコンピュータ１０９の制御により実行される処理のフローチャートであり、また図１８は板状メモリ１上でのストリームデータ（ボイスデータ等）のファイルの記録状態を概念的に示すものである。さらに、図１９、図２０は記録処理前後でのＦＡＴ内容を示している。
【０１０２】
或る板状メモリ１をドライブ装置に装填し、記録操作をおこなうことで、ユーザーはマイクロフォン１０３により集音される音声を音声データとして板状メモリ１に記憶させていくことができる。
【０１０３】
ユーザーによりこのような記録動作が指示されたら、マイクロコンピュータ１０９は図１６のステップＦ１０１として、まず高速処理マーキング作成を行う。これは、高速書込を行うファイルとして、仮にルートディレクトリに特別なファイルエントリを作成する処理となる。
そしてそのファイルエントリに応じて、ステップＦ１０２で高速ファイルオープンを行なう。
これは高速なデータ書き込みに先んじて行われる必要のある処理であり、図１７で後に詳細に説明する書き込みが行われるクラスタに対する処理である。ステップＦ１０２の高速処理マーキング作成の処理は図３１に詳しく示される。
なお、作成するファイルエントリについては「ｔｅｍｐｔｅｍｐ．ｔｍｐ」という暫定的なファイル名とし、これについては図２３〜図３０を用いた説明において後述する。
【０１０４】
まずステップＦ１３０でＦＡＴで管理されている未使用クラスタのうちでクラスタ２以降の、その時点でもっとも若いクラスタナンバを変数ＣＬ（ｘ）にセットしている。このとき論理物理アドレス変換変換テーブルの内容に基づいて板状メモリ１内のフラッシュメモリのブロック番号に変換しておく。
ステップＦ１３１でその次に若い未使用クラスタナンバを変数ＣＬ（ｙ）にセットしている。このときもステップＦ１３０と同様に物理アドレスに変換しておく。
次にステップＦ１３２においてステップＦ１３０で得られたフラッシュメモリの物理アドレスに対応するブロックのデータの消去を行い、ステップＦ１３３ではステップＦ１３１で得られたフラッシュメモリの物理アドレスに対応するブロックのデータを消去する。なおここまでで得られた物理アドレスは以降に説明するステップで利用されるため保持される。
【０１０５】
以上の図３１のように、図１６のステップＦ１０２の処理を終えたら、続いて図１６のステップＦ１０３，Ｆ１０４として、入力されるボイスデータの記録が完了するまで（例えばユーザーが記録停止操作を行う直前までのボイスデータの書込が終了するまで）、板状メモリ１に対してクラスタ単位でストリームデータの書込を続ける。
【０１０６】
ステップＦ１０３の処理は図１７に詳しく示される。
すなわちステップＦ１０３では、時間的に連続して入力されてくるストリームデータについて、まず図１７のステップＦ１２０でクラスタ単位のデータ量の取り込みを行い、クラスタ単位のデータ量の取り込みが完了したら、ステップＦ１２１でクラスタＣＬ（ｘ）に対応する板状メモリ１のブロックに取り込まれたクラスタ単位データ量のストリームデータの書き込みを行う。
このときに使用されるクラスタＣＬ（ｘ）の値は例えば最初のクラスタ単位量のストリームデータの書き込みであった場合は、図１６のステップＦ１０２、より詳しくは図３１のステップＦ１３０で得た値である。また、それ以降のストリームデータ書き込みである場合には次に説明するステップＦ１２２で得られた値になる。
【０１０７】
次にステップＦ１２２においては、新たなクラスタＣＬ（ｘ）として、次にストリームが書き込まれるクラスタの板状メモリ１上での物理ブロックアドレスをＣＬ（ｙ）の値のコピーによって設定する。
更に次のステップＦ１２３においては、次の次にストリームデータが書き込まれるクラスタであるＦＡＴファイル管理された空きクラスタのうちで次に若いクラスタナンバを取得し論理物理アドレス変換テーブルによって板状メモリ１における物理ブロックナンバを変数ＣＬ（ｙ）にセットする。
そして次のステップＦ１２４においてステップＦ１２３で得られた板状メモリ１の物理ブロック番号のブロックのデータを消去している。この処理により次にストリームデータが書き込まれるクラスタの次のクラスタが消去されることになる。
【０１０８】
なお、ここで説明している例は、説明を単純化するためにデータの取り込みやフラッシュメモリへの書き込みの単位を１クラスタすなわちフラッシュメモリ上での１ブロックとしたものである。しかしながら、「２−２．物理的データ構造」で説明したように、板状メモリ１内のフラッシュメモリヘの書き込みの単位はページとなるので、例えばストリームデータの取り込みをフラッシュメモリの１ページに対応する量とし、書き込みも１ページ単位で書き込む用にしても良い。その場合は、１クラスタ分つまり１ブロック分のデータを書き込むためには、１ブロックが１６ページの場合であれば１６回書き込みのページを変えながら書き込み処理を繰り返し、１ブロックが３２ページの場合であれば３２回書き込みのページを変えながら書き込み処理を繰り返すこととなる。そして図１６のステップＦ１０４による評価を行うことも可能であり、また、１ページの書き込みごとにステップＦ１０４に相当する入力されるデータの終了判定を行うようにしても良い。
【０１０９】
以上の図１７の処理が、図１６のステップＦ１０３で実行される。
なお、この処理では、空きクラスタ（ブロック）のうちで最も若いクラスタナンバ（論理アドレス）のブロックにストリームデータの書込を行い、次に若いクラスタナンバのブロックについてデータ消去を行うようにしているが、これは後述する復活処理を可能とするためのものであり、処理の意味については後に説明する。
【０１１０】
この図１６のステップＦ１０３の処理（＝図１７の処理）は、ストリームデータの記録が完了するまで、クラスタ単位のデータが取り込まれる毎に繰り返し実行されることになるが、従ってその都度、各時点で最も若いクラスタナンバのブロックに書込が行われ、続いて若いクラスタナンバのブロックに対する消去が行われていくことになる。
【０１１１】
これは、実際の書き込みにおいては先に説明したようにデータの書き込みは１ページ単位での書き込みをしていくわけであるが、１クラスタ分のデータつまり１６ページまたは３２ページのデータを書き終わる前に次ぎに書き込むべきクラスタが消去されている必要があるからである。フラッシュメモリの消去の単位は先に説明した通りクラスタであるが、１クラスタの消去に要する時間に比べて１ページのデータを書く時間が短いためで、最後のページの書き込みが始まるよりも十分に前である必要があることと処理の簡易化をはかるために常に１クラスタ先を消去しておくのである。
また、先のステップＦ１０２について図３１で説明したが、ステップＦ１０２では、図１７のステップＦ１２２，Ｆ１２３，Ｆ１２４と同様の意味の処理とクラスタＣＬ（ｘ）のデータの消去をしている。この処理をすることによって最初にストリームデータの書き込まれるクラスタＣＬ（ｘ）とその次に書き込まれるクラスタつまり次に若い番号のクラスタＣＬ（ｙ）が消去された状態になるのである。
【０１１２】
上記のステップＦ１０３の処理がストリームデータの終了まで継続されるが、全ストリームデータの書込が完了したら、処理はステップＦ１０４からＦ１０５に進み、ストリームデータの記録動作に応じてＦＡＴを更新する。ここでは、ＦＡＴのエントリを更新して今回の記録に応じたリンク構造が記録されるようにするとともに、ディレクトリエントリの更新、及びステップＦ１０１で行った高速処理マーキングの消去を行うことになる。
なお後述するが、このときに、例えば「ｔｅｍｐｔｅｍｐ．ｔｍｐ」という暫定ファイル名を消去し、記録したストリームデータに本来付与されるファイル名が記録され、ディレクトリ構成内に配される。
これによって、ステップＦ１０３で書き込んでいったストリームデータがＦＡＴ上で適正に管理された有効なファイルデータとなる。
ＦＡＴ更新を終えたら、ステップＦ１０６でファイルクローズを行なって処理を終える。
【０１１３】
以上の処理により高速書込処理が完了するわけであるが、この処理によって記録されるストリームデータファイル及びＦＡＴ更新状況を図１８〜図２０で述べる。
今回の記録前の時点において、図１８（ａ）に示すファイルＦ１が、板状メモリ１に既に記録されていたとする。
そして仮にこのファイルＦ１は、クラスタＣＬ（２）、ＣＬ（３）、ＣＬ（４）、ＣＬ（６）、ＣＬ（８）、ＣＬ（９）に記憶されていたものとする。なお実際にはこのクラスタナンバのそれぞれに対応する物理アドレスのブロックに記録されているものであり、これまでの説明からわかるように、実際の記録ブロックの物理アドレスはアドレス変換テーブルに示される。また従って、図１８は１つのファイルが物理的に連続したブロックに記録されている状態を表すものではない。
【０１１４】
この場合、このファイルＦ１のクラスタリンクを示すＦＡＴは図１９のようになっている。即ち図示していないが図１３で説明したディレクトリエントリによってファイルＦ１の先頭のクラスタがクラスタＣＬ２とされ、図１９のＦＡＴのクラスタＣＬ（２）のエントリには、「００３」と記憶されている。つまりクラスタＣＬ（２）がクラスタＣＬ（３）にリンクすることが示される。またクラスタＣＬ（３）のエントリには「００４」と記憶され、クラスタＣＬ（４）にリンクすることが示される。以降同様にリンク状態が記録され、最後のクラスタＣＬ（９）のエントリには最終クラスタであることを示す値「ＦＦＦ」が記憶される。
このようなＦＡＴによって、図１８（ａ）のファイルＦ１がクラスタＣＬ（２）、ＣＬ（３）、ＣＬ（４）、ＣＬ（６）、ＣＬ（８）、ＣＬ（９）に、その順序で格納されていることが管理される。
そしてこの状態では、クラスタＣＬ（５）、ＣＬ（７）、及びクラスタＣＬ（Ａ）以降は「０００」つまり未使用とされている。
【０１１５】
ここでユーザーが新たに記録を指示し、上記高速書込処理により、新たなストリームデータファイルとして図１８（ｂ）のファイルＦ２が記録されたとする。
この場合、ストリームデータの記録に７クラスタを用いたとすると、ファイルＦ２は、クラスタＣＬ（５）、ＣＬ（７）、ＣＬ（Ａ）、ＣＬ（Ｂ）、ＣＬ（Ｃ）、ＣＬ（Ｄ）、ＣＬ（Ｅ）に記録されることになる。
【０１１６】
即ち図１７に示した処理により、まず最初のクラスタ単位のデータは、最も若いクラスタナンバの空きクラスタに記録されるため、図１９からわかるようにクラスタＣＬ（５）が用いられることになる。またこのとき、次とさらにその次に若いクラスタ（に対応するブロック）がデータ消去されるが、この場合はクラスタＣＬ（７）、ＣＬ（Ａ）が消去対象となる。
さらに次のクラスタ単位のストリームデータは、同じくその時点で最も若い空きクラスタが用いられることになるため、今度はクラスタＣＬ（７）が用いられる。またこのとき、次とさらにその次に若いクラスタであるクラスタＣＬ（Ａ）、ＣＬ（Ｂ）が消去対象となる。
上述した処理により以上の動作が行われていくことで、ステップＦ１０４で終了と判断された時点では、図１８（ｂ）のようにクラスタＣＬ（５）、ＣＬ（７）、ＣＬ（Ａ）、ＣＬ（Ｂ）、ＣＬ（Ｃ）、ＣＬ（Ｄ）、ＣＬ（Ｅ）のそれぞれに対応する物理アドレスのブロックに、ストリームデータが記録された状態となる。
但し、この時点ではＦＡＴが更新されておらず図１９のままであるため、ステップＦ１０５としてＦＡＴのリンク及びディレクトリエントリの更新が行われ、ファイルＦ２に対応するクラスタリンクが形成される。
即ち、ファイルＦ２についてのディレクトリエントリが形成され、先頭のクラスタがクラスタＣＬ（５）と指示されるとともに、図２０に示すように、ＦＡＴにおいてクラスタＣＬ（５）のエントリには「００７」、クラスタＣＬ（７）のエントリには「００Ａ」、クラスタＣＬ（Ａ）のエントリには「００Ｂ」・・・・・クラスタＣＬ（Ｅ）のエントリには「ＦＦＦ」と記録される。
これによって、高速書込処理により記録されたファイルＦ２が、ＦＡＴによって管理された状態となり、つまり有効なファイルデータとなる。
【０１１７】
これまでの説明について、図２３〜図３０を用いて補足説明する。
図２３は新しくデータを書き込む前のディレクトリを示している。ルートディレクトリの下には「ＶＯＩＣＥ」と名付けられたサブディレクトリのほか図示しないサブディレクトリが存在している。また、「ＶＯＩＣＥ」ディレクトリの下には「ＦＯＬＤＥＲ１」と名付けられたサブディレクトリと図示しないその他のサブディレクトリが存在している。
さらに「ＦＯＬＤＥＲ１」ディレクトリの下には既に記録された「９８１２０１００．ＭＳＶ」と言うファイルが存在している。
【０１１８】
図２６は、図２３に対応したＦＡＴファイルシステム上での各データの配置を示している。ルートディレクトリには「ＶＯＩＣＥ」という名称のディレクトリが存在することが示されている。そしてサブディレクトリには図示しない「ＦＯＬＤＥＲ１」という名称のサブディレクトリが存在しさらに「９８１２０１００．ＭＳＶ」と言うファイルのエントリがその下に存在していることを示している。このエントリには「９８１２０１００．ＭＳＶ」と言うファイルの先頭のクラスタを示す「２」が書かれている。
【０１１９】
ＦＡＴ領域においては、「２」というＦＡＴ上のアドレスには「３」というアドレスが書かれており、更にアドレス「３」には「５」というアドレスを示す値が書かれている。
このようにして離散的に書かれているデータをＦＡＴファイルシステム上でおっていくことで「９８１２０１００．ＭＳＶ」というファイルは、クラスタ２→クラスタ３→クラスタ５→クラスタ６→クラスタ７→クラスタ８→クラスタ１０→クラスタ１１の順に板状メモリ１に記録されていることがわかる。
これは図２６のデータ領域内に示しているように、「９８１２０１００．ＭＳＶ」というファイルが３つの離散的なファイル「９８１２０１００−１」「９８１２０１００−２」「９８１２０１００−３」で構成されることになる。
なお上述した図２２の説明から理解されるように、ファイル名はクラスタ２００に記録されている。
【０１２０】
このようなディレクトリ構造を持った板状メモリ１に新たにデータを書こうとした場合、図１６のステップＦ１０１において仮にルートディレクトリに特別なエントリファイルが作成されるわけであるが、これにより図２４に示すように例えば「ｔｅｍｐｔｅｍｐ．ｔｍｐ」と言うファイル名のファイルが作成される。ただし、この段階ではファイルエントリが作成されるだけのため、ファイルサイズは０とされている。
図２７は、この段階でのＦＡＴファイルシステム上でのデータの状態を示している。ルートディレクトリには「ｔｅｍｐｔｅｍｐ．ｔｍｐ」という名称のサイズ０のファイルが作成されている。
【０１２１】
この後、クラスタ１ではない一番若いクラスタ番号を持った空のクラスタを検索する。この検索は、ＦＡＴ領域を順に見ていき「０」の書かれているアドレスを発見することで行われる。この例の場合はＦＡＴのアドレス「４」に対応するクラスタが空であるということがわかる。
このアドレス「４」が図１６のステップＦ１０２（図３１）に示した高速ファイルオープン処理のＣＬ（ｘ）を求める処理になる。またその次に若いクラスタ番号を持った空のクラスタを検索するが、この場合はＦＡＴのアドレス「９」に相当するクラスタでありステップＦ１０２の高速ファイルオープン処理のＣＬ（ｙ）が「９」とされることがわかる。
この後それぞれのクラスタ「４」，クラスタ「９」が実際のフラッシュメモリ上で対応するブロック番号を論理物理アドレス変換テーブルをもって求め、求められた物理アドレスにしたがって対応するブロックの消去を行うことになる。これによって図１６のステップＦ１０２に示した高速ファイルオープン処理が完了したことになる。
【０１２２】
図２８はストリームデータを板状メモリ１に書き込んでいる途中の状態を表している。図２８ではクラスタ４とクラスタ９にボイスデータが記録されている。なお、例えばこれらを「ｔｅｍｐｔｅｍｐ−１」「ｔｅｍｐｔｅｍｐ−２」とするが、これらは説明の都合上ふった名称であって実際のファイル管理システム上に管理されているものではない。
【０１２３】
図３２のような従来のデータ書き込み手順の場合、ＦＡＴファイルシステムを利用して書き込みを行うため、この時点で例えばＦＡＴ領域のアドレス「４」にはクラスタ９にリンクする情報として「９」が書かれることになるが、本実施の形態ではそのような処理はこの段階では行わないため、ＦＡＴのアドレス「４」には  図２８のように「０」が書かれた状態となっている。
【０１２４】
このときには、次に書込が行われるクラスタ１２は既に消去がされている状態であり、クラスタ１２が次に書き込むクラスタとして変数ＣＬ（ｘ）にセットされ、更にその次に書き込みされるクラスタとしてクラスタ１３が変数ＣＬ（ｙ）にセットされてクラスタＣＬ（ｙ）のデータは消去されることになる。
【０１２５】
図２９は、入力されるストリームデータが終了した状態を表している。この場合、最終的に入力されたストリームデータは３クラスタのデータ量であったことになる。ここで新たに書き込まれた３番目のクラスタのデータを仮に「ｔｅｍｐｔｅｍｐ−３」とするが、これはファイル管理システムで管理された名称でないのは上記「ｔｅｍｐｔｅｍｐ−１」や「ｔｅｍｐｔｅｍｐ−２」と同様である。
【０１２６】
続いて、これまでに書き込まれたストリームデータを実体のあるファイルとしてファイルシステムに登録する処理が必要になるが、それを図３０を用いて説明する。
つまり図１６のステップＦ１０５のＦＡＴ更新であるが、ここでＦＡＴを走査して空のクラスタを示す「０」が書かれた一番小さいＦＡＴ上のアドレスを探しだす。この例（図２９の時点）ではクラスタ４に対応するアドレス「４」の部分に「０」が書かれていることが検出される。つまりクラスタ４が新たに記録したストリームデータの先頭になるわけである。さらに次の空のクラスタを示すＦＡＴ上のアドレスを探す。この例（図２９）の場合クラスタ９であることがわかるので、先程のクラスタ４を示すＦＡＴのクラスタ４に相当する位置（アドレス「４」）に次ぎに再生されるデータがクラスタ９であることを示す「９」を書き込む（図３０参照）。
【０１２７】
次にクラスタ９のデータを読みだしてみる。このときデータの書き込みがあると判断されるので更に次に空のクラスタで若いクラスタ番号のクラスタを、同様にＦＡＴ上で探す。
この例の場合クラスタ１２であることがわかり、またクラスタ１２は空ではないので、ＦＡＴのクラスタ９を示す位置に次ぎに再生されるクラスタがクラスタ１２であることを示す「１２」を書き込む（図３０参照）。
【０１２８】
さらに次に若いクラスタナンバのクラスタをＦＡＴにおいて探すとクラスタ１３であることがわかるが、実際にクラスタ１３にはストリームデータは書き込まれておらず消去された状態にあることが、クラスタ１３を読み出すことによってわかる。そこでＦＡＴのクラスタ１２を示す位置にはこのクラスタ１２が新たに記録されたストリームデータの最後のクラスタであることを示す「ＦＦＦ」を書き込む（図３０参照）。
【０１２９】
これによって図３０のように、ＦＡＴとされている領域の４番目には「９」、９番目には「１２」、１２番目には「ＦＦＦ」が書かれて、離散的に書き込まれたストリームデータのリンクが形成されたことになる。
【０１３０】
次にディレクトリエントリの更新を行うが、これはファイル名「ｔｅｍｐｔｅｍｐ．ｔｍｐ」としたファイルサイズ０のファイルのファイルサイズを、ストリームデータの書き込みに応じた値にして、さらにサブディレクトリの領域に例えば図３０の例であればファイル名「ｔｅｍｐｔｅｍｐ．ｔｍｐ」を「９８１２０２００．ＭＳＶ」と名称を変更して記録するものである。
このとき「９８１２０２００．ＭＳＶ」の最初のクラスタナンバが４であることも一緒に更新する。つまりファイルサイズの更新とディレクトリ変更を伴うファイル名変更を行うものである。
さらに、クラスタ２０１にはファイル名称が「９８１２０２００．ＭＳＶ」であることがファイルシステムによって認識されるように「９８１２０２００．ＭＳＶ」を書き込む。
【０１３１】
この処理によって図１６のステップＦ１０１において行った高速処理マーキングとしての「ｔｅｍｐｔｅｍｐ．ｔｍｐ」と言う名称のファイルの消去も行われたことになる。
【０１３２】
この状態を図２５に示している。上記図２４の状態においてはルートディレクトリの直下にＶＯＩＣＥと言う名称のサブディレクトリと同列に存在していた「ｔｅｍｐｔｅｍｐ．ｔｍｐ」という名称のファイルは、ディレクトリの変更を伴う名称変更をした結果、図２５に示したようにルートディレクトリの下の「ＶＯＩＣＥ」という名称のサブディレクトリの下の「ＦＯＬＤＥＲ１」という名称のサブディレクトリの下に、「９８１２０１００．ＭＳＶ」という名称のデータと同列に新たに記録されたストリームデータとして、「９８１２０２００．ＭＳＶ」という名称でファイルシステムに認識されるようになる。これによってルートディレクトリの直下に存在していた「ｔｅｍｐｔｅｍｐ．ｔｍｐ」という名称のファイルはファイルシステムから消去されたことになる。
【０１３３】
以上の処理を終えたら、図１６のステップＦ１０６のファイルクローズを行い、一連の処理が完了する。
【０１３４】
なお本例では、新たに記録されたストリームデータのファイル名を「９８１２０２００．ＭＳＶ」としているが、このようなファイル名は装置が適当に割り振っても良いし、また記録開始前または記録終了時などにユーザーに入力させるようにしても良い。
【０１３５】
以上の説明から理解されるように、本例では高速書込処理として、ストリームデータは連続的にクラスタ単位で書込を行っていくようにし、ＦＡＴの更新はストリームデータの書込終了後に実行される。
また上述したように、本例のアドレス変換テーブルでは、未使用の論理アドレスと物理アドレスについても、予め対応関係が記録されているものとなっている。
【０１３６】
このため、ストリームデータを連続して記録している期間には、ＦＡＴやアドレス変換テーブルの更新は行なわれないことになる。従ってストリームデータの記録に関して、単位時間当たりの書込可能なデータ量を、図３２で説明した従来の処理に比べて大幅に増大できる。つまり単位時間当たりの書込可能なデータ量は、ほぼハードウエアのスペックによる上限まで増大させることが可能となる。
これにより、高ビットレートのストリームデータに対しても対応可能となる。例えばボイスデータ、高音質オーディオデータはもとより、データ量の多い動画データなどについても、十分にリアルタイムな記録動作が可能となる。
さらに、実質的にはデータ書込速度が大幅に高速化されることにもなり、またＦＡＴの更新のためのアクセスは１回のみとなり、大幅に減少することになるため、記録動作にかかる消費電力も著しく低減できる。
【０１３７】
また、高ビットレートのストリームデータのリアルタイムな書込に対応できることは、大容量のバッファメモリを設けたり、或いは他の機器から出力されるオーディオデータや動画データなどを記録する際に、そのストリームデータの供給機器側からの出力タイミングを制御するなどのシステム処理を行うことなどが不要となることをも意味し、ドライブ装置としてのハードウエア及びソフトウエアの両面での構成の簡略化を実現できることにもなる。
【０１３８】
６．復活処理
ところで上記高速書込処理により、例えば高ビットレートのストリームデータでもリアルタイムな書込が可能となるが、上述した処理の説明からもわかるように、ＦＡＴ更新はストリームデータの書込完了後において行われるものであり、またＦＡＴ更新が完了して初めて書き込まれたストリームデータが有効化、つまり再生可能なデータとされるものである。
これは、もしストリームデータの書込途中もしくは書込が完了した時点などにおいて、ＦＡＴ更新が行われる前に例えば停電やその他の障害により電源遮断が発生し、ＦＡＴ更新が不能となってしまった場合は、書き込んだストリームデータが無効なファイル、つまりＦＡＴで管理されていないため再生不能なファイルとなってしまう。
【０１３９】
これが例えば他の記録媒体からダビングしたデータである場合などは、再度ダビングをすることにより事なきを得るが、マイクロフォン１０３から集音した音声を記録していた場合や、或いは撮像機器で撮像された動画データをリアルタイムで記録していた場合、さらには例えば放送受信機器で受信復調された放送音声を記録していた場合など、再度そのストリームデータを取り込むことができない場合は、大きな問題となってしまう。
このため本例では、一旦板状メモリ１に書き込んだデータについては、もしＦＡＴ更新が不能となった場合でも、復活処理により有効なデータに復活させることができるようにしている。
【０１４０】
この復活処理としてマイクロコンピュータ１０９が実行する処理を図２１に示すが、この復活処理を実現するために、書込時には上述した図１７の処理が行われているものである。
つまり、上述したようにクラスタ単位での書込動作の際には、書込規則として、各時点で空きクラスタのうちで最も若いクラスタナンバ（論理アドレス）のブロックにストリームデータの書込を行なうようにしていることと、次及びその次に若い２つのクラスタナンバのブロックについてデータ消去を行うようにしていることである。
【０１４１】
このような処理を前提とすることで、図２１の復活処理が可能となる。
復活処理の際には、まずステップＦ２０１として、ＦＡＴで管理されている未使用クラスタ（＝空きクラスタ）のうちで、その時点で最も若いクラスタナンバ（論理アドレス）を変数ＣＬ（ｘ）にセットする。
なお、上記図１８、図１９、図２０で説明したような書込動作について復活処理が実行されるのは、例えば図１８のようにファイルＦ２が板状メモリ１に記録されはしたが、ＦＡＴが依然として未更新の図１９のままである場合である。
従って、このステップＦ２０１で最も若いクラスタナンバと判断されるクラスタは、実際にはファイルＦ２の最初のクラスタが書き込まれたクラスタナンバとなる。つまり図１８、図１９の場合は、クラスタＣＬ（５）となる。
【０１４２】
次にステップＦ２０２で、クラスタナンバＣＬ（ｘ）となるクラスタに対してデータ読み出しを実行し、ステップＦ２０３で、実データが存在するか否か、つまり、データ消去が実行されているブロックであるか否かを判別する。
上記例の場合、クラスタＣＬ（５）にはデータが記録されているため、ステップＦ２０４に進むことになる。
【０１４３】
ステップＦ２０４では、ＦＡＴ（図１９の状態）において空きクラスタとされるうちで、次に若いクラスタナンバを変数ＣＬ（ｘ）にセットする。そしてステップＦ２０２、Ｆ２０３の処理を行う。つまり同様にそのクラスタナンバＣＬ（ｘ）のブロックの読み込み及びデータ存在の確認を行う。
上記例の場合、クラスタＣＬ（５）の次に若いクラスタナンバであるクラスタＣＬ（７）について読込及びデータ確認が行われることになる。
そしてクラスタＣＬ（７）にはデータが記録されているため、再びステップＦ２０４に進む。
【０１４４】
このようなステップＦ２０１〜Ｆ２０４の処理により、データが記録されている最後のブロックが検出されることになる。
つまり、例えば上記例の場合は、空きクラスタについてナンバが若い順に、クラスタＣＬ（５）、ＣＬ（７）、ＣＬ（Ａ）、ＣＬ（Ｂ）、ＣＬ（Ｃ）、ＣＬ（Ｄ）、ＣＬ（Ｅ）とそれぞれ読出及びデータ存在の確認が行われる。ここでクラスタＣＬ（Ｅ）まではデータ存在が確認され、ステップＦ２０４に進むことになるが、そのステップＦ２０４では、変数ＣＬ（ｘ）としてクラスタＣＬ（Ｆ）がセットされ、ステップＦ２０２，Ｆ２０３で読出及びデータ存在確認が行われることになる。
このとき、上述した書込処理において、ストリームデータを書き込んだ次及びその次のブロックに対しては消去を実行しているため、データ無しと判断されることになる。
【０１４５】
従って、これによってクラスタＣＬ（５）、ＣＬ（７）、ＣＬ（Ａ）、ＣＬ（Ｂ）、ＣＬ（Ｃ）、ＣＬ（Ｄ）、ＣＬ（Ｅ）に有効化すべきデータが存在するということが確認でき、ステップＦ２０５では、現在のクラスタＣＬ（ｘ）（＝ＣＬ（Ｆ））が異常終了にかかるクラスタであると判断する。
そしてステップＦ２０６、Ｆ２０７では、有効化すべきと判断されたクラスタＣＬ（５）、ＣＬ（７）、ＣＬ（Ａ）、ＣＬ（Ｂ）、ＣＬ（Ｃ）、ＣＬ（Ｄ）、ＣＬ（Ｅ）がＦＡＴ上でリンクされるようにし、またこれが有効なファイルとされるようにディレクトリエントリを更新する。
これによりＦＡＴは図２０の状態に更新され、つまりファイルＦ２が有効なファイルとして復活されることになる。
【０１４６】
このように復活処理が行われることで、たとえ上述した高速書込処理として、ＦＡＴ更新がストリームデータ記録後に一括して実行されるようにしても、電源遮断等の事故の場合も対応できることになる。
つまり上記高速書込処理により、書込済のストリームデータに対してＦＡＴ未更新状態が発生することがあり得ることとなるが、この復活処理が実行できることで、ＦＡＴ未更新状態が発生してもそれを解消できることとなり、問題ないものとなる。
【０１４７】
なお、ファイルＦ２としての全ストリームデータの書込が完了した後にＦＡＴ更新不能となった場合は、このように復活処理によりそのファイルＦ２を完全に復活させることができるが、ストリームデータの書込途中において電源遮断などで処理が中断されてしまった場合は、その書込が行われた部分までが復活処理の対象となることはいうまでもない。
例えば図１８のファイルＦ２についてクラスタＣＬ（５）、ＣＬ（７）、ＣＬ（Ａ）、ＣＬ（Ｂ）まで書き込んだ時点で動作不能となった場合は、ステップＦ２０１〜Ｆ２０４の処理で、クラスタＣＬ（Ｃ）についてデータ無し（消去状態）と判断されることになるため、ステップＦ２０６、Ｆ２０７の更新処理では、クラスタＣＬ（５）、ＣＬ（７）、ＣＬ（Ａ）、ＣＬ（Ｂ）がリンクされた１つのファイルとなるように更新される。
【０１４８】
なお、以上の復活処理は、ユーザー操作により開始されるようにしても良いし、マイクロコンピュータ１０９がＦＡＴ未更新状態を自動検出して実行しても良い。
例えばマイクロコンピュータ１０９は、電源が回復した時点で、板状メモリ１において高速処理マーキングがオフされていないなど適正なファイルクローズが行われていないことを検出したら、即座に復活処理を実行するようにすれば、ユーザーに対してはＦＡＴ更新状況によるファイルの有効／無効を意識させることなく、あくまでも書込を行った部分については有効であるように認識させることができる。
また高速マーキング処理において、上述した「ｔｅｍｐｔｅｍｐ．ｔｍｐ」のような暫定的なファイル名を設定し、最終的にそれを消去して正規のファイル名を設定する場合は、電源回復時点などで「ｔｅｍｐｔｅｍｐ．ｔｍｐ」というファイル名が検出された場合は、適正なファイルクローズが行われていないと判断することができる。従ってそのような場合に上記復活処理を開始すればよい。
【０１４９】
以上、実施の形態について述べてきたが、本発明はこれらの構成及び動作に限定されるものではない。特に高速書込処理や復活処理の細かい手順としては各種の変形例が考えられる。
【０１５０】
例えば高速書込処理において最後に書き込みされたクラスタの判断として、消去済みのクラスタを検出したか否かという方法をとっているが、ストリームデータの書き込みが終了した時点で記録の最後のクラスタ番号をマイクロコンピュータ１０９が記憶しておいて、クラスタのリンクを作成する段階でマイクロコンピュータ１０９が記憶した最後のクラスタ番号と照合することでリンクの最後のクラスタを容易に判別することが可能である。
【０１５１】
また、記録終了後に記録したクラスタのリンクをさせていく処理を簡略化する目的でストリームデータの記録開始位置を書き込み処理中であることを表す「ｔｅｍｐｔｅｍｐ．ｔｍｐ」の関連情報の一部として、図２７に示したサブディレクトリに書かれた「９８１２０１００．ＭＳＶ」の開始位置として記憶しているクラスタアドレス「２」と同様に、クラスタアドレス「４」を記録するようにしても良い。
このようにすることでリンク情報作成時においてＦＡＴ領域を参照して記録開始位置を確認することが不要となり、またＦＡＴ領域を参照するのであれば記録開始位置が正しいことを知ることもできる。
【０１５２】
さらに、記録終了後に記録したクラスタをリンクをさせていく処理を簡略化する目的で、ストリームデータを板状メモリ１に記録するたびに、たとえばドライブ装置内のＲＡＭ１１１にクラスタ番号のみ記録順序が判別可能なように記録しておき、記録されたクラスタのリンクの処理時にはＲＡＭ１１１に記憶しておいたクラスタ番号に基づいてリンクの作成を行っていけば、板状メモリ１上に形成されているＦＡＴの読み出しや消去済みとされているクラスタにデータが書き込まれているかどうかを判断する処理は省略可能となる。このようにすることによって正常に記録が終了してＦＡＴの更新処理などが行われる場合には、新たに記録されたストリームデータに対するクラスタのリンク処理がより高速に行えることになる。
【０１５３】
また、本発明のシステムとしては、図１のような板状メモリに限定されるものではなく、他の外形形状とされた固体メモリ媒体（メモリチップ、メモリカード、メモリモジュール等）でも構わない。
また、これまで説明したファイルシステムのフォーマットも、例えば実際に応じてその細部の規定などは変更されて構わない。
更には、フラッシュメモリ容量のバリエーションも図９に示したものに限定されるものではない。もちろん、本発明の記録媒体のメモリ素子はフラッシュメモリに限られず、他の種のメモリ素子でもよい。
【０１５４】
【発明の効果】
以上の説明からわかるように、本発明の記録方法、記録装置では、ストリームデータ等の主情報を連続して記録している期間には、ディレクトリ情報やリンク情報等の管理情報の更新は行なわれないことになり、従って主情報の記録に関して、単位時間当たりの書込可能なデータ量を大幅に増大できる。つまり単位時間当たりの書込可能なデータ量は、ほぼハードウエアのスペックによる上限まで増大させることが可能となる。
これにより、より高ビットレートのストリームデータに対しても対応可能となるという効果がある。
さらに、実質的にはデータ書込速度が大幅に高速化されることになるという効果もあり、また管理情報やアドレス変換情報の更新のためのアクセス回数の大幅減少から記録動作時の消費電力も著しく低減できる。
【０１５５】
また本発明の管理方法によれば、主情報の記録動作の中断又は完了の後に、管理情報更新動作が実行不能となった場合には、その後の動作時において、主情報の記録に用いられたブロックを判別し、その判別に応じて管理情報を更新して、更新した管理情報を記録媒体に記録することで、主情報の記録動作においてその中断又は完了までに記録された主情報を有効化させる記録データ復活動作が可能となる。従って、本発明の記録方法、記録装置のように管理情報の更新が主情報の書込完了後に行われるシステムであって、例えば突然の電源遮断などによって管理情報更新が不能となった場合でも、記録済データについては保護できることになる。これによりシステムの信頼性を向上させることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態の板状メモリの外形形状を示す平面図、正面図、側面図、底面図である。
【図２】実施の形態のファイルシステム処理階層の説明図である。
【図３】実施の形態の板状メモリの物理的データ構造の説明図である。
【図４】実施の形態の板状メモリの管理フラグ内容の説明図である。
【図５】実施の形態の板状メモリにおけるデータ更新処理と物理アドレス及び論理アドレスの概念の説明図である。
【図６】実施の形態の論理−物理アドレス変換テーブルの管理形態の説明図である。
【図７】実施の形態の論理−物理アドレス変換テーブルの構造の説明図である。
【図８】論理−物理アドレス変換テーブルにおける未使用ブロックの管理形態を説明するための説明図である。
【図９】実施の形態の板状メモリのフラッシュメモリ容量／ブロック数／１ブロックの容量／１ページの容量／論理−物理アドレス変換テーブルのサイズの関係の説明図である。
【図１０】実施の形態のドライブ装置のブロック図である。
【図１１】実施の形態における板状メモリとセット本体のマイクロコンピュータとのインターフェイスを概念的に示す説明図である。
【図１２】ＦＡＴ構造の説明図である。
【図１３】ＦＡＴによるクラスタ管理形態の説明図である。
【図１４】ディレクトリの内容の説明図である。
【図１５】サブディレクトリ及びファイルの格納形態の説明図である。
【図１６】実施の形態の高速書込処理のフローチャートである。
【図１７】実施の形態の高速書込処理のフローチャートである。
【図１８】実施の形態の高速書込動作例の説明図である。
【図１９】実施の形態の高速書込処理前のＦＡＴの説明図である。
【図２０】実施の形態の高速書込処理後のＦＡＴの説明図である。
【図２１】実施の形態の復活処理のフローチャートである。
【図２２】実施の形態のＦＡＴによる管理構造の説明図である。
【図２３】実施の形態のデータ書込前のディレクトリ構成例の説明図である。
【図２４】実施の形態のデータ書込中のディレクトリ構成例の説明図である。
【図２５】実施の形態のデータ書込後のディレクトリ構成例の説明図である。
【図２６】実施の形態のデータ書込前のデータ状態の説明図である。
【図２７】実施の形態のデータ書込中のデータ状態の説明図である。
【図２８】実施の形態のデータ書込中のデータ状態の説明図である。
【図２９】実施の形態のＦＡＴ更新前のデータ状態の説明図である。
【図３０】実施の形態のＦＡＴ更新後のデータ状態の説明図である。
【図３１】実施の形態の高速書込処理のフローチャートである。
【図３２】従来の書込処理のフローチャートである。
【符号の説明】
１  板状メモリ、２  端子部、４  凹凸部、５  スライドスイッチ、１００  セット本体、１０３  マイクロフォン、１０４  マイクアンプ、１０５  スピーカアンプ、１０６  スピーカ、１０７  表示ドライバ、１０８  表示部、１０９マイクロコンピュータ、１１２  操作部、１２０  着脱機構
【図１】
0004441968.tif 000002
【図２】
0004441968.tif 000003
【図３】
0004441968.tif 000004
【図４】
0004441968.tif 000005
【図５】
0004441968.tif 000006
【図６】
0004441968.tif 000007
【図７】
0004441968.tif 000008
【図８】
0004441968.tif 000009
【図９】
0004441968.tif 000010
【図１０】
0004441968.tif 000011
【図１１】
0004441968.tif 000012
【図１２】
0004441968.tif 000013
【図１３】
0004441968.tif 000014
【図１４】
0004441968.tif 000015
【図１５】
0004441968.tif 000016
【図１６】
0004441968.tif 000017
【図１７】
0004441968.tif 000018
【図１８】
0004441968.tif 000019
【図１９】
0004441968.tif 000020
【図２０】
0004441968.tif 000021
【図２１】
0004441968.tif 000022
【図２２】
0004441968.tif 000023
【図２３】
0004441968.tif 000024
【図２４】
0004441968.tif 000025
【図２５】
0004441968.tif 000026
【図２６】
0004441968.tif 000027
【図２７】
0004441968.tif 000028
【図２８】
0004441968.tif 000029
【図２９】
0004441968.tif 000030
【図３０】
0004441968.tif 000031
【図３１】
0004441968.tif 000032
【図３２】
0004441968.tif 000033