(57)【要約】【課題】  バッファ・アンダー・ランが発生しても視覚的に滑らかに描き継ぎを行なう。【解決手段】  光ディスクに可視画像を記録中にバッファ・アンダー・ラン（ＢＵＲ）が発生したときは、記録を中断する。タイプＡのように、１周分の整数倍転送したところでＢＵＲ１が発生したときは、ホスト機器でデータを廃棄することなく基準角度位置から継続して記録する。タイプＢのようにそうでないところでＢＵＲ２が発生したときは、次の周の先頭までのデータを廃棄して、基準角度位置から継続して記録する。これにより、視覚的に滑らかに描き継ぎができる。なお、タイプＣのように、バッファ中のデータ残量がバッファー・アンダー・ランのしきい値以下となったら、それ以降のホスト機器からデータ転送を中断し、その後、ホスト機器によるデータ廃棄無しで描画を再開させるようにしてもよい。【選択図】  図２
2007012159.tif 000002
【特許請求の範囲】
【請求項１】
ホスト機器から転送されるデータを一時記憶する緩衝記憶部と、光ディスクを保持し回転させ、角度位置信号を出力する回転部とを有し、前記データに対応する可視画像を光ディスクへ記録する光ディスクドライブ装置と、該光ディスクドライブ装置へ前記データを転送するホスト機器とを有する光ディスク記録システムであって、
前記光ディスクドライブ装置は、所定の周回の記録中に、前記緩衝記憶部においてデータが無くなるエラーが生じたときは記録を中断し、
前記ホスト機器は、前記エラーが生じた個所と光ディスクの基準角度位置との間に相当するデータを破棄してからデータ転送を再開し、
前記光ディスクドライブ装置は、データ受信を再開して、前記基準角度位置から記録を再開することを特徴とする光ディスク記録システム。
【請求項２】
ホスト機器から転送されるデータを一時記憶する緩衝記憶部と、光ディスクを保持し回転させ、角度位置信号を出力する回転部と、前記光ディスクが１回転する間に所定数のセクターに相当するデータを前記緩衝記憶部から読み出して処理する信号処理部と、前記信号処理部により処理されたデータに応じた出力でレーザー光を照射して前記光ディスクにデータを記録する発光部とを有する光ディスクドライブ装置と、該光ディスクドライブ装置へ前記データを転送するホスト機器とを有する光ディスク記録システムであって、
前記ホスト機器は、前記光ディスクドライブ装置へ転送したデータのセクター数を計数する計数部を有しており、
前記光ディスクドライブ装置は、所定の周回の記録中に、前記緩衝記憶部においてデータが無くなるエラーが生じたときは、前記ホスト機器からのデータ受信を一時中断し、前記ホスト機器にその旨を通知するとともに、前記光ディスクへの記録を中断し、
前記ホスト機器は、前記光ディスクドライブにおいて前記データが無くなるエラーが発生したときの前記計数部で計数したセクター数と前記所定数とからエラーが発生したところから次周の先頭までに相当する分のデータを特定し、該特定されたデータを破棄してからデータの転送を再開し、
前記光ディスクドライブ装置は、データ受信を再開して、次周の先頭から記録を再開することを特徴とする光ディスク記録システム。
【請求項３】
ホスト機器から転送されるデータを一時記憶する緩衝記憶部と、光ディスクを保持し回転させ、角度位置信号を出力する回転部と、前記光ディスクが１回転する間にＮ×Ｍ（Ｎ，Ｍは自然数）セクターに相当するデータを前記緩衝記憶部から読み出して処理する信号処理部と、前記信号処理部により処理されたデータに応じた出力でレーザー光を照射して前記光ディスクにデータを記録する発光部とを有する光ディスクドライブ装置と、該光ディスクドライブ装置へ前記データを転送するホスト機器とを有する光ディスク記録システムであって、
前記ホスト機器は、１回の転送でＮセクターに相当するデータを前記光ディスクドライブ装置へ転送するものであって、前記光ディスクドライブ装置へデータを転送した回数を計数する計数部を有しており、
前記光ディスクドライブ装置は、所定の周回の記録中に、前記緩衝記憶部においてデータが無くなるエラーが生じたときは、前記ホスト機器からのデータ受信を一時中断し、前記ホスト機器にその旨を通知するとともに、前記光ディスクへの記録を中断し、
前記ホスト機器は、前記光ディスクドライブにおいて前記データが無くなるエラーが発生したときの前記計数部で計数された転送回数と前記Ｍ値とからエラーが発生したところから次周の先頭までの相当する分のデータを特定し、該特定されたデータを破棄してからデータの転送を再開し、
前記光ディスクドライブ装置は、データ受信を再開して、次周の先頭から記録を再開することを特徴とする光ディスク記録システム。
【請求項４】
ホスト機器から転送されるデータを一時記憶する緩衝記憶部と、光ディスクを保持し回転させ、角度位置信号を出力する回転部と、前記光ディスクが１回転する間に所定数のセクターに相当するデータを前記緩衝記憶部から読み出して処理する信号処理部と、前記信号処理部により処理されたデータに応じた出力でレーザー光を照射して前記光ディスクにデータを記録する発光部とを有する光ディスクドライブ装置と、該光ディスクドライブ装置へ前記データを転送するホスト機器とを有する光ディスク記録システムであって、
前記光ディスクドライブ装置には、前記緩衝記憶部に記憶されているデータが無くなるエラーの発生を予測する監視部が設けられており、
所定の周回の記録中に、前記監視部により前記緩衝記憶部においてデータが無くなるエラーが発生すると予測されたときは、前記光ディスクドライブ装置は、前記ホスト機器に異常を通知するとともに、前記ホスト機器からのデータ受信を一時中断し、前記緩衝記憶部においてデータが無くなるエラーが発生した後に前記光ディスクへの記録を中断し、その後に前記ホスト機器からのデータ受信を再開し、次周の先頭から記録を再開することを特徴とする光ディスク記録システム。
【請求項５】
前記監視部は、前記緩衝記憶部に記憶されているデータ量と前記緩衝記憶部から出力されたデータ量とを検出する検出部を有し、記憶されているデータ量と出力されたデータ量と前記所定数とに基づいて前記緩衝記憶部においてデータが無くなるエラーの発生を予測するものであることを特徴とする請求項４記載の光ディスク記録システム。
【請求項６】
前記監視部は、記憶されているデータ量と出力されたデータ量との総和を前記所定数で除した余りがゼロであり、かつ、記憶されているデータ量が前記所定数のセクターに相当するデータ量以下のときに前記緩衝記憶部においてデータが無くなるエラーの発生を予測するものであることを特徴とする請求項５記載の光ディスク記録システム。
【請求項７】
ホスト機器から転送されるデータを一時記憶する緩衝記憶部と、光ディスクを保持し回転させ、１回転につきＭ個（Ｍは自然数）の角度位置信号を出力する回転部と、前記光ディスクが１回転する間にＮ×Ｍ（Ｎは自然数）個のセクターに相当するデータを前記緩衝記憶部から読み出して処理する信号処理部と、前記信号処理部により処理されたデータに応じた出力でレーザー光を照射して前記光ディスクにデータを記録する発光部とを有する光ディスクドライブ装置と、該光ディスクドライブ装置へ前記データを転送するホスト機器とを有する光ディスク記録システムであって、
前記ホスト機器は、前記光ディスクドライブ装置へ転送したデータのセクター数を計数する計数部を有しており、
前記光ディスクドライブ装置は、所定の周回の記録中に、前記緩衝記憶部においてデータが無くなるエラーが生じたときは、前記ホスト機器からのデータ受信を一時中断し、前記ホスト機器にその旨を通知するとともに、前記光ディスクへの記録を中断し、
前記ホスト機器は、前記光ディスクドライブにおいて前記データが無くなるエラーが発生したときの前記計数部で計数されたセクター数と前記Ｎ値とからエラーが発生したところと前記角度位置信号との間に相当する分のデータを特定し、該特定されたデータを破棄してからデータの転送を再開し、
前記光ディスクドライブ装置は、データ受信を再開して、前記角度位置信号に応じて記録を再開することを特徴とする光ディスク記録システム。
【請求項８】
ホスト機器から転送されるデータを一時記憶する緩衝記憶部と、光ディスクを保持し回転させ、１回転につきＮ×Ｍ個（Ｎ，Ｍは自然数）の角度位置信号を出力する回転部と、前記光ディスクが１回転する間にＮ×Ｍセクター分のデータを前記緩衝記憶部から読み出して処理する信号処理部と、前記信号処理部により処理されたデータに応じた出力でレーザー光を照射して前記光ディスクにデータを記録する発光部とを有する光ディスクドライブ装置と、該光ディスクドライブ装置へ前記データを転送するホスト機器とを有する光ディスク記録システムであって、
前記ホスト機器は、前記光ディスクドライブ装置へ転送したデータのセクター数を計数する計数部を有しており、
前記光ディスクドライブ装置は、所定の周回の記録中に前記緩衝記憶部においてデータが無くなるエラーが生じたときは、前記ホスト機器からのデータ受信を一時中断し、前記ホスト機器にその旨を通知するとともに、前記光ディスクへの記録を中断し、
前記ホスト機器は、前記光ディスクドライブにおいて前記データが無くなるエラーが発生したときの前記計数部で計数されたセクター数からエラーが発生したところと前記角度位置信号との間に相当する分のデータを特定し、該特定されたデータを破棄してからデータを転送し、
前記光ディスクドライブ装置は、データ受信を再開して、前記角度位置信号に応じて記録を再開することを特徴とする光ディスク記録システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＤ−Ｒ／ＲＷやＤＶＤ＋Ｒ／ＲＷ及びＤＶＤ−Ｒ／ＲＷなどの光ディスクのディスク面にレーザーを使用して可視画像を形成する光ディスク記録システムに関する。
【背景技術】
【０００２】
光ディスクの記録面やレーベル面（記録面と反対側の面）にレーザーを使用して文字や図形等の可視画像を記録することは知られている。
例えば、特許文献１には光ディスクのレーベル面側から見える個所に可視光特性変化層を設け、レーザー光を照射することによりその可視光特性を変化させて可視画像を描画することが提案されている。
また、特許文献２には、レーザーを使用して可視画像を記録することが可能な光ディスクにおいて、記録膜に可逆的な相変化材料を用い、記録した図形を書き換えることが提案されている。
さらに、特許文献３には、既に可視画像が記録されている光ディスクの記録面に新たに可視画像を追記することが提案されている。
【０００３】
特許文献４には、可視画像の記録中にフォーカスサーボが外れた場合に、可視画像中の隣り合う画素が離れた位置に記録されてしまい、本来の画像とは異なる可視画像が記録されてしまうという不都合が発生するのを回避することができる可視画像記録装置が提案されている。
また、角度位置θの決め方として、１回転を所定数の周期で構成し、所定数の周期をパルス信号で得るようにし、パルス数で角度位置を決める技術も記載されている（図６）。
【特許文献１】特開２００２−２０３３２１号公報
【特許文献２】特開２００３−０１６６４９号公報
【特許文献３】特開２００４−０３９０１９号公報
【特許文献４】特開２００４−０３０８３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記特許文献４に記載された発明においては、フォーカス外れについて述べられているが、バッファー・アンダー・ランについての記述はない。
バッファー・アンダー・ランはフォーカス制御とは無関係に発生しうる記録中断である。また、フォーカス外れによる記録中断と、バッファー・アンダー・ランによる記録中断では、中断時の光ディスクドライブ装置のバッファのデータ残量状態が全く異なる。このように、フォーカス外れからは予測できない現象なので、両者を同様に議論することはできない。
そこで、本発明は、バッファー・アンダー・ランが発生して描画が中断したとき又はバッファー・アンダー・ランの発生が予測されるときであっても、視覚的に滑らかに描画することができる光ディスク記録システムを提供することを目的としている。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明の光ディスク記録システムは、光ディスクドライブ装置は、所定の周回の記録中に、緩衝記憶部においてデータが無くなるバッファー・アンダー・ラン・エラーが生じたときは光ディスクへの記録を中断し、ホスト機器は、前記エラーが生じた個所と光ディスクの基準角度位置との間に相当するデータを破棄してからデータ転送を再開し、光ディスクドライブ装置は、前記基準角度位置から記録を再開するようにしたことを最大の特徴としている。
また、前記ホスト機器は、前記光ディスクドライブ装置へ転送したデータのセクター数又はデータの転送回数を計数する計数部を有しており、バッファー・アンダー・ラン・エラーが生じたときは、該エラーが発生したときの前記計数部で計数したセクター数又はデータの転送回数に基づいてエラーが発生したところから次周の先頭までの相当する分のデータを特定し、該特定されたデータを破棄してからデータの転送を再開することを特徴としている。
さらに、前記光ディスクドライブ装置には、バッファー・アンダー・ラン・エラーの発生を予測する監視部が設けられており、該監視部によりバッファー・アンダー・ラン・エラーの発生が予測されたときには、前記ホスト機器からデータの受信を中断し、バッファー・アンダー・ラン・エラーが発生した後に、データの受信を再開することにより、次周の先頭から記録を再開することを特徴としている。
さらにまた、前記光ディスクドライブ装置は１回転につきＭ個又はＮ×Ｍ個の角度位置信号を出力するように構成されており、バッファー・アンダー・ラン・エラーが発生したときに、その位置と前記角度位置信号との間に相当する分のデータを特定し、該特定されたデータを破棄してからデータの転送を再開し、前記角度位置信号に応じて記録を再開することを特徴としている。
【発明の効果】
【０００６】
このような本発明の光ディスク記録システムによれば、ホスト機器からの画像データの転送が間に合わずにバッファー・アンダー・ランが発生して描画が中断してしまったときあるいはバッファー・アンダー・ラン・エラーの発生が予測されるときであっても、中断したところまでのディスク上の角度を計算し、ホスト機器がそれを加味して描き継ぎデータを転送して描画再開することにより、正確な描き継ぎをすることができる。
また、ホスト機器の処理速度が不十分なときでも、視覚的に滑らかに描画することが可能となる。
【発明を実施するための最良の形態】
【０００７】
図１は、本発明の光ディスク記録システムの一実施の形態の要部構成を示すブロック図である。
本実施の形態の光ディスク記録システムは、前記光ディスク１に対してデータの記録再生及び可視画像の形成を行う光ディスクドライブ装置１０、及び、該光ディスクドライブ装置１０に接続されたホストコンピュータやバックエンド装置等のホスト機器４０で構成されている。ホスト機器４０には、光ディスク１に記録する可視画像を編集するための画像編集プログラムや光ディスク１にデータや可視画像を記録したり、光ディスク１からデータを再生するための制御プログラムが搭載されている。また、４１は、ホスト機器４０から前記光ディスクドライブ装置１０へ転送するデータを一時記憶するバッファメモリである。ホスト機器４０は、このバッファメモリ４１に蓄積されているデータを順次読み出して前記光ディスクドライブ装置１０のバッファ２４に転送する。なお、ホスト機器４０の有する機能を前記光ディスクドライブ装置１０に持たせるようにしてもよい。
【０００８】
光ディスクドライブ装置１０は、光ディスク１を回転駆動するスピンドルモータ１１、スピンドル回転速度に応じた周波数のＦＧパルスを出力する周波数発生器１２、光ピックアップ１３、ＲＦアンプ１４、サーボ回路１５、デコーダ１６、アドレス検出回路１７、制御部１８、ステッピングモータ１９、モータドライバ２０、モータコントローラ２１、分周回路２２、レーザーパワーを制御するＬＰＣ（Laser Power Control）回路２３、バッファメモリ２４、エンコーダ２５、ストラテジ回路２６、光ピックアップ１３のレーザーダイオードを駆動するレーザードライバ２７、可視画像を記録するときに使用される復調器２８とアンド回路２９、及び、前記制御部１８及び前記バッファメモリ２４と前記ホスト機器４０との間のデータ授受を行うインターフェース回路３０を備えている。
【０００９】
光ピックアップ１３は光ディスク１にレーザー光を照射してデータの記録及び再生を行うとともに、可視画像の描画を行う。レーザー光を光ディスク１に照射したときの戻り光受光信号（ＥＦＭ変調又は８ｔｏ１６変調されたＲＦ信号）は、ＲＦアンプ１４で増幅され、サーボ回路１５、デコーダ１６及びアドレス検出回路１７に供給される。
サーボ回路１５は、前記ＲＦアンプ１４からの信号と制御部１８からの制御信号に基づいて前記スピンドルモータ１１の回転制御及び前記光ピックアップ１３のフォーカス制御やトラッキング制御を行う。
デコーダ１６は、前記ＲＦアンプ１４から供給されるＥＦＭ変調又は８ｔｏ１６変調された信号を復調し、再生データを出力する。
アドレス検出回路１７は、前記ＲＦアンプ１４から供給される信号からウォブル信号成分を抽出してＤＶＤ系規格のＡＤＩＰ（Address In Pre-Groove）又はＣＤ系規格のＡＴＩＰ（Absolute Time in Pre-Groove）を復号し、アドレス情報（位置アドレス）を検出する。
【００１０】
ステッピングモータ１９は、前記光ピックアップ１３を光ディスク１の半径方向に移動（フィード）させるためのモータである。モータドライバ２０は、モータコントローラ２１から供給される制御信号に応じて前記ステッピングモータ１９を回転駆動する。モータコントローラ２１は、前記制御部１８から指示される光ピックアップ１３の半径方向への移動方向及び移動量を含む移動開始指示に従って、移動量や移動方向に応じたパルス信号を生成し、モータドライバ２０に供給する。
【００１１】
バッファメモリ２４は、ホスト機器４０からインターフェース回路３０を介して供給される光ディスク１に記録すべきデータ（記録データ）及び光ディスクに描画する可視画像のデータを記憶するためのＦＩＦＯ（First In First Out）メモリなどからなるバッファである。
前記記録データを光ディスク１に記録するとき、エンコーダ２５は、バッファメモリ２４から読み出された記録データをＥＦＭ変調又は８ｔｏ１６変調し、ストラテジ回路２６に出力する。ストラテジ回路２６は、エンコーダ２５から供給された信号に時間軸補正処理等を行い、レーザードライバ２７に出力する。レーザードライバ２７は、ストラテジ回路２６から供給される変調された信号と、ＬＰＣ回路２３の制御に基づいて、光ピックアップ１３のレーザーダイオードを駆動する。
【００１２】
以下、光ディスク１に可視画像を記録するときの動作及びバッファー・アンダー・ランが発生したときの動作について詳細に説明する。
１．記録方法
ホスト機器（コンピュータ、バックエンド装置等）４０から光ディスクドライブ装置（以下、単に、「ドライブ」とよぶ。）１０へデータを転送しながら、ドライブ１０内に装着された光ディスク１のデータ記録面、又はレーベル面に画像や文字を描画する。
この際、ドライブ１０のスピンドルモータ１１は回転数一定（ＣＡＶ：Constant Angular Velocity）で回転させ、フォーカスアクチュエータは、通常の光ディスクのフォーカスサーボシステムと同様の方法で、記録面又はレーベル面に対し、サーボを掛ける。トラッキングアクチュエータについてはサーボを掛けずに自由状態とするか、もしくは周期的な電流（正弦波、三角波等）を流すことにより、アクチュエータを振ることも可能である。フィードは徐々に内周から外周、又は、外周から内周に少しずつ移動させる。
ドライブ１０内でのエンコード動作は、一般的なＣＤ−Ｒ／ＲＷのＲＡＷモードエンコードとするが、ＴＡＯ（track at once）モードでも問題ない。レーザーは通常のＣＤ−Ｒ／ＲＷ記録と同様に、エンコーダ（ＣＤエンコーダ）２５で生成されたＥＦＭ信号を元とするパルス信号により、レーザーのハイパワー、ローパワーを切り換える。ここでのライトパワーは、光ディスク１の記録面又はレーベル面に視覚的な跡がつくような、ある程度以上のパワーが必要となる。これにより、光ディスク１上にドーナツ状の跡を付けることができる。
【００１３】
２．描画方法
図示するように、ドライブ１０のエンコーダ２５の後段に、ある一定のＥＦＭパターンを検出する復調器２８が設けられている。復調器２８は、ある特定のＥＦＭパターンを検出したらＨＩＧＨ値、それ以外はＬＯＷ値を出力するようにされている。そして、アンド回路２９により、復調器２８の出力とレーザーへ入力されるべきパルス信号との論理積をとり、それをレーザードライバ２７へ送る。
これにより、ある特定のＥＦＭパターンのときのみ、ライトパワーとリードパワーが交互にＥＦＭ信号に応じて出射されるようになり、光ディスク１上に記録跡がつく。それ以外のＥＦＭパターンのときは、常にリードパワーとなるので、光ディスク１上に記録跡がつかない。ＥＦＭパターンは元々、ホスト機器４０から転送されてきたデータにより生成されているので、ホスト機器４０から描画する画像や文字に対応するデータを送ることにより、光ディスク１上に画像や文字の可視画像を描画することができる。
【００１４】
３．スピンドルモータ
バッファー・アンダー・ラン後の滑らかな描き継ぎを実現するには、スピンドルの角度位置を検出する必要がある。スピンドルの角度位置を検出するために、ホールセンサやスピンドルコイルの逆起電力を用いた前記周波数発生器１２が用いられる。本実施の形態では、周波数発生器１２から、スピンドルモータ１回転当たり丁度Ｓサイクル（個）のパルス（ＦＧパルス）を発生するようにしておく（Ｓ：整数、Ｓ＞０）。すると、Ｓサイクル（個）のそれぞれのパルス幅は、次の値となる。
円弧長さ[m]＝２π×半径位置[m]／Ｓ[サイクル値]
しかしながら、実際にはホールセンサの取り付け誤差や回路の電気的ばらつき等により、上記の式の通りにはならず、一般的にばらつく傾向にある。そこで、この周波数発生器１２からのＦＧパルスを、ハードウエア又はソフトウェアによる分周回路２２で適当な分周比で分周することにより、精度の良い１周当たりＳ’サイクルのパルスを得ることができる（Ｓ’：整数、Ｓ’＞０）。この適当な分周比はモータの種類や構造により異なるが、一般的には、少なくとも１周に１サイクルの正確なパルスを出すことができる分周比が存在する。
また、別の角度位置検出方法として、光ディスク１に直接印刷された、又は取り付けられた被検出体を検出素子を用いて検出することにより正確な角度位置を検出することもできる。
【００１５】
４．基準角度位置検出
前記光ディスク１には、あらかじめ一つの半径方向が光ディスクの基準角度位置として定められており、光ディスク１の表面又は反射層に前記基準角度位置を表すために所定のマークが設けられている。この所定のマークとしては、特定の時間位置を示すサブコード又はヘッダ、特定のアドレスを示すＡＴＩＰ又はＡＤＩＰ、光ディスクの表面又は反射層に印刷又は可視画像形成処理により形成されたバーコードやその他の印など、前記光ピックアップ１３などの光学的手段を用いて読み出すことができるものが使用される。
前記ドライブ１０の制御部１８は、前記アドレス検出回路１７の出力や前記デコーダ１６の出力などから、前記基準角度位置を表すマークを検出し、該マークを検出した時点の前記１周当たりＳ’サイクル発生されるパルス信号（Ｓ’パルス）の計数値を取得して、保存しておく。前記Ｓ’パルスの計数値が保存した計数値と等しくなったときに、前記光ピックアップ１３が光ディスクの基準角度位置に当接していることがわかる。
ディスクに初めて描画するとき、及び、描き継ぎ（可視画像を追記）するときは、この基準角度位置に同期させて描画を開始する。これにより、何度描画しても、毎回同じディスク上の角度位置（基準角度位置）から描画記録を開始することが可能となる。
【００１６】
５．ホスト機器４０からドライブ１０へのデータ転送
ホスト機器４０からドライブ１０へのデータ転送は、ＡＴＡＰＩ（AT Attachment Packet Interface）のＷＲＩＴＥコマンド等を用いる。ドライブ１０におけるデータのエンコードについては、一般的なＣＤ−Ｒ／ＲＷのＲＡＷモードエンコードとして以下で説明するが、ＴＡＯモードでも問題ない。
ＲＡＷモードの場合、ホスト機器４０からドライブ１０へ転送するデータの１セクターのバイト数は２４４８バイトである。なぜなら、１セクター内には９８個のＥＦＭフレームがあり、１ＥＦＭフレーム内にはメインデータが２４バイトあり、さらに１セクター内にサブコードが９６バイト存在するので、
９８[個]×２４[バイト]＋９６[バイト]＝２４４８[バイト]
となるからである。なお、ＴＡＯモードの場合はサブコードの９６バイトが不要なので２３５２バイトとなる。
ＷＲＩＴＥコマンド等によるデータ転送の単位は数セクターとなっている。そのデータ転送１回に要するセクター数をＮ、データ転送１回に要するバイト数をＭとすると、Ｍは、
Ｍ[バイト]＝２４４８[バイト]×Ｎ[セクター]
となる。
【００１７】
６．ディスク１周のセクター数
ドライブ１０側では、ディスク１周で、丁度、整数回のデータ転送回数分のデータをエンコードするような、エンコード周波数（ＣＤエンコード倍速）とスピンドル回転数を設定しておく。
例えば、１回に１５セクターのデータ転送を丁度６回行ったときに光ディスク１周分描画する場合の例としては、
・ドライブ１０のエンコード倍速：ＣＤの４５倍速
・スピンドルの回転数：２２５０ｒｐｍ
がある。その理由を以下に記す。
ＣＤエンコーダのエンコードは、標準速度（１倍速という。）にて、１秒間に７５セクターを処理するようになっている。バイト数に換算すれば、１秒間に、
７５×２４４８＝１８３６００[バイト／秒]      ・・・（６−１）
のデータを処理することになる。ここで、仮に、４５倍速でエンコードするとした場合、１秒間に処理するバイト数は、式（６−１）の４５倍であるから、
４５×１８３６００＝８２６２０００[バイト／秒]      ・・・（６−２）
となる。
一方、ホスト機器４０からのデータ転送は、１５セクターの転送を６回行ってディスク１周になるということであるので、ディスク１周分のバイト数は、
２４４８×１５×６＝２２０３２０[バイト／周]      ・・・（６−３）
となる。
式（６−２）及び式（６−３）より、
８２６２０００／２２０３２０＝３７．５[周／秒]
すなわち、
３７．５×６０＝２２５０[ｒｐｍ]
となる。
【００１８】
以上より、ディスク１周で１５セクターのデータ転送を６回行うのであれば、ファームウエアはＣＤの４５倍速エンコードで、かつ、スピンドルの回転数は２２５０[ｒｐｍ]とするのが一つの例であることが分かる。ここで注意しなければならないのは、上記全ての数字がハードウエア的に実現可能な数字の組合せになっていなければならないということである。例えば、上記のＣＤの転送倍速が無理数となる設定だとしたら、ハードウエア的にほぼ実現不可能となる。
なお、ディスク１周分のデータを記録するために必要なホスト機器４０からのデータの転送回数をＸとすると、ディスク１周のセクター数Ｌは、
Ｌ[セクター]＝Ｘ[回]×Ｎ[セクター]
となる。
【００１９】
７．基準角度位置からの描画
エンコード（描画記録）はディスク上の基準角度位置から開始する。すなわち、前記Ｓ’パルスの計数値が、前記「４．基準角度位置検出」において計測し保存しておいた光ディスクの基準角度位置に対応するＳ’パルスの計数値と等しくなったときに、前記エンコーダ２５にその周回の画像データに対するエンコード処理を開始させる。この方法を用いれば、何度描画しても毎回同じディスク上の角度位置（基準角度位置）から描画記録を開始することができる。
また、本発明においては、前記ホスト機器４０にはセクターカウンタを設けておく。これは描画又は再描画を開始するセクターを「０」として、前記ドライブ１０に１セクター分のデータを転送するごとに１だけインクリメントするカウンタである。このカウンタ値をＴとする。
【００２０】
なお、可視画像を記録した光ディスクをドライブから取り出して、その後、再度ドライブに挿入して記録しないとき、すなわち、光ディスクに可視画像を一度だけ記録する場合等には、上述のようにして検出した光ディスクの基準角度位置を用いる必要はない。この場合には、上記４の基準角度位置の検出をすることなく、上記３で周波数発生器１２から出力されるＦＧパルス又はＳ’パルスの所定の立上がり位置を基準角度位置として、そのタイミングでエンコードを開始すればよい。
【００２１】
８．バッファー・アンダー・ラン
ドライブ１０から光ディスク１へのデータ書き込み速度（つまり、エンコード速度）よりも、ホスト機器４０からのデータ転送速度が遅いとき、又は、何らかの要因によりホスト機器４０からドライブ１０へのデータ転送がある時間以上中断されてしまうと、前記バッファメモリ２４中に光ディスク１に書き込むべきデータが無くなってしまい描画記録が中断してしまう。これをバッファー・アンダー・ランという。
本発明においては、可視画像の記録中にバッファー・アンダー・ランが発生したとき、又は、バッファー・アンダー・ランの発生が予測されるときに、次のようにして、視覚的に滑らかに描画することができるようにしている。
【００２２】
９．バッファー・アンダー・ラン後の描き継ぎ
バッファー・アンダー・ランが発生して描画が中断したとき、ドライブ１０側では描画中断したその位置にフィードを停止させておくか、又はそのフィード位置をメモリに記録しておき、描き継ぎ時に光ピックアップ１３をその位置へ移動させる。また、スピンドルはそのままの回転数を保持したまま回転させておく。
ホスト機器４０は描画が中断したら、Ｔセクター（転送したセクター数）をＬセクター（ディスク１周のセクター数）で割り、その余りＺを求める。
Ｚ[セクター]＝ｍｏｄ｛Ｔ[セクター]／Ｌ[セクター]｝
ここで、ｍｏｄ｛ｘ／ｙ｝は、ｘをｙで割った余りを表している。
以下に、余りＺがゼロであった場合、及び、ゼロでなかった場合について説明する。
【００２３】
９−１．余りＺがゼロであった場合
この場合は、丁度、基準角度位置直前で描画が中断したことになる。よって、描き継ぎは、ホスト機器４０がそのまま続きのデータをドライブ１０に転送し描画を再開すれば、途切れなく基準角度位置から描き継ぐことができる。フィードも描画再開と同時に内周から外周、又は外周から内周に移動させればよい。
【００２４】
９−２．余りＺがゼロでなかった場合
この場合、余りＺは基準角度位置に対して描きすぎたセクター数を表す。よって、基準角度位置までの記録に足らなかったセクター数Ｒは以下のようになる。
Ｒ[セクター]＝Ｌ[セクター]−Ｚ[セクター]
そこで、ホスト機器４０はバッファ４１から次に転送すべきデータの先頭Ｒセクター分のデータを捨て、その次のデータからドライブ１０に転送する。そのようにすれば、再びドライブ１０が描画を再開したとき、一部のデータが抜けるだけで、絵柄としては途切れなく基準角度位置から描き継ぐことができる。フィードも描画を再開すると同時に徐々に内周から外周、又は外周から内周に移動させればよい。
ホスト機器４０が捨てたデータの分だけ描画が薄くなる危惧があるが、実際には目視しても分からない程度である。
【００２５】
９−１、９−２を踏まえ、一般化すると、ホスト機器４０はバッファー・アンダー・ランが発生したときは、基準角度位置までの記録に足らなかったセクター数Ｒを求め、次に転送すべきデータの先頭のＲセクター分のデータを捨て（Ｒ＝０なら捨てずに）、その次のデータからドライブ１０に転送するという動作を行う。
【００２６】
１０．転送数による計算
上記９では全てセクター数を単位として扱っていたが、それを転送回数で計算しても同様な効果が得られる。すなわち、バッファ４１からドライブ１０へのデータ転送を１回するごとに１だけインクリメントする転送回数カウンタをホスト機器４０に設けておき、そのカウンタ値をＤとする。バッファー・アンダー・ランで描画が中断したら、ホスト機器４０は転送回数Ｄ（総転送回数）をＸ（ディスク１周当たりの転送回数）で割り、その余りＱを求める。
Ｑ[回]＝ｍｏｄ｛Ｄ[回]／Ｘ[回]｝
そして、基準角度位置までの記録に足らなかった転送回数Ｖは、
Ｖ[回]＝Ｘ[回]−Ｑ[回]
となる。
よって、ホスト機器４０は、バッファー・アンダー・ランが発生したときは、Ｖを求め、次にバッファ４１における転送すべきデータの先頭のＶ回分の転送のデータを捨て（Ｖ＝０なら捨てずに）、その次のデータからドライブ１０に転送することなる。
【００２７】
図２を参照して具体的に説明する。
図２の（ａ）に示すように、この例においては、ホスト機器４０から前記ドライブ１０へのデータ転送１回当たりＮセクターのデータが転送され、８回のデータ転送で１周分のデータが転送される場合を示している。このとき、１周のセクター数Ｌは、Ｌ＝８Ｎ、１周の転送回数Ｘ＝８である。
図２（ｂ）の「タイプＡ」は、３周分のデータを丁度転送したところで、第１のバッファー・アンダー・ラン（ＢＵＲ１）の発生によって記録が中断した場合を示している。
このときは、
総転送回数：Ｄ＝３×Ｘ＝２４
余り転送回数：Ｑ＝ｍｏｄ（Ｄ／Ｘ）＝ｍｏｄ（２４／８）＝０
となり、ホスト機器４０でのデータ廃棄は無く、フィード位置を保持しつつ、基準角度位置から記録が継続されることとなる。この場合には、継ぎ目はない。
また、同図の「タイプＢ」は、２周と２転送分データを転送したときに、第２のバッファー・アンダー・ラン（ＢＵＲ２）が発生して記録が中断した場合を示している。
このときは、
総転送回数：Ｄ＝２Ｘ＋２＝１８
余り転送回数：Ｑ＝ｍｏｄ（Ｄ／Ｘ）＝ｍｏｄ（１８／８）＝２
廃棄転送数：Ｖ＝ｘ−Ｑ＝８−２＝６
となる。
したがって、フィード位置を保持しつつ、ホスト機器４０は６転送分のデータを捨てて、基準角度位置から記録を再開することとなる。
【００２８】
１１．データ廃棄無しでの描き継ぎ
目で見ても分からない程度であるが、今まで説明した方法にはデータの廃棄処理がある。それを避けるため、以下のような方法を用いて、データの廃棄無しでの描き継ぎをすることもできる。
ドライブ１０にバッファ２４から光ディスク１に転送した（つまり、エンコードした）セクター数をカウントするセクターカウンタを設けておく。これは、描画又は再描画を開始するセクターを「０」として、１セクターを光ディスク１に転送するごとに１だけインクリメントするカウンタである。このカウンタ値をＢとする。そして、ホスト機器４０からＷＲＩＴＥコマンドが来たとき、バッファ２４のデータ残量が「バッファー・アンダー・ランのしきい値」であった場合、バッファー・アンダー・ラン・エラーとして返すようにする。この「バッファー・アンダー・ランのしきい値」は、前述した９の場合と同じように導出すると、以下のようになる。
「バッファー・アンダー・ランのしきい値」＝Ｌ[セクター]−ｍｏｄ｛Ｂ[セクター]／Ｌ[セクター]｝
これは、Ｂがインクリメントされる度に求める必要がある。
【００２９】
このようにしておけば、ホスト機器４０からＷＲＩＴＥコマンドによりデータ転送が要求されたときに、ドライブ１０がバッファー・アンダー・ラン・エラーとして返信し、描画データをホスト機器４０から受け取らないようにすることができる。すると、ホスト機器４０はドライブ１０のバッファー・アンダー・ラン・エラーを検知してデータ転送を行わない。その後、描画のリスタート時には、ホスト機器４０は基準角度位置からのデータを送信することになり、さらにドライブ１０も基準角度位置からの描画を始めるので、データ廃棄の無い描き継ぎをすることができる。
【００３０】
１２．データ廃棄無しでの描き継ぎ（転送数による計算）
上記１０と１１とを組み合わせて、データ廃棄無しで、転送数の計算をベースに行うこともできる。
ドライブ１０に、ホスト機器４０からデータ転送された回数をカウントするカウンタを設けておく。このカウンタ値をＹとする。この場合は、「バッファー・アンダー・ランのしきい値」は、次のようになる。
「バッファー・アンダー・ランのしきい値」＝Ｘ−ｍｏｄ｛Ｙ／Ｘ｝
これは、Ｙがインクリメントされる度に求める必要がある。
この方法は、描画データの転送中にバッファー・アンダー・ランが発生しないことが前提となるが、通常、バッファー・アンダー・ランは転送と転送の間の時間が長くなるときに発生するので、実質的にこの方法で問題がない。
【００３１】
上記「バッファー・アンダー・ランのしきい値」について、図３を参照して詳細に説明する。
ドライブ１０に搭載しているバッファ（ＦＩＦＯ）２４を図３の（ａ）のように表したとする。
この図において、この図の上から下へデータが流れるとする。また、１回のデータ転送量が図３の（ｂ）の量であったとする。すると、図３の（ｃ）に示すように、バッファ２４は丁度８回分の転送データを保持することができる。
図３の（ｄ）は、バッファ２４がＥＭＰＴＹのときを示している。
図３の（ｅ）は、バッファ２４がＦＵＬＬのときを示している。
バッファには、図の上部からホスト機器４０から転送されてきたデータが入力され、図の下からディスク１に描画するためにデータが出力され、エンコーダ２５に入る。
通常、始めに受け取ったデータはバッファ２４から出力しない。よって、バッファ２４はホスト機器４０からデータが転送入力されることによりデータが貯まっていく。そして、バッファがＦＵＬＬとなったら、初めてバッフ２４からデータが出力され、光ディスク１への記録が始まる。
通常記録中は、このバッファ残量が１〜８の間を行き来しながら記録している。
バッファ２４がＥＭＰＴＹとなると、バッファー・アンダー・ラン・エラーで記録が中断される。
バッファ２４がＦＵＬＬとなった場合は、後述するステータスレジスタのＢＳＹビットを「１」のままにしておくことにより、ホスト機器４０からのデータの受信をサスペンドする。そして、バッファ２４に転送１回分の空きができたら、ＢＳＹを「０」とすることにより、ホスト機器４０からのデータを受信する。
【００３２】
ここで、例えば、ディスク１周に要するデータ転送回数が３回であったとする。
ドライブ１０は、バッファ２４から光ディスク１に送られるデータ転送数をカウントするカウンタを有している。そのカウンタ値を３で割った余りにより、バッファー・アンダー・ランのしきい値を次のように順次変更する。
バッファからディスクに送ったデータ転送数を３で割った余りが０のときは、バッファー・アンダー・ランのしきい値＝３転送分（図３（ｆ））、余りが１のときは、バッファー・アンダー・ランのしきい値＝２転送分（図３（ｇ））、余りが０のときは、バッファー・アンダー・ランのしきい値＝１転送分（図３（ｈ））とする。
すなわち、バッファからディスクに送ったデータ転送数を３で割った余りは、ディスク上の基準角度位置以降に描画されているデータを示しているため、バッファに残っているデータと合わせて、ディスク１周分となるように、バッファー・アンダー・ランのしきい値を決定している。
なお、上記１２のように、ホスト機器４０からデータ転送された回数Ｙをカウントするカウンタを設け、そのカウンタ値Ｙを１周のデータ転送回数Ｘで割った余りをＸから引いた値をバッファー・アンダー・ランのしきい値としてもよい。
【００３３】
これにより、図３の（ｆ）、（ｇ）及び（ｈ）の状態でホスト機器４０がデータを転送しようとすると、ドライブ１０はバッファー・アンダー・ラン・エラーを返信することにより、データを受信しない。ホスト機器４０はドライブ１０からのエラーを受け、データ送信を止める（一時中断）。そして、その後、バッファ内に残ったデータは順次ディスクに記録され、バッファが空になり、記録が中断する。
このようにすれば、バッファー・アンダー・ランが発生したとき、常にディスクには基準角度位置直前で記録が中断していることになる。
上述と同様に、ドライブ１０はそのまま次のデータを受信し、バッファがＦＵＬＬになったらディスクへの書き込みを開始すれば、書き込みは常に基準角度位置から始まるので、データを破棄することなく、滑らかな描き継ぎをすることができる。
【００３４】
図４は前記ドライブ１０に設けられるステータスレジスタの構成を示す図である。このステータスレジスタは、ＡＴＡレジスタの１つで８ビットのレジスタである。
前記ホスト機器４０は、このステータスレジスタを読み出すことができ、その読み出し内容によりドライブ１０の現在の状態を認識し、それに基づいて、バッファ２４へのデータの転送制御を行う。
ステータスレジスタの内容は、図４のようになっており、特に、ＢＳＹ（ビジー）ビット、ＤＲＱ（データリクエスト）ビット及びＥＲＲ（エラー）ビットが利用される。すなわち、ホスト機器４０からのデータ送信をサスペンドさせるために、ＢＳＹビットが利用され、バッファー・アンダー・ランの発生は、ＥＲＲビットを用いてホスト機器４０に通知される。
【００３５】
図５は、前記ホスト機器４０の動作を説明するための状態遷移図である。
ホスト機器４０は、処理が開始される（５１）と、ドライブ１０に設けられている前記ステータスレジスタを読み出し（５２）、ＢＳＹ，ＤＲＱ，ＥＲＲの各ビットが全て「０」でないときは、全て「０」となるまで待つ。そして、ＢＳＹ，ＤＲＱ，ＥＲＲの各ビットが全て「０」となると、前記ドライブ１０に対し、ＷＲＩＴＥコマンドを発行する（５３）。そして、ステータスレジスタを読み出す（５４）。この結果、ＢＳＹビットが「１」のときは、ＢＳＹ＝「０」、ＤＲＱ＝「１」となるまで待ち、ＢＳＹ＝「０」、ＤＲＱ＝「１」となったら、描画データをドライブ１０のバッファ２４に送信する。そして、送信が完了すると、前記ステータスレジスタの読み出し（５２）に戻る。
一方、読み出したステータスレジスタのＥＲＲビットが「１」であるときは、バッファー・アンダー・ランが発生したものとして、エラー処理を行う（５６）。ここで、前述のようにデータ廃棄を行ったり、あるいは、所定時間が経過するのを待つ。
【００３６】
図６は、前記ドライブ１０の動作を説明するための状態遷移図である。
ドライブ１０は、動作が開始される（６１）と、ドライブ１０に設けられているエラーフラグ（リファードエラーフラグ）をクリアする（６２）。そして、前記ステータスレジスタのＢＳＹ，ＤＲＱ，ＥＲＲの各ビットを全て「０」にする（６３）。そして、ホスト機器４０からのコマンドを待つ（６４）。ホスト機器４０からＷＲＩＴＥコマンドを受信すると、前記ステータスレジスタのＢＳＹビットを「１」とし（６５）、エラーフラグをチェックする（６６）。エラーフラグが立っていないときは、前記ステータスレジスタのＢＳＹビットを「０」、ＤＲＱビットを「１」にして（６７）、前記ホスト機器４０から描画データが転送されるのを待つ（６８）。ホスト機器４０からの描画データを受信すると（６９）、受信データをバッファ２４に転送する（７０）。描画データの受信が完了すると、描画状態を確認する（７１）。描画状態でないときは、バッファ２４の状態を確認する（７２）。最初は、バッファ２４はＦＵＬＬではないので、ＢＳＹビットを「０」として（７３）、前記コマンド待ち状態（６４）に戻る。そして、再びＷＲＩＴＥコマンドを受信し、前述の動作を繰り返す。そして、バッファ状態がＦＵＬＬとなったら、光ディスク１への可視画像の描画を開始する（７４）。すなわち、バッファ２４に蓄積されているデータを順次読み出して前記エンコーダ２５に供給し、エンコードを開始する。そして、前述と同様に、ＢＳＹビットを「０」として（７３）、コマンド待ち（６４）に戻る。
【００３７】
そして、ＷＲＩＴＥコマンドを受信すると、前述と同様に動作する。今度は、描画が開始されているので、描画状態確認（７１）において描画中であると判断され、バッファ２４の状態が確認される（７５）。バッファのデータ量がフルでもバッファー・アンダー・ランしきい値以下でもない通常の状態であるときは、前述と同様に、ＢＳＹビットを「０」として（７３）、コマンド待ち（６４）に戻る。
バッファがＦＵＬＬ状態のときは、データがエンコーダ２５に読み出されて、ＦＵＬＬ状態でなくなるのを待つ。
また、バッファに蓄積されているデータ量が前述したバッファー・アンダー・ランしきい値以下であるときには、前記エラーフラグをセットした後（７６）、ＢＳＹビットを「０」として（７３）、コマンド待ちに戻る。
このエラーフラグがセットされている状態のときに、ホスト機器４０からＷＲＩＴＥコマンドを受信すると、エラーフラグチェック（６６）において、エラーフラグが立っている状態となり、ステータスレジスタのＢＳＹビットを「０」、ＥＲＲビットを「１」とする（７７）。そして、データの書き込みを中断してエラー処理（７８）を行い、開始後の状態に戻る。
このように、バッファ２４のデータ量がバッファー・アンダー・ランしきい値以下となったときは、ステータスレジスタのＥＲＲビットを「１」とすることにより、ホスト機器４０はその状態を知ることができる。
前記図５に関して説明したように、ＥＲＲ＝「１」のとき、ホスト機器４０はエラー処理を実行する。この図の場合においては、バッファー・アンダー・ランしきい値以下となったときに、ＥＲＲ＝「１」とされているため、前記ホスト機器４０はデータを破棄することなく、ドライブ１０がエラー状態でなくなるまで待つ。そして、エラー状態でなくなると、続きのデータの転送を開始する。
このようにして、バッファー・アンダー・ランが発生したとき、又は、バッファー・アンダー・ランの発生が予測されるときに、視覚的に滑らかに可視画像の描き継ぎを行うことができる。
【００３８】
１３．応用
応用例として、ＦＧパルス（Ｓ’パルス）を逓倍する場合について説明する。
前述のように、Ｓ’パルスはＦＧパルスを適当な分周比で分周した正確なスピンドルの回転位置を示す信号である。この信号をさらに分周し、スピンドル１回転で丁度１パルス出るようにした信号をＳ’’パルスとする。これをＰＬＬ回路等で逓倍すれば、より多くの正確なスピンドル回転位置を示す信号ができ、これを用いて１周につきより多くの描画可能開始位置を得ることができる。
例えば、１周の転送回数であるＸを用いてＳ’’パルスをＸ逓倍することで転送単位ごとに描画休止と再開を行うことができる。すなわち、前記図２（ａ）の例を用いれば、１周中の８個所において、描画休止と再開を行うことが可能となる。
さらに、１周のセクター数であるＬ（＝Ｘ×Ｎ）を用いてＳ’’パルスをＬ逓倍することでセクター単位で描画休止と再開を行うことができる。この場合は、転送単位よりも細かい休止と再開の制御ができるため、例えば、外乱などの転送速度以外の原因で発生する描画中断にも十分な対応ができる。
【図面の簡単な説明】
【００３９】
【図１】本発明の光ディスク記録システムの一実施の形態の要部構成を示すブロック図である。
【図２】バッファー・アンダー・ランが発生したときの処理について説明するための図である。
【図３】バッファ２４の動作について説明するための図である。
【図４】ドライブ１０に設けられるステータスレジスタの構成を示す図である。
【図５】ホスト機器４０の動作を説明するための状態遷移図である。
【図６】ドライブ１０の動作を説明するための状態遷移図である。
【符号の説明】
【００４０】
１：光ディスク、１０：光ディスクドライブ装置（ドライブ）、１１：スピンドルモータ、１２：周波数発生器、１３：光ピックアップ、１４：ＲＦアンプ、１５：サーボ回路、１６：デコーダ、１７：アドレス検出回路、１８：制御部、１９：ステッピングモータ、２０：モータドライバ、２１：モータコントローラ、２２：分周回路、２３：ＬＰＣ回路、２４：バッファメモリ、２５：エンコーダ、２６：ストラテジ回路、２７：レーザードライバ、２８：復調器、２９：アンド回路、３０：インターフェース回路、３１復調器、３２：アンド回路、４０：ホスト機器、４１：バッファメモリ
【図１】
2007012159.tif 000003
【図２】
2007012159.tif 000004
【図３】
2007012159.tif 000005
【図４】
2007012159.tif 000006
【図５】
2007012159.tif 000007
【図６】
2007012159.tif 000008