(57)【特許請求の範囲】
【請求項１】
誤り訂正用の内符号と外符号が付加され、積符号ブロック化されたデータの誤りを第１の方向とこの第１の方向に直交する第２の方向で訂正する誤り訂正手段、
前記積符号ブロック化されたデータを記憶するデータ記憶手段、
前記積符号ブロック化されたデータに対し、外部から指示される各方向の誤り訂正をどこまで繰返すかの設定値を記憶する繰返し設定記憶手段、および
前記繰返し設定記憶手段に記憶されている設定値が示す前記誤り訂正手段による最終訂正処理単位での誤り訂正能力を、それ以外の訂正処理単位における訂正能力よりも低く抑えるように制御する制御手段を備えた、誤り訂正装置。
【請求項２】
前記誤り訂正手段は、前記第１の方向に対して誤り位置と誤りパターンを検出して訂正を行なう検出訂正を実行し、その後前記第２の方向に対して誤りパターンだけを求めて訂正を行なう消失訂正を実行することを特徴とする、請求項１に記載の誤り訂正装置。
【請求項３】
誤り訂正方法であって、
誤り訂正用の内符号と外符号が付加され、積符号ブロック化されたデータを記憶しておき、
前記積符号ブロック化されたデータに対して、第１の方向とこの第１の方向に直交する第２の方向の誤り訂正をどこまで繰返すかの設定値を外部から入力し、
前記入力された設定値が示す最終訂正処理単位での誤り訂正能力を、それ以外の訂正処理単位における訂正能力よりも低く抑えることを特徴とする、誤り訂正方法。
【請求項４】
前記誤り訂正は、前記第１の方向に対して誤り位置と誤りパターンを検出して訂正を行なう検出訂正と、前記第２の方向に対して誤りパターンだけを求めて訂正を行なう消失訂正を含むことを特徴とする、請求項３に記載の誤り訂正方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は誤り訂正装置および誤り訂正方法に関し、特に、誤り訂正用の内符号と外符号とが付加され、積符号化されたデータの誤り訂正を行なうような誤り訂正装置および誤り訂正方法に関する。
【０００２】
【従来の技術】
デジタル伝送システムやコンピュータの周辺装置においては、デジタルデータの信頼性を上げるために、誤り訂正符号が用いられる。最近では、受信再生側の処理能力の向上とともに、符号長，冗長度の大きいロングディスタンスコードの積符号といった高度な訂正能力を持つ符号が使われるようになってきた。
【０００３】
図５は積符号の一例を示す図であり、図６は従来の方法で積符号の誤りを訂正する過程を示す図である。
【０００４】
積符号は図５に示すように、情報シンボルに対して横方向に内符号としてのパリティ符号を付加したＰＩ系列と、情報シンボルに対して縦方向に外符号としてのパリティ符号を付加したＰＯ系列とを組合せたものである。ＰＩ系列およびＰＯ系列の各符号にはバイト単位での訂正が可能なリード・ソロモン（ＲＳ）符号が用いられることが多い。
【０００５】
受信再生側でのデコード（誤り訂正）は、各方向の符号の訂正を繰返すことで行なわれる。図５に示した例では、まず横方向のＰＩ系列の符号において誤り訂正を行なった後、ＰＯ系列の符号において誤り訂正が行なわれる。この処理を繰返すことにより、符号内の誤りが訂正されていく。また、繰返し回数が多いほど、訂正できる誤り数が多くなることが知られている。
【０００６】
図６を参照してより詳細に説明すると、図６（ａ）に示す初期値では誤りシンボルが縦横に分布しており、図６（ｂ）に示すようにＰＩ符号で誤り訂正が行なわれる。誤り訂正では、１つの符号に対して誤りの訂正できるシンボル数が決まっており、それ以下では誤りの訂正が可能であるが、それ以上では誤り訂正ができない。このため、訂正できないシンボルが残ってしまう。たとえば、ＰＩ符号およびＰＯ符号で３シンボルまで訂正が可能とすると、図６（ｂ）に示すように、ＰＩ符号で誤りシンボルが３以上ある部分では訂正不能ラインが生じる。図６（ｂ）に示すＰＩ符号での訂正が行なわれた後、図６（ｃ）に示すようにＰＯ符号で誤り訂正が行なわれる。この誤り訂正が行なわれても誤りが３シンボル以上の場合は、誤りの残留した訂正不能ラインが生じる。さらに、図６（ｄ）に示すように、２回目のＰＩ符号で誤り訂正を行なうと、すべての誤りシンボルを訂正できる。このように、ＰＩ−ＰＯ−ＰＩまで訂正を繰返すことにより、すべての誤りシンボルを訂正できる。ただし、誤訂正が内在している可能性はある。
【０００７】
ＰＩ符号の訂正では誤りの位置とパターンを検出する必要があり、これを検出訂正と呼ぶ。一方、ＰＯ符号の訂正では、誤りシンボルが残留している位置は訂正が不能であった位置の上に必ずあり、それ以外の位置におけるシンボルの誤りはすべて訂正されていると仮定して訂正処理を行なう。つまり、ＰＯ符号の誤り訂正では、誤りの位置は既知であると仮定され、パターンを検出するだけでよい。これを消失訂正と呼ぶ。
【０００８】
ところで、訂正の繰返し回数を多くとるほど、積符号１ブロックのデコードに要する演算処理時間が多くなる。たとえば、光ディスクを用いたストレージメディアの再生システムを考えた場合、通常速の再生ではＰＩ−ＰＯ訂正を２回まで繰返しても再生のリアルタイム性を確保できるが、２倍速の再生では１回の訂正が限度になるという場合がある。このようなシステムでは、訂正処理に割当てられる時間との兼ね合いによって訂正の繰返し回数を切替えている。
【０００９】
【発明が解決しようとする課題】
しかし、訂正の繰返し回数の切替えを行なっても、その設定に対する訂正ストラテージは何ら変えられていない。たとえば、誤り訂正の際に避けることができない誤訂正を考えてみる。誤訂正とは訂正演算が正常に行なわれても、訂正結果が間違ってしまうことであり、符号の訂正能力を限界まで使用した演算時に起こる確率が高い。繰返し訂正の最終方向で誤訂正が起こった場合、それ以降の訂正処理は行なわれないわけであるから、演算結果としては誤りがないとした場合でも、実際にはデータ誤りが存在することになる。最終方向でない時点で誤訂正が起こった場合は、他の訂正方法でその誤りが再度訂正されることが期待される。
【００１０】
つまり、訂正の最終方向では、それ以外の訂正に比べて訂正能力よりも信頼性の高さに重きをおいた訂正ストラテジーが要求されることになる。繰返し回数を変更した場合、訂正の最終方向は異なってくるので、繰返し回数に対して、最適な訂正ストラテジーをとることが必要であるが、その点に関する考慮は従来されていなかった。
【００１１】
それゆえに、この発明の主たる目的は、繰返し回数によって誤り訂正のストラテジーを最適化することにより、誤訂正確率を抑制し、データの信頼性を向上し得る誤り訂正装置および誤り訂正方法を提供することである。
【００１２】
【課題を解決するための手段】
請求項１に係る発明は、誤り訂正用の内符号と外符号が付加され、積符号ブロック化されたデータの誤りを第１の方向とこの第１の方向に直交する第２の方向で訂正する誤り訂正手段と、積符号ブロック化されたデータを記憶するデータ記憶手段と、積符号ブロック化されたデータに対し外部から指示される各方向の誤り訂正をどこまで繰返すかの設定値を記憶する繰返し設定記憶手段と、繰返し設定記憶手段に記憶されている設定値が示す誤り訂正手段による最終訂正処理単位での誤り訂正能力を、それ以外の訂正処理単位における訂正能力よりも低く抑えるように制御する制御手段とを備えて構成される。
【００１３】
請求項２に係る発明では、請求項１の誤り訂正手段は、第１の方向に対して誤りの位置と誤りのパターンを検出して訂正を行なう検出訂正を実行し、その後第２の方向に対して誤りのパターンだけを求めて訂正を行なう消失訂正を実行する。
【００１４】
請求項３に係る発明は、誤り訂正方法であって、誤り訂正用の内符号と外符号が付加され、積符号ブロック化されたデータを記憶しておき、積符号ブロック化されたデータに対して、第１の方向とこの第１の方向に直交する第２の方向の誤り訂正をどこまで繰返すかの設定値を外部から入力し、入力された設定値が示す最終訂正処理単位での誤り訂正能力を、それ以外の訂正処理単位における訂正能力よりも低く抑えるようにしたものである。
【００１５】
請求項４に係る発明では、請求項３の誤り訂正は、第１の方向に対して誤りの位置と誤りのパターンを検出して訂正を行なう検出訂正と、第２の方向に対して誤りのパターンだけを求めて訂正を行なう消失訂正を含む。
【００１６】
【発明の実施の形態】
図１はこの発明による誤り訂正装置を用いた情報受信再生システムの一例としての光ディスク再生システムの構成を示す概略ブロック図であり、図２はこの発明の誤り訂正装置へのデコード対象となるリード・ソロモン積符号１ブロックの構成例を示す図である。
【００１７】
図１を参照して、光ディスク１から読出された信号は、読み出し二値化回路２によってデジタル信号に変換された後、復調・デフォーマット回路４に与えられ、図２に示す形態の積符号ブロック化されたデータに復調される。なお、図２において、ＰＯ方向の誤り訂正符号は符号長ｎ０  ，情報長ｋ０  ，最小距離ｄ０  のＲＳ符号であり、ＰＩ方向の誤り訂正符号は、符号長ｎｉ  ，情報長ｋｉ  ，最小距離ｄｉ  のＲＳ符号である。なお、ここでｄｉ  ＝２ｔｉ  ＋１，ｄ０  ＝２ｔ０  ＋１の関係が成り立っているものとする。図２に示した形態の１ブロック分のデータはバッファメモリ５に格納される。
【００１８】
一方、サーボ制御回路３は、復調・デフォーマット回路４の出力に基づいて、光ディスク１のドライブ機構（図示せず）をサーボ制御する。復調・デフォーマット回路４およびサーボ制御回路３の動作は、コントローラ８によって制御される。
【００１９】
コントローラ８はさらにバッファメモリ５に格納された１ブロック分のデータに対するデコード（誤り訂正）命令を誤り訂正装置６に与える。誤り訂正装置６は、この命令に応じて以下に述べるような誤り訂正をバッファメモリ５に格納されているデータに施す。誤り訂正が施されたデータはコントローラ８によって制御されて出力インタフェース回路７を介してバッファメモリ５から読出される。
【００２０】
図３は図１に示した誤り訂正装置のブロック図である。図１に示したバッファメモリ５に格納されているデータのＰＩまたはＰＯの１ライン分がシンボルリード・ライト回路１３によって読出されてラインバッファ１４に格納される。ラインバッファ１４に格納されたデータは誤り訂正演算回路１５によって符号の誤り訂正が行なわれる。設定レジスタ９には外部から設定される積符号の訂正繰返し回数が格納される。
【００２１】
消失数カウンタ１１は誤り訂正演算回路１５によって訂正不能となったライン数を計数し、消失数レジスタ１０には一方向の訂正終了後に訂正不能であった消失カウンタ１１で計数されたライン数が格納される。訂正ステータスレジスタ１２は１ラインの訂正のステータス（エラーなし，訂正成功，訂正不能，符号の能力限界の個数を訂正のいずれか）を格納する。訂正ライン数カウンタ１７は訂正ステータスレジスタ１２のステータスがエラーなし以外であるライン数を計数する。最終方向訂正フラグ１８は現在行なわれている訂正処理が繰返し訂正の最終方向かどうかを示すフラグを格納する。シーケンスコントローラ１６は誤り訂正装置６全体の動作を制御する。
【００２２】
ここで、誤り訂正演算回路１５による誤り訂正処理について説明する。初めにＰＩ方向のＲＳ系列に対する誤り訂正について説明する。ラインバッファ１４に格納された符号に対して、次式で定義されるシンドローム多項式Ｓ（ｘ）の係数Ｓｊ  が算出される。
【００２３】
【数１】
0003583904.tif 000002
【００２４】
ここで、（１）式はシンドローム多項式の係数Ｓｊ  を表示し、（２）式はシンドローム多項式Ｓ（ｘ）そのものを表示している。（１）式におけるαは、ガロア体ＧＦ（２８  ）の元であり、γｉ  はＰＩ系列の符号（シンボル）を表わしている。シンドローム多項式の係数がすべて０である場合は、その符号上に誤りが存在しないことを示し、訂正の処理を終える。
【００２５】
次に、シンドローム多項式の係数のいずれかが０でない場合Ｓｊ  をもとに、次式で定義される誤り位置多項式σ（ｘ）および誤り数値多項式ω（ｘ）の係数を求める。
【００２６】
【数２】
0003583904.tif 000003
【００２７】
ここで、（３），（４）式は誤り位置多項式σ（ｘ）を表わし、（５），（６）式は誤り数値多項式ω（ｘ）を表わしている。ここでＥは誤りの集合を表わし、Ｌｉ  は符号上の誤り位置を示している。これらの多項式の係数とは、具体的には次式で示すものである。
【００２８】
【数３】
0003583904.tif 000004
【００２９】
ここで、上述のシンドローム多項式の係数から、誤り位置多項式および誤り数値多項式の係数を算出するための方法として、ピーターンアルゴリズム、ユークリッドアルゴリズムなどが考えられるが、いずれかの方法を用いて誤り訂正演算回路１５を構成してもよい。
【００３０】
次に、誤り訂正演算回路１５は誤りパターンを算出して誤り訂正を行なう。誤りのパターンは次式のように求められる。
【００３１】
【数４】
0003583904.tif 000005
【００３２】
ここで、（７）式を満たすＬｉ  はｉ番目の誤り位置を表しており、このＬｉ  に対して（８）式を演算することにより、誤りパターンｅｉ  が求められる。このように（７）式が成り立つか否かを判定してＬｉ  を求める方法はチェンサーチ法として知られている。
【００３３】
一方、（８）式におけるσ′（ｘ）はσ（ｘ）の形式微分を表わし、次式によって定義される。
【００３４】
【数５】
0003583904.tif 000006
【００３５】
上述の（７），（８）および（９）式における次式に列挙する要素は、誤り訂正演算回路１５により生成される。
【００３６】
【数６】
0003583904.tif 000007
【００３７】
また、（８）式の誤りパターンｅｉ  も誤り訂正演算回路１５により生成される。そして、（７）式が成立する場合にのみ、ラインバッファ１４に格納されているシンボルの訂正が行なわれる。検出訂正ではＰＩ方向でｔｉ  項まで、ＰＯ方向でもｔ０  個までの誤りの検出と訂正が可能である。ただし、各方向とも符号の訂正能力の限界個数の訂正を行なった場合は、それ以外のときに比べ誤り訂正の確率が高くなることが知られている。
【００３８】
ここで、訂正の正誤は符号長ｎｉ  に対してチェンサーチが終了後、誤り位置多項式の次数とチェンサーチで検出された誤りの数を比較することで判定できることが周知であり、それによって訂正のステータス（正誤、訂正不能、能力限界の個数を訂正）が判別される。
【００３９】
以上の動作を繰返し、ＰＩ方向の各符号語に対する誤り訂正が実行される。ＰＯ方向についても検出訂正は同様に行なうことができる。
【００４０】
次に、ＰＯ方向の符号語に対する消失訂正の動作について説明する。ＰＯ方向ではＰＩ方向で訂正不能であったラインと交差するシンボル上にのみ誤りが存在するものとして、消失訂正が可能である。
【００４１】
消失訂正では予めＰＯ系列の符号語上の誤り位置は、消失位置として既知であるので誤り（消失）位置多項式も次式のように既知である。
【００４２】
【数７】
0003583904.tif 000008
【００４３】
そこで、誤り（消失）数値多項式のみを求めればよい。たとえばユークリッドアルゴリズムでは、周知のように消失数値多項式はシンドローム多項式を用いて次式により求まる。
【００４４】
【数８】
0003583904.tif 000009
【００４５】
消失のパターンは次式となり、最大で２ｔ０  個のシンボルの訂正が可能である。
【００４６】
【数９】
0003583904.tif 000010
【００４７】
消失訂正では周知のように、消失位置以外にシンボルの誤りが存在すると、正確な訂正を行なうことはできない（誤訂正となる）。消失位置以外の誤りが存在するかどうかは、消失位置多項式（１１）式の次数と消失数とを比較することにより検出することができる。したがって、次式に示す比較が行なわれる。
【００４８】
【数１０】
0003583904.tif 000011
【００４９】
（１３）式が成り立つ場合、消失位置以外に誤りシンボルはなく消失訂正が可能となる。それ以外の場合は、消失訂正をそのまま実行すると誤訂正となる。これにより、消失訂正の場合も訂正のステータス（正誤）を判断することができる。ただし、消失数が符号の訂正能力限界（２ｔ０  個）の場合は上式は必ず成り立つので、誤訂正の判定はできない。
【００５０】
図４は図３に示した誤り訂正装置の動作を説明するためのフローチャートである。次に、図４を参照しながら図３に示した誤り訂正装置の動作について説明する。設定レジスタ９には、訂正の繰返し回数（ここではＰＩ−ＰＯまで、ＰＩ−ＰＯ−ＰＩまで、ＰＩ−ＰＯ−ＰＩ−ＰＯまでのいずれかのモードを設定できるものとする）が設定される。シーケンスコントローラ１６はステップ（図示ではＳＰと略称する）ＳＰ１において、ＰＩ方向の誤りの位置とパターンとを求めて検出訂正を実行する。この場合、最終訂正方向フラグ１８を立てない。このＰＩ方向の検出訂正では、符号の能力限界の個数（ｔｉ個）までの訂正が行なわれる。
【００５１】
この訂正はバッファメモリ５からＰＩ系列１ライン分のデータがラインバッファ１４に読込まれ、誤り訂正演算回路１５によって前述のリード・ソロモン符号に対する訂正アルゴリズムを用いて訂正が行なわれ、その訂正結果が訂正ステータスレジスタ１２に書込まれる。
【００５２】
次に、シンボル・リードライト回路１３は、最終方向訂正フラグ１８が立っていないため、訂正ステータスレジスタ１２の値が訂正成功または能力限界の個数の訂正であればラインバッファ１４の符号をバッファメモリ５に書き戻させる。この処理がＰＩ系列の符号の数だけ繰返される。
【００５３】
次に、ステップＳＰ２において、ＰＩ方向でのデコードの結果、すべてのラインに誤りが存在しなかった場合（訂正ライン数カウンタ１７の出力が０）、１ブロックに対する処理を終了する。誤りが残留している可能性がある場合は、設定レジスタ９の設定により、ステップＳＰ３において次に訂正する方向が最終方向の訂正処理か否かで処理を分岐する。最終方向である場合、訂正処理の信頼性を重視して、符号の能力限界の個数の訂正は行なわないようにするため、消失レジスタ１０の値が２ｔ０  未満の場合は、ステップＳＰ５において消失訂正を実行し、それ以外はステップＳＰ４でｔ０  −１個までの検出訂正を行ない、１ブロックに対する処理を終了する。
【００５４】
最終方向でない場合は、消失レジスタ１０の値が２ｔ０  以下であればステップＳＰ８において消失訂正を実行し、それ以外はステップＳＰ９でｔ０  までの検出訂正を行なう。このような処理の判断は、シンボルリード・ライト回路１３が最終訂正方向フラグ１８と訂正ステータスレジスタ１２の値を参照してラインバッファ１４のシンボルをバッファメモリ５に書き戻すかどうかを判断して実行する。ここで、シンボルリード・ライト回路１３の動作表を表１に示す。
【００５５】
【表１】
0003583904.tif 000012
【００５６】
ステップＳＰ１０において、訂正ライン数カウンタ１７の計数値に基づいて誤りの有無を判別し、計数値が０で誤りが存在しなかった場合には処理を終了し、誤りが存在する場合にはステップＳＰ１１で設定レジスタ９の値を参照して最終訂正方向を判別する。次に、訂正する方向が最終方向である場合には、訂正処理の信頼性を重視してステップＳＰ１２においてｔｉ  −１個までの検出訂正を行ない、最終方向でない場合にはステップＳＰ１３においてｔｉ  個までの検出訂正を行なう。
【００５７】
ステップＳＰ１４において再び誤りの有無を判別し、誤りが存在しなかった場合は処理を終了し、誤りがあれば２回目のＰＯ訂正を行なう。２回目のＰＯ訂正は最終方向であるので、ステップＳＰ１５において消失レジスタ１０の値が２ｔ０  未満であるか否かを判別し、未満の場合は訂正処理の信頼性を重視してステップＳＰ１６で消失訂正を行ない、それ以外の場合はｔ０  −１個までの検出訂正を行なって処理を終了する。
【００５８】
なお、上述の説明では、ＰＩ訂正およびＰＯ訂正を２回の繰返し回数までとしているが、処理時間に余裕があれば繰返し回数は何回であってもよい。また、ＰＯ方向で消失訂正を行なう場合があるが、検出訂正のみであっても構わない。また、外部からその選択を可能にするために、設定レジスタ９にそのためのフラグを追加するようにしてもよい。
【００５９】
【発明の効果】
以上のように、この発明によれば、誤り訂正用の内符号と外符号が付加された積符号ブロック化されたデータに対して、第１の方向とその第１の方向に直交する第２の方向の誤り訂正をどこまで繰返すかを示す設定値を外部から入力し、その設定値が示す最終訂正処理単位での誤り訂正能力を、訂正処理の信頼性を重視してそれ以外の訂正処理単位における訂正能力よりも低く抑えるようにしたので、繰返し回数に対する誤り訂正のストラテジーを最適化でき、誤訂正確率を抑制してデータの信頼性を向上できる。
【図面の簡単な説明】
【図１】この発明の誤り訂正装置を用いた光ディスク再生システムを示すブロック図である。
【図２】この発明の誤り訂正装置のデコード対象となるリード・ソロモン積符号１ブロックの構成例を示す図である。
【図３】この発明の一実施形態の誤り訂正装置のブロック図である。
【図４】この発明の一実施形態の具体的な動作を説明するためのフローチャートである。
【図５】内符号と外符号が付加され積符号ブロック化されたデータの一例を示す図である。
【図６】積符号をＰＩ−ＰＯ符号で訂正する過程を示す図である。
【符号の説明】
１  光ディスク
２  読み出し二値化回路
３  サーボ制御回路
４  復調デフォーマット回路
５  バッファメモリ
６  誤り訂正装置
７  出力インタフェース回路
８  コントローラ
９  設定レジスタ
１０  消失数レジスタ
１１  消失数カウンタ
１２  訂正ステータスレジスタ
１３  シンボルリード・ライト回路
１４  ラインバッファ
１５  誤り訂正演算回路
１６  シーケンスコントローラ
１７  訂正ライン数カウンタ
１８  最終方向訂正フラグ
【図１】
0003583904.tif 000013
【図２】
0003583904.tif 000014
【図３】
0003583904.tif 000015
【図４】
0003583904.tif 000016
【図５】
0003583904.tif 000017
【図６】
0003583904.tif 000018