【手続補正書】
【提出日】平成16年9月15日(2004.9.15)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
図３は光ディスクコントローラ１０４の処理を示すフローチャートであり、以下に光ディスクコントローラ１０４の処理を説明する。
光ディスクコントローラ１０４は、システム制御マイコン１０７から再生開始要求が入力されると復調部１０４１へ復調開始要求を出力し（ステップＳ３０１）、入出力部１０４７へ復調入出力要求を出力する（Ｓ３０２）。復調入出力要求が入力された入出力部１０４７は、サーボコントローラ１０３から入力されたデータに対して復調部１０４１が復調処理を行った１ＥＣＣブロック分のデータを外部バッファメモリ１０６へ転送を開始し、転送を終了すると復調転送完了ステータスを光ディスク制御マイコン１０４６へ出力する。光ディスク制御マイコン１０４６は、入出力部１０４７から復調転送完了ステータスが入力されるまで待ち（Ｓ３０３）、入出力部１０４７から復調転送完了ステータスが入力されると、誤り訂正処理を実行し（Ｓ３０４）、誤り訂正処理終了後１ＥＣＣブロック処理完了通知をシステム制御マイコン１０７へ出力し（Ｓ３０５）、復調転送終了ステータスが入力されるまで待つ。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
図４は、ステップＳ３０４の誤り訂正処理を示すフローチャートである。
光ディスク制御マイコン１０４６は、誤り訂正実行状態を内符号訂正状態に設定する（ステップＳ４０１）。入出力部１０４７へ内符号転送起動要求を出力する（Ｓ４０２）。内符号転送起動要求が入力された入出力部１０４７は、行方向に１２行分（計２１８４バイト）のデータを外部バッファメモリ１０６から誤り訂正ワークメモリ１０４５へ転送を開始し、転送を終了すると内符号転送完了ステータスを光ディスク制御マイコン１０４６へ出力する。光ディスク制御マイコン１０４６は、入出力部１０４７から内符号転送完了ステータスが入力されるまで待ち（Ｓ４０３）、入出力部１０４７から内符号転送完了ステータスが入力されると、誤り訂正制御部１０４２へ内符号訂正起動要求を出力する（Ｓ４０４）。内符号訂正起動要求が入力された誤り訂正制御部１０４２は、誤り訂正ワークメモリ１０４５へ転送された、行方向に１２行分（計２１８４バイト）のデータに対して、内符号訂正を実行する。誤り訂正制御部１０４２は、１２行分（計２１８４バイト）のデータに対する内符号訂正が終了すると、誤りを訂正できたデータの個数と、誤り訂正処理を完了したことと、誤りを訂正できなかった行が存在したか否かとを表す訂正完了ステータスを光ディスク制御マイコン１０４６に対して出力する。光ディスク制御マイコン１０４６は、誤り訂正制御部１０４２から訂正完了ステータスが入力されるまで待ち（Ｓ４０５）、誤り訂正制御部１０４２から訂正完了ステータスが入力されると、訂正完了ステータスから誤りを訂正できなかった行が存在したか否かを判定し（Ｓ４０６）、誤りを訂正できなかった行が存在していないと判定した場合、内符号訂正で用いたデータを用いて、誤り検出デスクランブル処理を実行し（Ｓ４０７）、処理終了後ステップＳ４０８へ進む。また、訂正完了ステータスから誤りを訂正できなかった行が存在したと判定した場合、ステップＳ４０８へ進む。ステップＳ４０８では、１ＥＣＣブロックの誤り訂正を実行したか否かを判定し、終了していないと判定した場合、ステップＳ４０１へ進む。１ＥＣＣブロックの誤り訂正を実行したか否かを判定し、終了したと判定した場合、ステップＳ４０９へ進む。ステップＳ４０９では、１ＥＣＣブロックの誤り訂正処理において誤りを訂正できなかった行が存在したか否かを判定し、存在しないと判定した場合、誤り訂正処理を終了する。誤りを訂正できなかった行が存在したと判定した場合、ステップＳ４１０へ進む。ステップＳ４１０では、光ディスク制御マイコン１０４６は、誤り訂正実行状態を外符号訂正状態に設定し、入出力部１０４７へ外符号転送起動要求を出力する（Ｓ４１１）。外符号転送起動要求が入力された入出力部１０４７は、列方向に８列分（計１６６４バイト）のデータを外部バッファメモリ１０６から誤り訂正ワークメモリ１０４５へ転送を開始し、転送を終了すると外符号転送完了ステータスを光ディスク制御マイコン１０４６へ出力する。光ディスク制御マイコン１０４６は入出力部１０４７から外符号転送完了ステータスが入力されるまで待ち（Ｓ４１２）、入出力部１０４７から外符号転送完了ステータスが入力されると、誤り訂正制御部１０４２へ外符号訂正起動要求を出力する（Ｓ４１３）。外符号訂正起動要求が入力された誤り訂正制御部１０４２は、誤り訂正ワークメモリ１０４５へ転送された列方向に８列分（計１６６４バイト）のデータに対して、外符号訂正を実行する。誤り訂正制御部１０４２は、８列分（計１６６４バイト）のデータに対する外符号訂正が終了すると、誤りを訂正できたデータの個数と、誤り訂正処理を完了したことと、誤りを訂正出来なかった行が存在したか否かとを表す訂正完了ステータスを光ディスク制御マイコン１０４６に対して出力する。光ディスク制御マイコン１０４６は誤り訂正制御部１０４２から訂正完了ステータスが入力されるまで待ち（Ｓ４１４）、訂正完了ステータスから誤りを訂正できたデータの個数が０でなかったか否かを判定し（Ｓ４１５）、０であったと判定した場合、ステップＳ４１８へ進み、０でないと判定した場合、ステップＳ４１６へ進む。ステップＳ４１６では、光ディスク制御マイコン１０４６は入出力部１０４７へ誤り訂正後転送起動要求を出力する。誤り訂正後転送起動要求が入力された入出力部１０４７は、誤り訂正ワークメモリ１０４５に格納された外符号訂正処理済のデータを外部バッファメモリ１０６へ転送を開始し、転送を終了すると誤り訂正後転送完了ステータスを光ディスク制御マイコン１０４６へ出力する。光ディスク制御マイコンは入出力部１０４７から誤り訂正後転送完了ステータスが入力されるまで待ち（Ｓ４１７）、入出力部１０４７から誤り訂正後転送完了ステータスが入力されると、ステップＳ４１８へ進む。ステップＳ４１８では、１ＥＣＣブロックの誤り訂正を実行したか否かを判定し、終了したと判定した場合、ステップＳ４１９へ進み、終了していないと判定した場合、ステップＳ４１１へ進み、まだ訂正していないデータの転送を開始する。ステップＳ４１９では、１ＥＣＣブロックの誤り訂正処理において訂正できなかった列が存在したか否かを判定し、存在しないと判定した場合、ステップＳ４２０へ進み、存在したと判定した場合、外符号訂正を行ったデータに対して、再度内符号訂正を行うために、ステップＳ４０１へ進む。ステップＳ４２０では、誤り検出デスクランブル処理を実行し、処理終了後、１ＥＣＣブロックのデータに対する誤り検出デスクランブル処理を実行したか否かを判定し（Ｓ４２１）、処理を実行したと判定した場合、誤り訂正処理を終了し、処理を終了していないと判定した場合、ステップＳ４２０へ進み、まだ誤り検出デスクランブル処理をしていないデータに対して、誤り検出デスクランブル処理を行う。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
次に、ステップＳ４０７、及びステップＳ４２０で実行される誤り検出デスクランブル処理を図５のフローチャートを用いて説明する。
光ディスク制御マイコン１０４６は、内符号訂正状態か否かを判定し（Ｓ５０１）、内符号訂正状態と判定した場合、ステップＳ５０４へ進み、内符号訂正状態でないと判定した場合、誤り訂正ワークメモリ１０４５に誤り検出するデータが存在しないため、入出力部１０４７へ誤り検出前転送起動要求を出力する（Ｓ５０２）。誤り検出前転送起動要求が入力された入出力部１０４７は、１ユーザセクタ（計２０６４バイト）のデータを外部バッファメモリ１０６から誤り訂正ワークメモリ１０４５へ転送を開始し、転送を終了すると誤り検出前転送完了ステータスを光ディスク制御マイコン１０４６へ出力する。光ディスク制御マイコン１０４６は、入出力部１０４７から誤り検出前転送完了ステータスが入力されるまで待ち（Ｓ５０３）、入出力部１０４７から誤り検出前転送完了ステータスが入力されるか、あるいは、ステップＳ５０１において、内符号訂正状態であれば、誤り検出制御部１０４３へ誤り検出起動要求を出力する（Ｓ５０４）。誤り検出起動要求が入力された誤り検出制御部１０４３は、誤り訂正ワークメモリ１０４５へ転送された１ユーザセクタ（計２０６４バイト）のデータに対して、誤り検出を実行する。誤り検出制御部１０４３は、１ユーザセクタ分（計２０６４バイト）のデータに対する誤り検出処理が終了すると、誤り検出処理を完了したことを表す誤り検出完了ステータスを光ディスク制御マイコン１０４６に対して出力する。光ディスク制御マイコン１０４６は誤り検出制御部１０４３から誤り検出完了ステータスが入力されるまで待ち（Ｓ５０５）、誤り検出制御部１０４３から誤り検出完了ステータスが入力されると、デスクランブル制御部１０４４へデスクランブル起動要求を出力する（Ｓ５０６）。デスクランブル起動要求が入力されたデスクランブル制御部１０４４は、誤り訂正ワークメモリ１０４５へ転送された１ユーザセクタ（計２０６４バイト）のデータに対して、デスクランブル処理を実行する。デスクランブル制御部１０４４は、１ユーザセクタ（計２０６４バイト）のデータに対するデスクランブル処理が終了すると、デスクランブル処理が完了したことと、デスクランブル済みデータ内にシステム制御マイコン１０７が必要とする有効情報であるＮＡＶＩ情報の有無を検出したことを表すデスクランブル完了ステータスを光ディスク制御マイコン１０４６に対して出力する。光ディスク制御マイコン１０４６は、デスクランブル制御部１０４４からデスクランブル完了ステータスが入力されるまで待ち（Ｓ５０７）、デスクランブル完了ステータスをもとにＮＡＶＩ情報を検出したか否かを判定し（Ｓ５０８）、検出したと判定した場合、ステップＳ５０９へ進み、検出していないと判定した場合、ステップＳ５１１へ進む。ステップＳ５０９では、入出力部１０４７へデスクランブル後転送起動要求を出力する。デスクランブル後起動要求が入力された入出力部１０４７は、１ユーザセクタ（計２０６４バイト）のデータを誤り訂正ワークメモリ１０４５から外部バッファメモリ１０６へ転送を開始し、転送を終了するとデスクランブル後転送完了ステータスを光ディスク制御マイコン１０４６へ出力する。光ディスク制御マイコンは、入出力部１０４７からデスクランブル後転送完了ステータスが入力されるまで待ち（Ｓ５１０）、入出力部１０４７からデスクランブル後転送完了ステータスが入力されると、入出力部１０４７へホスト転送起動要求を出力する（Ｓ５１１）。ホスト転送起動要求が入力された入出力部１０４７は、１ユーザセクタのユーザデータ部（計２０４８バイト）のデータを誤り訂正ワークメモリ１０４５からＡＶデコーダ１０５へ転送を開始し、転送を終了するとホスト転送完了ステータスを光ディスク制御マイコン１０４６へ出力する。光ディスク制御マイコンは、入出力部１０４７からホスト転送完了ステータスが入力されるまで待ち（Ｓ５１２）、入出力部１０４７からホスト転送完了ステータスが入力されると、誤り検出デスクランブル処理を終了する。