DVD−R(Digital Versatile Disk-Recordable)やDVD−RW(DVD-Rewritable)等の光ディスクには、光ディスク上のアドレス情報等を含むプリピット及びウォブリングされたグルーブトラックが予め形成されている。光ディスクがDVD−R/RWの場合、プリピットはランドプリピット(LPP:Land Pre-Pit)と呼ばれ、このランドプリピットを検出することにより、光ディスク上の絶対位置を知ることができる。一方、グルーブトラックに形成されたウォブルは一定周期のうねりをもち、このウォブルの周波数を検出して逓倍することにより、光ディスクにデータを書き込むタイミングを得るために使用する書き込み用クロック信号を生成することができる。
光ディスクがDVD−Rの場合、光ディスクに記録されるデータは、ECC(Error Correction Code)ブロックという、誤り訂正の最小単位から構成される。ECCブロックは16個のセクタを有し、各セクタは26個のシンクフレームを有する。図5は、1個のセクタの構成例を示す。図5に示されるように、1個のセクタは、2個のシンクフレームで構成される行を13行有する。そして、1個のシンクフレームは、32チャネルビットの同期信号と、1456チャネルビットの8/16変調データとから成る。同期信号は、フレーム単位を認識するためのシンクコードであり、SY0〜SY7で表される。それらのシンクコードは、「14T長の記録マークと4T長のスペース」、又は「14T長のスペースと4T長の記録マーク」を含むコードである。ここで、「スペース」とは、記録マークと記録マークとに挟まれた領域であり、「1T」とは、記録マークの単位時間長さである。1セクタに含まれる26個のフレームのうち、偶数番目のフレームは、EVENフレームと呼ばれ、奇数番目のフレームはODDフレームと呼ばれる。
1フレームには、8周期のウォブルが対応する。また、EVENフレームの8ウォブルのうち先頭の3ウォブルの頂点位置に、表1に示される意味を有するLPPコードが配置されている。
1セクタには13個のLPPコードが含まれ、これらのLPPコードを、表1に示されるテーブルを用いて変換することにより、13ビットの情報を得ることができる。そして、この13ビットの情報を、光ディスク装置のプリピット信号デコーダによって復調することにより、プリピットシンク信号やアドレス情報を得ることができる。
上述の光ディスクに対して、光ディスク装置を用いて、既に記録されたデータに追記するように連続して新たなデータの書き込みを行う場合について説明する。DVD−R/RW規格では、データはECCブロック単位に記録され、データの記録開始位置及び終了位置は、ECCブロックの境界から18バイト後方にずれた位置である。よって、以前に記録したデータに追記して新たなデータの書き込みを開始する場合、ECCブロックの境界から18バイト後方にずれた位置から新たなデータを書き込むようにすれば、既に書き込まれたデータと新たに書き込むデータとの結合部においてデータの不連続が生じることがない。また、新たなデータは、LPPと、新たなデータのシンクコードに含まれる14T長のスペース又は14T長の記録マークが重なるように記録される。
ここで、すでに記録されていたデータ(以下、「既記録データ」という。)について、そのデータが本来記録されるべき位置と、データが実際に記録されている位置との間でずれがある場合は、新たなデータの追記を繰り返すと、そのずれの量が蓄積されてしまうという問題がある。そこで、プリピットシンク信号及びデータシンク信号と呼ばれる2つの信号を用いて、その2つの信号の位相のずれ量を検出し、新たなデータを追記する場合にその位相のずれ量を低減するように書き込みを行う技術が知られている(例えば、特許文献1参照。)。以下に、その技術について説明する。
まず、プリピットシンク信号とデータシンク信号について説明する。プリピットシンク信号は、光ディスク上のLPPを用いて検出することができる。LPPは、光ディスク装置の光ピックアップ及びリードアンプによって検出され、その検出結果を示すプリピット信号が、リードアンプからプリピット信号デコーダに入力される。プリピット信号デコーダは、表1に示されたテーブルを用いて、入力されたプリピット信号に対してデコードを行い、アドレス情報等を生成するとともに、プリピット信号を受け取ったタイミングでプリピットシンク信号のパルスを生成する。
データシンク信号は、光ディスク上の既記録データを用いて検出することができる。既記録データは、光ディスク装置の光ピックアップ及びリードアンプによって読み出され(再生され)、その結果得られた再生信号が、DVDデコーダに出力される。DVDデコーダは、その再生信号に含まれているシンクコードを検出し、そのシンクコードを検出したタイミングでデータシンク信号のパルスを生成する。
プリピット信号デコーダによって生成されたプリピットシンク信号とDVDデコーダによって生成されたデータシンク信号は、ともに、光ディスク装置の位相ずれ検出回路に入力される。位相ずれ検出回路は、入力されたプリピットシンク信号とデータシンク信号の位相のずれ量を検出する。最初に、比較のために、プリピットシンク信号とデータシンク信号との間で位相のずれがない場合、すなわち、既記録データの本来記録されるべき位置と、実際に記録されている位置が一致する場合について説明する。図6は、その場合に生成されるデータシンク信号とプリピットシンク信号の波形例を示す。既記録データについて上記2つの位置が一致するとき、図6に示されるように、既記録データのシンクコードの位置と、LPPの位置が一致する。光ディスク上の既記録データ及びLPPの位置関係が図6に示されるような関係であるとき、データシンク信号Saにおいてパルスが発生するタイミングと、プリピットシンク信号Sbにおいてパルスが発生するタイミングは一致し、2つの信号Sa,Sbの間に位相のずれは生じない。
次に、プリピットシンク信号とデータシンク信号との間で位相のずれが生じている場合について説明する。図7は、データシンク信号の位相に対してプリピットシンク信号の位相が遅れている場合の位相のずれ量の検出を説明する図である。図7に示される例では、位相のずれ量の検出を、位相のずれ量の絶対値及び位相のずれ方向を検出することにより行う。図7に示されるように、既記録データのシンクコードの位置が、LPPの位置に対して前方であるとき、データシンク信号Saのパルスが、対応するプリピットシンク信号Sbのパルスに対して時間的に早く生成される。この場合、データシンク信号Sa及びプリピットシンク信号Sbが入力された位相ずれ検出回路は、データシンク信号Saの1つのパルスが入力されてから最初にプリピットシンク信号Sbの1つのパルスが入力されるまでの間、シンク差検出信号ScをHigh(H)レベルにする。また、位相ずれ検出回路は、シンク差検出信号ScがHレベルの間、内部に備えているシンク差測定カウンタを用いてシンク差検出信号ScがHレベルである時間を測定し、その測定結果を示すシンク差カウント信号Sdを出力する。例えば、位相ずれ検出回路は、シンク差検出信号ScがHレベルの間、シンク差測定カウンタを用いて、内部に備える水晶発振器等によって生成される固定周波数のチャネルクロック信号のクロックパルスをカウントし、そのカウント数とチャネルクロック幅(例えば、T)とを用いて、シンク差検出信号ScがHレベルである時間を測定する。さらに、位相ずれ検出回路は、プリピットシンク信号Sbに対してデータシンク信号Saが進んでいること又は遅れていることを示す信号、すなわち位相のずれ方向を示すずれ方向検出信号Seを出力する。例えば、ずれ方向検出信号Seが、データシンク信号Saがプリピットシンク信号Sbに対して進んでいる場合にLow(L)レベルであり、遅れている場合にHレベルであるなら、図7に示された例において、ずれ方向検出信号SeはLレベルとなる。
位相ずれ検出回路は、シンク差カウント信号Sdを用いて、ずれ方向検出信号Seを生成する。ここで、ある時点でデータシンク信号Saとプリピットシンク信号Sbの間に位相のずれがない、すなわち、シンク差カウント信号Sdの値が0であるとき、それ以降の書き込みによって生じる位相のずれ量の絶対値は、最大でも数十Tである。よって、想定される最大ずれ量の絶対値をM(例えば、M=20T)としたとき、このMと、シンク差検出信号ScがHレベルの間のシンク差カウント信号Sdの値Nとの大小関係を用いてずれ方向を判定することができる。N<Mのとき、位相ずれ検出回路は、データシンク信号の位相に対してプリピットシンク信号の位相が遅れていると判断し、ずれ方向検出信号SeをLレベルにする。なお、上記値Nは、データシンク信号Saとプリピットシンク信号Sbの位相のずれ量の絶対値である。
次に、図8は、データシンク信号の位相に対してプリピットシンク信号の位相が進んでいる場合の位相のずれ量の検出を説明する図である。図8に示されるように、既記録データのシンクコードの位置が、光ディスク上のLPPの位置に対して後方にあるとき、プリピットシンク信号Sbのパルスに対してデータシンク信号Saのパルスが遅れて生成される。位相ずれ検出回路の動作は、図7を用いて説明した動作と同様である。ここで、位相ずれ検出回路は、図7の場合と同様に、データシンク信号Saの1つのパルスが入力されてから最初にプリピットシンク信号Saの1つのパルスが入力されるまでの間、シンク差検出信号ScをHレベルにする。ここで、図8に示されたシンク差カウント信号Sdの値Nは、実際のデータシンク信号Saとプリピットシンク信号Sbの位相のずれ量の絶対値を表しているのではない。実際の位相のずれ量の絶対値は、プリピットシンク信号Sbのパルス間の間隔をDとすると、D−Nである。図8の場合、シンク差カウント信号Sdの値Nと想定される最大ずれ量の絶対値Mとの間にはN>Mの関係が成り立つ。N>Mのとき、位相ずれ検出回路は、データシンク信号の位相に対してプリピットシンク信号の位相が進んでいると判断し、ずれ方向検出信号SeをHレベルにする。
図7及び図8を用いて説明されたように、位相ずれ検出回路がデータシンク信号Saとプリピットシンク信号Sbの位相のずれ量の絶対値及びずれ方向を検出すると、それらの信号は書き込み用クロック信号生成回路に入力される。書き込み用クロック信号生成回路は、光ディスク上の既記録データに連続するように新たなデータを書き込む場合に、入力された位相のずれ方向に応じて位相のずれ量の絶対値を低減するように書き込み用クロック信号を生成する。例えば、図7に示されるようにプリピットシンク信号Sbに対してデータシンク信号Saが進んでいる場合、書き込み用クロック信号生成回路は、新たにデータを書き込む際の書き込み用クロック信号を、その書き込み用クロック信号の周波数が、入力される位相のずれ量の絶対値と任意設定されるゲインに応じて低くなるように生成する。つまり、書き込み用クロック信号の周波数が、ウォブル周波数を逓倍して生成するクロック信号の周波数、すなわち通常時の書き込み用クロック信号の周波数よりも低くなるように、書き込み用クロック信号を生成する。これにより、新たに書き込まれる追記のデータは、光ディスク上のLPPに対して徐々に後方に記録され、前回記録終了時点で残留していた光ディスク上の既記録データのシンクコードの位置と光ディスク上のLPPの位置とのずれが徐々に解消される。
逆に、図8に示されるように、プリピットシンク信号に対してデータシンク信号が遅れている場合、書き込み用クロック信号生成回路は、新たにデータを書き込む際の書き込み用クロック信号を、その書き込み用クロック信号の周波数が、入力される位相のずれ量の絶対値と任意設定されるゲインに応じて高くするように生成する。つまり、書き込み用クロック信号の周波数が、ウォブル周波数を逓倍して生成するクロック信号の周波数、すなわち通常時の書き込み用クロック信号の周波数よりも高くなるように、書き込み用クロック信号を生成する。これにより、新たに書き込まれる追記のデータは、光ディスク上のLPPに対して徐々に前方に記録され、前回記録終了時点で残留していた光ディスク上の既記録データのシンクコードの位置と光ディスク上のLPPの位置とずれが徐々に解消される。
従来の光ディスク装置は、光ディスク上の既に記録されたデータに追記するように連続して新たなデータの書き込みを行う場合、まず、光ディスク上のデータがすでに記録された記録済領域をシークする。そして、そのシーク中に、記録済領域に記録されたデータ、及び記録済領域に予め形成されたプリピットを用いて、それぞれデータシンク信号及びプリピットシンク信号を生成し、データシンク信号とプリピットシンク信号の位相のずれ量を検出する。そして、シーク位置が、光ディスクの記録済領域に続いてまだデータが記録されていない未記録領域に到達した時点で、検出した位相のずれ量を低減するように新たなデータの書き込みを開始する。
特開2003−30841号公報
以下に、図面を参照して、本発明の実施の形態について説明する。本発明の第1の実施の形態による光ディスク装置においては、光ディスクの記録済領域以降の未記録領域のプリピットを用いてプリピットシンク信号の生成を行い、そのようにして生成されたプリピットシンク信号とデータシンク信号の位相のずれ量を測定することによって、プリピット信号とデータシンク信号の位相のずれ量を正確に検出する。
図1は、本発明の第1の実施の形態による光ディスク装置の構成例を示すブロック図である。本実施の形態による光ディスク装置1は、例えば、DVD−R及びDVD−RW等の光ディスク2に対してデータの記録及び再生を行うことができる。図1に示される光ディスク装置1は、スピンドルモータ3、モータドライバ4、サーボ回路5、ホストインタフェース6、読み出し用クロック信号生成回路7、光ピックアップ8、リードアンプ9、DVDデコーダ10、バッファマネージャ11、バッファRAM12、レーザコントロール回路13、書き込み用クロック信号生成回路14、プリピット信号デコーダ15、位相ずれ検出回路16、記録制御回路17、DVDエンコーダ18、CPU19及びCPUインタフェース20を備える。なお、光ピックアップ8及びリードアンプ9は再生検出部をなし、記録制御回路17は記録制御部をなし、読み出し用クロック信号生成回路7及びDVDデコーダ10はデータシンク信号生成部をなし、プリピット信号デコーダ15はプリピットシンク信号生成部をなし、位相ずれ検出回路16は位相ずれ検出部をなし、書き込み用クロック信号生成回路14は書き込み用クロック信号生成部をなす。
光ディスク装置1は、光ディスク2をスピンドルモータ3で回転駆動させる。スピンドルモータ3は、モータドライバ4とサーボ回路5により回転制御される。光ピックアップ8は、図示しない半導体レーザ、光学系、フォーカスアクチュエータ、トラックアクチュエータ、受光素子、及びポジションセンサ等を内蔵しており、レーザ光を光ディスク2に照射する。
光ディスク2上のデータを読み出すデータ再生の場合、光ディスク装置1では、光ピックアップ8によって光ディスク2にレーザ光が照射される。そして、そのレーザ光の反射光に基づいて生成された再生信号が、リードアンプ9で増幅かつ二値化され、その二値化された再生信号が、読み出し用クロック信号生成回路7及びDVDデコーダ10に出力される。読み出し用クロック信号生成回路7は、入力された再生信号に含まれるシンクコードから読み出し用クロック信号を生成し、その読み出し用クロック信号をDVDデコーダ10に出力する。DVDデコーダ10は、読み出し用クロック信号に同期して入力された再生信号からシンクコードを検出し、そのシンクコードを検出したタイミングでデータシンク信号Saのパルスを生成する。また、DVDデコーダ10は、入力された再生信号に対して8/16復調を行い、復調されたデータを、バッファマネージャ11を介して随時バッファRAM12に格納するとともに、さらにデータの信頼性を高めるために、格納されたデータに対してエラー訂正処理を行う。DVDデコーダ10により、エラー訂正処理が終了したデータは、ホストインタフェース6により、バッファマネージャ11を介して読み出され、ホストコンピュータへ転送される。
一方、ディスク上にデータを書き込むデータ記録の場合、光ディスク装置1では、光ピックアップ8によって光ディスク2にレーザ光が照射され、光ディスク2上に予め形成されている所定のプリピットが検出される。そのレーザ光の反射光を用いて生成された、プリピットの検出結果を示すプリピット信号は、リードアンプ9で増幅かつ二値化され、その二値化されたプリピット信号は、プリピット信号デコーダ15に出力される。プリピット信号デコーダ15は、プリピット信号が入力されたタイミングでプリピットシンク信号Sbのパルスを生成するとともに、入力されたプリピット信号を用いて、アドレス情報を復調生成する。また、光ピックアップ8は、光ディスク2に予め形成されたウォブルを読み出し、得られたウォブル信号をリードアンプ9に出力する。ウォブル信号は、リードアンプ9で増幅かつ二値化され、その二値化されたウォブル信号は、書き込み用クロック信号生成回路14に入力される。書き込み用クロック信号生成回路14は、入力されたウォブル信号を用いて、書き込み速度に応じた書き込み用クロック信号を生成する。
光ディスク2へ記録するデータは、ホストコンピュータからホストインタフェース6及びバッファマネージャ11を介してバッファRAM12へ転送される。DVDエンコーダ18は、バッファマネージャ11を介してバッファRAM12のデータを読み出し、エラー訂正コード、EDCコード、SYNCコード、ヘッダ情報、ID情報等を付加し、バッファRAM12へ書き戻す。また、DVDエンコーダ18は、準備されたデータを、バッファマネージャ11を介してバッファRAM12から読み出し、8/16変調して出力する。DVDエンコーダ18から出力されたデータは、レーザコントロール回路13及び光ピックアップ8を介して、光ディスク2に記録される。また、記録制御回路17は、プリピット信号デコーダ15から得られるアドレス情報を用いて書き込みの開始及び停止のタイミングを示す信号を生成し、その信号を用いて、レーザコントロール回路13及びDVDエンコーダ18を制御することにより、正確な位置でのデータの書き込みを可能にしている。
位相ずれ検出回路16は、光ディスク2に記録されているデータに連続するように新たなデータを記録する場合に、プリピットシンク信号とデータシンク信号との間の位相のずれ量を検出する。本実施の形態による光ディスク装置1では、位相ずれ検出回路16は、プリピットシンク信号とデータシンク信号の位相のずれ量の絶対値を検出するとともに、プリピットシンク信号の位相に対してデータシンク信号の位相が進んでいること又は遅れていることを示す位相のずれ方向を求める。そして、位相ずれ検出回路16は、そのずれ量の絶対値及びずれ方向を示す信号を、書き込み用クロック信号生成回路14に出力する。書き込み用クロック信号生成回路14は、ずれ量の絶対値及びずれ方向を示す信号が入力されると、そのずれ方向に応じてずれ量の絶対値を低減するように書き込み用クロック信号を生成する。
CPU19は、CPUインタフェース20を介してすべての回路部位と接続されており、データ再生及びデータ記録において、それぞれデータ再生及びデータ記録するために現在の状態を把握し、命令の発行等を行う。
次に、図1に示された光ディスク装置1を用いて、光ディスク2に記録されているデータに連続するように新たなデータを光ディスク2に記録する場合、すなわちデータの追記処理を行う場合の動作について説明する。図2は、光ディスク2へのデータの記録を終了してから、次に新たなデータの記録を開始するまでのCPU19の処理フロー例を示すフローチャートである。また、図3は、上記データの追記処理が行われる場合のデータシンク信号Saとプリピットシンク信号Sbの位相のずれ量の検出例を説明する図である。図2に示されるように、CPU19は、最初に、CPUインタフェース19を介して、未記録領域測定命令を発行する(ステップS1)。具体的には、CPU19は、CPUインタフェース20を介して出力する未記録領域測定信号SfをHレベルにする。未記録領域測定信号SfがHレベルになることにより、光ディスク装置1は、未記録領域測定モードに切り替わる。
次に、CPU19は、光ピックアップ8等を制御して、光ディスク2に対してシーク動作を行わせる(ステップS2)。ここでいう「シーク動作」とは、光ディスク2上の位置を特定しながら光ディスク2をたどると同時に、光ディスク2に記録されたデータを再生する、及び/又は、光ディスク2上に予め形成されているウォブル及びLPPを検出する動作である。光ディスク装置1が未記録領域測定モードに切り替わると、記録制御回路17は、光ディスク2のシーク位置が未記録領域に到達しても追記の書き込みを開始しないように、レーザコントロール回路13及びDVDエンコーダ18を制御する。従来の光ディスク装置は、光ディスク2の記録済領域をシークしている間に、データシンク信号Sa及びプリピットシンク信号Sbを生成して、その位相のずれ量を検出しているので、光ディスク2のシーク位置が未記録領域に到達した時点で、新たなデータの書き込みを開始していた。しかし、本実施の形態による光ディスク装置1は、未記録領域におけるプリピットを用いてプリピットシンク信号Sbを生成するので、光ディスク2の記録済領域をシークした後、未記録領域に対してもシーク動作を続行する。
記録制御回路17は、読み出し用クロック信号生成回路7、DVDデコーダ10、プリピット信号デコーダ15及び位相ずれ検出回路16に、プリピットサーチ信号Sgを出力する。そして、シーク位置が光ディスク2の記録済領域の終端位置に近づくと、プリピットサーチ信号SgをHレベルにする。プリピットサーチ信号Sgは、光ディスク2におけるシーク位置が記録済領域から未記録領域へ切り替わるタイミングを示す信号として用いられる。すなわち、光ディスク装置1が光ディスク2の未記録領域をシークしているとき、プリピットサーチ信号SgはHレベルとなる。記録制御回路17は、シーク位置を検知するために、DVDデコーダ10から入力されたデータシンク信号Saを用いて、フレーム単位の位置認識を行う。具体的には、記録制御回路17は、前回記録を終了した位置のフレーム値を保持しておき、それを次回追記記録の目標フレームとする。そして、新たなデータの追記時に、DVDデコーダ10から入力されたデータシンク信号Saのパルスをカウントして、そのカウントした結果から現在シーク中のフレームを検知する。そして、記録制御回路17は、現在シーク中のフレームと上記目標フレームとを比較し、シーク位置が光ディスク2の記録済領域の終端位置に近づいたこと、すなわち新たなデータを書き込む未記録領域の開始位置から所定の距離だけ前方の位置に到達したことを検知したとき、プリピットサーチ信号SgをHレベルにする。このようにすれば、記録制御回路17は、シーク位置が光ディスク2の記録済領域から未記録領域へ移行する時に正確に、プリピットサーチ信号SgをHレベルにすることができる。なお、プリピットサーチ信号Sgは、第1の制御信号に相当する。
プリピット信号デコーダ15は、プリピットサーチ信号SgがHレベルのとき、プリピット信号のサーチ状態に入る。プリピット信号デコーダ15は、プリピット信号のサーチ状態にある間プリピット信号を検出し、プリピットシンク信号Sbのパルスを生成する。なお、プリピット信号デコーダ15は、プリピットサーチ信号がLレベルの間も、リードアンプ9からプリピット信号が入力されれば、プリピットシンク信号Sbのパルスを生成する。しかし、プリピット信号デコーダ15は、プリピットサーチ信号SgがHレベルになると、それまでの状態をリセットし、再度プリピット信号の検出を行う。図3は、光ディスクの記録済領域においてLPPが全く検出されない場合の例を示しているが、ある程度のLPPが検出されている状態であっても、プリピットサーチ信号SgがHレベルになると、その状態をリセットして再びプリピット信号の検出を行う。
読み出し用クロック信号生成回路7は、プリピットサーチ信号SgがLレベルの間は、リードアンプ9から入力された再生信号に含まれるシンクコードを用いて読み出し用クロック信号を生成する。その後、プリピットサーチ信号SgがHレベルになると、再生信号が入力されなくなるので、プリピットサーチ信号SgがLレベルの間に生成した読み出し用クロック信号をそのまま出力する。これにより、読み出し用クロック信号生成回路7は、光ディスク2の未記録領域がシークされている間に再生信号が入力されなくとも、読み出し用クロック信号を出力し続けることができる。
DVDデコーダ10は、プリピットサーチ信号SgがLレベルの間は、入力された読み出し用クロック信号に同期して、入力される再生信号に含まれるシンクコードを検出し、そのシンクコードを検出したタイミングでデータシンク信号Saのパルスを生成する。しかし、記録済領域以降の未記録領域においては光ディスク2上の既記録データがないため、光ディスク2の未記録領域がシークされている間は、DVDデコーダ9に読み出し用クロック信号及び再生信号が入力されず、DVDデコーダ9は、データシンク信号Saのパルスを生成することができない。データシンク信号Saのパルスが出力されないと、データシンク信号Saとプリピットシンク信号Sbとの間の位相のずれ量を測定することは不可能である。そこで、DVDデコーダ9は、プリピットサーチ信号SgがHレベルの間は、データシンク信号Saの保護動作を行い、光ディスク2の未記録領域がシークされている間であってもデータシンク信号Saのパルスを出力する。このデータシンク信号保護動作は、例えば、その未記録領域直前の記録済領域がシークされている間に生成されたデータシンク信号Saのパルスに基づいて、所定の時間間隔で補完してデータシンク信号Saのパルスを出力し続ける動作である。これにより、DVDデコーダ9は、再生信号が入力されなくてもデータシンク信号Saのパルスを生成し続けることができる。
位相ずれ検出回路16は、入力されるプリピットサーチ信号SgがHレベルである間、入力されたデータシンク信号Saとプリピットシンク信号Sbとを用いてシンク差検出信号Scを生成する。そして、シンク差検出信号ScがHレベルである期間を、内部に備えたシンク差測定カウンタを用いて測定し、その測定結果を示すシンク差カウント信号Sdを出力する。さらに、その測定結果と予め設定されている最大ずれ量の絶対値とを比較することにより、位相のずれ方向を検出し、そのずれ方向を示すずれ方向検出信号Seを生成する。位相ずれ検出回路16がデータシンク信号Saとプリピットシンク信号Sbの位相のずれ量を検出する動作は、従来通りであるため、ここでは、説明を省略する。位相ずれ検出回路16は、データシンク信号Saの1つのパルスが生成されてから最初にプリピットシンク信号Sbの1つのパルスが生成されるまでの時間をチャネルクロック単位で検出するので、位相のずれ量を精度よく検出でき、データの追記を行う場合に、より精度良く書き込み位置の補正を行うことができる。なお、上述の説明では、位相ずれ検出回路16は、データシンク信号Saの1つのパルスが生成されてから最初にプリピットシンク信号Sbの1つのパルスが生成されるまでの時間を検出したが、プリピットシンク信号Sbの1つのパルスが生成されてから最初にデータシンク信号Saの1つのパルスが生成されるまでの時間を検出してもよい。また、位相ずれ検出回路16がシンク差測定カウンタを用いてカウント動作を行う際に用いるクロック信号は、位相ずれ検出回路16の内部で生成されたものであっても外部で生成されたものであってもよい。
CPU19は、ずれ測定の完了を検知するまで、光ピックアップ8にシーク動作を行わせる(ステップS3)。位相ずれ検出回路16は、データシンク信号Saとプリピットシンク信号Sbの位相のずれ量を測定し終わった時点で、ずれ測定完了割り込み信号を、CPUインタフェース20を介してCPU19に出力する。CPU19は、ずれ測定完了割り込み信号が入力されることにより、ずれ測定の完了を検知する。CPU19は、このずれ測定完了割り込み信号の入力により、外部からずれ測定完了のタイミングを検知し、光ディスク装置の動作を、シーク動作から、引き続き行われる追記動作へ切り替える。具体的に、CPU19は、ずれ測定が完了したかどうかを調べて(ステップS3)、ずれ測定の完了を検知できない場合は(NO)、引き続きシーク動作を行わせ(ステップS2)、ずれ測定が完了したことを検知した場合、すなわちずれ測定割り込み信号が入力されたことを検知した場合は(YES)、記録制御回路17を制御して、プリピットサーチ信号SgをLレベルにする。そして、CPU19は、ずれ測定完了信号が入力されると同時に、位相ずれ検出回路16から位相のずれ量のデータ、ここではずれ量の絶対値とずれ方向を示すデータを取得して、そのデータを一旦記憶する(ステップS4)。次に、CPU19は、CPUインタフェース20を介して追記動作開始命令を発行する(ステップS5)。CPU19は、この命令の発行後、光ピックアップ8等を制御して、光ディスク上の追記開始位置までのシーク動作を行わせる(ステップS6)。CPU19は、シーク位置が追記開始位置に到達したかどうか調べて(ステップS7)、到達したことを検知できない場合は(NO)、引き続きシーク動作を行わせ(ステップS6)、到達したことを検知した場合は(YES)、一旦記憶したずれ量のデータを位相ずれ検出回路16に出力し、光ディスク装置1に追記動作を開始させる(ステップS8)。なお、位相ずれ検出回路16が検出したずれ量のデータは、CPU19ではなく、位相ずれ検出回路16が内部に備えるメモリ(図示しない)に記憶されてもよい。また、ずれ測定完了割り込み信号は、第3の制御信号に相当する。
位相ずれ検出回路16は、CPU19から入力された、データシンク信号Saとプリピットシンク信号Sbの位相のずれ量の絶対値及び位相のずれ方向を示すデータに基づいて、そのずれ量の絶対値及びずれ方向を示す信号を、書き込み用クロック信号生成回路14に出力する。書き込み用クロック信号生成回路14は、光ディスク上の既記録データに連続するように新たなデータを書き込む場合に、ずれ方向に応じてずれ量の絶対値を低減するように書き込み用クロック信号を生成する。図3に示された例では、プリピットシンク信号Sbに対してデータシンク信号Saが進んでいるので、書き込み用クロック信号生成回路14は、光ディスク2に対して新たにデータを書き込む際の書き込み用クロック信号を、その書き込み用クロック信号の周波数が、入力されるずれ量の絶対値と任意設定されるゲインに応じて低くなるように生成する。つまり、書き込み用クロック信号の周波数が、ウォブル周波数を逓倍して生成するクロック信号の周波数、すなわち通常時の書き込み用クロック信号の周波数よりも低くなるように、書き込み用クロック信号を生成する。これにより、光ディスク2に対して新たに書き込まれる追記のデータは、光ディスク2上のLPPに対して徐々に後方に記録され、前回記録終了時点で残留していた光ディスク2上の既記録データのシンクコードの位置と光ディスク上のLPPの位置とのずれが徐々に解消される。
逆に、プリピットシンク信号Sbに対してデータシンクSa信号が遅れている場合、書き込み用クロック信号生成回路14は、新たにデータを書き込む際の書き込み用クロック信号を、その書き込み用クロック信号の周波数が、入力されるずれ量の絶対値と任意設定されるゲインに応じて高くするように生成する。すなわち、書き込み用クロック信号の周波数が、ウォブル周波数を逓倍して生成するクロック信号の周波数、すなわち通常時の書き込み用クロック信号の周波数よりも高くなるように、書き込み用クロック信号を生成する。これにより、光ディスク2に対して新たに書き込まれる追記のデータは、光ディスク2上のLPPに対して徐々に前方に記録され、前回記録終了時点で残留していた光ディスク2上の既記録データのシンクコードの位置と光ディスク上のLPPの位置とのずれが徐々に解消される。
なお、位相ずれ検出回路16は、位相のずれ量の絶対値を示す信号と位相のずれ方向を示す信号とを書き込み用クロック信号生成回路14に出力したが、検出された位相のずれ量の絶対値と位相のずれ方向とから、例えば正若しくは負の値又は0の値を有する位相のずれ量を示す信号を生成して書き込み用クロック信号生成回路14に出力してもよい。
上述したように、本発明の第1の実施の形態による光ディスク装置1によれば、光ディスク2の記録済領域においてLPPが検出できなくとも、未記録領域においてLPPを検出して、その検出結果からプリピットシンク信号Sbを生成することができるので、データシンク信号Saとプリピットシンク信号Sbの位相のずれ量を正確に検出することができ、前回書き込み終了時点における既記録データの位置とその既記録データが本来記録されるべき位置とのずれ量を正確に測定することができる。そして、書き込み用クロック信号生成回路14は、その各位置のずれ量を低減するように書き込み用クロック信号を生成するので、データが本来記録される位置とデータが実際に記録された位置とのずれ量は蓄積されず、ずれを最小限に抑えることができる。
なお、上述の光ディスク装置1において、位相ずれ検出回路16は、プリピットサーチ信号SgがHレベルの間に、データシンク信号Saのパルスとプリピットシンク信号Sbのパルスがそれぞれ最初に生成された時点で、2つの信号Sa,Sbの位相のずれ量の絶対値及び位相のずれ方向を検出したが、プリピットシンク信号Sbのパルスが一定の時間間隔で複数個生成された時点、すなわちプリピットシンク信号Sbのパルスの周期が所定の時間一定になった時点で、それらを検出してもよい。図4は、この場合のデータシンク信号Sa及びプリピットシンク信号Sbの位相のずれ量の検出例を説明する図である。この場合、プリピット信号デコーダ15は、位相ずれ検出回路16にプリピットプロテクト信号Shを出力する。プリピット信号デコーダ15は、Hレベルのプリピットサーチ信号Sgが入力されている間、プリピット信号のサーチ状態へ移行し、プリピットシンク信号Sbのパルスを生成する。そして、プリピット信号デコーダ15は、プリピットシンク信号Sbのパルスを所定の時間間隔で複数個生成したとき、プリピットプロテクト信号ShをHレベルにする。図4に示される例では、プリピット信号デコーダ15は、プリピットシンク信号Sbを2個生成した時点でプリピットプロテクト信号ShをHレベルにしているが、プリピットプロテクト信号ShをHレベルにするために生成されなければならないパルスの個数は任意である。ここで、プリピット信号デコーダ15は、あるパルスを生成して、次のパルスを出力すると予想されるタイミングで出力できない場合、つまりプリピットシンク信号Sbのパルスを一定の時間間隔で生成できない場合は、生成したプリピットシンク信号Sbの信頼性が低いとみなし、プリピットプロテクト信号ShをLレベルのままとすることができる。位相ずれ検出回路16は、このプリピットプロテクト信号ShがHレベルであるときのデータシンク信号Saとプリピットシンク信号Sbの位相のずれ量を測定することで、より信頼性の高いずれ量を測定することができる。なお、プリピットプロテクト信号Shは、第2の制御信号に相当する。
なお、読み出し用クロック信号生成回路7が、チャージポンプ(CP)回路を有するPLL(Phase Locked Loop)回路を備え、そのPLL回路の出力信号を読み出し用クロック信号として出力する場合は、そのチャージポンプ回路の出力端子をハイインピーダンス状態(Hiz)にすることにより、再生信号が入力されなくとも読み出し用クロック信号を生成し続けることができる。以下に、PLL回路の構成例を用いて説明する。PLL回路は、例えば、位相比較器、チャージポンプ回路、ループフィルタ、VCO(Voltage Controlled Oscillator)発振回路、及び分周回路を備える。位相比較器は、所定の周波数を有する基準信号の位相と分周回路の出力信号の位相とを比較して、その2つの位相の位相差(誤差)を示す誤差信号を出力する。チャージポンプ回路は、その誤差信号に応じた電圧信号であるチャージポンプ信号を出力する。ループフィルタは、そのチャージポンプ信号の不要な高周波成分を除去する。VCO発振回路は、そのループフィルタの出力信号に応じた発振周波数で発振して、その発振信号を読み出し用クロック信号として出力する。分周回路は、その発振信号を分周して、その分周回路の出力信号を位相比較器に供給する。位相比較器では、再び基準信号と分周回路の出力信号と間で位相の比較を行い、PLLロック状態が保持される。なお、VCO発振回路は発振部をなし、位相比較器、チャージポンプ回路、及びループフィルタは発振制御部をなす。
上述の構成において、チャージポンプ回路の出力端子をハイインピーダンスとすると、ループフィルタにおける電流の入出力がなくなり、ループフィルタの出力信号は一定となる。その結果、VCO発信回路の発振周波数は一定となり、VCO発信回路の出力信号の変動を抑制することができる。これにより、読み出し用クロック信号生成回路7は、光ディスク2の未記録領域がシークされている間であっても、その未記録領域直前の記録済領域がシークされている間に生成した読み出し用クロック信号を出力し続けることができる。
さらに、読み出し用クロック信号生成回路7は、入力されるプリピットサーチ信号SgがHレベルになると、書き込み用クロック信号生成回路14が出力する書き込み用クロック信号を用いて読み出し用クロック信号を生成するようにしてもよい。この場合、CPU19は、未記録領域測定信号SfをHレベルにすると同時に、書き込み用クロック信号生成回路14に、光ディスク2上のウォブルを用いて書き込み用クロック信号を生成することを指示する。書き込み用クロック信号生成回路14は、CPU19から書き込み用クロック信号の生成を指示されると、ウォブルの周波数を検出して逓倍することにより、書き込み用クロック信号を生成する。例えば、光ディスクがDVD−R/RWの場合、ウォブルの周波数は、約140.6kHzである。ウォブルは光ディスク2の未記録領域においても存在するため、未記録領域がシークされている間も書き込み用クロック信号の生成が可能である。読み出し用クロック信号生成回路7は、書き込み用クロック信号生成回路14が生成する書き込み用クロック信号に同期した読み出し用クロック信号を生成する。以上のように、書き込み用クロック信号を用いて読み出し用クロック信号を生成することにより、読み出し用クロック信号生成回路7は、光ディスク2の未記録領域がシークされている間も読み出し用クロック信号を出力し続けることができる。