(57)【要約】【課題】ＥＣＣ処理の際のメモリアクセス回数を低減させることにより処理の高速化を図り得るデータ符号化回路を提供する。【解決手段】セクタデータは、スクランブル演算回路１０５にてスクランブルされた後、メモリ１０１に書き込まれ、ＰＩ演算回路１０６とＰＯ演算回路１０７に入力される。ＰＩ演算回路１０６は、セクタデータに対し、１行ずつ、ＰＩ符号演算を実行し、得られたＰＩ符号をメモリ１０１に書き込み、同時に、ＰＯ演算回路１０７に入力する。ＰＯ演算回路１０７は、既にバッファ１０８に格納されているＰＯ符号を読み出し、このＰＯ符号と、入力されたセクタデータおよびＰＩ符号から、ＰＯ符号を算出するためのシンドローム演算式を設定し、各列のＰＯ符号を算出して、バッファ１０８に書き戻す。ＩＥＣＣブロック分の処理が終了すると、バッファ１０８内のＰＯ符号がメモリ１０１に書き込まれる。【選択図】図１
2008010064.tif 000002
【特許請求の範囲】
【請求項１】
ホストから入力されたデータにスクランブル処理を施すスクランブル演算部と、
前記スクランブル処理後のデータから行方向の誤り訂正符号を生成する行方向の誤り訂正符号演算部と、
前記スクランブル処理後のデータと前記行方向の誤り訂正符号から列方向の誤り訂正符号を生成する列方向の誤り訂正符号演算部と、
前記列方向の誤り訂正符号演算部によって生成された列方向の誤り訂正符号を格納するバッファと、
前記スクランブル後のデータと前記行方向の誤り訂正符号および列方向の誤り訂正符号を格納するメモリとを備え、
前記列方向の誤り訂正符号演算部は、前記スクランブル演算部から前記スクランブル後のデータが入力され、あるいは、前記行方向の誤り訂正符号演算部から前記行方向の誤り訂正符号が入力されることに応じて、前記バッファに格納されている前記列方向の誤り訂正符号を読み出し、読み出した列方向の誤り訂正符号と前記入力されたデータあるいは行方向の誤り訂正符号から新たに列方向の誤り訂正符号を生成して前記バッファに書き戻し、
前記列方向の誤り訂正符号演算部による演算処理にて誤り訂正単位分の列方向の誤り訂正符号が前記バッファに格納された後、該バッファから前記列方向の誤り訂正符号が読み出され、前記メモリに格納される、
ことを特徴とするデータ符号化回路。
【請求項２】
請求項１に記載のデータ符号化回路において、
前記メモリには、変調回路への読み出し順に応じて、先頭アドレスから順次、前記データ、行方向の誤り訂正符号および列方向の誤り訂正符号の格納領域が設定され、前記バッファに格納された前記列方向の誤り訂正符号は、前記メモリ上の対応する列方向の誤り訂正符号の格納領域にそれぞれ格納される、
ことを特徴とするデータ符号化回路。
【請求項３】
請求項１または２に記載のデータ符号化回路において、
前記バッファは、第１のバッファと第２のバッファから構成され、前記列方向の誤り訂正符号演算部における演算処理時に使用されるバッファが、前記誤り訂正単位毎に、前記第１のバッファと前記第２のバッファの間で切り替えられ、
これら２つのバッファのうち一方のバッファに格納された前記列方向の誤り訂正符号は、他方のバッファが前記列方向の誤り訂正符号演算部における演算処理時に使用されている期間において読み出され、前記メモリに格納される、
ことを特徴とするデータ符号化回路。
【請求項４】
ホストから入力されたデータにスクランブル処理を施すスクランブル演算部と、
前記スクランブル処理後のデータから行方向の誤り訂正符号を生成する行方向の誤り訂正符号演算部と、
前記スクランブル処理後のデータと前記行方向の誤り訂正符号から列方向の誤り訂正符号を生成する列方向の誤り訂正符号演算部と、
前記列方向の誤り訂正符号演算部によって生成された列方向の誤り訂正符号を格納するバッファと、
前記スクランブル後のデータと前記行方向の誤り訂正符号を格納するメモリとを備え、
前記列方向の誤り訂正符号演算部は、前記スクランブル演算部から前記スクランブル後のデータが入力され、あるいは、前記行方向の誤り訂正符号演算部から前記行方向の誤り訂正符号が入力されることに応じて、前記バッファに格納されている前記列方向の誤り訂正符号を読み出し、読み出した列方向の誤り訂正符号と前記入力されたデータあるいは行方向の誤り訂正符号から新たに列方向の誤り訂正符号を生成して前記バッファに書き戻し、
前記列方向の誤り訂正符号演算部による演算処理にて誤り訂正単位分の列方向の誤り訂正符号が前記バッファに格納された後、前記メモリから１行ずつ前記データと前記行方向の誤り訂正符号が変調回路に出力され、且つ、当該出力の合間の前記列方向の誤り訂正符号の出力タイミングにおいて、該バッファから１行ずつ前記列方向の誤り訂正符号が読み出され、前記変調回路に出力される、
ことを特徴とするデータ符号化回路。
【請求項５】
ホストから入力されたデータにスクランブル処理を施すスクランブル演算部と、
前記スクランブル処理後のデータから行方向の誤り訂正符号を生成し、且つ、前記スクランブル処理後のデータと前記行方向の誤り訂正符号から列方向の誤り訂正符号を生成するＰＩ／ＰＯ演算部と、
前記ＰＩ／ＰＯ演算部によって生成された行方向の誤り訂正符号を該行方向の誤り訂正符号に対応する前記データとともに格納するＰＩ用バッファと、
前記ＰＩ／ＰＯ演算部によって生成された列方向の誤り訂正符号を格納するＰＯ用バッファと、
前記スクランブル後のデータと前記行方向の誤り訂正符号および列方向の誤り訂正符号を格納するメモリとを備え、
前記ＰＩ／ＰＯ演算部は、前記列方向の誤り訂正符号の演算処理の際、前記ＰＩ用バッファから前記データと前記行方向の誤り訂正符号を読み出すとともに、前記ＰＯ用バッファに格納されている前記列方向の誤り訂正符号を読み出し、読み出した前記データおよび行方向の誤り訂正符号と前記列方向の誤り訂正符号から新たに列方向の誤り訂正符号を生成して前記バッファに書き戻し、
前記ＰＩ／ＰＯ演算部によって前記列方向の誤り訂正符号の演算処理が行われた際に、前記ＰＩ用バッファから前記データと前記行方向の誤り訂正符号が読み出されて前記メモリに格納され、
前記ＰＩ／ＰＯ演算部による列方向の誤り訂正符号の演算処理にて誤り訂正単位分の列方向の誤り訂正符号が前記ＰＯ用バッファに格納された後、該ＰＯ用バッファから前記列方向の誤り訂正符号が読み出され、前記メモリに格納される、
ことを特徴とするデータ符号化回路。
【請求項６】
請求項５に記載のデータ符号化回路において、
前記メモリには、変調回路への読み出し順に応じて、先頭アドレスから順次、前記データ、行方向の誤り訂正符号および列方向の誤り訂正符号の格納領域が設定され、前記ＰＯ用バッファに格納された前記列方向の誤り訂正符号は、前記メモリ上の対応する列方向の誤り訂正符号の格納領域にそれぞれ格納される、
ことを特徴とするデータ符号化回路。
【請求項７】
請求項５または６に記載のデータ符号化回路において、
前記ＰＯ用バッファは、第１のバッファと第２のバッファから構成され、前記ＰＩ／ＰＯ演算回路における前記列方向の誤り訂正符号の演算処理時に使用されるバッファが、前記誤り訂正単位毎に、前記第１のバッファと前記第２のバッファの間で切り替えられ、
これら２つのバッファのうち一方のバッファに格納された前記列方向の誤り訂正符号は、他方のバッファが前記ＰＯ演算回路における演算処理時に使用されている期間において読み出され、前記メモリに格納される、
ことを特徴とするデータ符号化回路。
【請求項８】
ホストから入力されたデータにスクランブル処理を施すスクランブル演算部と、
前記スクランブル処理後のデータから行方向の誤り訂正符号と列方向の誤り訂正符号を生成するＰＩ／ＰＯ演算部と、
前記ＰＩ／ＰＯ演算部によって生成された行方向の誤り訂正符号を該行方向の誤り訂正符号に対応する前記データとともに格納するＰＩ用バッファと、
前記ＰＩ／ＰＯ演算部によって生成された列方向の誤り訂正符号を格納するＰＯ用バッファと、
前記スクランブル後のデータと前記行方向の誤り訂正符号を格納するメモリとを備え、
前記ＰＩ／ＰＯ演算部は、前記列方向の誤り訂正符号の演算処理の際、前記ＰＩ用バッファから前記データと前記行方向の誤り訂正符号を読み出すとともに、前記ＰＯ用バッファに格納されている前記列方向の誤り訂正符号を読み出し、読み出した前記データおよび行方向の誤り訂正符号と前記列方向の誤り訂正符号から新たに列方向の誤り訂正符号を生成して前記バッファに書き戻し、
前記ＰＩ／ＰＯ演算部によって前記列方向の誤り訂正符号の演算処理が行われた際に、前記ＰＩ用バッファから前記データと前記行方向の誤り訂正符号が読み出されて前記メモリに格納され、
前記ＰＩ／ＰＯ演算部による列方向の誤り訂正符号の演算処理にて誤り訂正単位分の列方向の誤り訂正符号が前記ＰＯ用バッファに格納された後、前記メモリから１行ずつ前記データと前記行方向の誤り訂正符号が変調回路に出力され、且つ、当該出力の合間の前記列方向の誤り訂正符号の出力タイミングにおいて、該ＰＯ用バッファから１行ずつ前記列方向の誤り訂正符号が読み出され、前記変調回路に出力される、
ことを特徴とするデータ符号化回路。
【請求項９】
請求項１乃至８の何れか一項に記載のデータ符号化回路を備えるデータ記録装置。
【請求項１０】
入力データから行方向の誤り訂正符号を生成し、生成した前記行方向の誤り訂正符号をメモリに書き込むとともに列方向の誤り訂正符号の演算に供するＰＩ演算工程と、
前記入力データと前記行方向の誤り訂正符号から前記列方向の誤り訂正符号を生成し、生成した前記列方向の誤り訂正符号をバッファに書き込むＰＯ演算工程と、
誤り訂正単位分の前記列方向の誤り訂正符号が前記バッファに格納された後、前記列方向の誤り訂正符号を前記バッファから読み出して前記メモリに書き込むＰＯ書き込み工程と
を備え、
前記ＰＯ演算工程は、生成した前記列方向の誤り訂正符号をバッファに格納するとともに、前記データあるいは前記行方向の誤り訂正符号が入力されることに応じて、前記バッファに格納されている前記列方向の誤り訂正符号を読み出し、読み出した列方向の誤り訂正符号と前記入力されたデータあるいは行方向の誤り訂正符号から新たに列方向の誤り訂正符号を生成して前記バッファに書き戻す、
ことを特徴とするＰＩ／ＰＯ演算処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ符号化回路、データ記録装置およびＰＩ／ＰＯ演算処理方法に関し、特に、行方向（ＰＩ方向）および列方向（ＰＯ方向）の積符号化処理によって誤り訂正符号を生成・付加する際に用いて好適なものである。
【背景技術】
【０００２】
通信、コンピュータ、放送、映像メディア等の分野においては、データの信頼性向上、さらには、記録システムにおける高記録密度化のために、一般に、エラー訂正符号が用いられている。特に、最近では、データ処理能力の向上に伴い、高度な訂正能力を有するエラー訂正符号が用いられるようになってきている。
【０００３】
高画質の映像を提供するＤＶＤ（Digital Versatile Disc）再生装置においても、訂正能力の高いリードソロモン（RS）積符号と呼ばれるエラー訂正符号が用いられ、伝送系で発生したエラーを訂正できるようになっている。
【０００４】
積符号は、縦横の異なる方向のエラー訂正符号を組み合わせたもので、情報データブロックの横方向に対して付加された内符号のＰＩ（Parity Inner）符号と、情報データブロックおよびＰＩ符号からなるブロックの縦方向に対して付加された外符号のＰＯ（Parity Outer）符号からなっている。これらＰＩ符号およびＰＯ符号を情報データブロックに付加して構成されたブロックがＥＣＣブロックである。
【０００５】
図１２に、ＤＶＤ記録装置に適用されるＥＣＣブロックのデータ構造を示す。図示の如く、ＥＣＣブロックは、２０８行×１８１列のデータからなっており、１９２行目〜２０８行目と、１７２列目〜１８１列目には、それぞれＰＯ符号とＰＩ符号が付加される。このうち、ＰＩ符号は各行のセクタデータに付加され、ＰＯ符号は各列のセクタデータとＰＩ符号にそれぞれ付加される。
【０００６】
図１３は、ホストからデータ符号化回路にデータが供給されてからディスクに記録されるまでの処理の流れを示す図である。ここでは、一般に、以下の手順に従って、処理が行われる。
【０００７】
(1) ホスト側からメモリにデータが書き込まれる（図１３（ａ）参照）。
【０００８】
(2) メモリからデータが読み出され、ヘッダとＥＤＣ（Error Detection Code）の付加処理が行われる（図１３（ｂ）参照）。さらに、ヘッダとＥＤＣが付加されたデータに対してスクランブル処理が行われ（図１３（ｃ）参照）、スクランブル後のデータがメモリに書き戻される。
【０００９】
(3) ＥＣＣ回路でＰＩ符号が演算され、メモリに書き込まれる（図１３（ｄ）参照）。このとき、メモリに対して、行毎に、リードとライトが１回ずつ発生する。
【００１０】
(4) ＥＣＣ回路でＰＯ符号が演算され、メモリに書き込まれる（図１３（ｅ）参照）。このとき、メモリに対して、列毎に、リードとライトが１回ずつ発生する。
【００１１】
(5) メモリから行毎にデータが読み出され、変調回路に出力される（図１３（ｆ）参照）。変調回路は、入力されたデータを変調して記録信号を生成し、順次、記録系に出力する。記録系は、入力された記録信号に応じて、ディスクに対する書き込み動作を実行する。
【００１２】
なお、ＤＶＤ記録装置で必要となるＥＣＣエンコード処理、つまり、情報データに対してＰＩ符号およびＰＯ符号を生成・付加する際の処理として、たとえば、以下の特許文献１に記載の処理手法が知られている。
【特許文献１】特開２００２−９３０５８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
ＤＶＤ記録装置や、現在商品化が進められている次世代ＤＶＤ記録装置では、既存のＣＤ記録装置と同様、高速でディスクに記録を行う、いわゆる「高倍速記録」への対応が望まれている。こうした「高倍速記録」を装置側で実現するためには、書き込み処理時に行われるＥＣＣエンコード処理を高速化させる必要がある。この場合、特に、高速化についてボトルネックとなっているメモリ（一般的にはＤ−ＲＡＭまたはＳＤＲＡＭ）へのアクセス回数を如何に低減させるかが問題となる。
【００１４】
本発明は、このような状況を考慮してなされたものであり、ＥＣＣ処理の際のメモリアクセス回数を低減させることにより処理の高速化を図り得るデータ符号化回路、データ記録装置およびＰＩ／ＰＯ演算処理方法を提供することを課題とする。
【課題を解決するための手段】
【００１５】
請求項１の発明は、データ符号化回路において、ホストから入力されたデータにスクランブル処理を施すスクランブル演算部と、前記スクランブル処理後のデータから行方向の誤り訂正符号を生成する行方向の誤り訂正符号演算部と、前記スクランブル処理後のデータと前記行方向の誤り訂正符号から列方向の誤り訂正符号を生成する列方向の誤り訂正符号演算部と、前記列方向の誤り訂正符号演算部によって生成された列方向の誤り訂正符号を格納するバッファと、前記スクランブル後のデータと前記行方向の誤り訂正符号および列方向の誤り訂正符号を格納するメモリとを備え、前記列方向の誤り訂正符号演算部は、前記スクランブル演算部から前記スクランブル後のデータが入力され、あるいは、前記行方向の誤り訂正符号演算部から前記行方向の誤り訂正符号が入力されることに応じて、前記バッファに格納されている前記列方向の誤り訂正符号を読み出し、読み出した列方向の誤り訂正符号と前記入力されたデータあるいは行方向の誤り訂正符号から新たに列方向の誤り訂正符号を生成して前記バッファに書き戻し、前記列方向の誤り訂正符号演算部による演算処理にて誤り訂正単位分の列方向の誤り訂正符号が前記バッファに格納された後、該バッファから前記列方向の誤り訂正符号が読み出され、前記メモリに格納されることを特徴とする。
【００１６】
この発明によれば、ＥＣＣエンコード処理時におけるメモリへのアクセスが、(1)スクランブルデータの書き込み、(2)ＰＩ符号（行方向の誤り訂正符号）の書き込み、および、(3)ＰＯ符号（列方向の誤り訂正符号）の書き込みに抑制される。よって、上述した従来技術の場合に比べ、ＥＣＣ処理の際のメモリアクセス回数を顕著に低減させることができ、よって、符号化処理の高速化を図ることができる。
【００１７】
請求項２の発明は、請求項１に記載のデータ符号化回路において、前記メモリには、変調回路への読み出し順に応じて、先頭アドレスから順次、前記データ、行方向の誤り訂正符号および列方向の誤り訂正符号の格納領域が設定され、前記バッファに格納された前記列方向の誤り訂正符号は、前記メモリ上の対応する列方向の誤り訂正符号の格納領域にそれぞれ格納されることを特徴とする。
【００１８】
この発明によれば、データをメモリから読み出して記録系に転送する際、マッピング領域の先頭アドレスから最終アドレスまで順次単調に１行ずつデータをメモリから読み出して、記録系に出力すればよい。よって、この発明によれば、請求項１の発明における効果に加え、さらに、データ読み出し時におけるメモリへのアクセス制御を単純化できるとの効果を奏することができる。
【００１９】
請求項３の発明は、請求項１または２に記載のデータ符号化回路において、前記バッファは、第１のバッファと第２のバッファから構成され、前記列方向の誤り訂正符号演算部における演算処理時に使用されるバッファが、前記誤り訂正単位毎に、前記第１のバッファと前記第２のバッファの間で切り替えられ、これら２つのバッファのうち一方のバッファに格納された前記列方向の誤り訂正符号は、他方のバッファが前記列方向の誤り訂正符号演算部における演算処理時に使用されている期間において読み出され、前記メモリに格納されることを特徴とする。
【００２０】
この発明によれば、メモリに対するＰＯ符号（列方向の誤り訂正符号）の書き込み処理が、次のＥＣＣブロック（誤り訂正単位）に対するＰＯ符号化処理期間において行われる。よって、各ＥＣＣブロックに対する符号化処理の所要時間は、メモリに対するＰＯ符号の書き込み処理を行わない分だけ削減され得る。このため、この発明によれば、ホストからデータ符号化回路に対するデータ転送制御の円滑化を図ることができる。
【００２１】
請求項４の発明は、データ符号化回路において、ホストから入力されたデータにスクランブル処理を施すスクランブル演算部と、前記スクランブル処理後のデータから行方向の誤り訂正符号を生成する行方向の誤り訂正符号演算部と、前記スクランブル処理後のデータと前記行方向の誤り訂正符号から列方向の誤り訂正符号を生成する列方向の誤り訂正符号演算部と、前記列方向の誤り訂正符号演算部によって生成された列方向の誤り訂正符号を格納するバッファと、前記スクランブル後のデータと前記行方向の誤り訂正符号を格納するメモリとを備え、前記列方向の誤り訂正符号演算部は、前記スクランブル演算部から前記スクランブル後のデータが入力され、あるいは、前記行方向の誤り訂正符号演算部から前記行方向の誤り訂正符号が入力されることに応じて、前記バッファに格納されている前記列方向の誤り訂正符号を読み出し、読み出した列方向の誤り訂正符号と前記入力されたデータあるいは行方向の誤り訂正符号から新たに列方向の誤り訂正符号を生成して前記バッファに書き戻し、前記列方向の誤り訂正符号演算部による演算処理にて誤り訂正単位分の列方向の誤り訂正符号が前記バッファに格納された後、前記メモリから１行ずつ前記データと前記行方向の誤り訂正符号が変調回路に出力され、且つ、当該出力の合間の前記列方向の誤り訂正符号の出力タイミングにおいて、該バッファから１行ずつ前記列方向の誤り訂正符号が読み出され、前記変調回路に出力されることを特徴とする。
【００２２】
この発明によれば、ＥＣＣエンコード処理時におけるメモリへのアクセスが、(1)スクランブルデータの書き込み、および、(2)ＰＩ符号（行方向の誤り訂正符号）の書き込みに抑制される。よって、上記請求項１の発明に比べ、さらに、ＥＣＣ処理の際のメモリアクセス回数を低減させることができ、よって、符号化処理の高速化を図ることができる。
【００２３】
加えて、この発明によれば、メモリに対してＰＯ符号（列方向の誤り訂正符号）が書き込まれないため、上記請求項１の発明に比べ、ＰＯ符号の格納領域分だけメモリの記憶領域を削減することができ、メモリのサイズを減少させることができる。
【００２４】
請求項５の発明は、データ符号化回路において、ホストから入力されたデータにスクランブル処理を施すスクランブル演算部と、前記スクランブル処理後のデータから行方向の誤り訂正符号を生成し、且つ、前記スクランブル処理後のデータと前記行方向の誤り訂正符号から列方向の誤り訂正符号を生成するＰＩ／ＰＯ演算部と、前記ＰＩ／ＰＯ演算部によって生成された行方向の誤り訂正符号を該行方向の誤り訂正符号に対応する前記データとともに格納するＰＩ用バッファと、前記ＰＩ／ＰＯ演算部によって生成された列方向の誤り訂正符号を格納するＰＯ用バッファと、前記スクランブル後のデータと前記行方向の誤り訂正符号および列方向の誤り訂正符号を格納するメモリとを備え、前記ＰＩ／ＰＯ演算部は、前記列方向の誤り訂正符号の演算処理の際、前記ＰＩ用バッファから前記データと前記行方向の誤り訂正符号を読み出すとともに、前記ＰＯ用バッファに格納されている前記列方向の誤り訂正符号を読み出し、読み出した前記データおよび行方向の誤り訂正符号と前記列方向の誤り訂正符号から新たに列方向の誤り訂正符号を生成して前記バッファに書き戻し、前記ＰＩ／ＰＯ演算部によって前記列方向の誤り訂正符号の演算処理が行われた際に、前記ＰＩ用バッファから前記データと前記行方向の誤り訂正符号が読み出されて前記メモリに格納され、前記ＰＩ／ＰＯ演算部による列方向の誤り訂正符号の演算処理にて誤り訂正単位分の列方向の誤り訂正符号が前記ＰＯ用バッファに格納された後、該ＰＯ用バッファから前記列方向の誤り訂正符号が読み出され、前記メモリに格納されることを特徴とする。
【００２５】
この発明によれば、ＥＣＣエンコード処理時におけるメモリへのアクセスが、(1)スクランブルデータとＰＩ符号（行方向の誤り訂正符号）の書き込み（ＰＩ用バッファからメモリへの転送）、および、(2)ＰＯ符号（列方向の誤り訂正符号）の書き込みに抑制される。よって、上述した従来技術の場合に比べ、ＥＣＣ処理の際のメモリアクセス回数を顕著に低減させることができ、よって、符号化処理の高速化を図ることができる。
【００２６】
加えて、この発明によれば、ＰＩ符号とＰＯ符号の演算処理がＰＩ／ＰＯ演算処理部を共用して行われるため、回路規模を削減でき、且つ、データ符号化回路における消費電力を抑制することができる。
【００２７】
請求項６の発明は、請求項５に記載のデータ符号化回路において、前記メモリには、変調回路への読み出し順に応じて、先頭アドレスから順次、前記データ、行方向の誤り訂正符号および列方向の誤り訂正符号の格納領域が設定され、前記ＰＯ用バッファに格納された前記列方向の誤り訂正符号は、前記メモリ上の対応する列方向の誤り訂正符号の格納領域にそれぞれ格納されることを特徴とする。
【００２８】
この発明によれば、請求項５の発明における効果に加え、さらに、上記請求項２と同様、データ読み出し時におけるメモリへのアクセス制御を単純化できるとの効果を奏することができる。
【００２９】
請求項７の発明は、請求項５または６に記載のデータ符号化回路において、前記ＰＯ用バッファは、第１のバッファと第２のバッファから構成され、前記ＰＩ／ＰＯ演算回路における前記列方向の誤り訂正符号の演算処理時に使用されるバッファが、前記誤り訂正単位毎に、前記第１のバッファと前記第２のバッファの間で切り替えられ、これら２つのバッファのうち一方のバッファに格納された前記列方向の誤り訂正符号は、他方のバッファが前記ＰＯ演算回路における演算処理時に使用されている期間において読み出され、前記メモリに格納されることを特徴とする。
【００３０】
この発明によれば、上記請求項３の発明と同様、各ＥＣＣブロック（誤り訂正単位）に対する符号化処理の所要時間を削減することができ、このため、ホストからデータ符号化回路に対するデータ転送制御の円滑化を図ることができる。
【００３１】
請求項８の発明は、データ符号化回路において、ホストから入力されたデータにスクランブル処理を施すスクランブル演算部と、前記スクランブル処理後のデータから行方向の誤り訂正符号と列方向の誤り訂正符号を生成するＰＩ／ＰＯ演算部と、前記ＰＩ／ＰＯ演算部によって生成された行方向の誤り訂正符号を該行方向の誤り訂正符号に対応する前記データとともに格納するＰＩ用バッファと、前記ＰＩ／ＰＯ演算部によって生成された列方向の誤り訂正符号を格納するＰＯ用バッファと、前記スクランブル後のデータと前記行方向の誤り訂正符号を格納するメモリとを備え、前記ＰＩ／ＰＯ演算部は、前記列方向の誤り訂正符号の演算処理の際、前記ＰＩ用バッファから前記データと前記行方向の誤り訂正符号を読み出すとともに、前記ＰＯ用バッファに格納されている前記列方向の誤り訂正符号を読み出し、読み出した前記データおよび行方向の誤り訂正符号と前記列方向の誤り訂正符号から新たに列方向の誤り訂正符号を生成して前記バッファに書き戻し、前記ＰＩ／ＰＯ演算部によって前記列方向の誤り訂正符号の演算処理が行われた際に、前記ＰＩ用バッファから前記データと前記行方向の誤り訂正符号が読み出されて前記メモリに格納され、前記ＰＩ／ＰＯ演算部による列方向の誤り訂正符号の演算処理にて誤り訂正単位分の列方向の誤り訂正符号が前記ＰＯ用バッファに格納された後、前記メモリから１行ずつ前記データと前記行方向の誤り訂正符号が変調回路に出力され、且つ、当該出力の合間の前記列方向の誤り訂正符号の出力タイミングにおいて、該ＰＯ用バッファから１行ずつ前記列方向の誤り訂正符号が読み出され、前記変調回路に出力されることを特徴とする。
【００３２】
この発明によれば、ＥＣＣエンコード処理時におけるメモリへのアクセスが、(1)スクランブルデータとＰＩ符号（行方向の誤り訂正符号）の書き込み（ＰＩ用バッファからメモリへの転送）に抑制される。よって、上述した従来技術の場合に比べ、ＥＣＣ処理の際のメモリアクセス回数を顕著に低減させることができ、よって、符号化処理の高速化を図ることができる。
【００３３】
加えて、この発明によれば、ＰＩ符号とＰＯ符号（列方向の誤り訂正符号）の演算処理がＰＩ／ＰＯ演算処理部を共用して行われるため、回路規模を削減でき、且つ、データ符号化回路における消費電力を抑制することができる。
【００３４】
さらに、この発明によれば、メモリに対してＰＯ符号が書き込まれないため、上記請求項１の発明に比べ、ＰＯ符号の格納領域分だけメモリの記憶領域を削減することができ、メモリのサイズを減少させることができる。
【００３５】
請求項９の発明は、請求項１乃至８の何れか一項に記載のデータ符号化回路を備えるデータ記録装置である。
【００３６】
請求項１０の発明は、ＰＩ／ＰＯ演算処理方法において、入力データから行方向の誤り訂正符号を生成し、生成した前記行方向の誤り訂正符号をメモリに書き込むとともに列方向の誤り訂正符号の演算に供するＰＩ演算工程と、前記入力データと前記行方向の誤り訂正符号から前記列方向の誤り訂正符号を生成し、生成した前記列方向の誤り訂正符号をバッファに書き込むＰＯ演算工程と、誤り訂正単位分の前記列方向の誤り訂正符号が前記バッファに格納された後、前記列方向の誤り訂正符号を前記バッファから読み出して前記メモリに書き込むＰＯ書き込み工程とを備え、前記ＰＯ演算工程は、生成した前記列方向の誤り訂正符号をバッファに格納するとともに、前記データあるいは前記行方向の誤り訂正符号が入力されることに応じて、前記バッファに格納されている前記列方向の誤り訂正符号を読み出し、読み出した列方向の誤り訂正符号と前記入力されたデータあるいは行方向の誤り訂正符号から新たに列方向の誤り訂正符号を生成して前記バッファに書き戻すことを特徴とする。
【００３７】
この発明によれば、ＰＩ／ＰＯ演算処理時におけるメモリアクセス回数を顕著に抑制することができる。
【００３８】
なお、請求項１の発明は、以下に示す実施形態中、実施例１によって具現化されている。また、請求項２の発明は、以下に示す実施形態中、実施例２によって具現化されている。また、請求項３の発明は、以下に示す実施形態中、実施例４によって具現化されている。また、請求項４の発明は、以下に示す実施形態中、実施例３によって具現化されている。また、請求項５の発明は、以下に示す実施形態中、実施例５によって具現化されている。また、請求項６の発明は、以下に示す実施形態中、実施例５の構成に実施例２の構成を組み合わせることによって具現化されている。また、請求項７の発明は、以下に示す実施形態中、実施例５の構成に実施例４の構成を組み合わせることによって具現化されている。さらに、請求項８の発明は、以下に示す実施形態中、実施例５の構成に実施例３の構成を組み合わせることによって具現化されている。
【００３９】
ただし、以下の実施の形態は、あくまでも、本発明を実現する際の一つの例示形態であって、本発明ないし各構成要件の用語の意義は、以下の実施の形態に記載されたものに制限されるものではない。
【発明の効果】
【００４０】
上記の如く本発明によれば、ＥＣＣ処理の際のメモリアクセス回数を低減させることができ、これによりデータ符号化処理の高速化を図ることができる。
【００４１】
本発明のその他の効果ないし意義は、以下に示す実施の形態の説明により更に明らかとなろう。ただし、本発明に特徴は、以下の実施形態によって何ら制限されるものではない。
【発明を実施するための最良の形態】
【００４２】
以下、本発明の実施の形態につき図面を参照して説明する。なお、本実施の形態は、ＤＶＤ記録装置に本発明を適用した場合の構成例を示すものである。
【実施例１】
【００４３】
図１に、実施例に係るディスク記録装置の構成を示す。
【００４４】
図において、１０１は、ＳＤＲＡＭ等によって構成されたメモリ、１０２は、データに対しＩＤを付加するＩＤ付加回路、１０３は、ＩＤ付加回路１０２によって付加されたＩＤに対し誤り検出符号を演算して付加するＩＥＤ演算回路である。なお、ＩＤは、各セクタの論理アドレスである。ＩＤとＩＥＤは、上記図１３（ｂ）に示すヘッダの一部を構成する。
【００４５】
１０４は、各セクタ内のデータに対し誤り検出符号を演算・付加するＥＤＣ演算回路、１０５は、各セクタ内のデータにスクランブル処理を施すスクランブル演算回路、１０６は、スクランブル処理されたデータに対しＰＩ方向（行方向）の誤り訂正符号（ＰＩ符号）を演算・付加するＰＩ演算回路、１０７は、スクランブル処理されたデータとＰＩ符号に対しＰＯ方向（列方向）の誤り訂正符号（ＰＯ符号）を演算・付加するＰＯ演算回路、１０８は、ＰＯ演算回路１０７における演算処理結果（ＰＯ符号）を格納するバッファである。
【００４６】
２００は、メモリ１０１から読み出されたデータに所定の変調を施して記録信号を生成する変調回路、３００は、変調回路２００から入力された記録信号に基づきディスク上にデータを記録する光ピックアップである。
【００４７】
本実施例では、ホストからＩＤ付加回路１０２に対してセクタ単位でデータが供給される。このデータは、ＩＥＤ演算回路１０３とＥＤＣ演算回路１０４にてヘッダとＥＤＣが付加された後、スクランブル演算回路１０５に入力される。
【００４８】
スクランブル演算回路１０５は、入力されたデータにスクランブル処理を施し、メモリ１０１に書き込む。このとき同時に、スクランブル処理後のデータが、ＰＩ演算回路１０６とＰＯ演算回路１０７にそれぞれ入力される。
【００４９】
ＰＩ演算回路１０６は、入力されたデータに対し、１行ずつ、誤り訂正符号演算（ＰＩ符号演算）を実行し、得られたＰＩ符号をその行のデータに付加するようにしてメモリ１０１に書き込む。このとき同時に、各行のＰＩ符号が順次ＰＯ演算回路１０７に入力される。
【００５０】
ＰＯ演算回路１０７は、スクランブル演算回路１０５から入力された１セクタ分のデータと、ＰＩ演算回路１０６から入力されたＰＩ符号から、後述の如く、ＰＯ符号を算出するためのシンドローム演算式を設定し、この演算式をもとに、各列のＰＯ符号を算出する。そして、算出したＰＯ符号を、バッファ１０８に書き込む。
【００５１】
図２は、ＰＯ演算回路１０７における処理動作を示す図である。
【００５２】
ホストからデータ転送が開始された後、最初の１セクタ分のデータとこれに対応するＰＩ符号が、１行ずつ、スクランブル演算回路１０５とＰＩ演算回路１０６からＰＯ演算回路１０７に入力されると（同図（ａ）参照）、ＰＯ演算回路１０７は、これらデータをもとに、ＰＯ符号を算出するためのシンドローム演算式を設定し、この演算式をもとに、誤り訂正符号演算（ＰＯ符号演算）を実行する（同図（ｂ）参照）。そして、この演算で求めたＰＯ符号（演算途中のＰＯ符号）を、バッファ１０８に書き込む（同図（ｃ）参照）。
【００５３】
その後、次の行のデータとこれに対応するＰＩ符号が、スクランブル演算回路１０５とＰＩ演算回路１０６からＰＯ演算回路１０７に入力されると（同図（ｄ）参照）、ＰＯ演算回路１０７は、既にバッファ１０８に書き込まれているＰＯ符号をバッファ１０８から読み出し、読み出したＰＯ符号と、入力された１行分のデータおよびＰＩ符号から、再度、ＰＯ符号を算出するためのシンドローム演算式を設定する。そして、この演算式をもとに、今回入力された１行分のデータおよびＰＩ符号と、バッファ１０８から読み出したＰＯ符号を用いて誤り訂正符号演算（ＰＯ符号演算）を実行し（同図（ｅ）参照）、この演算で求めたＰＯ符号（演算途中のＰＯ符号）を、バッファ１０８に書き戻す（同図（ｆ）参照）。
【００５４】
さらに、続いて、次の１行分のデータとこれに対応するＰＩ符号が、ＰＯ演算回路１０７に入力されると、上記と同様、ＰＯ演算回路１０７は、既にバッファ１０８に書き込まれているＰＯ符号をバッファ１０８から読み出し、読み出したＰＯ符号と、入力された１行分のデータおよびＰＩ符号から、再度、ＰＯ符号を算出するためのシンドローム演算式を設定する。そして、この演算式をもとに、今回入力された１行分のデータおよびＰＩ符号と、バッファ１０８から読み出したＰＯ符号を用いて誤り訂正符号演算（ＰＯ符号演算）を実行し、この演算で求めたＰＯ符号（演算途中のＰＯ符号）を、バッファ１０８に書き戻す。
【００５５】
以下、同様に、ＰＯ演算回路１０７は、１ＥＣＣブロック分の最終行のデータとこれに対応するＰＩ符号が入力されるまで、バッファ１０８に対するＰＯ符号の読み出しおよび書き込みと、誤り訂正符号の演算（ＰＯ符号演算）を実行する。そして、これにより１ＥＣＣブロック分の全ての行のデータおよびＰＩ符号に基づくＰＯ符号がバッファ１０８に書き込まれると、バッファ１０８に格納されたＰＯ符号が読み出され、メモリ１０１内の対応領域にそのまま書き込まれる。これにより、メモリ１０１内に、１ＥＣＣブロック分のデータがマッピングされる。
【００５６】
なお、図示のとおり、バッファ１０８のサイズは、１ＥＣＣ分のＰＯ符号と同じサイズとなっている。
【００５７】
次に、図３を参照して、データ符号化回路１００の処理動作について説明する。
【００５８】
ホストから、ＩＤ付加回路１０２、ＩＥＤ演算回路１０３およびＥＤＣ演算回路１０４を介して、１セクタ分のデータがスクランブル演算回路１０５に入力されると（Ｓ１０１）、入力されたデータに対してスクランブル処理が施され（Ｓ１０２）、スクランブル処理後のデータがメモリ１０１の対応領域に書き込まれる（Ｓ１０３）。同時に、スクランブル後のデータは、スクランブル演算回路１０５から、ＰＩ演算回路１０６とＰＯ演算回路１０７にそれぞれ入力される（Ｓ１０４、１０５）。
【００５９】
この入力を受けて、ＰＩ演算回路１０６は、１セクタ分のデータに対し、行毎に、誤り訂正符号演算（ＰＩ符号演算）を実行し（Ｓ１０６）、得られたＰＩ符号を各行のデータに付加するようにして、メモリ１０１の対応領域に書き込む（Ｓ１０７）。このとき同時に、ＰＩ演算回路１０６は、各行のＰＩ符号を順次ＰＯ演算回路１０７に入力する（Ｓ１０８）。
【００６０】
一方、Ｓ１０５にて、スクランブル後のデータが、スクランブル演算回路１０５からＰＯ演算回路１０７に入力されると、ＰＯ演算回路１０７は、上記図２を参照して説明したとおり、既にバッファ１０８に書き込まれているＰＯ符号をバッファ１０８から読み出し（Ｓ１０９）、読み出したＰＯ符号と、入力された１行分のデータから、ＰＯ符号を算出するためのシンドローム演算式を設定する。そして、ＰＯ演算回路１０７は、この演算式をもとに、今回入力された１行分のデータと、バッファ１０８から読み出したＰＯ符号を用いて誤り訂正符号演算（ＰＯ符号演算）を実行し、ＰＯ符号を求める（Ｓ１１０）。
【００６１】
さらに、Ｓ１０８にて、各行のＰＩ符号がＰＩ演算回路１０６からＰＯ演算回路１０７に入力されると、ＰＯ演算回路１０７は、スクランブルデータが入力されたときと同様、既にバッファ１０８に書き込まれているＰＯ符号をバッファ１０８から読み出し（Ｓ１０９）、読み出したＰＯ符号と、今回入力されたＰＩ符号から、ＰＯ符号を算出するためのシンドローム演算式を設定する。そして、ＰＯ演算回路１０７は、この演算式をもとに、今回入力されたＰＩ符号と、バッファ１０８から読み出したＰＯ符号を用いて誤り訂正符号演算（ＰＯ符号演算）を実行し、ＰＯ符号を求める（Ｓ１１０）。
【００６２】
このようにして求められたＰＯ符号は、順次、バッファ１０８に書き込まれる（Ｓ１１１）。これらの処理は、当該セクタの全ての行に対する処理が終了するまで繰り返される。
【００６３】
当該セクタの全ての行に対する処理が終了すると、ＰＯ符号の演算処理とバッファへの書き込み処理が１ＥＣＣブロックを構成する最後のセクタデータとそのＰＩ符号まで実行されたかが判別される（Ｓ１１２）。
【００６４】
Ｓ１１２における判別がＮＯであれば、Ｓ１０１に戻り、１ＥＣＣブロックを構成する次のセクタに対するスクランブル処理と、ＰＩ符号およびＰＯ符号の演算処理が実行される。これにより、スクランブルされた１セクタ分のデータとそれに対応するＰＩ符号がメモリ１０１に書き込まれ、さらに、先頭セクタから当該セクタまでのＰＯ符号がバッファ１０８に格納される。
【００６５】
Ｓ１０１からＳ１１１までの処理が１ＥＣＣブロックを構成する最終行のセクタデータとそのＰＩ符号まで実行されると（Ｓ１１２：ＹＥＳ）、バッファ１０８に格納されている１ＥＣＣブロック分のＰＯ符号が読み出され、メモリ１０１内の対応領域にそのまま書き込まれる（Ｓ１１３）。これにより、メモリ１０１内に、１ＥＣＣブロック分のセクタデータ、ＰＩ符号およびＰＯ符号がマッピングされ、当該ＥＣＣブロックに対する符号化処理が終了する。
【００６６】
このようにしてメモリ１０１内にマッピングされた１ＥＣＣブロック分のデータは、１行ずつ、変調回路２００へと読み出され、所定の変調が施される。そして、この変調処理により生成された記録信号が光ピックアップ３００に供給され、ディスクに対するデータ記録が行われる。
【００６７】
本実施例によれば、１ＥＣＣブロック分のデータをメモリ１０１にマッピングする際のメモリアクセスが、以下に３工程に抑制される。
(1)スクランブル演算回路１０５にて生成されたスクランブルデータの書き込み、
(2)ＰＩ演算回路１０６にて生成されたＰＩ符号の書き込み、および、
(3)バッファ１０８に格納されたＰＯ符号の書き込み
【００６８】
よって、本発明によれば、上記の従来技術の場合に比べ、ＥＣＣエンコード処理の際のメモリアクセス回数を大幅に低減させることができ、これにより、データ符号化処理の高速化を図ることができる。
【実施例２】
【００６９】
本実施例は、メモリ１０１に対するデータマッピングの方法を改良するものである。
【００７０】
図４（ａ）は、セクタデータとＰＩ符号およびＰＯ符号を、ＥＣＣブロックのデータ構造のまま、メモリにマッピングしたときの状態を示すものである。
【００７１】
この場合、データ記録時には、セクタ１の先頭から１行ずつデータおよびＰＩ符号が読み出され（同図、読み出し１）、変調回路２００に出力される。そして、セクタ１の全ての行について読み出しが終了すると、次に、セクタ１に対応するＰＯ符号が読み出され（同図、読み出し２）、この読み出しが終わると、セクタ２に戻って、セクタ２の先頭から１行ずつデータとＰＩ符号が読み出される。以下、同様に、１ＥＣＣブロックの最後まで、各セクタのデータおよびＰＩ符号とＰＯ符号が交互に読み出され、変調回路２００に出力される。
【００７２】
このように、図４（ａ）のマッピング方法によれば、データ記録時に、セクタ領域とＰＯ符号領域から交互にデータを読み出す必要があり、メモリ１０１に対するアクセス制御が複雑になるとの問題が生じる。本実施例は、この問題を回避するものである。
【００７３】
図４（ｂ）は、本実施例におけるデータマッピング方法を示すものである。
【００７４】
このマッピング方法では、セクタｍ（ｍ＝１、２、…、１６）のマッピング領域とセクタｍ＋１のマッピング領域の間に、セクタｍに対応するＰＯ符号をマッピングするための領域（ＰＯ領域）が確保される。そして、上記図３の処理によってバッファ１０８に１ＥＣＣブロック分のＰＯ符号が格納されると、バッファ１０８から各セクタに対応するＰＯ符号が読み出され、それぞれ、メモリ１００上の対応するＰＯ領域に書き込まれる。
【００７５】
このマッピング方法によれば、データ記録時には、マッピング領域の先頭アドレスから最終アドレスまで順次単調に１行ずつデータを読み出し、変調回路２００に出力すればよい。よって、本実施例によれば、図４（ａ）のマッピング方法に比べ、データ読み出し時におけるメモリ１０１へのアクセス制御を単純化することができる。
【実施例３】
【００７６】
本実施例は、実施例１に比べ、メモリ１０１に対するアクセス頻度をさらに低減しようとするものである。すなわち、上記実施例１では、バッファ１０８に格納されたＰＯ符号を一旦メモリ１０１に書き込み、その後、メモリ１０１からＰＯ符号を読み出して変調回路２００に出力するようにしたが、本実施例では、図５の構成例に示すように、バッファ１０８に格納されたＰＯ符号を、メモリ１０１に書き込まずに、直接、変調回路２００に出力するようにしている。
【００７７】
図６は、変調回路２００に対するデータ出力時の処理フローである。
【００７８】
処理が開始されると、変数Ｋに１がセットされ（Ｓ２０１）、まず、セクタ１の先頭から順次１行分のデータおよびＰＩ符号が読み出され変調回路２００に出力される（Ｓ２０２）。この出力処理がセクタ１について終了すると（Ｓ２０３：ＹＥＳ）、セクタ１に対応するＰＯ符号がバッファ１０８から読み出され、変調回路２００に出力される（Ｓ２０４）。
【００７９】
このようにしてＰＯ符号の読み出しがなされると、変数Ｋに１が加算され（Ｓ２０６）、セクタ２の先頭から順次１行分のデータおよびＰＩ符号が読み出され変調回路２００に出力される（Ｓ２０２）。この出力処理がセクタ２について終了すると（Ｓ２０３：ＹＥＳ）、セクタ２に対応するＰＯ符号がバッファ１０８から読み出され、変調回路２００に出力される（Ｓ２０４）。
【００８０】
以下、セクタ１６まで同様の処理が実行され、変調回路２００に対し、メモリ１０１とバッファ１０８から交互に、データおよびＰＩ符号と、ＰＯ符号が出力される（Ｓ２０５）。そして、セクタ１６に対する処理が終了すると（Ｓ２０５：ＹＥＳ）、当該ＥＣＣブロックについての処理が終了される。
【００８１】
本実施例によれば、バッファ１０８からメモリ１０１に対してＰＯ符号が書き込まれないため、当該書き込み時のメモリアクセスと、メモリ１０１からＰＯ符号を読み出すときのメモリアクセスが、上記実施例１に比べ削減される。よって、本実施例によれば、上記実施例１に比べ、メモリ１０１に対するアクセス頻度をさらに低減することができ、データ符号化処理の高速化を図ることができる。
【００８２】
また、本実施例によれば、メモリ１０１に対してＰＯ符号が書き込まれないため、上記実施例１に比べ、ＰＯ符号の格納領域分だけメモリの記憶領域を削減することができ、メモリ１０１のサイズを減少させることができる。
【実施例４】
【００８３】
本実施例は、上記実施例１に比べ、１ＥＣＣブロック分のデータのエンコード処理に要する時間を短くしようとするものである。
【００８４】
図７に、本実施例の構成を示す。本実施例では、上記実施例１に比べ、ＰＯ符号を格納するためのバッファが一つ追加されている。本実施例では、ＰＯ符号化処理の際に用いるバッファが、１ＥＣＣブロック毎に、バッファＡ１１０とバッファＢ１１１の間で切り替えられる。
【００８５】
図８は、ＰＯ符号化処理時におけるバッファＡ１１０とバッファＢ１１１の使用状態を示すものである。なお、同図中、「ブロック」は、ＥＣＣブロックを意味している。
【００８６】
ブロックｎに対する符号化処理時には、ＰＯ符号の書き込み／読み出し用バッファとして、バッファＡ１１０が用いられる。ブロックｎに対する符号化処理が終了すると、符号化処理時に使用されるバッファがバッファＡ１１０からバッファＢ１１１に切り替えられ、次のブロックｎ＋１に対する符号化処理時には、バッファＢ１１０に対してＰＯ符号の書き込み／読み出しが実行される。
【００８７】
バッファＡ１１０に格納されているＰＯ符号（ブロックｎに対するＰＯ符号）は、ブロックｎ＋１に対しＰＯ符号化処理が行われている途中にバッファＡ１１０から読み出され、メモリ１０１に書き込まれる。そして、ブロックｎ＋１に対する符号化処理が終了すると、符号化処理時に使用されるバッファが再びバッファＢ１１１からバッファＡ１１０に切り替えられ、次のブロックｎ＋２に対する符号化処理時には、バッファＡ１１０に対してＰＯ符号の書き込み／読み出しが実行される。
【００８８】
このように、本実施例によれば、メモリ１０１に対するＰＯ符号の書き込み処理が、そのブロックの符号化処理の際ではなく、次のブロックに対するＰＯ符号化処理期間において行われる。よって、各ブロックに対する符号化処理の所要時間は、メモリ１０１に対するＰＯ符号の書き込み処理を行わない分だけ削減され得る。このため、本実施例によれば、ホストからデータ符号化回路１００に対するデータ転送制御の円滑化を図ることができる。
【００８９】
なお、本実施例においても、上記実施例２に示したデータマッピング方法を適用できる。こうすると、上記実施例２で説明した如く、変調回路２００に対するデータ読み出し時のメモリアクセス制御を単純化することができる。
【実施例５】
【００９０】
本実施例は、実施例１に比べ、回路規模の削減と低消費電力化を図ろうとするものである。
【００９１】
図９に、本実施例の構成を示す。本実施例では、上記実施例１に比べ、スクランブル後の１行分のデータとそれに対応するＰＩ符号を格納するためのバッファ（ＰＩ用バッファ１２１）が追加されている。また、ＰＩ／ＰＯ演算処理回路１２０が、ＰＩ符号とＰＯ符号の演算処理に共用される構成となっている。
【００９２】
図１０に、本実施例における符号化処理時の処理フローを示す。
【００９３】
ホストから、ＩＤ付加回路１０２、ＩＥＤ演算回路１０３およびＥＤＣ演算回路１０４を介して、１セクタ分のデータがスクランブル演算回路１０５に入力されると（Ｓ３０１）、入力されたデータに対してスクランブル処理が施され（Ｓ３０２）、スクランブル処理後の１行分のデータがＰＩ／ＰＯ演算回路１２０に入力される（Ｓ３０３）。これを受けて、ＰＩ／ＰＯ演算回路１２０は、ＰＩ符号の演算を実行し（Ｓ３０４）、得られたＰＩ符号を１行分のデータとともにＰＩ用バッファ１２１に書き込む（Ｓ３０５）。
【００９４】
次に、ＰＩ／ＰＯ符号演算回路１２０は、ＰＩ用バッファ１２１からデータとＰＩ符号を読み出し（Ｓ３０６）、さらに、既にＰＯ用バッファ３０７に格納されているＰＯ符号をＰＯ用バッファ３０７から読み出し、上記図２を参照して説明した如くして、ＰＯ符号演算を実行する（Ｓ３０８）。すなわち、読み出したＰＯ符号と、１行分のデータおよびＰＩ符号から、ＰＯ符号を算出するためのシンドローム演算式を設定し、この演算式をもとにＰＯ符号演算を実行する。ＰＩ／ＰＯ符号演算回路１２０は、これにより算出されたＰＯ符号をＰＯ用バッファに書き戻す（Ｓ３０９）。
【００９５】
しかして、ＰＯ符号の演算処理が行われると、ＰＩ用バッファ１２１に格納されているデータおよびＰＩ符号がメモリ１０１に書き込まれる（Ｓ３１０）。そして、ＰＩ／ＰＯ演算回路１２０による処理が当該セクタの全ての行のデータについて行われていなければ（Ｓ３１１：ＮＯ）、Ｓ３０３に戻り、当該セクタ内の次の行のデータに対する処理が実行される。
【００９６】
この処理は、ＰＩ／ＰＯ演算回路１２０による処理が当該セクタ内の全ての行のデータについて行われるまで繰り返される（Ｓ３１１）。そして、当該セクタに対する処理が終了すると（Ｓ３１１：ＹＥＳ）、Ｓ３１１を介してＳ３０１に戻り、次のセクタに対する処理が実行される。
【００９７】
Ｓ３０１からＳ３１２の処理は、１ＥＣＣブロックを構成する全てのセクタに対する処理が終了するまで、繰り返し実行される（Ｓ３１２）。そして、１ＥＣＣブロックを構成する全てのセクタに対する処理が終了すると（Ｓ３１２：ＹＥＳ）、ＰＯ符号用バッファ１２２に格納されているＰＯ符号が読み出され、メモリ１０１に書き込まれる。
【００９８】
本実施例によれば、ＰＩ符号とＰＯ符号の演算処理がＰＩ／ＰＯ演算処理回路１２０を共用して行われるため、上記実施例１のようにＰＩ符号用とＰＯ符号用に個別に演算処理回路を配する場合に比べ、回路規模を削減でき、且つ、消費電力を抑制することができる。
【００９９】
なお、本実施例においても、上記実施例２に示したデータマッピング方法を適用できる。こうすると、上記実施例２で説明した如く、変調回路２００に対するデータ読み出し時のメモリアクセス制御を単純化することができる。
【０１００】
また、本実施例においても、上記実施例３に示した如く、ＰＯ用バッファ１２２に格納されたＰＯ符号を、直接、変調回路２００に出力するよう構成することができる。こうすると、上記実施例３で説明した如く、メモリ１０１に対するアクセス頻度を低減することができ、また、メモリ１０１のサイズを減少させることができる。
【０１０１】
さらに、本実施例においても、上記実施例４に示した如く、ＰＯ用バッファ１２２を２つのバッファにて構成することができる。こうすると、上記実施例４で説明した如く、各ブロックに対する符号化処理の所要時間を短縮化することができ、これにより、ホストからデータ符号化回路１００に対するデータ転送制御の円滑化を図ることができる。
【０１０２】
以上、本発明の実施形態につき、種々の実施例を例示しながら説明したが、本発明は、これらの実施例に限定されるものではない。また、本発明の実施形態は、これら実施例の他にも種々想定され得る。
【０１０３】
たとえば、図１１に示す如く、スクランブル演算回路１０５とＰＩ演算回路１０６およびＰＯ演算回路１０７の間にバッファ１３０、１３１を介在させ、これらバッファ１３０、１３１に一旦データを格納した後に、随時、データをＰＩ演算回路１０６とＰＯ演算回路１０７に供給するようにすることもできる。
【０１０４】
また、上記実施の形態には、ＤＶＤ記録装置に本発明を適用した場合の構成例と処理動作を例示したが、ＨＤＤＶＤ記録装置に本発明を適用することもできる。
【０１０５】
この他、本発明の実施形態は、特許請求の範囲に記載の発明の範囲内において、種々変更が可能である。
【図面の簡単な説明】
【０１０６】
【図１】実施例１に係るディスク記録装置の構成を示す図
【図２】実施例１に係るＰＯ演算回路の処理動作を説明する図
【図３】実施例１に係るデータ符号化回路の処理フローチャート
【図４】実施例２に係るデータマッピング方法を説明する図
【図５】実施例３に係るディスク記録装置の構成を示す図
【図６】実施例３に係る変調回路にデータを供給する際のフローチャート
【図７】実施例４に係るディスク記録装置の構成を示す図
【図８】実施例４に係るバッファＡ、Ｂの使用方法を説明する図
【図９】実施例５に係るディスク記録装置の構成を示す図
【図１０】実施例５に係るデータ符号化回路の処理フローチャート
【図１１】実施の形態に係るディスク記録装置の変更例を示す図
【図１２】ＤＶＤ記録装置におけるＥＣＣブロックのデータ構造を示す図
【図１３】ＥＣＣブロックが構成されるまでの一般的な処理の流れを示す図
【符号の説明】
【０１０７】
１００  データ符号化回路
１０１  メモリ
１０５  スクランブル演算回路
１０６  ＰＩ演算回路
１０７  ＰＯ演算回路
１１０  バッファＡ（第１のバッファ）
１１１  バッファＢ（第２のバッファ）
１２１  ＰＩ用バッファ
１２２  ＰＯ用バッファ
【図１】
2008010064.tif 000003
【図２】
2008010064.tif 000004
【図３】
2008010064.tif 000005
【図４】
2008010064.tif 000006
【図５】
2008010064.tif 000007
【図６】
2008010064.tif 000008
【図７】
2008010064.tif 000009
【図８】
2008010064.tif 000010
【図９】
2008010064.tif 000011
【図１０】
2008010064.tif 000012
【図１１】
2008010064.tif 000013
【図１２】
2008010064.tif 000014
【図１３】
2008010064.tif 000015