(57)【要約】【課題】読み取り性能を向上することができる再生装置を提供すること。【解決手段】再生装置の格納処理部２１には、読み取りデータに含まれる同期コードを検出する検出回路３１と、検出回路３１にて検出された同期コードの状態を解析する状態解析回路３２と、状態解析回路３２の解析結果に基づき、検出された同期コードより前のデータをメインメモリ１５に格納する格納位置を調整する格納処理回路３４と、が備えられる。【選択図】図２
2007287308.tif 000002
【特許請求の範囲】
【請求項１】
同期コードとデータとが交互に含まれる読み取りデータから、前記同期コードに従って前記データを取り出し、該データをメインメモリに格納する再生装置において、
前記読み取りデータに含まれる同期コードを検出する検出回路と、
前記検出回路にて検出された同期コードの状態を解析する状態解析回路と、
前記状態解析回路の解析結果に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する格納処理回路と、
を備えたことを特徴とする再生装置。
【請求項２】
前記状態解析回路は、
前記読み取りデータのバイト数をカウントし、前記同期コードを検出した場合には該カウント値をクリアし、
前記格納処理回路は、読み取りデータのカウント値に基づいてデータの位置を調整することを特徴とする請求項１記載の再生装置。
【請求項３】
前記格納処理回路は、前記状態に基づいて、前記同期コードが予定位置より早く検出された場合には、前記データの先頭にダミーデータを付加して全体のバイト数を所定数に調整した調整データを前記メインメモリに格納する、
ことを特徴とする請求項２記載の再生装置。
【請求項４】
前記格納処理回路は、前記状態に基づいて、前記同期コードが予定位置より遅く検出された場合には、検出した同期コードを基準として該同期コード側のデータから所定数を前記メインメモリに格納する、
ことを特徴とする請求項２又は３に記載の再生装置。
【請求項５】
前記状態解析回路は、
前記読み取りデータのカウント値が所定値を超える場合には前記同期コードの状態を未検出とし、
前記格納処理回路は、前記状態が未検出の場合にそれ以前に入力した所定数のデータをワークメモリに格納する、
ことを特徴とする請求項２〜４のうちの何れか一項に記載の再生装置。
【請求項６】
前記状態解析回路は、前記状態が未検出の場合に前記ワークメモリに空き容量があれば未検出カウントをカウントアップし、
前記格納処理回路は、前記状態が検出の場合に、前記未検出カウントに応じたフレーム数のデータを前記ワークメモリから読み出して前記メインメモリに格納する、
ことを特徴とする請求項５記載の再生装置。
【請求項７】
行列配列されたユーザデータと、該ユーザデータに対して第１の方向に沿って作成された第１の訂正データと、前記ユーザデータに対して前記第１の方向と異なる第２の方向に沿って作成された第２の訂正データと、からなるブロックデータを符号化し、該符号化後のブロックデータに対して所定バイト数毎に同期コードが付加されたデータが記録媒体に格納され、該記録媒体から同期コードとデータとが交互に含まれる読み取りデータが読み出され、前記同期コードに従って前記データを取り出し、該データを前記符号化に対応する複合化処理にて処理可能にメインメモリに格納する再生装置において、
前記読み取りデータに含まれる同期コードを検出する検出回路と、
前記検出回路にて検出された同期コードの状態を解析する状態解析回路と、
前記状態解析回路の解析結果に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する格納処理回路と、
を備えたことを特徴とする再生装置。
【請求項８】
再生信号に欠損を検出したことを示すディフェクト信号が入力され、該ディフェクト信号を検出した位置情報を出力するディフェクト信号記録回路を備え、
前記格納処理回路は、前記状態解析回路の解析結果又は前記位置情報に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する、ことを特徴とする請求項１〜７のうちの何れか１項に記載の再生装置。
【請求項９】
同期コードとデータとが交互に含まれる読み取りデータから、前記同期コードに従って前記データを取り出し、該データをメインメモリに格納する再生方法において、
前記読み取りデータに含まれる同期コードを検出する検出手段と、
前記検出手段にて検出された同期コードの状態を解析する状態解析手段と、
前記状態解析手段の解析結果に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する格納処理手段と、
を備えたことを特徴とする再生方法。
【請求項１０】
前記状態解析手段は、
前記読み取りデータのバイト数をカウントし、前記同期コードを検出した場合には該カウント値をクリアし、
前記格納処理手段は、読み取りデータのカウント値に基づいてデータの位置を調整することを特徴とする請求項９記載の再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光記録媒体に記録された情報を読み出す再生装置及び再生方法に関するものである。
近年、大容量高密度で光により情報の読み取り（再生）を行う記録媒体所謂光ディスクが用いられている。光ディスクは、傷や汚れなどのディスク表面の状態によってデータを正確に読みとることができないことや、回転ムラなどにより記録されているデータ量と反射光を処理する処理回路から出力されるデータ量とが異なる場合がある。そのため、光ディスクには、ユーザデータとともに、読み取ったデータを正しいデータに復元（エラー訂正）するための符号情報（訂正符号）が記録されている。しかしながら、読み取ったデータの状態によっては正しいデータに復元できない、即ち光ディスクから正しいユーザデータを読み出す読み取り性能が低下する場合がある。このため、読み取り性能の向上が求められている。
【背景技術】
【０００２】
従来、記録媒体として例えばＤＶＤ（Digital Video Disk/Digital Versatile Disk ）等の光ディスクには、ユーザデータと、所定量のユーザデータ毎に算出された訂正符号が記録されている。図１０に示すように、所定量（１７２バイト×１９２行（１２行×１６ブロック））に対して、横方向のデータ（B(x,0)〜B(x,172)）から計算した１０バイトの訂正符号ＰＩと、縦方向のデータ（B(0,y)〜B(191,y)）及び訂正符号ＰＩから計算した１６バイトの訂正符号ＰＯ（B(192,y)〜B(207,y)）と、が付加されてブロックデータが構成される。訂正符号ＰＩ，ＰＯは、光ディスクからデータを読み取った際に、検出訂正（訂正符号から誤り位置と数値を導き出す訂正）を行うため使用される。また、この時のデータの位置（順番）は、検出訂正の計算を行う上で非常に重要である。
【０００３】
検出訂正において、ブロックデータの各行と各列がそれぞれ符号語として扱われ、各列データと各行データ毎に誤り訂正処理が行われる。すなわち、図１０に示すように、１つのブロックデータは、２０８行の行データＨ０〜Ｈ２０７、又は１８２列の列データＶ０〜Ｖ１８２として扱われる。そして、各行データＨ０〜Ｈ２０７のそれぞれに対して、ユーザデータ又は訂正符号ＰＯと、訂正符号ＰＩとにより、ユーザデータ又は訂正符号ＰＯに対する検出訂正が行われる。また、各列データＶ０〜Ｖ１８１のそれぞれに対して、ユーザデータ又は訂正符号ＰＩと、訂正符号ＰＯとにより、ユーザデータ又は訂正符号ＰＩに対する検出訂正が行われる。
【０００４】
上記のブロックデータは、図１１に示すように、訂正符号ＰＯの各行データＨ１９２〜Ｈ２０７を、ユーザデータの１２行毎に１行ずつ挿入（インターリーブ）する。そして、１２行のユーザデータと１行の訂正符号ＰＯとを１つの記録セクタとする。つまり、１つのブロックデータは１６個の記録セクタＣ０〜Ｃ１５から構成される。
【０００５】
更に、データを８／１６変調（１バイト−８ビットを１６チャネルビットに変調すること）する。次に、図１２に示すように、変調後のデータに対して、９１バイト（１４５６cb（チャネルビット））毎に８種類の同期コードＳＹ０〜ＳＹ７のうちの何れかを付加する。付加する同期コードＳＹ０〜ＳＹ７の順番は決められているため、同期コードによりどのデータを読み取っているかを判断することができる。光ディスクには、図１２に示すデータが左上から順番に記録されている。従って、光ディスクから、図１２に示す左上から順番にデータが読み出される。
【０００６】
光ディスクからデータ正しく読みとった場合、その読み取ったデータは、図１３に示すように、同期コードにて区切られた複数のデータとして処理回路に受け取られる。処理回路は、同期コードの間のデータをメモリに格納する。各データのデータ量がそれぞれ９１バイトであれば、記録前のブロックデータ、つまり、図１０に示すように配列されたブロックデータがメモリに格納される。このため、訂正符号ＰＩ，ＰＯにより、ユーザデータの検出訂正を正しく行うことができる。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、ディスク表面の傷・汚れやディスクの回転ムラなどにより、同期コード又はユーザデータの欠落や、余分なデータが発生する。例えば、図１４に示すように、２つの同期コードＳＹ５の間で２バイトの欠落が発生した場合、処理回路は、同期コードＳＹ０に続く９１バイトをデータ（Ｄａｔａ１）としてメモリに格納した後、続く２バイトを同期コードと見なし、その同期コードに続く８９バイトをデータ（Ｄａｔａ２）としてメモリに格納する。この時、図１３に示す同期コードＳＹ１が欠落していた場合、メモリに格納されたデータ（Ｄａｔａ２）は、２バイト分、格納位置がずれることになる。このため、ＰＯ方向の誤り訂正を行う処理において、Ｄａｔａ２の全ての値が誤りとして扱われることになる。つまり、９１バイトのデータが破損していると判断される。この破損データの場所や量によって検出訂正で正しいデータに訂正することができない場合があり、その場合にはブロックデータ全体が破損していると判断されることになり、読み取り性能が低くなる。
【０００８】
本発明は上記問題点を解決するためになされたものであって、その目的は、読み取り性能を向上することができる再生装置及び再生方法を提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、請求項１に記載の発明によれば、再生装置には、前記読み取りデータに含まれる同期コードを検出する検出回路と、前記検出回路にて検出された同期コードの状態を解析する状態解析回路と、前記状態解析回路の解析結果に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する格納処理回路と、が備えられる。従って、検出した同期コードを基準として、該同期コードより前のデータの格納位置を調整することで、正しい位置に格納されるデータの量が多くなり、読み取り性能が向上する。
【００１０】
請求項２に記載の発明のように、前記状態解析回路は、前記読み取りデータのバイト数をカウントし、前記同期コードを検出した場合には該カウント値をクリアし、前記格納処理回路は、読み取りデータのカウント値に基づいてデータの位置を調整する。
【００１１】
請求項３に記載の発明によれば、前記格納処理回路は、前記状態に基づいて、前記同期コードが予定位置より早く検出された場合には、前記データの先頭にダミーデータを付加して全体のバイト数を所定数に調整した調整データを前記メインメモリに格納する。従って、記録媒体の回転ムラなどによってデータが途中で欠落した場合のように、同期コードに近いデータが正しい位置に格納される。
【００１２】
請求項４に記載の発明によれば、前記格納処理回路は、前記状態に基づいて、前記同期コードが予定位置より遅く検出された場合には、検出した同期コードを基準として該同期コード側のデータから所定数を前記メインメモリに格納する。従って、記録媒体の回転ムラなどによって余分なデータが発生した場合であっても、同期コードに近いデータが正しい位置に格納される。
【００１３】
請求項５に記載の発明によれば、前記状態解析回路は、前記読み取りデータのカウント値が所定値を超える場合には前記同期コードの状態を未検出とし、前記格納処理回路は、前記状態が未検出の場合にそれ以前に入力した所定数のデータをワークメモリに格納する。同期コードが検出されない場合には、読み取りデータをワークメモリに一旦格納することで、検出した同期コードに基づいてデータをメインメモリに格納することができる。
【００１４】
請求項６に記載の発明によれば、前記状態解析回路は、前記状態が未検出の場合に前記ワークメモリに空き容量があれば未検出カウントをカウントアップし、前記格納処理回路は、前記状態が検出の場合に、前記未検出カウントに応じたフレーム数のデータを前記ワークメモリから読み取って前記メインメモリに格納する。従って、複数フレームのデータが検出された同期コードに従ってメインメモリに格納される。
【００１５】
請求項７に記載の発明によれば、記録媒体には、行列配列されたユーザデータと、該ユーザデータに対して第１の方向に沿って作成された第１の訂正データと、前記ユーザデータに対して前記第１の方向と異なる第２の方向に沿って作成された第２の訂正データと、からなるブロックデータを符号化し、該符号化後のブロックデータに対して所定バイト数毎に同期コードが付加されたデータが格納されている。その記録媒体から同期コードとデータとが交互に含まれる読み取りデータが読み出され、前記同期コードに従って前記データを取り出し、該データを前記符号化に対応する複合化処理にて処理可能にメインメモリに格納する再生装置には、前記読み取りデータに含まれる同期コードを検出する検出回路と、前記検出回路にて検出された同期コードの状態を解析する状態解析回路と、前記状態解析回路の解析結果に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する格納処理回路と、が備えられる。
【００１６】
従って、検出した同期コードを基準として、該同期コードより前のデータの格納位置を調整することで、検出訂正において誤りと判断されるデータの数が少なくなる、つまりユーザデータと訂正データが正しい位置に格納されるデータの量が多くなり、読み取り性能が向上する。
【００１７】
請求項８に記載の発明によれば、再生信号に欠損を検出したことを示すディフェクト信号が入力され、該ディフェクト信号を検出した位置情報を出力するディフェクト信号記録回路を備え、前記格納処理回路は、前記状態解析回路の解析結果又は前記位置情報に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する。従って、同期コードの検出状態又は欠損の位置情報に基づいて、同期コード間のデータを格納する格納位置が調整され、読み取り性能が向上する。
【００１８】
請求項９に記載の発明によれば、再生方法には、前記読み取りデータに含まれる同期コードを検出する検出手段と、前記検出手段にて検出された同期コードの状態を解析する状態解析手段と、前記状態解析手段の解析結果に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する格納処理手段と、が備えられる。従って、検出した同期コードを基準として、該同期コードより前のデータの格納位置を調整することで、正しい位置に格納されるデータの量が多くなり、読み取り性能が向上する。
【００１９】
請求項１０に記載の発明のように、前記状態解析手段は、前記読み取りデータのバイト数をカウントし、前記同期コードを検出した場合には該カウント値をクリアし、前記格納処理手段は、読み取りデータのカウント値に基づいてデータの位置を調整する。
【発明の効果】
【００２０】
本発明によれば、読み取り性能の向上が可能な再生装置及び再生方法を提供することができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明を具体化した一実施形態を図１〜図８に従って説明する。
図１は、再生装置１０の概略構成を示すブロック図である。
この再生装置１０は、記録媒体として光ディスクＷに記録されたデータを読み出す装置である。
【００２２】
ディスクＷは図示しない駆動装置により回転駆動される。そのディスクＷにはピックアップ１１が対向配置される。ピックアップ１１は図示しない駆動装置によりディスクＷの径方向に移動される。ピックアップ１１は、所定波長の光をディスクＷに照射し、そのディスクＷの反射光を電気信号に変換して出力する。リードチャネル部１２は、ピックアップ１１の出力信号を２値化したデータ信号（読み取りデータ）ＲＤと、再生信号に大きな欠損を検出したことを示すディフェクト信号ＤＦをコントローラ部１３に出力する。コントローラ部１３は、ＣＰＵ１４に基づいて制御される。
【００２３】
コントローラ部１３には、格納処理部２１、デコーダ回路２２、エラー訂正部２３が設けられ、リードチャネル部１２から出力されるデータ信号に基づくデータをメインメモリ１５に格納する。そして、コントローラ部１３は、メインメモリ１５に１ブロック分のデータを格納すると、その１ブロックのデータに対して検出訂正を行い、ユーザデータを図示しないホスト装置に出力する。
【００２４】
格納処理部２１は、データ信号から同期コードを検出し、その検出結果に基づいて、格納位置を調整したデータ（調整データ）を出力する。詳しくは、格納処理部２１は、同期コードの状態を検出し、その状態に基づいて、検出した同期コードよりも前に入力したデータについて格納方法を決定し、その格納方法に応じて入力データから調整データを生成する。例えば、検出した同期コードの状態に基づいて、データの先頭部分が欠落していると判断した場合、その欠落したデータ数のダミーデータを先頭に付加する。これにより、入力データの全体がずれることが防止できるため、正しい位置に格納されるデータ量が多くなる。つまり、訂正すべきデータ量が少なくなるため、それらのデータを後述する検出訂正処理にて訂正することができ、読み取り性能を向上することができる。
【００２５】
デコーダ回路２２は、格納処理部２１にて格納位置が調整されたデータを所定の方式（８／１６復調）に復調したデータ（復調データ）をメインメモリ１５に格納する。デコーダ回路２２に入力されるデータは、格納処理部２１により格納する位置が調整されているため、正しい位置に格納されるデータ量が多くなる。
【００２６】
エラー訂正部２３は、メインメモリ１５に１ブロック分のデータが格納されると、その１ブロックのデータに対して検出訂正を行う。検出訂正は、図１０に示すように、ユーザデータに対して付加された訂正符号ＰＩ及びＰＯにより、誤りのあるデータの位置と訂正値とを算出し、メインメモリ１５上で書き換えを行う。この時、例えば１つのシンクフレームにおいてデータの欠落、例えば図１０の行データＨ０において先頭の２バイトが欠落した場合、従来の方式では、正しく受信された１８０バイトのデータが左端から順番に格納され、右端の２バイト分の領域には所定データ（例えば「０」）が格納される。このため、行データＨ０の全てのデータが謝りであるとして処理される。一方、本実施形態の場合、欠落があったデータの格納位置が調整される、例えば行データＨ０では１８０バイトのデータが、右端がそろうように格納される。このため、先頭の２バイトが誤りであるとして処理される。つまり、従来例では、誤りであるデータの量が１８２バイトとなり、本実施形態では、誤りであるデータの量が２バイトとなり、読み取り性能が向上していることとなる。
【００２７】
次に、格納処理部２１の構成を説明する。
図２に示すように、格納処理部２１は、同期コード（ＳＹＮＣコード）検出回路（以下、検出回路）３１、同期コード検出状態解析回路（以下、状態解析回路）３２、ディフェクト信号記録回路（以下、信号記録回路）３３、データ格納処理回路（以下、格納処理回路）３４、ワークメモリ３５を備えている。検出回路（検出手段）３１は、入力データ（読み取りデータ）ＲＤから同期コードを検出し、検出信号Sync_detを出力する。状態解析回路（状態解析手段）３２は、読み取りデータＲＤと検出信号Sync_detとに基づいて、検出した同期コードの状態を解析し、その解析結果に応じた信号を出力する。詳述すると、読み取りデータＲＤにおける同期コードの位置は、規格にて決定されており、規格では、２つの同期コードの間に９１バイトのデータが介在されている。尚、読み取りデータにおける１バイトは、８／１６変調後のデータであり１６チャネルビット（ｃｂ）である。同期コードは２バイト（３２チャネルビット）のデータである。
【００２８】
従って、同期コードを検出した後に読み取りデータＲＤのバイト数をカウントし、そのカウント値が次の同期コードを検出したときに規格上の値（＝９１バイト＋２バイト）と一致すれば、規格通りに同期コードが入力されている、つまり、検出した同期コードより前のデータは正しく読み出されていると判断することができる。一方、カウント値が規格値と一致しない場合、読み取りデータからデータ又は同期コードが欠落していると判断することができる。従って、検出した同期コードの状態に応じて、その同期コードより前に入力した読み取りデータを格納する位置を調整することで、読み取りデータを正しい位置に格納することができるわけである。
【００２９】
このため、状態解析回路３２は、検出状態として、ステータスStatus、位置差Diff_cnt、未検出カウントNot_cntを出力する。ステータスStatusは同期コードを検出したときの位置状態の情報であり、同期コードを予想位置（規格上の位置）で検出したか、予想位置より前か後ろか、未検出か、を示す。位置差Diff_cntは予想位置と実際の検出位置の差である。未検出カウントNot_cntは、同期コードを検出するまでのフレーム数である。
【００３０】
信号記録回路（信号記録手段）３３、読み取りデータＲＤと同期検出信号Sync_detとバイトカウントByte_cntを入力し、同期コードから次の同期コードが検出されるまでの読み取りデータＲＤで発生したディフェクト信号(傷やごみによるディスク再生信号の大きな欠損を検出した際に出力される信号)の位置を順次記録するとともに、その検出回数を記憶する。そして、その欠損の位置を示す位置情報Defect_pos[Pos_cnt]及び検出回数Pos_cntを出力する。
【００３１】
格納処理回路（格納処理手段）３４は、読み取りデータＲＤをワークメモリ３５に格納する。ワークメモリ３５は、複数フレームの読み取りデータＲＤを記憶可能な容量を持つ。ここでいうフレームは、図１２に示す同期コードとデータとからなるシンクフレームに対応し、９１バイトからなるデータをいう。
【００３２】
格納処理回路３４は、読み取りデータＲＤをワークメモリ３５に格納し、検出状態に基づいて、ワークメモリ３５のデータを取り出して位置を調整した調整データを生成する。１つの例として、格納処理回路３４は、ステータスStatusに基づいて、同期コードを正常に検出した（１フレーム分のデータに続いて同期コードが入力された）場合、ワークメモリ３５に格納した１フレーム分のデータをそのまま調整データとして出力する。別の例として、ステータスStatusに基づいて、同期コードの検出位置が予想位置よりも早い場合、同期コードの検出までにワークメモリ３５に格納した１フレーム分より少ない数のデータの先頭にダミーデータを付加して元のデータの位置を調整した１フレーム分のデータを調整データとして出力する。ダミーデータの付加は、例えば０パディング（０padding ）によって行われる。０パディングは、所定数の「０」を付加することであり、位置差Diff_cntに対応した数の「０」を付加することにより、元のデータのバイト数とダミーデータのバイト数の合計値が１フレーム分のデータ量とする。
【００３３】
次に、状態解析回路３２の動作を説明する。
図３は状態解析回路３２の動作フローである。
ステップ４１において、状態解析回路３２は、初期化処理を行う。この処理において、状態解析回路３２は、フレーム毎のバイトカウントByte_cntと未検出カウントNot_cntをクリア（０）とし、ステータスStatusと前ステータスStatus_prevを初期状態（none）とする。
【００３４】
ステップ４２において、状態解析回路３２は、１バイトの読み取りデータを入力し、バイトカウントByte_cntをカウントアップ（＋１）する。次に、ステップ４３において、状態解析回路３２は、バイトカウントByte_cntが検出判断バイト数（＝１フレームのバイト数＋非検出判断バイト数）を越えたか否かを判断する。非検出判断バイト数は、同期コードを検索する範囲（バイト数）であり、予め設定される。状態解析回路３２は、予想位置から非検出判断バイト数までの検索範囲の読み取りデータに対して同期コードを検索する。そして、バイトカウントByte_cntが検出判断バイト数を越えていない（ＮＯ）場合はステップ４４に移行する。
【００３５】
ステップ４４において、状態解析回路３２は、検出信号Sync_detに基づいて同期コード（ＳＹＮＣ）を検出したか否かを判断する。状態解析回路３２は、検出信号Sync_detがＳＹＮＣ検出（ＹＥＳ）の場合にステップ４５に移行し、検出信号Sync_detが非検出（ＮＯ）の場合にステップ４２に移行する、即ち次の読み取りデータに対する判断を行う。
【００３６】
ステップ４５において、状態解析回路３２は、バイトカウントByte_cntに基づいて、同期コードの検出位置が予想位置と同じか否かを判断する。そして、状態解析回路３２は、バイトカウントByte_cntが１フレームのバイト数よりも大きい（Byte_cnt＞１フレームのバイト数）場合にステップ４６に移行し、バイトカウントByte_cntが１フレームのバイト数と一致する（Byte_cnt＝１フレームのバイト数）場合にステップ４７に移行する。また、状態解析回路３２は、バイトカウントByte_cntが１フレームのバイト数よりも小さい（Byte_cnt＜１フレームのバイト数）場合にステップ４８に移行する。
【００３７】
ステップ４６において、状態解析回路３２は、ステータスStatusを、同期コードを予想位置より遅く検出した状態（SYShift_more）に変更し、バイトカウントByte_cntから１フレーム分のバイト数を減算した結果の値を位置差Diff_cntに設定する。ステップ４７において、状態解析回路３２は、ステータスStatusを、同期コードを予想位置で検出した状態（SY_OK）に変更し、位置差Diff_cntをクリア（＝０）する。ステップ４８において、状態解析回路３２は、ステータスStatusを、同期コードを予想位置より早く検出した状態（SYShift_less）に変更し、１フレーム分のバイト数からバイトカウントByte_cntを減算した結果の値を位置差Diff_cntに設定する。
【００３８】
ステップ４６〜４８の処理を終了した状態解析回路３２は、ステップ４９に移行する。このステップ４９において、状態解析回路３２は、格納処理回路３４に対して処理開始を指示する。そして、状態解析回路３２は、ステップ５０において、バイトカウントByte_cntと未検出カウントNot_cntをクリアし、ステップ４２に移行する。
【００３９】
上記のステップ４３において、状態解析回路３２は、バイトカウントByte_cntが検出判断バイト数を越えている（ＹＥＳ）場合はステップ５１に移行する。
ステップ５１において、状態解析回路３２は、ステータスStatusを、現在のフレームにおいて同期コードが未検出である状態（SY_NOT）に変更する。更に、状態解析回路３２は、ワークメモリ３５に空き領域がある場合に未検出カウントNot_cntをカウントアップ（＋１）する。そして、ステップ５２において、状態解析回路３２は、格納処理回路３４に対して処理開始を指示する。更に、状態解析回路３２は、ステップ５３において、バイトカウントByte_cntと未検出カウントNot_cntをクリアし、ステップ４２に移行する。
【００４０】
次に、信号記録回路３３の動作を説明する。
図４は、信号記録回路３３の動作フローである。
ステップ６１において、信号記録回路３３は、初期化処理を行う。この処理において、ディフェクト信号を検出した毎のカウンタPos_cntをクリア（０）する。
【００４１】
ステップ６２において、信号記録回路３３は、検出回路３１から出力される検出信号Sync_detに基づいて同期コード（ＳＹＮＣ）を検出したか否かを判断する。信号記録回路３３は、検出信号Sync_detがＳＹＮＣ検出（ＹＥＳ）の場合にステップ６１に移行し、検出信号Sync_detが非検出（ＮＯ）の場合にステップ６３に移行する。
【００４２】
ステップ６３において、信号記録回路３３は、ディフェクト信号ＤＦに基づいて欠損を検出したか否かを判断する。信号記録回路３３は、ディフェクト信号ＤＦが欠損検出ディフェクト検出（ＹＥＳ）の場合にステップ６４に移行し、ディフェクト信号ＤＦが非検出（ＮＯ）の場合にステップ６２に移行する。
【００４３】
ステップ６４において、信号記録回路３３は、状態解析回路３２から出力されるバイトカウントByte_cntから、ディフェクト信号ＤＦを検出した際のバイトカウント値を位置情報Defect_pos[Pos_cnt]に設定する。
【００４４】
ステップ６５において、信号記録回路３３は、カウンタPos_cntの値を１インクリメントし、ステップ６２に移行する。このカウンタPos_cntは、ディフェクト信号ＤＦが欠損検出を示す毎に１ずつカウントアップする。つまり、このカウンタPos_cntは、欠損の検出回数、つまり同期コード間の読み取りデータＲＤにおいて発生する欠損の数を示す。
【００４５】
上記の処理により、信号記録回路３３は、同期コードから同期コードまでの間の読み取りデータＲＤにおいて、ディフェクト信号ＤＦを検出した、即ち欠損を検出した位置を位置情報Defect_pos[Pos_cnt]に順次設定するとともに、その欠損を検出した回数を検出回数Pos_cntに設定する。
【００４６】
次に、格納処理回路３４の動作を説明する。
図５（ａ）は格納処理回路３４の動作フローであり、図５（ｂ）はステータスStatusに応じた格納方法の説明図である。
【００４７】
ステップ７１において、格納処理回路３４は、検出状態に応じた方法に従ってデータを、デコーダ回路２２を介してメインメモリ１５に格納する。
先ず、前ステータスStatus_prevが（SY_OK）の場合について説明する。
【００４８】
現在のステータスStatusが（SY_OK）の場合、データ格納方法（ａ）を実行する。この方法において、データ量がちょうど１フレーム分であるため、入力する読み取りデータを、そのまま所定のアドレスのメモリ空間へ格納する。
【００４９】
現在のステータスStatusが（SYShift_more）の場合、データ格納方法（ｂ）を実行する。この方法において、Ａ１．データの後ろから順番に所定のアドレスの最後から後詰め（例えば図１４において右詰）でユーザ設定、もしくは、ディフェクト信号ＤＦを検出した位置情報Defect_pos[Pos_cnt](Pos_cnt=0,1,2,...)を基にしたバイト数のデータを格納し、残りの部分を直前の同期コードを基準として格納する方法、Ａ２．データの頭から順番に所定のアドレスの最初から格納し、余分な部分はカットする方法、とがあり、ユーザの設定に応じて選択実行する。
【００５０】
現在のステータスStatusが（SYShift_less）の場合、データ格納方法（ｃ）を実行する。この方法において、Ｂ１．データの後ろから順番に所定のアドレスの最後から後詰めでユーザ設定、もしくは、ディフェクト信号ＤＦを検出した位置情報Defect_pos[Pos_cnt]を基にしたバイト数のデータを格納し、残りの部分を直前の同期コードを基準として格納する方法、Ｂ２．データの頭から順番に所定のアドレスの最初から格納し、足りない部分は０パディングする方法、とがあり、ユーザの設定に応じて選択実行する。
【００５１】
現在のステータスStatusが（SY_NOT）の場合、データ格納方法（ｄ）を実行し、データをワークメモリ３５に格納（退避）する。
そして、データの出力又は格納を終了すると、格納処理回路３４は、ステップ７２において、前ステータスStatus_prevに現在のステータスStatusをセットする。
【００５２】
次に、前ステータスStatus_prevが（SY_OK）、つまり同期コードを検出した状態において、次の同期コードの検出状態を図６（ａ）〜図６（ｄ）に従って説明する。図６（ａ）〜図６（ｄ）において、破線の位置は同期コードが検出される予想位置である。
【００５３】
図６（ａ）に示すように、予想位置にて同期コードを検出した、つまり１フレーム分のデータ（９１バイト）を入力した場合、格納処理回路３４は、予想通り（規格通り）であるため、所定のアドレスのメインメモリ１５にデータを格納する。
【００５４】
図６（ｂ）に示すように、予想位置より遅く同期コードを検出した、つまり１フレーム分よりもデータ量が多い場合、その検出した同期コードを基準としてデータをメインメモリ１５に格納する。この時、格納するデータ量はユーザの設定（上記Ａ１又はＡ２）に基づく。
【００５５】
図６（ｃ）に示すように、予想位置より早く同期コードを検出した、つまり１フレーム分よりもデータ量が少ない場合、その検出した同期コードを基準としてデータをメインメモリ１５に格納する。この時、格納するデータ量はユーザの設定（上記Ｂ１又はＢ２）に基づく。
【００５６】
図６（ｄ）に示すように、同期コードが検出できなかった場合、前の同期コード以後のデータをワークメモリ３５に一旦格納する（退避する）。
次に、前ステータスStatus_prevが（SY_NOT）、つまり同期コードが非検出の状態において、次の同期コードの検出状態を図７（ａ）〜図７（ｄ）に従って説明する。この場合、１つの同期コードが未検出であるため、未検出カウントNot_cnt＝１である。図７（ａ）〜図７（ｄ）において、破線の位置は同期コードが検出される予想位置である。
【００５７】
図７（ａ）〜図７（ｄ）において、同期コードが非検出（図の中央に破線で示す）、つまり図６（ｄ）に示す状態であるため、図２のワークメモリ３５には１フレーム分（９１バイト）のデータが格納されている。
【００５８】
図７（ａ）に示すように、予想位置にて同期コードを検出した場合、１つ前の同期コードは未検出であるが予想通り（規格通り）のデータ量であるため、格納処理回路３４は、未検出カウントNot_cntに基づいて、ワークメモリ３５から取り出した１フレーム分のデータと、入力したデータとの２つのフレーム分のデータをメインメモリ１５の所定のアドレスに格納する。
【００５９】
図７（ｂ）に示すように、予想位置より遅く同期コードを検出した場合、格納処理回路３４は、ワークメモリ３５から取り出した１フレーム分のデータをメインメモリ１５に格納する。更に、格納処理回路３４は、１フレーム分よりも多いデータ量のデータを、その検出した同期コードを基準としてデータをメインメモリ１５に格納する。この時、格納するデータ量はユーザの設定（上記Ａ１又はＡ２）に基づく。
【００６０】
図７（ｃ）に示すように、予想位置より早く同期コードを検出した場合、格納処理回路３４は、ワークメモリ３５から取り出した１フレーム分のデータをメインメモリ１５に格納する。更に、格納処理回路３４は、１フレーム分よりも少ないデータ量のデータを、その検出した同期コードを基準としてデータをメインメモリ１５に格納する。この時、格納するデータ量はユーザの設定（上記Ｂ１又はＢ２）に基づく。
【００６１】
図７（ｄ）に示すように、同期コードが検出できなかった場合、前の同期コード以後のデータをワークメモリ３５に一旦格納する（退避する）。つまり、この時点では、ワークメモリ３５には、２フレーム分のデータが格納される。
【００６２】
従って、図８に示すように、同期コードを検出し、その検出した同期コードまでのデータ（Ｄａｔａ２）のデータ量が規定よりも少ない場合、検出した同期コードを基準として検出した同期コードまでのバイトカウントByte_cntのバイト数のＤａｔａ２をメインメモリ１５に後詰めで格納する。この時、Ｄａｔａ２の先頭は０パディングされる。
【００６３】
１つのフレームにおいて先頭の２バイトが欠落した場合、残りの８９バイトが正しい位置に格納される、つまり正しい位置に格納されたデータが８９バイトとなるため、読み取り性能が従来に比べて向上する。また、１つのフレームにおいて途中の２バイトが欠落した場合、その欠落したデータから検出した同期コードまでのデータが正しい位置に格納される。このため、従来のように１フレーム分のデータ全ての位置が異なる場合に比べて正しい位置に格納されたデータ量が多くなる、つまり読み取り性能が向上されることとなる。
【００６４】
以上記述したように、本実施形態によれば、以下の効果を奏する。
（１）再生装置１０の格納処理部２１には、読み取りデータに含まれる同期コードを検出する検出回路３１と、検出回路３１にて検出された同期コードの状態を解析する状態解析回路３２と、状態解析回路３２の解析結果に基づき、検出された同期コードより前のデータをメインメモリ１５に格納する格納位置を調整する格納処理回路３４と、が備えられる。従って、検出した同期コードを基準として、該同期コードより前のデータの格納位置を調整することで、正しい位置に格納されるデータの量が多くなり、読み取り性能を向上することができる。
【００６５】
（２）に記載の発明のように、状態解析回路３２は、読み取りデータのバイト数をカウントし、同期コードを検出した場合には該カウント値をクリアする。そして、
格納処理回路３４は、同期コードの検出状態に基づいて、同期コードが予定位置より早く検出された場合には、データの先頭にダミーデータを付加して全体のバイト数を所定数に調整した調整データをメインメモリ１５に格納する。従って、記録媒体の回転ムラなどによってデータが途中で欠落した場合のように、読み取りデータのバイト数のカウント値に応じたダミーデータを付加することで、同期コードに近いデータが正しい位置に格納される。
【００６６】
また、格納処理回路３４は、状態に基づいて、同期コードが予定位置より遅く検出された場合には、検出した同期コードを基準として該同期コード側のデータから所定数をメインメモリ１５に格納する。従って、記録媒体の回転ムラなどによって余分なデータが発生した場合であっても、同期コードに近いデータが正しい位置に格納される。
【００６７】
（３）状態解析回路３２は、読み取りデータのカウント値が所定値を超える場合には同期コードの状態を未検出とし、格納処理回路３４は、状態が未検出の場合にそれ以前に入力した所定数のデータをワークメモリ３５に格納する。同期コードが検出されない場合には、読み取りデータをワークメモリ３５に一旦格納することで、検出した同期コードに基づいてデータをメインメモリ１５に格納する。そして、状態解析回路３２は、状態が未検出の場合にワークメモリ３５に空き容量があれば未検出カウントをカウントアップし、格納処理回路３４は、状態が検出の場合に、未検出カウントに応じたフレーム数のデータをワークメモリ３５から読み取ってメインメモリ１５に格納する。従って、複数フレームのデータが検出された同期コードに従ってメインメモリ１５に格納することができる。
【００６８】
（４）記録媒体Ｗには、行列配列されたユーザデータと、該ユーザデータに対して第１の方向に沿って作成された第１の訂正データと、ユーザデータに対して第１の方向と異なる第２の方向に沿って作成された第２の訂正データと、からなるブロックデータを符号化し、該符号化後のブロックデータに対して所定バイト数毎に同期コードが付加されたデータが格納されている。再生装置１０は、記録媒体Ｗから同期コードとデータとが交互に含まれる読み取りデータが読み出され、同期コードに従ってデータを取り出し、該データを符号化に対応する複合化処理にて処理可能にメインメモリ１５に格納する。そして再生装置１０には、読み取りデータに含まれる同期コードを検出する検出回路３１と、検出回路３１にて検出された同期コードの状態を解析する状態解析回路３２と、状態解析回路３２の解析結果に基づき、検出された同期コードより前のデータをメインメモリ１５に格納する格納位置を調整する格納処理回路３４と、が備えられる。
【００６９】
従って、検出した同期コードを基準として、該同期コードより前のデータの格納位置を調整することで、検出訂正において誤りと判断されるデータの数が少なくなる、つまりユーザデータと訂正データが正しい位置に格納されるデータの量が多くなり、読み取り性能を向上することができる。
【００７０】
尚、上記実施形態は、以下の態様で実施してもよい。
・上記実施形態において、同期コード、ユーザデータ、訂正符号ＰＩ，ＰＯのバイト数を適宜変更しても良い。
【００７１】
・上記実施形態では、記録媒体としてＤＶＤのデータを再生する再生装置について説明したが、その他の記録媒体のデータを再生する再生装置に具体化してもよい。例えば、上記実施形態では、同期コード間のデータ数、つまり１フレームが９１バイトの読み取りデータＲＤを扱う装置に具体化した。記録媒体としてＨＤ−ＤＶＤ（High-Definition Digital Versatile Disc）のデータを再生する再生装置に具体化してもよい。ＨＤ−ＤＶＤの読み取りデータは、図９（ａ）に示すように、同期コード（SY0,SY1,..）間が上記実施形態と同じ９１バイトのデータから構成される。また、記録媒体としてBlu-ray Discのデータを再生する再生装置に具体化してもよい。Blu-ray Discの読み取りデータは、図９（ｂ）に示すように、同期コード（ＦＳ）間が１５５バイトのデータから構成される。これらの記録媒体のデータを再生する再生装置においても、上記実施形態と同様に、読み取り性能を向上することができる。
【００７２】
・上記実施形態では、変調・復調処理に８／１６変調・８／１６復調を用いたが、その他の変調・復調処理を用いても良い。
・上記実施形態において、ディフェクト信号記録回路３３を省略し、ユーザ設定により読み取りデータを格納するようにしてもよい。
【００７３】
上記各実施の形態から把握できる技術的思想を以下に記載する。
（付記１）
同期コードとデータとが交互に含まれる読み取りデータから、前記同期コードに従って前記データを取り出し、該データをメインメモリに格納する再生装置において、
前記読み取りデータに含まれる同期コードを検出する検出回路と、
前記検出回路にて検出された同期コードの状態を解析する状態解析回路と、
前記状態解析回路の解析結果に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する格納処理回路と、
を備えたことを特徴とする再生装置。
（付記２）
前記状態解析回路は、
前記読み取りデータのバイト数をカウントし、前記同期コードを検出した場合には該カウント値をクリアし、
前記格納処理回路は、読み取りデータのカウント値に基づいてデータの位置を調整することを特徴とする付記１記載の再生装置。
（付記３）
前記格納処理回路は、前記状態に基づいて、前記同期コードが予定位置より早く検出された場合には、前記データの先頭にダミーデータを付加して全体のバイト数を所定数に調整した調整データを前記メインメモリに格納する、
ことを特徴とする付記２記載の再生装置。
（付記４）
前記格納処理回路は、前記状態に基づいて、前記同期コードが予定位置より遅く検出された場合には、検出した同期コードを基準として該同期コード側のデータから所定数を前記メインメモリに格納する、
ことを特徴とする付記２又は３に記載の再生装置。
（付記５）
前記状態解析回路は、
前記読み取りデータのカウント値が所定値を超える場合には前記同期コードの状態を未検出とし、
前記格納処理回路は、前記状態が未検出の場合にそれ以前に入力した所定数のデータをワークメモリに格納する、
ことを特徴とする付記２〜４のうちの何れか一に記載の再生装置。
（付記６）
前記状態解析回路は、前記状態が未検出の場合に前記ワークメモリに空き容量があれば未検出カウントをカウントアップし、
前記格納処理回路は、前記状態が検出の場合に、前記未検出カウントに応じたフレーム数のデータを前記ワークメモリから読み取り前記メインメモリに格納する、
ことを特徴とする付記５記載の再生装置。
（付記７）
行列配列されたユーザデータと、該ユーザデータに対して第１の方向に沿って作成された第１の訂正データと、前記ユーザデータに対して前記第１の方向と異なる第２の方向に沿って作成された第２の訂正データと、からなるブロックデータを符号化し、該符号化後のブロックデータに対して所定バイト数毎に同期コードが付加されたデータが記録媒体に格納され、該記録媒体から同期コードとデータとが交互に含まれる読み取りデータが読み出され、前記同期コードに従って前記データを取り出し、該データを前記符号化に対応する複合化処理にて処理可能にメインメモリに格納する再生装置において、
前記読み取りデータに含まれる同期コードを検出する検出回路と、
前記検出回路にて検出された同期コードの状態を解析する状態解析回路と、
前記状態解析回路の解析結果に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する格納処理回路と、
を備えたことを特徴とする再生装置。
（付記８）
再生信号に欠損を検出したことを示すディフェクト信号が入力され、該ディフェクト信号を検出した位置情報を出力するディフェクト信号記録回路を備え、
前記格納処理回路は、前記状態解析回路の解析結果又は前記位置情報に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する、ことを特徴とする付記１〜７のうちの何れか１つに記載の再生装置。
（付記９）
前記ディフェクト信号記録回路は、前記同期コード間のデータに発生する欠損の数と、各欠損の位置情報とを出力し、
前記格納処理回路は、前記位置情報及び欠損の数と、前記状態解析回路の解析結果とのうちの何れか一方に基づいてデータを格納する格納位置を調整する、ことを特徴とする付記８記載の再生装置。
（付記１０）
同期コードとデータとが交互に含まれる読み取りデータから、前記同期コードに従って前記データを取り出し、該データをメインメモリに格納する再生方法において、
前記読み取りデータに含まれる同期コードを検出する検出手段と、
前記検出手段にて検出された同期コードの状態を解析する状態解析手段と、
前記状態解析手段の解析結果に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する格納処理手段と、
を備えたことを特徴とする再生方法。
（付記１１）
前記状態解析手段は、
前記読み取りデータのバイト数をカウントし、前記同期コードを検出した場合には該カウント値をクリアし、
前記格納処理手段は、読み取りデータのカウント値に基づいてデータの位置を調整することを特徴とする付記１０記載の再生方法。
（付記１２）
前記格納処理手段は、前記状態に基づいて、前記同期コードが予定位置より早く検出された場合には、前記データの先頭にダミーデータを付加して全体のバイト数を所定数に調整した調整データを前記メインメモリに格納する、
ことを特徴とする付記１１記載の再生方法。
（付記１３）
前記格納処理手段は、前記状態に基づいて、前記同期コードが予定位置より遅く検出された場合には、検出した同期コードを基準として該同期コード側のデータから所定数を前記メインメモリに格納する、
ことを特徴とする付記１１又は１２に記載の再生方法。
（付記１４）
前記状態解析手段は、
前記読み取りデータのカウント値が所定値を超える場合には前記同期コードの状態を未検出とし、
前記格納処理手段は、前記状態が未検出の場合にそれ以前に入力した所定数のデータをワークメモリに格納する、
ことを特徴とする付記１１〜１３のうちの何れか一に記載の再生方法。
（付記１５）
前記状態解析手段は、前記状態が未検出の場合に前記ワークメモリに空き容量があれば未検出カウントをカウントアップし、
前記格納処理回路は、前記状態が検出の場合に、前記未検出カウントに応じたフレーム数のデータを前記ワークメモリから読み取り前記メインメモリに格納する、
ことを特徴とする付記１４記載の再生方法。
（付記１６）
再生信号に欠損を検出したことを示すディフェクト信号が入力され、該ディフェクト信号を検出した位置情報を出力するディフェクト信号記録手段を備え、
前記格納処理回路は、前記状態解析回路の解析結果又は前記位置情報に基づき、検出された同期コードより前のデータを前記メインメモリに格納する格納位置を調整する、ことを特徴とする付記１０〜１５のうちの何れか１つに記載の再生方法。
（付記１７）
前記ディフェクト信号記録回路は、前記同期コード間のデータに発生する欠損の数と、各欠損の位置情報とを出力し、
前記格納処理回路は、前記位置情報及び欠損の数と、前記状態解析回路の解析結果とのうちの何れか一方に基づいてデータを格納する格納位置を調整する、ことを特徴とする付記１７記載の再生方法。
【図面の簡単な説明】
【００７４】
【図１】一実施形態の再生装置のブロック図である。
【図２】データ格納処理部のブロック図である。
【図３】同期コード検出状態解析回路の処理を示すフローチャートである。
【図４】ディフェクト信号記録回路の処理を示すフローチャートである。
【図５】（ａ）（ｂ）は格納処理回路の動作説明図である。
【図６】（ａ）〜（ｄ）は読み取りデータを示す説明図である。
【図７】（ａ）〜（ｄ）は読み取りデータを示す説明図である。
【図８】読み取りデータを示す説明図である。
【図９】（ａ）（ｂ）は別の記録媒体の読み取りデータを示す説明図である。
【図１０】誤り訂正符号を付加したデータの構成を示す説明図である。
【図１１】ＤＶＤの記録セクタの構成を示す説明図である。
【図１２】ＤＶＤに記録されたデータを示す説明図である。
【図１３】読み取りデータを示す説明図である。
【図１４】読み取りデータを示す説明図である。
【符号の説明】
【００７５】
１３  コントローラ部
１５  メインメモリ
２１  データ格納処理部
２２  デコーダ回路
２３  エラー訂正部
３１  同期コード検出回路
３２  同期コード検出状態解析回路
３３  ディフェクト信号記録回路
３４  データ格納処理回路
３５  ワークメモリ
ＲＤ  読み取りデータ（リード信号）
ＤＦ  ディフェクト信号
Not_cnt  未検出カウント
Ｗ  記録媒体
【図１】
2007287308.tif 000003
【図２】
2007287308.tif 000004
【図３】
2007287308.tif 000005
【図４】
2007287308.tif 000006
【図５】
2007287308.tif 000007
【図６】
2007287308.tif 000008
【図７】
2007287308.tif 000009
【図８】
2007287308.tif 000010
【図９】
2007287308.tif 000011
【図１０】
2007287308.tif 000012
【図１１】
2007287308.tif 000013
【図１２】
2007287308.tif 000014
【図１３】
2007287308.tif 000015
【図１４】
2007287308.tif 000016