(57)【要約】【課題】データが光記録メディアの欠陥領域に書き込まれないようにする。【解決手段】本発明では、ホストは、書き込みコマンドを提供する前に、光ディスクに／からデータを記録／再生するデバイスに欠陥領域に関する情報を要求する信号を提供することによって、リアルタイム・データの書き込みを制御する。したがって、返された欠陥領域情報に基づいて、データが欠陥領域に書き込まれないような書き込みコマンドを生成することができる。別の方法として、ホストが光ディスクに／からデータを記録／再生するデバイスに最初に書き込みコマンドを提供し、それに対して欠陥領域に関する情報が返される場合もある。このように、ホストは、返された欠陥領域情報に基づいて、データが欠陥領域に書き込まれないような新しい書き込みコマンドを生成して提供する。【選択図】  図７
2006190467.tif 000002
【特許請求の範囲】
【請求項１】
ホスト・デバイスからインターフェースを介して光記録／再生デバイスに書き込み／読み取りコマンドを転送することにより、光記録メディアにデータを記録し、または光記録メディアからデータを再生する方法において、
書き込みまたは読み取られるデータがリアルタイム・データであるか否かを判断するステップと；
データがリアルタイム・データである場合、書き込み／読み取りコマンドを転送する前に光記録／再生デバイスに欠陥管理領域に記録された欠陥ブロックのリストを要求するステップと；
記録／再生デバイスから受信した欠陥ブロックのリストに基づいて書き込み／読み取りコマンドを転送し、書込み又は読取りモードで欠陥ブロックを除くことを特徴とする方法。
【請求項２】
光記録メディアにデータを記録し、または光記録メディアからデータを再生する方法において、
リアルタイム・データを書き込む前に、指定された書込み領域における、欠陥管理領域の欠陥リストにリストされた欠陥ブロックの存在を決定するステップと、
データの書込みの間に欠陥ブロックに書き込まれないように光記録メディアにリアルタイム・データを書き込むステップと、
その書き込まれたデータに基づいてファイル構造を構築するステップと
を有することを特徴とする方法。
【請求項３】
欠陥ブロックが２次欠陥リスト（ＳＤＬ）にリストされることを特徴とする請求項２に記載の方法。
【請求項４】
ファイル構造がファイル・サイズ情報と欠陥ブロックを除きながら書き込まれたデータの開始位置とを含むことを特徴とする請求項２に記載の方法。
【請求項５】
ファイル構造が欠陥ブロックに基づいて複数のサブファイル構造に分割され、そのサブファイルがファイル・サイズ情報と欠陥ブロックを除きながら書き込まれたデータの開始位置とを含むことを特徴とする請求項２に記載の方法。
【請求項６】
欠陥ブロックが論理セクタ番号（ＬＳＮ）をそのまま有することを特徴とする請求項２に記載の方法。
【請求項７】
光記録メディアにデータを記録し、または光記録メディアからデータを再生する方法において、
（ａ）欠陥領域に関する情報を読み取るステップと、
（ｂ）ステップ（ａ）で読み取った欠陥領域に関する情報を参照してリアルタイムにデータを書き込むステップと、
（ｃ）リアルタイムにデータを書き終えたのち、欠陥領域の情報に関連したファイル・アーキテクチャを光記録メディアに書き込むステップと
を有し、そのファイル・アーキテクチャが欠陥領域によって区切られた少なくとも２つのサブファイル・アーキテクチャを含み、その欠陥領域を含まないことを特徴とする方法。
【請求項８】
ファイル・アーキテクチャはユニバーサル・ディスク・フォーマット（ＵＤＦ）システムの情報制御ブロック（ＩＣＢ）である請求項７に記載の方法。
【請求項９】
光記録メディアにデータを記録し、または光記録メディアからデータを再生する方法において、
（ａ）リアルタイム・データを記録するとのコマンドを受信して、リアルタイム・データを書き込むために指定された領域に存在する欠陥領域に関する情報を読み取るステップと
、
（ｂ）欠陥領域に対する情報を参照することによって生成された書込みコマンドを受信するステップと、
（ｃ）ステップ（ｂ）で提供された書込みコマンドに応答してリアルタイム・データを書き込むステップと、
（ｄ）欠陥領域によって区切られた複数のファイル・エントリを含むファイル・アーキテクチャを書き込み、その際、その欠陥領域がファイル・アーキテクチャから除かれているステップと
を有することを特徴とする方法。
【請求項１０】
ファイル・アーキテクチャはユニバーサル・ディスク・フォーマット（ＵＤＦ）システムの情報制御ブロック（ＩＣＢ）である請求項７に記載の方法。
【請求項１１】
書込みコマンドは、情報によって識別された欠陥領域内にデータを書き込まないことを特徴とする請求項９に記載の方法。
【請求項１２】
ファイル・アーキテクチャは書き込まれたデータ・ファイルのファイル・サイズ情報と開始位置とを含むことを特徴とする請求項９に記載の方法。
【請求項１３】
ファイル・アーキテクチャはそれぞれ書き込まれたデータ・ファイルのファイル・サイズ情報と開始位置とを含む複数のファイル・エントリを含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
書き込まれたデータ・ファイルの全体のサイズが実際のデータ・ファイルのサイズと等しいことを特徴とする請求項１２に記載の方法。
【請求項１５】
光記録メディアにデータを記録し、または光記録メディアからデータを再生する方法において、
光記録メディアの欠陥管理領域にリストされた欠陥リストを参照することによってリアルタイム・ファイルを書き込む又は読み取る領域を探すステップと、
書込み又は読取りモードで予め欠陥領域を除いて、探し出した領域に書込み又は読取りコマンドに従ってファイルを書込む又は読み取るステップと、
書き込まれた又は読み取られたファイルに従ってファイル情報を書き込む又は更新するステップとを有することを特徴とする方法。
【請求項１６】
欠陥ブロックの位置情報が欠陥管理領域の２次欠陥リスト（ＳＤＬ）にリストされていることを特徴とする請求項１５に記載の方法。
【請求項１７】
書込み又は読取りコマンドが欠陥管理領域にリストされた欠陥領域によって分割されていることを特徴とする請求項１５に記載の方法。
【請求項１８】
欠陥ブロックが論理セクタ番号（ＬＳＮ）をそのまま有することを特徴とする請求項１５に記載の方法。  
【請求項１９】
ファイル情報が、欠陥ブロックを除きながら記録されたファイルのサイズを含むことを特徴とする請求項１５に記載の方法。
【請求項２０】
ファイル情報が、分割されかつ欠陥領域の間に書き込まれたそれぞれのファイル・サイズを示す複数の情報を有することを特徴とする請求項１９に記載の方法。
【請求項２１】
複数の情報がさらにそれぞれのファイルの開始位置を示すことを特徴とする請求項１５に記載の方法。
【請求項２２】
記録されたサイズが記録されたセクタの全体の長さを表していることを特徴とする請求項１９に記載の方法。
【請求項２３】
欠陥管理領域を管理するための欠陥管理領域と、
リアルタイム・データ・ファイルを含むデータ領域と、
データ領域の欠陥領域を置き換えるためのスペア領域と、
データ領域内に書き込まれたデータ・ファイルを管理するためのファイル・アーキテクチャ領域と
を有し、ファイル・アーキテクチャ領域内のファイル・アーキテクチャが少なくとも書き込まれたデータ・ファイルの長さを示しているサブ情報を含み、そのサブ情報が欠陥領域によって区切られて書き込まれていることを特徴とする記録メディア。
【請求項２４】
サブ情報が記録されたデータの全てのセクタ又は全てのブロックを少なくとも含むことを特徴とする請求項２３に記載の記録メディア。
【請求項２５】
サブ情報が、さらに、書き込まれたデータ・ファイルの開始アドレスを指示することを特徴とする請求項２３に記載の記録メディア。
【請求項２６】
ファイル・アーキテクチャがリアルタイム・データの記録終了に基づいて書き込まれるか又は更新されることを特徴とする請求項２３記載の記録メディア。  
【請求項２７】
欠陥管理領域を管理するための欠陥管理領域と、
記録されたリアルタイム・データを管理するファイルシステム情報と
を含み、そのファイルシステム情報が欠陥領域を除きながら記録されたリアルタイム・データの長さを少なくとも有するサブ情報を含むことを特徴とする光記録メディア。
【請求項２８】
記録メディアのある領域にリアルタイム・データを記録するとき、欠陥領域を除くためにそのリアルタイム・データの記録の前に欠陥領域の情報を予め参照することを特徴とする請求項２７に記載の光記録メディア。
【請求項２９】
欠陥領域内のデータがリアルタイム・データの記録の間にスペア領域の置換領域と置き換えられないことを特徴とする請求項２８に記載の光記録メディア。
【請求項３０】
サブ情報が欠陥領域を除きながらそれぞれ書き込まれることを特徴とする請求項２７に記載の光記録メディア。
【請求項３１】
サブ情報が記録されたデータの全てのセクタ又は全てのブロックを少なくとも含むことを特徴とする請求項３０に記載の記録メディア。
【請求項３２】
サブ情報が、さらに、記録されたデータの開始アドレスを指示することを特徴とする請求項２３に記載の記録メディア。
【請求項３３】
ファイル・システム情報が少なくともリアルタイム・データの記録終了に基づいて光記録メディアの領域に書き込まれるか又は更新されることを特徴とする請求項２３記載の記録メディア。  
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は書換可能型光記録メディアに関する。さらに特定すれば、光記録メディアにデータを記録し、または光記録メディアからデータを再生する方法及び光記録メディアに関する。
【背景技術】
【０００２】
光記録メディアには、ＲＯＭ（Read Only Memory）、ＷＯＲＭ（Write Once Read Many）タイム・メモリ、および繰り返し書き換えできる書換可能型メモリなどが含まれる。ＲＯＭタイプの光記録メディアには、さらにＣＤ−ＲＯＭ（Compact Disc Read Only Memory）およびＤＶＤ−ＲＯＭ（Digital Versatile Disc Read Only Memory）などが含まれる。ＷＯＲＭタイプの光記録メディアには、さらにＣＤ−Ｒ（Recordable Compact Disc）およびＤＶＤ−Ｒ（Recordable Digital Versatile Disc）などが含まれる。書換可能型には、さらにＣＤ−ＲＷ（Rewritable Compact Disc）および書換可能型ＤＶＤ（ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ、およびＤＶＤ＋ＲＷ）などが含まれる。
【０００３】
書換可能型光記録メディアに関しては、書換可能型光記録メディアに／から情報を繰り返して記録／再生（Ｒ／Ｐ）すると、光ディスクへのデータの書き込みを目的に形成された記録層の初期の割合が変化する。この変化によって光記録メディアの性能が劣化し、データ情報の記録／再生時にエラーが生じる。光ディスクの劣化領域は、光記録メディアのフォーマット時、書き込み時、及び再生時に欠陥領域となる。さらに、表面の傷や、製造時の塵および不具合も、書換可能型光記録メディア内の欠陥領域の原因となるであろう。
【０００４】
上記のいずれかの原因で形成される欠陥領域に／からデータを記録／再生しないようにするには、欠陥領域の管理が必要である。そのため、図１に示されるように、光記録メディアの欠陥領域を管理する目的で、光記録メディアのリードイン領域とリードアウト領域に欠陥管理領域（ＤＭＡ）が設けられる。さらに、データ領域はグループで管理され、各データ領域はデータを実際に書き込むユーザ領域とユーザ領域が欠陥の場合に使用するスペア領域を有する。
【０００５】
一般に、１枚のディスク（例えば、ＤＶＤ−ＲＡＭ）には４つのＤＭＡが設けられる。これらのうち、２つはリードイン領域内に設けられ、２つはリードアウト領域内に設けられる。欠陥領域の管理は重要であるため、データ保護のために４つのすべてのＤＭＡに同じデータが保持される。各ＤＭＡには、２つのブロック（３２セクタ）が含まれる。この場合、１ブロックは１６セクタで構成される。各ＤＭＡの第１ブロック（ＤＤＳ／ＰＤＬブロック）には、ディスク定義構造（ＤＤＳ）と初期欠陥リスト（ＰＤＬ）が含まれる。第２ブロック（ＳＤＬブロック）には、２次欠陥リスト（ＳＤＬ）が含まれる。
【０００６】
さらに具体的に説明すると、ＰＤＬは初期欠陥データ記憶領域を表し、ＳＤＬは２次欠陥データ記憶領域を表す。ＰＤＬには、製造中に発生した、および初期化または再初期化などのフォーマット中に特定された、すべての欠陥セクタのエントリが保存される。各エントリには、欠陥セクタに対応したセクタ番号と、エントリ・タイプが含まれる。
【０００７】
他方、ＳＤＬは、ブロック別に整理され、初期化後に発生した欠陥領域または初期化中にＰＤＬ内に取り込むことができない欠陥領域のいずれかのエントリを保持する。ＳＤＬの各エントリには、欠陥セクタを有するブロックにある最初のセクタのセクタ番号を保存する領域、および代替ブロックにある最初のセクタのセクタ番号を保持する領域が含まれる。データ領域内の欠陥領域（すなわち、欠陥セクタまたは欠陥ブロック）は、それぞれスリップ交替またはリニア交替によって、新しいセクタまたはブロックと置換される。
【０００８】
スリップ交替は、欠陥領域または欠陥セクタがＰＤＬにリストされているときに利用される。図２Ａに示されるように、ユーザ領域内のセクタに対応する欠陥セクタｍとｎがＰＤＬに記録されている場合、これらの欠陥セクタは次に利用可能なセクタで置換される。欠陥セクタをその後のセクタで置換することによって、データは正常なセクタに書き込まれる。その結果、データが書き込まれるユーザ領域は、スリップしてスペア領域内で欠陥セクタと同じ量だけ占有する。
【０００９】
リニア交替は、欠陥領域または欠陥ブロックがＳＤＬに記録されているときに利用される。図２Ｂに示されるように、ユーザ領域またはスペア領域のいずれかにあるセクタに対応する欠陥セクタｍとｎがＳＤＬに記録されている場合、これらの欠陥ブロックはスペア領域内の正常なブロックで置換される。また、欠陥ブロックに記録されるデータは、割り当てられたスペア領域に記録される。置換を実行する際、欠陥ブロックに割り当てられた物理セクタ番号（ＰＳＮ）はそのまま維持される。一方、論理セクタ番号（ＬＳＮ）は記録されるデータとともに交替ブロックに移動する。リニア交替は、データの非リアルタイム処理に有効である。
【００１０】
図３は、光ディスク記録／再生デバイスの書き込み操作に関連した部分図である。光ディスク記録／再生デバイスは、光ディスクにデータを書き込むおよび光ディスクからデータを再生する光ピックアップ、光ピックアップを移動させるピックアップ・制御装置、入力データを処理して光ピックアップに転送するまたは光ピックアップを通じて再作成されたデータを受信して処理するデータ・プロセッサ、インタフェース、およびコンポーネントを制御するマイクロ・プロセッサ（マイコン）などで構成される。
【００１１】
さらに、ホストがコマンドとデータを相互に転送できるように光ディスク記録／再生デバイスのインタフェースに接続されている。このようなホストとしては、いずれの種類のパーソナル・コンピュータでも使用することができ、光ディスク記録／再生デバイスが管理される。
【００１２】
図３では、書き込みデータが与えられたとき、ホストは光記録メディアに／からデータを記録／再生するデバイスに書き込みコマンドを与える。書き込みコマンドには、書き込み位置を指定する論理ブロック・アドレス（ＬＢＡ）と、データのサイズを示す転送長が含まれる。この後、ホストは、光記録メディアに／からデータを記録／再生するデバイスに、書き込みデータを提供する。データを受信すると同時に、データの記録／再生用デバイスは、指定されたＬＢＡからデータを書き込む。この時、記録／再生デバイスは、光記録メディア上の欠陥箇所を示すＰＤＬとＳＤＬを利用するため、欠陥領域にはデータを書き込まない。
【００１３】
すなわち、書き込み中、ＰＤＬにリストされている物理セクタはスキップされる。図４Ａに示されているように、ＳＤＬ上の物理ブロックｓｂｌｋＡとｓｂｌｋＢは、書き込みの際に、スペア領域に割り当てられている交替ブロックｓｂｌｋＣとｓｂｌｋＤに置換される。さらに、データの書き込みまたは再生中に、ＳＤＬにリストされていない欠陥ブロックまたはエラーが発生する可能性が高いブロックが存在した場合、そのブロックは欠陥ブロックと見なされる。したがって、交替ブロックはスペア領域内に配置され、欠陥ブロックのデータは再び交替ブロック内に書き込まれる。欠陥ブロックの最初のセクタ番号と交替ブロックの最初のセクタ番号が、ＳＤＬエントリ上にリストされる。
【００１４】
ファイル１に関する図４Ａにおいて、ユニバーサル・ディスク・フォーマット（ＵＤＦ）ファイル内に結果として書き込まれたファイル情報を有する、情報制御ブロック（ＩＣＢ）内のファイルの開始位置とサイズを表す部分の概念表現は、図４Ｂのように示すことができる。ファイル１は位置「Ａ」から開始するため、ファイル１内の欠陥ブロックｓｂｌｋＢはスペア領域内のスペア・ブロックｓｂｌｋＤで置換される。したがって、論理セクタの数は維持され、ファイル１用のセクタのサイズは「Ｎ」である。
【００１５】
スペア領域に割り当てられている交替ブロックによってＳＤＬ上にリストされている欠陥ブロックを置換してデータを書き込むには、光ピックアップをスペア領域にシフトしてから、ユーザ領域に戻さなければならない。しかし、シフトと戻りに要求される時間の長さは、リアルタイムでの記録と整合する。それに応じて、リアルタイムでの記録には、欠陥領域を管理する多くの方法が要求されることが示唆される。そのような方法の１つがスキップ方法である。この方法では、ＳＤＬの使用時にリニア交替が実行されず、欠陥ブロックのデータは、スリップ交替の場合のように欠陥ブロックの後の正常ブロックに書き込まれる。その結果、光ピックアップは、欠陥ブロックに合うたびにスペア領域にシフトする必要がなくなり、リアルタイム記録における光ピックアップのシフト時間を短縮することができる。
【００１６】
この時、欠陥ブロックはＬＳＮとＰＳＮを保持する。しかし、ホストの見地では、光ディスク内の論理セクタの数は固定である。したがって、たとえデータが欠陥ブロックに書き込まれない場合でもＬＳＮはスキップされた欠陥ブロックに割り当てられるため、ホストから見れば、スキップされたブロックの数と等しい数のＬＳＮがスキップによって失われる。たとえば、仮にホストから１００セクタのデータが書き込みに転送されたとしても、領域内に欠陥ブロックが１つ存在すれば、書き込まれるのは８４セクタ（１ブロック＝１６セクタ）のみである。
【００１７】
したがって、図４Ｃ内のファイル１に関しては、サイズは図４Ｄに示されるように、ＵＤＦファイル・システムのＩＣＢにＮまたはＮ−Ｌとして表すことができる。「Ｌ」は、ファイル１が書き込まれた領域でスキップされた欠陥セクタの数を表す。図４Ｃに示されるように、ファイル１のデータは、欠陥ブロックに合うまで位置「Ａ」からセクタ数「Ｍ」書き込まれる。欠陥ブロックをスキップしてから、ファイル１の書き込みが継続される。しかし、欠陥ブロックｓｂｌｋＢについては、ＬＳＮは保持されてもデータは書き込まれないため、ホストがデータをセクタ数Ｎだけ書き込むコマンドを与えても欠陥ブロックｓｂｌｋＢのＬＳＮは使用できないため、光ディスク記録／再生デバイスはセクタ数Ｎ−Ｌのみデータを書き込む。
【発明の開示】
【発明が解決しようとする課題】
【００１８】
その結果、図４Ｄにおける第１の例のようにファイル１のサイズが「Ｎ」で表される場合、実際のファイル・サイズと書き込まれるファイル・サイズは異なり、ファイル・マネージャによるファイルの管理に問題が生じる。他方、ファイル１のサイズが第２の例のように「Ｎ−Ｌ」で表される場合、ＬＳＮ間の不一致が生じる。たとえば、図４Ｃのファイル２が消去された後にファイル３が新たに書き込まれる場合、ホストのファイル・マネージャは、ファイル３のデータを位置Ｃ−Ｌから書き込むコマンドを生成する。この場合、Ｌは欠陥のセクタ数である。その結果、以前に書き込まれたファイル１のデータは破損する。従って、リアルタイムのデータが前述の方法に従って書き込まれると、ファイル・マネージャのファイル管理に誤りが生じることがある。
【００１９】
また、リアルタイムでの記録中に欠陥領域によって保持されるＬＳＮは使用することができず、そのようなＬＳＮに相当する量のデータは記録することができない。そのため、実際上、ディスク・サイズの減少が生じる。その理由は、データが書き込まれる領域に欠陥ブロックまたは欠陥セクタが存在しているか否かにかかわらず、データはホストからの書き込みコマンドに応じて固定された単位で書き込まれるためである。
【００２０】
したがって、本発明の目的は、少なくとも関連技術の問題点と欠点を解決することである。
【００２１】
本発明の目的は、光ディスクにデータの記録／再生を行う装置から返された欠陥領域情報を使用して書き込みコマンドを提供することによって、光記録メディアに／からリアルタイムでデータを記録／再生する方法を提供することである。
【００２２】
本発明の別の目的は、光ディスク内のファイルをリアルタイムで管理する方法を提供することである。
【００２３】
本発明の別の目的は、光ディスク内のファイルを管理する方法に、欠陥ブロック情報を使用してリアルタイム・データを管理する機能を提供することである。
【００２４】
本発明の別の目的は、光ディスク内のファイルを管理する方法に、スキップされた欠陥ブロック情報を使用してリアルタイム・データを管理する機能を与えることである。
【００２５】
本発明の別の目的は、光記録メディアにデータをリアルタイムで記録／再生する方法を提供することである。この方法によって、光ディスクにデータを記録／再生するデバイスは、リアルタイム・データが提供されたとき、データを書き込む前に欠陥領域を読み出し除外する。
【００２６】
本発明のその他の利点、目的、および特徴はこの後の記載において部分的に説明される。これらは、部分的には当該技術において当業者にとって以下の検証の際に明白となり、または、本発明の実施から知ることができる。本発明の目的と利点は、追加請求項で特に指摘されるように実現および達成することができる。
【課題を解決するための手段】
【００２７】
ここに具体化され広く記載されるように、本発明の目的を達成するためにかつ目的に従うために、光記録メディアに／からリアルタイムでデータを記録／再生する方法には以下が含まれる。（１）リアルタイムで書き込まれるデータが生成された場合、欠陥領域に関する情報を要求する制御信号を生成して、その制御信号を光メディアに／からデータを記録／再生するデバイスに送る。（２）制御信号が受信されたとき、制御装置に欠陥領域に関する情報を提供する。（３）欠陥領域に関する情報が手順（２）で返されたとき、データが欠陥領域に書き込まれないような書き込みコマンドを生成し、光メディアに／からデータを記録／再生するデバイスに、書き込みコマンドと書き込みデータをリアルタイムで一緒に提供する。
【００２８】
さらに特定すれば、制御装置に返される欠陥領域に関する情報は、欠陥管理領域上にリストされる欠陥領域の位置情報である。また、制御装置に返される欠陥領域に関する情報は、２次欠陥リストにリストされる欠陥ブロックに関する位置情報でもある。そのような情報には、さらに各欠陥ブロックの最初のセクタ番号が含まれる。加えて、制御装置に返されるそのような欠陥領域に関する情報は、論理セクタ番号を保持する。最終的に、制御装置に返される欠陥領域に関する情報は、ＰＤＬとＳＤＬにリストされる欠陥領域に関する位置情報である。
【００２９】
書き込みコマンドに応じてデータを書き込んでいる間に新しい欠陥ブロックに合った場合、新しい欠陥ブロックはスキップされ、データは新しい欠陥ブロックの後の正常ブロックに書き込まれる。
【００３０】
上記の方法には、さらに、書き込みコマンドに応じてデータを書き込んでいる間に新しい欠陥ブロックに合うたびに、書き込みコマンドを終了して新しい欠陥ブロックに関する情報を制御装置に返し、そのような情報が返されたとき新しい書き込みコマンドを生成して、その新しい書き込みコマンドを光ディスクにデータを記録／再生するデバイスに提供する手順の繰り返しが含まれる。上記の方法には、さらに、書き込みコマンドに応じてデータを書き込んでいる間に新しい欠陥ブロックに合った場合に、欠陥ブロックにデータをそのまま書き込む手順も含まれる。
【００３１】
本発明の別の態様では、書き込みコマンドに応じて制御装置から光記録メディアにデータを書き込むために、光メディアに／からデータを記録／再生するデバイス内で光記録メディアに記録されたデータ・ファイルを管理する方法が提供される。この方法には以下が含まれる。（１）リアルタイムで書き込まれるデータが生成された場合、欠陥領域に関する情報を要求する制御信号を生成して、その制御信号を光メディアに／からデータを記録／再生するデバイスに送る。（２）制御信号が受信されたとき、制御装置に欠陥領域に関する情報を提供する。（３）欠陥領域に関する情報が手順（２）で返されたとき、データが欠陥領域に書き込まれないような書き込みコマンドを生成し、光メディアに／からデータを記録／再生するデバイスに、書き込みコマンドと書き込みデータをリアルタイムで一緒に提供する。さらに、（４）書き込みコマンドに応じたリアルタイムのデータの記録が完了したとき、光記録メディア上の欠陥領域情報に関連したファイル・アーキテクチャの情報を書き込む。
【００３２】
上記の方法には、さらに、書き込みコマンドに応じて光記録メディアにデータを書き込んでいる間に新しい欠陥ブロックに合った場合、書き込みコマンドを終了して欠陥ブロックに関する情報を制御装置に返し、欠陥ブロックに関する情報が返されたとき新しい書き込みコマンドを生成して、その新しい書き込みコマンドを光ディスクに／からデータを記録／再生するデバイスに提供する手順が含まれる。
【００３３】
書き込みは書き込みコマンドおよび連続した欠陥セクタ数に応じて開始されるため、制御装置に返される欠陥ブロック情報は、欠陥領域に合うまで書き込まれたセクタ数である。制御装置に返される欠陥ブロック情報は、要求検知データ内の未使用領域に書き込まれた欠陥ブロック情報とともに返される。
【００３４】
書き込みコマンドに応じて光記録メディアにデータを書き込んでいる間に新しい欠陥ブロックに合った場合、上記の方法には、さらに、欠陥ブロックをスキップして、欠陥ブロックの後の正常ブロックにデータを書き込む手順が含まれる。また、制御装置から提供された書き込みコマンドが前記の手順で終了した場合、スキップした欠陥ブロックに関する情報を制御装置に返す手順も含まれる。スキップされた欠陥ブロックの情報は、要求検知データの追加領域に書き込まれた情報とともに返される。この場合、追加された長さも保存される。１つのファイルに関して書き出される情報制御ブロック（ＩＣＢ）は、返される欠陥領域によって区切られる。その際、欠陥領域はＩＣＢには書き込まれない。
【００３５】
さらに、本発明の別の態様では、光記録メディアに／からデータをリアルタイムで記録／再生する方法が提供される。次の手順が含まれる。（１）リアルタイムで記録する書き込みコマンドを制御装置から受信すると同時に、書き込みコマンドによって指定された書き込み領域内に存在する欠陥ブロックの情報を制御装置に返す。（２）上記手順で欠陥ブロックに関する情報が返されたとき、新しい書き込みコマンドを生成して、光ディスクに／からデータを記録／再生するデバイスにその書き込みコマンドを与える。および、（３）上記手順で与えられた書き込みコマンドに応じてデータを書き込む。上記手順で１ファイルの書き込みが終了したとき、１ファイルを書き込んだＩＣＢは、返される欠陥領域によって区切られる。その際、欠陥領域はＩＣＢには書き込まれない。
【００３６】
本発明の別の態様では、書き込みデータが生成され光記録メディアにデータが書き込まれる場合、光記録メディアにデータを記録／再生するデバイスでのファイルの管理方法には次の手順が含まれる。（１）リアルタイムの書き込みデータが生成された場合、欠陥領域に関する情報を読み取る。ステップ（１）で読み取った欠陥領域を除去しながら、リアルタイムの書き込みデータを書き込む。および（３）リアルタイムの書き込みデータを書き込み終えるのと同時に、欠陥領域情報と関連したファイル・アーキテクチャを光記録メディアに書き込む。１ファイルを書き込んだファイル・アーキテクチャ（ＩＣＢ）は、欠陥領域によって区切られる。その際、欠陥領域はファイル・アーキテクチャ（ＩＣＢ）には書き込まれない。
【発明の効果】
【００３７】
本発明に従った、光記録メディアに／からデータをリアルタイムで記録／再生する方法、およびそれによるファイルの管理方法には、以下の利点がある。ホストは、リアルタイム・データが提供されたとき、記録／再生デバイスに信号を提供して欠陥領域情報を要求することによってデータの書き込みを制御するため、ホストは、記録／再生デバイスから返された欠陥領域情報に基づいて、データが欠陥領域に書き込まれないような書き込みコマンドを提供することができる。代わりに、ホストは、記録／再生デバイスが欠陥領域情報を返したとき、記録／再生デバイスに書き込みコマンドを提供することによってデータの書き込みを制御するため、ホストは、記録／再生デバイスから返された欠陥領域情報に基づいて、データが欠陥領域に書き込まれないような書き込みコマンドを提供することができる。
【００３８】
さらに、リアルタイムの記録において、実際のファイル・サイズと書き込まれたファイル・サイズとの間に差異は生じない。または、ＬＳＮ間に不一致はない。欠陥領域はＬＳＮを保持する一方でＩＣＢ上の空き領域として残されるため、次のリニア交替で欠陥領域の使用を許可することによって効率を改善することができる。さらに、ＩＣＢは、欠陥領域をシフトが原因でスキップされた領域であるとして書き込まれるため、既存のファイル・システムに矛盾は生じない。その結果、既存のＵＤＦファイル・システムとの互換性がそのままの状態で保持される。最終的に、リアルタイムで記録を制御している間にディスク・アーキテクチャが未知な状態にあれば、ホストは欠陥情報を受信するため、ホストの負荷を軽減することができる。
【発明を実施するための最良の形態】
【００３９】
本発明は、以下の図面に関連して詳細に記述される。これらの図面内では、同じ参照数字は同じ参照要素を表す。
【００４０】
本発明の好ましい実施形態についてここに詳細に説明する。実施形態に関しては添付図面で説明する。
【００４１】
本発明の第１の実施形態では、リアルタイムの書き込みデータが提供された場合、ホストはあらかじめ欠陥領域に関する情報を要求する信号を、光ディスクに／からデータを記録／再生するデバイスに提供する。ホストは、記録／再生デバイスから返される欠陥領域情報を使用して書き込みコマンドを生成し、データを書き込む。本発明の２番目の実施形態では、リアルタイムの書き込みデータが提供された場合、ホストはあらかじめリアルタイムで記録するコマンドを提供する。次に、ホストは、コマンドに対応したブロック内の欠陥領域に関する情報が記録／再生デバイスから返されたときに、新しい書き込みコマンドを提供してデータを書き込む。
【００４２】
本発明には、さらにデータの書き込み中に新たに出合った欠陥ブロックを処理する方法も含まれる。１つの方法では、欠陥ブロックがスキップされ、データは欠陥ブロックの後の正常ブロックに書き込まれる。別の方法では、新しい欠陥ブロックに出合った場合に、書き込みコマンドを終了して、データの書き込みを継続するための新しい書き込みコマンドをホストから受信する。また、さらに別の方法では、欠陥ブロックにデータをそのまま書き込む。新たに出合った欠陥ブロックを処理するこのような方法は、本発明の第１の実施形態と第２の実施形態の両方に適用可能である。次に、第１の実施形態と第２の実施形態について説明する。
【００４３】
第１の実施形態
図５は、光メディアに／からデータをリアルタイムで記録／再生する方法、および本発明の第１の好ましい実施形態に従ってファイルを管理する方法を示すフローチャートである。
【００４４】
リアルタイムの記録用のデータが提供されたとき（手順５０１）、ホストは、書き込みコマンドを与える前に、光ディスクに／からデータを記録／再生するデバイスにディスクの欠陥領域情報を要求する制御信号を与える（手順５０２）。補足信号として、ＰＤＬ情報を返すために、同様の方法で、欠陥領域に関する情報を要求する制御信号をコマンド・タイプに与えても良く、また与えなくても良い。
【００４５】
記録／再生デバイスは、ホストから制御信号を受信すると、ＤＭＡにリストされている欠陥領域情報を返す（手順５０３）。ホストに返された欠陥領域情報は、ＳＤＬとＰＤＬにリストされている欠陥ブロックと欠陥セクタの位置情報である。または、ＳＤＬにリストされる欠陥ブロックの位置情報である。図６Ａに示されるように、ブロックｓｂｌｋＡとｓｂｌｋＢはＳＤＬにリストされている欠陥ブロックであり、それらの欠陥ブロックの位置情報はマイクロコンピュータによってホストに返される。
【００４６】
マイクロコンピュータは、ＳＤＬにリストされている欠陥ブロックについて最初のセクタのＰＳＮをＬＳＮに変換して、欠陥ブロックの位置情報として使用する。この場合、ホストに返されたＬＳＮと、その後の１５セクタが欠陥であると判定される。さらに、あらかじめ決定された信号を設定することによって、ホストがそのあらかじめ決定された信号を記録／再生デバイスに提供するとき、たとえリアルタイムの書き込みが実行されない場合でも、ホストに欠陥領域情報を返すことができる。
【００４７】
ホストは、欠陥領域に関して返された情報と既存のファイル・アーキテクチャを基準にして、書き込みコマンドを生成する。書き込みコマンドは、リアルタイム・データと共に記録／再生デバイスに送られる（手順５０４および５０５）。すなわち、ホストは、ＳＤＬにリストされている欠陥領域または新たに出合った欠陥領域のいずれにもデータが書き込まれないような書き込みコマンドを生成する。
【００４８】
たとえば、図６Ａについて説明すると、ホストからの要求に応じてディスクの欠陥領域情報が位置「Ａ」としてホストに返される場合、ホストは欠陥領域に関する情報を得たことになる。したがって、ホストは、位置「Ａ」に続く次の「Ｍ」セクタにデータを書き込むコマンドとともに、関連データを記録／再生デバイスに提供することができる。次に、記録／再生デバイスは、書き込みコマンドによって指示されたとおりにデータを位置「Ａ」から書き込み始める（手順５０６）。この時、書き込みコマンドは、あらかじめデータの書き込み位置を指定したコマンドである。または、コマンドは指定された位置を含む書き込みコマンドである。
【００４９】
エラーの可能性が高い欠陥ブロックが発見された場合、たとえ欠陥ブロックがＳＤＬにリストされていない場合でも、新たな欠陥ブロックはスキップされ、データは欠陥ブロックの後の正常ブロックに書き込まれる。代わりに、図８Ａに示されるように、新しい欠陥ブロックが検出されると、書き込みコマンドが終了され、データを書き込むためにホストから新しい書き込みコマンドが受信される。最終的には、図１０Ａに示されるように、新しい欠陥ブロックを検出したとき、新しい欠陥ブロックに単純にそのままデータを書き込むこともある。
【００５０】
例えば、図６Ａと図８Ａに示されるように、新しい欠陥ブロック、特に物理識別（ＰＩＤ）エラーに出合ったとき、新しいＥＥＣブロックを形成する時間が十分であれば、ブロックはデータの書き込みなしにスキップされる。しかしながら、図１０Ａに示されるように、新しいＥＥＣブロックを形成する十分な時間がない場合は、データは欠陥ブロックにそのまま書き込まれる。
【００５１】
図５と図６は、新たに出合った欠陥ブロックをスキップして、新たな欠陥ブロックの後の正常ブロックにデータを書き込む例を示す。特に、書き込みコマンドによって指定された位置にデータを書き込んでいる間に新たな欠陥ブロックに出合った場合（手順５０７）、マイクロコンピュータはブロックをスキップして、スキップしたブロックの後の使用可能な正常ブロックにデータを書き込む（手順５０８）。その後、マイクロコンピュータは、ホストからの書き込みコマンドが終了されたかどうかを判定する（手順５０９）。書き込みコマンドが終了されていない場合、プロセスは手順５０６に戻り、書き込みコマンドによって指定された位置にデータを書き込みながら、欠陥ブロックを検出するプロセスを実行する。書き込みコマンドが終了した場合、書き込みコマンドの間にスキップされた欠陥ブロックの情報はホストに返される（手順５１０）。手順５１０では、欠陥ブロックがない場合、正常な状態を表す情報がホストに返される。
【００５２】
さらに、コマンドというよりもあらかじめ決定されたプロトコルまたは信号によって、ホストはデータの書き込み中に書き込みの現在のステータスを要求する。したがって、信号を生成すると同時に、記録／再生デバイスは要求された情報をホストに提供する。プロトコルがない場合は、書き込みに関する情報は書き込みコマンドの終了後にホストに提供される。
【００５３】
欠陥ブロックに関する情報は、様々な方法の１つによってホストに返される。１つの方法では、図６Ｂに示されるように、情報は要求検知データを使用して返される。書き込みコマンドが終了したとき、マイクロコンピュータはホストにコマンド実行報告を返す。この時点で、スキップされた欠陥ブロックに関する情報は、要求検知データの補足領域に情報が記録されることによって返される。
【００５４】
たとえば、図６Ａに示されるように、書き込みコマンドが終了するまで、記録／再生デバイスはホストからの書き込みコマンドに従ってスキップ方法によってリアルタイムでデータを書き込む。この時、記録／再生デバイスは、チェック状態ステータス（ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮステータス）を検査して、エラーなどの存在をホストに指示する。ホストは、チェック状態ステータスを受信すると、要求検知コマンドを記録／再生デバイスに送り、エラー・コードを要求する。したがって、図６Ｂに示されるように、記録／再生デバイスは要求検知データをホストに返す。
【００５５】
すなわち、スキップされた欠陥ブロックの情報は、要求検知データの追加領域に第１５バイトから書き込まれ、ホストに返される。要求検知データのバイト長は可変であるため、情報の追加によって生じる追加長が第７バイトの追加検知長に書き込まれる可能性がある。したがって、本発明では、既存の要求検知データを利用して（ただし保持して）欠陥領域情報を返す。
【００５６】
記録／再生デバイスは書き込みコマンドが終了するたびにコマンドの実行中にスキップされた欠陥ブロックの情報をホストに返すため、スキップされるブロックの数は異なる。したがって、情報は、要求検知データに第１５バイトから３または４バイト単位で書き込まれる。さらに、要求検知データに書き込まれた各欠陥ブロックに関する情報には、スキップされたブロックにある最初のセクタのＬＳＮが含まれる。１つの書き込みコマンドの実行中に２つの欠陥ブロックが検出された場合、要求検知データの追加領域には２つのＬＳＮが書き込まれ、ホストに返される。その後、ホストは、ホストに返されたＬＳＮとその後の１５セクタを欠陥と見なす。
【００５７】
図５に戻って、記録／再生デバイスがホストに報告を提供した後、ファイルの書き込みが完了したかどうかの判定が行われる（手順５１１）。書き込みが完了していない場合、プロセスは手順５０４に進み、ファイルの書き込みを完了させるために新しい書き込みコマンドが提供される。
【００５８】
図６Ａに示されるように、２番目の書き込みコマンドが位置「Ｂ」で開始する場合、ホストはＳＤＬにリストされている欠陥ブロックｓｂｌｋＡとｓｂｌｋＢに関する情報をすでに知っている。したがって、ホストは、データが欠陥セクタｓｂｌｋＡとｓｂｌｋＢに書き込まれないような書き込みコマンドを提供する。たとえば、データを位置「Ｄ」からＰセクタ書き込み、欠陥ブロックｓｂｌｋＡを除外する書き込みコマンドが、書き込みデータとともに提供される。この時、書き込みコマンドは、データを位置「Ｄ」からＰセクタ書き込むコマンドであるか、又は既存ファイルの任意の空き領域からデータを書き込むコマンドである。それにもかかわらず、書き込みコマンドは欠陥領域を除外するため、書き込みコマンドでは欠陥領域による断片化が発生する。
【００５９】
したがって、ホストは、１つのファイルの書き込みを完了するために、多数の書き込みコマンドを生成して提供する必要がある。しかし、たとえ書き込みコマンドが欠陥領域によって分割されても、本発明は大幅な変更なしに既存システムに容易に組み入れることができる。マイクロコンピュータは、前述のプロセスにしたがって書き込みコマンドが完了するたびに、コマンド実行報告をホストに提供する。書き込みコマンドはホストから欠陥領域を除外して提供されるため、そのような報告のほとんどには正常な状態を示す情報が含まれる。
【００６０】
図６Ｃに示されるように、ファイルの書き込みが完了したとき、ホストは、返された欠陥領域の位置情報を基準にして、光ディスク上にあるＵＤＦファイル・システムにファイルの開始位置とサイズを表すＩＣＢを書き込む（手順５１２）。図６Ａのファイル１を例とすると、ファイル１は、位置「Ａ」からＨセクタ書き込まれる（新しい欠陥ブロックに合った箇所まで）。新しい欠陥ブロックはスキップされ、ファイル１は位置「Ｇ」からＴセクタ書き込まれる。ファイル１の書き込みは、ＳＤＬにリストされている欠陥ブロックｓｂｌｋＡとｓｂｌｋＢに関する情報をあらかじめ提供することによって、ファイル１が位置「Ｄ」からＰセクタおよび位置「Ｅ」からＵセクタ書き込まれた後に完了する。
【００６１】
結局、ファイル１のＩＣＢは、開始位置が「Ａ」でサイズがＨであるサブファイル、開始位置「Ｇ」でサイズがＴであるサブファイル、開始位置が「Ｄ」でサイズがＰであるサブファイル、および開始位置が「Ｅ」でサイズがＵであるサブファイルに分割される。すなわち、ファイル１の書き込み領域に存在する欠陥領域ｓｂｌｋＡ、ｓｂｌｋＢ、およびｓｂｌｋＥはＩＣＢに書き込まれない。その結果、書き込むファイルのサイズと実際のファイルのサイズ間における不一致と欠陥領域によって生じるＬＳＮ間の不一致とは発生しない。さらにその結果、そのような不一致を原因とするファイル・マネージャによる誤りは回避される。
【００６２】
加えて、そのようなＩＣＢは、既存のＵＤＦファイル・システムを保持しながら作成することができる。既存のシステムでさえ、１つのファイルは、しばしば連続するのではなく空き領域にシフトして書き込まれ、ファイルが断片化する結果となる。同様に、ＩＣＢは１つのファイルを単純に断片化する。本発明では、欠陥領域はＩＣＢの作成時に領域がシフトされて発生したスキップされた領域と見られる。その結果、既存のファイル・システムとの矛盾は生じない。さらに、欠陥領域はＩＣＢに書き込まれずにＬＳＮを保持するため、リニア交替による書き込み中に欠陥領域を使用することができる。スペア領域内のスペア・ブロックを使用して書き込んでいる間に出合った欠陥ブロックを置換することによって、リニア交替はディスクのユーザ領域全体を使用できるようにする。このようにして、ディスクの利用効率を改善することができる。ホストはリアルタイムの記録を制御するためのディスク・アーキテクチャについて知らない状態でディスクの欠陥情報を受信するため、ホストの負荷を軽減することができる。
【００６３】
図７は、書き込みコマンドに応じて書き込んでいる間にＳＤＬにリストされていない新たに出合った欠陥ブロックをスキップすることによって、光メディアに／からデータをリアルタイムで記録／再生する別の方法を示すフローチャートである。手順６０１から手順６０６までは図５の手順５０１から手順５０６までと同じであるため、説明は省略される。
【００６４】
図８Ａでは、書き込みコマンドによって指定された位置にデータを書き込んでいる間にエラーの可能性が高い欠陥ブロックに出合ったとき（手順６０７）、マイクロコンピュータは強制的に書き込みコマンドを停止して、欠陥ブロックに関する情報をホストに返す（手順６０８）。ホストは、欠陥ブロックに関する情報を受信すると、データを欠陥ブロックの次の正常ブロックから書き込むことができるような新しいコマンドを提供する（手順６０９）。記録／再生デバイスは、新しい書き込みコマンドを受信すると、コマンドが指定した位置、すなわち正常ブロックにデータを書き込む。
【００６５】
欠陥領域に関する情報は、様々な方法でホストに提供される。その１つは、図８Ｂに示されるような要求検知データを使用する方法である。例えば、図８Ａに示されるように、記録／再生デバイスは、欠陥ブロックｓｂｌｋＥに出合うまでリアルタイム・データを位置「Ａ」からＨセクタ書き込み続ける。その場合、記録／再生デバイスは、ホストにチェック状態ステータス（ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮステータス）を返す。チェック状態ステータスを受信すると、ホストは、エラー・コードを要求するために要求検知コマンドを記録／再生デバイスに送る。したがって、図６Ｂに示されるように、記録／再生デバイスは要求検知データをホストに返す。
【００６６】
要求検知データの長さは１５バイトである。第８、第９、第１０、および第１１バイトは、欠陥情報の送信用に予約されている。記録／再生デバイスは欠陥ブロックに出合うたびに書き込みコマンドを停止して欠陥領域情報をホストに返すため、欠陥情報は要求検知データの予約済みの第８バイトから第１１バイトに書き込まれ、ホストに返される。
【００６７】
例えば、書き込みコマンドに従ってデータが記録されたセクタの数（書き込まれたセクタ数）は第８バイトと第９バイトに書き込まれ、連続した欠陥セクタの数は第１０バイトと第１１バイトに書き込まれる。連続した欠陥セクタの数は、同じ連続した欠陥セクタにデータを書き込むコマンドを、ホストが生成して提供しないようにする目的で返される。書き込み中に欠陥である可能性が高いブロックに合った場合、マイクロコンピュータは、書き込まれたセクタの数と欠陥ブロックの１６セクタを連続した欠陥セクタの数と見て、同様の情報をホストに返す。その理由は、書き込み中に欠陥セクタに合った場合、欠陥セクタが属するブロック全体が欠陥であるとされ、ＳＤＬにリストされるためである。
【００６８】
ホストは、マイクロコンピュータから書き込まれた欠陥情報を含む要求検知データを受信すると、書き込まれたセクタの数と欠陥セクタの数を参照して新しい書き込みコマンドを提供する。特に、マイクロコンピュータからの欠陥情報を利用するため、新しいコマンドには、欠陥セクタまたはブロックの後に続く正常ブロックにおける最初のセクタ番号のＬＢＡが含まれる。従って、記録／再生デバイス内のマイクロコンピュータは、ホストから新しい書き込みコマンドを受信すると、指定された位置から、すなわち欠陥ブロックの後の正常ブロックからデータの書き込みを継続する。
【００６９】
記録／再生デバイスとホストは、光ディスクにデータを書き込んでいる間に欠陥領域に合うたびに、前述のプロセスを繰り返す。ホストからの書き込みコマンドが正常に終了した場合（手順６１０）、すなわち書き込みコマンドの実行中に欠陥ブロックに出会わなかった場合、マイクロコンピュータはホストに正常状態を返す（手順６１１）。コマンドというよりもあらかじめ決定されたプロトコルまたは信号によって、ホストはデータの書き込み中に書き込みの現在のステータスを要求する。したがって、信号を生成すると同時に、記録／再生デバイスは要求された情報をホストに与える。プロトコルがない場合は、マイクロコンピュータは、書き込みコマンドの終了後に書き込みに関する欠陥情報をホストに提供する。
【００７０】
１つのファイルの書き込みが完了したとき（手順６１２）、ホストは、記録／再生デバイス内の光ディスクに関して提供された欠陥情報を基準にして、ファイルの開始位置とサイズを示すＩＣＢをＵＤＦファイル・システム内に書き出す（手順６１３）。図８Ａに例示されるファイル１のＩＣＢは、図６Ｃに示されるように書き出される。すなわち、マイクロコンピュータは、ファイル１を位置「Ａ」からＨセクタ書き込む（新しい欠陥ブロックに合った箇所まで）。マイクロコンピュータは、次に書き込みコマンドを停止して、ホストに欠陥情報を返して、ホストから新しい書き込みコマンドを受信してから、ファイル１のデータを位置「Ｇ」からＴセクタ書き込み続ける。ファイル１の書き込みは、ＳＤＬにリストされている欠陥ブロックｓｂｌｋＡとｓｂｌｋＢに関する情報をあらかじめ与えておくことによって、ファイル１が位置「Ｄ」からＰセクタおよび位置「Ｅ」からＵセクタ書き込まれた後に完了する。
【００７１】
結局、ファイル１のＩＣＢは、開始位置が「Ａ」でサイズがＨであるサブファイル、開始位置「Ｇ」でサイズがＴであるサブファイル、開始位置が「Ｄ」でサイズがＰであるサブファイル、および開始位置が「Ｅ」でサイズがＵであるサブファイルに分割される。すなわち、ファイル１の書き込み領域に存在する欠陥領域ｓｂｌｋＡ、ｓｂｌｋＢ、ｓｂｌｋＥはＩＣＢに書き込まれない。その結果、書き込むファイルのサイズと実際のファイルのサイズ間における不一致、および欠陥領域によって生じるＬＳＮ間の不一致は発生しない。さらにその結果、そのような不一致を原因とするファイル・マネージャによる誤りは回避される。
【００７２】
図９は、書き込みコマンドに応じて書き込んでいる間にＳＤＬにリストされていない欠陥ブロックに出合ったとき、欠陥ブロックにそのまま書き込むことによって光メディアに／からデータをリアルタイムで記録／再生する別の方法を示すフローチャートである。手順７０１から手順６０５までは図５の手順５０１から手順５０５までと同じであるため、説明は省略される。
【００７３】
この方法によって、たとえ書き込みコマンドによって指定された位置にデータを書き込んでいる間にエラーが発生する可能性が高い欠陥ブロックに会っても、データは欠陥ブロックにそのまま単純に書き込まれる（手順７０６）。図１０Ａに示されるように、ホストからの書き込みコマンドの実行が終了するまで、データは新たに出合った欠陥ブロックにそのまま継続的に書き込まれる。したがって、データをセクタ数「Ｍ」だけ書き込んだ後に書き込みコマンドが終了したとき（手順５０７）、記録／再生デバイスは正常状態のコマンド実行報告をホストに提供する（手順５０８）。たとえ正常状態がホストに返されても、マイクロコンピュータは欠陥ブロックに関する情報をＳＤＬに追加する。この情報は、次の書き込み中にホストに返される。
【００７４】
前の方法と同様に、コマンドというよりもあらかじめ決定されたプロトコルまたは信号によって、ホストはデータの書き込み中に書き込みの現在のステータスを要求する。したがって、信号を生成すると同時に、記録／再生デバイスは要求された情報をホストに提供する。プロトコルがない場合は、マイクロコンピュータは、書き込みコマンドを実行した後に書き込みに関する欠陥情報をホストに提供する。
【００７５】
ユーザからの要求またはファイルの書き込みが完了しない場合、ホストは書き込みコマンドを生成して提供し続ける。図１０Ａの欠陥ブロックｓｂｌｋＡとｓｂｌｋＢはＳＤＬにリストされているため、書き込みコマンドはデータが欠陥ブロックｓｂｌｋＡとｓｂｌｋＢに書き込まれないように生成される。例えば、ホストは、欠陥ブロックｓｂｌｋＡを除外してデータを位置「Ｄ」からＰセクタ書き込む書き込みコマンドを生成して、その書き込みコマンドを関連データとともに記録／再生デバイスに提供する。書き込みコマンドは、データを位置「Ｄ」からＰセクタ書き込むコマンドであるか、または既存ファイルの任意の空き領域からデータを書き込むコマンドである。それにもかかわらず、書き込みコマンドは欠陥領域を除外するため、書き込みコマンドでは欠陥領域による断片化が発生する。
【００７６】
マイクロコンピュータは、書き込みコマンドが終了するたびにコマンド実行報告をホストに提供する。ホストから書き込みコマンドが生成されるとき欠陥領域は除外されるため、コマンド実行報告のほとんどには正常な状態を示す。
【００７７】
図６Ｃに示されるように、ファイルの書き込みが完了したとき（手順７０９）、ホストは、返された欠陥領域の位置情報を基準にして、光ディスク上にあるＵＤＦファイル・システム内にファイルの開始位置とサイズを表すようにＩＣＢに書き込む（手順７１０）。本発明では、ファイルのサイズは、関連技術のように欠陥領域を無視して「Ｎ」または「Ｎ−Ｌ」というように表すのではなく、ＳＤＬに欠陥ブロックがリストされている場合、欠陥ブロックによって分離されて書き込まれたセクタの数で表す。複数の連続した書き込みコマンドの範囲の中でＳＤＬにリストされた欠陥ブロックがない場合、これらの連続した書き込みコマンドは連続していると見なされる。連続した書き込みコマンドに対応するセクタが追加され、連続した書き込みコマンドとして書き込まれる。
【００７８】
図１０Ａに示されるセクタＱ、Ｒ、Ｓは、そのような連続した書き込みコマンドの例である。図１０Ａのファイル１を例にすると、ファイル１のＩＣＢには、開始位置が「Ａ」でサイズがＭであるサブファイル、開始位置が「Ｄ」でサイズがＰであるサブファイル、および開始位置が「Ｅ」でサイズが「Ｑ＋Ｒ＋Ｓ」であるサブファイルに分割されて書き込まれる。ファイル１の書き込み領域に存在する欠陥領域ｓｂｌｋＡおよびｓｂｌｋＢはＩＣＢに書き込まれない。図１０Ｂは、図１０Ａのファイル１についてのＩＣＢを示す。その結果、書き込むファイルのサイズと実際のファイルのサイズ間における不一致、および欠陥領域によって生じるＬＳＮ間の不一致は発生しない。さらにその結果、そのような不一致を原因とするファイル・マネージャによる誤りは回避される。
【００７９】
第２の実施形態
図１１は、本発明の第２の実施形態である。この実施形態では、リアルタイム・データが生成された場合、ＳＤＬにリストされる欠陥ブロックがホストに返され、ホストはリアルタイムの書き込みコマンドを生成して記録／再生デバイスに送信する。記録／再生デバイスは、書き込みコマンドを受信したら、データを書き込む前に、書き込みコマンドによって指定された書き込み領域内にＳＤＬにリストされた欠陥ブロックが存在するかどうかを判定する。欠陥ブロックが存在する場合、記録／再生デバイスは、欠陥ブロックの位置情報をホストに返して、ホストから新しい書き込みコマンドを受信してデータを書き込む。ファイルシステムは、返される欠陥ブロックの単位で管理される。
【００８０】
リアルタイムで書き込まれるデータが提供されたとき、ホストは光ディスクへの書き込みデータを、リアルタイムの記録を制御するコマンドと共に記録／再生デバイスに提供する（手順８０１）。ファイル管理を目的に、記録／再生デバイスは、書き込みコマンドによって指定される位置にデータを書き込む前に、ＳＤＬにリストされる欠陥ブロックの存在を検査する（手順８０２）。少なくとも１つの欠陥ブロックがＳＤＬにリストされている場合、欠陥ブロックの位置情報はホストに返される（手順８０３）。
【００８１】
たとえば、図１２では、リアルタイムの書き込みコマンドは、ファイル１のデータを位置「Ａ」からＮ１セクタ書き込む。マイクロコンピュータは、Ｎ１の数のセクタについてＳＤＬにリストされているすべての欠陥ブロックの存在を検査する。ブロックｓｂｌｋＡとｓｂｌｋＢはＳＤＬにリストされているため、マイクロコンピュータはこれらの欠陥ブロックの位置情報をホストに返す。位置情報は多くの方法で返すことができるが、好ましい実施形態では、欠陥ブロックの位置情報は図６Ｂまたは図８Ｂに関連して説明される要求検知データを使用してホストに提供される。
【００８２】
すなわち、図１２に示されるように、記録／再生デバイス内のマイクロコンピュータは、位置「Ａ」から開始するＮ１セクタ領域にデータを書き込むリアルタイムの書き込みコマンドを受信すると、Ｎ１の数のセクタにＳＤＬにリストされる欠陥ブロックが存在しているかどうかを検査する。欠陥ブロックが存在する場合、記録／再生デバイスはホストにチェック状態ステータス（ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮステータス）を返す。ホストは、チェック状態ステータスを受信すると、要求検知コマンドを記録／再生デバイスに提供し、エラー・コードを要求する。したがって、図６Ｂまたは図８Ｂに示されるように、記録／再生デバイスは要求検知データをホストに返す。図８Ｂに示されるように、記録／再生デバイスは、Ｎ１セクタにある最初の欠陥ブロックｓｂｌｋＡの位置情報を返す。または、図６Ｂに示されるように、書き込みコマンドによって指定される領域内のすべての欠陥ブロック（ｓｂｌｋＡとｓｂｌｋＢ）に関する位置情報を返す。
【００８３】
したがって、ホストは、欠陥ブロックの位置情報を持つ要求検知データをマイクロコンピュータから受信すると、新しい書き込みコマンド、すなわちデータが欠陥ブロックに書き込まれないようなコマンドを生成する。新しい書き込みコマンドは、記録／再生デバイスに送られる（手順８０４）。書き込みコマンドは、データを位置「Ｄ」からＰセクタ書き込むコマンドであるか、または既存ファイルの任意の空き領域からデータを書き込むコマンドである。ホストは１ファイルについて多数の書き込みコマンドを提供するため、１ファイルに対する書き込みコマンドは分割される。
【００８４】
図１２に示されるように、新しい書き込みコマンドがデータを位置「Ａ」からＭセクタ書き込むコマンドである場合、記録／再生デバイスは位置「Ａ」からデータの書き込みを開始する（手順８０５）。ＳＤＬにリストされていないｓｂｌｋＥのような新しい欠陥ブロックに合った場合、第１の実施形態に関して説明される方法は第２の実施形態に関しても同様に適用可能である。したがって、図５と図７に示されるように新たに出合った欠陥ブロックはスキップされるか、または図９に示されるようにデータは欠陥ブロックに書き込まれる。
【００８５】
書き込みコマンドが完了したとき、すなわちデータがＭセクタ書き込まれたとき（手順８０６）、マイクロコンピュータはコマンド実行報告をホストに提供する（手順８０７）。さらに、コマンドというよりもあらかじめ決定されたプロトコルまたは信号によって、ホストはデータの書き込み中に書き込みの現在のステータスを要求する。したがって、信号を生成すると同時に、記録／再生デバイスは要求された情報をホストに提供する。プロトコルがない場合は、記録／再生デバイスは、書き込みコマンドの実行が終了した後に書き込みに関する欠陥情報をホストに提供する。
【００８６】
図１２のファイル１を例にして説明すると、Ｍセクタにデータを書き込む書き込みコマンドが完了しても、１ファイルの書き込みは終了していない。したがって、ホストは引き続き記録／再生デバイスに書き込みコマンドを提供する。ホストはＳＤＬにリストされる欠陥ブロック（ｓｂｌｋＡとｓｂｌｋＢ）に関する情報を得たため、ホストはデータが欠陥ブロック（ｓｂｌｋＡとｓｂｌｋＢ）に書き込まれないような新しい書き込みコマンドを提供する。すなわち、データを位置「Ｄ」からＰセクタ書き込むコマンドが提供される。ＲセクタまたはＳセクタのように、書き込みコマンドの処理範囲に欠陥ブロックがない場合、書き込みコマンドが終了するたびに正常状態がホストに返される。
【００８７】
ホストは、前述のプロセスにしたがってファイルの書き込みが完了したとき（手順８０８）、返された欠陥ブロックの位置情報を基準にして、図１０Ｂに示される光ディスク上にあるＵＤＦファイル・システム内にファイルの開始位置とサイズを示すＩＣＢを書き込む（手順８０９）。図１２のファイル１のＩＣＢは、開始位置が「Ａ」でサイズがＭであるサブファイル、開始位置が「Ｄ」でサイズがＰであるサブファイル、および開始位置が「Ｅ」でサイズが「Ｑ＋Ｒ＋Ｓ」であるサブファイルに分割されて書き込まれる。ファイル１の書き込み領域の範囲内にある欠陥領域ｓｂｌｋＡおよびｓｂｌｋＢは、ＩＣＢに書き込まれない。新しい欠陥ブロックｓｂｌｋＥに遭遇してスキップした場合、新しい欠陥ブロックｓｂｌｋＥもＩＣＢには書き込まれない。
【００８８】
その結果、書き込むファイルのサイズと実際のファイルのサイズ間における不一致、および欠陥領域によって生じるＬＳＮ間の不一致は発生しない。さらにその結果、そのような不一致を原因とするファイル・マネージャによる誤りは回避される。加えて、そのようなＩＣＢは、既存のＵＤＦファイル・システムを保持しながら作成することができる。既存のシステムでさえ、１つのファイルは、しばしば連続するのではなく空き領域にシフトして書き込まれ、ファイルが断片化する結果となる。同様に、ＩＣＢは１つのファイルを単純に断片化する。本発明では、欠陥領域はＩＣＢの作成時に領域がシフトされて発生したスキップされた領域と見ることができる。その結果、既存のファイル・システムとの矛盾は生じない。さらに、欠陥領域はＩＣＢに書き込まれずにＬＳＮを保持するため、リニア交替による書き込み中に欠陥領域を使用することができる。スペア領域内のスペア・ブロックを使用して書き込んでいる間に出合った欠陥ブロックを置換することによって、リニア交替は、ディスクのユーザ領域全体を使用できるようにする。このようにして、ディスクの利用効率を改善することができる。ホストはリアルタイムの記録を制御するためのディスク・アーキテクチャについて知らない状態でディスクの欠陥情報を受信するため、ホストの負荷を軽減することができる。
【００８９】
本発明は、ホストと光ディスクに／からデータを記録／再生するデバイスの両方に関して説明された。ディスク・プレーヤのようなホストなしで記録／再生デバイスのみが提供される場合、記録／再生デバイス内のマイクロコンピュータは直接上記の手順を制御する。したがって、記録／再生デバイス内のマイクロコンピュータは、ＤＭＡに書き込まれた欠陥領域情報を持ちながら、欠陥ブロック情報と現在のファイル・アーキテクチャの情報を読み取り、書き込みコマンドを提供する。すなわち、書き込みコマンドは、リアルタイムでの記録中に欠陥領域にデータを書き込むことなく、現在のファイル・アーキテクチャにデータを書き込む。その場合、コマンドはホストに提供されるコマンドとは異なる。
【００９０】
ＩＣＢの書き出しはマイクロコンピュータによっても行われる。この場合、図１０Ｂに示されるように、書き込まれるファイル・サイズを表すセクタ数は欠陥ブロックによって分割され、複数の連続した書き込みコマンドについては書き込みコマンドのセクタ数が加算される。他方で、光ディスクからのデータを再生している間、ホストまたはディスク・プレーヤは、前述のファイル・アーキテクチャを参照してデータが欠陥領域から読み取られないような読み取りコマンドを提供する。
【００９１】
要するに、本発明に従った、光記録メディアに／からデータをリアルタイムで記録／再生する方法、およびそれによるファイルの管理方法には、以下の利点がある。ホストは、リアルタイム・データが提供されたとき、記録／再生デバイスに信号を提供して欠陥領域情報を要求することによってデータの書き込みを制御するため、ホストは、記録／再生デバイスから返された欠陥領域情報に基づいて、データが欠陥領域に書き込まれないような書き込みコマンドを提供することができる。代わりに、ホストは、記録／再生デバイスが欠陥領域情報を返したとき、記録／再生デバイスに書き込みコマンドを提供することによってデータの書き込みを制御するため、ホストは、記録／再生デバイスから返された欠陥領域情報に基づいて、データが欠陥領域に書き込まれないような書き込みコマンドを提供することができる。
【００９２】
さらに、リアルタイムの記録において、実際のファイル・サイズと書き込まれたファイル・サイズとの間に差異は生じない。または、ＬＳＮ間に不一致はない。欠陥領域はＬＳＮを保持する一方でＩＣＢ上の空き領域として残されるため、次のリニア交替で欠陥領域の使用を許可することによって効率を改善することができる。さらに、ＩＣＢは、欠陥領域をシフトが原因でスキップされた領域であるとして書き込まれるため、既存のファイル・システムに矛盾は生じない。その結果、既存のＵＤＦファイル・システムとの互換性がそのままの状態で保持される。最終的に、リアルタイムで記録を制御している間にディスク・アーキテクチャが未知な状態にあれば、ホストは欠陥情報を受信するため、ホストの負荷を軽減することができる。
【００９３】
以上の実施形態は単に例示的なものであり、本発明を限定するようには解釈されない。本教示は他の種類の装置に容易に適用することができる。本発明の記述は例示することを目的としており、特許請求の範囲を制限するものではない。多くの代替手段、変更、および変形は、当業者にとって明白である。
【図面の簡単な説明】
【００９４】
【図１】関連技術における書換可能型光ディスクのアーキテクチャを示す図である。
【図２Ａ】関連技術におけるスリップ交替を示す図である。
【図２Ｂ】関連技術におけるリニア交替を示す図である。
【図３】関連技術において光ディスク上でデータを記録／再生する装置のブロック図である。
【図４Ａ】ＳＤＬが使用される場合に、リニア交替によって光ディスクにデータが書き込まれるときの状態を示す図である。
【図４Ｂ】図４Ａに示されるファイルに関して、ＵＤＦファイル・システムの概念的書き込み状態を示す図である。
【図４Ｃ】ＳＤＬが使用される場合に、スキップによって光ディスクにデータが書き込まれるときの状態を示す図である。
【図４Ｄ】図４Ｃに示されるファイルに関して、ＵＤＦファイル・システムの概念的書き込み状態を示す図である。
【図５】光メディアに／からデータをリアルタイムで記録／再生する方法における、および本発明の第１の実施形態に従ってファイルを管理する方法における、新たに合った欠陥ブロックのスキップを示すフローチャートである。
【図６Ａ】図５において新たに合った欠陥ブロックがスキップされた後、書き込みコマンドが終了してから、欠陥ブロック情報がホストに提供されるときの状態を示す図である。
【図６Ｂ】図５における光ディスクの欠陥情報をホストに返す検知データを要求するアーキテクチャを示す図である。
【図６Ｃ】図６Ａに示されるファイルに関して、ＵＤＦファイル・システムの概念的書き込み状態を示す図である。
【図７】光メディアに／からデータをリアルタイムで記録／再生する方法における、および本発明の第１の実施形態に従ってファイルを管理する方法における、新たに合った欠陥ブロックのスキップを示す別のフローチャートである。
【図８Ａ】図７において新たな欠陥ブロックに合ったとき、書き込みコマンドが終了して、欠陥ブロック情報がホストに提供されるときの状態を示す図である。
【図８Ｂ】図７における光ディスクの欠陥情報をホストに返す検知データを要求するアーキテクチャを示す図である。
【図９】光メディアに／からデータをリアルタイムで記録／再生する方法における、および本発明の第１の実施形態に従ってファイルを管理する方法における、新たに合った欠陥ブロックにそのまま書き込む場合を示すフローチャートである。
【図１０Ａ】図９におけるデータをリアルタイムで記録する方法によってデータが書き込まれるときの状態を示す図である。
【図１０Ｂ】図１０Ａにあるファイルに関して、ＵＤＦファイル・システムの概念的書き込み状態を示す図である。
【図１１】光メディアに／からデータをリアルタイムで記録／再生する方法、および本発明の第２の好ましい実施形態に従ってファイルを管理する方法を示す図である。
【図１２】データをリアルタイムで記録する方法によってデータが書き込まれるときの状態を示す図である。
【図１】
2006190467.tif 000003
【図２Ａ】
2006190467.tif 000004
【図２Ｂ】
2006190467.tif 000005
【図３】
2006190467.tif 000006
【図４Ａ】
2006190467.tif 000007
【図４Ｂ】
2006190467.tif 000008
【図４Ｃ】
2006190467.tif 000009
【図４Ｄ】
2006190467.tif 000010
【図５】
2006190467.tif 000011
【図６Ａ】
2006190467.tif 000012
【図６Ｂ】
2006190467.tif 000013
【図６Ｃ】
2006190467.tif 000014
【図７】
2006190467.tif 000015
【図８Ａ】
2006190467.tif 000016
【図８Ｂ】
2006190467.tif 000017
【図９】
2006190467.tif 000018
【図１０Ａ】
2006190467.tif 000019
【図１０Ｂ】
2006190467.tif 000020
【図１１】
2006190467.tif 000021
【図１２】
2006190467.tif 000022