(57)【特許請求の範囲】
【請求項１】
Ｘ1〜Ｘjを未知数とし有限体の元Ｃ11〜Ｃjj及びＣ1〜Ｃjを既知数とする連立方程式である、
Ｃ1＝Ｃ11Ｘ1＋Ｃ12Ｘ2＋・・・＋Ｃ1jＸj
Ｃ2＝Ｃ21Ｘ1＋Ｃ22Ｘ2＋・・・＋Ｃ2jＸj
Ｃ3＝Ｃ31Ｘ1＋Ｃ32Ｘ2＋・・・＋Ｃ3jＸj
・・・・・・・・・・・・・・・・・・・・・
Ｃj＝Ｃj1Ｘ1＋Ｃj2Ｘ2＋・・・＋ＣjjＸj
の解を求めエラー訂正を行うエラー訂正回路であって、
前記Ｃ1〜Ｃjを初期値として記憶する定数項記憶部と、
入力が前記定数項記憶部に電気的に接続され、ベクトル表現のデータを指数表現のデータに変換するＶＥ変換器と、
入力が前記ＶＥ変換器に電気的に接続され、指数表現のデータの乗除算を行う乗除算器と、
入力が前記乗除算器に電気的に接続され、指数表現のデータをベクトル表現のデータに変換するＥＶ変換器と、
入力が前記ＥＶ変換器に電気的に接続されると共に出力が前記定数項記憶部及び前記ＶＥ変換器に電気的に接続され、ベクトル表現のデータの加算を行う加算器とを含み、
前記定数項記憶部に記憶される定数項又は該定数項に有限体の元を乗除算したものを項とする式の値を前記ＶＥ変換器、前記乗除算器、前記ＥＶ変換器及び前記加算器を用いて求め、連立方程式のすべての同値式の定数項が前記定数項記憶部に常に記憶されるように求められた式の値を前記定数項記憶部に戻し、連立方程式の同値変形を行うことで未知数を順次消去しながら連立方程式の解を求めることを特徴とするエラー訂正回路。
【請求項２】
請求項１において、
解くべき連立方程式が、
Ｓ0  ＝               ε1 ＋               ε2 ＋・・・＋                εj
Ｓ1  ＝         αｉ１ε1 ＋         αｉ２ε2 ＋・・・＋          αｉｊεj
Ｓ2  ＝       α２ｉ１ε1 ＋       α２ｉ２ε2 ＋・・・＋        α２ｉｊεj
Ｓ3  ＝       α３ｉ１ε1 ＋       α３ｉ２ε2 ＋・・・＋        α３ｉｊεj
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
Ｓj-1＝α（ｊ−１）ｉ１ε1 ＋ α（ｊ−１）ｉ２ε2 ＋・・・＋α（ｊ−１）ｉｊεj
と表され（αは有限体の原始元）、
シンドロームＳ0〜Ｓj-1と、エラー位置から特定される係数αｉ１〜α（ｊ−１）ｉｊとに基づいて、エラー値ε1〜εjを求めることを特徴とするエラー訂正回路。
【請求項３】
請求項２において、
αｒ（αｒはαｉ１〜α（ｊ−１）ｉｊのいずれか）と前記定数項記憶部に記憶される定数項Ｒp0の乗除算αｒＲp0に定数項Ｒp1を加算し、αｒと定数項Ｒp1の乗除算αｒＲp1に定数項Ｒp2を加算し、αｒと定数項Ｒp2の乗除算αｒＲp2に定数項Ｒp3を加算し、・・・・・・・・αｒと定数項Ｒpq-2の乗除算αｒＲpq-2に定数項Ｒpq-1を加算し、αｒと定数項Ｒpq-1の乗除算αｒＲpq-1に定数項Ｒpqを加算することで連立方程式の同値変形を行うと共に、
前記乗除算器の入力に電気的に接続される第１の記憶部にαｒの指数ｒを記憶しておき、この記憶された指数ｒに基づいてαｒとＲp0〜Ｒpq-1の乗除算を行うことを特徴とするエラー訂正回路。
【請求項４】
請求項２又は３において、
αｒ（αｒはαｉ１〜α（ｊ−１）ｉｊのいずれか）と前記定数項記憶部に記憶される定数項Ｒp0の乗除算αｒＲp0に定数項Ｒp1を加算し、αｒと定数項Ｒp1の乗除算αｒＲp1に定数項Ｒp2を加算し、αｒと定数項Ｒp2の乗除算αｒＲp2に定数項Ｒp3を加算し、・・・・・・・・・・・αｒと定数項Ｒpq-2の乗除算αｒＲpq-2に定数項Ｒpq-1を加算し、αｒと定数項Ｒpq-1の乗除算αｒＲpq-1に定数項Ｒpqを加算することで連立方程式の同値変形を行うと共に、
前記定数項記憶部から前記加算器及び前記乗除算器に入力されるＲp1に基づいて、αｒＲp0とＲp1の加算とαｒとＲp1の乗除算を同時に行い、前記定数項記憶部から前記加算器及び前記乗除算器に入力されるＲp2に基づいて、αｒＲp1とＲp2の加算とαｒとＲp2の乗除算を同時に行い、・・・・・・・前記定数項記憶部から前記加算器及び前記乗除算器に入力されるＲpq-1に基づいて、αｒＲpq-2とＲpq-1の加算とαｒとＲpq-1の乗除算とを同時に行うことを特徴とするエラー訂正回路。
【請求項５】
請求項２乃至４のいずれかにおいて、
ｄ1〜ｄjを有限体の元とした場合に、
0003543577.tif 000042
の同値式に連立方程式を同値変形し、
上記同値式よりε1〜εjを求めることを特徴とするエラー訂正回路。
【請求項６】
請求項５において、
前記加算器の入力に電気的に接続される第２の記憶部にｄ1を記憶しておき、このｄ1を用いて演算した(ｄ1＋ｄ2)、(ｄ1＋ｄ3)・・・(ｄ1＋ｄj-1)、(ｄ1＋ｄj)に基づき(Ｓ0)ｊ−１のε1の係数の乗積数を減らし、第２の記憶部にｄ2を記憶しておき、このｄ2を用いて演算した(ｄ2＋ｄ3)、(ｄ2＋ｄ4)・・・(ｄ2＋ｄj-1)、(ｄ2＋ｄj)に基づき(Ｓ0)Ｊ−２のε2の係数の乗積数を減らし・・・・・・第２の記憶部にｄj-2を記憶しておき、このｄj-2を用いて演算した(ｄj-2＋ｄj-1)、(ｄj-2＋ｄj)に基づき(Ｓ0)２のεj-2の係数の乗積数を減らすことを特徴とするエラー訂正回路。
【請求項７】
請求項１乃至６のいずれかのエラー訂正回路と、
前記エラー訂正回路の訂正対象となるデータを記憶する情報記録媒体にアクセスするためのアクセス手段と、
前記エラー訂正回路により訂正されたデータに基づき画像又は音を出力するための手段とを含むことを特徴とする電子機器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エラー訂正回路及びこれを用いた電子機器に関し、特に、小さな回路規模で高速に連立方程式の解を求めることができるエラー訂正回路に関する。
【０００２】
【背景技術及び発明が解決しようとする課題】
マルチメディア時代の到来に伴い、高品質の画像データ、音データ等を記憶可能な大容量の光ディスクに対する要望が高まっている。このような背景の下で、近年、ＣＤ（Compact Disc）に変わる光ディスクとしてＤＶＤ（Digital Video Disc、Digital Versatile Disc）と呼ばれるものが脚光を浴びつつある。
【０００３】
このＤＶＤの規格においては、ＲＳＰＣ（Reed-Solomon Product Code、リードソロモン積符号）と呼ばれるエラー訂正手法が採用されている。そしてＤＶＤにおけるＥＣＣ（Error Correction Code）のブロックは３２ｋバイトを１単位とする大きなブロックとなっており、低い冗長度で高い訂正能力を確保している。例えば消失訂正を行えば、外符号ＰＯにより１６個までのエラー訂正（１６重消失訂正）が可能であり、これによりＥＣＣブロックの１６行に相当するデータがすべて失われても回復できるようになる。
【０００４】
さてＣＤにおいて採用されるエラー訂正手法であるＣＩＲＣ（Cross Interleave Reed-Solomon Code）で４重消失訂正を行った場合、解くべき連立方程式は、
【数１】
0003543577.tif 000002
となる。そして、この連立方程式の解は、
【数２】
0003543577.tif 000003
となり、この解を求めることでエラー値を求めることになる。
【０００５】
一方、ＤＶＤで１６重消失訂正を行った場合、解くべき連立方程式は、
【数３】
0003543577.tif 000004
というように１６元の連立方程式になる。そしてこの１６元の連立方程式の解を求める計算式は、
【数４】
0003543577.tif 000005
というように非常に複雑になる。例えばＳ７の係数を求めるためには15Ｃ7＝６４５３回の加算が必要になる。従って、このような計算式を用いてエラー値を求めるのは非現実的である。
【０００６】
一方、ＰＯによりエラー位置、エラー値の両方を求めるエラー訂正を行う場合、８重エラー訂正が可能となる。即ち８個のエラー位置と８個のエラー値を求めることができる。そしてこれらの８個のエラー位置、エラー値を求める手法としてユークリッドの互除法と呼ばれものが知られている。
【０００７】
しかしながら、このユークリッドの互除法を実現する回路はその規模が大きくなり演算に多くの時間を要するという課題がある。
【０００８】
本発明は、以上のような課題を解決するためになされたものであり、その目的とするところは、エラー訂正のための連立方程式の解を少ない回路規模で高速に求めることができるエラー訂正回路及びこれを用いた電子機器を提供することにある。
【０００９】
【課題を解決するための手段】
上記課題を解決するために本発明に係るエラー訂正回路は、Ｘ1〜Ｘjを未知数とし有限体の元Ｃ11〜Ｃjj及びＣ1〜Ｃjを既知数とする連立方程式である、
0003543577.tif 000006
の解を求めエラー訂正を行うエラー訂正回路であって、前記Ｃ1〜Ｃjを初期値として記憶する定数項記憶部と、入力が前記定数項記憶部に電気的に接続され、ベクトル表現のデータを指数表現のデータに変換するＶＥ変換器と、入力が前記ＶＥ変換器に電気的に接続され、指数表現のデータの乗除算を行う乗除算器と、入力が前記乗除算器に電気的に接続され、指数表現のデータをベクトル表現のデータに変換するＥＶ変換器と、入力が前記ＥＶ変換器に電気的に接続されると共に出力が前記定数項記憶部及び前記ＶＥ変換器に電気的に接続され、ベクトル表現のデータの加算を行う加算器とを含み、前記定数項記憶部に記憶される定数項又は該定数項に有限体の元を乗除算したものを項とする式の値を前記ＶＥ変換器、前記乗除算器、前記ＥＶ変換器及び前記加算器を用いて求め、連立方程式のすべての同値式の定数項が前記定数項記憶部に常に記憶されるように求められた式の値を前記定数項記憶部に戻し、未知数を順次消去しながら連立方程式の解を求めることを特徴とする。
【００１０】
本発明によれば、例えばＣ1／Ｃ1j＋Ｃ2／Ｃ2j等の式の値が、ＶＥ変換器、乗除算器、ＥＶ変換器、加算器等により演算される。そしてこのような式の値の演算を繰り返すことで、未知数を順次消去する同値変形が行われ、連立方程式の解が求められる。この際、本発明では、連立方程式のすべての同値式の定数項が定数項記憶部に常に記憶されるように、求められた式の値が定数項記憶部に戻される。これにより解の導出に必要な情報が失われて解が導出不能になることを有効に防止できる。そして、少ない記憶容量の定数項記憶部を用いて、多元の連立方程式であっても効率よく解を求めることが可能となる。
【００１１】
また本発明は、解くべき連立方程式が、
0003543577.tif 000007
と表され（αは有限体の原始元）、シンドロームＳ0〜Ｓj-1と、エラー位置から特定される係数αi1〜α(j-1)ijとに基づいて、エラー値ε1〜εjを求めることを特徴とする。このようにすることで、エラー位置が予め既知となっている消失訂正を実現することが可能となる。なお本発明によれば、例えば消失訂正ではない通常のエラー訂正（エラー個数の判定、エラー値、エラー位置の導出）も同一のハードウェア構成で実現できる。このようにすることで、ハードウェア資源の有効利用、回路の小規模化、制御の簡易化を図れる。
【００１２】
また本発明は、αr（αrはαi1〜α(j-1)ijのいずれか）と前記定数項記憶部に記憶される定数項Ｒp0の乗除算αrＲp0に定数項Ｒp1を加算し、αrと定数項Ｒp1の乗除算αrＲp1に定数項Ｒp2を加算し、αrと定数項Ｒp2の乗除算αrＲp2に定数項Ｒp3を加算し、・・・・・・・・・・・・・・・・・・・・・αrと定数項Ｒpq-2の乗除算αrＲpq-2に定数項Ｒpq-1を加算し、αrと定数項Ｒpq-1の乗除算αrＲpq-1に定数項Ｒpqを加算することで連立方程式の同値変形を行うと共に、前記乗除算器の入力に電気的に接続される第１の記憶部にαrの指数ｒを記憶しておき、この記憶された指数ｒに基づいてαrとＲp0〜Ｒpq-1の乗除算を行うことを特徴とする。このようにすることで、αrにＲp0〜Ｒpq-1を乗除算する毎にαrを他の記憶部等から読み出す必要がなくなり、例えば初めの１回の読み出し動作だけで済ませることが可能となる。これにより処理の大幅な高速化を図れる。
【００１３】
また本発明は、αr（αrはαi1〜α(j-1)ijのいずれか）と前記定数項記憶部に記憶される定数項Ｒp0の乗除算αrＲp0に定数項Ｒp1を加算し、αrと定数項Ｒp1の乗除算αrＲp1に定数項Ｒp2を加算し、αrと定数項Ｒp2の乗除算αrＲp2に定数項Ｒp3を加算し、・・・・・・・・・・・・・・・・・・・・・αrと定数項Ｒpq-2の乗除算αrＲpq-2に定数項Ｒpq-1を加算し、αrと定数項Ｒpq-1の乗除算αrＲpq-1に定数項Ｒpqを加算することで連立方程式の同値変形を行うと共に、前記定数項記憶部から前記加算器及び前記乗除算器に入力されるＲp1に基づいて、αrＲp0とＲp1の加算とαrとＲp1の乗除算を同時に行い、前記定数項記憶部から前記加算器及び前記乗除算器に入力されるＲp2に基づいて、αrＲp1とＲp2の加算とαrとＲp2の乗除算を同時に行い、・・・・・・・・・・・・・・前記定数項記憶部から前記加算器及び前記乗除算器に入力されるＲpq-1に基づいて、αrＲpq-2とＲpq-1の加算とαrとＲpq-1の乗除算とを同時に行うことを特徴とする。このようにすることで、加算器による加算と乗除算器による乗除算を並列実行できるようになるため、処理を大幅に高速化できる。特に本発明は、連立方程式が多元になればなるほどその演算効率が高くなるという利点を有している。
【００１４】
また本発明は、ｄ1〜ｄjを有限体の元とした場合に、
0003543577.tif 000008
の同値式に連立方程式を同値変形し、上記同値式よりε1〜εjを求めることを特徴とする。このように同値変形することで効率よく連立方程式の解を求めることができる。
【００１５】
また本発明は、前記加算器の入力に電気的に接続される第２の記憶部にｄ1を記憶しておき、このｄ1を用いて演算した(ｄ1＋ｄ2)、(ｄ1＋ｄ3)・・・(ｄ1＋ｄj-1)、(ｄ1＋ｄj)に基づき(Ｓ0)j-1のε1の係数の乗積数を減らし、第２の記憶部にｄ2を記憶しておき、このｄ2を用いて演算した(ｄ2＋ｄ3)、(ｄ2＋ｄ4)・・・(ｄ2＋ｄj-1)、(ｄ2＋ｄj)に基づき(Ｓ0)J-2のε2の係数の乗積数を減らし・・・・・・・・・・・・第２の記憶部にｄj-2を記憶しておき、このｄj-2を用いて演算した(ｄj-2＋ｄj-1)、(ｄj-2＋ｄj)に基づき(Ｓ0)2のεj-2の係数の乗積数を減らすことを特徴とする。本発明によれば例えば、ｄ1を用いて演算した(ｄ1＋ｄ2)、(ｄ1＋ｄ3)に基づき、(Ｓ0)j-1のε1の係数の乗積数を、(ｄ1＋ｄ3)(ｄ1＋ｄ4)・・・・(ｄ1＋ｄj-1)(ｄ1＋ｄj)、(ｄ1＋ｄ4)・・・・(ｄ1＋ｄj-1)(ｄ1＋ｄj)というように減らしてゆくことができる。そして例えばε1の係数が(ｄ1＋ｄ3)(ｄ1＋ｄ4)・・・・(ｄ1＋ｄj-1)(ｄ1＋ｄj)となった(Ｓ0)j-1を(Ｓ0)j-2に加算することで、(Ｓ0)j-2からε1を消去できる。またε1の係数が(ｄ1＋ｄ4)・・・・(ｄ1＋ｄj-1)(ｄ1＋ｄj)となった(Ｓ0)j-1を(Ｓ0)j-3に加算することで、(Ｓ0)j-3からε1を消去できる。そして本発明によれば、係数の乗積数を減らす処理を行う毎に、ｄ1を他の記憶部から読み出してくる必要がなく、例えば初めの１回の読み出し動作だけで済ませることが可能となる。これにより処理の大幅な高速化を図れる。
【００１６】
また本発明に係る電子機器は、上記のいずれかのエラー訂正回路と、前記エラー訂正回路の訂正対象となるデータを記憶する情報記録媒体にアクセスするためのアクセス手段と、前記エラー訂正回路により訂正されたデータに基づき画像又は音を出力するための手段とを含むことを特徴とする。本発明によれば、情報記録媒体から読み出されたデータに対するエラー訂正処理を高速化できると共に高い訂正能力を確保できる。これにより電子機器内部で行われる処理の高速化等を図れ、電子機器の快適な操作環境等をユーザーに提供できる。
【００１７】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。
【００１８】
（実施形態１）
１．システム構成
図１に本実施形態のエラー訂正回路１１０を含む信号処理回路１００の機能ブロック図を示す。
【００１９】
ここで復調回路１０２は、ＤＶＤから読み出したデータの復調処理を行うものであり、例えばデータスライサ、ＰＬＬ、同期検出・保護回路などを含む。
【００２０】
エラー訂正回路１１０は、ＰＩ復号器１１２、ＰＯ復号器１１４を含み、後述する手法によりエラー訂正を行う。
【００２１】
デスクランブル回路１２０は、符号時にスクランブルされたデータをデスクランブルするものである。符号時にスクランブルすることで、０が連続して続くデータや１が連続して続くデータがＤＶＤに記録されることを防止できる。
【００２２】
ＤＶＤＥＤＣ回路１３０は、エラー訂正回路１１０によるエラー訂正後のデータのエラー検出を行うものである。このエラー検出を行うことによりエラー訂正回路１１０により誤訂正が行われても場合にも、これに対処できるようになる。
【００２３】
ＲＡＭ１４０は、データＲＡＭ１４２とポインタＲＡＭ１４４を含む。そしてエラー訂正回路１１０のエラー訂正の結果得られたエラーポインタはポインタＲＡＭ１４４に記憶される。
【００２４】
２．ＥＣＣブロック
図２（Ａ）に、ＤＶＤで規格化されているＥＣＣブロックの構造を示す。このＥＣＣブロックにより、図２（Ｂ）に示すような内符号ＰＩ、外符号ＰＯを用いた積符号（リードソロモン積符号）のエラー訂正が可能となる。そして図２（Ａ）に示すように、内符号ＰＩは、符号長１８２バイト、情報シンボル数１７２バイト、検査シンボル数１０バイトの符号となっている。また外符号ＰＯは、符号長２０８バイト、情報シンボル数１９２バイト、検査シンボル数１６バイトの符号となっている。従って、ＰＩを用いることで５重エラー訂正（５個のエラー位置と５個のエラー値）までが可能となる。またＰＯを用いることで８重エラー訂正（８個のエラー位置と８個のエラー値）あるいは１６重消失訂正（１６個のエラー値）までが可能となる。１６重消失訂正を行えば、最大１６行に相当する２９１２バイトのデータがすべて失われても回復可能となり、バーストエラーに対して高い訂正能力を確保することが可能となる。
【００２５】
３．符号化
本実施形態による復号化について説明する前に、ＤＶＤにおけるＲＳＰＣ（リードソロモン積符号）の符号化についてまず説明する。
【００２６】
符号時には、まず対象となるデータに外符号ＰＯを付加する。即ち、
ＧＰ０（Ｘ）｜ＦＯ（Ｘ）                                      （５）
が成り立つようなＰＯ（Ｂ192,m，Ｂ193,m，・・・Ｂ207,m）を求め付加する。即ちＧＰＯ（Ｘ）がＦＯ（Ｘ）で割り切れるようなＰＯを付加する。ここで、
ＦＯ（Ｘ）＝Ｂ0,mＸ207＋Ｂ1,mＸ206＋・・・＋Ｂ206,mＸ＋Ｂ207,m   （６）
ＧＰＯ（Ｘ）＝（Ｘ＋１）（Ｘ＋α）・・・（Ｘ＋α15）             （７）
である。例えば図２（Ａ）の１列目（m＝０）では、Ｆ０（Ｘ）＝Ｂ0,0Ｘ207＋Ｂ1,0Ｘ206＋・・・＋Ｂ206,0Ｘ＋Ｂ207,0 が、ＧＰＯ（Ｘ）で割り切れるようなＰＯ（Ｂ192,0，Ｂ193,0，・・・Ｂ207,0）が付加される。
【００２７】
次に内符号ＰＩを付加する。即ち、
ＧＰＩ（Ｘ）｜ＦＩ（Ｘ）                                      （８）
ＦＩ（Ｘ）＝Ｂn,0Ｘ181＋Ｂn,1Ｘ180＋・・・＋Ｂn,180Ｘ＋Ｂn,181   （９）
ＧＰＩ（Ｘ）＝（Ｘ＋１）（Ｘ＋α）・・・(Ｘ＋α9）             （１０）
となるようなＰＩ（Ｂn,172，Ｂn,172，・・・Ｂn,181）を求め付加する。例えば図２（Ａ）の１行目（n＝０）では、Ｆ０（Ｘ）＝Ｂ0,0Ｘ181＋Ｂ0,1Ｘ180＋・・・＋Ｂ0,180Ｘ＋Ｂ0,181 が、ＧＰＩ（Ｘ）で割り切れるようなＰＩ（Ｂ0,172，Ｂ0,172，・・・Ｂ0,181）が付加される。
【００２８】
４．ＰＩ復号
次に図１のＰＩ復号器１１２が行うＰＩ復号について簡単に説明する。
【００２９】
本実施形態ではＰＩ復号器１１２において２重エラー訂正を行っている。図３にＰＩ復号器１１２の動作を説明するためのフローチャートを示す。図３に示すように本実施形態では以下に示す判断基準にしたがってＰＩによるエラー訂正を行っている。
【００３０】
（Ａ１）シンドロームＳ0〜Ｓ9がすべて０の場合にはエラー無しと判断し、ＰＩポインタを０に設定する（ステップＳＰ1〜ＳＰ3）。
【００３１】
なおこのＰＩポインタは図１のポインタＲＡＭ１４４に記憶される。またシンドロームについては後に詳述する。
【００３２】
（Ａ２）Ｓ0〜Ｓ9がすべて０ではなく且つＡ＝Ｂ＝Ｃ＝０の場合にはエラーが１個と判断し、１エラー訂正を行うと共にＰＩポインタを０に設定する（ＳＰ4〜ＳＰ7）。
【００３３】
なお本実施形態では、Ａ＝Ｓ0Ｓ2＋Ｓ1Ｓ1、Ｂ＝Ｓ0Ｓ3＋Ｓ1Ｓ2、Ｃ＝Ｓ1Ｓ3＋Ｓ2Ｓ2と定義している。
【００３４】
（Ａ３）Ａ、Ｂ、Ｃがすべて０でない場合にはエラーが２個と判断し、２エラー訂正を行うとともにＰＩポインタを０に設定する（ＳＰ8〜ＳＰ11）。
【００３５】
（Ａ４）上記（Ａ１）、（Ａ２）、（Ａ３）のどれにも当てはまらない場合には、エラーが３個以上と判断し、ＰＩポインタを１に設定する（ＳＰ12〜ＳＰ14）。
【００３６】
５．ＰＯ復号
次に図１のＰＯ復号器１１４が行うＰＯ復号について説明する。
【００３７】
本実施形態ではＰＯ復号器１１４において、まず２重エラー訂正を試み、この２重エラー訂正によりエラーが３個以上と判定された場合に、１６重消失訂正を行う。図４、図５にＰＯ復号器１１４の動作を説明するためのフローチャートを示す。図４、図５に示すように本実施形態では以下に示す判断基準にしたがってＰＯによるエラー訂正を行っている。
【００３８】
（Ｂ１）シンドロームＳ0〜Ｓ15がすべて０の場合にはエラー無しと判断し、ＰＯポインタを０に設定する（ＴＰ1〜ＴＰ3）。
【００３９】
（Ｂ２）Ｓ0〜Ｓ15がすべて０ではなく且つＡ＝Ｂ＝Ｃ＝０の場合にはエラーが１個と判断し、１エラー訂正を行うと共にＰＯポインタを０に設定する（ＴＰ4〜ＴＰ7）。
【００４０】
（Ｂ３）Ａ、Ｂ、Ｃがすべて０でない場合にはエラーが２個と判断し、２エラー訂正を行うとともにＰＯポインタを０に設定する（ＴＰ8〜ＴＰ11）。
【００４１】
（Ｂ４）上記（Ｂ１）、（Ｂ２）、（Ｂ３）のどれにも当てはまらない場合には、エラーが３個以上の可能性があると判断する（ＴＰ12、ＴＰ13）。そして図５のフローチャートに示すようにＰＩポインタを図１のポインタＲＡＭ１４４から読み出す（ＴＰ14）。
【００４２】
図６に示すように、読み出したＰＩポインタを参照することで、ＰＩ復号で訂正しきれなかったエラーの個数やエラーの位置を知ることができる。そしてＰＩポインタに基づいてエラーが１７個以上であると判断された場合には、ＰＯポインタを１に設定する（ＴＰ15、ＴＰ16）。このようにＰＯポインタが１に設定された場合には、ＤＶＤからデータを再度読み出す等の処理が行われることになる。
【００４３】
一方、１６個以下であると判断された場合には、ＰＩポインタにより特定されるエラー位置に基づいて１６重消失訂正を行い、ＰＯポインタを０に設定する（ＴＰ17、ＴＰ18）。
【００４４】
６．連立方程式の導出
次に１６重消失訂正における１６個のエラー値を求めるための１６元連立方程式の導出について説明する。
【００４５】
今、Ｂn（n ＝０、１・・・２０７）を正しいデータとする。但し、説明を簡単にするためにＢn,mをＢnと表記する。すると上式（６）より、
ＦＯ（Ｘ）＝Ｂ0Ｘ207＋Ｂ1Ｘ206＋・・・＋Ｂ206Ｘ＋Ｂ207         （１１）
となる。また上式（５）、（７）より、
ＧＰ０（Ｘ）｜ＦＯ（Ｘ）                                    （１２）
ＧＰ０（Ｘ）＝（Ｘ＋１）（Ｘ＋α）・・・（Ｘ＋α15）           （１３）
が成り立つ。従って、上式（１１）は、
ＦＯ（１）＝ＦＯ（α）＝ＦＯ（α2）＝・・・＝ＦＯ（α15）＝０  （１４）
と等価になる。
【００４６】
ここでＷi（ｉ＝０，１，・・・２０７）をＤＶＤから読み出したデータとし、
Ｗi＝Ｂi＋ｅi                                               （１５）
というようにＷiを正しいデータＢiとエラーデータｅiで表す。また、
ＦＷ（Ｘ）＝Ｗ0Ｘ207＋Ｗ1Ｘ206＋・・・＋Ｗ206Ｘ＋Ｗ207         （１６）
Ｅ（Ｘ）＝ｅ0Ｘ207＋ｅ1Ｘ206＋・・・＋ｅ206Ｘ＋ｅ207         （１７）
と定義する。すると、
0003543577.tif 000009
となる。すると上式（１４）より、
0003543577.tif 000010
が成り立つ。即ち、
ＦＷ（αj）＝Ｅ（αj）  （ｊ＝０，１，・・・１５）             （２０）
となる。ここで、
Ｓj＝ＦＷ（αj）                                            （２１）
と定義する。このＳjはシンドロームと呼ばれる。そして、
Ｓj＝Ｗ0(αj)207＋Ｗ1(αj)206＋・・・＋Ｗ206αj＋Ｗ207         （２２）
であり、Ｗ0，Ｗ１，・・・Ｗ207、αjは既知であるためＳjは既知の値となる。
【００４７】
求めたいのは上式（１７）のＥ（Ｘ）である。上式（１７）において一般的にはエラー位置とエラー値が未知数になるが、本実施形態では、ＰＩポインタにより１６カ所のエラー位置ｉk（k＝１，２，・・・１６、０≦ｉk≦２０７）がわかっている。また説明を簡単にするためにエラー位置ｉ1，ｉ2，・・・ｉ16でのエラーの値をε1，ε2，・・・ε16（εk＝ｅl、l＝207−ik）と表記する。すると、
Ｅ（Ｘ）＝ε1Ｘi1＋ε2Ｘi2＋・・・＋ε16Ｘi16                  （２３）
となる。ここで式（２０）、（２１）より、
0003543577.tif 000011
となる。従って、式（２３）、（２４）より、
0003543577.tif 000012
という１６元の連立方程式が成り立つ。ここでＳ0〜Ｓ1５は上式（２２）に示すように既知であり、ε1〜ε16に係る係数αi1〜α15i16（i1〜ｉ16）も既知である。そして式が１６個あるため１６個の未知数ε1〜ε16を求めることができる。なおαは有限体（ガロア体）の原始元であり、Ｓ0〜Ｓ15及びαi1〜α15i16は有限体の元になっている。
【００４８】
本実施形態の目的は、上記の連立方程式（２５）の解を小規模の回路構成で高速に求めることができる解導出手法を提供することにある。
【００４９】
７．ＰＯ復号器のハードウェア構成
図７は、ＰＯ復号器１１４の構成例を示す機能ブロック図である。このＰＯ復号器１１４のハードウェア構成を利用することで上記の連立方程式（２５）の解を小規模な回路構成で高速に求めることができる。
【００５０】
制御回路１０は、ＰＯ復号器１１４全体の制御を行うものであり、ＰＯ復号器１１４内の各部分を適正に動作させるための制御信号等を出力する。
【００５１】
シンドローム生成部１２は、入力されるデータＷ0〜Ｗ207に基づき上式（２２）に従った演算を行い、シンドロームＳ0〜Ｓ15を求める。このシンドローム生成部１２の機能は、例えばレジスタやＥＸ＿ＯＲ（排他的論理和回路）などのハードウェアにより実現される。
【００５２】
定数項記憶部２０は、本実施形態の主要部であり、シンドローム生成部１２からのＳ0〜Ｓ15を初期値として記憶すると共に連立方程式の同値変形により得られる同値式の定数項を記憶する。この際、連立方程式のすべての同値式の定数項が常に記憶されるように定数項記憶部２０は制御される。
【００５３】
ＶＥ変換器２２は、ベクトル表現のデータを指数表現のデータに変換するものであり、その機能は例えばＲＯＭなどのハードウェアにより実現される。
【００５４】
乗除算器２４は、指数表現のデータの乗算又は除算を行うものであり、その機能は例えばＥＸ＿ＯＲなどのハードウェアにより実現される。乗除算器２４の入力データは指数表現になっているため、乗除算は指数の加減算で実現される。
【００５５】
第１の記憶部３０は乗除算器２４の乗除算結果を一時的に記憶するものであり、複数のレジスタを含む。またセレクタ３２は、第１の記憶部３０の中のいずれかのレジスタの出力あるいはセレクタ５２の出力を選択するためのものである。なお第１の記憶部３０は、セレクタ３２を介して乗除算器２４の入力に電気的に接続される構成となっている。
【００５６】
ＥＶ変換器３４は、指数表現のデータをベクトル表現のデータに変換するものであり、その機能は例えばＲＯＭなどのハードウェアにより実現される。
【００５７】
加算器３６は、ベクトル表現のデータの加算を行うものであり、その機能は例えばＥＸ＿ＯＲなどのハードウェアにより実現される。
【００５８】
第２の記憶部４０は加算器３６の加算結果を一時的に記憶するものであり、複数のレジスタを含む。またセレクタ４２は、第２の記憶部４０の中のいずれかのレジスタの出力を選択するものである。なお第２の記憶部４０は、セレクタ４２を介して加算器３６の入力に電気的に接続される構成となっている。
【００５９】
指数記憶部５０は、乗除算器２４や加算器３６の一方の入力を供給するためのものであり、複数のレジスタを含む。指数記憶部５０の記憶内容はエラー位置ｉ1〜ｉ16により決定される。本実施形態では、連立方程式（２５）の係数αi1〜α15i16の指数ｉ1〜15ｉ16を、指数記憶部５０の中の各レジスタが記憶する。そして指数記憶部５０にはセレクタ５２が接続され、セレクタ５２は、指数記憶部５０の中のいずれかのレジスタの出力を選択する。この場合、どのレジスタの出力を選択するかは、制御回路１０が制御する。
【００６０】
以上のハードウェア構成により連立方程式の解を高速に求めることができる。また、このようなハードウェア構成を採用することで、１６重消失訂正のみならず、２重エラー訂正におけるエラー個数の判定やエラー値及びエラー位置の導出も可能になるという利点も得られる。
【００６１】
８．連立方程式の解導出アルゴリズム
次に本実施形態の解導出アルゴリズムについて説明する。この解導出アルゴリズムによれば、図７のハードウェア構成を有効利用して、高速に連立方程式の解を求めることができる。
【００６２】
なお説明を簡単にするために、未知数が４個の場合、即ち４元連立方程式の場合を例にとり説明を行う。この場合、解くべき式は、
0003543577.tif 000013
となる。ここでＳ0〜Ｓ3は、定数項記憶部２０の中のレジスタＲ１〜Ｒ４に初期値として記憶される。
【００６３】
まず下記のようにしてε4を消去する。なお要素の個数が２l（ｌは整数）の有限体上では加算と減算は等価になる。従って、同じ値を加算すると０になる。
0003543577.tif 000014
上記の３つの式を各々(Ｓ0)1 、(Ｓ1)1 、(Ｓ2)1 と置く。
0003543577.tif 000015
これらの(Ｓ0)1 、(Ｓ1)1 、(Ｓ2)1を、定数項記憶部２０のレジスタＲ2、Ｒ3、Ｒ4に記憶する。即ちそれまでレジスタＲ2、Ｒ3、Ｒ4に記憶されていたＳ1、Ｓ2、Ｓ3の上に上書きする。
【００６４】
次に下記のようにしてε3を消去する。
0003543577.tif 000016
これらの式を下記のように(Ｓ0)2、(Ｓ1)2と置き、定数項記憶部２０のレジスタＲ3、Ｒ4に記憶する（(Ｓ1)1 、(Ｓ2)1と置き換える）。
0003543577.tif 000017
次に下記のようにしてε2を消去する。
【００６５】
0003543577.tif 000018
この式を(Ｓ0)3と置き、定数項記憶部２０のレジスタＲ4に記憶する（(Ｓ1)2と置き換える）。
【００６６】
この段階で定数項記憶部２０のレジスタＲ1、Ｒ2、Ｒ3、Ｒ4に記憶されているのは、各々、
0003543577.tif 000019
となる。
【００６７】
図８は、上記の式（２７）〜（３４）の演算を模式的に示したものである。なおａ＝αi1、ｂ＝αi2、ｃ＝αi3、ｄ＝αi4と表記している。
【００６８】
図８に示すように、式（２７）、（２８）、（２９）に示したε4を消去する同値変形では、ｄＲ1＋Ｒ2、ｄＲ２＋Ｒ3、ｄＲ3＋Ｒ4を演算し、その結果を各々、レジスタＲ2、Ｒ3、Ｒ4に記憶している。また式（３１）、（３２）に示したε3を消去する同値変形では、ｃＲ2＋Ｒ3、ｃＲ3＋Ｒ4を演算し、その結果を各々、レジスタＲ３、Ｒ４に記憶している。また式（３４）に示したε2を消去する同値変形では、ｂＲ3＋Ｒ4を演算し、その結果を、レジスタＲ４に記憶している。
【００６９】
本実施形態の１つの特徴は、式ｄＲ1＋Ｒ2、ｄＲ２＋Ｒ3、ｄＲ3＋Ｒ4、ｃＲ2＋Ｒ3、ｃＲ3＋Ｒ4、ｂＲ3＋Ｒ4の値をＶＥ変換器２２、乗除算器２４、ＥＶ変換器３４、加算器３６等を用いて求め、求められた式の値を、連立方程式のすべての同値式の定数項が定数項記憶部２０に常に記憶されるように定数項記憶部２０に戻す点にある。例えば図８において式ｄＲ1＋Ｒ2の値をレジスタＲ1に上書きせずにＲ2に上書きすることで、ε4に関する情報が失われε4の解が導出不能になることを防いでいる。また式ＣＲ2＋Ｒ3の値をレジスタＲ2に上書きせずにＲ3に上書きすることで、ε3に関する情報が失われることを防いでいる。このようにすることで、少ない記憶容量の定数項記憶部２０を用いて、多元の連立方程式であっても効率よく解を求めることが可能となる。
【００７０】
次に式（３５）から以下のようにして未知数を順次減らして行く。
【数５】
0003543577.tif 000020
【数６】
0003543577.tif 000021
【数７】
0003543577.tif 000022
【数８】
0003543577.tif 000023
【数９】
0003543577.tif 000024
【数１０】
0003543577.tif 000025
【数１１】
0003543577.tif 000026
【数１２】
0003543577.tif 000027
【数１３】
0003543577.tif 000028
【数１４】
0003543577.tif 000029
【数１５】
0003543577.tif 000030
【数１６】
0003543577.tif 000031
図９、図１０は、上記の式（３６）〜（４７）の演算を模式的に示したものである。図９、図１０に示すように、これらの演算では、まずＲ4のε1にかかる係数(ａ＋ｂ)(ａ＋ｃ)(ａ＋ｄ)の乗積数を順次減らしながらＲ4をＲ3、Ｒ2、Ｒ1に加算し、Ｒ3、Ｒ2、Ｒ1からε1を順次消去する。次に、Ｒ3のε2にかかる係数(ｂ＋ｃ)(ｂ＋ｄ)の乗積数を順次減らしながらＲ3をＲ2、Ｒ1に加算し、Ｒ2、Ｒ1からε2を順次消去する。次に、Ｒ2のε3にかかる係数(ｃ＋ｄ)を１にしてＲ2をＲ1に加算し、Ｒ1からε3を消去している。以上のようにしてエラー位置ε1〜ε4が求められることになる。
【００７１】
９．解導出アルゴリズムとハードウェア動作との関係
次に上記解導出アルゴリズムとハードウェア動作との関係について説明する。
【００７２】
図１１（Ａ）〜（Ｃ）、図１２（Ａ）〜（Ｃ）は、上式（２７）、（２８）、（２９）の演算、即ちαi4Ｓ0＋Ｓ1、αi4Ｓ1＋Ｓ2、αi4Ｓ2＋Ｓ3の演算の際のハードウェア動作を示すものである。
【００７３】
まず図１１（Ａ）に示すように、i4が指数記憶部５０から出力され、セレクタ５２、３２、乗除算器２４を介して第１の記憶部３０のレジスタに記憶される。
【００７４】
次に図１１（Ｂ）に示すように、定数項記憶部２０のレジスタＲ1からＳ0が出力される。そしてこのＳ0をＶＥ変換器２２で指数表現に変換したものと、第１の記憶部３０のレジスタに記憶されているi4とが乗除算器２４で乗算（指数同士の加算）される。そして乗算結果であるαi4Ｓ0の指数部分が、第１の記憶部３０のレジスタであってi4を記憶するレジスタとは異なるレジスタに記憶される。即ちi4については上書きせずに保持したままとする。
【００７５】
次に図１１（Ｃ）に示すように、Ｓ1が、レジスタＲ2から乗除算器２４及び加算器３６に同時に出力される。そしてＳ1の乗算相手となるi4は第１の記憶部３０のレジスタに保持されたままとなっている。この結果、αi4とＳ1の乗算であるαi4Ｓ1と、αi4Ｓ0とＳ1の加算であるαi4Ｓ0＋Ｓ1とを同時に実行できる。またi4を指数記憶部５０から読み出す処理を省略できる（１回の読み出しで済む）。これにより処理が大幅に高速化される。
【００７６】
次に図１２（Ａ）に示すように、図１１（Ｃ）の処理で得られた(Ｓ0)1＝αi4Ｓ0＋Ｓ1がレジスタＲ2に上書きされる。またレジスタＲ3に記憶されているＳ2が乗除算器２４及び加算器３６に同時に出力される。そしてi4は第１の記憶部３０のレジスタに保持されたままとなっている。この結果、αi4とＳ2の乗算と、αi4Ｓ1とＳ2の加算とを同時に実行できると共にi4を読み出す処理を省略でき、処理を高速化できる。
【００７７】
次に図１２（Ｂ）に示すように、図１２（Ａ）の処理で得られた(Ｓ0)2＝αi4Ｓ1＋Ｓ2がレジスタＲ3に上書きされる。またレジスタＲ4に記憶されているＳ3が加算器３６に出力され、αi4Ｓ2とＳ3との加算が行われる。
【００７８】
次に図１２（Ｃ）に示すように、図１２（Ｂ）の処理で得られた(Ｓ0)3＝αi4Ｓ2＋Ｓ3がレジスタＲ４に上書きされる。
【００７９】
以上のように本実施形態では、まず、αi4Ｓ0＋Ｓ1、αi4Ｓ1＋Ｓ2、αi4Ｓ2＋Ｓ3という式で表される同値変形を行う解導出アルゴリズムを採用する。そしてi4を第１の記憶部３０のレジスタに保持したままにしておく。更にαi4Ｓ0とＳ1の加算とαi4とＳ1の乗算、αi4Ｓ1とＳ2の加算とαi4とＳ2の乗算を同時に行う。このように本実施形態では、解導出アルゴリズムとハードウェアの構成及び動作を上手く組み合わせることで、処理を大幅に高速化することに成功している。特に、連立方程式が多元になればなるほど、乗算と加算を同時に実行する回数が増え、処理を更に高効率化できるようになる。
【００８０】
なお、ここでは上式（２７）〜（２８）の演算のみについて説明した。しかし例えば上式（３１）、（３２）の演算においても、αi3(Ｓ0)1と(Ｓ1)1の加算とαi3と(Ｓ1)1の乗算を同時に行ったり、i3を第１の記憶部３０に保持したままにしておくことで、処理が高速化される。
【００８１】
図１３（Ａ）〜（Ｃ）、図１４（Ａ）〜（Ｃ）、図１５（Ａ）〜（Ｃ）は、上式（３６）〜（４０）の演算の際のハードウェア動作を示すものである。
【００８２】
まず図１３（Ａ）に示すように、i1が指数記憶部５０から出力され、このi1をＥＶ変換器３４で変換することで得られるαi1が第２の記憶部４０のレジスタに記憶される。
【００８３】
次に図１３（Ｂ）に示すようにi2が指数記憶部５０から出力される。そしてi2のベクトル表現αi2と、第２の記憶部４０のレジスタに既に記憶されているαi1とが加算される。そして、その加算結果αi1＋αi2が第２の記憶部４０のレジスタであってαi1を記憶しているレジスタとは異なるレジスタに記憶される。即ちαi1については上書きせずに保持したままとする。
【００８４】
なお図１３（Ｂ）の処理の際に、レジスタＲ4に記憶されている(Ｓ0)3の指数部分が第１の記憶部３０のレジスタに記憶される。
【００８５】
次に図１３（Ｃ）に示すように、(Ｓ0)3が、図１３（Ｂ）の処理で得られたαi1＋αi2により除算される。そして除算結果(Ｓ0)31＝(Ｓ0)3／(αi1＋αi2)の指数部分が第１の記憶部３０のレジスタに記憶される。
【００８６】
次に図１４（Ａ）に示すように、レジスタＲ3から(Ｓ0)2が出力され、この(Ｓ0)2と(Ｓ0)31とが加算される。そして加算結果(Ｓ0)21＝(Ｓ0)2＋(Ｓ0)31が第２の記憶部４０のレジスタに記憶される。
【００８７】
次に図１４（Ｂ）に示すように、第２の記憶部４０のレジスタに記憶されていた(Ｓ0)21がレジスタＲ3に上書きされる。またi3が指数記憶部５０から出力され、そのベクトル表現αi3と第２の記憶部４０のレジスタに既に記憶されているαi1とが加算される。そして、その加算結果αi1＋αi3が第２の記憶部４０のレジスタに記憶される。
【００８８】
次に図１４（Ｃ）に示すように、(Ｓ0)31がαi1＋αi3により除算され、その除算結果(Ｓ0)32＝(Ｓ0)31／(αi1＋αi3)の指数部分が第１の記憶部３０のレジスタに記憶される。
【００８９】
次に図１５（Ａ）に示すように、レジスタＲ2から(Ｓ0)1が出力され、この(Ｓ0)1と(Ｓ0)32とが加算される。そして加算結果(Ｓ0)11＝(Ｓ0)1＋(Ｓ0)32が第２の記憶部４０のレジスタ４０に記憶される。
【００９０】
次に図１５（Ｂ）に示すように、第２の記憶部４０のレジスタに記憶されていた(Ｓ0)11がレジスタＲ2に上書きされる。またi4が指数記憶部５０から出力され、そのベクトル表現αi4と第２の記憶部４０のレジスタに既に記憶されているαi1とが加算される。そして、その加算結果αi1＋αi4が第２の記憶部４０のレジスタに記憶される。
【００９１】
次に図１５（Ｃ）に示すように、(Ｓ0)32がαi1＋αi4により除算され、その除算結果(Ｓ0)33＝(Ｓ0)32／(αi1＋αi4)の指数部分が第１の記憶部３０のレジスタに記憶される。
【００９２】
以上説明したように本実施形態では、αi1を第２の記憶部４０のレジスタに記憶したままにしておく。そしてこのαi1に順次αi2、αi3、αi4を加算することで、(Ｓ0)3、(Ｓ0)31、(Ｓ0)32の乗算相手となる(αi1＋αi2)、(αi1＋αi3)、(αi1＋αi4)を求めている。このようにすることで、指数記憶部５０からi1を読み出す処理を省略できる（１回の読み出しで済む）。これにより処理を大幅に高速化できる。特に、連立方程式が多元になればなるほど、i1の読み出し処理を省略できる回数が増えるため、処理を更に高効率化できるようになる。
【００９３】
なお図１３（Ａ）〜図１５（Ｃ）では、式（３６）〜（４０）での処理の高速化について説明した。即ちこの場合には図９に示すように、Ｒ4を(ａ＋ｂ)、(ａ＋ｃ)、(ａ＋ｄ)で除算する際にａ＝αi1を第２の記憶部４０に記憶したままにしておくことで処理の高速化を図っている。しかしながら本実施形態によれば、例えば式（４２）〜（４４）の場合にも処理を高速化できる。即ちこの場合には図１０に示すように、Ｒ3を(ｂ＋ｃ)、(ｂ＋ｄ)で除算する際にｂ＝αi2を第２の記憶部４０に記憶したままにしておくことで処理の高速化を図れることになる。
【００９４】
（実施形態２）
実施形態２は、解導出アルゴリズムの他の例を示す実施形態である。
【００９５】
ハードウェア構成は実施形態１と同じであるため説明を省略する。また上式（２６）〜（３４）の演算も、実施形態１の解導出アルゴリズムと同じである。従って、式（３４）までの演算が終了した時点で定数項記憶部２０のレジスタＲ1、Ｒ2、Ｒ3、Ｒ4には、各々、
0003543577.tif 000032
が記憶されていることになる。
【００９６】
実施形態２の解導出アルゴリズムでは、この式（４８）から以下のようにして順次未知数を減らしてゆく。
【数１７】
0003543577.tif 000033
【数１８】
0003543577.tif 000034
【数１９】
0003543577.tif 000035
【数２０】
0003543577.tif 000036
【数２１】
0003543577.tif 000037
【数２２】
0003543577.tif 000038
【数２３】
0003543577.tif 000039
【数２４】
0003543577.tif 000040
【数２５】
0003543577.tif 000041
図１６、図１７は、上記の式（４８）〜（５６）の演算を模式的に示したものである。図１６、図１７に示すように、これらの演算では、まずＲ4のε1にかかる係数を(ａ＋ｃ)(a＋ｄ)にしてＲ4をＲ3に加算し、Ｒ3からε1を消去する。次に、Ｒ4のε1に係る係数を(ａ＋ｄ)、Ｒ3のε2にかかる係数を(ｂ＋ｄ)にしてＲ4、Ｒ3をＲ2に加算し、Ｒ2からε1、ε2を消去する。次に、Ｒ4のε1、Ｒ3のε2、Ｒ2のε3にかかる係数を１にしてＲ4、Ｒ3、Ｒ2をＲ1に加算し、Ｒ1からε1、ε2、ε3を消去している。以上のようにしてエラー位置ε1〜ε4が求められることになる。
【００９７】
（実施形態３）
実施形態３は、実施形態１、２のエラー訂正回路を含む電子機器に関する実施例であり、図１８にその内部機能ブロック図の一例を示す。
【００９８】
ＤＶＤなどの情報記録媒体３００に記憶されるデータは、アクセス部３０２により読み出される。このアクセス部３０２は、ＤＶＤを回転させるためのモータや、ＤＶＤのデータを読み出すための光学系などを含む。なお情報記録媒体３００が書き込み可能なＤＶＤ−ＲＡＭ等である場合には、アクセス部３０２は書き込み手段としても機能する。
【００９９】
アクセス部３０２により読み出されたデータは信号処理回路１００に入力される。この信号処理回路１００は、実施形態１、２で説明した復調回路１０２、エラー訂正回路１１０、デスクランブル回路１２０、ＤＶＤＥＤＣ回路１２０などを含む。
【０１００】
信号処理回路１００は、バス３１２を介してＣＰＵ３１０に接続される。このＣＰＵ３１０は、電子機器全体の制御等を行うものである。
【０１０１】
入力部３１４は、電子機器にデータを入力するためのものであり、例えばリモコンやキーボードがこれに相当する。またメモリ３１６は、処理データ等を記憶するためのものであり、Ｄ／Ａ変換器３２２は、信号処理回路１００からのデジタルデータをアナログデータに変換するためのものである。更に画像出力部３１８、音出力部３２０は、信号処理回路１００からのデータに基づく画像や音を出力するためのものである。
【０１０２】
図１９（Ａ）に、電子機器の１つであるカーナビゲーションシステムの外観図の例を示す。カーナビゲーションシステムの操作はリモコン３５０（入力部）を用いて行われる。地図データや音声データはＤＶＤ３５２（情報記録媒体）に記録されている。このナビゲーションシステムにより生成された画像や音はディスプレイ３５４（画像出力部）や図示しないスピーカ（音出力部）により外部に出力される。
【０１０３】
図１９（Ｂ）に、電子機器の１つであるパーソナルコンピュータの外観図の例を示す。パーソナルコンピュータへのデータ入力はキーボード３６０（入力部）を用いて行われる。画像や音などの各種データはＤＶＤ３６２（情報記録媒体）に記録されている。このパーソナルコンピュータより生成された画像や音はディスプレイ３６４（画像出力部）やスピーカ３６６（音出力部）により外部に出力される。
【０１０４】
なお本発明のエラー訂正回路を適用できる電子機器としては、上記以外にも例えば、電子ブック、オーディオ機器、ゲーム装置、電子手帳など種々のものを考えることができる。
【０１０５】
なお、本発明は上記実施形態１、２、３に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。
【０１０６】
例えば本発明により解くべき対象となる連立方程式は、本実施形態で説明した式（２５）や（２６）などに示すものが特に望ましいが、これとは異なる種々の形の連立方程式にも適用可能である。
【０１０７】
またＰＩ復号、ＰＯ復号での処理も、図３、図４、図５で説明したものに限らず種々の変形実施が可能である。
【０１０８】
また式（２６）からの同値変形も、式（２７）〜（５６）に示すものが特に望ましいが、これと均等な種々の同値変形が可能である。
【０１０９】
【図面の簡単な説明】
【図１】エラー訂正回路を含む信号処理回路の構成例を示す機能ブロック図である。
【図２】図２（Ａ）、（Ｂ）は、ＥＣＣブロックについて説明するための図である。
【図３】ＰＩ復号時の動作について説明するためのフローチャートである。
【図４】ＰＯ復号時の動作について説明するためのフローチャートである。
【図５】ＰＯ復号時の動作について説明するためのフローチャートである。
【図６】ＰＩポインタによるエラー位置の特定について説明するための図である。
【図７】ＰＯ復号器の構成例を示す機能ブロック図である。
【図８】解導出アルゴリズムによる演算を模式的に表した図である。
【図９】解導出アルゴリズムによる演算を模式的に表した図である。
【図１０】解導出アルゴリズムによる演算を模式的に表した図である。
【図１１】図１１（Ａ）〜（Ｃ）はハードウェア動作について説明するための図である。
【図１２】図１２（Ａ）〜（Ｃ）もハードウェア動作について説明するための図である。
【図１３】図１３（Ａ）〜（Ｃ）もハードウェア動作について説明するための図である。
【図１４】図１４（Ａ）〜（Ｃ）もハードウェア動作について説明するための図である。
【図１５】図１５（Ａ）〜（Ｃ）もハードウェア動作について説明するための図である。
【図１６】実施形態２の解導出アルゴリズムによる演算を模式的に表した図である。
【図１７】実施形態２の解導出アルゴリズムによる演算を模式的に表した図である。
【図１８】実施形態３に係る電子機器の機能ブロック図の一例である。
【図１９】図１９（Ａ）、（Ｂ）は、実施形態３に係る電子機器の外観図の一例である。
【符号の説明】
１０    制御回路
１２    シンドローム生成部
２０    定数項記憶部
２２    ＶＥ変換器
２４    乗除算器
３０    第１の記憶部
３２    セレクタ
３４    ＥＶ変換器
３６    加算器
４０    第２の記憶部
４２    セレクタ
５０    指数記憶部
５２    セレクタ
１００  信号処理回路
１０２  復調回路
１１０  エラー訂正回路
１１２  ＰＩ復号器
１１４  ＰＯ復号器
１２０  デスクランブル回路
１３０  ＤＶＤＥＤＣ回路
１４０  ＲＡＭ
１４２  データＲＡＭ
１４４  ポインタＲＡＭ
【図１】
0003543577.tif 000043
【図２】
0003543577.tif 000044
【図３】
0003543577.tif 000045
【図４】
0003543577.tif 000046
【図５】
0003543577.tif 000047
【図６】
0003543577.tif 000048
【図７】
0003543577.tif 000049
【図８】
0003543577.tif 000050
【図９】
0003543577.tif 000051
【図１０】
0003543577.tif 000052
【図１１】
0003543577.tif 000053
【図１２】
0003543577.tif 000054
【図１３】
0003543577.tif 000055
【図１４】
0003543577.tif 000056
【図１５】
0003543577.tif 000057
【図１６】
0003543577.tif 000058
【図１７】
0003543577.tif 000059
【図１８】
0003543577.tif 000060
【図１９】
0003543577.tif 000061