(57)【特許請求の範囲】
【請求項１】
入力されるディジタル信号に対して、所定の圧縮処理を施すと共に、ブロック化を施す圧縮処理手段と、
所定の固定値を発生する固定値発生手段と、
上記圧縮処理手段において、圧縮が施されたディジタル信号のブロックに対して、所定のタイミングで上記固定値発生手段において発生した上記固定値を付加する付加手段と、
上記付加手段において、付加された上記固定値および圧縮が施された上記ディジタル信号に対して暗号化を施す暗号化手段と、
上記暗号化手段において、暗号化が施された上記固定値および圧縮が施された上記ディジタル信号を記録媒体に記録する記録手段と
を備え、
圧縮率によって、上記固定値発生手段において発生する固定値を変化させる記録装置。
【請求項２】
入力されるディジタル信号に対して、所定の圧縮処理を施すと共に、ブロック化を施す圧縮処理手段と、
所定の固定値を発生する固定値発生手段と、
上記圧縮処理手段において、圧縮が施されたディジタル信号のブロックに対して、所定のタイミングで上記固定値発生手段において発生した上記固定値を付加する付加手段と、
上記付加手段において、付加された上記固定値および圧縮が施された上記ディジタル信号に対して暗号化を施す暗号化手段と、
上記暗号化手段において、暗号化が施された上記固定値および圧縮が施された上記ディジタル信号を記録媒体に記録する記録手段と
を備え、
上記ディジタル信号は、ディジタルオーディオ信号であって、チャンネルによって上記固定値発生手段において発生する固定値を変化させる記録装置。
【請求項３】
入力されるディジタル信号に対して、所定の圧縮処理を施すと共に、ブロック化を施すステップと、
所定の固定値を発生する固定値を発生させるステップと、
上記圧縮が施されたディジタル信号のブロックに対して、所定のタイミングで発生した上記固定値を付加するステップと、
付加された上記固定値および圧縮が施された上記ディジタル信号に対して暗号化を施すステップと、
暗号化が施された上記固定値および圧縮が施された上記ディジタル信号を記録媒体に記録するステップとを有し、
圧縮率によって、上記固定値を変化させる記録方法。
【請求項４】
入力されるディジタル信号に対して、所定の圧縮処理を施すと共に、ブロック化を施すステップと、
所定の固定値を発生する固定値を発生させるステップと、
上記圧縮が施されたディジタル信号のブロックに対して、所定のタイミングで発生した上記固定値を付加するステップと、
付加された上記固定値および圧縮が施された上記ディジタル信号に対して暗号化を施すステップと、
暗号化が施された上記固定値および圧縮が施された上記ディジタル信号を記録媒体に記録するステップとを有し、
上記ディジタル信号は、ディジタルオーディオ信号であって、チャンネルによって上記固定値を変化させる記録方法。
【請求項５】
ブロック化されたメインデータに所定タイミングで固定データが付加されたディジタル信号に対して、圧縮および暗号化が施され、記録された記録媒体を再生する再生装置において、
上記圧縮および暗号化が施されたディジタル信号に対して暗号化を解く暗号復調手段と、
上記暗号復調手段において、暗号化が解かれたディジタル信号から固定データと圧縮されたメインデータとを分離する分離手段と、
上記分離手段において、分離された圧縮された上記メインデータに対して伸張処理を施す復調手段と、
固定値を予め記憶しておくメモリ手段と、
上記分離手段から分離した上記固定データと、上記メモリ手段に記憶された上記固定値とを比較する比較手段と、
上記比較手段における比較結果に基づいて、上記復調手段での圧縮された上記メインデータに対して伸張処理を許可／不許可に制御する制御手段と
を備え、
上記メモリ手段には、チャンネル毎に変化する固定値を複数記録しておき、上記メモリ手段に記録された複数の固定値と、上記分離手段から分離した上記固定データとを順次比較し、チャンネルを特定する再生装置。
【請求項６】
ブロック化されたメインデータに所定タイミングで固定データが付加されたディジタル信号に対して、圧縮および暗号化が施され、記録された記録媒体を再生する再生装置において、
上記圧縮および暗号化が施されたディジタル信号に対して暗号化を解く暗号復調手段と、
上記暗号復調手段において、暗号化が解かれたディジタル信号から固定データと圧縮されたメインデータとを分離する分離手段と、
上記分離手段において、分離された圧縮された上記メインデータに対して伸張処理を施す復調手段と、
固定値を予め記憶しておくメモリ手段と、
上記分離手段から分離した上記固定データと、上記メモリ手段に記憶された上記固定値とを比較する比較手段と、
上記比較手段における比較結果に基づいて、上記復調手段での圧縮された上記メインデータに対して伸張処理を許可／不許可に制御する制御手段と
を備え、
上記メモリ手段には、圧縮率毎に変化する固定値を複数記録しておき、上記メモリ手段に記憶された複数の上記固定値と、上記分離手段から分離した上記固定データとを順次比較し、圧縮率を特定する再生装置。
【請求項７】
ブロック化されたメインデータに所定タイミングで固定データが付加されたディジタル信号に対して圧縮および暗号化が施され記録された記録媒体を再生する再生方法において、
上記圧縮および暗号化が施されたディジタル信号に対して暗号化を解くステップと、
暗号化が解かれた上記ディジタル信号から固定データと、圧縮されたメインデータとを分離するステップと、
分離された圧縮された上記メインデータに対して伸張処理を施すステップと、
分離した上記固定データと、予め記録された固定値とを比較するステップと、
上記比較結果に基づいて、圧縮されたメインデータに対して伸張処理を許可／不許可に制御するステップとを有し、
チャンネル毎に変化する固定値を予め複数記憶しておき、記憶された上記複数の固定値と、分離した上記固定データとを順次比較し、チャンネルを特定する再生方法。
【請求項８】
ブロック化されたメインデータに所定タイミングで固定データが付加されたディジタル信号に対して圧縮および暗号化が施され記録された記録媒体を再生する再生方法において、
上記圧縮および暗号化が施されたディジタル信号に対して暗号化を解くステップと、
暗号化が解かれた上記ディジタル信号から固定データと、圧縮されたメインデータとを分離するステップと、
分離された圧縮された上記メインデータに対して伸張処理を施すステップと、
分離した上記固定データと、予め記録された固定値とを比較するステップと、
上記比較結果に基づいて、圧縮されたメインデータに対して伸張処理を許可／不許可に制御するステップとを有し、
圧縮率毎に変化する固定値を複数記憶しておき、記憶された上記複数の固定値と、分離した上記固定データとを順次比較し、圧縮率を特定する再生方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、圧縮されたディジタル信号をブロック化すると共に、所定ブロック単位毎に固定値データを挿入して暗号化を施すことで、暗号化に対する復号処理時に埋め込んだ固定値データが完全に復号できたか否かに基づいて伸張処理を許可または不許可に制御する記録装置、記録方法、再生装置および再生方法に関する。
【０００２】
【従来の技術】
ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）と呼ばれる電気的に書き換え可能な不揮発性メモリは、１ビットを２個のトランジスタで構成するために、１ビット当たりの専有面積が大きく、集積度を高くするのに限界があった。この問題を解決するために、全ビット一括消去方式により１ビットを１トランジスタで実現することが可能なフラッシュメモリが開発された。フラッシュメモリは、磁気ディスク、光ディスク等の記録媒体に代わりうるものとして期待されている。
【０００３】
また、フラッシュメモリを機器に対して着脱自在に構成したメモリカードは、既に知られている。このメモリカードを使用すれば、従来のＣＤ（コンパクトディスク：登録商標）、ＭＤ（ミニディスク：登録商標）等のディスク状記録媒体に換えてメモリカードを使用するディジタルオーディオデータを記録／再生することができ、このメモリカードを使用するディジタルオーディオ記録／再生装置を実現することができる。
【０００４】
従来、パーソナルコンピュータで使用されるファイル管理システムは、ＦＡＴ(File Allocation Table) システムと呼ばれる。上述のＦＡＴシステムでは、必要なファイルが定義されると、その中に必要なパラメータがファイルの先頭から順番にセットされていた。その結果、ファイルのサイズが可変長で、１ファイルが１または複数の管理単位（セクタ、クラスタ等）で構成される。この管理単位の関連事項がＦＡＴと呼ばれるテーブルに書かれる。このＦＡＴシステムは、記録媒体の物理的特性と無関係に、ファイル構造を容易に構築することができる。従って、ＦＡＴシステムは、フロッピディスク、ハードディスクのみならず、光磁気ディスクでも採用することができる。上述したメモリカードにおいても、ＦＡＴシステムが採用されている。
【０００５】
【発明が解決しようとする課題】
ここで、最近特に音楽のディジタル録音のコピーに関しての著作権の主張は厳しくなる一方である。これに反してパーソナルコンピュータの技術を応用すると限りなく容易に音楽のディジタル録音のコピーを作ることができる。そこで、次世代の音楽のディジタル録音のオーディオデータは、コピーが容易に出来ることを前提に、そのオーディオデータが例えコピーされても容易には再生出来ないようオーディオデータに対しても暗号化を施すことが提案されている。
【０００６】
この暗号化が行われると、生成されるデータが乱数のような状態になるので、レコーダ内部で何かの原因で再生出力が異常となるような状態になっても、その異常を検出することがかなり難しくなる問題があった。若し、再生出力の異常を検出できない場合、クリック音などの刺激音でイヤホンを通して耳を傷めたり、スピーカを損傷する可能性がある。
【０００７】
従って、この発明の目的は、オーディオデータに対して暗号化を施している場合でも、異常な再生出力が生じることを防止できる記録装置、記録方法、再生装置および再生方法を提供することにある。
【０００８】
【課題を解決するための手段】
請求項１記載の発明は、入力されるディジタル信号に対して、所定の圧縮処理を施すと共に、ブロック化を施す圧縮処理手段と、
所定の固定値を発生する固定値発生手段と、
圧縮処理手段において、圧縮が施されたディジタル信号のブロックに対して、所定のタイミングで固定値発生手段において発生した固定値を付加する付加手段と、
付加手段において、付加された固定値および圧縮が施されたディジタル信号に対して暗号化を施す暗号化手段と、
暗号化手段において、暗号化が施された固定値および圧縮が施されたディジタル信号を記録媒体に記録する記録手段と
を備え、
圧縮率によって、固定値発生手段において発生する固定値を変化させる記録装置である。
請求項２記載の発明は、入力されるディジタル信号に対して、所定の圧縮処理を施すと共に、ブロック化を施す圧縮処理手段と、
所定の固定値を発生する固定値発生手段と、
圧縮処理手段において、圧縮が施されたディジタル信号のブロックに対して、所定のタイミングで固定値発生手段において発生した固定値を付加する付加手段と、
付加手段において、付加された固定値および圧縮が施されたディジタル信号に対して暗号化を施す暗号化手段と、
暗号化手段において、暗号化が施された固定値および圧縮が施されたディジタル信号を記録媒体に記録する記録手段と
を備え、
ディジタル信号は、ディジタルオーディオ信号であって、チャンネルによって固定値発生手段において発生する固定値を変化させる記録装置である。
請求項３記載の発明は、入力されるディジタル信号に対して、所定の圧縮処理を施すと共に、ブロック化を施すステップと、
所定の固定値を発生する固定値を発生させるステップと、
圧縮が施されたディジタル信号のブロックに対して、所定のタイミングで発生した固定値を付加するステップと、
付加された固定値および圧縮が施されたディジタル信号に対して暗号化を施すステップと、
暗号化が施された固定値および圧縮が施されたディジタル信号を記録媒体に記録するステップとを有し、
圧縮率によって、固定値を変化させる記録方法である。
請求項４記載の発明は、入力されるディジタル信号に対して、所定の圧縮処理を施すと共に、ブロック化を施すステップと、
所定の固定値を発生する固定値を発生させるステップと、
圧縮が施されたディジタル信号のブロックに対して、所定のタイミングで発生した固定値を付加するステップと、
付加された固定値および圧縮が施されたディジタル信号に対して暗号化を施すステップと、
暗号化が施された固定値および圧縮が施されたディジタル信号を記録媒体に記録するステップとを有し、
ディジタル信号は、ディジタルオーディオ信号であって、チャンネルによって固定値を変化させる記録方法である。
【０００９】
請求項５記載の発明は、ブロック化されたメインデータに所定タイミングで固定データが付加されたディジタル信号に対して、圧縮および暗号化が施され、記録された記録媒体を再生する再生装置において、
圧縮および暗号化が施されたディジタル信号に対して暗号化を解く暗号復調手段と、
暗号復調手段において、暗号化が解かれたディジタル信号から固定データと圧縮されたメインデータとを分離する分離手段と、
分離手段において、分離された圧縮されたメインデータに対して伸張処理を施す復調手段と、
固定値を予め記憶しておくメモリ手段と、
分離手段から分離した固定データと、メモリ手段に記憶された固定値とを比較する比較手段と、
比較手段における比較結果に基づいて、復調手段での圧縮されたメインデータに対して伸張処理を許可／不許可に制御する制御手段と
を備え、
メモリ手段には、チャンネル毎に変化する固定値を複数記録しておき、メモリ手段に記録された複数の固定値と、分離手段から分離した固定データとを順次比較し、チャンネルを特定する再生装置である。
請求項６記載の発明は、ブロック化されたメインデータに所定タイミングで固定データが付加されたディジタル信号に対して、圧縮および暗号化が施され、記録された記録媒体を再生する再生装置において、
圧縮および暗号化が施されたディジタル信号に対して暗号化を解く暗号復調手段と、
暗号復調手段において、暗号化が解かれたディジタル信号から固定データと圧縮されたメインデータとを分離する分離手段と、
分離手段において、分離された圧縮されたメインデータに対して伸張処理を施す復調手段と、
固定値を予め記憶しておくメモリ手段と、
分離手段から分離した固定データと、メモリ手段に記憶された固定値とを比較する比較手段と、
比較手段における比較結果に基づいて、復調手段での圧縮されたメインデータに対して伸張処理を許可／不許可に制御する制御手段と
を備え、
メモリ手段には、圧縮率毎に変化する固定値を複数記録しておき、メモリ手段に記憶された複数の固定値と、分離手段から分離した固定データとを順次比較し、圧縮率を特定する再生装置である。
請求項７記載の発明は、ブロック化されたメインデータに所定タイミングで固定データが付加されたディジタル信号に対して圧縮および暗号化が施され記録された記録媒体を再生する再生方法において、
圧縮および暗号化が施されたディジタル信号に対して暗号化を解くステップと、
暗号化が解かれたディジタル信号から固定データと、圧縮されたメインデータとを分離するステップと、
分離された圧縮されたメインデータに対して伸張処理を施すステップと、
分離した固定データと、予め記録された固定値とを比較するステップと、
比較結果に基づいて、圧縮されたメインデータに対して伸張処理を許可／不許可に制御するステップとを有し、
チャンネル毎に変化する固定値を予め複数記憶しておき、記憶された複数の固定値と、分離した固定データとを順次比較し、チャンネルを特定する再生方法である。
請求項８記載の発明は、ブロック化されたメインデータに所定タイミングで固定データが付加されたディジタル信号に対して圧縮および暗号化が施され記録された記録媒体を再生する再生方法において、
圧縮および暗号化が施されたディジタル信号に対して暗号化を解くステップと、
暗号化が解かれたディジタル信号から固定データと、圧縮されたメインデータとを分離するステップと、
分離された圧縮されたメインデータに対して伸張処理を施すステップと、
分離した固定データと、予め記録された固定値とを比較するステップと、
比較結果に基づいて、圧縮されたメインデータに対して伸張処理を許可／不許可に制御するステップとを有し、
圧縮率毎に変化する固定値を複数記憶しておき、記憶された複数の固定値と、分離した固定データとを順次比較し、圧縮率を特定する再生方法である。
【００１０】
この発明では、着脱可能な不揮発性メモリの消去単位である１ブロックにヘッダと整数個のサウンドユニットＳＵとが設定される。ブロックの先頭のサウンドユニットＳＵの先頭の１バイトが読み出される。その１バイトの上位６ビットと、所定のコード（固定値）とが比較され、一致していれば、そのデータの再生出力には異常がないと判定し、一致していなければ、そのデータの再生出力は異常であると判定する。再生出力が異常であると判定された場合、再生時は、すぐに再生音にミュートがかけられ、録音時は警告するか、システムにリセットをかけて再生出力の異常が解決するか様子をみる。
【００１１】
【発明の実施の形態】
以下、この発明の一実施形態について説明する。第１図は、この発明の一実施形態におけるメモリカードを使用したディジタルオーディオレコーダ／プレーヤの全体の構成を示す。この一実施形態は、記録媒体として、着脱自在のメモリカードを使用するディジタルオーディオ信号の記録および再生機である。より具体的には、このレコーダ／プレーヤは、アンプ装置、スピーカ、ＣＤプレーヤ、ＭＤレコーダ、チューナ等と共にオーディオシステムを構成する。この発明は、これ以外のオーディオレコーダに対しても適用できる。すなわち、携帯型記録再生装置に対しても適用できる。また、衛星を使用したデータ通信、ディジタル放送、インターネット等を経由して配信されるディジタルオーディオ信号を記録するセットトップボックスに対しても適用できる。さらに、ディジタルオーディオ信号以外に動画データ、静止画データ等の記録／再生に対してもこの発明を適用できる。一実施形態においても、ディジタルオーディオ信号以外の画像、文字等の付加情報を記録／再生可能としている。
【００１２】
記録再生装置は、それぞれ１チップＩＣで構成されたオーディオエンコーダ／デコーダＩＣ１０、セキュリティＩＣ２０、ＤＳＰ(Digital Signal Processor)３０を有する。さらに、記録再生装置本体に対して着脱自在のメモリカード４０を備える。メモリカード４０は、フラッシュメモリ（不揮発性メモリ）、メモリコントロールブロック、ＤＥＳ(Data Encryption Standard)の暗号化回路を含むセキュリティブロックが１チップ上にＩＣ化されたものである。なお、この一実施形態では、ＤＳＰ３０を使用しているが、マイクロコンピュータを使用しても良い。
【００１３】
オーディオエンコーダ／デコーダＩＣ１０は、オーディオインタフェース１１およびエンコーダ／デコーダブロック１２を有する。エンコーダ／デコーダブロック１２は、ディジタルオーディオ信号をメモリカード４０に書き込むために高能率符号化し、また、メモリカード４０から読み出されたデータを復号する。高能率符号化方法としては、ミニディスクで採用されているＡＴＲＡＣ(Adaptive Transform Acoustic Coding)を改良したＡＴＲＡＣ３が使用される。
【００１４】
上述のＡＴＲＡＣ３では、サンプリング周波数＝４４．１ｋHzでサンプリングした量子化ビットが１６ビットのオーディオデータを高能率符号化処理する。ＡＴＲＡＣ３でオーディオデータを処理する時の最小のデータ単位がサウンドユニットＳＵである。１ＳＵは、１０２４サンプル分（１０２４×１６ビット×２チャンネル）を数百バイトに圧縮したものであり、時間にして約２３ｍ秒である。上述の高能率符号化処理により約１／１０にオーディオデータが圧縮される。ミニディスクで適用されたＡＴＲＡＣ１と同様に、ＡＴＲＡＣ３方式において、信号処理されたオーディオ信号の圧縮／伸長処理による音質の劣化は少ない。
【００１５】
ライン入力セレクタ１３は、ＭＤの再生出力、チューナの出力、テープ再生出力を選択的にＡ／Ｄ変換器１４に供給する。Ａ／Ｄ変換器１４は、入力されるライン入力信号をサンプリング周波数＝４４．１ｋHz、量子化ビット＝１６ビットのディジタルオーディオ信号へ変換する。ディジタル入力セレクタ１６は、ＭＤ、ＣＤ、ＣＳ（衛星ディジタル放送）のディジタル出力を選択的にディジタル入力レシーバ１７に供給する。上述のディジタル入力は、例えば光ケーブルを介して伝送される。ディジタル入力レシーバ１７の出力がサンプリングレートコンバータ１５に供給され、ディジタル入力のサンプリング周波数が４４．１ｋHz、量子化ビットが１６ビットのディジタルオーディオ信号に変換される。
【００１６】
オーディオエンコーダ／デコーダＩＣ１０のエンコーダ／デコーダブロック１２からの符号化データがセキュリティＩＣ２０のインタフェース２１を介してＤＥＳの暗号化回路２２に供給される。ＤＥＳの暗号化回路２２は、ＦＩＦＯ２３を有している。ＤＥＳの暗号化回路２２は、コンテンツの著作権を保護するために備えられている。メモリカード４０にも、ＤＥＳの暗号化回路が組み込まれている。記録再生装置のＤＥＳの暗号化回路２２は、複数のマスターキーと機器毎にユニークなストレージキーを持つ。さらに、ＤＥＳの暗号化回路２２は、乱数発生回路を持ち、ＤＥＳの暗号化回路を内蔵するメモリカードと認証およびセッションキーを共有することができる。よりさらに、ＤＥＳの暗号化回路２２は、ＤＥＳの暗号化回路を通してストレージキーでキーをかけなおすことができる。
【００１７】
ＤＥＳの暗号化回路２２からの暗号化されたオーディオデータがＤＳＰ(Digital Signal Processor)３０に供給される。ＤＳＰ３０は、着脱機構（図示しない）に装着されたメモリカード４０とメモリインタフェースを介しての通信を行い、暗号化されたデータをフラッシュメモリに書き込む。ＤＳＰ３０とメモリカード４０との間では、シリアル通信がなされる。また、メモリカードの制御に必要なメモリ容量を確保するために、ＤＳＰ３０に対して外付けのＳＲＡＭ(Static Random Access Memory) ３１が接続される。
【００１８】
さらに、ＤＳＰ３０に対して、バスインタフェース３２が接続され、図示しない外部のコントローラからのデータがバス３３を介してＤＳＰ３０に供給される。外部のコントローラは、オーディオシステム全体の動作を制御し、操作部からのユーザの操作に応じて発生した録音指令、再生指令等のデータをＤＳＰ３０にバスインタフェース３２を介して与える。また、画像情報、文字情報等の付加情報のデータもバスインタフェース３２を介してＤＳＰ３０に供給される。バス３３は、双方向通信路であり、メモリカード４０から読み出された付加情報データ、制御信号等がＤＳＰ３０、バスインターフェース３２、バス３３を介して外部のコントローラに取り込まれる。外部のコントローラは、具体的には、オーディオシステム内に含まれる他の機器例えばアンプ装置に含まれている。さらに、外部のコントローラによって、付加情報の表示、レコーダの動作状態等を表示するための表示が制御される。表示部は、オーディオシステム全体で共用される。ここで、バス３３を介して送受信されるデータは、著作物ではないので、暗号化がされない。
【００１９】
ＤＳＰ３０によってメモリカード４０から読み出した暗号化されたオーディオデータは、セキュリティＩＣ２０によって復号化され、オーディオエンコーダ／デコーダＩＣ１０によってＡＴＲＡＣ３の復号化処理を受ける。オーディオエンコーダ／デコーダ１０の出力がＤ／Ａ変換器１８に供給され、アナログオーディオ信号へ変換される。そして、アナログオーディオ信号がライン出力端子１９に取り出される。
【００２０】
ライン出力は、図示しないアンプ装置に伝送され、スピーカまたはヘッドホンにより再生される。Ｄ／Ａ変換器１８に対してミューティング信号が外部のコントローラから供給される。ミューティング信号がミューティングのオンを示す時には、ライン出力端子１９からのオーディオ出力が禁止される。
【００２１】
第２図は、ＤＳＰ３０の内部構成を示す。ＤＳＰ３０は、Ｃｏｒｅ３４と、フラッシュメモリ３５と、ＳＲＡＭ３６と、バスインタフェース３７と、メモリカードインタフェース３８と、バスおよびバス間のブリッジとで構成される。ＤＳＰ３０は、マイクロコンピュータと同様な機能を有し、Ｃｏｒｅ３４がＣＰＵに相当する。フラッシュメモリ３５にＤＳＰ３０の処理のためのプログラムが格納されている。ＳＲＡＭ３６と外部のＳＲＡＭ３１とがＲＡＭとして使用される。
【００２２】
ＤＳＰ３０は、バスインタフェース３２、３７を介して受け取った録音指令等の操作信号に応答して、所定の暗号化されたオーディオデータ、所定の付加情報データをメモリカード４０に対して書き込み、また、これらのデータをメモリカード４０から読み出す処理を制御する。すなわち、オーディオデータ、付加情報の記録／再生を行うためのオーディオシステム全体のアプリケーションソフトウェアと、メモリカード４０との間にＤＳＰ３０が位置し、メモリカード４０のアクセス、ファイルシステム等のソフトウェアによってＤＳＰ３０が動作する。
【００２３】
ＤＳＰ３０におけるメモリカード４０上のファイル管理は、既存のパーソナルコンピュータで使用されているＦＡＴシステムが使用される。このファイルシステムに加えて、一実施形態では、後述するようなデータ構成の管理ファイルが使用される。管理ファイルは、メモリカード４０上に記録されているデータファイルを管理する。第１のファイル管理情報としての管理ファイルは、オーディオデータのファイルを管理するものである。第２のファイル管理情報としてのＦＡＴは、オーディオデータのファイルと管理ファイルを含むメモリカード４０のフラッシュメモリ上のファイル全体を管理する。管理ファイルは、メモリカード４０に記録される。また、ＦＡＴは、ルートディレクトリ等と共に、予め出荷時にフラッシュメモリ上に書き込まれている。ＦＡＴの詳細に関しては後述する。
【００２４】
なお、一実施形態では、著作権を保護するために、ＡＴＲＡＣ３により圧縮されたオーディオデータを暗号化している。一方、管理ファイルは、著作権保護が必要ないとして、暗号化を行わないようにしている。また、メモリカードとしても、暗号化機能を持つものと、これを持たないものとがありうる。一実施形態のように、著作物であるオーディオデータを記録するレコーダが対応しているメモリカードは、暗号化機能を持つメモリカードのみである。上述の暗号化機能を有さないメモリカードには、個人が録音したＶｏｉｃｅまたは録画した画像が記録される。
【００２５】
第３図は、メモリカード４０の構成を示す。メモリカード４０は、コントロールブロック４１とフラッシュメモリ４２が１チップＩＣとして構成されたものである。プレーヤ／レコーダのＤＳＰ３０とメモリカード４０との間の双方向シリアルインタフェースは、１０本の線からなる。主要な４本の線は、データ伝送時にクロックを伝送するためのクロック線ＳＣＫと、ステータスを伝送するためのステータス線ＳＢＳと、データを伝送するデータ線ＤＩＯ、インターラプト線ＩＮＴとである。その他に電源供給用線として、２本のＧＮＤ線および２本のＶＣＣ線が設けられる。２本の線Ｒｅｓｅｒｖは、未定義の線である。
【００２６】
クロック線ＳＣＫは、データに同期したクロックを伝送するための線である。ステータス線ＳＢＳは、メモリカード４０のステータスを表す信号を伝送するための線である。データ線ＤＩＯは、コマンドおよび暗号化されたオーディオデータを入出力するための線である。インターラプト線ＩＮＴは、メモリカード４０からプレーヤ／レコーダのＤＳＰ３０に対しての割り込みを要求するインターラプト信号を伝送する線である。メモリカード４０を装着した時にインターラプト信号が発生する。但し、この一実施形態では、インターラプト信号をデータ線ＤＩＯを介して伝送するようにしているので、インターラプト線ＩＮＴを接地している。
【００２７】
コントロールブロック４１のシリアル／パラレル変換・パラレル／シリアル変換・インタフェースブロック（以下、Ｓ／Ｐ・Ｐ／Ｓ・ＩＦブロックと略す）４３は、上述した複数の線を介して接続されたレコーダのＤＳＰ３０とコントロールブロック４１とのインタフェースである。Ｓ／Ｐ・Ｐ／Ｓ・ＩＦブロック４３は、プレーヤ／レコーダのＤＳＰ３０から受け取ったシリアルデータをパラレルデータに変換し、コントロールブロック４１に取り込み、コントロールブロック４１からのパラレルデータをシリアルデータに変換してプレーヤ／レコーダのＤＳＰ３０に送る。また、Ｓ／Ｐ・Ｐ／Ｓ・ＩＦブロック４３は、データ線ＤＩＯを介して伝送されるコマンドおよびデータを受け取った時に、フラッシュメモリ４２に対する通常のアクセスのためのコマンドおよびデータと、暗号化に必要なコマンドおよびデータとを分離する。
【００２８】
データ線ＤＩＯを介して伝送されるフォーマットでは、最初にコマンドが伝送され、その後にデータが伝送される。Ｓ／Ｐ・Ｐ／Ｓ・ＩＦブロック４３は、コマンドのコードを検出して、通常のアクセスに必要なコマンドおよびデータか、暗号化に必要なコマンドおよびデータかを判別する。この判別結果に従って、通常のアクセスに必要なコマンドをコマンドレジスタ４４に格納し、データをページバッファ４５およびライトレジスタ４６に格納する。ライトレジスタ４６と関連してエラー訂正符号化回路４７が設けられている。ページバッファ４５に一時的に蓄えられたデータに対して、エラー訂正符号化回路４７がエラー訂正符号の冗長コードを生成する。
【００２９】
コマンドレジスタ４４、ページバッファ４５、ライトレジスタ４６およびエラー訂正符号化回路４７の出力データがフラッシュメモリインタフェースおよびシーケンサ（以下、メモリＩ／Ｆ・シーケンサと略す）５１に供給される。メモリＩＦ・シーケンサ５１は、コントロールブロック４１とフラッシュメモリ４２とのインタフェースであり、両者の間のデータのやり取りを制御する。メモリＩＦ・シーケンサ５１を介してデータがフラッシュメモリ４２に書き込まれる。
【００３０】
フラッシュメモリ４２に書き込まれるＡＴＲＡＣ３により圧縮されたオーディオデータ（以下、ＡＴＲＡＣ３データと表記する）は、著作権保護のために、プレーヤ／レコーダのセキュリティＩＣ２０とメモリカード４０のセキュリティブロック５２とによって、暗号化されたものである。セキュリティブロック５２は、バッファメモリ５３と、ＤＥＳの暗号化回路５４と、不揮発性メモリ５５とを有する。
【００３１】
メモリカード４０のセキュリティブロック５２は、複数の認証キーとメモリカード毎にユニークなストレージキーを持つ。不揮発性メモリ５５は、暗号化に必要なキーを格納するもので、チップ解析を行っても解析不能な構造となっている。この実施形態では、例えばストレージキーが不揮発性メモリ５５に格納される。さらに、乱数発生回路を持ち、対応可能なプレーヤ／レコーダと認証ができ、セッションキーを共有できる。ＤＥＳの暗号化回路５４を通して、コンテンツキーをストレージキーでキーのかけ直しを行う。
【００３２】
例えばメモリカード４０をプレーヤ／レコーダに装着した時に相互に認証がなされる。認証は、プレーヤ／レコーダのセキュリティＩＣ２０とメモリカード４０のセキュリティブロック５２によって行わせる。プレーヤ／レコーダは、装着されたメモリカード４０が対応可能なメモリカードであることを認証し、また、メモリカード４０が相手のプレーヤ／レコーダが対応可能なプレーヤ／レコーダであることを認証すると、相互認証処理が正常に行われたことを意味する。認証が行われると、プレーヤ／レコーダとメモリカード４０がそれぞれセッションキーを生成し、セッションキーを共有する。セッションキーは、認証の度に生成される。
【００３３】
メモリカード４０に対するコンテンツの書き込み時には、プレーヤ／レコーダがセッションキーでコンテンツキーを暗号化してメモリカード４０に渡す。メモリカード４０では、コンテンツキーをセッションキーで復号し、ストレージキーで暗号化してプレーヤ／レコーダに渡す。ストレージキーは、メモリカード４０の一つ一つにユニークなキーであり、プレーヤ／レコーダは、暗号化されたコンテンツキーを受け取ると、フォーマット処理を行い、暗号化されたコンテンツキーと暗号化されたコンテンツをメモリカード４０に書き込む。
【００３４】
以上、メモリカード４０に対する書き込み処理について説明したが、以下メモリカード４０からの読み出し処理について説明する。フラッシュメモリ４２から読み出されたデータがメモリＩＦ・シーケンサ５１を介してページバッファ４５、リードレジスタ４８、エラー訂正回路４９に供給される。ページバッファ４５に記憶されたデータがエラー訂正回路４９によってエラー訂正がなされる。エラー訂正がされたページバッファ４５の出力およびリードレジスタ４８の出力がＳ／Ｐ・Ｐ／Ｓ・ＩＦブロック４３に供給され、上述したシリアルインタフェースを介してプレーヤ／レコーダのＤＳＰ３０に供給される。
【００３５】
読み出し時には、ストレージキーで暗号化されたコンテンツキーとブロックキーで暗号化されたコンテンツとがフラッシュメモリ４２から読み出される。セキュリティブロック５２によって、ストレージキーでコンテンツキーが復号される。復号したコンテンツキーがセッションキーで再暗号化されてプレーヤ／レコーダ側に送信される。プレーヤ／レコーダは、受信したセッションキーでコンテンツキーを復号する。プレーヤ／レコーダは、復号したコンテンツキーでブロックキーを生成する。このブロックキーによって、暗号化されたＡＴＲＡＣ３データを順次復号する。
【００３６】
なお、ConfigＲＯＭ５０は、メモリカード４０のバージョン情報、各種の属性情報等が格納されているメモリである。また、メモリカード４０には、ユーザが必要に応じて操作可能な誤消去防止用のスイッチ６０が備えられている。このスイッチ６０が消去禁止の接続状態にある場合には、フラッシュメモリ４２を消去することを指示するコマンドがレコーダ側から送られてきても、フラッシュメモリ４２の消去が禁止される。さらに、ＯＳＣ Cont.６１は、メモリカード４０の処理のタイミング基準となるクロックを発生する発振器である。
【００３７】
第４図は、メモリカードを記憶媒体とするコンピュータシステムのファイルシステム処理階層を示す。ファイルシステム処理階層としては、アプリケーション処理層が最上位であり、その下に、ファイル管理処理層、論理アドレス管理層、物理アドレス管理層、フラッシュメモリアクセスが順次積層される。上述の階層構造において、ファイル管理処理層がＦＡＴシステムである。物理アドレスは、フラッシュメモリの各ブロックに対して付されたもので、ブロックと物理アドレスの対応関係は、不変である。論理アドレスは、ファイル管理処理層が論理的に扱うアドレスである。
【００３８】
第５図は、メモリカード４０におけるフラッシュメモリ４２のデータの物理的構成の一例を示す。フラッシュメモリ４２は、セグメントと称されるデータ単位が所定数のブロック（固定長）へ分割され、１ブロックが所定数のページ（固定長）へ分割される。フラッシュメモリ４２では、ブロック単位で消去が一括して行われ、書き込みと読み出しは、ページ単位で一括して行われる。各ブロックおよび各ページは、それぞれ同一のサイズとされ、１ブロックがページ０からページｍで構成される。１ブロックは、例えば８ＫＢ（Ｋバイト）バイトまたは１６ＫＢの容量とされ、１ページが５１２Ｂの容量とされる。フラッシュメモリ４２全体では、１ブロック＝８ＫＢの場合で、４ＭＢ（５１２ブロック）、８ＭＢ（１０２４ブロック）とされ、１ブロック＝１６ＫＢの場合で、１６ＭＢ（１０２４ブロック）、３２ＭＢ（２０４８ブロック）、６４ＭＢ（４０９６ブロック）の容量とされる。
【００３９】
１ページは、５１２バイトのデータ部と１６バイトの冗長部とからなる。冗長部の先頭の３バイトは、データの更新に応じて書き換えられるオーバーライト部分とされる。３バイトの各バイトに、先頭から順にブロックステータス、ページステータス、更新ステータスが記録される。冗長部の残りの１３バイトの内容は、原則的にデータ部の内容に応じて固定とされる。１３バイトは、管理フラグ（１バイト）、論理アドレス（２バイト）、フォーマットリザーブの領域（５バイト）、分散情報ＥＣＣ（２バイト）およびデータＥＣＣ（３バイト）からなる。分散情報ＥＣＣは、管理フラグ、論理アドレス、フォーマットリザーブに対する誤り訂正用の冗長データであり、データＥＣＣは、５１２バイトのデータに対する誤り訂正用の冗長データである。
【００４０】
管理フラグとして、システムフラグ（その値が１：ユーザブロック、０：ブートブロック）、変換テーブルフラグ（１：無効、０：テーブルブロック）、コピー禁止指定（１：ＯＫ、０：ＮＧ）、アクセス許可（１：ｆｒｅｅ、０：リードプロテクト）の各フラグが記録される。
【００４１】
先頭の二つのブロック０およびブロック１がブートブロックである。ブロック１は、ブロック０と同一のデータが書かれるバックアップ用である。ブートブロックは、カード内の有効なブロックの先頭ブロックであり、メモリカードを機器に装填した時に最初にアクセスされるブロックである。残りのブロックがユーザブロックである。ブートブロックの先頭のページ０にヘッダ、システムエントリ、ブート＆アトリビュート情報が格納される。ページ１に使用禁止ブロックデータが格納される。ページ２にＣＩＳ(Card Information Structure)／ＩＤＩ(Identify Drive Information)が格納される。
【００４２】
ブートブロックのヘッダは、ブートブロックＩＤ、ブートブロック内の有効なエントリ数が記録される。システムエントリには、使用禁止ブロックデータの開始位置、そのデータサイズ、データ種別、ＣＩＳ／ＩＤＩのデータ開始位置、そのデータサイズ、データ種別が記録される。ブート＆アトリビュート情報には、メモリカードのタイプ（読み出し専用、リードおよびライト可能、両タイプのハイブリッド等）、ブロックサイズ、ブロック数、総ブロック数、セキュリティ対応か否か、カードの製造に関連したデータ（製造年月日等）等が記録される。
【００４３】
フラッシュメモリは、データの書き換えを行うことにより絶縁膜の劣化を生じ、書き換え回数が制限される。従って、ある同一の記憶領域（ブロック）に対して繰り返し集中的にアクセスがなされることを防止する必要がある。従って、ある物理アドレスに格納されているある論理アドレスのデータを書き換える場合、フラッシュメモリのファイルシステムでは、同一のブロックに対して更新したデータを再度書き込むことはせずに、未使用のブロックに対して更新したデータを書き込むようになされる。その結果、データ更新前における論理アドレスと物理アドレスの対応関係が更新後では、変化する。スワップ処理を行うことで、同一のブロックに対して繰り返して集中的にアクセスがされることが防止され、フラッシュメモリの寿命を延ばすことが可能となる。
【００４４】
論理アドレスは、一旦ブロックに対して書き込まれたデータに付随するので、更新前のデータと更新後のデータの書き込まれるブロックが移動しても、ＦＡＴからは、同一のアドレスが見えることになり、以降のアクセスを適正に行うことができる。スワップ処理により論理アドレスと物理アドレスとの対応関係が変化するので、両者の対応を示す論理−物理アドレス変換テーブルが必要となる。このテーブルを参照することによって、ＦＡＴが指定した論理アドレスに対応する物理アドレスが特定され、特定された物理アドレスが示すブロックに対するアクセスが可能となる。
【００４５】
論理−物理アドレス変換テーブルは、ＤＳＰ３０によってＳＲＡＭ上に格納される。若し、ＲＡＭ容量が少ない時は、フラッシュメモリ中に格納することができる。このテーブルは、概略的には、昇順に並べた論理アドレス（２バイト）に物理アドレス（２バイト）をそれぞれ対応させたテーブルである。フラッシュメモリの最大容量を１２８ＭＢ（８１９２ブロック）としているので、２バイトによって８１９２のアドレスを表すことができる。また、論理−物理アドレス変換テーブルは、セグメント毎に管理され、そのサイズは、フラッシュメモリの容量に応じて大きくなる。例えばフラッシュメモリの容量が８ＭＢ（２セグメント）の場合では、２個のセグメントのそれぞれに対して２ページが論理−物理アドレス変換テーブル用に使用される。論理−物理アドレス変換テーブルを、フラッシュメモリ中に格納する時には、上述した各ページの冗長部における管理フラグの所定の１ビットによって、当該ブロックが論理−物理アドレス変換テーブルが格納されているブロックか否かが指示される。
【００４６】
上述したメモリカードは、ディスク状記録媒体と同様にパーソナルコンピュータのＦＡＴシステムによって使用可能なものである。第５図には示されてないが、フラッシュメモリ上にＩＰＬ領域、ＦＡＴ領域およびルート・ディレクトリ領域が設けられる。ＩＰＬ領域には、最初にレコーダのメモリにロードすべきプログラムが書かれているアドレス、並びにメモリの各種情報が書かれている。ＦＡＴ領域には、ブロック（クラスタ）の関連事項が書かれている。ＦＡＴには、未使用のブロック、次のブロック番号、不良ブロック、最後のブロックをそれぞれ示す値が規定される。さらに、ルートディレクトリ領域には、ディレクトリエントリ（ファイル属性、更新年月日、開始クラスタ、ファイルサイズ等）が書かれている。
【００４７】
第６図にＦＡＴ管理による管理方法を説明する。この第６図は、メモリ内の模式図を示しており、上からパーティションテーブル部、空き領域、ブートセクタ、ＦＡＴ領域、ＦＡＴのコピー領域、Ｒｏｏｔ  Ｄｉｒｅｃｔｏｒｙ領域、Ｓｕｂ  Ｄｉｒｅｃｔｏｒｙ領域、データ領域が積層されている。なお、メモリマップは、論理−物理アドレス変換テーブルに基づいて、論理アドレスから物理アドレスへ変換した後のメモリマップである。
【００４８】
上述したブートセクタ、ＦＡＴ領域、ＦＡＴのコピー領域、Ｒｏｏｔ  Ｄｉｒｅｃｔｏｒｙ領域、Ｓｕｂ  Ｄｉｒｅｃｔｏｒｙ領域、データ領域を全部まとめてＦＡＴパーティション領域と称する。
【００４９】
上述のパーティションテーブル部には、ＦＡＴパーティション領域の始めと終わりのアドレスが記録されている。通常フロッピーディスクで使用されているＦＡＴには、パーティションテーブル部は備えられていない。最初のトラックには、パーティションテーブル以外のものは置かないために空きエリアができてしまう。
【００５０】
次に、ブートセクタには、１２ビットＦＡＴおよび１６ビットＦＡＴの何れかであるかでＦＡＴ構造の大きさ、クラスタサイズ、それぞれの領域のサイズが記録されている。ＦＡＴは、データ領域に記録されているファイル位置を管理するものである。ＦＡＴのコピー領域は、ＦＡＴのバックアップ用の領域である。ルートディレクトリ部は、ファイル名、先頭クラスタアドレス、各種属性が記録されており、１ファイルにつき３２バイト使用する。
【００５１】
サブディレクトリ部は、ディレクトリというファイルの属性のファイルとして存在しており、第６図の実施形態ではＰＢＬＩＳＴ．ＭＳＦ、ＣＡＴ．ＭＳＡ、ＤＯＧ．ＭＳＡ、ＭＡＮ. ＭＳＡという４つのファイルが存在する。このサブディレクトリ部には、ファイル名とＦＡＴ上の記録位置が管理されている。すなわち、第６図においては、ＣＡＴ．ＭＳＡというファイル名が記録されているスロットには「５」というＦＡＴ上のアドレスが管理されており、ＤＯＧ．ＭＳＡというファイル名が記録されているスロットには「１０」というＦＡＴ上のアドレスが管理されている。
【００５２】
クラスタ２以降が実際のデータ領域で、このデータ領域にこの実施形態では、ＡＴＲＡＣ３で圧縮処理されたオーディオデータが記録される。さらに、ＭＡＮ. ＭＳＡというファイル名が記録されているスロットには「１１０」というＦＡＴ上のアドレスが管理されている。
【００５３】
この発明の実施形態では、クラスタ５、６、７および８にＣＡＴ．ＭＳＡというファイル名のＡＴＲＡＣ３で圧縮処理されたオーディオデータが記録され、クラスタ１０、１１および、１２にＤＯＧ．ＭＳＡというファイル名の前半パートであるＤＯＧ−１がＡＴＲＡＣ３で圧縮処理されたオーディオデータが記録され、クラスタ１００および１０１にＤＯＧ．ＭＳＡというファイル名の後半パートであるＤＯＧ−２がＡＴＲＡＣ３で圧縮処理されたオーディオデータが記録されている。さらに、クラスタ１１０および１１１にＭＡＮ．ＭＳＡというファイル名のＡＴＲＡＣ３で圧縮処理されたオーディオデータが記録されている。
【００５４】
この実施形態においては、単一のファイルが２分割されて離散的に記録されている例を示している。また、データ領域上のＥｍｐｔｙとかかれた領域は記録可能領域である。
【００５５】
クラスタ２００以降は、ファイルネームを管理する領域であり、クラスタ２００には、ＣＡＴ．ＭＳＡというファイルが、クラスタ２０１には、ＤＯＧ．ＭＳＡというファイルが、クラスタ２０２にはＭＡＮ．ＭＳＡというファイルが記録されている。ファイル順を並び替える場合には、このクラスタ２００以降で並び替えを行えばよい。
【００５６】
この実施形態のメモリカードが初めて挿入された場合には、先頭のパーティションテーブル部を参照してＦＡＴパーティション領域の始めと終わりのアドレスが記録されている。ブートセクタ部の再生を行った後にＲｏｏｔ  Ｄｉｒｅｃｔｏｒｙ、Ｓｕｂ  Ｄｉｒｅｃｔｏｒｙ部の再生を行う。そして、Ｓｕｂ  Ｄｉｒｅｃｔｏｒｙ部に記録されている再生管理情報ＰＢＬＩＳＴ．ＭＳＦが記録されているスロットを検索して、ＰＢＬＩＳＴ．ＭＳＦが記録されているスロットの終端部のアドレスを参照する。
【００５７】
この実施形態の場合には、ＰＢＬＩＳＴ．ＭＳＦが記録されているスロットの終端部には「２００」というアドレスが記録されているのでクラスタ２００を参照する。クラスタ２００以降は、ファイル名を管理すると共に、ファイルの再生順を管理する領域であり、この実施形態の場合には、ＣＡＴ. ＭＳＡというファイルが１曲目となり、ＤＯＧ．ＭＳＡというファイルが２曲目となり、ＭＡＮ．ＭＳＡというファイルが３曲目となる。
【００５８】
ここで、クラスタ２００以降を全て参照したら、サブディレクトリ部に移行して、ＣＡＴ. ＭＳＡ、ＤＯＧ．ＭＳＡおよびＭＡＮ．ＭＳＡという名前のファイル名と合致するスロットを参照する。この第６図においては、ＣＡＴ．ＭＳＡというファイル名が記録されたスロットの終端には「５」というアドレスが記録され、ＤＯＧ. ＭＳＡというファイルが記録されたスロットの終端には「１０」というアドレスが記録され、ＭＡＮ．ＭＳＡというファイルが記録されたスロットの終端には１１０というアドレスが記録されている。
【００５９】
ＣＡＴ．ＭＳＡというファイル名が記録されたスロットの終端に記録された「５」というアドレスに基づいて、ＦＡＴ上のエントリアドレスを検索する。エントリアドレス５には、「６」というクラスタアドレスがエントリされており、「６」というエントリアドレスを参照すると「７」というクラスタアドレスがエントリされており、「７」というエントリアドレスを参照すると「８」というクラスタアドレスがエントリされており、「８」というエントリアドレスを参照すると「ＦＦＦ」という終端を意味するコードが記録されている。
【００６０】
よって、ＣＡＴ．ＭＳＡというファイルは、クラスタ５、６、７、８のクラスタ領域を使用しており、データ領域のクラスタ５、６、７、８を参照することでＣＡＴ．ＭＳＡというＡＴＲＡＣ３データが実際に記録されている領域をアクセスすることができる。
【００６１】
次に、離散記録されているＤＯＧ. ＭＳＡというファイルを検索する方法を以下に示す。ＤＯＧ. ＭＳＡというファイル名が記録されたスロットの終端には「１０」というアドレスが記録されている。ここで、「１０」というアドレスに基づいて、ＦＡＴ上のエントリアドレスを検索する。エントリアドレス１０には、「１１」というクラスタアドレスがエントリされており、「１１」というエントリアドレスを参照すると「１２」というクラスタアドレスがエントリされており、「１２」というエントリアドレスを参照すると「１００」というクラスタアドレスがエントリされている。さらに、「１００」というエントリアドレスを参照すると「１０１」というクラスタアドレスがエントリされており、「１０１」というエントリアドレスを参照するとＦＦＦという終端を意味するコードが記録されている。
【００６２】
よって、ＤＯＧ．ＭＳＡというファイルは、クラスタ１０、１１、１２、１００、１０１というクラスタ領域を使用しており、データ領域のクラスタ１０、１１、１２を参照することでＤＯＧ．ＭＳＡというファイルの前半パートに対応するＡＴＲＡＣ３データが実際に記録されている領域をアクセスすることができる。さらに、データ領域のクラスタ１００、１０１を参照することでＤＯＧ．ＭＳＡというファイルの後半パートに対応するＡＴＲＡＣ３データが実際に記録されている領域をアクセスすることができる。
【００６３】
さらに、ＭＡＮ．ＭＳＡというファイル名が記録されたスロットの終端に記録された「１１０」というアドレスに基づいて、ＦＡＴ上のエントリアドレスを検索する。エントリアドレス１１０には、「１１１」というクラスタアドレスがエントリされており、「１１１」というエントリアドレスを参照すると「ＦＦＦ」という終端を意味するコードが記録されている。
【００６４】
よって、ＭＡＮ．ＭＳＡというファイルは、クラスタ１１０、１１１というクラスタ領域を使用しており、データ領域のクラスタ１１０、１１１を参照することでＭＡＮ．ＭＳＡというＡＴＲＡＣ３データが実際に記録されている領域をアクセスすることができる。
以上のようにフラッシュメモリ上で離散して記録されたデータファイルを連結してシーケンシャルに再生することが可能となる。
【００６５】
この一実施形態では、上述したメモリカード４０のフォーマットで規定されるファイル管理システムとは別個に、音楽用ファイルに対して、各トラックおよび各トラックを構成するパーツを管理するための管理ファイルを持つようにしている。この管理ファイルは、メモリカード４０のユーザブロックを利用してフラッシュメモリ４２上に記録される。それによって、後述するように、メモリカード４０上のＦＡＴが壊れても、ファイルの修復を可能となる。
【００６６】
この管理ファイルは、ＤＳＰ３０により作成される。例えば最初に電源をオンした時に、メモリカード４０の装着されているか否かが判定され、メモリカードが装着されている時には、認証が行われる。認証により正規のメモリカードであることが確認されると、フラッシュメモリ４２のブートブロックがＤＳＰ３０に読み込まれる。そして、論理−物理アドレス変換テーブルが読み込まれる。読み込まれたデータは、ＳＲＡＭに格納される。ユーザが購入して初めて使用するメモリカードでも、出荷時にフラッシュメモリ４２には、ＦＡＴや、ルートディレクトリの書き込みがなされている。管理ファイルは、録音がなされると、作成される。
【００６７】
すなわち、ユーザのリモートコントロール等によって発生した録音指令が外部のコントローラからバスおよびバスインターフェース３２を介してＤＳＰ３０に与えられる。そして、受信したオーディオデータがエンコーダ／デコーダＩＣ１０によって圧縮され、エンコーダ／デコーダＩＣ１０からのＡＴＲＡＣ３データがセキュリティＩＣ２０により暗号化される。ＤＳＰ３０が暗号化されたＡＴＲＡＣ３データをメモリカード４０のフラッシュメモリ４２に記録する。この記録後にＦＡＴおよび管理ファイルが更新される。ファイルの更新の度、具体的には、オーディオデータの記録を開始し、記録を終了する度に、ＳＲＡＭ３１および３６上でＦＡＴおよび管理ファイルが書き換えられる。そして、メモリカード４０を外す時に、またはパワーをオフする時に、ＳＲＡＭ３１、３６からメモリカード４０のフラッシュメモリ４２上に最終的なＦＡＴおよび管理ファイルが格納される。この場合、オーディオデータの記録を開始し、記録を終了する度に、フラッシュメモリ４２上のＦＡＴおよび管理ファイルを書き換えても良い。編集を行った場合も、管理ファイルの内容が更新される。
【００６８】
さらに、この一実施形態のデータ構成では、付加情報も管理ファイル内に作成、更新され、フラッシュメモリ４２上に記録される。管理ファイルの他のデータ構成では、付加情報管理ファイルがトラック管理用の管理ファイルとは別に作成される。付加情報は、外部のコントローラからバスおよびバスインターフェース３２を介してＤＳＰ３０に与えられる。ＤＳＰ３０が受信した付加情報をメモリカード４０のフラッシュメモリ４２上に記録する。付加情報は、セキュリティＩＣ２０を通らないので、暗号化されない。付加情報は、メモリカード４０を取り外したり、電源オフの時に、ＤＳＰ３０のＳＲＡＭからフラッシュメモリ４２に書き込まれる。
【００６９】
第７図は、メモリカード４０のファイル構成の全体を示す。ディレクトリとして、静止画用ディレクトリ、動画用ディレクトリ、Ｖｏｉｃｅ用ディレクトリ、制御用ディレクトリ、音楽用（ＨＩＦＩ）ディレクトリが存在する。この一実施形態は、音楽の記録／再生を行うので、以下、音楽用ディレクトリについて説明する。音楽用ディレクトリには、２種類のファイルが置かれる。その１つは、再生管理ファイルＰＢＬＩＳＴ．ＭＳＦ（以下、単にＰＢＬＩＳＴと表記する）であり、他のものは、暗号化された音楽データを収納したＡＴＲＡＣ３データファイルＡ３Ｄｎｎｎｎ．ＭＳＡ（以下、単にＡ３Ｄｎｎｎと表記する）とからなる。ＡＴＲＡＣ３データファイルは、最大数が４００までと規定されている。すなわち、最大４００曲まで収録可能である。ＡＴＲＡＣ３データファイルは、再生管理ファイルに登録した上で機器により任意に作成される。
【００７０】
第８図は、再生管理ファイルの構成を示し、第９図が１ＦＩＬＥ（１曲）のＡＴＲＡＣ３データファイルの構成を示す。再生管理ファイルは、１６ＫＢ固定長のファイルである。ＡＴＲＡＣ３データファイルは、曲単位でもって、先頭の属性ヘッダと、それに続く実際の暗号化された音楽データとからなる。属性ヘッダも１６ＫＢ固定長とされ、再生管理ファイルと類似した構成を有する。
【００７１】
第８図に示す再生管理ファイルは、ヘッダ、１バイトコードのメモリカードの名前ＮＭ１−Ｓ、２バイトコードのメモリカードの名前ＮＭ２−Ｓ、曲順の再生テーブルＴＲＫＴＢＬ、メモリカード全体の付加情報ＩＮＦ−Ｓとからなる。第９図に示すデータファイルの先頭の属性ヘッダは、ヘッダ、１バイトコードの曲名ＮＭ１、２バイトコードの曲名ＮＭ２、トラックのキー情報等のトラック情報ＴＲＫＩＮＦ、パーツ情報ＰＲＴＩＮＦと、トラックの付加情報ＩＮＦとからなる。ヘッダには、総パーツ数、名前の属性、付加情報のサイズの情報等が含まれる。
【００７２】
属性ヘッダに対してＡＴＲＡＣ３の音楽データが続く。音楽データは、１６ＫＢのブロック毎に区切られ、各ブロックの先頭にヘッダが付加されている。ヘッダには、暗号を復号するための初期値が含まれる。なお、暗号化の処理を受けるのは、ＡＴＲＡＣ３データファイル中の音楽データのみであって、それ以外の再生管理ファイル、ヘッダ等のデータは、暗号化されない。
【００７３】
第１０図を参照して、曲とＡＴＲＡＣ３データファイルの関係について説明する。１トラックは、１曲を意味する。１曲は、１つのＡＴＲＡＣ３データファイル（第９図参照）で構成される。ＡＴＲＡＣ３データファイルは、ＡＴＲＡＣ３により圧縮されたオーディオデータである。メモリカード４０に対しては、クラスタと呼ばれる単位で記録される。１クラスタは、例えば１６ＫＢの容量である。１クラスタに複数のファイルが混じることがない。フラッシュメモリ４２を消去する時の最小単位が１ブロックである。音楽データを記録するのに使用するメモリカード４０の場合、ブロックとクラスタは、同意語であり、且つ１クラスタ＝１セクタと定義されている。
【００７４】
１曲は、基本的に１パーツで構成されるが、編集が行われると、複数のパーツから１曲が構成されることがある。パーツは、録音開始からその停止までの連続した時間内で記録されたデータの単位を意味し、通常は、１トラックが１パーツで構成される。曲内のパーツのつながりは、各曲の属性ヘッダ内のパーツ情報ＰＲＴＩＮＦで管理する。すなわち、パーツサイズは、ＰＲＴＩＮＦの中のパーツサイズＰＲＴＳＩＺＥという４バイトのデータで表す。パーツサイズＰＲＴＳＩＺＥの先頭の２バイトがパーツが持つクラスタの総数を示し、続く各１バイトが先頭および末尾のクラスタ内の開始サウンドユニット（以下、ＳＵと略記する）の位置、終了ＳＵの位置を示す。このようなパーツの記述方法を持つことによって、音楽データを編集する際に通常、必要とされる大量の音楽データの移動をなくすことが可能となる。ブロック単位の編集に限定すれば、同様に音楽データの移動を回避できるが、ブロック単位は、ＳＵ単位に比して編集単位が大きすぎる。
【００７５】
ＳＵは、パーツの最小単位であり、且つＡＴＲＡＣ３でオーディオデータを圧縮する時の最小のデータ単位である。４４．１ｋHzのサンプリング周波数で得られた１０２４サンプル分（１０２４×１６ビット×２チャンネル）のオーディオデータを約１／１０に圧縮した数百バイトのデータがＳＵである。１ＳＵは、時間に換算して約２３ｍ秒になる。通常は、数千に及ぶＳＵによって１つのパーツが構成される。１クラスタが４２個のＳＵで構成される場合、１クラスタで約１秒の音を表すことができる。１つのトラックを構成するパーツの数は、付加情報サイズに影響される。パーツ数は、１ブロックの中からヘッダや曲名、付加情報データ等を除いた数で決まるために、付加情報が全く無い状態が最大数（６４５個）のパーツを使用できる条件となる。
【００７６】
第１０図Ａは、ＣＤ等からのオーディオデータを２曲連続して記録する場合のファイル構成を示す。１曲目（ファイル１）が例えば５クラスタで構成される。１曲目と２曲目（ファイル２）の曲間では、１クラスタに二つのファイルが混在することが許されないので、次のクラスタの最初からファイル２が作成される。従って、ファイル１に対応するパーツ１の終端（１曲目の終端）がクラスタの途中に位置し、クラスタの残りの部分には、データが存在しない。第２曲目（ファイル２）も同様に１パーツで構成される。ファイル１の場合では、パーツサイズが５、開始クラスタのＳＵが０、終了クラスタが４となる。
【００７７】
編集操作として、デバイド、コンバイン、イレーズ、ムーブの４種類の操作が規定される。デバイドは、１つのトラックを２つに分割することである。デバイドがされると、総トラック数が１つ増加する。デバイドは、一つのファイルをファイルシステム上で分割して２つのファイルとし、再生管理ファイルおよびＦＡＴを更新する。コンバインは、２つのトラックを１つに統合することである。コンバインされると、総トラック数が１つ減少する。コンバインは、２つのファイルをファイルシステム上で統合して１つのファイルにし、再生管理ファイルおよびＦＡＴを更新する。イレーズは、トラックを消去することである。消された以降のトラック番号が１つ減少する。ムーブは、トラック順番を変えることである。以上イレーズおよびムーブ処理についても、再生管理ファイルおよびＦＡＴを更新する。
【００７８】
第１０図Ａに示す二つの曲（ファイル１およびファイル２）をコンバインした結果を第１０図Ｂに示す。コンバインされた結果は、１つのファイルであり、このファイルは、二つのパーツからなる。また、第１０図Ｃは、一つの曲（ファイル１）をクラスタ２の途中でデバイドした結果を示す。デバイドによって、クラスタ０、１およびクラスタ２の前側からなるファイル１と、クラスタ２の後側とクラスタ３および４とからなるファイル２とが発生する。
【００７９】
上述したように、この一実施形態では、パーツに関する記述方法があるので、コンバインした結果である第１０図Ｂにおいて、パーツ１の開始位置、パーツ１の終了位置、パーツ２の開始位置、パーツ２の終了位置をそれぞれＳＵ単位でもって規定できる。その結果、コンバインした結果のつなぎ目の隙間をつめるために、パーツ２の音楽データを移動する必要がない。また、パーツに関する記述方法があるので、デバイドした結果である第１０図Ｃにおいて、ファイル２の先頭の空きを詰めるように、データを移動する必要がない。
【００８０】
第１１図は、再生管理ファイルＰＢＬＩＳＴのより詳細なデータ構成を示し、第１２図Ａおよび第１２図Ｂは、再生管理ファイルＰＢＬＩＳＴを構成するヘッダとそれ以外の部分をそれぞれ示す。再生管理ファイルＰＢＬＩＳＴは、１クラスタ（１ブロック＝１６ＫＢ）のサイズである。第１２図Ａに示すヘッダは、３２バイトから成る。第１２図Ｂに示すヘッダ以外の部分は、メモリカード全体に対する名前ＮＭ１−Ｓ（２５６バイト）、名前ＮＭ２−Ｓ（５１２バイト）、ＣＯＮＴＥＮＴＳＫＥＹ、ＭＡＣ、Ｓ−ＹＭＤｈｍｓと、再生順番を管理するテーブルＴＲＫＴＢＬ（８００バイト）、メモリカード全体に対する付加情報ＩＮＦ−Ｓ（１４７２０バイト）および最後にヘッダ中の情報の一部が再度記録されている。これらの異なる種類のデータ群のそれぞれの先頭は、再生管理ファイル内で所定の位置となるように規定されている。
【００８１】
再生管理ファイルは、第１２図Ａに示す（０ｘ００００）および（０ｘ００１０）で表される先頭から３２バイトがヘッダである。なお、ファイル中で先頭から１６バイト単位で区切られた単位をスロットと称する。ファイルの第１および第２のスロットに配されるヘッダには、下記の意味、機能、値を持つデータが先頭から順に配される。なお、Ｒｅｓｅｒｖｅｄと表記されているデータは、未定義のデータを表している。通常ヌル（０ｘ００）が書かれるが、何が書かれていてもＲｅｓｅｒｖｅｄのデータが無視される。将来のバージョンでは、変更がありうる。また、この部分への書き込みは禁止する。Ｏｐｔｉｏｎと書かれた部分も使用しない場合は、全てＲｅｓｅｒｖｅｄと同じ扱いとされる。
【００８２】
ＢＬＫＩＤ−ＴＬ０（４バイト）
意味：BLOCKID FILE ID
機能：再生管理ファイルの先頭であることを識別するための値
値：固定値＝”ＴＬ＝０”（例えば０ｘ５４４Ｃ２Ｄ３０）
ＭＣｏｄｅ（２バイト）
意味：MAKER CODE
機能：記録した機器の、メーカー、モデルを識別するコード
値：上位１０ビット（メーカーコード）  下位６ビット（機種コード）
ＲＥＶＩＳＩＯＮ（４バイト）
意味：ＰＢＬＩＳＴの書き換え回数
機能：再生管理ファイルを書き換える度にインクリメント
値：０より始まり＋１づつ増加する。
Ｓ−ＹＭＤｈｍｓ（４バイト）（Ｏｐｔｉｏｎ）
意味：信頼できる時計を持つ機器で記録した年・月・日・時・分・秒
機能：最終記録日時を識別するための値
値：２５〜３１ビット  年  ０〜９９（１９８０〜２０７９）
２１〜２４ビット  月  ０〜１２
１６〜２０ビット  日  ０〜３１
１１〜１５ビット  時  ０〜２３
０５〜１０ビット  分  ０〜５９
００〜０４ビット  秒  ０〜２９（２秒単位）
ＳＮ１Ｃ＋Ｌ（２バイト）
意味：ＮＭ１−Ｓ領域に書かれるメモリカードの名前（１バイト）の属性を表す。
機能：使用する文字コードと言語コードを各１バイトで表す。
値：文字コード（Ｃ）は上位１バイトで下記のように文字を区別する。
00: 文字コードは設定しない。単なる２進数として扱うこと。
01: ASCII(American Standard Code for Information Interchange)
02:ASCII+KANA   03:modifided8859-1
81:MS-JIS   82:KS C 5601-1989   83:GB(Great Britain)2312-80
90:S-JIS(Japanese Industrial Standards)(for Voice)
言語コード（Ｌ）は下位１バイトで下記のようにEBU Tech 3258 規定に準じて言語を区別する。
00: 設定しない  08:German   09:English  0A:Spanish
0F:French   15:Italian  1D:Dutch
65:Korean   69:Japanese   75:Chinese
データが無い場合オールゼロとすること。
ＳＮ２Ｃ＋Ｌ（２バイト）
意味：ＮＭ２−Ｓ領域に書かれるメモリカードの名前（２バイト）の属性を表す。
機能：使用する文字コードと言語コードを各１バイトで表す。
値：上述したＳＮ１Ｃ＋Ｌと同一
ＳＩＮＦＳＩＺＥ（２バイト）
意味：ＩＮＦ−Ｓ領域に書かれるメモリカード全体に関する付加情報の全てを合計したサイズを表す。
機能：データサイズを１６バイト単位の大きさで記述、無い場合は必ずオールゼロとすること。
値：サイズは０ｘ０００１から０ｘ３９Ｃ（９２４）
Ｔ−ＴＲＫ（２バイト）
意味：TOTAL TRACK NUMBER
機能：総トラック数
値：１から０ｘ０１９０（最大４００トラック）、データが無い場合はオールゼロとすること。
ＶｅｒＮｏ（２バイト）
意味：フォーマットのバージョン番号
機能：上位がメジャーバージョン番号、下位がマイナーバージョン番号
値：例  ０ｘ０１００（Ｖｅｒ１．０）
０ｘ０２０３（Ｖｅｒ２．３）
上述したヘッダに続く領域に書かれるデータ（第１３図Ｂ）について以下に説明する。
ＮＭ１−Ｓ
意味：メモリカード全体に関する１バイトの名前
機能：１バイトの文字コードで表した可変長の名前データ（最大で２５６）
名前データの終了は、必ず終端コード（０ｘ００）を書き込むこと。
サイズはこの終端コードから計算すること、データの無い場合は少なくとも先頭（０ｘ００２０）からヌル（０ｘ００）を１バイト以録すること。
値：各種文字コード
ＮＭ２−Ｓ
意味：メモリカード全体に関する２バイトの名前
機能：２バイトの文字コードで表した可変長の名前データ（最大で５１２）
名前データの終了は、必ず終端コード（０ｘ００）を書き込むこと。
サイズはこの終端コードから計算すること、データの無い場合は少なくとも先頭（０ｘ０１２０）からヌル（０ｘ００）を２バイト以録すること。
値：各種文字コード
ＣＯＮＴＥＮＴＳ  ＫＥＹ
意味：曲ごとに用意された値でＭＧ（Ｍ）で保護されてから保存される。ここでは、１曲目に付けられるＣＯＮＴＥＮＴＳ  ＫＥＹと同じ値
機能：Ｓ−ＹＭＤｈｍｓのＭＡＣの計算に必要となる鍵となる。
値：０から０ｘＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦまで
ＭＡＣ
意味：著作権情報改ざんチェック値
機能：Ｓ−ＹＭＤｈｍｓの内容とＣＯＮＴＥＮＴＳ  ＫＥＹから作成される値
値：０から０ｘＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦまで
ＴＲＫ−ｎｎｎ
意味：再生するＡＴＲＡＣ３データファイルのＳＱＮ（シーケンス）番号
機能：ＴＲＫＩＮＦの中のＦＮｏを記述する。
値：１から４００（０ｘ１９０）
トラックが存在しない時はオールゼロとすること。
ＩＮＦ−Ｓ
意味：メモリカード全体に関する付加情報データ（例えば写真、歌詞、解説等の情報）
機能：ヘッダを伴った可変長の付加情報データ
複数の異なる付加情報が並べられることがある。それぞれにＩＤとデータサイズが付けられている。個々のヘッダを含む付加情報データは最小１６バイト以上で４バイトの整数倍の単位で構成される。その詳細については、後述する。
値：付加情報データ構成を参照
Ｓ−ＹＭＤｈｍｓ（４バイト）（Ｏｐｔｉｏｎ）
意味：信頼できる時計を持つ機器で記録した年・月・日・時・分・秒
機能：最終記録日時を識別するための値、ＥＭＤの時は必須
値：２５〜３１ビット  年  ０〜９９（１９８０〜２０７９）
２１〜２４ビット  月  ０〜１２
１６〜２０ビット  日  ０〜３１
１１〜１５ビット  時  ０〜２３
０５〜１０ビット  分  ０〜５９
００〜０４ビット  秒  ０〜２９（２秒単位）
【００８３】
再生管理ファイルの最後のスロットとして、ヘッダ内のものと同一のＢＬＫＩＤ−ＴＬ０と、ＭＣｏｄｅと、ＲＥＶＩＳＩＯＮとが書かれる。
【００８４】
民生用オーディオ機器として、メモリカードが記録中に抜かれたり、電源が切れることがあり、復活した時にこれらの異常の発生を検出することが必要とされる。上述したように、ＲＥＶＩＳＩＯＮをブロックの先頭と末尾に書き込み、この値を書き換える度に＋１インクリメントするようにしている。若し、ブロックの途中で異常終了が発生すると、先頭と末尾のＲＥＶＩＳＩＯＮの値が一致せず、異常終了を検出することができる。ＲＥＶＩＳＩＯＮが２個存在するので、高い確率で異常終了を検出することができる。異常終了の検出時には、エラーメッセージの表示等の警告が発生する。
【００８５】
また、１ブロック（１６ＫＢ）の先頭部分に固定値ＢＬＫＩＤ−ＴＬ０を挿入しているので、ＦＡＴが壊れた場合の修復の目安に固定値を使用できる。すなわち、各ブロックの先頭の固定値を見れば、ファイルの種類を判別することが可能である。しかも、この固定値ＢＬＫＩＤ−ＴＬ０は、ブロックのヘッダおよびブロックの終端部分に二重に記述するので、その信頼性のチェックを行うことができる。なお、再生管理ファイルＰＢＬＩＳＴの同一のものを二重に記録しても良い。
【００８６】
ＡＴＲＡＣ３データファイルは、トラック情報管理ファイルと比較して、相当大きなデータ量であり、ＡＴＲＡＣ３データファイルに関しては、後述するように、ブロック番号ＢＬＯＣＫ  ＳＥＲＩＡＬが付けられている。但し、ＡＴＲＡＣ３データファイルは、通常複数のファイルがメモリカード上に存在するので、ＣＯＮＮＵＭ０でコンテンツの区別を付けた上で、ＢＬＯＣＫ  ＳＥＲＩＡＬを付けないと、重複が発生し、ＦＡＴが壊れた場合のファイルの復旧が困難となる。換言すると単一のＡＴＲＡＣ３データファイルは、複数のＢＬＯＣＫで構成されると共に、離散して配置される可能性があるので、同一ＡＴＲＡＣ３データファイルを構成するＢＬＯＣＫを判別するためにＣＯＮＮＵＭ０を用いると共に、同一ＡＴＲＡＣ３データファイル内の昇降順をブロック番号ＢＬＯＣＫ  ＳＥＲＩＡＬで決定する。
【００８７】
同様に、ＦＡＴの破壊までにはいたらないが、論理を間違ってファイルとして不都合のあるような場合に、書き込んだメーカーの機種が特定できるように、メーカーコード（ＭＣｏｄｅ）がブロックの先頭と末尾に記録されている。
【００８８】
第１２図Ｃは、付加情報データの構成を示す。付加情報の先頭に下記のヘッダが書かれる。ヘッダ以降に可変長のデータが書かれる。
ＩＮＦ
意味：FIELD ID
機能：付加情報データの先頭を示す固定値
値：０ｘ６９
ＩＤ
意味：付加情報キーコード
機能：付加情報の分類を示す。
値：０から０ｘＦＦ
ＳＩＺＥ
意味：個別の付加情報の大きさ
機能：データサイズは自由であるが、必ず４バイトの整数倍でなければならない。また、最小１６バイト以上のこと。データの終わりより余りがでる場合はヌル（０ｘ００）で埋めておくこと。
値：１６から１４７８４（０ｘ３９Ｃ０）
ＭＣｏｄｅ
意味：MAKER CODE
機能：記録した機器の、メーカー、モデルを識別するコード
値：上位１０ビット（メーカーコード）  下位６ビット（機種コード）
Ｃ＋Ｌ
意味：先頭から１２バイト目からのデータ領域に書かれる文字の属性を表す。
機能：使用する文字コードと言語コードを各１バイトで表す。
値：前述のＳＮＣ＋Ｌと同じ
ＤＡＴＡ
意味：個別の付加情報データ
機能：可変長データで表す。実データの先頭は常に１２バイト目より始まり、長さ（サイズ）は最小４バイト以上、常に４バイトの整数倍でなければならない。データの最後から余りがある場合はヌル（０ｘ００）で埋めること。
値：内容により個別に定義される。
【００８９】
第１３図は、付加情報キーコードの値（０〜６３）と、付加情報の種類の対応の一例を示す。キーコードの値（０〜３１）が音楽に関する文字情報に対して割り当てられ、その（３２〜６３）がＵＲＬ(Uniform Resource Locator)（Ｗｅｂ関係）に対して割り当てられている。アルバムタイトル、アーティスト名、ＣＭ等の文字情報が付加情報として記録される。
【００９０】
第１４図は、付加情報キーコードの値（６４〜１２７）と、付加情報の種類の対応の一例を示す。キーコードの値（６４〜９５）がパス／その他に対して割り当てられ、その（９６〜１２７）が制御／数値・データ関係に対して割り当てられている。例えば（ＩＤ＝９８）の場合では、付加情報がＴＯＣ（Table of Content）−ＩＤとされる。ＴＯＣ−ＩＤは、ＣＤ（コンパクトディスク）のＴＯＣ情報に基づいて、最初の曲番号、最後の曲番号、その曲番号、総演奏時間、その曲演奏時間を示すものである。
【００９１】
第１５図は、付加情報キーコードの値（１２８〜１５９）と、付加情報の種類の対応の一例を示す。キーコードの値（１２８〜１５９）が同期再生関係に対して割り当てられている。第１５図中のＥＭＤ(Electronic Music Distribution）は、電子音楽配信の意味である。
【００９２】
第１６図を参照して付加情報のデータの具体例について説明する。第１６図Ａは、第１２図Ｃと同様に、付加情報のデータ構成を示す。第１６図Ｂは、キーコードＩＤ＝３とされる、付加情報がアーティスト名の例である。ＳＩＺＥ＝０ｘ１Ｃ（２８バイト）とされ、ヘッダを含むこの付加情報のデータ長が２８バイトであることが示される。また、Ｃ＋Ｌが文字コードＣ＝０ｘ０１とされ、言語コードＬ＝０ｘ０９とされる。この値は、前述した規定によって、ＡＳＣＩＩの文字コードで、英語の言語であることを示す。そして、先頭から１２バイト目から１バイトデータでもって、「ＳＩＭＯＮ＆ＧＲＡＦＵＮＫＥＬ」のアーティスト名のデータが書かれる。付加情報のサイズは、４バイトの整数倍と決められているので、１バイトの余りが（０ｘ００）とされる。
【００９３】
第１６図Ｃは、キーコードＩＤ＝９７とされる、付加情報がＩＳＲＣ(International Standard Recording Code：著作権コード) の例である。ＳＩＺＥ＝０ｘ１４（２０バイト）とされ、この付加情報のデータ長が２０バイトであることが示される。また、Ｃ＋ＬがＣ＝０ｘ００、Ｌ＝０ｘ００とされ、文字、言語の設定が無いこと、すなわち、データが２進数であることが示される。そして、データとして８バイトのＩＳＲＣのコードが書かれる。ＩＳＲＣは、著作権情報（国、所有者、録音年、シリアル番号）を示すものである。
【００９４】
第１６図Ｄは、キーコードＩＤ＝９７とされる、付加情報が録音日時の例である。ＳＩＺＥ＝０ｘ１０（１６バイト）とされ、この付加情報のデータ長が１６バイトであることが示される。また、Ｃ＋ＬがＣ＝０ｘ００、Ｌ＝０ｘ００とされ、文字、言語の設定が無いことが示される。そして、データとして４バイト（３２ビット）のコードが書かれ、録音日時（年、月、日、時、分、秒）が表される。
【００９５】
第１６図Ｅは、キーコードＩＤ＝１０７とされる、付加情報が再生ログの例である。ＳＩＺＥ＝０ｘ１０（１６バイト）とされ、この付加情報のデータ長が１６バイトであることが示される。また、Ｃ＋ＬがＣ＝０ｘ００、Ｌ＝０ｘ００とされ、文字、言語の設定が無いことが示される。そして、データとして４バイト（３２ビット）のコードが書かれ、再生ログ（年、月、日、時、分、秒）が表される。再生ログ機能を持つものは、１回の再生毎に１６バイトのデータを記録する。
【００９６】
第１７図は、１ＳＵがＮバイト（例えばＮ＝３８４バイト）の場合のＡＴＲＡＣ３データファイルＡ３Ｄｎｎｎｎのデータ配列を示す。第１７図には、データファイルの属性ヘッダ（１ブロック）と、音楽データファイル（１ブロック）とが示されている。第１７図では、この２ブロック（１６×２＝３２Ｋバイト）の各スロットの先頭のバイト（０ｘ００００〜０ｘ７ＦＦ０）が示されている。第１８図に分離して示すように、属性ヘッダの先頭から３２バイトがヘッダであり、２５６バイトが曲名領域ＮＭ１（２５６バイト）であり、５１２バイトが曲名領域ＮＭ２（５１２バイト）である。属性ヘッダのヘッダには、下記のデータが書かれる。
【００９７】
ＢＬＫＩＤ−ＨＤ０（４バイト）
意味：BLOCKID FILE ID
機能：ＡＴＲＡＣ３データファイルの先頭であることを識別するための値
値：固定値＝”ＨＤ＝０”（例えば０ｘ４８４４２Ｄ３０）
ＭＣｏｄｅ（２バイト）
意味：MAKER CODE
機能：記録した機器の、メーカー、モデルを識別するコード
値：上位１０ビット（メーカーコード）  下位６ビット（機種コード）
ＢＬＯＣＫ  ＳＥＲＩＡＬ（４バイト）
意味：トラック毎に付けられた連続番号
機能：ブロックの先頭は０から始まり次のブロックは＋１づつインクリメント編集されても値を変化させない。
値：０より始まり０ｘＦＦＦＦＦＦＦＦまで
Ｎ１Ｃ＋Ｌ（２バイト）
意味：トラック（曲名）データ（ＮＭ１）の属性を表す
機能：ＮＭ１に使用される文字コードと言語コードを各１バイトで表す。
値：ＳＮ１Ｃ＋Ｌと同一
Ｎ２Ｃ＋Ｌ（２バイト）
意味：トラック（曲名）データ（ＮＭ２）の属性を表す。
機能：ＮＭ２に使用される文字コードと言語コードを各１バイトで表す。
値：ＳＮ１Ｃ＋Ｌと同一
ＩＮＦＳＩＺＥ（２バイト）
意味：トラックに関する付加情報の全てを合計したサイズを表す。
機能：データサイズを１６バイト単位の大きさで記述、無い場合は必ずオールゼロとすること。
値：サイズは０ｘ００００から０ｘ３Ｃ６（９６６）
Ｔ−ＰＲＴ（２バイト）
意味：トータルパーツ数
機能：トラックを構成するパーツ数を表す。通常は１
値：１から０ｘ２８５（６４５dec ）
Ｔ−ＳＵ（４バイト）
意味：トータルＳＵ数
機能：１トラック中の実際の総ＳＵ数を表す。曲の演奏時間に相当する。
値：０ｘ０１から０ｘ００１ＦＦＦＦＦ
ＩＮＸ（２バイト）（Ｏｐｔｉｏｎ）
意味：INDEX の相対場所
機能：曲のさびの部分（特徴的な部分）の先頭を示すポインタ。曲の先頭からの位置をＳＵの個数を１／４した数で指定する。これは、通常のＳＵの４倍の長さの時間（約９３ｍ秒）に相当する。
値：０から０ｘＦＦＦＦ（最大、約６０８４秒）
ＸＴ（２バイト）（Ｏｐｔｉｏｎ）
意味：INDEX の再生時間
機能：ＩＮＸ-nnnで指定された先頭から再生すべき時間のＳＵの個数を１／４した数で指定する。これは、通常のＳＵの４倍の長さの時間（約９３ｍ秒）に相当する。
値：０ｘ００００：無設定    ０ｘ０１から０ｘＦＦＦＥ（最大６０８４秒）０ｘＦＦＦＦ：曲の終わりまで
次に曲名領域ＮＭ１およびＮＭ２について説明する。
ＮＭ１
意味：曲名を表す文字列
機能：１バイトの文字コードで表した可変長の曲名（最大で２５６）
名前データの終了は、必ず終端コード（０ｘ００）を書き込むこと。
サイズはこの終端コードから計算すること、データの無い場合は少なくとも先頭（０ｘ００２０）からヌル（０ｘ００）を１バイト以録すること。
値：各種文字コード
ＮＭ２
意味：曲名を表す文字列
機能：２バイトの文字コードで表した可変長の名前データ（最大で５１２）
名前データの終了は、必ず終端コード（０ｘ００）を書き込むこと。
サイズはこの終端コードから計算すること、データの無い場合は少なくとも先頭（０ｘ０１２０）からヌル（０ｘ００）を２バイト以録すること。
値：各種文字コード
属性ヘッダの固定位置（０ｘ３２０）から始まる、８０バイトのデータをトラック情報領域ＴＲＫＩＮＦと呼び、主としてセキュリティ関係、コピー制御関係の情報を一括して管理する。第１９図にＴＲＫＩＮＦの部分を示す。ＴＲＫＩＮＦ内のデータについて、配置順序に従って以下に説明する。
ＣＯＮＴＥＮＴＳ  ＫＥＹ（８バイト）
意味：曲毎に用意された値で、メモリカードのセキュリティブロックで保護されてから保存される。
機能：曲を再生する時、まず必要となる最初の鍵となる。ＭＡＣ計算時に使用される。
値：０から０ｘＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦまで
ＭＡＣ（８バイト）
意味：著作権情報改ざんチェック値
機能：コンテンツ累積番号を含む複数のＴＲＫＩＮＦの内容と隠しシーケンス番号から作成される値
隠しシーケンス番号とは、メモリカードの隠し領域に記録されているシーケンス番号のことである。著作権対応でないレコーダは、隠し領域を読むことができない。また、著作権対応の専用のレコーダ、またはメモリカードを読むことを可能とするアプリケーションを搭載したパーソナルコンピュータは、隠し領域をアクセスすることができる。
Ａ（１バイト）
意味：パーツの属性
機能：パーツ内の圧縮モード等の情報を示す。
値：第２０図を参照して以下に説明する。
ただし、Ｎ＝０，１のモノラルは、ｂｉｔ７が１でサブ信号を０、メイン信号（Ｌ＋Ｒ）のみの特別なＪｏｉｎｔモードをモノラルとして規定する。ｂｉｔ  ２，１の情報は通常の再生機は無視しても構わない。
Ａのビット０は、エンファシスのオン／オフの情報を形成し、ビット１は、再生ＳＫＩＰか、通常再生かの情報を形成し、ビット２は、データ区分、例えばオーディオデータか、ＦＡＸ等の他のデータかの情報を形成する。ビット３は、未定義である。ビット４、５、６を組み合わせることによって、図示のように、ＡＴＲＡＣ３のモード情報が規定される。すなわち、Ｎは、この３ビットで表されるモードの値であり、モノ（Ｎ＝０，１）、ＬＰ（Ｎ＝２）、ＳＰ（Ｎ＝４）、ＥＸ（Ｎ＝５）、ＨＱ（Ｎ＝７）の５種類のモードについて、記録時間（６４ＭＢのメモリカードの場合）、データ転送レート、１ブロック内のＳＵ数がそれぞれ示されている。１ＳＵのバイト数は、（モノ：１３６バイト、ＬＰ：１９２バイト、ＳＰ：３０４バイト、ＥＸ：３８４バイト、ＨＱ：５１２バイト）である。さらに、ビット７によって、ＡＴＲＡＣ３のモード（０：Dual  １：J0int ）が示される。
【００９８】
一例として、６４ＭＢのメモリカードを使用し、ＳＰモードの場合について説明する。６４ＭＢのメモリカードには、３９６８ブロックがある。ＳＰモードでは、１ＳＵが３０４バイトであるので、１ブロックに５３ＳＵが存在する。１ＳＵは、（１０２４／４４１００）秒に相当する。従って、１ブロックは、
（１０２４／４４１００）×５３×（３９６８−１６）＝４８６３秒＝８１分
転送レートは、
（４４１００／１０２４）×３０４×８＝１０４７３７ bps
となる。
【００９９】
ＬＴ（１バイト）
意味：再生制限フラグ（ビット７およびビット６）とセキュリティバージョン（ビット５〜ビット０）
機能：このトラックに関して制限事項があることを表す。
値：ビット７：  ０＝制限なし    １＝制限有り
ビット６：  ０＝期限内      １＝期限切れ
ビット５〜ビット０：セキュリティバージョン０（０以外であれば再生禁止とする）
ＦＮｏ（２バイト）
意味：ファイル番号
機能：最初に記録された時のトラック番号、且つこの値は、メモリカード内の隠し領域に記録されたＭＡＣ計算用の値の位置を特定する。
値：１から０ｘ１９０（４００）
ＭＧ（Ｄ）ＳＥＲＩＡＬ−ｎｎｎ（１６バイト）
意味：記録機器のセキュリティブロック（セキュリティＩＣ２０）のシリアル番号
機能：記録機器ごとに全て異なる固有の値
値：０から0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
ＣＯＮＮＵＭ（４バイト）
意味：コンテンツ累積番号
機能：曲毎に累積されていく固有の値で記録機器のセキュリティブロックによって管理される。２の３２乗、４２億曲分用意されており、記録した曲の識別に使用する。
値：０から０ｘＦＦＦＦＦＦＦＦ
ＹＭＤｈｍｓ−Ｓ（４バイト）（Ｏｐｔｉｏｎ）
意味：再生制限付きのトラックの再生開始日時
機能：ＥＭＤで指定する再生開始を許可する日時
値：上述した日時の表記と同じ。
ＹＭＤｈｍｓ−Ｅ（４バイト）（Ｏｐｔｉｏｎ）
意味：再生制限付きのトラックの再生終了日時
機能：ＥＭＤで指定する再生許可を終了する日時
値：上述した日時の表記と同じ。
ＭＴ（１バイト）（Ｏｐｔｉｏｎ）
意味：再生許可回数の最大値
機能：ＥＭＤで指定される最大の再生回数
値：１から０ｘＦＦ  未使用の時は、０ｘ００
ＬＴのｂｉｔ７の値が０の場合はＭＴの値は００とすること。
ＣＴ（１バイト）（Ｏｐｔｉｏｎ）
意味：再生回数
機能：再生許可された回数の内で、実際に再生できる回数。再生の度にデクリメントする。
値：０ｘ００〜０ｘＦＦ  未使用の時は、０ｘ００である。
ＬＴのｂｉｔ７が１でＣＴの値が００の場合は再生を禁止すること。
ＣＣ（１バイト）
意味：COPY CONTROL
機能：コピー制御
値：第２１図に示すように、ビット６および７によってコピー制御情報を表し、ビット４および５によって高速ディジタルコピーに関するコピー制御情報を表し、ビット２および３によってセキュリティブロック認証レベルを表す。ビット０および１は、未定義
ＣＣの例：（ｂｉｔ７，６）１１：無制限のコピーを許可、０１：コピー禁止、００：１回のコピーを許可
（ｂｉｔ３，２）００：アナログないしディジタルインからの録音、ＭＧ認証レベルは０とする。
ＣＤからのディジタル録音では（ｂｉｔ７，６）は００、（ｂｉｔ３，２）は００となる。
ＣＮ（１バイト）（Ｏｐｔｉｏｎ）
意味：高速ディジタルコピーＨＳＣＭＳ(High speed Serial CopyManagement System)におけるコピー許可回数
機能：コピー１回か、コピーフリーかの区別を拡張し、回数で指定する。コピー第１世代の場合にのみ有効であり、コピーごとに減算する。
値：００：コピー禁止、０１から０ｘＦＥ：回数、０ｘＦＦ：回数無制限
【０１００】
上述したトラック情報領域ＴＲＫＩＮＦに続いて、０ｘ０３７０から始まる２４バイトのデータをパーツ管理用のパーツ情報領域ＰＲＴＩＮＦと呼び、１つのトラックを複数のパーツで構成する場合に、時間軸の順番にＰＲＴＩＮＦを並べていく。第２２図にＰＲＴＩＮＦの部分を示す。ＰＲＴＩＮＦ内のデータについて、配置順序に従って以下に説明する。
【０１０１】
ＰＲＴＳＩＺＥ（４バイト）
意味：パーツサイズ
機能：パーツの大きさを表す。クラスタ：２バイト（最上位）、開始ＳＵ：１バイト（上位）、終了ＳＵ：１バイト（最下位）
値：クラスタ：１から０ｘ１Ｆ４０（８０００）、開始ＳＵ：０から０ｘＡ０（１６０）、終了ＳＵ：０から０ｘＡ０（１６０）（但し、ＳＵの数え方は、０，１，２，と０から開始する）
ＰＲＴＫＥＹ（８バイト）
意味：パーツを暗号化するための値
機能：初期値＝０、編集時は編集の規則に従うこと。
値：０から０ｘＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦ
ＣＯＮＮＵＭ０（４バイト）
意味：最初に作られたコンテンツ累積番号キー
機能：コンテンツをユニークにするためのＩＤの役割
値：コンテンツ累積番号初期値キーと同じ値とされる。
ＡＴＲＡＣ３データファイルの属性ヘッダ中には、第１７図に示すように、付加情報ＩＮＦが含まれる。この付加情報は、開始位置が固定化されていない点を除いて、再生管理ファイル中の付加情報ＩＮＦ−Ｓ（第１１図および第１２図Ｂ参照）と同一である。１つまたは複数のパーツの最後のバイト部分（４バイト単位）の次を開始位置として付加情報ＩＮＦのデータが開始する。
ＩＮＦ
意味：トラックに関する付加情報データ
機能：ヘッダを伴った可変長の付加情報データ。複数の異なる付加情報が並べられることがある。それぞれにＩＤとデータサイズが付加されている。個々のヘッダを含む付加情報データは、最小１６バイト以上で４バイトの整数倍の単位
値：再生管理ファイル中の付加情報ＩＮＦ−Ｓと同じである。
【０１０２】
上述した属性ヘッダに対して、ＡＴＲＡＣ３データファイルの各ブロックのデータが続く。第２３図に示すように、ブロック毎にヘッダが付加される。各ブロックのデータについて以下に説明する。
【０１０３】
ＢＬＫＩＤ−Ａ３Ｄ（４バイト）
意味：BLOCKID FILE ID
機能：ＡＴＲＡＣ３データの先頭であることを識別するための値
値：固定値＝”Ａ３Ｄ”（例えば０ｘ４１３３４４２０）
ＭＣｏｄｅ（２バイト）
意味：MAKER CODE
機能：記録した機器の、メーカー、モデルを識別するコード
値：上位１０ビット（メーカーコード）  下位６ビット（機種コード）
ＣＯＮＮＵＭ０（４バイト）
意味：最初に作られたコンテンツ累積番号
機能：コンテンツをユニークにするためのＩＤの役割、編集されても値は変化させない。
値：コンテンツ累積番号初期値キーと同じ値とされる。
ＢＬＯＣＫ  ＳＥＲＩＡＬ（４バイト）
意味：トラック毎に付けられた連続番号
機能：ブロックの先頭は０から始まり次のブロックは＋１づつインクリメント編集されても値を変化させない。
値：０より始まり０ｘＦＦＦＦＦＦＦＦまで
ＢＬＯＣＫ−ＳＥＥＤ（８バイト）
意味：１ブロックを暗号化するための１つの鍵
機能：ブロックの先頭は、記録機器のセキュリティブロックで乱数を生成、続くブロックは、＋１インクリメントされた値、この値が失われると、１ブロックに相当する約１秒間、音が出せないために、ヘッダとブロック末尾に同じものが二重に書かれる。編集されても値を変化させない。
値：初期は８バイトの乱数
ＩＮＩＴＩＡＬＩＺＡＴＩＯＮ  ＶＥＣＴＯＲ（８バイト）
意味：ブロック毎にＡＴＲＡＣ３データを暗号化、復号化する時に必要な初期値
機能：ブロックの先頭は０から始まり、次のブロックは最後のＳＵの最後の暗号化された８バイトの値。デバイドされたブロックの途中からの場合は開始ＳＵの直前の最後の８バイトを用いる。編集されても値を変化させない。
値：０から０ｘＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦ
ＳＵ−ｎｎｎ
意味：サウンドユニットのデータ
機能：１０２４サンプルから圧縮されたデータ、圧縮モードにより出力されるバイト数が異なる。編集されても値を変化させない。（一例として、ＳＰモードの時では、Ｎ＝３８４バイト）
値：ＡＴＲＡＣ３のデータ値
【０１０４】
第１７図では、Ｎ＝３８４であるので、１ブロックに４２ＳＵが書かれる。また、１ブロックの先頭の２つのスロット（４バイト）がヘッダとされ、最後の１スロット（２バイト）にＢＬＫＩＤ−Ａ３Ｄ、ＭＣｏｄｅ、ＣＯＮＮＵＭ０、ＢＬＯＣＫ  ＳＥＲＩＡＬが二重に書かれる。従って、１ブロックの余りの領域Ｍバイトは、（１６，３８４−３８４×４２−１６×３＝２０８（バイト）となる。この中に上述したように、８バイトのＢＬＯＣＫ  ＳＥＥＤが二重に記録される。
【０１０５】
ここで、上述したＦＡＴ領域が壊れた場合には、フラッシュメモリの全ブロックの探索を開始し、ブロック先頭部のブロックＩＤ  ＢＬＫＩＤがＴＬ０か、ＨＤ０か、Ａ３Ｄかを各ブロックについて判別する。この処理を第２４図に示すフローチャートを参照して、説明する。ブロック先頭のブロックＩＤ  ＢＬＫＩＤがＢＬＫＩＤ−ＴＬ０であるか否かをステップＳＰ１で判別する。
【０１０６】
このステップＳＰ１において、ブロック先頭のブロックＩＤ  ＢＬＫＩＤがＢＬＫＩＤ−ＴＬ０で無い場合には、ステップＳＰ２において、ブロック番号をインクリメント処理して、ステップＳＰ３において、ブロックの終端部まで検索したかを判別する。ステップＳＰ３において、ブロックの終端部まで至ってないと判別された場合には、再度ステップＳＰ１に戻る。
【０１０７】
そして、ステップＳＰ１において、ブロック先頭のブロックＩＤＢＬＫＩＤがＢＬＫＩＤ−ＴＬ０と判別された場合には、ステップＳＰ４において、検索したブロックが再生管理ファイルＰＢＬＩＳＴであると判定される。次に、ステップＳＰ５において、再生管理ファイルＰＢＬＩＳＴ内に含まれる総トラック数Ｔ−ＴＲＫを参照して、レジスタにＮとして記憶する。一例として、メモリ上に１０曲のＡＴＲＡＣ３データファイルが存在する場合には（すなわち１０ファイル）Ｔ−ＴＲＫには１０が記録されている。
【０１０８】
次に、ステップＳＰ６において、総トラック数Ｔ−ＴＲＫに基づいてブロック内に記録されているＴＲＫ−００１からＴＲＫ−４００を順次参照する。上述した一例の場合には、メモリ内に１０曲収録されているのでＴＲＫ−００１からＴＲＫ−０１０までを参照すればよい。
【０１０９】
ステップＳＰ７において、ＴＲＫ−ＸＸＸ（ＸＸＸ＝００１〜４００）には、対応するファイル番号ＦＮＯが記録されているので、トラック番号ＴＲＫ−ＸＸＸとファイル番号ＦＮＯの対応表をメモリに記憶する。
【０１１０】
ステップＳＰ８において、レジスタに記憶したＮをデクリメント処理して、ステップＳＰ９において、Ｎ＝０になるまでステップＳＰ６、ＳＰ７およびＳＰ８を繰り返す。ステップＳＰ９において、Ｎ＝０と判断されたらステップＳＰ１０において、先頭のブロックにポインタをリセットして、先頭のブロックから探索をやり直す。
【０１１１】
次に、ステップＳＰ１１において、ブロック先頭のブロックＩＤＢＬＫＩＤがＢＬＫＩＤ−ＨＤ０か否かを判別する。このステップＳＰ１１において、ブロック先頭のブロックＩＤ  ＢＬＫＩＤがＢＬＫＩＤ−ＨＤ０で無い場合には、ステップＳＰ１２において、ブロック番号をインクリメント処理して、ステップＳＰ１３において、ブロックの終端部まで検索したか否かを判別する。
【０１１２】
そして、ステップＳＰ１３において、ブロックの終端部まで至ってないと判別された場合には、再度ステップＳＰ１１に制御が戻る。
【０１１３】
ステップＳＰ１１において、ブロック先頭のブロックＩＤＢＬＫＩＤがＢＬＫＩＤ−ＨＤ０であると判断されるまで、先頭ブロックからの探索を開始する。ステップＳＰ１１において、ブロック先頭のブロックＩＤＢＬＫＩＤがＢＬＫＩＤ−ＨＤ０と判断された場合には、ステップＳＰ１４において、そのブロックは、第１８図の0x0000〜0x03FFF に示すＡＴＲＡＣ３データファイルの先頭部分の属性ヘッダ（第８図参照）と判断される。
【０１１４】
次に、ステップＳＰ１５において、属性ヘッダ内に記録されているファイル番号ＦＮＯ、同一ＡＴＲＡＣ３データファイル内での通し番号を表すＢＬＯＣＫＳＥＲＩＡＬ、コンテンツ累積番号キーＣＯＮＮＵＭ０を参照して、メモリに記憶する。ここで、１０個のＡＴＲＡＣ３データファイルが存在する（すなわち、１０曲収録されている）場合には、先頭のブロックＩＤ  ＢＬＫＩＤがＢＬＫＩＤ−ＴＬ０と判断されるブロックが１０個存在するので、１０個索出されるまで処理を続ける。
【０１１５】
ステップＳＰ１３において、ブロックの終端部まで至っていると判別された場合には、ステップＳＰ１６において、先頭のブロックにポインタをリセットして、先頭のブロックから探索をやり直す。
【０１１６】
次に、ステップＳＰ１７において、ブロック先頭のブロックＩＤＢＬＫＩＤがＢＬＫＩＤ−Ａ３Ｄか否かを判断する。このステップＳＰ１７において、ブロック先頭のブロックＩＤ  ＢＬＫＩＤがＢＬＫＩＤ−Ａ３Ｄで無い場合には、ステップＳＰ１８において、ブロック番号をインクリメント処理して、ステップＳＰ１９において、ブロックの終端部まで検索したか否かを判別する。ステップＳＰ１９において、ブロックの終端部まで至ってないと判別された場合には、再度ステップＳＰ１７に制御が戻る。
【０１１７】
そして、ステップＳＰ１７において、ブロック先頭のブロックＩＤ  ＢＬＫＩＤがＢＬＫＩＤ−Ａ３Ｄであると判断された場合には、ステップＳＰ２０において、ブロックはＡＴＲＡＣ３データファイルが実際に記録されているブロックと判断される。
【０１１８】
次に、ステップＳＰ２１において、ＡＴＲＡＣ３データブロック内に記録されている通し番号ＢＬＯＣＫ  ＳＥＲＩＡＬ、コンテンツ累積番号キーＣＯＮＮＵＭ０を参照して、メモリに記憶する。このコンテンツ累積番号キーＣＯＮＮＵＭ０は同一ＡＴＲＡＣ３データファイル内では共通の番号が付与されている。即ち１つのＡＴＲＡＣ３データファイルが１０個のブロックから構成されている場合には、ブロック内に各々記録されているＣＯＮＮＵＭ０には全部共通の番号が記録されている。
【０１１９】
さらに、１つのＡＴＲＡＣ３データファイルが１０個のブロックから構成されている場合には、１０個のブロックの各々のＢＬＯＣＫＳＥＲＩＡＬには１〜１０のいずれかの通し番号が付与されている。ＣＯＮＮＵＭ０およびＢＬＯＣＫＳＥＲＩＡＬに基づいて同一コンテンツを構成するブロックか、さらに同一コンテンツ内の再生順序（連結順序）が判る。
【０１２０】
この実施形態では、１０個のＡＴＲＡＣ３データファイル（即ち１０曲）が記録され、例えば各々のＡＴＲＡＣ３データファイルが１０個のブロックから構成される場合には、１００個のデータブロックが存在することになる。この１００個のデータファイルがどの曲番を構成し、どの順序で連結されるべきかはＣＯＮＮＵＭ０およびＢＬＯＣＫ  ＳＥＲＩＡＬを参照して行われる。
【０１２１】
ステップＳＰ１９において、ブロックの終端部まで至っていると判別された場合には、全ブロックに対して、再生管理ファイル、ＡＴＲＡＣ３データファイル、属性ファイルの全ての検索が終了したことを意味するので、ステップＳＰ２２は、メモリ上に記憶されたブロック番号に対応するＣＯＮＮＵＭ０、ＢＬＯＣＫ  ＳＥＲＩＡＬ、ＦＮＯ、ＴＲＫ−ＸＸＸに基づいてファイルの連結状態を再現する。連結状態が確認できたらメモリ上の破壊されていない空きエリアにＦＡＴを作成し直しても良い。
【０１２２】
次に、上述した管理ファイルと異なるデータ構成の管理ファイル他の例について、説明する。第２５図は、メモリカード４０のファイル構成の他の例を全体として示す。音楽用ディレクトリには、トラック情報管理ファイルＴＲＫＬＩＳＴ．ＭＳＦ（以下、単にＴＲＫＬＩＳＴと表記する）と、トラック情報管理ファイルのバックアップＴＲＫＬＩＳＴＢ．ＭＳＦ（以下、単にＴＲＫＬＩＳＴＢと表記する）と、アーチスト名、ＩＳＲＣコード、タイムスタンプ、静止画像データ等の各種付加情報データを記述するＩＮＦＬＩＳＴ．ＭＳＦ（以下、単にＩＮＦＩＳＴと表記する）と、ＡＴＲＡＣ３データファイルＡ３Ｄｎｎｎｎ．ＭＳＡ（以下、単にＡ３Ｄｎｎｎｎと表記する）とが含まれる。ＴＲＫＬＩＳＴには、ＮＡＭＥ１およびＮＡＭＥ２が含まれる。ＮＡＭＥ１は、メモリカード名、曲名ブロック（１バイトコード用）で、ＡＳＣＩＩ／８８５９−１の文字コードにより曲名データを記述する領域である。ＮＡＭＥ２は、メモリカード名、曲名ブロック（２バイトコード用）で、ＭＳ−ＪＩＳ／ハングル語／中国語等により曲名データを記述する領域である。
【０１２３】
第２６図は、音楽用ディレクトリのトラック情報管理ファイルＴＲＫＬＩＳＴと、ＮＡＭＥ１および２と、ＡＴＲＡＣ３データファイルＡ３Ｄｎｎｎｎ間の関係を示す。ＴＲＫＬＩＳＴは、全体で６４Ｋバイト（＝１６Ｋ×４）の固定長で、その内の３２Ｋバイトがトラックを管理するパラメータを記述するのに使用され、残りの３２ＫバイトがＮＡＭＥ１および２を記述するのに使用される。曲名等を記述したファイルＮＡＭＥ１および２は、トラック情報管理ファイルと別扱いでも実現できるが、ＲＡＭ容量の小さいシステムは、トラック情報管理ファイルと曲名ファイルとを分けない方が管理ファイルをまとめて管理することができ、操作しやすくなる。
【０１２４】
トラック情報管理ファイルＴＲＫＬＩＳＴ内のトラック情報領域ＴＲＫＩＮＦ−ｎｎｎｎおよびパーツ情報領域ＰＲＴＩＮＦ−ｎｎｎｎによって、データファイルＡ３Ｄｎｎｎｎおよび付加情報用のＩＮＦＬＩＳＴが管理される。なお、暗号化の処理を受けるのは、ＡＴＲＡＣ３データファイルＡ３Ｄｎｎｎｎのみである。第２６図中で、横方向が１６バイト（０〜Ｆ）であり、縦方向に１６進数（０ｘか１６進数を意味する）でその行の先頭の値が示されている。
【０１２５】
他の例では、トラック情報管理ファイルＴＲＫＬＩＳＴ（曲名ファイルを含む）と、付加情報管理ファイルＩＮＦＬＩＳＴと、データファイルＡ３Ｄｎｎｎｎとの３個のファイルの構成とされ、ＴＲＫＬＩＳＴによってＩＮＦＬＩＳＴおよびＡ３Ｄｎｎｎｎが管理される。前述したデータ構成の一例（第７図、第８図および第９図）では、メモリカードの全体を管理する再生管理ファイルＰＢＬＩＳＴと、各トラック（曲）のデータファイルＡＴＲＡＣ３との２種類のファイルの構成とされる。
【０１２６】
以下、データ構成の他の例について説明するが、上述したデータ構成の一例と同一の点については、その説明を省略することにする。
【０１２７】
第２７図は、トラック情報管理ファイルＴＲＫＬＩＳＴのより詳細な構成を示す。トラック情報管理ファイルＴＲＫＬＩＳＴは、１クラスタ（１ブロック）＝１６ＫＢのサイズで、その後に続くバックアップ用のＴＲＫＬＩＳＴＢも同一サイズ、同一データのものである。トラック情報管理ファイルは、先頭から３２バイトがヘッダである。ヘッダには、上述した再生管理ファイルＰＢＬＩＳＴ中のヘッダと同様に、ＢＬＫＩＤ−ＴＬ０／ＴＬ１（バックアップファイルのＩＤ）（４バイト）、総トラック数Ｔ−ＴＲＫ（２バイト）、メーカーコードＭＣｏｄｅ（２バイト）、ＴＲＫＬＩＳＴの書き換え回数ＲＥＶＩＳＩＯＮ（４バイト）、更新日時のデータＳ−ＹＭＤｈｍｓ（４バイト）（Ｏｐｔｉｏｎ）が書かれる。これらのデータの意味、機能、値は、前述した通りである。これらのデータ以外に下記のデータが書かれる。
【０１２８】
ＹＭＤｈｍｓ（４バイト）
最後にＴＲＫＬＩＳＴが更新された年月日
Ｎ１（１バイト）（Ｏｐｔｉｏｎ）
メモリカードの連番号（分子側）で、１枚使用時はすべて（０ｘ０１）
Ｎ２（１バイト）（Ｏｐｔｉｏｎ）
メモリカードの連番号（分母側）で、１枚使用時はすべて（０ｘ０１）
ＭＳＩＤ（２バイト）（Ｏｐｔｉｏｎ）
メモリカードのＩＤで、複数組の時は、ＭＳＩＤが同一番号（Ｔ．Ｂ．Ｄ．）（Ｔ．Ｂ．Ｄ．は、将来定義されうることを意味する）
Ｓ−ＴＲＫ（２バイト）
特別トラック（４０１〜４０８）の記述（Ｔ．Ｂ．Ｄ．）で、通常は、０ｘ００００
ＰＡＳＳ（２バイト）（Ｏｐｔｉｏｎ）
パスワード（Ｔ．Ｂ．Ｄ．）
ＡＰＰ（２バイト）（Ｏｐｔｉｏｎ）
再生アプリケーションの規定（Ｔ．Ｂ．Ｄ．）（通常は、０ｘ００００）
ＩＮＦ−Ｓ（２バイト）（Ｏｐｔｉｏｎ）
メモリカード全体の付加情報ポインタであり、付加情報がないときは、０ｘ００とする。
ＴＲＫＬＩＳＴの最後の１６バイトとして、ヘッダ内のものと同一のＢＬＫＩＤ−ＴＬ０と、ＭＣｏｄｅと、ＲＥＶＩＳＩＯＮとが配される。また、バックアップ用のＴＲＫＬＩＳＴＢにも上述したヘッダが書かれる。この場合、ＢＬＫＩＤ−ＴＬ１と、ＭＣｏｄｅと、ＲＥＶＩＳＩＯＮとが配される。
【０１２９】
ヘッダの後にトラック（曲）ごとの情報を記述するトラック情報領域ＴＲＫＩＮＦと、トラック（曲）内のパーツの情報を記述するパーツ情報領域ＰＲＴＩＮＦが配置される。第２７図では、ＴＲＫＬＩＳＴの部分に、これらの領域が全体的に示され、下側のＴＲＫＬＩＳＴＢの部分にこれらの領域の詳細な構成が示されている。また、斜線で示す領域は、未使用の領域を表す。
【０１３０】
トラック情報領域ＴＲＫＩＮＦ−ｎｎｎおよびパーツ情報領域ＰＲＴＩＮＦ−ｎｎｎに、上述したＡＴＲＡＣ３データファイルに含まれるデータが同様に書かれる。すなわち、再生制限フラグＬＴ（１バイト）、コンテンツキーＣＯＮＴＥＮＴＳ  ＫＥＹ（８バイト）、記録機器のセキュリティブロックのシリアル番号ＭＧ（Ｄ）ＳＥＲＩＡＬ（１６バイト）、曲の特徴的部分を示すためのＸＴ（２バイト）（Ｏｐｔｉｏｎ）およびＩＮＸ（２バイト）（Ｏｐｔｉｏｎ）、再生制限情報およびコピー制御に関連するデータＹＭＤｈｍｓ−Ｓ（４バイト）（Ｏｐｔｉｏｎ）、ＹＭＤｈｍｓ−Ｅ（４バイト）（Ｏｐｔｉｏｎ）、ＭＴ（１バイト）（Ｏｐｔｉｏｎ）、ＣＴ（１バイト）（Ｏｐｔｉｏｎ）、ＣＣ（１バイト）、ＣＮ（１バイト）（Ｏｐｔｉｏｎ）、パーツの属性を示すＡ（１バイト）、パーツサイズＰＲＴＳＩＺＥ（４バイト）、パーツキーＰＲＴＫＥＹ（８バイト）、コンテンツ累積番号ＣＯＮＮＵＭ（４バイト）が書かれている。これらのデータの意味、機能、値は、前述した通りである。これらのデータ以外に下記のデータが書かれる。
【０１３１】
Ｔ０（１バイト）
固定値（Ｔ０＝０ｘ７４）
ＩＮＦ−ｎｎｎ（Ｏｐｔｉｏｎ）（２バイト）
各トラックの付加情報ポインタ（０〜４０９）、００：付加情報がない曲の意味
ＦＮＭ−ｎｎｎ（４バイト）
ＡＴＲＡＣ３データのファイル番号（０ｘ００００〜０ｘＦＦＦＦ）
ＡＴＲＡＣ３データファイル名（Ａ３Ｄｎｎｎｎｎ）のｎｎｎｎｎ  （ＡＳＣＩＩ）番号を０ｘｎｎｎｎｎに変換した値
ＡＰＰ ＣＴＬ（４バイト）（Ｏｐｔｉｏｎ）
アプリケーション用パラメータ（Ｔ．Ｂ．Ｄ．）（通常、０ｘ００００）
Ｐ−ｎｎｎ（２バイト）
曲を構成するパーツ数（１〜２０３９）で、前述のＴ−ＰＡＲＴに対応する。
ＰＲ（１バイト）
固定値（ＰＲ＝０ｘ５０）
【０１３２】
次に、名前をまとめて管理する名前の領域ＮＡＭＥ１およびＮＡＭＥ２について説明する。第２８図は、ＮＡＭＥ１（１バイトコードを使用する領域）のより詳細なデータ構成を示す。ＮＡＭＥ１および後述のＮＡＭＥ２は、ファイルの先頭から８バイト単位で区切られ、１スロット＝８バイトとされている。先頭の０ｘ８０００には、ヘッダが書かれ、その後ろにポインタおよび名前が記述される。ＮＡＭＥ１の最後のスロットにヘッダと同一データが記述される。
ＢＬＫＩＤ−ＮＭ１（４バイト）
ブロックの内容を特定する固定値（ＮＭ１＝０ｘ４Ｅ４Ｄ２Ｄ３１）
ＰＮＭ１−ｎｎｎ（４バイト）（Ｏｐｔｉｏｎ）
ＮＭ１（１バイトコード）へのポインタ
ＰＮＭ１−Ｓは、メモリカードを代表する名前のポインタ
ｎｎｎ（＝１〜４０８）は、曲名のポインタ
ポインタは、ブロック内の開始位置（２バイト）と文字コードタイプ（２ビット）とデータサイズ（１４ビット）を記述
ＮＭ１−ｎｎｎ（Ｏｐｔｉｏｎ）
１バイトコードで、メモリカード名、曲名データを可変長で記述
名前データの終端コード（０ｘ００）を書き込む。
【０１３３】
第２９図は、ＮＡＭＥ２（２バイトコードを使用する領域）のより詳細なデータ構成を示す。先頭（０ｘ８０００）には、ヘッダが書かれ、ヘッダの後ろにポインタおよび名前が記述される。ＮＡＭＥ２の最後のスロットにヘッダと同一データが記述される。
ＢＬＫＩＤ−ＮＭ２（４バイト）
ブロックの内容を特定する固定値（ＮＭ２＝０ｘ４Ｅ４Ｄ２Ｄ３２）
ＰＮＭ２−ｎｎｎ（４バイト）（Ｏｐｔｉｏｎ）
ＮＭ２（２バイトコード）へのポインタ
ＰＮＭ２−Ｓは、メモリカードを代表する名前のポインタ
ｎｎｎ（＝１〜４０８）は、曲名のポインタ
ポインタは、ブロック内の開始位置（２バイト）と文字コードタイプ（２ビット）とデータサイズ（１４ビット）を記述
ＮＭ２−ｎｎｎ（Ｏｐｔｉｏｎ）
２バイトコードで、メモリカード名、曲名データを可変長で記述
名前データの終端コード（０ｘ００００）を書き込む。
【０１３４】
第３０図は、１ＳＵがＮバイトの場合のＡＴＲＡＣ３データファイルＡ３Ｄｎｎｎｎのデータ配列（１ブロック分）を示す。このファイルは、１スロット＝８バイトである。第３０図では、各スロットの先頭（０ｘ００００〜０ｘ３ＦＦ８）の値が示されている。ファイルの先頭から４個のスロットがヘッダである。前述したデータ構成の一例におけるデータファイル（第１７図参照）の属性ヘッダに続くデータブロックと同様に、ヘッダが設けられる。すなわち、このヘッダには、ＢＬＫＩＤ−Ａ３Ｄ（４バイト）、メーカーコードＭＣｏｄｅ（２バイト）、暗号化に必要なＢＬＯＣＫ  ＳＥＥＤ（８バイト）、最初に作られたコンテンツ累積番号ＣＯＮＮＵＭ０（４バイト）、トラック毎の連続番号ＢＬＯＣＫ  ＳＥＲＩＡＬ（４バイト）、暗号化／復号化に必要なＩＮＩＴＩＡＬＩＺＡＴＩＯＮ  ＶＥＣＴＯＲ（８バイト）が書かれる。なお、ブロックの最後の一つ前のスロットに、ＢＬＯＣＫ  ＳＥＥＤが二重記録され、最後のスロットにＢＬＫＩＤ−Ａ３ＤおよびＭＣｏｄｅが記録される。そして、前述したデータ構成の一例と同様に、ヘッダの後にサウンドユニットデータＳＵ−ｎｎｎｎが順に配される。
【０１３５】
第３１図は、付加情報を記述するための付加情報管理ファイルＩＮＦＬＩＳＴのより詳細なデータ構成を示す。他のデータ構成においては、このファイルＩＮＦＬＩＳＴの先頭（０ｘ００００）には、下記のヘッダが記述される。ヘッダ以降にポインタおよびデータが記述される。
【０１３６】
ＢＬＫＩＤ−ＩＮＦ（４バイト）
ブロックの内容を特定する固定値（ＩＮＦ＝０ｘ４９４Ｅ４６４Ｆ）
Ｔ−ＤＡＴ（２バイト）
総データ数を記述（０〜４０９）
ＭＣｏｄｅ（２バイト）
記録した機器のメーカーコード
ＹＭＤｈｍｓ（４バイト）
記録更新日時
ＩＮＦ−ｎｎｎ（４バイト）
付加情報のＤＡＴＡ（可変長、２バイト（スロット）単位）へのポインタ
開始位置は、上位１６ビットで示す（００００〜ＦＦＦＦ）
ＤａｔａＳｌｏｔ−００００の（０ｘ０８００）先頭からのオフセット値（スロット単位）を示す。
データサイズは、下位１６ビットで示す（０００１〜７ＦＦＦ）（最上位ビットＭＳＢに無効フラグをセットする。ＭＳＢ＝０（有効を示す）、ＭＳＢ＝１（無効を示す）
データサイズは、その曲のもつ総データ数を表す。
（データは、各スロットの先頭から始まり、データの終了後は、スロットの終わりまで００を書き込むこと）
最初のＩＮＦは、アルバム全体の持つ付加情報を示すポインタ（通常ＩＮＦ−４０９で示される）
【０１３７】
第３２図は、付加情報データの構成を示す。一つの付加情報データの先頭に８バイトのヘッダが付加される。この付加情報の構成は、上述したデータ構成の一例における付加情報の構成（第１２図Ｃ参照）と同様のものである。すなわち、ＩＤとしてのＩＮ（１バイト）、キーコードＩＤ（１バイト）、個々の付加情報の大きさを示すＳＩＺＥ（２バイト）、メーカーコードＭＣｏｄｅ（２バイト）が書かれる。さらに、ＳＩＤ（１バイト）は、サブＩＤである。
【０１３８】
上述したこの発明の一実施形態では、メモリカードのフォーマットとして規定されているファイルシステムとは別に音楽用データに対するトラック情報管理ファイルＴＲＫＬＩＳＴを使用するので、ＦＡＴが何らかの事故で壊れても、ファイルを修復することが可能となる。第３３図は、ファイル修復処理の流れを示す。ファイル修復のためには、ファイル修復プログラムで動作し、メモリカードをアクセスできるコンピュータ（ＤＳＰ３０と同様の機能を有するもの）と、コンピュータに接続された記憶装置（ハードディスク、ＲＡＭ等）とが使用される。最初のステップ１０１では、次の処理がなされる。なお、第２５図〜第３２図を参照して説明したトラック管理ファイルＴＲＫＬＩＳＴに基づいてファイルを修復する処理を説明する。
【０１３９】
ＦＡＴが壊れたフラッシュメモリの全ブロックを探索し、ブロックの先頭の値（ＢＬＫＩＤ）がＴＬ−０を探す。このフラッシュメモリの全ブロックを探索し、ブロックの先頭の値（ＢＬＫＩＤ）がＴＬ−１を探す。このフラッシュメモリの全ブロックを探索し、ブロックの先頭の値（ＢＬＫＩＤ）がＮＭ−１を探す。このフラッシュメモリの全ブロックを探索し、ブロックの先頭の値（ＢＬＫＩＤ）がＮＭ−２を探す。この４ブロック（トラック情報管理ファイル）の全内容は、修復用コンピュータによって例えばハードディスクに収集する。
【０１４０】
トラック情報管理ファイルの先頭から４バイト目以降のデータから総トラック数ｍの値を見つけ把握しておく。トラック情報領域ＴＲＫＩＮＦ−００１の先頭から２０バイト目、１曲目のＣＯＮＮＵＭ−００１とそれに続くＰ−００１の値を見つける。Ｐ−００１の内容から構成されるパーツの総数を把握し、続くＰＲＴＩＮＦの中のトラック１を構成する全てのＰＲＴＳＩＺＥの値を見つけ出し、それらを合計した総ブロック（クラスタ）数ｎを計算し、把握しておく。
【０１４１】
トラック情報管理ファイルは見つかったので、ステップ１０２では、音のデータファイル（ＡＴＲＡＣ３データファイル）を探索する。フラッシュメモリの管理ファイル以外の全ブロックを探索し、ＡＴＲＡＣ３データファイルであるブロックの先頭の値（ＢＬＫＩＤ）がＡ３Ｄのブロック群の収集を開始する。
【０１４２】
Ａ３Ｄｎｎｎｎの中で先頭から１６バイト目に位置するＣＯＮＮＵＭ０の値がトラック情報管理ファイルの１曲目のＣＯＮＮＵＭ−００１と同一で、２０バイト目からのＢＬＯＣＫ  ＳＥＲＩＡＬの値が０のものを探し出す。これが見つかったら、次のブロック（クラスタ）として同一のＣＯＮＮＵＭ０の値で、２０バイト目からのＢＬＯＣＫ  ＳＥＲＩＡＬの値が＋１されたもの（１＝０＋１）を探し出す。これが見つかったら、同様に、次のブロック（クラスタ）として同一のＣＯＮＮＵＭ０の値で、２０バイト目からのＢＬＯＣＫ  ＳＥＲＩＡＬの値が＋１されたもの（２＝１＋１）を探し出す。
【０１４３】
この処理を繰り返して、トラック１の総クラスタであるｎ個になるまでＡＴＲＡＣ３データファイルを探す。全てが見つかったら、探したブロック（クラスタ）の内容を全てハードディスクに順番に保存する。
【０１４４】
次のトラック２に関して、上述したトラック１に関する処理を行う。すなわち、ＣＯＮＮＵＭ０の値がトラック情報管理ファイルの１曲目のＣＯＮＮＵＭ−００２と同一で、２０バイト目からのＢＬＯＣＫ  ＳＥＲＩＡＬの値が０のものを探し出し、以下、トラック１の場合と同様に、最後のブロック（クラスタ）ｎ’までＡＴＲＡＣ３データファイルを探し出す。全てが見つかったら、探したブロック（クラスタ）の内容を全て外部のハードディスクに順番に保存する。
【０１４５】
全トラック（トラック数ｍ）について、以上の処理を繰り返すことによって、全てのＡＴＲＡＣ３データファイルが修復用コンピュータが管理する外部のハードディスクに収集される。
【０１４６】
そして、ステップ１０３では、ＦＡＴが壊れたメモリカードを再度初期化し、ＦＡＴを再構築し、所定のディレクトリを作り、トラック情報管理ファイルと、ｍトラック分のＡＴＲＡＣ３データファイルをハードディスク側からメモリカードへコピーする。これによって、修復作業が完了する。
【０１４７】
なお、管理ファイル、データファイルにおいて、重要なパラメータ（主としてヘッダ内のコード）を二重に限らず、三重以録しても良く、重要なパラメータに対して専用のエラー訂正符号の符号化を行うようにしても良い。また、このように多重記録する場合の位置は、ファイルの先頭および末尾の位置に限らず、１ページ単位以上離れた位置であれば有効である。
【０１４８】
この発明は、メモリカードに記録されているデータファイル（ＡＴＲＡＣ３ファイル）の異常検出ができるものである。以下、第１の実施形態である第７図〜第２４図、第２の実施形態である第２５図〜第３２図を参照して異常検出に関連する部分をより詳細に説明する。
【０１４９】
ここで、現在のメモリカードに期待されている圧縮率は、上述した第２０図からも分かるように、１／８〜１／４３程度である。現在のＡＴＲＡＣ３で用いられる１０２４サンプル／１チャンネルを例に取れば処理の単位であるＳＵのデータ量（以下、ＳＵの値と称する）が２５６バイト〜４８バイト程度の範囲である。
【０１５０】
このＳＵは、１ブロックに５０個程度含まれている。この一実施形態は、この１ブロックの先頭のあるＳＵの１バイトにある固定値を必ずセットしておけば、暗号を解いて固定値を検出するだけで、正しく暗号化がされたオーディオデータか否かを判定する。例えば、１秒おきに正しく暗号化がされているか否かを判定することができる。そして、異常な再生出力となることが検出された場合は、速やかにミューティングや表示を行う。上述した第１図に示すレコーダにおいては、Ｄ／Ａ変換器１８において、ミューティングを行い、異常な再生出力が発生することを防止するようにしている。なお、異常な検出が行われた場合は、伸張処理を禁止しても良い。
【０１５１】
さらに、この発明の一実施形態について、記録時の処理について、第３４図に示すブロック図を用いて説明する。上述した第１図に示すように、オーディオエンコーダ／デコーダＩＣ１０からＡＴＲＡＣ３で圧縮されたオーディオデータがセキュリティＩＣ２０へ供給される。この第３４図では、オーディオエンコーダ７１からＡＴＲＡＣ３で圧縮されたオーディオデータが検出部７３のシフトレジスタ７４へ供給される。シフトレジスタ７４から暗号器７７へオーディオデータが供給される。一例として、第３５図に示すシリアル信号がオーディオエンコーダ７１からシフトレジスタ７４へ供給される。圧縮されたオーディオデータがオーディオエンコーダ７１からシフトレジスタ７４へ出力されるタイミングは、バイトカウンタ７２によって制御される。また、読み出すブロックの先頭のタイミングは、バイトカウンタ７２に予めセットされている。
【０１５２】
１ブロックの中には約５０のＳＵが含まれており、この先頭のＳＵの最初の１バイトがシフトレジスタ７４に取り込まれたタイミングで、一致検出回路７５によって、このブロックの先頭のＳＵの最初の１バイトの上位６ビットと、固定値ＶＦ１（すなわち（１０１０００））との一致検出が行われる。その判定結果Ｓｃ１は、一致検出回路７５から出力される。このように、この検出部７３では、ＡＴＲＡＣ３が施されたＳＵの１ブロックの先頭の１バイトが固定値ＶＦ１に設定されているか否かが確認される。暗号器７７では、供給されたオーディオデータに対して、キー７８を用いて、暗号化が施される。暗号器７７で暗号化されたデータは、メモリカード４０に書き込まれると共に、復号器８１へ供給される。
【０１５３】
復号器８１では、キー７８と同じキー８２を使用して暗号化されたデータが復号され、第３５図に示すようなシリアル信号に変換される。復号器８１から出力されるシリアル信号は、検出部８４のシフトレジスタ８５へ供給される。復号器８１からシフトレジスタ８５へ出力されるタイミングは、バイトカウンタ８３によって制御される。読み出すブロックの先頭のタイミングは、バイトカウンタ８３に予めセットされている。シフトレジスタ８５には、１ブロックの中に約５０個ほど含まれるＳＵの先頭の最初の１バイトが取り込まれる。一致検出回路８６では、取り込まれた１バイトの上位６ビットと、固定値ＶＦ２（すなわち（１０１０００））との一致検出が行われる。その判定結果Ｓｃ２は、一致検出回路８６から出力される。
【０１５４】
そして、一致検出回路７５からの判定結果Ｓｃ１と、一致検出回路８６からの判定結果Ｓｃ２との論理積（ＡＮＤ）によって、シフトレジスタ７４および８５に保持されている１バイトのデータの上位６ビットと、固定値ＶＦ１およびＶＦ２が一致していると判定された場合、ヘッダＯＫとして、判定結果のステータスが出力される。また、一致しなかったと判定された場合、再生時は、すぐに再生音にミュートがかけられ、録音時は警告するか、システムにリセットをかけて異常な再生出力となる状態が解決するか様子をみる。
【０１５５】
実際は、例えば５０個毎に特定のＳＵにだけ固定値ＶＦ１またはＶＦ２をセットするのは大変なので、全部のＳＵに固定値ＶＦ１またはＶＦ２をセットしてその一部のみ切り取りをするような方法になる。固定値ＶＦ１またはＶＦ２が検出されない場合は、エラーフラグが立つ。
【０１５６】
また、全ＳＵに固定値をセットする方法によれば、圧縮モードの違いや、ＬＲの位相ズレなどの異常も併せて検出が可能となる。具体的には、上述した第２１図に示すように、この実施形態では、圧縮モードがＤｕａｌモードとＪｏｉｎｔモードの２種類があり、且つモノラルがあるので、合計３種類の記録方法がある。ヘッダの１バイトを
１０１０００−００：Ｄｕａｌ（Ｌ）
１０１０００−０１：Ｄｕａｌ（Ｒ）
１０１０００−１０：Ｊｏｉｎｔ
１０１０００−１１：モノラル
以上のように定義する。
【０１５７】
上述した一致検出回路７５または８６において、シフトレジスタ７４または８５に保持される１バイトの上位６ビットは、固定値ＶＦ１またはＶＦ２と一致検出が行われ、下位２ビットによって、その記録方法が定義される。これにより、このオーディオデータの異常の検出と、圧縮モードの検出が同時に行える。また、圧縮モードの検出が行えることによって、異なる圧縮モードのコンバインなどの混乱の回避も可能である。
【０１５８】
そして、メモリカード４０に既に記録されている暗号化が施されたデータを再生する時の処理について、第３６図を用いて説明する。このとき、上述した第３４図に示すブロックと同じ機能となるブロックには同じ参照符号を付し、その説明を省略する。メモリカード４０から読み出され、暗号化が施されたデータが復号器８１へ供給される。検出部８４では、再生されるオーディオデータの異常な再生出力を検出することができる。再生出力が異常となると判定された場合、再生時はすぐに再生音にミューティングされ、例えば、上述したように、Ｄ／Ａ変換器１８に対してミューティング信号が供給される。シフトレジスタ８５から出力されるデータは、オーディオデコーダ８８へ供給される。オーディオデコーダ８８では、供給されたデータが再生される。
【０１５９】
ここで、上述した暗号器７７によってなされる暗号化の具体的なものとして、ＤＥＳの使用に際して規定されている４つの利用モードの１つであるＣＢＣ（Cipher Block Chaining ）モードと呼ばれる暗号化を施すものを説明する。このＣＢＣモードを採用している場合には、トラックの先頭から１番目のブロック以外のブロックは、常に１つ前のブロックの最後のＳＵの８バイトを記憶しておき、エンコードの後、すぐにデコードして、次のブロックの先頭に設けられている固定値が再現できるかのチェックを１ブロックおき（時間にして約１秒おき）に続けなければならない。
【０１６０】
ＣＢＣモードでは、トラックの先頭から１番目のブロックの先頭のＳＵの最初の８バイトＰ１は、イニシャライゼイション・ベクトルＩＮＶと排他的論理和（ＥＸＯＲ）が行われ、キーＫによって暗号化が行われる。ここで、ＤＥＳ：暗号化、Ｐｉ：平文、Ｃｉ：暗号文、Ｋ：キー、(+) ：排他的論理和の記号と表記すると、
ＤＥＳ（Ｐ１(+) ＩＮＶ，Ｋ）＝Ｃ１
となる。
トラックの頭から１番目のブロック以外のブロックの暗号化には、直前の暗号化した出力（暗号文）Ｃ１を必要とするので、次の８バイトの暗号化は、
ＤＥＳ（Ｐ２(+) Ｃ１，Ｋ）＝Ｃ２
となる。
【０１６１】
このように、暗号化は８バイトの単位でＤＥＳが行われるため、ブロックの先頭の８バイト（先頭データ）を暗号化するために直前のＳＵの最後の暗号化８バイト（直前データ）を必要とするので、暗号器７７には、先頭データおよび直前データを記憶することができる一時保管メモリが必要となる。
【０１６２】
そして、上述した復号器８１によって、暗号文の復号が行われる。ここで、ＩＤＥＳ：復号化と表記すると、
ＩＤＥＳ（Ｃ１，Ｋ）(+) ＩＮＶ
＝Ｐ１(+) ＩＮＶ(+) ＩＮＶ＝Ｐ１
となる。
トラックの頭から１番目のブロック以外のブロックの復号には、直前の暗号文Ｃ１を必要とするので、次の８バイトの復号化は、
ＩＤＥＳ（Ｃ２，Ｋ）(+) Ｃ１
＝Ｐ２(+) Ｃ１(+) Ｃ１＝Ｐ２
となる。
【０１６３】
このように、復号は暗号化と同様８バイトの単位でＤＥＳが行われるため、ブロックの先頭の暗号文８バイト（先頭データ）を復号するために直前のＳＵの最後の暗号文８バイト（直前データ）を必要とするので、復号器８１には、先頭データおよび直前データを記憶することができる一時保管メモリが必要となる。
【０１６４】
このように、記録時のＡＴＲＡＣ３の出力をチェックすることができる。さらに、暗号をかけた後でもブロックの先頭データと直前データとを一時記憶する一時保管メモリを有する復号器を用意することによって、エンコードしたデータのチェックを同様に行うことができる。
【０１６５】
第３７図に、この発明における記録再生装置のブロック図を示す。ＣＤ、インターネットなどからディジタルオーディオ信号が入力端子９１に入力されて、ＡＴＲＡＣ３エンコーダ９２において、高能率符号化が施されて圧縮されたディジタルオーディオ信号に変換される。ＡＴＲＡＣ３エンコーダ９２において、圧縮されたディジタルオーディオ信号は、ＳＵ毎に変換され、ＳＵ毎にブロック化されて出力される。ＳＵ単位のデータ長は、２５６バイト〜４８バイトと可変長である。これは、ＡＴＲＡＣ３というエンコード方法が可変レートでの圧縮を可能としているからである。
【０１６６】
ＡＴＲＡＣ３エンコーダ９２から出力されるブロック化された圧縮ディジタルオーディオ信号に対して所定タイミングで固定値発生器９３から出力される固定値ＶＦが加算器９５に加算される。固定値ＶＦを付加するタイミングは、タイミング制御器９４において、制御される。
【０１６７】
タイミング制御器９４は、後述する暗号化を施す単位である５０ＳＵの先頭のＳＵに対してのみ固定値ＶＦを付加しても良い。この場合には、ＡＴＲＡＣ３エンコーダ９２からブロック情報をタイミング制御器９４でカウントして固定値発生器９３を制御するようにする。さらに、タイミング制御器９４は、ＡＴＲＡＣ３エンコーダ９２から出力される全ＳＵに対して固定値ＶＦを付加しても良い。この場合には、復調時に暗号化を解くタイミング（５０ＳＵ）毎に固定値を抽出して、後のＳＵに付加された固定値は破棄するようにすれば良い。
【０１６８】
加算器９５において、加算された圧縮ディジタルオーディオ信号と固定値は、暗号化器９６において、キー９７から供給されるキーを用いて所定の暗号化が施される。この発明の実施形態では、ＤＥＳ（Data Encrypotion Standard ）に基づく暗号化が施される。暗号化器９６において、暗号化が施された圧縮ディジタルオーディオ信号と固定値は、所定のブロック単位不揮発性メモリ９８に記録される。
【０１６９】
ここで、固定値発生器９３で発生する固定値は、ＶＦと１つの固定値のみだったが、例えばオーディオチャンネル毎に固定値を変化させて記録しても良い。さらに、この発明は、上述のようにエンコード方法として可変レートでの圧縮方法を適応しているので圧縮率に応じて固定値を変化させて記録しても良い。
【０１７０】
復号時には、不揮発性メモリ９８に記録された暗号および圧縮が施されたディジタルオーディオ信号を読み出して暗号復号器９９において、キー１００から供給されるキーによって復号処理が施される。暗号復号器９９において、暗号化が解かれた圧縮が施されたディジタルオーディオ信号ＡＴＲＡＣ３データがブロック化され、出力される。なお、ディジタルオーディオ信号ＡＴＲＡＣ３データに所定のタイミングで固定値ＶＦが付加されている。
【０１７１】
ブロック化された圧縮が施されたディジタルオーディオ信号ＡＴＲＡＣ３データと、固定値ＶＦとがタイミング制御器１０１からのタイミングに基づいて減算器１０２で分離される。タイミング制御器１０１では、暗号復号器９９からブロック情報を受信して固定値を抽出するタイミングが制御される。
【０１７２】
減算器１０２で抽出された固定値ＶＦと固定値メモリ１０３に記憶されている固定値とが比較器１０１４において比較される。比較器１０４において、減算器１０２で抽出された固定値ＶＦと固定値メモリ１０３に記憶されている固定値が一致した場合には、暗号化器９６および暗号復号器９９での暗号化、復号化が異常なく、施されていることとなる。比較器１０４において、暗号化、復号化が異常なく施されていると判断した場合には、検査結果をＡＴＲＡＣ３デコーダ１０５において圧縮が施されたディジタルオーディオ信号ＡＴＲＡＣ３データに対するデコード処理を許可する。一方、比較器１０４において、暗号化、復号化が異常有りと判断した場合には、ＡＴＲＡＣ３デコーダ１０５において、圧縮が施されたディジタルオーディオ信号ＡＴＲＡＣ３データに対するデコード処理を不許可にする。これによって、暗号が正しく成されたか否かに応じて圧縮デコードの許可／不許可を制御する。
【０１７３】
さらに、エンコード時に固定値をオーディオチャンネル毎に変化させた場合には、デコード時に固定値メモリ１０３に予め複数の固定値を記憶しておき、比較器１０４において、減算器１０２で抽出された固定値ＶＦと順次比較することで、オーディオチャンネルの特定を行う。特定されたオーディオチャンネルに応じてＡＴＲＡＣ３デコーダ１０５における伸張処理が制御される。
【０１７４】
さらに、エンコード時に固定値を圧縮率毎に変化させた場合には、デコード時に固定値メモリ１０３に予め複数の固定値を記憶しておき、比較器１０４において、減算器１０２で抽出された固定値ＶＦと順次比較することで圧縮率の特定を行う。特定された圧縮率に応じてＡＴＲＡＣ３デコーダ１０５における伸張処理が制御される。
【０１７５】
【発明の効果】
この発明に依れば、暗号化が施されていても、そのブロックの先頭のＳＵの１バイトが所定値か否かを判定することによって、そのブロックの異常を検出することができるので、異常な再生出力を防止することができる。また、既に記録されているデータを再生するときに、そのデータの再生出力が異常となるような場合、そのデータの再生出力を防止することができる。さらに、同時に圧縮のモードの検出を行うこともでき、異なる圧縮モードのコンバインなどの混乱を回避することもできる。
【図面の簡単な説明】
【図１】この発明の不揮発性メモリカードを使用したデジタルオーディオレコーダ／プレーヤーに関するブロック図である。
【図２】この発明に適応されるＤＳＰの内部ブロック図である。
【図３】この発明に適応されるメモリカードの内部ブロック図である。
【図４】この発明に適応されるメモリカードを記憶媒体とするファイル管理構造を示す模式図である。
【図５】この発明に適応されるメモリカード内のフラッシュメモリのデータの物理的構造である。
【図６】この発明に適応されるメモリカード内のデータ構造である。
【図７】メモリカード内に記憶されるファイル構造を示す枝図面である。
【図８】メモリカード内に記憶されるサブディレクトリである再生管理ファイルＰＢＬＩＳＴ. ＭＳＦのデータ構造である。
【図９】連続した１つのＡＴＲＡＣ３データファイルを所定単位長ごとに分割するとともに属性ファイルを付加した場合のデータ構造図である。
【図１０】この発明のコンバイン編集処理および分割編集処理を説明するための構造図である。
【図１１】再生管理ファイルＰＢＬＩＳＴのデータ構造図である。
【図１２】再生管理ファイルＰＢＬＩＳＴのデータ構造図である。
【図１３】付加情報データの種類の対応表である。
【図１４】上記付加情報データの種類の対応表である。
【図１５】付加情報データの種類の対応表である。
【図１６】付加情報データのデータ構造である。
【図１７】ＡＴＲＡＣ３データファイルの詳細なデータ構造図である。
【図１８】ＡＴＲＡＣ３データファイルを構成する属性ヘッダーの上段のデータ構造図である。
【図１９】ＡＴＲＡＣ３データファイルを構成する属性ヘッダーの中段のデータ構造図である。
【図２０】録音モードの種類と各録音モードにおける録音時間等を示す表である。
【図２１】コピー制御状態を示す表である。
【図２２】ＡＴＲＡＣ３データファイルを構成する属性ヘッダーの下段のデータ構造図である。
【図２３】ＡＴＲＡＣ３データファイルのデータブロックのヘッダーのデータ構造図である。
【図２４】この発明におけるＦＡＴ領域が破壊された場合の回復方法を示すフローチャートである。
【図２５】メモリカード４０内に記憶されるファイル構造を示す第２の実施形態における枝図面である。
【図２６】トラック情報管理ファイルＴＲＫＬＩＳＴ．ＭＳＦとＡＴＲＡＣ３データファイルＡ３Ｄｎｎｎｎｎ．ＭＳＡとの関係を示す図である。
【図２７】トラック情報管理ファイルＴＲＫＬＩＳＴ．ＭＳＦの詳細なデータ構造、
【図２８】名前を管理するＮＡＭＥ１の詳細なデータ構造である。
【図２９】名前を管理するＮＡＭＥ２の詳細なデータ構造である。
【図３０】ＡＴＲＡＣ３データファイルＡ３Ｄｎｎｎｎｎ．ＭＳＡの詳細なデータ構造である。
【図３１】付加情報を示すＩＮＦＬＩＳＴ. ＭＳＦの詳細なデータ構造である。
【図３２】付加情報データのを示すＩＮＦＬＩＳＴ. ＭＳＦの詳細なデータ構造である。
【図３３】この発明の第２の実施形態におけるＦＡＴ領域が破壊された場合の回復方法を示す遷移図である。
【図３４】変調および復調装置におけるブロック図である。
【図３５】サウンドユニットＳＵ単位で固定値が付加された場合のデータ構造図である。
【図３６】復号装置におけるブロック図、第３７図は、記録再生装置におけるブロック図である。
【符号の説明】
１０  オーディオエンコーダ／デコーダＩＣ
２０  セキュリティＩＣ
３０  ＤＳＰ
４０  メモリカード
４２  フラッシュメモリ
５２  セキュリティブロック
ＰＢＬＩＳＴ  再生管理ファイル
ＴＲＫＬＩＳＴ  トラック情報管理ファイル
ＩＮＦＬＩＳＴ  付加情報管理ファイル
Ａ３Ｄｎｎｎ  オーディオデータファイル
【図１】
0004524921.tif 000002
【図２】
0004524921.tif 000003
【図３】
0004524921.tif 000004
【図４】
0004524921.tif 000005
【図５】
0004524921.tif 000006
【図６】
0004524921.tif 000007
【図７】
0004524921.tif 000008
【図８】
0004524921.tif 000009
【図９】
0004524921.tif 000010
【図１０Ａ】
0004524921.tif 000011
【図１０Ｂ】
0004524921.tif 000012
【図１０Ｃ】
0004524921.tif 000013
【図１１】
0004524921.tif 000014
【図１２Ａ】
0004524921.tif 000015
【図１２Ｂ】
0004524921.tif 000016
【図１２Ｃ】
0004524921.tif 000017
【図１３】
0004524921.tif 000018
【図１４】
0004524921.tif 000019
【図１５】
0004524921.tif 000020
【図１６Ａ】
0004524921.tif 000021
【図１６Ｂ】
0004524921.tif 000022
【図１６Ｃ】
0004524921.tif 000023
【図１６Ｄ】
0004524921.tif 000024
【図１６Ｅ】
0004524921.tif 000025
【図１７】
0004524921.tif 000026
【図１８】
0004524921.tif 000027
【図１９】
0004524921.tif 000028
【図２０】
0004524921.tif 000029
【図２１】
0004524921.tif 000030
【図２２】
0004524921.tif 000031
【図２３】
0004524921.tif 000032
【図２４】
0004524921.tif 000033
【図２５】
0004524921.tif 000034
【図２６】
0004524921.tif 000035
【図２７】
0004524921.tif 000036
【図２８】
0004524921.tif 000037
【図２９】
0004524921.tif 000038
【図３０】
0004524921.tif 000039
【図３１】
0004524921.tif 000040
【図３２】
0004524921.tif 000041
【図３３】
0004524921.tif 000042
【図３４】
0004524921.tif 000043
【図３５】
0004524921.tif 000044
【図３６】
0004524921.tif 000045
【図３７】
0004524921.tif 000046
0004524921.tif 000047