(57)【特許請求の範囲】
【請求項１】
記録媒体に記録された符号化データを復号するデータ復号装置において、
上記記録媒体から読み出した上記符号化データを記憶するメモリと、
上記メモリに記憶した符号化データを復号処理し、当該復号処理の結果得られる復号データを上記メモリに記憶させるデータ復号回路と、
上記復号処理途中の符号化データから上記記録媒体における記録位置を示す位置情報を検出すると共に、当該位置情報に基づいて、当該符号化データから得られる復号データの出力可否を当該符号化データの復号処理途中で判定し、当該判定の結果を示すデータ情報を生成して上記メモリに記憶させるデータ情報生成回路と、
上記メモリに記憶された上記データ情報に基づいて、上記メモリに記憶された上記復号データの出力を制御するデータ出力制御回路と
を具えることを特徴とするデータ復号装置。
【請求項２】
上記符号化データより得られる復号データには上記位置情報を用いたスクランブル処理が施されており、
上記データ情報生成回路は、上記判定の結果及び上記位置情報を示す上記データ情報を生成し、
上記データ出力制御回路は、上記データ情報に基づいて、上記復号データをデスクランブル処理する
ことを特徴とする請求項１に記載のデータ復号装置。
【請求項３】
上記記録媒体は、デイスク記録媒体でなる
ことを特徴とする請求項１に記載のデータ復号装置。
【請求項４】
上記データ情報は、上記デイスク記録媒体についてのセクタ情報でなる
ことを特徴とする請求項３に記載のデータ復号装置。
【請求項５】
上記データ情報生成回路は、上記データ情報に基づいて、上記デイスク記録媒体上の出力対象となるデータのセクタを検出する
ことを特徴とする請求項３に記載のデータ復号装置。
【請求項６】
上記セクタ情報は、上記読み出した符号化データに対応するセクタアドレス情報及び誤り訂正結果及び又は出力対象となるデータに対応するセクタアドレス情報でなる
ことを特徴とする請求項４に記載のデータ復号装置。
【請求項７】
上記メモリは、フアーストインフアーストアウト（ＦＩＦＯ）機能を有する
ことを特徴とする請求項１に記載のデータ復号装置。
【請求項８】
上記符号化データは、インターリーブ符号化されている
ことを特徴とする請求項１に記載のデータ復号装置。
【請求項９】
上記符号化データは、誤り訂正符号データである
ことを特徴とする請求項１に記載のデータ復号装置。
【請求項１０】
上記誤り訂正符号データの誤り訂正符号は、Ｃ１／Ｃ２畳み込み・リードソロモン符号である
ことを特徴とする請求項９に記載のデータ復号装置。
【請求項１１】
上記誤り訂正符号データの誤り訂正符号は、符号化データの行方向に誤り訂正内符号を付加するとともに列方向に誤り訂正外符号を付加してなる
ことを特徴とする請求項９に記載のデータ復号装置。
【請求項１２】
上記データ復号回路は、
上記誤り訂正内符号が付加された行方向のデータを行単位で第１のブロツク分だけエラー訂正し、
上記誤り訂正外符号が付加された列方向のデータを列単位で上記第１のブロツク分だけエラー訂正し、
上記行単位で第１のブロツク分だけエラー訂正された上記誤り訂正内符号が付加された上記行方向のデータに対して行単位で再びエラー訂正する
ことを特徴とする請求項１１に記載のデータ復号装置。
【請求項１３】
上記データ復号回路は、
上記行方向のデータを１行分又は上記列方向のデータを１列分だけ転送完了したとき、当該タイミングにおいてレジスタ内に格納されているエラー位置及びエラーパターンに基づくエラー訂正を実行する
ことを特徴とする請求項１２に記載のデータ復号装置。
【請求項１４】
記録媒体に記録された符号化データを復号するデータ復号方法において、
上記記録媒体から読み出した上記符号化データメモリに記憶する記憶ステツプと、
上記メモリに記憶した符号化データを復号処理し、当該復号処理の結果得られる復号データを上記メモリに記憶するデータ復号ステツプと、
上記復号処理途中の符号化データから上記記録媒体における記録位置を示す位置情報を検出すると共に、当該位置情報に基づいて、当該符号化データから得られる復号データの出力可否を当該符号化データの復号処理途中で判定し、当該判定の結果を示すデータ情報を生成して上記メモリに記憶するデータ情報生成ステツプと、
上記メモリに記憶された上記データ情報に基づいて、上記メモリに記憶された上記復号データの出力を制御するデータ出力制御ステツプと
を具えることを特徴とするデータ復号方法。
【請求項１５】
上記符号化データより得られる復号データには上記位置情報を用いたスクランブル処理が施されており、
上記データ情報生成ステツプでは、上記判定の結果及び上記位置情報を示す上記データ情報を生成し、
上記データ出力制御ステツプでは、上記データ情報に基づいて、上記復号データをデスクランブル処理する
ことを特徴とする請求項１４に記載のデータ復号方法。
【請求項１６】
上記記録媒体は、デイスク記録媒体でなる
ことを特徴とする請求項１４に記載のデータ復号方法。
【請求項１７】
上記データ情報は、上記デイスク記録媒体についてのセクタ情報でなる
ことを特徴とする請求項１６に記載のデータ復号方法。
【請求項１８】
上記データ情報生成ステツプでは、上記データ情報に基づいて、上記デイスク記録媒体上の出力対象となるデータのセクタを検出する
ことを特徴とする請求項１６に記載のデータ復号方法。
【請求項１９】
上記セクタ情報は、上記読み出した符号化データに対応するセクタアドレス情報及び誤り訂正結果及び又は出力対象となるデータに対応するセクタアドレス情報でなる
ことを特徴とする請求項１７に記載のデータ復号方法。
【請求項２０】
上記メモリは、フアーストインフアーストアウト（ＦＩＦＯ）機能を有する
ことを特徴とする請求項１４に記載のデータ復号方法。
【請求項２１】
上記符号化データは、インターリーブ符号化されている
ことを特徴とする請求項１４に記載のデータ復号方法。
【請求項２２】
上記符号化データは、誤り訂正符号データである
ことを特徴とする請求項１４に記載のデータ復号方法。
【請求項２３】
上記誤り訂正符号データの誤り訂正符号は、Ｃ１／Ｃ２畳み込み・リードソロモン符号である
ことを特徴とする請求項２２に記載のデータ復号方法。
【請求項２４】
上記誤り訂正符号データの誤り訂正符号は、符号化データの行方向に誤り訂正内符号を付加するとともに列方向に誤り訂正外符号を付加してなる
ことを特徴とする請求項２２に記載のデータ復号方法。
【請求項２５】
上記データ復号ステツプでは、
上記誤り訂正内符号が付加された行方向のデータを行単位で第１のブロツク分だけエラー訂正し、
上記誤り訂正外符号が付加された列方向のデータを列単位で上記第１のブロツク分だけエラー訂正し、
上記行単位で第１のブロツク分だけエラー訂正された上記誤り訂正内符号が付加された上記行方向のデータに対して行単位で再びエラー訂正する
ことを特徴とする請求項２４に記載のデータ復号方法。
【請求項２６】
上記データ復号ステツプでは、圧縮符号化されてなる動画像データを復号する
ことを特徴とする請求項１４に記載のデータ復号方法。
【請求項２７】
記録媒体に記録された符号化データでなる画像信号及び又は音声信号を読み出して再生するデータ再生装置において、
上記記録媒体から読み出した上記符号化データを記憶するメモリと、当該メモリに記憶した符号化データを復号処理し、当該復号処理の結果得られる復号データを上記メモリに記憶させるデータ復号回路と、上記復号処理途中の符号化データから上記記録媒体における記録位置を示す位置情報を検出すると共に、当該位置情報に基づいて、当該符号化データから得られる復号データの出力可否を当該符号化データの復号処理途中で判定し、当該判定の結果を示すデータ情報を生成して上記メモリに記憶させるデータ情報生成回路と、上記メモリに記憶された上記データ情報に基づいて、上記メモリに記憶された上記復号データの出力を制御するデータ出力制御回路とを有するデータ復号装置を具える
ことを特徴とするデータ再生装置。
【請求項２８】
上記符号化データは、誤り訂正符号データであり、当該誤り訂正符号データの誤り訂正符号は、Ｃ１／Ｃ２畳み込み・リードソロモン符号である
ことを特徴とする請求項２７に記載のデータ再生装置。
【請求項２９】
上記誤り訂正符号は、符号化データの行方向に誤り訂正内符号を付加するとともに列方向に誤り訂正外符号を付加してなる
ことを特徴とする請求項２８に記載のデータ再生装置。
【請求項３０】
上記データ復号回路は、
上記誤り訂正内符号が付加された行方向のデータを行単位で第１のブロツク分だけエラー訂正し、
上記誤り訂正外符号が付加された列方向のデータを列単位で上記第１のブロツク分だけエラー訂正し、
上記行単位で第１のブロツク分だけエラー訂正された上記誤り訂正内符号が付加された上記行方向のデータに対して行単位で再びエラー訂正する
ことを特徴とする請求項２９に記載のデータ再生装置。
【請求項３１】
上記データ復号回路は、
上記メモリから上記行方向のデータを１行分又は上記列方向のデータを１列分だけ転送完了したとき、当該タイミングにおいてレジスタ内に格納されているエラー位置及びエラーの訂正パターンに基づくエラー訂正を実行する
ことを特徴とする請求項２９に記載のデータ再生装置。
【発明の詳細な説明】
【０００１】
【目次】
以下の順序で本発明を説明する。
発明の属する技術分野
従来の技術（図５３〜図５７）
発明が解決しようとする課題
課題を解決するための手段
発明の実施の形態（図１〜図５２）
（１）第１実施例（図１〜図２０）
（１−１）データ再生装置の全体構成（図１）
（１−２）ＥＣＣ回路及びＥＣＣ復号（図２〜図９）
（１−３）セクタ検出（図１０〜図２０）
（２）第２実施例
（２−１）記録データフオーマツト（図２１〜図２４）
（２−２）データ再生装置及びＥＣＣ復号（図１、図２５〜図５２）
（２−３）第２実施例の動作及び効果（図４３〜図４５）
（３）他の実施例
発明の効果
【０００２】
【発明の属する技術分野】
本発明はデータ復号装置及びその方法並びにデータ再生装置に関し、例えば、デイジタル化されてデイスクに記録されている動画像を再生するものに用いて好適なものである。
【０００３】
【従来の技術】
従来、例えばMPEG（Moving Pictures Expert Group）規格による動画像がデイジタル化されて可変レートで記録されたデイスクがある。
ここで用いられているMPEGは、画像データに対してフレーム内符号画像であるＩピクチヤ（Intra-Picture)、フレーム間順方向予測符号化画像であるＰピクチヤ（Predictive-Picture) 、双方向予測符号化画像であるＢピクチヤ(Bidirectionally predictive-Picture)の３つのタイプを規定し、これら３つの画像により画面群構造 GOP(Group Of Pictures）を形成するものである。
また音声データに対しても同様にMPEG規格を適用しているが、音声データについてはMPEG以外でも例えば、ATRAC(Aditive TRansform Acoustic Coding)によりデイジタル化及び圧縮符号化している。因みにATRAC は商標である。
【０００４】
図５３にデイスクに可変レートで記録されているデータを再生するデータ復号装置１を示す。データ復号装置１は、光デイスク２に記録されたデータをピツクアツプ３によつてレーザ光を照射し、その反射光から再生する。ピツクアツプ３が出力する再生信号Ｓ１は、システムコントローラ４によつて制御される復号回路系５の復調回路６に入力され、復調される。復調回路６により復調されたデータは、セクタ検出回路７を介してＥＣＣ(Error Correction Code) 回路８に入力され、エラー検出及び誤り訂正が実行される。
【０００５】
ここでセクタ検出回路７において、光デイスク２のセクタに割り当てられたアドレスであるセクタ番号が正常に検出されなかつた場合、トラツクジヤンプ判定回路９にセクタ番号異常信号が出力される。ＥＣＣ回路８は、訂正不能のデータが生じた場合、トラツクジヤンプ判定回路９にエラー発生信号を出力する。エラー訂正されたデータは、ＥＣＣ回路８からリングバツフアメモリ１０に送出されて記録される。
【０００６】
このときリングバツフア制御回路１１は、セクタ検出回路７の出力から各セクタ毎のアドレスを読み取り、そのアドレスに対応するリングバツフアメモリ１０上の書き込みアドレス（以下、ライトポインタＷＰという）を指定する。
また、システムコントローラ４によつて制御されるリングバツフア制御回路１１は、後段の多重化データ分離回路１３からのコードリクエスト信号Ｒ１０に基づき、リングバツフアメモリ１０に書き込まれたデータの読み出しアドレス（以下、リードポインタＲＰという）を指定し、その読み出しポインタＲＰからデータを読み出して多重化データ分離回路１３に供給する。
【０００７】
ここで多重化データ分離回路１３のヘツダ分離回路１４は、リングバツフアメモリ１０から供給されたデータからパツクヘツダ及びパケツトヘツダを分離して分離回路制御回路１５に供給する。分離回路制御回路１５は、ヘツダー分離回路１１から供給されたパケツトヘツダのストリームID（Stream IDentifier)情報に従い、スイツチング回路１６の入力端子Ｇと出力端子（被切換端子）Ｈ１、Ｈ２を順次サイクリツクに切り換え接続することによつて、時分割多重されたデータを正しく分離して対応するコードバツフアに供給する。
【０００８】
ここでビデオコードバツフア１７は内部のコードバツフアの残量により、多重化データ分離回路１３に対してコードリクエストＲ１を発生する。そして受け取つたデータを記憶する。また、ビデオデコーダ１８からのコードリクエストＲ１を受付け、内部のデータを出力する。ビデオデコーダ１８は供給されたデータからビデオ信号を再生し、出力端子ＯＵＴ１から出力する。
【０００９】
オーデイオコードバツフア１９は内部のコードバツフアの残量により、多重化データ分離回路１３に対してコードリクエストＲ２を発生する。そして受け取つたデータを記憶する。また、オーデイオデコーダ２０からのコードリクエストＲ２を受付け、内部のデータを出力する。オーデイオデコーダ２０は供給されたデータからオーデイオ信号を再生し、出力端子ＯＵＴ２から出力する。
【００１０】
このように、ビデオデコーダ１８はビデオコードバツフア１７にデータを要求し、ビデオコードバツフア１７は多重化データ分離回路１３に要求を出し、多重化データ分離回路１３はリングバツフア制御回路１１に対して要求を出す。この時にはデータがリングバツフアメモリ１０から、今度は要求とは逆向きに流れていく。
【００１１】
ここで復調回路系５におけるデータ復号について説明する。先ず、デイスク２から読み出された再生信号Ｓ１は、復調回路６にてＲＦ処理によつて２値化信号に変換され、この信号Ｓ１のマーク長の計測結果に基づいてラフサーボがかけられる。ここでセクタ検出回路７は、システムコントローラ４のインターフエイスとしてEFM+でシンクヘツダを検出すると、PLL(Phase Locked Loop)サーボがかけられる。その後、シンクヘツダが数回連続して検出されると、EFM+復調後のデータＳ２がインタリーブを解かれる（以下、デインターリーブという）。
【００１２】
図５４に示すように、ＥＣＣ回路８に送出されたEFM+復調データＳ２は先ず、ＲＡＭ２４に一旦格納された後、ＥＣＣデコーダ２５、２７、２９において、Ｃ１／Ｃ２畳み込み・リードソロモン符号(CIRC Plus) による３系列Ｃ１１（Ｃ１系列１回目）、Ｃ２及びＣ１２（Ｃ１系列２回目）についてECC の復号を実行する。
【００１３】
ＥＣＣ回路８におけるECC 復号は、例えば図５５に示すように、00、01、〜A8、A9の順にEFM+復調後のデータＳ２をＲＡＭ２４へ書き込み、(EFM Write) 、ＲＡＭ２４へのEFM+復調後のデータが２フレーム格納されたところで、フレーム１の00′、02′、〜A8′、01、03、〜A9の順にＥＣＣデコーダ２５へデータを転送することでデインタリーブされたＣ１系列データのECC 復号を実行する。
ここでエラー訂正は、ＥＣＣデコーダ２５からエラーの位置と訂正パターンを読み出すとともに、ＲＡＭ２４からエラーのあるデータを読み出し（Ｃ１ read ）、訂正パターンとの排他的論理和をとつて、図５６に示すように、再びＲＡＭ２６に書き戻すことで実行する（Ｃ１ Write）。ここでＥＣＣデコーダ２５によつてＣ１系列のECC 復号がＣ２符号系列長だけ実行される。
【００１４】
Ｃ１系列のECC 復号がＣ２符号系列長だけ実行されると、Ｃ２系列のECC 復号の実行が可能となる。次にＲＡＭ２６上のデータが00′、01′、02′、03′、〜A9′の順に読み出され（Ｃ２ read ）、ＥＣＣデコーダ２７でＣ２系列のECC 復号が実行される。ここで各フレームに対する訂正不能フラグはデータに同期させて後段のＥＣＣデコーダへ転送することでイレージヤ訂正を行なうことができる。Ｃ２系列のイレージヤ訂正については、Ｃ１の訂正不能フラグを使用する。エラー訂正動作は、Ｃ１の場合と同様である。
図５７に示すように、Ｃ２系列のECC 復号結果がＲＡＭ２８に書き込まれ（Ｃ２ Write）、Ｃ２系列のECC 復号がＣ１符号系列長だけ実行されるとＣ１２系列のECC 復号が実行可能となり、ＥＣＣデコーダ２９によつて00′、01、02、03、〜A9の順に読み出される（Ｃ１２ read ）Ｃ１２系列のECC 復号が実行される。
【００１５】
ここでＣ１２系列のイレージヤ訂正については、Ｃ２の訂正不能フラグを使用する。そして、Ｃ１２のエラー訂正が終了すると、図５８に示すようにＲＡＭ３０に00、01、02、03、〜A9の順にＣ１２系列のECC 復号結果が書き込まれる。こうしてＲＡＭ３０には、ECC の各系列Ｃ１１、Ｃ２及びＣ１２の復号データが格納されていて、00、01、02、03、〜A9の順に読み出され(OUT read)、デスクランブル処理されて、リングバツフアメモリ１０にデータ送出され、これにより必要なセクタデータが書き込まれる。
【００１６】
ここで読み出しを求める出力データが属する目的セクタは、ECC 復号に用いるメモリとは別のメモリに格納した再生データからセクタアドレスを抜き出すことによつて検出される。すなわちセクタアドレスを検出するために前段のインターリーブを解くためのメモリ（ＲＡＭ２４）と、ECC 復号用のメモリ（ＲＡＭ２６、２８及び３０）をセクタアドレス単位にセクタアドレスが先頭に来るように割り当てている。このようにしてメモリ上に読み出された再生データよりセクタアドレスが検出され、システムコントローラ４による光デイスク２へのアクセスの際の位置情報として用いられる。
【００１７】
実際、ＥＣＣ回路８においてECC 復号されたECC 復号データＳ１０は、検出されたセクタアドレスとシステムコントローラ４によつて設定した目的セクタアドレスとをリングバツフア制御回路１１で比較判定して、そのアドレスが一致していればECC 復号データをリングバツフアメモリ１０に書き込む。
【００１８】
このECC 復号方法では、デイスクアクセスで目的セクタに対してＥＣＣのインタリーブ分を見込んで、数セクタ前のセクタを検出した後、EFM+復調された再生データをセクタの先頭にECC 復号用メモリの開始フレームを対応させて書き込み、ECC 復号を実行してリングバツフアメモリ１０に復号データを書き込んでいる。
【００１９】
【発明が解決しようとする課題】
ここでインターリーブされた符号化データを復号する場合、システムコントローラ４によるデイスクアクセスのためのセクタアドレス認識と、そのセクタのデータが、ECC 復号後に出力されるセクタアドレスとの間にECC 復号に要する時間分のずれが生じる。このずれのために、デイスクアクセスのときにセクタアドレスを認識した時点では該セクタのECC 復号は未だ実行されていないので、ECC 復号データＳ１０が必ずリングバツフアメモリ１０に書き込まれるものかどうかを判別することができないという問題があつた。
【００２０】
またインタリーブがかかつている符号化データを復号する場合、目的セクタを検出するためのメモリと、ECC 復号に必要なメモリ等の記憶媒体とがそれぞれ別々に必要となるためメモリ容量が比較的大きくなるという問題があつた。
またセクタを認識するために、デインターリーブされたデータを任意のセクタ単位でまず復号用メモリのＲＡＭ２４に書き込むが、この際光デイスク２より読み出された再生データをメモリの先頭からセクタの先頭を対応させて記憶させるため、メモリの容量はセクタのＮ倍分用意する必要がある。
【００２１】
さらにリングバツフアメモリ１０へ書き込む段階では、復号データの先頭が必ずしもセクタの先頭とは限らないのでECC 復号用のメモリ（ＲＡＭ３０）に記憶したECC 復号データＳ１０の中から再び、目的セクタを検出する必要がある。このためにデイスクアクセスの際のセクタアドレスを認識する回路とは別に目的のセクタアドレスのデータであるかを認識するための別の回路を設けなければならず回路構成が複雑になるという問題があつた。
本発明は以上の点を考慮してなされたもので、ECC 復号用のメモリ容量を削減するとともに、目的セクタへのアクセスを迅速になし得るデータ復号装置及びその方法並びにデータ再生装置を提案しようとするものである。
【００２２】
【課題を解決するための手段】
かかる課題を解決するため本発明においては、記録媒体に記録された符号化データを復号するデータ復号装置において、記録媒体から読み出した符号化データを記憶するメモリと、メモリに記憶した符号化データを復号処理し、当該復号処理の結果得られる復号データをメモリに記憶させるデータ復号回路と、復号処理途中の符号化データから記録媒体における記録位置を示す位置情報を検出すると共に、当該位置情報に基づいて、当該符号化データから得られる復号データの出力可否を当該符号化データの復号処理途中で判定し、当該判定の結果を示すデータ情報を生成してメモリに記憶させるデータ情報生成回路と、メモリに記憶されたデータ情報に基づいてメモリに記憶された復号データの出力を制御するデータ出力制御回路とを設けるようにした。
【００２３】
さらに本発明においては、記録媒体に記録された符号化データを復号するデータ復号方法において、記録媒体から読み出した符号化データメモリに記憶する記憶ステツプと、記メモリに記憶した符号化データを復号処理し、当該復号処理の結果得られる復号データをメモリに記憶するデータ復号ステツプと、復号処理途中の符号化データから記録媒体における記録位置を示す位置情報を検出すると共に、当該位置情報に基づいて、当該符号化データから得られる復号データの出力可否を当該符号化データの復号処理途中で判定し、当該判定の結果を示すデータ情報を生成してメモリに記憶するデータ情報生成ステツプと、メモリに記憶されたデータ情報に基づいて、メモリに記憶された復号データの出力を制御するデータ出力制御ステツプとを設けるようにした。
【００２４】
このように、符号化データの復号処理とは独立して、当該符号化データより得られる復号データの出力可否を当該符号化データの復号処理途中で判定しておくと共に、当該判定の結果を示すデータ情報を符号化データ及び複合化データを記憶するメモリに記憶しておくことにより、データ情報を記憶し得るわずかな領域をメモリに別途確保しておくだけで、符号化データの復号処理終了後に復号データの出力可否の判定処理を行う場合と比べて、一段と高速に復号データの出力を開始することができる。
【００２５】
さらに本発明においては、記録媒体に記録された符号化データでなる画像信号及び又は音声信号を読み出して再生するデータ再生装置において、記録媒体から読み出した符号化データを記憶するメモリと、メモリに記憶した符号化データを復号処理し、当該復号処理の結果得られる復号データをメモリに記憶させるデータ復号回路と、復号処理途中の符号化データから記録媒体における記録位置を示す位置情報を検出すると共に、当該位置情報に基づいて、当該符号化データから得られる復号データの出力可否を当該符号化データの復号処理途中で判定し、当該判定の結果を示すデータ情報を生成してメモリに記憶させるデータ情報生成回路と、メモリに記憶されたデータ情報に基づいてメモリに記憶された復号データの出力を制御するデータ出力制御回路とを有するデータ復号装置を設けるようにした。
【００２６】
このように、符号化データの復号処理とは独立して、当該符号化データより得られる復号データの出力可否を当該符号化データの復号処理途中で判定しておくと共に、当該判定の結果を示すデータ情報を符号化データ及び複合化データを記憶するメモリに記憶しておくことにより、データ情報を記憶し得るわずかな領域をメモリに別途確保しておくだけで、符号化データの復号処理終了後に復号データの出力可否の判定処理を行う場合と比べて、一段と高速に復号データの出力を開始することができる。
【００２７】
【発明の実施の形態】
以下図面について、本発明の一実施例を詳述する。
【００２８】
（１）第１実施例
（１−１）データ再生装置の全体構成
図５２との対応部分に同一符号を付した図１において４０は、本発明によるデータ復号装置を用いたデータ再生装置の全体構成を示す。データ再生装置４０は、光デイスク２に可変レートで記録されている画像データ及び音声データを光デイスク２に対してレーザ光を照射し、その反射光から記録されているデータを読み出して再生する。ピツクアツプ３で再生された再生信号Ｓ１は、システムコントローラ４によつて制御される復調／復号回路系３５の復調回路６に送られる。復調回路６は、再生信号Ｓ１を復調してセクタ検出回路７に出力する。
【００２９】
セクタ検出回路７は、供給されたデータから各セクタ毎に記録されているアドレスを検出し、リングバツフア制御回路１１に出力すると共に、後段のＥＣＣ回路５０にセクタ同期をとつた状態でデータを出力する。システムコントローラ４によつて制御されるリングバツフア制御回路１１は、リングバツフアメモリ１０に対する書き込みと読み出しを制御すると共に、多重化データ分離回路１３より出力されるデータを要求するコードリクエスト信号Ｒ１０を監視する。
ここでセクタ検出回路７は、アドレスを検出することができなかつたり、検出したアドレスが連続していなかつた場合、リングバツフア制御回路１１を介してセクタ番号異常信号をトラツクジヤンプ判定回路９に出力する。
【００３０】
ＥＣＣ回路５０は、セクタ検出回路７より供給されるデータの誤りを検出し、データに付加されている冗長ビツトを用いて誤り訂正を実行して、FIFO(First In First Out)機能をもつトラツクジヤンプ用のリングバツフアメモリ１０に出力する。リングバツフアメモリ１０のデータは、多重化データ分離回路１３に供給される。このときＥＣＣ回路５０はセクタヘツダデータを検出してセクタ検出回路７を通じてシステムコントローラ４に送出される。
ここでＥＣＣ回路５０は、データの誤りを訂正することができなかつた場合、エラー発生信号をシステムコントローラ４に出力する。
【００３１】
トラツクジヤンプ判定回路９は、リングバツフア制御回路１１の出力をモニタし、トラツクジヤンプが必要なときトラツクジヤンプ信号ＪＰ１をトラツキングサーボ回路２２に出力し、ピツクアツプ３の光デイスク２に対する再生位置をトラツクジヤンプさせるようになつている。ここでシステムコントローラ４は、セクタ検出回路７からのセクタ番号異常信号、またはＥＣＣ回路５０からのエラー発生信号を検出すると、トラツクジヤンプ判定回路９よりトラツクジヤンプ信号をトラツキングサーボ回路２２に出力してピツクアツプ３の再生位置をトラツクジヤンプさせるようになされている。
【００３２】
多重化データ分離回路１３へのヘツダ分離回路１４は、リングバツフアメモリ１０から供給されたデータからパツクヘツダ及びパケツトヘツダを分離して分離回路制御回路１５に供給するとともに、時分割多重されたデータをスイツチング回路１６の入力端子Ｇに供給する。スイツチング回路１６の出力端子（被切換端子）Ｈ１、Ｈ２はそれぞれビデオコードバツフア１７、オーデイオコードバツフア１９の入力端子に接続されている。
ここでスイツチング回路１６によつて出力端子がＨ１に切り換えられると、ビデオコード出力はビデオコードバツフア１７を通じてビデオデコーダ１８に送出され、出力端子ＯＵＴ１より出力される。またスイツチング回路１６によつて出力端子がＨ２に切り換えられると、オーデイオコード出力はオーデイオコードバツフア１９を通じてオーデイオデコーダ２０に送出され、出力端子ＯＵＴ２より出力される。
【００３３】
また、ビデオデコーダ１８が発生するコードリクエスト信号Ｒ１はビデオコードバツフア１７に入力された後、多重化データ分離回路１３に入力されている。
同様にオーデイオデコーダ２０が発生するコードリクエスト信号Ｒ２はオーデイオコードバツフア１９に入力された後、多重化データ分離回路１３に入力されている。
【００３４】
ところで、例えば単純な画面に関するデータ処理が続き、ビデオデコーダ１８の単位時間当たりのデータ消費量が少なくなると、リングバツフアメモリ１０からの読み出しも少なくなる。この場合、リングバツフアメモリ１０の記憶データ量が多くなり、オーバーフローするおそれがある。このため、トラツクジヤンプ判定回路９は、ライトポインタＷＰおよびリードポインタＲＰによりリングバツフアメモリ１０が現在記憶しているデータ量を算出し、そのデータがあらかじめ設定された所定の基準値を越えた場合、リングバツフアメモリ１０がオーバーフローするおそれがあると判断して、トラツキングサーボ回路２２にトラツクジヤンプ指令を出力する。
【００３５】
また、トラツクジヤンプ判定回路９は、セクタ検出回路７からのセクタ番号異常信号またはＥＣＣ回路５０からのエラー発生信号を検出した場合、ライトポインタＷＰとリードポインタＲＰからリングバツフアメモリ１０内に残存しているデータ量を求めると共に、現在のトラツク位置から、光デイスク２が１回転する間に（光デイスク２の１回転待ちの間に）、リングバツフアメモリ１０から多重化データ分離回路１３の読み出しを保証するのに必要なデータ量を求める。
ここでリングバツフアメモリ１０の残存データ量が大きい場合、リングバツフアメモリ１０から最高の転送レートでデータが読み出されてもリングバツフアメモリ１０にはアンダーフローが生じない。このため、トラツクジヤンプ判定回路９はエラー発生位置をピツクアツプ３で再度再生することによりエラー回復が可能であると判断して、トラツキングサーボ回路２２にトラツクジヤンプ指令を出力する。
【００３６】
（１−２）ＥＣＣ回路及びＥＣＣ復号
図２に示すＥＣＣ回路５０は、Ｃ１／Ｃ２畳み込み・リードソロモン符号(CIRC Plus) によるECC を復号する。ＥＣＣ回路５０は、リングバツフアメモリでなるＲＡＭ(Random access Memory)５１と、EFM+復調されたデータに対して誤り訂正を実行してECC 復号するＥＣＣデコーダ５２と、エラー訂正不能フラグ、エラー訂正パターン及びエラー位置を格納するためのエラーレジスタ５３とによつて形成される。
【００３７】
図２及び図３に示すようにＥＣＣ復号は、デイスク２から読み出された再生信号Ｓ１をＲＦ処理回路４２にてＲＦ処理及び２値化処理した後、復調回路４４でEFM+の同期パターンを検出する。ここでEFM+の同期パターンが検出されると、ＣＬＶ制御回路４６によつて先ずラフサーボがかけられる。続いて復調回路４４でEFM+のシンクパターンが検出されると、PLL(Phase Locked Loop)サーボがかけられる。その後、シンクパターンが数回連続して検出されると、EFM+復調後のデータＳ２がＲＭＩＦ(Random Access Memory InterFace)４８を通じてＥＣＣ回路５０のＲＡＭ５１にフレーム単位で書き込まれる。そしてＯＣＴＬ（出力制御回路）５６を通じてリングバツフアメモリ１０に出力される。
【００３８】
ＥＣＣ回路５０では、ＲＭＩＦ４８を通じてＲＡＭ５１への書き込みアドレスを生成する。ここでＲＡＭ５１から読み出されるデータはＲＭＩＦ４８を通じてＥＣＣ制御部５４及びＥＣＣ復号部５５に転送される。
ここでエラーが検出され、そのエラーが訂正可能であつた場合、エラー位置とエラーの訂正パターンがＥＣＣ復号部５５からＥＣＣ制御部５４に出力される。この場合、エラー位置とエラーの訂正パターンは、ＲＡＭ５１の各フレーム毎に出力され、エラーレジスタ５３（図２）に格納される。エラー訂正は、エラーレジスタ５３からエラー位置と訂正パターンとを読み出し、ＲＡＭ５１からエラー位置に対応するエラーデータを読み出して訂正パターンとの排他的論理和(EXclusive OR,EXOR) をとつて再びＲＡＭ５１に書き戻すことで実行する。
またエラーの訂正不能が検出されたら、そのフレームの訂正不能フラグを後段のECC のイレージヤ訂正に使用するためにエラーレジスタ５３に格納する。
【００３９】
この結果、エラーレジスタ５３にはECC の各系列Ｃ１１、Ｃ２及びＣ１２のそれぞれについてECC を解くために必要なデータとしてエラー位置及び訂正パターンが蓄積される。ここでECC を解くために必要かつ十分なエラー位置及び訂正パターンが揃えられると、ＥＣＣ制御部５４によつてＲＡＭ５１に格納されているデータとのエラー訂正が実行される。
【００４０】
ここでデータの格納アドレスRAは、図４に示すようなＲＡＭ５１に書き込まれたデータよりＣ１系列のデータ順Dn、Ｃ１符号単位のフレームカウントFnを用いて次式
【数１】
0003672139.tif 000002
【数２】
0003672139.tif 000003
【数３】
0003672139.tif 000004
【数４】
0003672139.tif 000005
により求められる。
【００４１】
ここでＲＭＩＦ４８はＲＡＭ５１上において、ECC 復号の３系列Ｃ１１、Ｃ２及びＣ１２の結果を、その系列の先頭のデータが含まれるフレームのＡＡ、ＡＢ、ＡＣ、ＡＤ、ＡＥ、ＡＦ番目のアドレスのいずれかに書き込む。ここで例えば、ECC 結果をＡＡ、ＡＢ、ＡＣに書き込むとすると、フレームカウントFnとデータ順ＡＡ、ＡＢ、ＡＣによりECC 復号の３系列Ｃ１１、Ｃ２及びＣ１２の結果に対するＲＡＭ５１のメモリアドレスを容易に生成できる。
【００４２】
ここでデイスク再生装置４０では、リングバツフアメモリ１０から、多重化データ分離回路１３への読み出しを保証するだけのデータ量を確保する必要があるためRFCKは、デイスクの記録（カツテイング）時のリフアレンス・チヤネル・ビツトレート26.6(Mbit/s)に対して、再生時のチヤネルビツトレートのほうが大きい値となるように設定しておく。
【００４３】
図５に示すように、例えばＲＡＭ５１のフレーム182 に対してEFM+の書き込み(EFM+ Wrire ）が実行されると、同時にＣ１１系列のデータを00、02〜A9の順にＥＣＣデコーダ５２へデータ転送（Ｃ１１read）する。続いてＥＣＣデコーダ５２へは、Ｃ２系列のデータがデータ転送（Ｃ２read）された後、Ｃ１２系列のデータ転送（Ｃ１２read）が実行される。そして、各系列Ｃ１１、Ｃ２、Ｃ１２のECC が実行されたフレーム０はＯＣＴＬ５６にデータ転送(OUT) される。ここでは各系列Ｃ１１、Ｃ２及びＣ１２のECC データ転送を固定間隔で途切れがないように実行する。つまり1168サイクルのRFCK１周期中、コード長が170 〔byte〕のECC は一旦、ECC データが転送されればRFCKの周期内で必ず３回のECC データが転送されるように設定されている。
【００４４】
このようにしてＲＡＭ５１に蓄えられたECC の３系列Ｃ１１、Ｃ２及びＣ１２の各データＳ２は、RFCKの１周期内でＥＣＣデコーダ５２へデータが転送される。この際、ＲＡＭ５１内のECC データは、そのまま残される。ここでＥＣＣデコーダ５２においてECC エラーが検出され、そのECC エラーが訂正可能であつた場合、エラー位置とエラーの訂正パターンとがエラー結果ＥＲとしてエラーレジスタ５３に送出される。ＥＣＣ回路５０は、エラーレジスタ５３から読み出される訂正パターンと、エラー位置に基づいてＲＡＭ５１より読み出されるエラーのあるデータとの排他的論理和(EXOR)をとつて、再びＲＡＭ５１に書き戻すことでエラー訂正を実行する。
ＥＣＣ回路５０からは、復号されたデータＳ１０及びセクタヘツダデータＳＨとが分離されてそれぞれ、リングバツフアメモリ１０及びセクタ検出回路７へ送出される。
【００４５】
図６にＲＡＭ５１上のECC データの各系列Ｃ１１、Ｃ２及びＣ１２の実際のデータ転送、エラー結果出力及びエラー訂正の実行制御タイミングを示す。ＥＣＣ制御部５４は、先ずＥＣＣ復号部５５へECC のＣ１２系列のデータ転送を終了したときのタイミングでＣ１１系列のエラー訂正（Ｃ１１Ｗ）を実行する。次にＲＡＭ５１から次フレームのＣ１１系列のデータをＥＣＣデコーダ５２へ転送した後のタイミングで現フレームのＣ２系列のエラー訂正（Ｃ２Ｗ）を実行する。さらに現フレームのＣ１２系列のエラー訂正（Ｃ１２Ｗ）を次フレームのＣ２系列のデータ転送後のタイミングで実行する。
【００４６】
このようにECC の各３系列のデータをＲＡＭ５１からＥＣＣ復号部５５へ連続して転送（Ｃ１１Ｒ、Ｃ２Ｒ及びＣ１２Ｒ）し、引き続いて各３系列のデータのECC エラー訂正（Ｃ１１Ｗ、Ｃ２Ｗ及びＣ１２Ｗ）を実行することにより、ECC データの読み出し及びエラー訂正をそれぞれRFCKの１周期内でなし得る。この結果、ECC の各系列Ｃ１１、Ｃ２及びＣ１２について、RFCKに対して固定間隔で、かつ途切れないようにＲＡＭ５１よりデータ出力することができる。
【００４７】
ここでECC の転送コード長NCYCが170 サイクル、パリテイの転送コード長PCYCがmax 14サイクルのとき、エラー結果がECC レジスタに出力されるタイミングは、次式
【数５】
0003672139.tif 000006
によつてECC 動作クロツク(ECCK)395 サイクルのタイミングに設定される。
ここでＥＣＣ回路５０のＲＭＩＦ４８からは、Ｃ１及びＣ２系列分のシンボル数のECCKがカウントされ、１RFCK周期内に、Ｃ１１Ｒ、Ｃ２Ｒ及びＣ１２Ｒのデータ転送に同期して３回分を必ず出力するようになされている。従つて、Ｃ１１の結果は、Ｃ１２のデータ転送中に必ず出力される。また、Ｃ２、Ｃ１２系列の結果についても、Ｃ１１、Ｃ２のデータ転送中に必ず出力することができる。
【００４８】
図７にＥＣＣ回路５０のエラー出力のタイミングの様子を示す。ここで（５）式によつて得られる(ECCK)395 サイクル後にECC 結果の出力タイミングとなるOSTT信号が出力されると、OSTT信号より３クロツク後に、OCORRECT＝１となり、ODATA[7:0]、OORIG[7:0]にエラーパターンEDX 、エラーポジシヨンEAX が出力される。この例では３つのエラーED0 〜ED2 を出力する場合について記す。因みにECC スタートパルス信号ESTTは、ＥＣＣデコード部５５がＣ１及びＣ２のデータの先頭を認識する信号、OCORRECT信号は、ECC 結果ODATA[7:0]、OORIG[7:0]を取り込むためのストローブ信号である。
エラーパターンEDX 、エラーポジシヨンEAX は、エラーレジスタ５３に一旦保持され、その時点のＥＣＣデコーダ５２へのデータ転送が終わつたところでエラー訂正が実行される。
【００４９】
ここで図８に各EFM+、Ｃ１１、Ｃ２、Ｃ１２、OUT の１フレーム(RFCK)周期、すなわち1168サイクル中のＲＡＭ５１のアクセスに要するECC 動作クロツク(ECCK)のクロツク数を示す。EFM+は、セクタシンクパターン書き込み１サイクル及び、EFM+復調出力に170 ±αサイクルを要する。ECC Ｃ１１系列は、Ｃ１１の読み出しに170 サイクル、Ｃ１１のエラー訂正に8+8 サイクル及び、Ｃ１１の書き込みに１サイクルを要し、SUB においてセクタシンクパターン読み出し１サイクル、ヘツダデータ読み出し20サイクル及びセクタ情報書き込みとして1+(14)サイクルを要する。
【００５０】
さらにECC のＣ２系列は、Ｃ２の読み出しに170 サイクル、Ｃ２のエラー訂正に14+14 サイクル及び、Ｃ２の書き込みに１サイクルを要する。またECC Ｃ１２系列は、Ｃ１２の読み出しに170 サイクル、Ｃ１２のエラー訂正に8+8 サイクル及び、Ｃ１２の書き込みに１サイクルを要する。さらにECC 復号の終了を示すOUT をセクタ情報の読み出しに１サイクル、Ｃ１１の訂正結果読み出しに１サイクル、Ｃ２のエラー訂正結果読み出しに１サイクル、Ｃ１２の訂正結果読み出しに１サイクル及び、OUT に170 サイクルを要する。これによりＣ１１、Ｃ２、Ｃ１２、OUT のＲＡＭ５１に対するアクセスは合計948 サイクルになる。
【００５１】
ヘツダデータの読み出し等を実行するSUB は、セクタ検出回路７へのシンクコード（４バイト）＋ヘツダデータ（16バイト）の転送で、セクタを検出するためのセクタ検出回路７では、ヘツダデータの中からセクタアドレスを抜き出し、CRC チエツク後、フライホイール(FW)を掛けて、システムコントローラに転送する。セクタヘツダデータＳＨは、図６に示すＣ１１Ｗ後のタイミング(SUB) にて、Ｃ１１系列のみＥＣＣデコードされたデータから抜き出すことにより、セクタ検出回路８を通してシステムコントローラ４はセクタアドレスを取り出すことでデイスクの位置情報をＣ２、Ｃ１２系列のECC 復号にかかる時間だけ早く取り出す。
フライホイールは、数回シンクが未検出となつてもロツク状態を保持するような保護及び内挿動作のことである。システムコントローラ４では、目的セクタであるか否かを比較判定する。フライホイールは、ＲＦ信号から取り出した２値化信号のシンクパターンを数回連続して検出し、そのときメインシンクパターン及びサブシンクパターンを数回連続して検出すると、FWロツクする。
【００５２】
また、メモリアドレスとＲＡＭ５１に対するライト及びリードについてのフレーム単位動作（JOB ）の実行条件を次式
【数６】
0003672139.tif 000007
【数７】
0003672139.tif 000008
【数８】
0003672139.tif 000009
【数９】
0003672139.tif 000010
のように設定する。ここでJOBXXXに対するフレームカウントをFn（XXX ）としたとき、カウントは、フレーム単位のXXX に対するJOB が全て終了すると＋１インクリメントされる。なお、SUB はＣ１１に含める。
【００５３】
EFM+において、シンクを数回連続して検出するとシンクパターンFWロツクとなる。このときメモリライトイネーブル信号MWENS は、MWENS ＝１となり、EFM+復調データの書き込みが始まる。また、シンクを数回連続して検出できない時には、シンクパターンFWアンロツクとなり、メモリライトイネーブル信号はMWENS ＝０となつてEFM+の書き込みが禁止され、各フレームカウンタは０にリセツトされる。ここでMWENS は、シンクパターンFWがロツクしているときに１となる信号で、MWENS=１のときにメモリへの書き込みを実行するメモリライトイネーブル信号である。
【００５４】
ここで図９に、例えば、復号データの出力OUT はＣ１１Ｍの４周期に１度リクエストOUTREQを出すとするとき、それぞれのリクエストに対して、OUTREQ、EFMREQ、ECCREQの順に、アクセス獲得を優先させた時のＲＡＭ５１に対するアクセスの獲得タイミングを示す。ここではXXX ACK(ACKnowledge)=1で所定のJOB が実行される。 ECCデータの出力は、RFCKの立ち上がりで起動され、JOB 実行条件に基づいて実行される。ECC の各系列Ｃ１１、Ｃ２及びＣ１２は、SUB を含めてＣ１１Ｒ−Ｃ２Ｗ−Ｃ２Ｒ−Ｃ１２Ｗ−Ｃ１２Ｒ−Ｃ１１Ｗ−SUB の順に実行される。
【００５５】
従つて、ECC の各系列Ｃ１１、Ｃ２及びＣ１２並びにOUT は、一度シンクFWがロツクし、MWENS ＝１の状態が続き、各JOB の実行条件が成立し続ければFn（Ｃ１１）〜Fn（OUT)のカウント値の差分値は、RFCK周期で固定値となる。
ところで、本発明が適用されるデータ復号装置４０では、リングバツフアメモリ１０から、多重化データ分離回路１３への読み出しを保証するだけのデータ量を確保する必要がある。従つてRFCKは、デイスクの記録（カツテイング）時のリフアレンス・チヤネル・ビツトレート26.6(Mbit/s)に対して、再生時のチヤネルビツトレートのほうが大きい値となるように設定する。
【００５６】
（１−３）セクタ検出
図１０〜図１２を用いて光デイスク２の目的セクタの検出及びセクタ情報の生成について説明する。まず図１０（Ａ）及び（Ｂ）には光デイスク２より読み出される再生データのフレーム構成及びシンクワードの具体的な内容を示す。図１０（Ｂ）に示すようにシンクワードは、アデイシヨナルシンク(Additional Sync）Ｓ１、Ｃ１シンク(C1 Sync）Ｓ２及びセクタシンク(Sector Sync）Ｓ３からなつている。図１１は、デインタリーブ後のセクタフオーマツトを示す。
セクタ検出回路7 によつてシンクパターン（Ｓ１〜Ｓ３）を検出すると、シンクパターンＦＷロツクし、続いてセクタヘツダＳＨ（HEADER）においてセクタＦＷした後、さらにセクタアドレスＳＡ（ADRESS）を検出してセクタアドレスＦＷロツクする。
【００５７】
次に図１２に示すセクタ情報の各ビツトＢＩＴデータについて説明する。先ず、ビツト７はセクタシンクパターンＳ３の有無の検出結果を示すもので、セクタシンクパターンＳ３が検出されたフレームで１がセツトされる。ビツト６はシンクコードの有無の検出結果を示し、セクタ検出回路７でセクタの頭のシンクコードの位置に”HDCD”という特定コードが検出できたフレームで"1" をセツトする。ビツト５はセクタシンクの認識を示すもので、セクタシンクパターンＳ３とセクタシンクコードＳＣの情報を用いて最終的にセクタシンクであるとセクタ検出回路７で見なしたフレームを１とするもので補間されたセクタシンクになる。
【００５８】
次にビツト４はCRC チエツク結果を示すもので、毎セクタCRC の演算を実行した結果、エラーが検出されなかつた場合、"0" を書き込む。
ビツト３はＣ１系列のECC 復号結果を示すもので、エラーが検出されなければ"0" に設定される。これはＲＭＩＦ４８からのＣ１１系列のECC 復号の結果、データが訂正不能であるか否かを示すフラグをセクタ検出回路７で取り込み、このビツトに書き込んでいるものである。
【００５９】
ビツト２はセクタアドレスＳＡの連続性を示すもので、現在、読み出されているセクタアドレス(Raw Sector Adrress,RSA)とセクタ検出回路７に保管されているセクタアドレス(Current Sector Adrress,CSA)とが等しいときに（実際にはＲＳＡと前のセクタのＣＳＡ＋１とを比較している。）、セクタに連続性があると判断し、BIT2＝1 とする。
ビツト１は開始のセクタアドレスＢＳＡの検出結果を示すもので、アドレスＢＳＡを検出すると"1" に設定される。そしてビツト０は終了のセクタアドレスＥＳＡの検出結果を示すもので、アドレスＥＳＡを検出すると"1" に設定される。
【００６０】
実際のセクタ検出は図１３（Ａ）に示すように、システムコントローラ４によつてセクタ検出回路７内のレジスタ（図示せず）へＢＳＡ設定モードSACT＝１（後述する図１９に示す）を設定すると共に、目的とするセクタの先頭のアドレスＢＳＡ及びセクタの最後のアドレスＥＳＡとを設定し、セクタ検出回路７内のレジスタ（図示せず）において、再生データから抜き出し、セクタアドレスＦＷロツクしているセクタアドレスとを比較する。この比較結果により検出したセクタアドレスが目的セクタのものであることが確認されると、この比較結果はセクタ情報（ビツト０、１）としてＲＡＭ５１に書き戻される。
【００６１】
ここで、SACT=1の場合、フレームＭから出力可能になる（図１８）。ただし、セクタアドレスによりデスクランブルの初期化が行なわれる場合は、それ以前にデスクランブルのための出力のセクタアドレスが抜き出せているのが条件となる。出力セクタアドレスは、セクタ情報のアドレス連続性により、保護された出力セクタアドレスを使用する。
【００６２】
さらにこのセクタ情報は、ＥＣＣ回路５０によるECC 復号の終了したECC 復号データＳ１０とともにＯＣＴＬ５６に送出され、ECC 復号データのデータ出力OUT の制御に用いられる。このときシステムコントローラ４は、ECC のインターリーブを見込んで、デイスクアクセス位置を目的とする光デイスク２上のセクタよりも前方の位置にトラツクジヤンプさせる。
また、このときシステムコントローラ４によつて目的とするセクタを特定しなければ予め、SACT＝０に設定しておくことで、ECC 復号データを読み出せる時点からデータ出力することができる。
【００６３】
セクタ情報のビツト７のセクタシンクパターンＳ３の有無の検出結果は、ＥＦＭ＋復調回路４４におけるEFM+復調の際、再生データより検出されるEFM+復調データとともにフレームごとにＲＡＭ５１に書き込まれ、ヘツダデータＳＨとともにセクタ検出回路７に転送される。セクタ検出回路７では、各フレームでセクタシンクパターンＳ３の有無の検出結果により光デイスク２よりセクタを認識する。ここでセクタ検出回路７において光デイスク２のセクタが認識されると、該セクタのヘツダデータＳＨの中からセクタアドレスＳＡが抜き出される。
【００６４】
セクタ検出回路７では、ヘツダデータＳＨ内のCRC チエツクの結果、アドレスの連続性、セクタフレームのＣ１系列のECC 復号結果等を適応的に用いてセクタアドレスＳＡに対してフライホイールＦＷがかけられる。システムコントローラ４では、フライホイールＦＷがかけられ保護されたセクタアドレスＦＷロツク状態であるセクタアドレスＳＡを取り出し、光デイスク２の位置情報ADD として用いる。
【００６５】
セクタ情報の内、ビツト０及び１はＯＣＴＬ５６で参照され、セクタ情報のビツト１が"1" でビツト０が"0" のとき、すなわちセクタアドレスＢＳＡからＥＳＡまでのセクタが検出されている場合はシステムコントローラ４の目的とするセクタのデータを出力できるように設定している。ここで、セクタアドレスＥＳＡを指定しない場合、ビツト０は、"0" を保持する。この間、ECC 復号データはリングバツフアメモリ１０に出力され続けることになる。ここで例えば、ＯＣＴＬ５６内に設けられたデータ出力コントロールレジスタ（図示せず）を用いてビツト０及び１の状態に関係なくデータ出力を制御するようにしてもよい。
【００６６】
ここで、図１３（Ｂ）に示すように、開始のセクタアドレスＢＳＡ及び終了のセクタアドレスＥＳＡの設定はトラツクジヤンプするとき以外にも、トラツクジヤンプ後にシステムコントローラ４から再設定することも可能である。例えば、早送り操作時に要らないデータを読み飛ばすとき等、デイスク上のアクセス位置が近接している場合は、現在のセクタアドレスＳＡを認識してからセクタアドレスＢＳＡ及び又はＥＳＡを再設定する。これによりトラツクジヤンプをせずともセクタアドレスＢＳＡからのデータ出力ができる。
【００６７】
ここで図１４にシンクパターン（Ｓ１〜Ｓ３）がロツクしてからセクタアドレスＳＡが読めるようになり、データが出力されるまでの時間関係を示す。システムコントローラ４によりデイスクアクセス位置をトラツクジヤンプ後、EFM+復調が開始されてからシンクパターン（Ｓ１〜Ｓ３）がロツクすると、シンクパターンロツクＳＹＬＫがSYLK＝１となる。続いて目的セクタのセクタアドレスＳＡが（SALK＝１において）フライホイールＦＷロツクする。続いてECC 復号のＣ１１実行フレームが170 以上となるとSTOK＝１になり、それ以降のデータはECC 復号後にデータの出力OUT が可能となる。
実際にはSTOK= １のタイミングよりさらにジツタ分も含めたＣ２系列のECC 復号分、約173 フレームを実行した後、開始セクタアドレスＢＳＡが検出されたタイミングでECC 復号データの有効データを次段のリングバツフアメモリ１０に出力させるデータストローブ信号DSTBが、DSTB= １となり、ECC 復号データＳ１０の有効データの出力が開始される。
【００６８】
以上の構成において、実際のセクタ検出及びデータ出力は、EFM+復号データを書き込み可能にするイネーブル信号＋LATCHED MWENが"1" となつた状態でまず図１５に矢印で示すＣ１１実行後のタイミングでフレームのセクタ情報のビツト７のセクタシンクパターンの有無とシンクコードＳＣ、ヘツダデータＳＨのデータをセクタ検出回路７で解析してセクタアドレスＳＡの読み取り動作を開始する。ここでリードフレームクロツクRFCKの周期は次式、
【数１０】
0003672139.tif 000011
によつて求められる。
【００６９】
続いて図１６に示すように、セクタの先頭となるフレームが検出され（３フレーム）、例えばセクタ情報のビツト６及び７が"1" となるセクタ確定条件が満たされるとセクタＦＷがロツクする。さらに、セクタアドレスの連続性が正しいと判断されると、セクタアドレスＳＡ確定条件が満たされ、セクタアドレスＦＷがロツクする（３フレーム）。この結果、（さらにジツタ等のマージン約１フレーム分を考慮した）図中矢印で示すタイミングでSALK＝１となる。システムコントローラ４では、SALK＝１であればＦＷがロツクしたセクタアドレスＳＡを読み出すことができる。このときのECC 復号のＣ１１系列のフレームカウントFn(C11) 、Ｎは次式、
【数１１】
0003672139.tif 000012
によつて表される。
【００７０】
続いて図１７に示すように、Ｃ１１系列のECC 復号の170 フレーム以降は、ECC 復号の各Ｃ１１、Ｃ２及びＣ１２系列全てが実行され、かつ出力されるフレームであるとＲＭＩＦ４８で判断されると、STOK= １となり、出力可能であることを、ＳＵＢのタイミングでセクタ検出回路７に知らせる。
【００７１】
続いて図１８に示すように、セクタの頭のフレームＭで開始セクタアドレスＢＳＡが検出されたときにSTOK＝１の場合、フレームＭは将来、ECC 復号が実行されて出力可能なのでセクタ情報のビツト１を"1" すなわちセクタの先頭アドレスであるセクタアドレスＢＳＡが検出されると"1" となる信号ISTTをISTT= １にセツトし、セクタ情報のビツト７〜０がＳＵＢの終わりのタイミングでＲＭＩＦ４８よりＲＡＭ５１へ書き戻される。このときもし、開始セクタアドレスＢＳＡの検出時に、STOK＝０のときは、エラーとして、システムコントローラ４は、例えば前回よりも前方の位置から光デイスク２に対して再アクセスを実行する。
【００７２】
ここで図１９に示すように、セクタアドレスＢＳＡが設定され、SACT＝１になつたとき、データストローブ信号DSTB＝１となりフレームＭから順次、ECC 復号データFn(OUT) が出力可能になる（図中、矢印で示す）。ただし、セクタアドレスＳＡによりデスクランブルの初期化が実行される場合は、それ以前に、デスクランブルのための出力セクタアドレスＳＡが抜き出せていることが条件となる。出力セクタアドレスＳＡは、セクタ情報のアドレス連続性により保護された出力セクタアドレスＳＡを用いる。
【００７３】
また図２０に示すように、セクタアドレスＢＳＡ及びＥＳＡを設定しないSACT＝０の場合、170 番目のフレーム以降のセクタの頭から出力可能になる（図中、矢印で示す）。しかし、ここで170 番目のフレームから出力できないのは、デスクランブルのための出力セクタアドレスＳＡが必要となるためである。このため最大１セクタ分、出力セクタアドレスＳＡが読み出されるのを待機する。そして出力セクタアドレスＳＡによりデスクランブルの初期化が実行されると、DSTB＝１となりリングバツフアメモリ１０への出力が開始される。
このようにセクタ情報によりセクタ検出し、目的セクタのデータの出力を制御することができる。かくしてＲＡＭ５１内に僅かなセクタ情報用のメモリ領域を設定することでECC 復号に必要なメモリを増やすことなく、セクタ情報を用いて目的セクタデータに対して確実にアクセスしてデータ出力を制御することができる。
【００７４】
以上の構成によれば、セクタ検出に用いるセクタ情報を格納する僅かな領域をＥＣＣ回路５０内の復号用のＲＡＭ５１内に設けることにより、ＥＣＣ回路５０において復号する符号化データにインタリーブがかかつている場合でもセクタ検出用のメモリを別に設けることなく、ほぼECC 復号に用いるだけのメモリ容量でECC 復号が実行できる。
【００７５】
さらに上述の実施例によれば、セクタ検出回路７において生成するセクタ情報及びＲＭＩＦ４８により生成するSTOK信号により、ECC 復号のＣ１１系列を終了したタイミングで次段のリングバツフアメモリ１０への出力の可否を判定することができる。これによりシステムコントローラ４によるデイスクアクセスのためのセクタアドレスＳＡを認識するタイミングで直ちにセクタデータを次段のリングバツフアメモリ１０へ書き込むことが可能か否かを判断することができ、セクタデータに対するアクセスが高速かつ確実になし得る。
【００７６】
さらに上述の実施例によれば、システムコントローラ４によつてデイスクアクセスするためのセクタアドレスＳＡを認識するタイミングOCCRRECT＝１（図７）で次段のリングバツフアメモリ１０へデータ出力することが可能か否かを判定することができるので、ＲＡＭ５１に格納されるECC 復号後のデータからセクタアドレスＳＡを検出するための回路を新たに設ける必要がなくなり、全体の回路構成を簡略化し得る。
【００７７】
（２）第２実施例
（２−１）記録データフオーマツト
図２１〜図２４は第２実施例における記録データフオーマツトを示し、この実施例においては、１クラスタ（３２ｋバイト）を１単位として、データが記録されている。このクラスタの構成を以下に詳述する。
【００７８】
すなわち、２ｋバイト（２０６０バイト）のデータが、１セクタ分のデータとして抽出され、これに図２１に示すように、４バイトのオーバヘツドが付加される。このオーバヘツドには、エラー検出のためのエラー検出符号（ＥＤＣ(Error
Detection Code)）などが含まれている。
【００７９】
この合計２０６４（＝２０６０＋４）バイトの１セクタ分のデータが、図２２に示すように、１２×１７２（＝２０６４）バイトのデータとされる。そして、この１セクタ分のデータが１６個集められ、１９２（＝１２×１６）×１７２バイトのデータとされる。この１９２×１７２バイトのデータに対して、１６バイトの外符号（ＰＯ）が、縦（列）方向に各バイト毎にパリテイとして付加される。また、２０８（＝１９２＋１６）×１７２バイトのデータとＰＯパリテイに対して、１０バイトの内符号（ＰＩ）が、横（行）方向に各バイト毎にパリテイとして付加される。
【００８０】
さらに、このようにして２０８（＝１９２＋１６）×１８２（＝１７２＋１０）バイトにブロツク化されたデータのうち、１６×１８２バイトの外符号（ＰＯ）の行は、１６個の１×１８２バイトの行に区分され、図２３に示すように、１２×１８２バイトの番号０〜番号１５の１６個のセクタデータの下に１行ずつ挿入されて、インターリーブされる。そして、１３（＝１２＋１）×１８２バイトのデータが１セクタのデータとされる。
【００８１】
さらに、図２３に示す２０８×１８２バイトのデータは、図２４に示すように、縦方向に２分割され、１フレームを９１バイトのデータで構成して、２０８×２フレームのデータとされる。９１バイトのフレームデータの先頭には、さらに２バイトのフレーム同期信号（ＦＳ）が付加される。その結果、図２４に示すように、１フレームのデータは合計９３バイトのデータとなり、合計２０８×（９３×２）バイトのブロツクのデータとなる。これが、１クラスタ（１ＥＣＣブロツク）分のデータとなる。そのオーバヘツド部分を除いた実データ部の大きさは２ｋバイト（＝２０４８×１６／１０２４ｋバイト）となる。
【００８２】
すなわち、この例の場合、１クラスタ（１ＥＣＣブロツク）が１６セクタより構成され、１セクタが２４フレームにより構成される。このようなデータが光デイスク２にクラスタ単位で記録されていることになる。
【００８３】
（２−２）データ再生装置及びＥＣＣ復号
ここで図２５は、第１実施例について上述したデータ再生装置４０に第２実施例の記録データフオーマツトを適用する場合の、復調回路系３５を示し、復調回路６（ＲＦ処理回路１３０、ＥＦＭ＋復調回路１３１）、セクタ検出回路７（ＳＢＣＤ回路１３４、ＲＡＭコントローラ１３５、ＲＡＭ１３７）、およびＥＣＣ回路５０（ＲＡＭコントローラ１３５、ＥＣＣ制御回路１３６、ＲＡＭ１３７、ＥＣＣコア回路１３８、ＯＣＴＬ回路１３９）、並びにその周辺の回路の詳細な構成である。
【００８４】
この図において、ＲＦ処理回路１３０は、図１に示すピツクアツプ３からのＲＦ信号の入力を受け、この信号を２値化した後、ＥＦＭ＋復調回路１３１に出力する。ＥＦＭ＋復調回路１３１は、入力された信号に対してＥＦＭ＋復調を施すと共に、同期パターンの検出を行う。ＣＬＶ制御回路１３２は、ＥＦＭ＋復調回路１３１が出力する同期パターンに基づき、ドライブインタフエース（以下、ドライブＩＦと略記する）１３３を制御する。ＳＢＣＤ（サブコード）回路１３４はＥＦＭ＋復調回路１３１の出力からセクタの検出を行う。ＲＡＭコントローラ１３５は図３のＲＭＩＦ４８に対応し、ＲＡＭ１３７の読み書きを制御する。
【００８５】
ＲＡＭ１３７は、ＥＣＣ制御回路１３６がエラー訂正処理などを実行する際に、データ等を一時的に格納するようになされている。ＥＣＣコア回路１３８は図３のＥＣＣ復号部５５に対応し、リードソロモン符号（ＰＩとＰＯ）を用いて、後述するＥＣＡ、ＥＣＤ、ＳＧＬＧなどを生成し、ＥＣＣ制御回路１３６に出力する。ＥＣＣ制御回路１３６は、ＥＣＣコア回路１３８から供給されるＥＣＡ、ＥＣＤ、ＳＦＬＧなどを用いて、実際にエラー訂正を行う。ＯＣＴＬ回路１３９は、デスクランブル処理、ＥＤＣチエツク、または、出力データの制御等を行う。また、ホストＣＰＵ１４０は図１のシステムコントローラ４に対応し、装置の各部の制御を行うようになれている。
【００８６】
光デイスク２（図１）からの再生信号は、ＲＦ処理回路１３０において２値化信号に変換される。そして、２値化された信号から、ＥＦＭ＋復調回路１３１により同期パターンが検出される。そして、ＣＬＶ制御回路１３２において、この同期パターンに基づき、ラフサーボがかけられ、その結果、データ中のシンクコード（Sync Code ）（図２６におけるＳＹ０〜ＳＹ７）がさらに検出され、ドライブインタフエース１３３を介して光デイスク２の回転に対して、ＰＬＬ（Phase Locked Loop ）による位相サーボがかけられる。
【００８７】
図２６に、光デイスク２の物理セクタの構成例を示す。この図に示すように、物理セクタは、横方向に２つのシンクフレーム（Sync frame）、縦方向に１３個のシンクフレーム、合計で２６個のシンクフレームにより構成されている。各シンクフレームは３２チヤンネルビツト（変調される前のデータビツトで表現すると１６ビツト（＝２バイト））のシンクコード（ＳＹ０〜ＳＹ７）と、１４５６チヤンネルビツト（変調される前のデータビツトで表現すると７２８ビツト（＝９１バイト））のデータ部から構成される。先頭のシンクフレームのデータ部には、ＩＤ情報（セクタ番号）とＩＥＤ（ＩＤに対するエラー検出符号）情報の他、メインデータ（main data ）が格納されている。
【００８８】
３２チヤンネルビツトのシンクパターンは、データ中には表れないユニークなパターンとして、その下位２２ビツトが、「０００１０００００００００００００１０００１」のように設定されている。
【００８９】
図２６の左側の各シンクフレームのデータ部には、メインデータが記録され、左側の最後のシンクフレームのデータ部には、ＰＯ情報（パリテイ）が記録されている。図２６の右側のシンクフレームには、メインデータとＰＩ情報が記録され、右側のシンクフレームの最後から２番目のシンクフレームには、ＥＤＣ情報とＰＩ情報（パリテイ）が記録され、最後のシンクフレームには、ＰＯ情報とＰＩ情報が記録されている。
【００９０】
図２７は各セクタのＰＩ情報とＰＯ情報を除くデータの詳細を示し、ＩＤ（セクタ番号）（４バイト）、ＩＥＤ（ＩＤに対するエラー検出符号（２バイト））、ＲＳＶ（保留領域）（６バイト）、メインデータおよび、ＥＤＣ（４バイト）により１セクタのデータが構成されている。なお、メインデータにはスクランブル処理が施されている。
【００９１】
そして、このようなデータセクタが１６セクタ分集められ、図２２に示すように、１６バイトのＰＯ符号と１０バイトのＰＩ符号とが付加される。さらに、ＰＯ符号を含む１６行が１データセクタ毎に配置されるようにインターリーブされる。そして、得られたデータは、図２４に示すように、シンクコードＳＹｘ（ｘ＝０、１、２、……、７）によつて表わされるＦＳ（フレーム同期）コードが付加され、ＥＦＭ＋変調される。これによりＥＣＣブロツク内の物理セクタは、図２６に示すように、１３×２シンクフレームにより構成される。１ＥＣＣブロツクは１６セクタにより構成されるので、物理セクタアドレスの下位４ビツトは００００〜１１１１のいずれかとなる。その結果、ＥＣＣブロツクの先頭のセクタの物理アドレスは下位４ビツトが００００となる。
【００９２】
なお、メインデータに対するスクランブル処理は、物理セクタアドレスの下位４ビツト〜７ビツトにより指定される値を初期値として生成されたスクランブルデータと、メインデータとの間で排他的論理和を演算することにより実行される。
【００９３】
なお、この明細書においては、各種の信号に各種の記号が用いられているので、ここで、それらをまとめて説明する。
【００９４】
ｂｌｏｃｋ−ｔｏｐ（Block Top ）
ＳＹＬＫ信号がＨの状態で、セクタの先頭からＨとなる信号である。
Ｃ１１Ｍ（Clock 11.2896 ＭHz）
システムの動作クロツクであり、その周波数は１１．２８９６〔ＭHz〕である。
ＤＳＴＢ（Data strobe ）
ストリームデータＳＤとしてメインデータが出力されているとき、Ｈとなるデータストローブ信号である。
ＥＣＡ（ＥＲＲ  Correction Address）
エラーのある位置（アドレス）を示すエラー訂正アドレス信号である。
ＥＣＣＫ（ＥＣＣ  Clock ）
ＥＣＣコア回路１３８の動作クロツクである。
ＥＣＤ（Error Correction Data ）
誤つたデータと排他的論理和を演算したとき、正しいデータとなるエラー訂正データである。
ＥＣＤＥ（ＥＣＣ Code Data End）
入力データの最後を示すコントローラ信号である。
ＥＣＯＤ（ＥＣＣ  Code  ＥＲＲ）
エラー訂正不能のとき、Ｈとなる信号である。
ＥＣＯＲ（ＥＣＣ  Correction）
エラー訂正可能なデータ（ＥＣＡ、ＥＣＤ）の出力を示すストローブ信号である。
ＥＣＹＥ（ＥＣＣ  Cycle End ）
入力符号データのサイクルの最後を示すコントローラ信号である。
ＥＤＴ（ＥＣＣ Data ）
エラー訂正のためＲＡＭ１３７から読み出され、ＥＣＣ制御回路３６に転送されるデータである。
ＥＳＴＢ（Error Strobe）
エラー訂正結果ＥＲの転送時にＨとなるエラー訂正結果ストローブ信号である。
ＥＳＴＴ（ＥＣＣ Start）
入力データの先頭を示すコントローラ信号である。
ＥＦＭ＋Ｗ  Ｆｒａｍｅ（ＥＦＭ＋Write Frame Counter ）
ＲＡＭ１３７へ書き込むメインフレームを表す信号である。
ＨＤＥＮ（Header Data Enable）
セクタヘツダデータのストローブ信号である。
ｍａｉｎ−ＦＭＳＹ（main Frame Sync ）
各ＰＩ行のメインシンク（先頭のシンク）でＨとなる信号である。
ＭＷＥＮ（Memory Write Enable ）
ＥＦＭ＋復調データのＲＡＭ１３７への書き込みイネーブル信号である。
ＭＷＲＱ（ＥＦＭ Write Request）
ＥＦＭ＋復調データのＲＡＭ１３７への書き込みリクエスト信号である。
ＯＵＴＥ（Output Flag ）
補間フラグ（出力フラグ）である。
ＯＳＴＴ（ＥＣＣ Output Start ）
所定の符号系列におけるＥＳＴＴから４７７（ＥＣＣＫ）後に遅延して出力される信号である。
ＲＤＴ（Read Data ）
ＲＡＭ１３７のリードデータバス上のデータである。
ＳＡＬＫ（Sector Address Lock ）
セクタアドレス（ＩＤ）が正常に検出されていることを表す信号である。
ＳＡＵＬ（Sector Address Unlock ）
ＳＡＬＫ信号の逆極性の信号である。
ＳＣＳＹ（Sector Sync ）
ＳＹ０のＦｒａｍｅでＨとなる、セクタの先頭を判別するための信号である。
ＳＤ（Stream Data ）
ストリームデータ（デコード出力データ）である。
ＳＤＣＫ（Stream Data Clock ）
ストリームデータのクロツクである。
ＳＦＬＧ（Sector Flag ）
ＰＩ１訂正のＥＣＣ訂正不能フラグである。
ＳＩＮＦ（Sector Infomation ）
セクタの先頭でＨとなるセクタ情報ストローブ信号である。
ＳＵＢ（ＳＵＢ Data ）
ＳＢＣＤ回路１３４に対して転送するＩＤとＩＥＤを含むデータである。
ＳＹＬＫ（Sync Lock ）
シンクコードが連続して３回検出されたとき、Ｈとなる信号である。
ＳＹＵＬ（Sync Unlock ）
ＳＹＬＫ信号の逆極性の信号である。
ＷＤＴ（Write Data）
ＲＡＭ１３７のライトデータバス上のデータである。
ＸＨＷＥ（Sector Header Write Enable）
ＳＢＣＤ回路１３４からＲＡＭ１３７へ書き込むセクタ情報の出力イネーブル信号である。
【００９５】
ＥＦＭ＋復調回路１３１（図２５）により復調処理が施されたデータは、ＲＡＭコントローラ１３５の制御の下、図２８に示すように、ＲＡＭ１３７に格納される。この図２８は、１ＥＣＣブロツクについて示している。ＲＡＭ１３７に格納されているデータを読み出す場合、ＲＡＭコントローラ３５は、図２８に示す行および列の値を指定することにより、所望のデータを取得することができる。すなわち、図２８において、第Ｍ行目の第Ｎバイト目にあるデータｘは、２値（Ｍ，Ｎ）を指定することによりＲＡＭ１３７から読み出すことができる。
【００９６】
ここで光デイスク２に記録されているデータセクタの先頭が、ＳＢＣＤ回路１３４において、シンクコードの種類と連続性に基づき認識されると、ＥＦＭ＋復調回路１３１により復調されたデータは、先頭データから順にＲＡＭ１３７に格納される。図２９は、このとき関係する回路の主要部分の信号のタイミングを示している。
【００９７】
すなわち、ＥＦＭ＋復調回路１３１は、図３０に示すように、シンクのロツク状態を検出している。最初にステツプＳＰ１において、図２６に示すシンクコード（ＳＹ０〜ＳＹ７）を各シンクフレームにおいて検出することができたか否かを判定する。シンクコードを検出することができた場合においては、ステツプＳＰ２に進み、変数ＳＣｌｏｃｋを１だけインクリメントするとともに、変数ＳＣunlockを０にセツトする。この変数ＳＣｌｏｃｋは、シンクコードが連続して検出されたときの回数を表し、変数ＳＣunlockは、シンクが連続して検出されなかつたときの回数を表す。
【００９８】
次に、ステツプＳＰ３において、変数ＳＣｌｏｃｋが３に等しいか否かを判定する。すなわち、シンクが連続して３回検出されたか否かを判定する。変数ＳＣｌｏｃｋが３より小さい場合においては、ステツプＳＰ１に戻り、それ以降の処理を繰り返し実行する。ステツプＳＰ３において、変数ＳＣｌｏｃｋが３に等しいと判定された場合、ロツク状態になつたものとして、ステツプＳＰ４において、ＳＹＬＫ信号をＨに設定する。そして、ステツプＳＰ５において、さらに連続して３回シンクが検出されたか否かを判定するために、変数ＳＣｌｏｃｋを２に設定し、ステツプＳＰ１に戻り、それ以降の処理を繰り返し実行する。
【００９９】
これに対して、ステツプＳＰ１において、シンクコードが検出されなかつたと判定された場合、ステツプＳＰ６に進み、変数ＳＣunlockを１だけインクリメントするとともに、変数ＳＣlockを０に設定する。ステツプＳＰ７においては、変数ＳＣunlockが３に等しいか否かを判定する。すなわち、シンクコードが３回連続して検出されなかつたか否かを判定する。連続して検出されなかつた回数が２以下である場合には、ステツプＳＰ１に戻り、それ以降の処理を繰り返し実行する。連続して３回シンクが検出されなかつた場合においては、ステツプＳＰ８に進み、ＳＹＬＫ信号をＬに設定する。そして、ステツプＳＰ９に進み、変数ＳＣunlockを２に設定して、次のシンクコードの発生タイミングにおいても、シンクコードが検出されなかつたとき、ＳＹＬＫ信号をＬに設定したままとすることができるように、変数ＳＣunlockを２に設定し、ステツプＳＰ１に戻る。
【０１００】
以上のようにして、ＥＦＭ＋復調回路１３１は、シンクコードを検出し、ロツク状態になつているか否かを常に監視している。
【０１０１】
なお、上述の実施例においては、検出回数をそれぞれ３回としたが、基準となる連続検出回数ＮLOCKと、不連続の検出回数ＮUNLOCKは、それぞれ任意の値とすることが可能である。
【０１０２】
このようにＥＦＭ＋復調回路１３１は、ＳＹＬＫ信号がＨになつたとき、すなわち、ロツク状態になつたとき、図３１のフローチヤートに示す処理を実行する。すなわち、ステツプＳＰ２１において、各セクタの先頭に配置されているシンクコードＳＹ０が検出されたか否かを判定する。シンクコードＳＹ０が検出された場合においては、ステツプＳＰ２２に進み、セクタの先頭であることを表すＳＣＳＹ信号を所定時間Ｈに設定する。次にステツプＳＰ２３に進み、ＳＹＬＫ信号がＬに変化したか否かを判定し、Ｌでなければ（Ｈのままであれば）ステツプＳＰ２１に戻り、同様の処理を繰り返し実行する。ステツプＳＰ２１において、シンクコードＳＹ０が検出されていないと判定された場合においては、ステツプＳＰ２２の処理はスキツプされる。
【０１０３】
以上のようにして、ＥＦＭ＋復調回路１３１は、各セクタの先頭において、図２９（Ａ）に示すＳＣＳＹ信号を発生する。
【０１０４】
さらに、ＥＦＭ＋復調回路１３１は、ＳＹＬＫ信号がＨになつたとき、図３２のフローチヤートに示す処理を実行する。最初に、ステツプＳＰ３１において、メインフレーム（以下、図２６の横方向の２個のシンクフレームを、まとめて１個のメインフレームと称する）のシンクコード（以下、図２６のシンクコードのうち、左側に示すシンクコードをメインフレームシンクと称する）を検出したか否かを判定する。メインフレームシンクを検出した場合においては、ステツプＳＰ３２に進み、ＥＦＭ＋復調回路１３１は図２９（Ｂ）に示すｍａｉｎ−ＦＭＳＹ信号を発生する。ステツプＳＰ３１において、メインフレームシンクが検出されていないと判定された場合においては、ステツプＳＰ３２の処理はスキツプされる。
【０１０５】
次にステツプＳＰ３３に進み、ＳＹＬＫ信号がＬに変化したか否かが判定され、変化していない場合（Ｈのままである場合）、ステツプＳＰ３１に戻り、それ以降の処理を繰り返し実行する。ＳＹＬＫ信号がＬに変化した場合においては、ｍａｉｎ−ＦＭＳＹ信号の生成処理は中止される。
【０１０６】
このようにして、ＥＦＭ＋復調回路１３１は、メインフレームシンクの周期（図２６における水平方向の２つのシンクフレームの周期）毎に、ｍａｉｎ−ＦＭＳＹ信号を発生する。
【０１０７】
ＲＡＭコントローラ１３５は、ＥＦＭ＋復調回路１３１よりＳＣＳＹ信号が入力されたとき、図２９（Ｄ）に示すように、ＭＷＥＮ信号をＨに設定し、ＲＡＭ１３７に対する、いま検出されているセクタのデータの書き込み処理を開始させる。すなわち、このときＲＡＭコントローラ１３５は、図２９（Ｅ）に示すように、内蔵するＥＦＭ＋Ｗ  Ｆｒａｍｅカウンタ（図示せず）で図２６に示すメインフレームをカウントする。このカウント値は、図２６に示すメインフレームの上から順番の番号を表すことになる。
【０１０８】
また、ＲＡＭコントローラ１３５は、図２９（Ｆ）に示すように、内蔵するＰＩ１  Ｆｒａｍｅカウンタ（図示せず）により、ＲＡＭ１３７に伝送するメインフレームの番号を管理する。
【０１０９】
すなわち、図２６に示す最初のメインフレーム（番号０のメインフレーム（図２６における最上行のメインフレーム））のデータがＲＡＭ１３７に書き込まれたとき、ＥＣＣ制御回路１３６は、ＲＡＭコントローラ１３５の制御の下に、そのメインフレームのデータの供給を受ける。そして、このデータを、ＥＣＣコア回路１３８に転送し、誤り訂正処理を実行させる。すなわち、ＰＩ１処理を実行させる。ＰＩ１訂正後のデータは、再びＲＡＭ１３７に書き戻される。
【０１１０】
ＲＡＭコントローラ１３５は、このＰＩ１訂正（ＰＩ訂正の１回目）の実行の後、ＲＡＭ１３７に記憶されている番号０のメインフレームのデータの中から、ＩＤとＩＥＤデータ（ＳＵＢ）を読み出し、図２９（Ｃ）の番号０で示すＳＵＢ信号のタイミングにおいて、この番号０のメインフレームのＩＤとＩＥＤデータをデータバスを介してＳＢＣＤ回路１３４に転送させる。図２６に示すように、ＩＤとＩＥＤデータは、各セクタの先頭にのみ配置されているため、この転送処理は、番号０のメインフレームにおいてのみ実行される。ＳＢＣＤ回路１３４においては、このようにして、物理セクタのアドレス（ＩＤ）が検出される。
【０１１１】
そして、検出された物理セクタのアドレスの下位４ビツトにより、ＥＣＣブロツクの先頭セクタが検出される。
【０１１２】
図３３は、以上のＩＤの転送に続いてｂｌｏｃｋ−ｔｏｐを検出する場合のタイミング図を示しており、また、図３４はｂｌｏｃｋ−ｔｏｐ検出以降の処理を示しており、これらの図の動作については後述する。
【０１１３】
図３５は、上述したＩＤの転送のより詳細なタイミングを示すタイミング図である。図３５（Ａ）に示すように、ＲＡＭコントローラ１３５は、ＳＢＣＤ回路１３４に対して、ＲＡＭ１３７からＩＤとＩＥＤデータが読み出されるタイミングを表すＨＤＥＮ信号を出力する。このとき、ＲＡＭ１３７から、ＳＢＣＤ回路１３４に対して、第７ビツトから第０ビツトまでの合計８ビツトのリードデータＲＤＴ（図３５（Ｃ））として、ＩＤデータ（４バイト）とＩＥＤデータ（２バイト）が、１１．２８９６〔ＭHz〕の周波数のクロツクＣ１１Ｍ（図３５（Ｆ））に同期して転送される。このＩＤデータとＩＥＤデータは、ＰＩ１訂正の結果、訂正不能の状態（この場合、ＳＦＬＧ信号はＨとなる）にはなつていないことが、ＥＣＣコア回路１３８からＥＣＣ制御回路１３６に供給されているＳＦＬＧ信号（＝１）により表されている。ＳＢＣＤ回路１３４は、ＩＤ（セククアドレス）の供給を受けると、そのＩＤ（セクタ）に対応するセクタ情報ＳＩを、ホストＣＰＵ１４０からの指令（補間フラグの生成モード、スタートセクタ、エンドセクタなどの指令）に対応して生成する。例えば、ホストＣＰＵ１４０から出力が指定されたＩＤのセクタには、セクタ情報のビツト５に１を設定し、ビツト４に０を設定する。
【０１１４】
図３６は、セクタ情報（ＳＩ）の構成を示している。同図に示すように、セクタ情報の各ビツトは、以下に示す情報を有している。
【０１１５】
ビツト７：補間フラグ（ＯＵＴＦ）生成モードの設定（１：補間フラグ生成モード）
ビツト６：ＥＣＣブロツクの先頭セクタ（物理セクタアドレスの下位４ビツトが０である場合に１とされる）（１：先頭セクタ）
ビツト５：スタートセクタ（物理セクタアドレスがホストＣＰＵ１４０で指定されたスタートセクタアドレスと一致した場合は１とされる）（１：スタートセクタ）
ビツト４：エンドセクタ（物理セクタアドレスがホストＣＰＵ１４０で指定されたエンドセクタアドレスと一致した場合に１とされる）（１：エンドセクタ）
ビツト３：デスクランブル初期化アドレスのビツト３（物理セクタアドレスの第７ビツト）
ビツト２：デスクランブル初期化アドレスのビツト２（物理セクタアドレスの第６ビツト）
ビツト１：デスクランブル初期化アドレスのビツト１（物理セクタアドレスの第５ビツト）
ビツト０：デスクランブル初期化アドレスのビツト０（物理セクタアドレスの第４ビツト）
【０１１６】
この４バイトのＩＤと２バイトのＩＥＤを用いて、図３８〜図４０を参照して後述するようにチエツク処理が行われた後、図３５（Ｄ）に示すＸＨＷＥ信号が、ＥＣＣ制御回路１３６でＬにされる。このとき、ＳＢＣＤ回路１３４からＲＡＭ１３７に、８ビツトのライトデータＷＤＴとしてセクタ情報ＳＩが転送され、書き込まれる。１６セクタ分のセクタ情報は、図２８に示すように、上方の１６個のＰＩ行に対応するように格納される。従つて、所定のＰＩ行の行数を指定することにより、対応するセクタ情報を得ることができる。
【０１１７】
実際のセクタ検出は図３７（Ａ）に示すように、ホストＣＰＵ１４０によつてＳＢＣＤ回路１３４内のレジスタ（図示せず）へＢＳＡ設定モードを設定すると共に、目的とするセクタの先頭のアドレスＢＳＡ及びセクタの最後のアドレスＥＳＡとを設定し、ＳＢＣＤ回路１３４内のレジスタ（図示せず）において、再生データから抜き出し、セクタアドレスＦＷロツクしているセクタアドレスとを比較する。この比較結果により検出したセクタアドレスが目的セクタのものであることが確認されると、この比較結果はセクタ情報（ビツト４及び５）としてＲＡＭ１３７に書き戻される。
【０１１８】
さらにこのセクタ情報は、ＥＣＣ回路５０によるECC 復号の終了したECC デコードデータとともにＯＣＴＬ１３９に送出され、ECC デコードデータ出力時の制御に用いられる。このときホストＣＰＵ１４０は、ECC のインターリーブを見込んで、デイスクアクセス位置を目的とする光デイスク２上のセクタよりも前方の位置にトラツクジヤンプさせる。
また、このときホストＣＰＵ１４０によつて目的とするセクタを特定しなければ、予め、ＢＳＡ設定モードを解除しておくことで、ECC 復号データを読み出せる時点からデータ出力することができる。
【０１１９】
セクタ情報の内、ビツト４及び５はＯＣＴＬ１３９で参照され、セクタ情報のビツト５が"1" でビツト４が"0" のとき、すなわちセクタアドレスＢＳＡからＥＳＡまでのセクタが検出されている場合はホストＣＰＵ１４０の目的とするセクタのデータを出力できるように設定している。ここで、セクタアドレスＥＳＡを指定しない場合、ビツト０は、"0" を保持する。この間、ECC 復号データはリングバツフアメモリ１０に出力され続けることになる。ここで例えば、ＯＣＴＬ１３９内に設けられたデータ出力コントロールレジスタ（図示せず）を用いてビツト０及び１の状態に関係なくデータ出力を制御するようにしてもよい。
【０１２０】
ここで、図３７（Ｂ）に示すように、開始のセクタアドレスＢＳＡ及び終了のセクタアドレスＥＳＡの設定はトラツクジヤンプするとき以外にも、トラツクジヤンプ後にホストＣＰＵ１４０から再設定することも可能である。例えば、早送り操作時に要らないデータを読み飛ばすとき等、デイスク上のアクセス位置が近接している場合は、現在のセクタアドレスＳＡを認識してからセクタアドレスＢＳＡ及び又はＥＳＡを再設定する。これによりトラツクジヤンプをせずともセクタアドレスＢＳＡからのデータ出力ができる。
【０１２１】
次に、図３８〜図４０のフローチヤートを参照して、ＳＢＣＤ回路１３４におけるＩＤとＩＥＤのチエツク処理について説明する。
【０１２２】
ＳＢＣＤ回路１３４は、図３８のフローチヤートに示す処理により、ＩＥＤのチエツク結果が正常である（ＩＤにエラーがない）セクタがＮ個（この実施例の場合、３個）以上連続しているか否かを判定する。
【０１２３】
このため、最初のステツプＳＰ４１において、いま、取り込んだＩＥＤチエツクが正常であるか否かを判定する。ＩＥＤチエツクが正常である場合においては、ステツプＳＰ４２に進み、正常であるＩＤのセクタの数を表す変数ＳＡlockを１だけインクリメントする。そして、正常でないＩＤを有する（ＩＤにエラーがある）セクタの連続回数を表す変数ＳＡunlockを０に設定する。
【０１２４】
次に、ステツプＳＰ４３に進み、変数ＳＡlockが３に等しいか否かを判定する。ステツプＳＰ４２でインクリメントした変数ＳＡlockが３に等しくないと判定された場合、ステツプＳＰ４１に戻り、それ以降の処理を繰り返し実行する。ステツプＳＰ４３において、変数ＳＡlockが３に等しいと判定された場合、すなわち、正常なＩＤを有するセクタが３回連続して再生されたとき、ステツプＳＰ４４に進み、フラグＩＥＣＯＫをＨに設定する。ステツプＳＰ４５においては、さらに次のＩＥＤチエツクが連続して正常である回数を検出するために、変数ＳＡlockを２に設定し、ステツプＳＰ４１に戻り、それ以降の処理を繰り返し実行する。
【０１２５】
ステツプＳＰ４１において、ＩＥＤが正常でないと判定された場合、ステツプＳＰ４６に進み、変数ＳＡunlockを１だけインクリメントするとともに、変数ＳＡlockを０に設定する。そして、ステツプＳＰ４７において、変数ＳＡunlockが３に等しいか否かを判定し、等しくない場合においては、ステツプＳＰ４１に戻り、それ以降の処理を繰り返し実行する。
【０１２６】
ステツプＳＰ４７において、変数ＳＡunlockが３に等しいと判定された場合、すなわち、ＩＥＤチエツクが正常でないセクタが３回連続して検出されたとき、ステツプＳＰ４８に進み、フラグＩＥＣＯＫをＬに設定する。次に、ステツプＳＰ４９において、次のＩＥＤチエツクが正常でない場合に、その連続の回数が３回であることを連続して検出することができるようにするために、変数ＳＡunlockを２に設定し、ステツプＳＰ４１に戻り、それ以降の処理を繰り返し実行する。
【０１２７】
以上のようにして、ＳＢＣＤ回路１３４は、ＩＥＤチエツクが連続して３回以上正常である場合においては、フラグＩＥＣＯＫをＨに設定し、３回以上連続して正常でない場合においては、フラグＩＥＣＯＫをＬに設定する。
【０１２８】
ＳＢＣＤ回路１３４は、さらに図３９に示す処理により、ＩＤ（アドレス）の連続性を判定する。すなわち、１つのＥＣＣブロツク内の各セクタのＩＤは、順次１ずつインクリメントするように規定されている。そこで、この連続性を次のようにして判定する。
【０１２９】
最初に、ステツプＳＰ６１において、ＩＤ（セクタアドレス）が検出されたか否かを判定する。ＩＤが検出された場合、ステツプＳＰ６２に進み、そのＩＤを次のＩＤと比較することができるように記憶する。そして、ステツプＳＰ６３においては、今回検出したＩＤが、前回検出し、ステツプＳＰ６２において記憶したＩＤより１だけ大きいか否かを判定する。今回のＩＤが前回のＩＤより１だけ大きい場合には、ステツプＳＰ６４に進み、正しいＩＤが連続して検出されたことを示す変数ＮS を１だけインクリメントする。また、ＩＤが検出されなかつたり、連続していない回数を表す変数ＮNSを０に設定する。
【０１３０】
そして、ステツプＳＰ６５において、変数ＮS が３と等しいか否かを判定し、等しくなければ（３回連続して１ずつインクリメントしたＩＤが検出されていなければ）、ステツプＳＰ６１に戻り、それ以降の処理を繰り返し実行する。変数ＮS が３に等しいと判定された場合、ステツプＳＰ６６に進み、ＩＤが連続して正しい状態であることを表すフラグＡＳをＨに設定する。そして、ステツプＳＰ６７において、次のＩＤを検出したとき、再び連続して３回正しいＩＤが検出されたことを検出することができるように、変数ＮS を２に設定し、ステツプＳＰ６１に戻り、それ以降の処理を繰り返し実行する。
【０１３１】
ステツプＳＰ６１において、ＩＤが検出されなかつたり、ステツプＳＰ６３において、今回検出したＩＤが前回検出したＩＤより１だけ大きい値になつていないと判定された場合（不連続であると判定された場合）、ステツプＳＰ６８に進み、フラグＳＡＬＫがＨであるか否かを判定する。このフラグＳＡＬＫは、図２６を参照して後述するが、ＩＥＤチエツクが３回以上連続して正常であり、かつ、ＩＤの連続性が３回以上保持されているとき、Ｈに設定されている。
【０１３２】
ステツプＳＰ６８において、フラグＳＡＬＫがＨに設定されていると判定された場合、ステツプＳＰ６９に進み、ＩＤを補間する処理を実行する。すなわち、いま、ＩＤが検出されなかつたか、あるいは、ＩＤが連続していなかつた場合であるので、前回のＩＤに１を加算したＩＤを生成し、これを検出されたＩＤに代えて使用するようにする。フラグＳＡＬＫがＬに設定されている場合においては、このような補間処理は行われず、ステツプＳＰ６９の処理はスキツプされる。
【０１３３】
次に、ステツプＳＰ７０において、変数ＮNSを１だけインクリメントするとともに、変数ＮS を０に設定する。そして、ステツプＳＰ７１において、変数ＮNSが３と等しいか否かが判定され、等しくないと判定された場合においては、ステツプＳＰ６１に戻り、それ以降の処理を繰り返し実行する。これに対して、ＮNSが３に等しいと判定された場合、ステツプＳＰ７２に進み、フラグＡＳをＬに設定する。そして、ステツプＳＰ７３において、次のＩＤが検出されなかつた場合、連続して３回検出されなかつたことを続けて検出することができるようにするために、変数ＮNSを２に設定し、ステツプＳＰ６１に戻り、それ以降の処理を繰り返し実行する。
【０１３４】
以上のようにして、ＳＢＣＤ回路１３４は、ＩＤの連続性が確保されているとき、フラグＡＳをＨに設定し、確保されていないとき、Ｌに設定する。
【０１３５】
ＳＢＣＤ回路１３４は、以上のようにして生成した２つのフラグＩＥＣＯＫとＡＳを用いて、フラグＳＡＬＫを生成する。
【０１３６】
すなわち、図４０のステツプＳＰ８１においては、フラグＩＥＣＯＫがＨであるか否かが判定され、Ｈであると判定された場合、ステツプＳＰ８２に進み、フラグＡＳがＨであるか否かが判定される。ステツプＳＰ８２において、フラグＡＳがＨであると判定された場合、ステツプＳＰ８３に進み、フラグＡＳＬＫをＨに設定する。
【０１３７】
これに対して、ステツプＳＰ８１において、フラグＩＥＣＯＫがＬであると判定された場合、あるいは、ステツプＳＰ８２において、フラグＡＳがＬであると判定された場合、ステツプＳＰ８４に進み、フラグＳＡＬＫをＬに設定する。
【０１３８】
以上のようにして、ＳＢＣＤ回路３４においては、ＩＥＣが３回以上連続して正常であり、かつ、ＩＤが連続して３回以上１ずつインクリメントしている場合には、フラグＳＡＬＫがＨに設定され、ＩＥＣが連続して３回以上正常でなかつたり、あるいはＩＤが連続して３回以上不連続である場合には、フラグＳＡＬＫがＬに設定される。
【０１３９】
ホストＣＰＵ１４０は、ＳＡＬＫの状態と共に、先に述べたＩＤデータを参照して、レーザビームが現在照射されている位置（光デイスク２上のアクセス位置）を検出する。
【０１４０】
なお、ＰＩ１訂正の結果を図３８のＳＡlockまたはＳＡunlockの条件に加えることも可能である。さらに、ＳＡlockまたはＳＡunlockの回数は、前述のように３回と設定されているが、ホストＣＰＵ１４０により異なる値に設定することも可能である。
【０１４１】
ＳＡＬＫの状態が、ＳＡＬＫ＝Ｌの状態（このとき、ＳＡＬＫ＝Ｈとなる）で、ＳＹＬＫ＝Ｌ（このときＳＹＵＬ＝Ｈとなる）となると、ＲＡＭ３７に対するＥＦＭ＋復調回路３１からのＥＦＭ＋復調データの書き込みとＥＣＣの制御が、いずれもリセツトされる。その後、ｕｎｌｏｃｋ状態が解除され（ＳＡＵＬ＝Ｌとされ）、ＳＹＬＫ＝Ｈとなると、ＲＡＭ１３７に対してＥＦＭ＋復調データの書き込みが再開される。
【０１４２】
なお、ｕｎｌｏｃｋは、ホストＣＰＵ１４０により強制的に実行することも可能である。例えば、トラツク間のジヤンプ実行後にホストＣＰＵ１４０によりｕｎｌｏｃｋ状態にすることで、ＥＣＣ制御をリセツトすることもできる。
【０１４３】
また、ｕｎｌｏｃｋ状態の解除は、ホストＣＰＵ１４０により実行するか、ホストＣＰＵ１４０の介入なしに自動的に実行するかの何れかを選択することができる。
【０１４４】
ＳＹＬＫがＨの状態（ロツク状態）であり、さらに、セクタ情報のビツト６が１の状態（セクタの先頭）である場合、ＳＢＣＤ回路１３４はＳＹＬＫ＝Ｌとなるまで（ロツクがはずれるまで）、図３３に示すように、ｂｌｏｃｋ−ｔｏｐをＨの状態とする。ｂｌｏｃｋ−ｔｏｐ＝Ｌである場合は、ＳＣＳＹとｍａｉｎ−ＦＭＳＹが共にＨの状態の場合（セクタの先頭）になつたとき、ＥＦＭ＋Ｗ  ｆｒａｍｅの値は、１２の次には０に設定される。すなわち、この場合、ＥＦＭ＋Ｗ  ｆｒａｍｅの値は各メインフレーム毎に、０〜１２の値を繰り返す。
【０１４５】
これに対して、ｂｌｏｃｋ−ｔｏｐ＝Ｈであれば、図３４に示すように、ＥＦＭ＋Ｗ  Ｆｒａｍｅの値は、その値が１３以上となつた場合でも引き続きインクリメントされる。その結果、図２８に示すように各ＥＣＣブロツクの各メインフレームのデータがＲＡＭ１３７の異なるアドレスに順次格納されることになる。
【０１４６】
以下同様にして、ＥＦＭ＋復調データのＲＡＭ１３７への書き込みが行われると共に、ＰＩ１訂正が実行される。そして、１ＥＣＣブロツクのデータ（２０８行のデータ）に対するＰＩ１訂正が終了すると、次に、ＰＯ列方向のＥＣＣ処理（ＰＯ訂正）が実行される。
【０１４７】
なお、ＰＯ列方向にデータを読み出す場合は、ＰＯ行のインターリーブ（図２３）を解除する必要がある。従つて、例えば、図２８に示す第Ｎバイト目の列を読み出す場合、先ず、インターリーブされたＰＯ行をスキツプしながら、図の上から下方向に第Ｎバイト目の列のデータを読み出した後、再度、同じ第Ｎバイト目の列のＰＯ行の符号だけを読み出し、ＥＣＣコア回路１３８に供給する。
【０１４８】
そして、ＥＣＣコア回路１３８が、ＰＯ訂正を終了すると（図２８の右端のＰＩ列（１０列）を除く１７２列全ての処理が終了すると）、次に、ＰＩ２訂正（ＰＩ訂正の２回目）を実行する。なお、ＰＩ行方向のＥＣＣ処理を２回実行するのは、エラーの訂正能力を向上させるためである。
【０１４９】
また、ＰＯ訂正では、ＰＩ１訂正の結果に基づいて生成されたエラーフラグ（ＰＩ１フラグ）に応じてイレージヤ訂正が実行される。さらに、ＰＩ２訂正においても、ＰＯ訂正の結果に応じて生成されたエラーフラグ（ＰＯフラグ）を利用してイレージヤ訂正が実行される。このようなイレージヤ訂正を行うのは、前述の場合と同様に、エラーの訂正能力を向上させるためである。
【０１５０】
ＰＩ２訂正の処理が終了したＰＩ系列のデータは、ＲＡＭ１３７からＯＣＴＬ回路１３９に転送され、メインデータに対するデスクランブル処理が、図３６に示したセクタ情報のビツト３〜ビツト０を用いて、各セクタ単位で実行される。また、このとき、ＯＣＴＬ回路１３９でＥＤＣに関する演算が行われる。そして、その演算結果や、メインデータに付加されているエラーフラグの有無により、対象となるセクタにエラーが存在するか否かが判定される。ホストＣＰＵ１４０は、その判定結果に基づいて、光デイスク２から再度データを読み出すか否かを判定する。その結果、光デイスク２から再度データを読み出すと判定した場合は、光デイスク２に対するアクセスが再度実行される。また、データの読み出しを再度行わないと判定した場合は、エラーを含むセクタのデータが多重化データ分離回路１３（図１）に出力される。
【０１５１】
ＥＣＣコア回路１３８は、汎用のリードソロモン符号エラー訂正用ＬＳＩにより構成され、符号長、パリテイ数、および訂正モード（通常訂正のみ、または、通常訂正およびイレージヤ訂正の２つのモード）などをプログラムすることが可能とされている。また、ＥＣＣコア回路１３８は、多符号連続符号化されたデータ（符号長が異なる複数の符号系列）もリアルタイムでデコードすることが可能である。なお、リードソロモン符号エラー訂正用ＬＳＩとしては、例えば、ＳＯＮＹ（商標）のＣＸＤ３０７−１１１Ｇがあり、このＬＳＩを使用して形成されたＡＳＩＣ（Application Specialized Integrated Circuit）をＥＣＣコアと呼ぶ。なお、図２５に示すＥＣＣコア回路１３８には、このＥＣＣコアが使用されている。
【０１５２】
図４１は、エラー訂正動作の実行時における信号のタイミングを示している。この図において、ＥＳＴＴ（図４１（Ａ））は、符号（ＰＩ行またはＰＯ行）の先頭を示すコントロール信号であり、また、ＥＣＤＥ（図４１（Ｂ））は、符号（ＰＩ行またはＰＯ行）の最後を示すコントロール信号である。ＥＣＹＥ（図４１（Ｃ））は、符号（ＰＩ行またはＰＯ行）サイクルの最後を示すコントロール信号である。これらはいずれも、ＲＡＭコントローラ１３５からＥＣＣ制御回路１３６を介してＥＣＣコア回路１３８に供給される。ＥＣＣコア回路１３８は、ＲＡＭ１３７から供給されるデータを、これらのコントロール信号が識別する。
【０１５３】
図４１に示すように、ＰＩ符号は、ＥＳＴＴからＥＤＣＥまでの間に、１８２個のＥＣＣＫで転送される。ＰＯ符号も、ＥＳＴＴからＥＣＤＥまでの間に、２０８個のＥＣＣＫで転送される。
【０１５４】
なお、ＰＩ行の符号とＰＯ列の符号の符号長が異なる場合、符号サイクル長をＰＩ行の符号またはＰＯ列の符号のうち、符号長の長い方（この実施例の場合、ＰＯ列の符号の２０８）に合わせることにより、訂正すべきデータ（ＥＤＴ）およびイレージヤ訂正のためのエラーフラグ（ＰＩ１フラグ、ＰＩ２フラグ、ＰＯフラグ）を、図４１に示すように、いずれの符号系列であつたとしても、同様のタイミングで入力することができる。また、符号長およびパリテイ数等のパラメータとしては任意の値を設定可能である。すなわち、設定を変更する際は、ＥＳＴＴ＝Ｈとなるタイミングで、ＥＣＣコア回路１３８に新たな設定データを供給すると、ＥＣＣコア回路１３８は供給されたデータに基づき、内部設定を自動的に変更する。
【０１５５】
データの訂正結果は、次式で示されるように、４７７ＥＣＣＫのサイクルで出力される。
0003672139.tif 000013
【０１５６】
ここで、ＮＣＹＣはＰＩ行の符号またはＰＯ列の符号のうちで長い方の符号長を示し、また、ＰＣＹＣは長い方のパリテイ数を示している。図４１に示すように、ＯＳＴＴ（図４１（Ｄ））は、ＥＳＴＴ（図４１（Ａ））のタイミングから、データ出力サイクルの時間だけ遅延して（訂正結果出力のタイミングで）ＥＣＣコア回路１３８からＥＣＣ制御回路１３６に出力されるものであり、この実施例では、ＯＳＴＴはＥＳＴＴに対して４７７ＥＣＣＫだけ遅延されている。
【０１５７】
エラー検出処理が実行され、検出されたエラーが訂正可能であれば、ＥＣＣコア回路１３８はＥＣＣ制御回路１３６に対して、ＯＳＴＴ（図４２（Ｅ））＝ＨのタイミングでＯ．ＣＯＤＥＥＲＲ（図４２（Ｇ））＝Ｌを出力し、その後、ＥＣＯＲ（図４２（Ｆ））＝Ｈの位置に、エラーパターンを表す８ビツトのデータ（誤つたデータと排他的論理和をとつたとき正しいデータが得られるデータ）ＥＣＤ〔７：０〕（図４２（Ｈ））と、エラーポジシヨン（エラーのある位置（アドレス）を示す８ビツトのデータ）ＥＣＡ〔７：０〕（図４２（Ｉ））が出力される。
【０１５８】
なお、イレージヤ訂正モードにおいては、エラーフラグＥＦＬＧ（図４２（Ｃ））を入力したポジシヨンに対応するデータのエラーポジシヨンＥＣＡ〔７：０〕（図４２（Ｉ））データは必ず出力されるが、その位置のデータが正しい場合には、エラーパターンはＥＣＤ〔７：０〕＝００（Ｈ）となる。
【０１５９】
また、エラー訂正が不可能な場合には、そのタイミングチヤートは図示していないが、ＯＳＴＴ（図４２（Ｅ））がＨの状態になると同時に、Ｏ．ＣＯＤＥＥＲＲ（図４２（Ｇ））＝Ｈとなり、その後、ＥＣＯＲ（図４２（Ｆ））はＨの状態にはならない。また、Ｏ．ＣＯＤＥＥＲＲ（図４２（Ｇ））の出力は、ＯＳＴＴ（図４２（Ｅ））が再度Ｈの状態になるまでラツチされ、ＥＣＯＲ（図４２（Ｆ））、ＥＣＤ〔７：０〕（図４２（Ｈ））およびＥＣＡ〔７：０〕（図４２（Ｉ））は、ＯＳＴＴ（図４２（Ｅ））が次にＨの状態になるまで出力され続ける。
【０１６０】
図４３〜図４５は、ＥＣＣ処理実行時における制御のタイミング図を示している。ここで、図４３（Ｂ）、図４４（Ｂ）及び図４５（Ｂ）に示すＰＩ１−Ｒ、ＰＯ−Ｒ、または、ＰＩ２−Ｒは、それぞれ、ＰＩ１（ＰＩ訂正の１回目）、ＰＯ（ＰＯ訂正）、またはＰＩ２（ＰＩ訂正の２回目）の各系列の、エラーが訂正されるデータＥＤＴ〔７：０〕とＥＦＬＧ（図４２（Ｃ））がＲＡＭ１３７からＥＣＣ制御回路１３６を介してＥＣＣコア回路１３８に転送されるタイミングを示している。
【０１６１】
図４３（Ａ）、図４４（Ａ）及び図４５（Ａ）に示すように、ＥＦＭ＋復調回路１３１からＲＡＭ１３７に対して１ＰＩ行のデータＥＦＭ＋Ｗ（１８２バイトのデータ）を書き込むために、ＭＷＲＱ信号が１８２回供給され、これによりＲＡＭ１３７に１ＰＩ行分のＥＦＭ＋復調データが書き込まれる。そして、この１ＰＩ行分のデータの書き込みが行われる間に、既にＲＡＭ１３７に書き込みが完了しているＥＣＣブロツクのデータが読み出され、ＥＣＣ制御回路１３６を介してＥＣＣコア回路１３８に転送される。すなわち、１ＰＩ行分のデータをＲＡＭ１３７にゆつくり書き込む間に、既に書き込みが完了している他のＰＩ行またはＰＯ列のデータの読み出しが、３回迅速に行われる。さらに、セクタの先頭のＰＩ行のデータを転送する場合においては、サブコードデータ（ＩＤとＩＥＤ）の読み出しも行われる。これらの書き込みと読み出しは、一方が行われているとき、他方は中止されている。
【０１６２】
例えば、ＥＣＣブロツクのＰＩ１訂正を行う場合においては、１ＰＩ行分のデータの書き込みが行われる期間に、１ＰＩ行分のデータの読み出しが行われる。すなわち、ＲＡＭ１３７から１ＰＩ行分のデータが読み出され、ＥＣＣ制御回路１３６を介してＥＣＣコア回路１３８に転送される。なお、図４３（Ｂ）、図４４（Ｂ）及び図４５（Ｂ）においては、このＰＩ１訂正のための読み出しデータＰＩ１−Ｒの読み出しに、２０８個のＥＣＣＫを用いるようにしているが、このＥＣＣＫの数は、最長のデータ長であるＰＯ列の長さに合わせてあるためであり、ＰＩ行のデータを転送する場合には、実質的には、このうちの１８２個のＥＣＣＫのみが実際のデータ転送に利用され、残りのＥＣＣＫは、データ転送には実際には用いられない。
【０１６３】
図４６はＥＣＣ訂正処理の際のＲＡＭコントローラ１３５によるＲＡＭ１３７に対するデータの書き込み及び読み出し処理手順を示し、ＲＡＭコントローラ１３５はステツプＳＰ１０１においてＲＡＭ１３７から１ＰＩ行分のデータをＥＣＣコア回路１３８に転送する。この実施例の場合、ＥＣＣブロツクごとにＰＩ符号（パリテイ）及びＰＯ符号（パリテイ）が付加されていることにより、第１のＥＣＣブロツク分の第１回目のＰＩ系列の訂正及び書き戻しが終了するまでは同一ＥＣＣブロツクのＰＯ系列のデータＰＯ−ＲまたはＰＩ２系列の読み出しデータＰＩ２−Ｒを転送することはできない。そこで、この場合においては、次の２×２０８ＥＣＣＫのタイミングにおいては、特にデータは転送されない。そして、その次にサブコードデータ（ＳＵＢ）が存在する場合においては、これが転送される。
【０１６４】
従つてＲＡＭコントローラ１３５は、図４６のステツプＳＰ１０１及びＳＰ１０２において第１のＥＣＣブロツクの１ＰＩ行分のデータ及び必要に応じてＳＵＢコードデータの転送を順次行いながら、ステツプＳＰ１０３において第１のＥＣＣブロツクの２０８行分のＰＩ１−Ｒデータが転送されたか否かを判断し、肯定結果が得られるまで当該ステツプＳＰ１０１、ＳＰ１０２及びＳＰ１０３の処理を繰り返す。ステツプＳＰ１０３において肯定結果が得られると、このことは第１のＥＣＣブロツクの２０８ＰＩ行分のデータ転送がすべて完了したことを表しており、このときＲＡＭコントローラ１３５はステツプＳＰ１０４に移つて第１のＥＣＣブロツクに続く第２のＥＣＣブロツクのＰＩ１−Ｒの転送及び第１のＥＣＣブロツクのＰＯ−Ｒの転送を次の１８２ＭＷＲＱの期間において開始する。
【０１６５】
すなわち次の１８２ＭＷＲＱ期間においては、最初に第１のＥＣＣブロツクに続く第２のＥＣＣブロツクのＰＩ１−Ｒが転送され、次に第１のＥＣＣブロツクのＰＯ−Ｒが２回転送される（２列分のＰＯデータが転送される）。
【０１６６】
このような動作が各１８２ＭＷＲＱの期間において行われ、第１のＥＣＣブロツクの合計１７２列のＰＯデータが転送されたとき、ＲＡＭコントローラ１３５は、図４６のステツプＳＰ１０５において肯定結果を得、続くステツプＳＰ１０６において図４５に示すように第１のＥＣＣブロツクのＰＩ２系列のデータＰＩ２−Ｒを転送する。このデータＰＩ２−Ｒは、図４４（Ｂ）に示す第１のＥＣＣブロツクのデータＰＯ−Ｒの転送タイミングと同一のタイミングで転送される。このタイミングにおけるデータＰＩ１−Ｒは、次のＥＣＣブロツク（第２のＥＣＣブロツク）のデータのものとなる。このようにして第１のＥＣＣブロツクのＰＩ２−Ｒが２０８ＰＩ行分転送され、第１のＥＣＣブロツクのＰＩ１−Ｒ、ＰＯ−Ｒ及びＰＩ２−Ｒの処理が終了すると、図４６のステツプＳＰ１０７において肯定結果が得られ、このときＲＡＭコントローラ１３５は上述のステツプＳＰ１０１に戻つて続くＥＣＣブロツクに対する処理を続ける。
【０１６７】
なお、ＥＣＣＫ（図４２（Ａ））は、データ転送期間においてのみ、ＲＡＭコントローラ１３５からＥＣＣコア回路１３８に出力される。また、上述したように、転送したデータの訂正結果は、その入力から、４７７クロツク（ＥＣＣＫ）後に出力されることになる。従つて、ある系列のデータにエラーが含まれているか否かの判定の結果（図４３（Ｃ）、図４４（Ｃ）、図４５（Ｃ））は、その系列から２つ後の系列のデータが転送される際に出力されることになる（図４３（Ｂ）、図４４（Ｂ）、図４５（Ｂ））。この出力は、後述するＥＲＲ  ＦＩＦＯ回路１３６Ｂ（図４７）に格納される。
【０１６８】
以上のようにして、ＲＡＭ１３７からＥＣＣ制御回路１３６にエラー訂正すべきデータが入力されると、ＥＣＣ制御回路１３６は、その例えば１ＰＩ行分のデータのＰＩ１訂正を行い、４７７ＥＣＣＫ後に訂正結果を出力する（図４３（Ｃ）、図４４（Ｃ）、図４５（Ｃ））。この訂正結果は、後述するＥＣＣ制御回路１３６のバツフアとしてのＥＲＲ  ＦＩＦＯ１３６Ｂに転送され、一時的に格納される。そして、このデータは、さらにＥＲＲ  ＦＩＦＯ１３６Ｂから読み出され、エラー訂正が完了したデータとして、再びＲＡＭ１３７に転送され、図４４（Ｄ）、図４５（Ｄ）に示すように、データＰＩ１−Ｗとして書き込まれる。同様に、ＰＯ訂正あるいはＰＩ２訂正が完了したデータは、それぞれデータＰＯ−ＷまたはＰＩ２−Ｗとして、ＲＡＭ１３７に書き込まれる。
【０１６９】
このように、ＲＡＭ１３７に書き込まれたエラー訂正の完了したデータは、さらに図４３（Ｅ）、図４４（Ｅ）及び図４５（Ｅ）に示すように、１８２ＳＤＣＫの周期で各ＰＩ行毎に読み出され、ＯＣＴＬ回路１３９から出力される。
【０１７０】
図２５との対応部分に同一符号を付して示す図４７は、エラー訂正処理が実行される際の信号の流れを示すブロツク図であり、ＥＣＣ制御回路１３６は、ＥＲＲ  ＣＯＵＮＴ１３６Ａ、ＥＲＲ  ＦＩＦＯ１３６Ｂ、ＦＬＡＧ  ＲＡＭ１３６Ｃ、およびＥＸ−ＯＲ（排他的論理和）回路１３６Ｄにより構成されている。
【０１７１】
ＥＦＭ＋復調回路１３１から出力された復調データは、ＲＡＭコントローラ１３５の制御の下、ＲＡＭ１３７に書き込まれる。各セクタの先頭に記憶されているＳＵＢデータ（ＩＤとＩＥＤ）は、ＲＡＭ１３７から読み出され、ＳＢＣＤ回路１３４に転送される。ＳＢＣＤ回路１３４は、図３６に示すようなセクタ情報ＳＩを生成する。このセクタ情報ＳＩは、ＳＢＣＤ回路１３４から転送され、ＲＡＭ１３７に書き込まれる。
【０１７２】
ＲＡＭコントローラ１３５は、ＲＡＭ１３７（記憶手段）に書き込まれている１ＰＩ行分のデータを８ビツト毎のエラー訂正データＥＤＴとして、ＥＣＣ制御回路１３６（エラー訂正手段）を介してＥＣＣコア回路１３８に供給する（図４７においては、便宜上、ＥＤＴデータがＥＣＣコア回路１３８に直接供給されるように示されている）。ＥＣＣコア回路１３８は、１ＰＩ行分のデータが供給されたとき、ＰＩ符号を用いて、８ビツトのエラー訂正データＥＣＤ（図４２（Ｈ））と、８ビツトのエラー訂正アドレスＥＣＡ（図４２（Ｉ））を生成する。このエラー訂正データＥＣＤとエラー訂正アドレスＥＣＡは、ＥＣＣコア回路１３８からＥＣＣ制御回路１３６のＥＲＲ  ＦＩＦＯ（First In First Out) １３６Ｂに転送され書き込まれる。
【０１７３】
次に、実際にエラー訂正を行うためにＲＡＭコントローラ１３５は、ＲＡＭ１３７から、そのＰＩ行のデータＥＤＴを読み出し、ＥＸ−ＯＲ回路１３６Ｄに供給する。このＥＸ−ＯＲ回路１３６Ｄには、ＥＲＲ  ＦＩＦＯ１３６Ｂからエラー訂正データＥＣＤとエラー訂正アドレスＥＣＡが供給される。ＥＸ−ＯＲ回路１３６Ｄは、エラー訂正アドレスＥＣＡで指定されるビツトにおいて、エラー訂正データＥＣＤとＲＡＭコントローラ１３５より読み出されたデータＥＤＴとの排他的論理和を演算することによりエラー訂正を行う。このエラー訂正の行われたデータは、ＥＸ−ＯＲ回路１３６Ｄから、ＲＡＭコントローラ１３５を介してＲＡＭ１３７に、再び書き戻される。
【０１７４】
また、ＥＣＣコア回路１３８は、ＥＣＤとＥＣＡから、図４８に示すような８ビツトデータにより構成されるエラー訂正結果ＥＲを生成し、ＥＣＣ制御回路１３６のＥＲＲ  ＣＯＵＮＴ１３６Ａに供給し記憶させる。そして、この１バイトのエラー訂正結果ＥＲは、ＲＡＭコントローラ１３５を介して、ＲＡＭ１３７に、そのＰＩ行に対応して図２８に示すように書き込まれる。
【０１７５】
なお、図４８に示すエラー訂正結果ＥＲの８ビツトデータの各ビツトには、以下のような情報が格納されている。
ビツト７：訂正不能（０：訂正可能／１：訂正不能）（その系列のエラー訂正が不可能である場合に１とされる）
ビツト６：ＰＯ（０：ＰＩ／１：ＰＯ）（その系列がＰＩまたはＰＯのいずれであるかを判別するための情報ビツト）
ビツト５：ＰＩ２（０：ＰＩ１／１：ＰＩ２）（その系列がＰＩ１、またはＰＩ２のいずれであるかを判別するための情報ビツト）
ビツト４：訂正数（エラー訂正数の第５ビツト（ＭＳＢ）の値）
ビツト３：訂正数（４ビツトのエラー訂正数の第４ビツトの値）
ビツト２：訂正数（４ビツトのエラー訂正数の第３ビツトの値）
ビツト１：訂正数（４ビツトのエラー訂正数の第２ビツトの値）
ビツト０：訂正数（４ビツトのエラー訂正数の第１ビツトの値）
【０１７６】
データがＰＩ１訂正により訂正不能であつたか否かの判定結果を示すエラーフラグ（ＰＩ１フラグ）（エラー訂正結果ＥＲのビツト７）は、エラー訂正結果ＥＲの一部としてＥＲＲ  ＣＯＵＮＴ１３６Ａに格納される他、ＦＬＡＧ  ＲＡＭ１３６Ｃ（フラグ記憶手段）にも格納される。
以上のようなＰＩ１訂正が、図２８に示す２０８個のＰＩ行について行われる。
【０１７７】
次に、ＲＡＭコントローラ１３５は、ＲＡＭ１３７から最初のＰＯ列の２０８バイトのデータを読み出し、ＥＣＣ制御回路１３６を介して、ＥＤＴとして、ＥＣＣコア回路１３８に供給する。このＥＣＣコア回路１３８にはまた、ＦＬＡＧＲＡＭ１３６Ｃに書き込まれているＰＩ１フラグが読み出され、供給される。ＥＣＣコア回路１３８は、パターンＰＯとＰＩ１フラグを利用して、通常の訂正またはイレージヤ訂正のためのＥＣＤとＥＣＡを生成する。このＥＣＤとＥＣＡは、ＥＣＣコア回路１３８からＥＣＣ制御回路１３６のＥＲＲ  ＦＩＦＯ１３６Ｂに供給され、記憶される。また、ＥＣＣコア回路１３８が、ＥＣＤとＥＣＡに基づき生成した、そのＰＯ列のエラー訂正結果ＥＲが、ＥＲＲ  ＣＯＵＮＴ１３６Ａに転送され、記憶される。そして、そのうちのエラー訂正結果ＥＲのビツト７に対応するＰＯフラグは、ＦＬＡＧ  ＲＡＭ１３６Ｃにも書き込まれる。
【０１７８】
ＲＡＭ１３７から読み出された、そのＰＯ列のデータＥＤＴは、ＥＸ−ＯＲ回路１３６Ｄに供給される。ＥＸ−ＯＲ回路１３６Ｄにはまた、ＥＲＲ  ＦＩＦＯ１３６ＢからＥＣＤとＥＣＡが供給される。ＥＸ−ＯＲ回路１３６Ｄは、ＥＣＡにより指定されるアドレスのビツトに対応して、ＥＣＤとＥＤＴとの排他的論理和を演算し、エラー訂正を行う。エラー訂正されたデータは、ＲＡＭ１３７に書き戻される。
【０１７９】
また、そのＰＯ列のエラー訂正結果ＥＲは、ＥＲＲ  ＣＯＵＮＴ１３６Ａから読み出され、ＲＡＭ１３７に書き込まれる。ＰＯ列のエラー訂正結果ＥＲは、図２８に示すように、上から順番に、１７２行のＰＩ行に対応する位置に順番に書き込まれる。
以上のＰＯ訂正が、１７２列のＰＯ列について行われる。
【０１８０】
次に、ＰＩ２訂正を行う場合においては、ＰＩ１訂正とＰＯ訂正が行われた後、最初の１ＰＩ行分のデータが、ＲＡＭ１３７からＥＤＴとして読み出され、ＥＣＣコア回路１３８に供給される。ＥＣＣコア回路１３８にはまた、ＦＬＡＧＲＡＭ１３６Ｃに書き込まれたＰＯフラグが読み出され供給される。ＥＣＣコア回路１３８は、このＰＯフラグとパリテイＰＩを用いて、ＥＣＤとＥＣＡとを生成し、これをＥＣＣ制御回路１３６をＥＲＲ  ＦＩＦＯ１３６Ｂに供給する。
【０１８１】
このＥＲＲ  ＦＩＦＯ１３６Ｂに書き込まれたＥＣＤとＥＣＡＨは、ＥＸ−ＯＲ回路１３６Ｄに供給され、ＲＡＭ１３７から読み出されたＰＩ行のデータと排他的論理和演算が行われ、エラー訂正が実行される。エラー訂正が完了したデータは、ＥＸ−ＯＲ回路１３６Ｄから、ＲＡＭコントローラ１３５を介してＲＡＭ１３７に書き戻される。
【０１８２】
ＥＣＣコア回路１３８はまた、ＥＣＤとＥＣＡから、エラー訂正結果ＥＲを生成し、ＥＣＣ制御回路１３６のＥＲＲ  ＣＯＵＮＴ１３６Ａに供給し記憶させる。このうちのビツト７に対応するＰＩ２フラグは、ＦＬＡＧ  ＲＡＭ１３６Ｃにも書き込まれる。
【０１８３】
ＥＲＲ  ＣＯＵＮＴ１３６Ａに書き込まれたＰＩ２行のエラー訂正結果ＥＲは、ＥＲＲ  ＣＯＵＮＴ１３６Ａから読み出され、ＲＡＭ１３７に書き込まれる。このＰＩ２行のエラー訂正結果ＥＲは、図２８に示すように、ＥＣＣブロツクの２０８行の各ＰＩ行に対応する位置に書き込まれる。
以上のようなＰＩ２訂正が、２０８行のＰＩ行すべてについて行われる。
【０１８４】
図４９は、ＲＡＭ１３７にアクセスする際のバスアービトレーシヨン（調停）の様子を示すタイミング図である。この図４９において、ＥＦＭＲＥＱ（図４９（Ａ））は、ＥＦＭ＋復調回路１３１がＥＦＭ＋復調データのＲＡＭ１３７への書き込みを要求する際に、ＲＡＭコントローラ１３５に対して出力する信号である。ＯＵＴＲＥＱ（図４９（Ｂ））は、ＯＣＴＬ回路１３９が、ＥＣＣ処理が施されたデータのＲＡＭ１３７からの読み出しを要求する際に、ＲＡＭコントローラ１３５に出力する信号である。また、ＥＣＣＲＥＱ（図４９（Ｃ））は、ＥＣＣ制御回路１３６がＥＣＣコア回路１３８に対してデータを転送し、エラー訂正をさせるためにＲＡＭ１３７にアクセスしたり、エラー訂正が施されたデータを得るためにＲＡＭ１３７にアクセスしたり、または、ＳＢＣＤ回路１３４に対してＳＵＢ転送（ＩＤとＩＥＤのＲＡＭコントローラ１３５に出力される信号である。
【０１８５】
ＲＡＭコントローラ１３５は、これら３つの信号に対して優先順位（Priority Level）を予め設定しており、これらの要求が同時になされた場合には、その優先順位に従つて、ＲＡＭ１３７のアクセス権を認めるＡＣＫ（認可）信号を順次出力する。ＥＦＭＡＣＫ（図４９（Ｄ））、ＯＵＴＡＣＫ（図４９（Ｅ））、ＥＣＣＡＣＫ（図４９（Ｆ））は、それぞれ、ＥＦＭＲＥＱ、ＯＵＴＲＥＱ、または、ＥＣＣＲＥＱに対する認可信号である。この実施例において、前述の優先順位は、ＯＵＴＲＥＱ、ＥＦＭＲＥＱ、ＥＣＣＲＥＱの順とされている。従つて、図４９に示すように、ＲＡＭコントローラ１３５は、この順位に従つて、ＲＥＱ信号に対するＡＣＫ信号を出力している。これらの信号は、システムクロツクとしてのＣ１１Ｍ（図４９（Ｇ））に同期して授受される。
【０１８６】
このように、本実施例において、ＲＡＭ１３７のアクセス権は、所定のサイクル毎にＥＦＭＲＥＱ、ＥＣＣＲＥＱ、ＯＵＴＲＥＱの何れか１つに対応して与えられる。しかし、このサイクルは、ＲＡＭ１３７の構成、種類、または、アクセスのスピードに対応して変更することも可能である。
【０１８７】
図５０は、１ＥＣＣブロツクのデータに対してＰＩ１訂正、ＰＩ２訂正、およびＰＯ訂正を実行する場合に、ＲＡＭ１３７がアクセスされる回数を示している。この図５０に示すように、ＰＩ１訂正、ＰＯ訂正およびＰＩ２訂正を実行した場合に必要となるＲＡＭ１３７のアクセスの回数は、１ＥＣＣブロツクあたり２１４７１６回であり、１メインフレームの平均は１０３３回となる。例えば、ＥＦＭ＋復調データの書き込み動作時におけるＲＡＭ３７のアクセス回数は、１メインフレームあたり１８２回であり、ＥＣＣの実行サイクル長は２０８バイト（２０８メインフレーム）とされているので、３７８５６（＝１８２×２０８）回が１ブロツクあたりに必要なアクセス回数となる。このようにして各動作について必要なアクセス回数を算出し、これらの合計をとつたものが前述の値となる。
【０１８８】
図５１は、ＲＡＭ１３７からＯＣＴＬ回路１３９を介してエラー訂正結果ＥＲのデータを出力するタイミングを示すタイミング図である。この図は、図４３（Ｅ）、図４４（Ｅ）、図４５（Ｅ）の１８２ＳＤＣＫの期間に先行する部分を、時間軸を拡大して示している。この図において、ＳＤＣＫ（図５１（Ａ））はＥＲのデータをストリームデータとして出力する場合のクロツク信号を示す。ＳＩＮＦ（図５１（Ｂ））はセクタ情報ストローブ信号であり、セクタの先頭においてＳＩＮＦ＝Ｈとなると共に、転送されるデータがセクタ情報（ＳＩ）であることを示す。ＥＳＴＢ（図５１（Ｃ））は、エラー訂正結果ストローブ信号であり、ＥＳＴＢ＝Ｈとなることによりエラー訂正結果ＥＲが転送されることを示す。なお、各ＰＩ行においてエラー訂正結果ＥＲは、ＰＩ１訂正、ＰＯ訂正、およびＰＩ２訂正のそれぞれに対して１バイトずつ割り当てられているので、合計で３バイトとられる。これらのデータは図２８に格納されている順序で出力されるので、エラー訂正結果ＥＲのビツト５及び６（図４８）を調べることにより、どの系列の結果（データ）であるのかを判定することができる。また、ＰＯ訂正の結果が出力されないＰＩ行では、ＰＯ訂正の結果を出力するタイミングでＥＳＴＢ＝Ｌとされる。
【０１８９】
ＤＳＴＢ（図５１（Ｄ））は、信号ＳＤ〔７：０〕（図５１（Ｅ））がメインデータであるときにＤＳＴＢ＝Ｈとされるデータストローブ信号である。ＳＩＮＦ、ＥＳＴＢ、またはＤＳＴＢの３つの信号は、ＯＣＴＬ回路１３９により生成される。なお、図５１（Ｅ）に示すように、セクタ情報ＳＩとエラー訂正結果ＥＲは、１８２ＳＤＣＫによりＰＩ行方向のデータを送出する直前に出力される。
【０１９０】
ＯＵＴＦ（補間フラグ）（図５１（Ｆ））は、メインデータに対するエラーフラグであり、図４７のＦＬＡＧ  ＲＡＭ１３６Ｃに格納されているＰＩとＰＯの訂正不能フラグに基づき、エラーのあるメインデータに対して補間フラグで付加されて、出力されることになる。
【０１９１】
ＯＣＴＬ回路１３９は、デコードが終了したセクタのデータが、出力されるべきデータであるか否かを、ＳＢＣＤ回路１３４が生成したセクタ情報のビツト４、５（図３６）より判定する。セクタ情報のビツト４、５は、図３６に示すように、エンドセクタとスタートセクタとをそれぞれ示している。従つて、ＯＣＴＬ回路１３９は、ビツト４＝０かつビツト５＝１であるセクタのデータを、出力が指定された（出力されるべき）セクタのデータとして、出力する。
【０１９２】
また、ＯＣＴＬ回路１３９は、例えば、メインデータのエラーフラグの有無やＥＤＣの結果などが、ホストＣＰＵ１４０により予め設定された条件を満足するか否かも判定し、満足する場合、デコードデータを出力する。もし、設定された出力条件が満たされない場合には、デコードデータの出力を停止し、ホストＣＰＵ１４０に異常を知らせる。
【０１９３】
データの出力条件は、例えば次のように設定される。
（１）出力を指定されたセクタのデータである。
（２）ＥＣＣ結果からエラーが検出されない。
（３）メインデータにエラーフラグが全く付加されていない。
出力条件がこのように設定された場合、これらの条件を全て満足するデータが最終的に出力される。また、以上の条件に拘らず、ホストＣＰＵ１４０により強制的に出力を禁止することができる。
【０１９４】
ＯＣＴＬ回路１３９は、図５２に示すようなセクタ・データの出力手順に従つてメインデータとセクタ情報ＳＩ及びエラー訂正結果ＥＲを順次出力する。
まずＯＣＴＬ回路１３９は、ステツプＳＰ１１１においてＯＣＴＬ回路１３９にてセクタ情報ＳＩ（図３６）のビツト４に格納されたエンドセクタ検出の結果及びビツト５に格納されているスタートセクタ検出の結果を解析して、ビツト４が０で、かつビツト５が１であるセクタ・データを出力されるべきセクタ・データであると判断する。
これにより次のステツプＳＰ１１２において、デコードデータが出力されるべきデータではないと判断された場合はステツプＳＰ１１４に移つてデータの出力を停止する。またデコードデータが出力条件を満たした出力されるべきデータであると判断された場合はステツプＳＰ１１３に進む。
【０１９５】
ＯＣＴＬ回路１３９はステツプＳＰ１１３において、出力データの各ストローブ信号を生成してセクタ情報ＳＩのストローブ信号ＳＩＮＦ（図５１（Ｂ））、エラー訂正結果ＥＲのストローブ信号ＥＳＴＢ（図５１（Ｃ））、メインデータのストローブ信号ＤＳＴＢ（図５１（Ｄ））を順で出力する。この結果、ＯＣＴＬ回路１３９は次のステツプＳＰ１１５でセクタ情報ＳＩ、エラー訂正結果ＥＲ及びメインデータ（Ｄ０、Ｄ１、Ｄ２……）の順でデータ出力し、全てのセクタ・データを出力し終えるとセクタ・データの出力手順を終了する。
【０１９６】
（２−３）第２実施例の動作及び効果
以上の構成において、１８２ＭＷＲＱ期間内にＲＡＭ１３７からＥＣＣコア回路１３８に転送されるデータ（ＰＩ１−Ｒ、ＰＯ−Ｒ及びＰＩ２−Ｒ（図４３、図４４、図４５））は、転送用クロツク（ＥＣＣＫ）に応じてＲＡＭ１３７から読み出される。このとき各データ（ＰＩ１−Ｒ、ＰＯ−Ｒ及びＰＩ２−Ｒ）の転送区間相互の間にそれぞれ所定期間だけ転送用クロツク（ＥＣＣＫ）を停止させることにより、当該停止期間においてはデータ（ＰＩ１−Ｒ、ＰＯ−Ｒ及びＰＩ２−Ｒ）の転送が停止される。すなわち、各データ（ＰＩ１−Ｒ、ＰＯ−Ｒ及びＰＩ２−Ｒ）の間には所定期間だけデータの転送が行われない期間が形成される。
【０１９７】
この期間において、ＲＡＭコントローラ１３５は、ＰＩ１訂正（ＰＩ１−Ｗ）の実行後、ＲＡＭ１３７内の番号０のメインフレームに格納されているセクタアドレス情報（ＩＤ）及びＩＤに対するエラー検出符号（ＩＥＤ）をＳＵＢ（図４３（Ｂ）、図４５（Ｂ））のタイミングで読み出してＳＢＣＤ回路１３４に転送させる。ＳＢＣＤ回路１３４は、セクタアドレス情報ＩＤを検出すると、そのセクタの開始セクタアドレスＢＳＡ及び終了セクタアドレスＥＳＡと、ホストＣＰＵ１４０によつて予め指定されている出力すべき目的セクタのセクタアドレスとを比較する。すなわちそのセクタが目的セクタであつたときは、その目的セクタの開始セクタアドレスＢＳＡであることを示すためにセクタ情報ＳＩのビツト５を”１”に設定し、さらに終了セクタアドレスＥＳＡの検出ビツト４を”０”に設定する。そしてＳＢＣＤ回路１３４は、セクタアドレス情報ＩＤを検出したセクタデータが目的セクタか否かをセクタ情報ＳＩのビツト４及び５に設定した後、そのセクタ情報ＳＩを所定のＰＩ行に対応するようにＲＡＭ１３７内に設けられた僅かな領域内に格納する。
【０１９８】
ここでＲＡＭコントローラ１３５は、ＥＦＭ＋復調データのＲＡＭ１３７への書き込みの際にＥＣＣ回路５０においてデコード処理されたセクタデータをＯＣＴＬ回路１３９に転送する。
ＯＣＴＬ回路１３９は、転送されてくるセクタデータの中にセクタ情報ＳＩを検出すると、セクタ情報ＳＩのビツト４及び５の情報に応じてそのセクタデータが目的セクタであるか否かを判別して次段のリングバツフアメモリ１０に対する出力を制御する。
【０１９９】
このようにＳＢＣＤ回路１３４において、開始のセクタアドレスＢＳＡ及び終了のセクタアドレスＥＳＡを検出して予めホストＣＰＵ１４０によつて設定されている目的セクタであるか否かに関するセクタ情報ＳＩを生成してＲＡＭ１３７内に設けられた僅かな領域内に格納しておくことにより、デコードデータの出力時、ＯＣＴＬ回路１３９においてセクタ情報ＳＩに基づいてデコードデータの出力を制御し得る。
これにより例えば、検出したセクタアドレス情報ＩＤをもとにしてホストＣＰＵ１４０によつて予め設定しておいた目的セクタのセクタアドレスとの比較処理ステツプを省略し得る。
【０２００】
以上の構成によれば、ＥＣＣ復号したＥＣＣブロツクデータのメインデータを次段のリングバツフアメモリ１０に出力する場合、前もつてＳＢＣＤ回路１３４において、ＥＣＣ復号時にセクタデータが目的セクタであるか否かの情報をセクタ情報ＳＩのビツト４及び５に記録しておくようにしたことにより、データ出力時に、再びセクタアドレス情報ＩＤと目的セクタのセクタアドレスとを比較してデータ出力の可否を判定するステツプを省くことができる。
かくしてセクタ単位のＥＣＣデコードを出力する場合、ＥＣＣデコードデータからセクタアドレス情報ＩＤを検出してセクタアドレスとの比較処理をするための回路を新たに設ける必要がなくなり、全体の回路構成を簡略化し得ると共に、セクタデータに対するアクセスを高速かつ確実になし得る。
【０２０１】
さらに上述の実施例によれば、ＲＡＭ１３７内に設けられた僅かな領域内にセクタ情報ＳＩを格納しておくようにしたことにより、特別にセクタ検出用のメモリ領域を設けずとも良く、これによりメモリ容量を節約し得る。
【０２０２】
さらに上述の実施例によれば、ＰＩ系列及びＰＯ系列によつてブロツク化してＥＣＣ処理するようにしたことにより、Ｃ１系列及びＣ２系列によるＥＣＣ符号化のときのように次のＥＣＣブロツクに跨がつた斜め方向のＣ２系列の復号終了を待たずに１ＥＣＣブロツクのデコード終了時に、直ちにリングバツフアメモリ１０へのデータ出力の可否を判断することができる。
【０２０３】
（３）他の実施例
なお上述の実施例においては、Ｃ１／Ｃ２畳み込み・リードソロモン符号化、又は行方向に誤り訂正内符号を付加すると共に列方向に誤り訂正外符号を付加して符号化したデータを復号した場合について述べたが、本発明はこれに限らず、広く一般にインタリーブ又はクロス・インタリーブにより誤り訂正符号が付加された符号化データの復号に適用し得る。
また上述の実施例においては、符号化データを誤り訂正符号とした場合について述べたが、本発明はこれに限らず、広く一般に符号化データを復号するのに用いることができる。
【０２０４】
さらに上述の実施例においては、データ再生装置４０によつて光デイスク２に記録された符号化データを復号して再生する場合について述べたが、本発明はこれに限らず、一般に符号化データを記録した記録媒体から符号化データを読み出し、復号して再生する場合に適用し得る。
【０２０５】
【発明の効果】
上述のように本発明によれば、符号化データの復号処理とは独立して、当該符号化データより得られる復号データの出力可否を当該符号化データの復号処理途中で判定しておくと共に、当該判定の結果を示すデータ情報を符号化データ及び複合化データを記憶するメモリに記憶しておくことにより、データ情報を記憶し得るわずかな領域をメモリに別途確保しておくだけで、符号化データの復号処理終了後に復号データの出力可否の判定処理を行う場合と比べて迅速に復号データの出力を開始することができ、かくしてメモリ容量をほとんど増やすことなく、一段と迅速に復号データの出力を開始することができるデータ復号装置及びデータ復号方法を実現できる。
【０２０６】
また同様に、符号化データの復号処理とは独立して、当該符号化データより得られる復号データの出力可否を当該符号化データの復号処理途中で判定しておくと共に、当該判定の結果を示すデータ情報を符号化データ及び複合化データを記憶するメモリに記憶しておくことにより、データ情報を記憶し得るわずかな領域をメモリに別途確保しておくだけで、符号化データの復号処理終了後に復号データの出力可否の判定処理を行う場合と比べて迅速に復号データの出力を開始することができ、かくしてメモリ容量をほとんど増やすことなく、復号データの再生が一段と迅速になし得るデータ再生装置を実現できる。
【図面の簡単な説明】
【図１】データ再生装置の全体構成を示すブロツク図である。
【図２】図１のＥＣＣ回路の構成を示すブロツク図である。
【図３】図１の復調回路、セクタ検出回路及びＥＣＣ回路の接続の説明に供するブロツク図である。
【図４】図２のＲＡＭに格納するデータの説明に供する略線図である。
【図５】図２のＥＣＣ回路によるECC 結果の説明に供する略線図である。
【図６】図２のＥＣＣ回路によるECC 復号の実行制御の説明に供するタイミングチヤートである。
【図７】図２のＥＣＣ回路によるエラー出力の説明に供するタイミングチヤートである。
【図８】図２のＥＣＣ回路のＲＡＭに対するアクセスの説明に供する表である。
【図９】図２のＥＣＣ回路のＲＡＭに対するアクセスの優先順位の説明に供するタイミングチヤートである。
【図１０】再生データのフレーム構成を示す略線図である。
【図１１】復調データのセクタフオーマツトの説明に供する略線図である。
【図１２】セクタ情報の説明に供する図表である。
【図１３】セクタアドレスの設定の説明に供するタイミングチヤートである。
【図１４】セクタ検出及びデータ出力の説明に供するタイミングチヤートである。
【図１５】セクタ検出及びデータ出力の説明に供するタイミングチヤートである。
【図１６】セクタ検出及びデータ出力の説明に供するタイミングチヤートである。
【図１７】セクタ検出及びデータ出力の説明に供するタイミングチヤートである。
【図１８】セクタ検出及びデータ出力の説明に供するタイミングチヤートである。
【図１９】セクタ検出及びデータ出力の説明に供するタイミングチヤートである。
【図２０】セクタ検出及びデータ出力の説明に供するタイミングチヤートである。
【図２１】第２実施例のセクタデータの構成を示す略線図である。
【図２２】第２実施例のＥＣＣブロツクの構成を示す略線図である。
【図２３】第２実施例のＰＯパリテイ（外符号）のインターリーブを示す略線図である。
【図２４】第２実施例のＥＦＭ変調前の32Ｋバイトブロツクのデータ構成を示す略線図である。
【図２５】第２実施例の復調回路系の構成を示すブロツク図である。
【図２６】第２実施例のＥＦＭ変調号の物理セクタの構成を示す略線図である。
【図２７】第２実施例の各セクタのデータ構成を示す略線図である。
【図２８】第２実施例のＲＡＭへの格納状態の説明に供する略線図である。
【図２９】第２実施例のＥＦＭ復調出力のＲＡＭへの書込み動作を示す信号波形図である。
【図３０】第２実施例のロツク検出処理手順を示すフローチヤートである。
【図３１】第２実施例のＳＣＳＹ信号の生成処理手順を示すフローチヤートである。
【図３２】第２実施例のmain-FMSY 信号の発生処理手順を示すフローチヤートである。
【図３３】第２実施例のblock-top の検出動作の説明に供する信号波形図である。
【図３４】第２実施例のblock-top の検出後の処理動作の説明に供する信号波形図である。
【図３５】第２実施例のＳＵＢの転送動作の説明に供する信号波形図である。
【図３６】第２実施例のセクタ情報の構成を示す略線図である。
【図３７】第２実施例のセクタアドレスの設定の説明に供するタイミングチヤートである。
【図３８】第２実施例のＩＥＤの連続正常検出判定処理手順を示すフローチヤートである。
【図３９】第２実施例のＩＤ（アドレス）の連続判定処理手順を示すフローチヤートである。
【図４０】第２実施例のＳＡＬＫ生成処理手順を示すフローチヤートである。
【図４１】第２実施例のエラー訂正動作の説明に供する信号波形図である。
【図４２】第２実施例のエラー訂正動作の説明に供する信号波形図である。
【図４３】第２実施例のＥＣＣ処理の制御動作の説明に供するタイミングチヤートである。
【図４４】第２実施例のＥＣＣ処理の制御動作の説明に供するタイミングチヤートである。
【図４５】第２実施例のＥＣＣ処理の制御動作の説明に供するタイミングチヤートである。
【図４６】第２実施例のＥＣＣ処理のＲＡＭコントローラの処理手順を示すフローチヤートである。
【図４７】第２実施例のエラー訂正回路系の構成を示すブロツク図である。
【図４８】第２実施例のエラー訂正結果を示す略線図である。
【図４９】第２実施例のバスアービトレーシヨンの説明に供する信号波形図である。
【図５０】第２実施例の１ＥＣＣブロツク訂正におけるＲＡＭのアクセス回数を示す略線図である。
【図５１】第２実施例のエラー訂正結果の出力の説明に供する信号波形図である。
【図５２】第２実施例のセクタデータの出力の説明に供するフローチヤートである。
【図５３】従来のデータ再生装置を示すブロツク図である。
【図５４】図５３のＥＣＣ回路を示すブロツク図である。
【図５５】図５４のＥＣＣ回路によるECC 復号の説明に供する略線図である。
【図５６】図５４のＥＣＣ回路によるECC 復号の説明に供する略線図である。
【図５７】図５４のＥＣＣ回路によるECC 復号の説明に供する略線図である。
【図５８】図５４のＥＣＣ回路によるECC 復号の説明に供する略線図である。
【符号の説明】
１、４０……データ再生装置、２……光デイスク、３……ピツクアツプ、４……システムコントローラ、５、３５……復調回路系、６……復調回路、７……セクタ検出回路、８、５０……ＥＣＣ回路、９……トラツクジヤンプ判定回路、１０……リングバツフアメモリ、１１……リングバツフア制御回路、１３……多重化データ分離回路、１４……ヘツダ分離回路、１５……分離回路制御回路、１６……スイツチング回路、１７……ビデオコードバツフア、１８……ビデオデコーダ、１９……オーデイオコードバツフア、２０……オーデイオデコーダ、２２……トラツキングサーボ回路、２４、２６、２８、３０、５１……ＲＡＭ、２５、２７、２９、５２……ＥＣＣデコーダ、４２……ＲＦ処理回路、４４、１３１……ＥＦＭ＋復調回路、４６……ＣＬＶ制御回路、４８……ＲＭＩＦ、５３……エラーレジスタ、５４……ＥＣＣ制御部、５５……ＥＣＣ復号部、５６、１３９……ＯＣＴＬ回路、１３４……ＳＢＣＤ回路、１３５……ＲＡＭコントローラ、１３６……ＥＣＣ制御回路、１３７……ＲＡＭ、１３８……ＥＣＣコア回路、１４０……ホストＣＰＵ。
【図１】
0003672139.tif 000014
【図２】
0003672139.tif 000015
【図３】
0003672139.tif 000016
【図４】
0003672139.tif 000017
【図５４】
0003672139.tif 000018
【図５】
0003672139.tif 000019
【図６】
0003672139.tif 000020
【図７】
0003672139.tif 000021
【図９】
0003672139.tif 000022
【図８】
0003672139.tif 000023
【図１０】
0003672139.tif 000024
【図１１】
0003672139.tif 000025
【図１２】
0003672139.tif 000026
【図１３】
0003672139.tif 000027
【図５８】
0003672139.tif 000028
【図１４】
0003672139.tif 000029
【図１５】
0003672139.tif 000030
【図１６】
0003672139.tif 000031
【図１７】
0003672139.tif 000032
【図１８】
0003672139.tif 000033
【図１９】
0003672139.tif 000034
【図２０】
0003672139.tif 000035
【図２１】
0003672139.tif 000036
【図２２】
0003672139.tif 000037
【図２３】
0003672139.tif 000038
【図２４】
0003672139.tif 000039
【図２５】
0003672139.tif 000040
【図２６】
0003672139.tif 000041
【図２７】
0003672139.tif 000042
【図２８】
0003672139.tif 000043
【図２９】
0003672139.tif 000044
【図３６】
0003672139.tif 000045
【図３０】
0003672139.tif 000046
【図３１】
0003672139.tif 000047
【図３２】
0003672139.tif 000048
【図３３】
0003672139.tif 000049
【図３４】
0003672139.tif 000050
【図３５】
0003672139.tif 000051
【図３７】
0003672139.tif 000052
【図３８】
0003672139.tif 000053
【図３９】
0003672139.tif 000054
【図４０】
0003672139.tif 000055
【図４１】
0003672139.tif 000056
【図４２】
0003672139.tif 000057
【図４３】
0003672139.tif 000058
【図４４】
0003672139.tif 000059
【図４５】
0003672139.tif 000060
【図４６】
0003672139.tif 000061
【図４７】
0003672139.tif 000062
【図４８】
0003672139.tif 000063
【図５０】
0003672139.tif 000064
【図４９】
0003672139.tif 000065
【図５１】
0003672139.tif 000066
【図５２】
0003672139.tif 000067
【図５３】
0003672139.tif 000068
【図５５】
0003672139.tif 000069
【図５６】
0003672139.tif 000070
【図５７】
0003672139.tif 000071