(57)【要約】【課題】誤り訂正符号の算出にかかる処理速度をより高速化することのできる誤り訂正符号発生方法を提供する。【解決手段】ＰＯ演算回路１７１は、ＤＶＤのブロックデータを８ビットからなるシンボルにて行列表記した際の各列のシンボルを順次取り込んで外パリティを算出するための演算を行う。また、ＰＩ演算回路１７２では、ＰＯ演算回路１７１に取り込まれる上記シンボルを順次取り込んで、各行の内パリティを算出するための演算を行う。このＰＩ演算回路１７２の演算結果は、一時保持メモリ１９０に一時的に保持される。【選択図】        図１
2005086307.tif 000002
【特許請求の範囲】
【請求項１】
訂正対象となる所定のデータ量のデータである被訂正符号を所定のビット数からなるシンボルにて行列表記し、その各行及び各列の一方を第１のシンボル群とし、他方を第２のシンボル群としたとき、各第１のシンボル群にそれぞれ第１の誤り訂正符号を付与するとともに第２のシンボル群にそれぞれ第２の誤り訂正符号を付与すべく、外部から各シンボルを取り込んで前記第１及び第２の誤り訂正符号を発生する誤り訂正符号発生方法において、
前記第１のシンボル群を構成する各シンボルを順次取り込んで前記第１の誤り訂正符号を算出するための演算を連続的に行う第１のステップと、
前記第１の誤り訂正符号を算出するために取り込まれる各シンボルを取り込んで前記第２の誤り訂正符号を算出するための演算を断続的に行う第２のステップと、
前記第２のステップにおける第２の誤り訂正符号を算出するための中間データを一時的に保持する第３のステップと、を有し、
前記第２のステップは、前記第１のステップで取り込まれる各シンボルとともに前記第３のステップで一時的に保持した前記中間データに基づいて前記演算を行うものであり、前記第３のステップは、前記第２のステップにおいて演算を行うたびに一時的に保持する前記中間データを更新する
ことを特徴とする誤り訂正符号発生方法。
【請求項２】
前記第２のステップは、最初の第１のシンボル群に対しては前記第１の誤り訂正符号を算出するために取り込まれる各シンボルとともに初期データを取り込んで前記第２の誤り訂正符号を算出するための所定の演算を実行し、２番目以降の第１のシンボル群に対しては前記第１の誤り訂正符号を算出するために取り込まれる各シンボルとともに前記第３のステップで一時的に保持された前記中間データを取り込んで前記第２の誤り訂正符号を算出するための所定の演算を実行する
ことを特徴とする請求項１記載の誤り訂正符号発生方法。
【請求項３】
前記各第１の誤り訂正符号は、所定のシンボル数からなるものであるとともに、前記第２の誤り訂正符号は、これら各第１の誤り訂正符号からそれぞれ１つずつシンボルを集めたものに対しても付与されるものであり、
前記第１のステップにおいて前記各第１の誤り訂正符号が算出されるたびに、算出される第１の誤り訂正符号を外部に転送する第４のステップと、
前記第４のステップに際して転送される第１の誤り訂正符号の各シンボルを用いて前記第２の誤り訂正符号を算出するための演算を行う第５のステップと、
前記第５のステップにおける第２の誤り訂正符号を算出するための中間データを一時的に保持する第６のステップとを更に有し、
前記第５のステップは、前記第６のステップで一時的に保持された前記中間データを用いて演算を行う
ことを特徴とする請求項１又は２記載の誤り訂正符号発生方法。
【請求項４】
前記第１のステップにより前記第１の誤り訂正符号のうちの最後の誤り訂正符号を算出するに際し、対応する第１のシンボル群を構成する各シンボルを用いた前記第２のステップの演算結果及び算出される最後の誤り訂正符号の各シンボルを用いた前記第５のステップの演算結果を第２の誤り訂正符号として一時的に保持する第７のステップを更に有する
ことを特徴とする請求項３記載の誤り訂正符号発生方法。
【請求項５】
前記第４のステップにより全ての前記第１の誤り訂正符号の転送が終了した後、前記第７のステップにより一時保持メモリに保持される第２の誤り訂正符号を外部に転送する第８のステップを更に有する
ことを特徴とする請求項４記載の誤り訂正符号発生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２系統の誤り訂正符号を発生する誤り訂正符号発生方法に関する。
【背景技術】
【０００２】
図６に、ＤＶＤ（Digital Versatile Disc）のデータ記録装置の全体構成を示す。同図６に示されるように、このデータ記録装置においては、ホストコンピュータから転送されるデータは、例えばＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）からなるバッファメモリ３００に一旦備蓄される。そして、このバッファメモリ３００に備蓄されるデータに対し、ディジタル信号処理回路２００により所定のディジタル処理が施される。また、ディジタル信号処理回路２００から出力されるデータに対し、アナログ信号処理回路３１０により所定のアナログ処理が施される。そして、アナログ信号処理回路３１０の出力に基づきピックアップ３２０では、光ディスク（ＤＶＤ）３３０にレーザを照射する。なお、これらディジタル信号処理回路２００や、アナログ信号処理回路３１０、ピックアップ３２０は、マイクロコンピュータ３４０によって統括的に制御される。
【０００３】
ここで、上記ディジタル信号処理回路２００内で行われる処理について更に説明する。
【０００４】
すなわち、ホストコンピュータから転送されるデータは、ホストインターフェース２１０を介して上記バッファメモリ３００との間のアクセスを司るメモリインターフェース２２０へと転送される。そして、メモリインターフェース２２０では、アドレス発生回路２３０によって発生されるバッファメモリ３００のアドレスデータに基づき対応する記憶領域にアクセスし、ホストインターフェース２１０から転送されるデータを同記憶領域に記憶する。
【０００５】
また、メモリインターフェース２２０では、アドレス発生回路２３０によって発生されるアドレスデータに基づき、バッファメモリ３００の対応する記憶領域へアクセスすることで、ディジタル信号処理回路２００内の各処理回路とバッファメモリ３００との間のデータの授受を仲介する。そして、これにより、バッファメモリ３００に備蓄されるデータに対して各種ディジタル処理が施されるようになる。
【０００６】
すなわち、ＩＥＤ処理回路２４０を通じて、バッファメモリ３００に備蓄されるデータのＤＶＤのデータフォーマットにおける各セクタ毎に２バイトのＩＥＤ（ID Error Detection Code）データが付与される。また、ＥＤＣ処理回路２５０を通じて、上記各セクタ毎に４バイトのＥＤＣ（Error Detection Code）データが付与される。また、スクランブル処理回路２６０を通じて、ホストコンピュータから転送されてきたデータに対して所定のスクランブル処理が施される。
【０００７】
こうして、ＩＥＤデータ及びＥＤＣデータが付与されて且つスクランブル処理が施されたデータに対して、ＥＣＣ処理回路２７０を通じて誤り訂正符号が付与される。更に、誤り訂正符号が付与されたデータには、８−１６変調回路２８０を通じて、所定のインターリーブ処理、８−１６変調処理、ＮＲＺＩ変調処理が施される。そして、８−１６変調回路２８０により所定の処理が施されたデータは、アナログ信号処理回路３１０に転送される。
【０００８】
ここで、上記ＥＣＣ処理回路２７０における処理について更に説明する。
【０００９】
図７に、ＤＶＤにおける誤り訂正符号を有する符号語である１ブロックのデータを示す。同図７には、誤り訂正符号による訂正対象となるデータである被訂正符号が、８ビットのデータからなるシンボル「Ｂi,j（ｉ＝０〜１９１、ｊ＝０１７１）」にて行列表記さ
れている。
【００１０】
そして、被訂正符号のうち１７２列からなる各列「Ｂ0,0〜Ｂ191,0、Ｂ0,1〜Ｂ191,1、…、Ｂ0,171〜Ｂ191,171」のシンボル群に対して、それぞれ１６バイトからなる外パリティ（ＰＯ：outer code parity）「Ｂ192,0〜Ｂ207,0、Ｂ192,1〜Ｂ207,1、…、Ｂ192,171〜Ｂ207,171」が付与されている。また、被訂正符号のうち１９２行からなる各行「Ｂ0,0〜Ｂ0,171、Ｂ1,0〜Ｂ1,171、…、Ｂ191,0〜Ｂ191,171」のシンボル群に対して、それぞれ１０バイトからなる内パリティ（ＰＩ：inner code parity）「Ｂ0,172〜Ｂ0,181、Ｂ1,172〜Ｂ1,181、…、Ｂ191,172〜Ｂ191,181」が付与されている。更に、上記外パリティの各行「Ｂ192,0〜Ｂ192,171、…、Ｂ207,0〜Ｂ207,171」に対しても、上記内パリティ「Ｂ192,172〜Ｂ192,181、…、Ｂ207,172〜Ｂ207,181」が付与されている。
【００１１】
このように、ＤＶＤにあっては、外パリティ及び内パリティの２系統の誤り訂正符号が付与されている。そして、こうした２系統の誤り訂正符号は、先の図６に示したＥＣＣ処理回路２７０によって算出される。すなわち、ＥＣＣ処理回路２７０は、演算部２７１とラッチ部２７２とを備えており、演算部２７１では、上記シンボル群等を構成する各シンボルとラッチ部２７２でラッチされたデータとに基づき誤り訂正符号を算出するための演算を行う。
【００１２】
例えば第０列目の外パリティ「Ｂ192,0〜Ｂ207,0」を算出する際には、ＥＣＣ処理回路２７０において、同第０列目のシンボル群を構成する各シンボル「Ｂ0,0〜Ｂ191,0」を順に取り込み、演算を行う。この演算結果は、外パリティと同じ１６バイトのデータ量を有し、この演算結果に関するデータがラッチ部２７２にラッチされる。そして、被訂正符号を構成する最後の行のシンボル「Ｂ191,0」を取り込んで演算を行った演算結果が、外パリティとなる。
【００１３】
また、例えば第０行目の内パリティ「Ｂ0,172〜Ｂ0,181」を算出する際には、ＥＣＣ処理回路２７０では、同第０行目のシンボル群を構成する各シンボル「Ｂ0,0〜Ｂ0,171」を順に取り込み、演算を行う。この演算結果は、内パリティと同じ１０バイトのデータ量を有し、この演算結果に関するデータがラッチ部２７２にラッチされる。そして、被訂正符号を構成する最後の列のシンボル「Ｂ0,171」を取り込んで演算を行った演算結果が、外パリティとなる。
【００１４】
ちなみに、この図６に示すディジタル信号処理回路２００における処理は、図８に模式的に示すように時分割にて行われる。ここで、図８（ａ）、図８（ｂ）は、上記ホストインターフェース２１０から上記バッファメモリ３００へ転送されるデータがどのブロックに対応するかを示す。また、図８（ｃ）〜図８（ｈ）は、ＩＥＤが付与されるデータ、ＥＤＣが付与されるデータ、スクランブル処理されるデータ、外パリティが付与されるデータ、内パリティが付与されるデータ、上記８−１６変調回路によって処理されるデータがそれぞれどのブロックのデータであるかをそれぞれ示している。
【００１５】
なお、従来の誤り訂正手法としてはこの他に、例えば下記特許文献１の段落［００４２］〜［００４３］に記載のものがある。
【特許文献１】特開平１０−６３４３３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
ところで、上記ディジタル信号処理回路２００では、図８に示したように、時分割でバッファメモリ３００へのアクセスを行うために、誤り訂正符号を算出する処理を行ってい
るときには、ＥＣＣ処理回路２７０によりバッファメモリ３００へのアクセスが占有されることとなる。そして、他の処理回路からバッファメモリ３００へのアクセスは待機状態となる。
【００１７】
特に、ＥＣＣ処理回路２７０では、これら外パリティと内パリティとの２系統の誤り訂正符号を算出する処理を行うことなどから、その処理時間がディジタル信号処理回路２００における一連の処理に占める割合は大きなものとなっている。したがって、例えば光ディスク３３０に倍速でデータを記録する等、ディジタル信号処理回路２００の処理の高速化が要求されるときに、その要求を満たすことが困難なものとなっていた。
【００１８】
本発明はこうした実情に鑑みてなされたものであり、その目的は、誤り訂正符号の算出にかかる処理速度をより高速化することのできる誤り訂正符号発生方法を提供することにある。
【課題を解決するための手段】
【００１９】
この発明は、訂正対象となる所定のデータ量のデータである被訂正符号を所定のビット数からなるシンボルにて行列表記し、その各行及び各列の一方を第１のシンボル群とし、他方を第２のシンボル群としたとき、各第１のシンボル群にそれぞれ第１の誤り訂正符号を付与するとともに第２のシンボル群にそれぞれ第２の誤り訂正符号を付与すべく、外部から各シンボルを取り込んで前記第１及び第２の誤り訂正符号を発生する誤り訂正符号発生方法において、前記第１のシンボル群を構成する各シンボルを順次取り込んで前記第１の誤り訂正符号を算出するための演算を連続的に行う第１のステップと、前記第１の誤り訂正符号を算出するために取り込まれる各シンボルを取り込んで前記第２の誤り訂正符号を算出するための演算を断続的に行う第２のステップと、前記第２のステップにおける第２の誤り訂正符号を算出するための中間データを一時的に保持する第３のステップと、を有し、前記第２のステップは、前記第１のステップで取り込まれる各シンボルとともに前記第３のステップで一時的に保持した前記中間データに基づいて前記演算を行うものであり、前記第３のステップは、前記第２のステップにおいて演算を行うたびに一時的に保持する前記中間データを更新することで、誤り訂正符号の算出にかかる処理速度をより高速化することが可能となる。
【発明の効果】
【００２０】
本発明によれば、誤り訂正符号の算出にかかる処理速度をより高速化することができるようになる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明にかかる誤り訂正符号発生方法をＤＶＤの誤り訂正符号発生方法に適用した一実施形態について、図面を参照しつつ説明する。
【００２２】
図１に、本実施形態にかかるＤＶＤのデータ記録装置のうち、ディジタル信号処理回路１００及びバッファメモリ３００の構成を示す。これらディジタル信号処理回路１００やバッファメモリ３００は、先の図６に示したディジタル信号処理回路２００やバッファメモリ３００と対応しており、また、これらの周囲には、先の図６に示したマイクロコンピュータ３４０やアナログ信号処理回路３１０、ピックアップ３２０等が備えられている。
【００２３】
図１に示すディジタル信号処理回路１００においても、ホストインターフェース１１０や、メモリインターフェース１２０、アドレス発生回路１３０、ＩＥＤ処理回路１４０、ＥＤＣ処理回路１５０、スクランブル処理回路１６０、ＥＣＣ処理回路１７０、８−１６変調回路１８０を備えている。これらのうち、ホストインターフェース１１０や、メモリインターフェース１２０、ＩＥＤ処理回路１４０、ＥＤＣ処理回路１５０、スクランブル処理回路１６０については、先の図６に示した対応する処理回路と同一である。
【００２４】
ここで、本実施形態にかかるＥＣＣ処理回路１７０について更に説明する。
【００２５】
このＥＣＣ処理回路１７０は、先の図７に示した各列のシンボル群を構成する各シンボルを取り込んで外パリティを算出する演算を連続的に行うＰＯ演算回路１７１と、このＰＯ演算回路１７１に取り込まれる各シンボルを取り込んで内パリティを算出するための演算を断続的に行うＰＩ演算回路１７２とを備えている。ここでＰＯ演算回路１７１は、演算部１７１ａ及びラッチ部１７１ｂを備えており、演算部１７１ａでは、ラッチ部１７１ｂによってラッチされる１６バイトのデータと外部から取り込まれる上記各シンボルとに基づき外パリティの算出にかかる演算を行う。また、ＰＩ演算回路１７２は、演算部１７２ａ及びラッチ部１７２ｂを備えており、演算部１７２ａでは、ラッチ部１７２ｂによってラッチされる１０バイトのデータと上記各シンボルとに基づき内パリティの算出にかかる演算を行う。
【００２６】
更に、ＥＣＣ処理回路１７０は、ＰＩ演算回路１７２に取り込まれるデータを、ＰＯ演算回路１７１に取り込まれる各シンボルとするか、同ＰＯ演算回路１７１から出力される外パリティを構成する各シンボルとするかを選択するセレクタ１７３を備えている。また、ＥＣＣ処理回路１７０は、ＰＯ演算回路１７１で算出される外パリティやＰＩ演算回路１７２で算出される内パリティを所定のタイミングで選択的にメモリインターフェース１２０に出力するセレクタ１７４を備えている。更に、ＥＣＣ処理回路１７０は、ＰＯ演算回路１７１のラッチ部１７１ｂによってラッチされるデータが更新された回数をカウントするカウンタ１７５を備えており、このカウント値によりセレクタ１７３、１７４が制御される構成となっている。
【００２７】
また、ＰＩ演算回路１７２の演算結果（ラッチ部１７２ｂにラッチされる１０バイトのデータ）は、例えばＳＲＡＭ（Static Random Access Memory）からなる一時保持メモリ１９０に一時的に保持される。この一時保持メモリ１９０は、各内パリティ「Ｂ0,172〜Ｂ0,181、Ｂ1,172〜Ｂ1,181、…、Ｂ207,172〜Ｂ207,181」毎に、１０バイトの記憶領域を有するものとなっている。
【００２８】
以下、本実施形態にかかる内パリティ及び外パリティの算出にかかる処理について、図２〜図４を参照しつつ説明する。
【００２９】
図２に、本実施形態にかかる内パリティ及び外パリティの算出にかかる処理手順を示す。また、図３及び図４は、内パリティ及び外パリティの算出態様を示すタイムチャートである。ちなみに、図３（ａ１）、図３（ａ２）、図４（ａ１）、図４（ａ２）は、上記バッファメモリ３００に対するアクセスに関するデータを示している。また、図３（ｂ１）、図３（ｂ２）、図４（ｂ１）は、上記ＰＯ演算回路１７１の演算結果（ラッチ部１７１ｂにラッチされる１６バイトのデータ）を、また、図３（ｃ１）、図３（ｃ２）、図４（ｃ１）は、上記ＰＩ演算回路１７２の演算結果（ラッチ部１７２ｂにラッチされる１０バイトのデータ）をそれぞれ示している。更に、図３（ｄ１）、図３（ｄ２）、図４（ｄ１）、図４（ｄ２）は、上記内パリティの各行に割り当てられた一時保持メモリ１９０の各記憶領域に記憶されるデータを示している。
【００３０】
同図２に示す一連の処理においては、まずステップＳ１０において、上記バッファメモリ３００に記憶されている該当するブロックを構成するシンボルのうち、外パリティの付与されるシンボル群を構成する各シンボルを順次読み出す。すなわち、図３（ａ１）に示す第０列目のシンボル群「Ｂ0,0〜Ｂ191,0」を構成する各シンボルを順次読みした後、図３（ａ２）に示す第１列目のシンボル群「Ｂ0,1〜Ｂ191,1」を構成する各シンボルを順次読み出すというように先の図７に示した行列の各列に沿ったシンボルを順次読み出す。ちなみに、バッファメモリ３００へのアクセスは、先の図１に示したアドレス発生回路１３０によって発生されるアドレスに基づいて行われる。
【００３１】
そして、図２のステップＳ２０において、上記ＰＯ演算回路１７１では、各シンボルが取り込まれる毎に、ラッチ部１７１ｂにラッチされるデータとこの新たに取り込まれたシンボルとから外パリティの算出にかかる演算を行う。そして、演算結果としてのデータは、上記ラッチ部１７１ｂに新たにラッチされることとなる。ちなみに、図３（ｂ１）及び図３（ｂ２）は、各シンボルを取り込んで新たに行われる演算結果についての１６バイトのデータ（ラッチ部１７１ｂに新たにラッチされるデータ）を示している。例えば、第０列第０行のシンボル（Ｂ0,0）に基づいた演算結果を「０列（０）」と、また、第０列第１行のシンボル（Ｂ1,0）に基づいた演算結果を「０列（１）」とそれぞれ表記している。
【００３２】
ここで、各列において第０行目のシンボル「Ｂ0,0、Ｂ0,1、…」を取り込む際には、上記ラッチ部１７１ｂは初期化されており、この初期化されたラッチ部１７１ｂから出力される初期データと第０行目のシンボルとに基づいて演算が行われる。続く各列の第１行目から第１９１行目までの各シンボルを取り込んで演算を行う際には、上記ラッチ部１７１ｂにラッチされている１６バイトのデータである中間データが、換言すれば前回の演算結果が用いられる。すなわち、例えば第０列第１行目のシンボル「Ｂ1,0」を取り込んだ際には中間データ「０列（０）」が、また例えば、第１列第１行目のシンボル「Ｂ1,1」を取り込んだ際には中間データ「１列（０）」がそれぞれ用いられる。
【００３３】
一方、こうした外パリティの付与される各列のシンボル群を構成するシンボルが上記ＰＯ演算回路１７１に取り込まれると、図２のステップＳ３０において、これら各シンボルを、図３（ｃ１）、図３（ｃ２）に示すように上記ＰＩ演算回路１７２にも取り込む。ただし、こうしてＰＩ演算回路１７２に取り込む各シンボルは、内パリティを演算するためのシンボルを取り込む順番とはなっていない。このため、ＰＩ演算回路１７２で演算された演算結果（ラッチ部１７２ｂでラッチされる１０バイトのデータ）は、一時保持メモリ１９０の対応する記憶領域に逐次記憶される。
【００３４】
すなわち、図３に示すように、例えば上記外パリティの付与される第０列目の各シンボル「Ｂ0,0〜Ｂ191,0」を取り込んで演算する毎に、その中間データ「０行（０）」、「１行（０）」、…「１９１行（０）」を一時保持メモリ１９０の対応する記憶領域にそれぞれ一旦記憶する。また例えば、上記外パリティの付与される第１列目の各シンボル「Ｂ0,1〜Ｂ191,1」を取り込んで演算する毎に、その中間データ「０行（１）」、「１行（１）」、…「１９１行（１）」を一時保持メモリ１９０の対応する記憶領域にそれぞれ一旦記憶する。
【００３５】
ここで、図３（ｃ１）に示されるように、外パリティの付与される第０列目の各シンボルを用いて上記ＰＩ演算回路１７２による演算を行う際には、ラッチ部１７２ｂをそれぞれ初期化しておき、この初期化されたラッチ部１７２ｂから出力される初期データと第０列目のシンボルとに基づいて演算が行われる。そして、上記外パリティの付与される第１列目から第１７１列目までの各シンボルを演算部１７１ａに取り込むタイミングに同期して、取り込まれるシンボルに対応する行の内パリティを算出するための演算結果（中間データ）であって一時保持メモリ１９０に記憶されている前回の演算結果をラッチ部１７２ｂに取り込む。例えば第１列第０行目のシンボル「Ｂ0,1」を取り込む際には中間データ「０行（０）」を、また、例えば第１列第１行目のシンボル「Ｂ1,1」を取り込む際には中間データ「１行（０）」を、一時保持メモリ１９０から取り込む。なお、各内パリティを算出するための演算の中間データを一時保持メモリ１９０に記憶する際には、同内パリティに対応する前回の中間データに上書きするようにする。すなわち、一時保持メモリ１９０に保持されている対応する中間データを更新する。
【００３６】
一方、図２のステップＳ４０では、各列において第０行目から第１９１行目までのシンボルに基づいた演算が行われたか否かを判断する。これは、上記ラッチ部１７１ｂにてラッチされるデータの更新回数を上記カウンタ１７５によってカウントすることで判断する。
【００３７】
ここで、各列において第０行目から第１９１行目までのシンボルに基づいた演算が行われた時点では、ラッチ部１７１ｂには、各列の外パリティがラッチされることとなる。例えば第０列第１９１行目のシンボル「Ｂ191,0」を用いた演算結果「０列（１９１）」は第０列目の外パリティ「Ｂ192,0〜Ｂ207,0」となり、また、例えば第１列第１９１行目のシンボル「Ｂ191,1」を用いた演算結果「１列（１９１）」は第１列目の外パリティ「Ｂ192,1〜Ｂ207,1」となる。そして、上記ステップＳ４０において各列において第０行目から第１９１行目までのシンボルに基づいた演算が行われた旨判断されると、ステップＳ５０に移行する。ステップＳ５０では、上記セレクタ１７４が切り替え制御され、外パリティ「Ｂ192,0〜Ｂ207,0、Ｂ192,1〜Ｂ207,1、…」のうちの対応する列の外パリティを上記バッファメモリ３００に順次転送する。
【００３８】
更に、図２のステップＳ６０に示すように、上記セレクタ１７３を切り替え制御することで、外パリティを構成する各シンボルをバッファメモリ３００に転送する際、同シンボルをＰＩ演算回路１７２に転送する。これにより、ＰＩ演算回路１７２では、第０行目から第１９１行目についての内パリティに加えて、外パリティを構成する第１９２行目から第２０７行目についての内パリティを算出する為の演算を行うことができる。
【００３９】
一方、図２のステップＳ７０においては、第１７１列目の外パリティ「Ｂ192,171〜Ｂ207,171」がバッファメモリ３００に転送されたか否かを上記カウンタ１７５によるカウント値に基づき判断する。すなわち、図４（ａ１）〜図４（ｄ１）に示すように、第１７１列目の外パリティの算出及び転送までの処理が終了したか否かを判断する。ちなみに、第１７１列目の被訂正符号及び外パリティを構成する各シンボルを用いて上記ＰＩ演算回路１７２にて行われる演算結果「０行（１７１）」、「１行（１７１）」、…「２０７行（１７１）」は、各行の内パリティとなっている。そして、ステップＳ７０において、上記第１７１列目の外パリティが転送されたと判断されるとステップＳ８０に移行する。このステップＳ８０おいては、上記セレクタ１７４を切り替え制御し、図４（ａ２）、図４（ｄ２）に示されるように、一時保持メモリ１９０に保持されている内パリティを第０行目の内パリティから順に転送する。
【００４０】
このように、本実施形態では外パリティと内パリティとを算出する処理を同時に行うことで、図５に示すように、誤り訂正符号の算出にかかる処理時間を低減することができるようになる。ちなみに、図５（ａ）、図５（ｂ）は、上記ホストインターフェースから上記バッファメモリ３００へ転送されるデータがどのブロックに対応するかを示す。また、図５（ｃ）〜図５（ｈ）は、ＩＥＤが付与されるデータ、ＥＤＣが付与されるデータ、スクランブル処理されるデータ、外パリティが付与されるデータ、内パリティが付与されるデータ、上記８−１６変調回路によって処理されるデータがそれぞれどのブロックのデータであるかをそれぞれ示している。また、同図５に示すように、外パリティの処理及び内パリティの処理のためにバッファメモリ３００が占有される時間が短縮されるため、高倍速への追従やデータの記録制御に際してバッファメモリ３００に対する他のアクセス要求に迅速に対応することもできるようになる。
【００４１】
なお、本実施形態においては、ＰＯ演算回路１７１やＰＩ演算回路１７２で一回の演算を行う周期を、バッファメモリ３００との間でデータの授受を行う周期以下に設定している。すなわち本実施形態では、ディジタル信号処理回路１００における動作クロックの１クロックでＰＯ演算回路１７１やＰＩ演算回路１７２での１回の演算を行う。
【００４２】
これに対し、上記バッファメモリ３００が例えばＳＤＲＡＭである場合、これへのアクセス周期は、例えば行アドレス指定に１クロック、列アドレス指定に１クロック、プリチャージ動作に１クロックの合計３クロック要することとなる。ただし、上記外パリティの算出のために読み出されるシンボルをバッファメモリの記憶領域の行方向に沿って記憶することで、行アドレスを一定としたまま列アドレスを指定していくページモードを利用したアクセスを行う場合には、列アドレスを指定するのみで記憶領域を指定するため、バッファメモリ３００へのアクセス周期は、１クロックとなる。
【００４３】
以上説明した本実施形態によれば、以下の効果が得られるようになる。
【００４４】
（１）先の図７に示した各列のシンボルを順次取り込んで外パリティを算出する演算を行うと同時に、同シンボルを取り込んで内パリティを算出する演算を行うようにした。これにより、これら誤り訂正符号の算出にかかる処理速度をより高速化することができるようになる。
【００４５】
（２）外パリティをバッファメモリ３００に転送する際、この転送される外パリティを構成する各シンボルをＰＩ演算回路１７２で取り込んで内パリティを算出するための演算を行うようにした。これにより、バッファメモリ３００に転送された外パリティを読み出して新たに内パリティを算出する場合と比較して、バッファメモリ３００へのアクセス回数を低減することができる。
【００４６】
（３）第１７１列目の外パリティ（最後の外パリティ）を算出するに際し、対応する列の被訂正符号及び同第１７１列目の外パリティの各シンボルを用いたＰＩ演算回路１７２の演算結果を一時保持メモリ１９０に一旦保持するようにした。これにより、第１７１列目の外パリティの算出にかかる処理や、同外パリティの転送にかかる処理を円滑に行うことができる。
【００４７】
（４）外パリティの全てをバッファメモリ３００に転送した後に内パリティをバッファメモリ３００に転送するために、こうした内パリティの転送にかかる処理とＥＣＣ処理回路１７０内における他の処理との干渉を好適に回避することができるようになる。
【００４８】
（５）一時保持メモリ１９０を、各行に対応した内パリティ毎に、それぞれ内パリティのデータ量に等しい記憶領域を有する構成とした。そして、一時保持メモリ１９０に新たな演算結果を記憶する際には、対応する記憶領域に上書きするようにした。これにより、内パリティと外パリティとを同時に算出する際に要求される必要最小限の記憶領域とすることができる。
【００４９】
なお、上記実施形態は、以下のように変更して実施してもよい。
【００５０】
・内パリティを算出する演算を行うにあたり、一時保持メモリ１９０に保持される演算結果を読み出し演算を行った際の新たな演算結果を、必ずしも読み出された演算結果が記憶された記憶領域に保持しなくてもよい。例えば一時保持メモリの記憶領域を拡大し、各演算結果を別の記憶領域に記憶するようにしても、少なくとも先の実施形態の上記（１）の効果を得ることはできる。
【００５１】
・内パリティをバッファメモリ３００に転送するタイミングを全ての外パリティをバッファメモリ３００に転送した後としなくても、少なくとも先の実施形態の上記（１）の効果を得ることはできる。
【００５２】
・バッファメモリ３００に外パリティを一旦備蓄した後、これを読み出すことで第１９２行目から第２０７行目までの内パリティを演算するようにしても、少なくとも先の実施
形態の上記（１）の効果を得ることはできる。
【００５３】
・第１のシンボル群を構成するシンボルを順次取り込み第１の誤り訂正符号を算出するための演算を連続的に行う第１のステップと、第１の誤り訂正符号を算出するために取り込まれるシンボルを用いて第２の誤り訂正符号を算出するための演算を断続的に行う第２のステップとは、図２に示したものに限らない。すなわち、例えば第１のステップで内パリティを算出するものとし、第２のステップで外パリティを算出するものとしてもよい。この場合、第２のステップにおける第２の誤り訂正符号を算出するための中間データを一時的に保持する第３のステップでは、外パリティについての中間データを一時的に保持する。
【００５４】
・上記第１〜第３のステップにかかる処理は、先の図１に示したような専用の回路によって行うものに限らず、例えば適宜のハードウェア手段上で可動するソフトウェアによって行ってもよい。なお、先の図２に示す処理をソフトウェア処理とする場合、例えばステップＳ２０とステップＳ３０との順番は任意である。
【００５５】
・誤り訂正符号を有する符号語のフォーマットとしては、先の図６に例示したＤＶＤのデータフォーマットに限らない。要は、訂正対象となる所定のデータ量のデータである被訂正符号を所定のビット数からなるシンボルにて行列表記し、その各行及び各列の一方を各第１のシンボル群、他方を各第２のシンボル群としてそれぞれに第１の誤り訂正符号、第２の誤り訂正符号が付与されるものであればよい。
【図面の簡単な説明】
【００５６】
【図１】本発明にかかる誤り訂正符号発生方法をＤＶＤの誤り訂正符号発生方法に適用した一実施形態について、これを実施する装置を示すブロック図。
【図２】同実施形態における誤り訂正符号の算出処理手順を示すフローチャート。
【図３】同実施形態における外パリティ及び内パリティの算出にかかる処理態様を示すタイムチャート。
【図４】同実施形態における外パリティ及び内パリティの算出にかかる処理態様を示すタイムチャート。
【図５】同実施形態における各種ディジタル処理の時分割態様を示すタイムチャート。
【図６】従来のＤＶＤのデータ記録装置の構成を示すブロック図。
【図７】ＤＶＤにおける誤り訂正符号を有する符号語を示す図。
【図８】従来の各種ディジタル処理の時分割態様を示すタイムチャート。
【符号の説明】
【００５７】
１００…ディジタル信号処理回路、１１０…ホストインターフェース、１２０…メモリインターフェース、１３０…アドレス発生回路、１４０…ＩＥＤ処理回路、１５０…ＥＤＣ処理回路、１６０…スクランブル処理回路、１７０…ＥＣＣ処理回路、１７１…ＰＯ演算回路、１７１ａ…演算部、１７１ｂ…ラッチ部、１７２…ＰＩ演算回路、１７２ａ…演算部、１７２ｂ…ラッチ部、１７３、１７４…セレクタ、１７５…カウンタ、１８０…８−１６変調回路、１９０…一時保持メモリ。
【図１】
2005086307.tif 000003
【図２】
2005086307.tif 000004
【図３】
2005086307.tif 000005
【図４】
2005086307.tif 000006
【図５】
2005086307.tif 000007
【図６】
2005086307.tif 000008
【図７】
2005086307.tif 000009
【図８】
2005086307.tif 000010