(57)【要約】【課題】誤り訂正符号の算出にかかる処理速度をより高速化することのできる誤り訂正符号発生回路を提供する。【解決手段】ＰＯ演算回路１７１は、ＤＶＤのブロックデータを８ビットからなるシンボルにて行列表記した際の各列のシンボルを順次取り込んで外パリティを算出するための演算を行う。また、ＰＩ演算回路１７２では、ＰＯ演算回路１７１に取り込まれる上記シンボルを順次取り込んで、各行の内パリティを算出するための演算を行う。このＰＩ演算回路１７２の演算結果は、一時保持メモリ１９０に一時的に保持される。【選択図】        図１
2005086432.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」がバッファメモリ３００に転送されると、図３（ａ２）、図３（ｄ２）に示されるように、一時保持メモリ１９０に保持されている内パリティを第０行目の内パリティから順に転送する。これは、上記カウンタ１７５によるカウント値に基づき、上記セレクタ１７４が切り替え制御されることで行われる。
【００３９】
このように、本実施形態では外パリティと内パリティとを算出する処理を同時に行うことで、図４に示すように、誤り訂正符号の算出にかかる処理時間を低減することができるようになる。ちなみに、図４（ａ）、図４（ｂ）は、上記ホストインターフェースから上記バッファメモリ３００へ転送されるデータがどのブロックに対応するかを示す。また、図４（ｃ）〜図４（ｈ）は、ＩＥＤが付与されるデータ、ＥＤＣが付与されるデータ、スクランブル処理されるデータ、外パリティが付与されるデータ、内パリティが付与されるデータ、上記８−１６変調回路によって処理されるデータがそれぞれどのブロックのデータであるかをそれぞれ示している。また、同図４に示すように、外パリティの処理及び内パリティの処理のためにバッファメモリ３００が占有される時間が短縮されるため、高倍速への追従性やデータの記録制御に際してバッファメモリ３００への他のアクセス要求に迅速に対応することもできるようになる。
【００４０】
なお、本実施形態においては、ＰＯ演算回路１７１やＰＩ演算回路１７２で一回の演算を行う周期を、バッファメモリ３００との間でデータの授受を行う周期以下に設定している。すなわち本実施形態では、ディジタル信号処理回路１００における動作クロックの１クロックでＰＯ演算回路１７１やＰＩ演算回路１７２での１回の演算を行う。
【００４１】
これに対し、上記バッファメモリ３００が例えばＳＤＲＡＭである場合、これへのアクセス周期は、例えば行アドレス指定に１クロック、列アドレス指定に１クロック、プリチャージ動作に１クロックの合計３クロック要することとなる。ただし、上記外パリティの算出のために読み出されるシンボルをバッファメモリの記憶領域の行方向に沿って記憶することで、行アドレスを一定としたまま列アドレスを指定していくページモードを利用したアクセスを行う場合には、列アドレスを指定するのみで記憶領域を指定するため、バッファメモリ３００へのアクセス周期は、１クロックとなる。
【００４２】
以上説明した本実施形態によれば、以下の効果が得られるようになる。
【００４３】
（１）先の図６に示した各列のシンボルを順次取り込んで外パリティを算出するＰＯ演算回路１７１と、同シンボルを取り込んで内パリティを演算するＰＩ演算回路１７２と、ＰＩ演算回路１７２の演算結果を一時的に保持する一時保持メモリ１９０とを備えた。これにより、外パリティと内パリティとを算出する演算を同時に行うことができるようになり、ひいては、これら誤り訂正符号の算出にかかる処理速度をより高速化することができるようになる。
【００４４】
（２）外パリティをバッファメモリ３００に転送する際、この転送される外パリティを構成する各シンボルをＰＩ演算回路１７２で取り込んで内パリティを算出するための演算を行うようにした。これにより、バッファメモリ３００に転送された外パリティを読み出して新たに内パリティを算出する場合と比較して、バッファメモリ３００へのアクセス回数を低減することができる。
【００４５】
（３）第１７１列目の外パリティ（最後の外パリティ）を算出するに際し、対応する列の被訂正符号及び同第１７１列目の外パリティの各シンボルを用いたＰＩ演算回路１７２の演算結果を一時保持メモリ１９０に一旦保持するようにした。これにより、第１７１列目の外パリティの算出にかかる処理や、同外パリティの転送にかかる処理を円滑に行うことができる。
【００４６】
（４）外パリティの全てをバッファメモリ３００に転送した後に内パリティをバッファメモリ３００に転送するために、こうした内パリティの転送にかかる処理とＥＣＣ処理回路１７０内における他の処理との干渉を好適に回避することができるようになる。
【００４７】
（５）一時保持メモリ１９０を、各行に対応した内パリティ毎に、それぞれ内パリティのデータ量に等しい記憶領域を有する構成とした。そして、一時保持メモリ１９０に新たな演算結果を保持する際には、対応する記憶領域に上書きするようにした。これにより、内パリティと外パリティとを同時に算出する際に要求される必要最小限の記憶領域とすることができる。
【００４８】
（６）ＥＣＣ処理回路１７０をハードウェア手段にて構成することで、外パリティや内パリティの演算をいっそう高速化することができるようになる。
【００４９】
なお、上記実施形態は、以下のように変更して実施してもよい。
【００５０】
・内パリティをバッファメモリ３００に転送するタイミングが全ての外パリティをバッファメモリ３００に転送した後でなくても、少なくとも先の実施形態の上記（１）の効果を得ることはできる。
【００５１】
・バッファメモリ３００に外パリティを一旦備蓄した後、これを読み出すことで第１９２行目から第２０７行目までの内パリティを演算するようにしても、少なくとも先の実施形態の上記（１）の効果を得ることはできる。
【００５２】
・第１のシンボル群を構成する各シンボルを順次取り込んで第１の誤り訂正符号を算出するための演算を連続的に行う第１の演算回路と、第１の演算回路によって取り込まれる各シンボルを取り込んで第２の誤り訂正符号を算出するための演算を断続的に行う第２の演算回路とは、上記構成に限らない。すなわち、例えば第１の演算回路を内パリティを算出するものとし、第２の演算回路を外パリティを算出するものとしてもよい。この場合、一時保持メモリには、第２の演算回路の演算結果としての外パリティの演算結果を一時的に保持する。
【００５３】
・誤り訂正符号を有する符号語のフォーマットとしては、先の図６に例示したＤＶＤのデータフォーマットに限らない。要は、訂正対象となる所定のデータ量のデータである被訂正符号を所定のビット数からなるシンボルにて行列表記し、その各行及び各列の一方を第１のシンボル群、他方を各第２のシンボル群としてそれぞれに第１の誤り訂正符号、第２の誤り訂正符号が付与されるものであればよい。
【図面の簡単な説明】
【００５４】
【図１】本発明にかかる誤り訂正符号発生回路をＤＶＤのディジタル信号処理回路に適用した一実施形態の構成を示すブロック図。
【図２】同実施形態における外パリティ及び内パリティの算出にかかる処理態様を示すタイムチャート。
【図３】同実施形態における外パリティ及び内パリティの算出にかかる処理態様を示すタイムチャート。
【図４】同実施形態における各種ディジタル処理の時分割態様を示すタイムチャート。
【図５】従来のＤＶＤのデータ記録装置の構成を示すブロック図。
【図６】ＤＶＤにおける誤り訂正符号を有する符号語を示す図。
【図７】従来の各種ディジタル処理の時分割態様を示すタイムチャート。
【符号の説明】
【００５５】
１００…ディジタル信号処理回路、１１０…ホストインターフェース、１２０…メモリインターフェース、１３０…アドレス発生回路、１４０…ＩＥＤ処理回路、１５０…ＥＤＣ処理回路、１６０…スクランブル処理回路、１７０…ＥＣＣ処理回路、１７１…ＰＯ演算回路、１７１ａ…演算部、１７１ｂ…ラッチ部、１７２…ＰＩ演算回路、１７２ａ…演算部、１７２ｂ…ラッチ部、１７３、１７４…セレクタ、１７５…カウンタ、１８０…８−１６変調回路、１９０…一時保持メモリ。
【図１】
2005086432.tif 000003
【図２】
2005086432.tif 000004
【図３】
2005086432.tif 000005
【図４】
2005086432.tif 000006
【図５】
2005086432.tif 000007
【図６】
2005086432.tif 000008
【図７】
2005086432.tif 000009