JP3439309B2 - Double-extended Reed-Solomon decoder - Google Patents
Double-extended Reed-Solomon decoderInfo
- Publication number
- JP3439309B2 JP3439309B2 JP31957596A JP31957596A JP3439309B2 JP 3439309 B2 JP3439309 B2 JP 3439309B2 JP 31957596 A JP31957596 A JP 31957596A JP 31957596 A JP31957596 A JP 31957596A JP 3439309 B2 JP3439309 B2 JP 3439309B2
- Authority
- JP
- Japan
- Prior art keywords
- polynomial
- codeword
- estimated error
- estimated
- calculated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012937 correction Methods 0.000 claims description 38
- 208000011580 syndromic disease Diseases 0.000 claims description 22
- 238000004422 calculation algorithm Methods 0.000 claims description 13
- 238000000034 method Methods 0.000 description 21
- 238000012545 processing Methods 0.000 description 20
- 238000004364 calculation method Methods 0.000 description 16
- 239000000872 buffer Substances 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 230000014509 gene expression Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 101100178822 Mycobacterium tuberculosis (strain ATCC 25618 / H37Rv) htrA1 gene Proteins 0.000 description 1
- 101100277437 Rhizobium meliloti (strain 1021) degP1 gene Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 101150018266 degP gene Proteins 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
Landscapes
- Detection And Correction Of Errors (AREA)
- Error Detection And Correction (AREA)
Description
【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、デジタル通信、あ
るいは蓄積の信頼性を高める誤り訂正符号の復号におい
て、受信符号語の受信状態に関する情報(信頼度情報)
を利用する軟判定復号技術に関する。
【0002】
【従来の技術】軟判定復号は、受信符号語に含まれる誤
りを除去し、送信符号語を推定する際に、受信符号語の
各シンボルの受信状態に関する情報(信頼度情報)を利
用することで、送信符号語を正しく推定する確率を高め
ている。この軟判定復号の理論的原理は、フォーニイ
ー、デビット・ジュニア著“一般化最小距離復号”、I
EEE情報理論部会会報、IT−12巻、125〜13
1ページ、1966年4月掲載(Fornery, G.D. Jr.,
“Generalized Minimum Distance Decoding ”, IEEETr
ansactions on Information Theory, vol.IT-12, pp.12
5-131, April 1966)に記載されているように、技術上周
知である。
【0003】軟判定復号に関する基本的問題点は、経済
的、かつ効率的に高速軟判定複号器を構成することであ
る。二重伸長リードソロモン符号の復号器として、杉
山、藤原、大西、石田著“二重伸長リードソロモン符号
の一復号法”、電子情報通信学会全国大会、No.13
91、1984年掲載が知られている。この従来技術
は、二重伸長リードソロモン符号の硬判定復号装置の構
成に関するものであるが、明らかに軟判定複号器の構成
に適用することができる。この場合の手法は、推定符号
語の候補を与える一連の推定誤り位置多項式と推定誤り
数値多項式を高速算出するためにユークリッド除算装置
を複数備えることを特徴とする。
【0004】従来技術による軟判定復号装置の概略的ブ
ロック図を図5に示す。復号装置の入力となる受信符号
語、および受信符号語の各シンボルに関する信頼度情報
は、各々バッファ1,3に保存される。シンドローム算
出処理装置2ではこれらを入力としてシンドロームを算
出し、出力する。d−1個のシンボルからなるシンドロ
ームはt=[(d−1)/2]個の並列化されたユーク
リッド除算装置91 〜9t に入力され、各ユークリッド
除算装置91 〜9t は推定誤り位置多項式と推定誤り数
値多項式を算出する。これらの多項式組は各々d−1−
k消失誤り訂正(k=2,4,・・・,2t)における
推定誤り位置/数値多項式に相当し、全部でt組の推定
誤り位置多項式と数値多項式が出力される。なお、dは
符号の最小設計距離を表す。また、[x]は、x以下の
最大整数を表す。ユークリッド除算装置91 〜9t の出
力であるt個の推定誤り位置多項式と推定誤り数値多項
式は誤り数値算出装置6に入力され、まず推定誤り位置
多項式の零点に相当する推定誤り位置が算出され、次い
で、推定誤り位置多項式と推定誤り数値多項式から推定
誤り位置における誤り数値が推定される。算出された誤
り数値は、推定符号語選択装置7に出力される。
【0005】
【発明が解決しようとする課題】軟判定復号技術におけ
る最も基本的な問題点は高速な軟判定復号装置を具体的
に構成することであって、受信符号語の受信状態に関す
る信頼度情報を用いることなしに送信符号語を推定する
硬判定復号装置と同程度の処理時間、および装置規模で
構成されることが望ましい。二重伸長リードソロモン符
号に関する従来技術において、推定符号語の候補を与え
る一連の推定誤り位置多項式と推定誤り数値多項式の算
出処理は、図5にあるように、ユークリッド除算装置を
t個並列化することにより実現される。前述の硬判定復
号装置においては、ユークリッド除算処理は一度実行す
るだけでよいため、このような並列化の必要はない。す
なわち、二重伸長リードソロモン符号に関する従来の軟
判定復号方式において、ユークリッド除算処理に要する
装置規模はt倍となる。また、装置規模削減のために直
列(繰り返し)処理した場合には、t倍の計算時間が必
要となる。この課題に対する効果的な手法の提案はなさ
れていない。
【0006】本発明の目的は、二重伸長リードソロモン
符号の軟判定復号について、従来技術におけるユークリ
ッド除算処理の並列化に伴う計算回数、および装置規模
の問題点を解決することにより、従来の軟判定復号装置
よりもさらに経済的、効率的な二重伸長リードソロモン
復号装置を提供することである。
【0007】
【課題を解決するための手段】本発明の二重伸長リード
ソロモン復号装置は、符号ブロック長がq+1(qは素
数のべき乗)の二重伸長リードソロモン符号に関する、
受信符号語と該受信符号語の受信状態を表す信頼度情報
を用いて推定符号語候補を算出し、該推定符号語候補の
中から該受信符号語に最もよく類似した符号語を選択す
ることによって、該受信符号語中の符号誤りを訂正する
誤り訂正復号装置において、該信頼度情報とq+1個の
シンボルからなる該受信符号語中のq個のシンボルに含
まれる誤りに対応した全ての推定誤り位置多項式と推定
誤り数値多項式の組を算出する多項式演算装置と、該受
信符号語中の該q個のシンボル以外の1個のシンボルと
該多項式算出装置によって算出される補助多項式を用い
て、該推定誤り位置多項式と該推定誤り数値多項式を補
正する多項式補正装置と、該補正された該推定誤り位置
多項式と該推定誤り数値多項式から推定符号語候補を算
出し、該受信符号後に最も類似した符号語を選別する装
置を備える。
【0008】本発明の実施態様によれば、多項式演算装
置は、前記受信符号語と該受信符号語において前記信頼
度情報により選択した信頼度の最も低いd−1個(dは
自然数)の位置を指定する指標から算出されるシンドロ
ームから、最大d−2回の反復演算からなる反復演算ア
ルゴリズムによって、該反復演算アルゴリズムの第k回
目(kは自然数)の反復演算実行時に、該受信符号語中
のq個のシンボルのうち、該信頼度の最も低いd−2−
k個の位置を消失位置とする前記の推定誤り位置多項式
と推定誤り数値多項式の組を第k−1回目の反復演算実
行時に算出された該推定誤り位置多項式と該推定誤り数
値多項式の組から算出するとともに、該推定誤り位置多
項式と該推定誤り数値多項式を前記の多項式補正装置に
おいて補正するための2種類の補助多項式を第k−1回
目の反復演算実行時に算出された2種類の該補助多項式
から算出することを特徴とする。
【0009】本発明の実施態様によれば、多項式に補正
装置は、前記多項式算出処理装置を第k回目の反復実行
時に算出される前記推定誤り位置多項式の次数が(k+
1)/2に等しい場合、前記受信符号語中の1個のシン
ボルに対応するシンドロームと前記誤り数値多項式のd
−2−(k+1)/2次の項の係数との和を前記2種類
の補助多項式に乗じた多項式の各々の該推定誤り位置多
項式と該推定誤り数値多項式に加算した多項式を、補正
された該推定誤り位置多項式と該推定誤り数値多項式と
することを特徴とする。
【0010】本発明は、シンドローム算出装置、多項式
演算装置、および多項式補正装置を備える。シンドロー
ム算出装置は、q+1個のシンボルからなる受信符号語
と受信符号語中のq個のシンボルの中で信頼度が最も低
いd−1個の位置を指定する指標からシンドロームを算
出し、多項式演算装置、多項式補正装置へ出力する。多
項式演算装置は、前記のシンドロームと受信符号語中の
q個のシンボルの中で信頼度の最も低いd−2−k個の
位置を消失位置とする推定誤り位置多項式と推定誤り数
値多項式の組をk=0,1,・・・・,d−2に関して
逐次的に算出する。また、多項式演算装置は、算出され
た各推定誤り位置多項式と推定誤り数値多項式を補正す
るための補助多項式の組を同時に算出する。多重シフト
レジスタ合成手段法に基づく方式を用いることにより、
補助多項式は、推定誤り位置多項式と推定誤り数値多項
式を算出する際の作業多項式として効率的に算出され
る。すなわち、補正を実行するために必要な補助多項式
を算出するための特別な装置を必要としないという特徴
をもつ。多項式演算装置で算出された推定誤り位置多項
式と推定誤り数値多項式を符号語長がq+1の二重伸長
リードソロモン符号に関する推定誤り位置多項式と推定
誤り数値多項式に補正するために、本発明は多項式補正
装置を備える。
【0011】多項式補正装置は、多項式演算装置で算出
された推定誤り位置多項式と推定誤り数値多項式を前述
の補助多項式と受信符号語中の前述のq個のシンボルを
除いた1個のシンボルに対応するシンドロロームによっ
て補正し、補正された推定誤り位置多項式と推定誤り数
値多項式を出力する。
【0012】この多項式補正装置と多項式演算装置が本
発明において中心的な役割を果たす。これらによって、
二重伸長リードソロモンの軟判定復号装置に関する推定
誤り位置多項式と推定誤り数値多項式の算出に要する計
算回数、および装置規模を従来技術の1/tにすること
ができ、より経済的、かつ効率的な二重伸長リードソロ
モン復号装置を構成することが可能となる。
【0013】
【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して説明する。以下の説明において使用す
る二重伸長リードソロモン符号は次の三つの条件式
(1)を全て満たす。有限体GF(q)上のベクトル
【0014】
【外1】
の集合であるとする。
【0015】
【数1】
【0016】ここで、αは有限GF(q)の原始元とす
る。この二重伸長リードソロモン符号の符号長はq+1
であり、情報シンボル数はq−d+2(qは素数のべき
乗)となる。
【0017】図1は本発明の一実施形態の二重伸長リー
ドソロモン復号装置を示すブロック図である。バッファ
1は受信符号語において信頼度の最も低いd−1個の位
置を指定する指標を一時的に保存する。シンドローム算
出装置2は、q+1個のシンボルからなる受信符号語
(w0 ,w1 ,・・・,wq )と、受信符号語中の0,
1,2,・・・,q−1番目の受信シンボルにおいて
(先頭を0番目とする)、信頼度が最も低いd−2個の
位置を指定する指標(バッファ1に保存されている)を
入力とし、d−2個のシンボルからなるシンドロームS
0 ,S1 ,・・・,Sd-3 を出力する。シンドロームの
算出処理の詳細について説明する。受信符号語(w0 ,
w1 ,・・・,wq )に関して、S’0 ,S’1 ,・・
・,S’d-2を次式(1)のように算出する。
【0018】
【数2】
【0019】各S’j をd−3−jの項の係数とするd
−3次の多項式を次式(2)のように決める。
【0020】
【数3】
【0021】このS’ (x)によって、シンドロームを
係数とする多項式S(x)=S0 +S1 x+・・・+S
d-3 xd-3 を次式(3)にしたがって算出する。なお、
x0,x1 ,・・・,xd-3 をバッファ1に保存され
た、受信符号語中の0,1,2,・・・,q−1番目の
受信シンボルにおいて信頼度が最も低いd−2個の位置
を指定する指標とする。また、modxd-2 で割った剰
余をとることを意味する
【0022】
【数4】
【0023】シンドロームS0 ,S1 ,・・・,Sd-3
は、受信符号語中の0,1,・・・,q−1番目のシン
ボルから算出され、受信符号語中のwq を除いたq個の
シンボルに対応している。バッファ3は受信符号語を一
時的に保存する。多項式演算装置4は、シンドローム算
出装置2の出力であるシンドロームS0 ,S1 ,・・
・,Sd-3 と前述の信頼度低位置に関する指標x0 ,x
1 ,・・・,xd-3 を入力とし、各k=0,1,・・
・,d−2に関して、受信符号語の中の0,1,2,・
・・,q−1番目の受信シンボルにおいて信頼度が最も
低いd−2−k個の位置(xk ,xk+1 ,・・・,x
d-3 )を消失位置とする推定誤り位置多項式P (k)(x)
と推定誤り数値多項式R(k)(x)の組を算出し、出力す
る。また、多項式演算装置4は、各k=0,1,・・
・,d−2について、P(k)(x),R(k)(x)を補正す
るための補助多項式U(k)(x),V(k)(x)を算出す
る。この多項式演算装置4で実行される手続きの詳細に
ついては後述する。
【0024】多項式補正装置5は、多項式演算装置4の
出力であるP(k)(x),R(k)(x),U(k)(x),V
(k)(x)(k=0,1,・・・,d−2)と、前述の
S’d-2(式(1))を入力とする。S’d-2 は、受信
符号語中のq番目のシンボルwqに対応したシンドロー
ムである。多項式補正装置5は、多項式P(k)(x)の次
数をL(k) とおくと、2L(k) ≠k+1であるとき、P
(k)(x),R(k)(x)をそのまま出力し、2L(k) =k
+1のとき、q番目の受信シンボルwq に対応したシン
ドロームS’d-2 によって定まるパラメータβを用い
て、P(k)(x),R(k )(x)を次のように補正し、出力
する。
【0025】
【数5】
【0026】この多項式補正装置5で実行される手続き
については後述する。
【0027】誤り数値算出装置6は、多項式補正装置5
の出力(これを再びP(k)(x),R (k)(x)と記す)か
ら、受信符号語中のq+1個のシンボルの中で、各j=
0,2,・・・,2tについて、信頼度が最も低いd−
1−j個の位置を消失位置とした場合に得られるエラー
ベクトル
【0028】
【外2】
を算出し、出力する。この誤り数値算出装置6は、チェ
ンサーチ処理と誤り数値推定処理からなる。チェンサー
チ処理は次式(4)を満足するαi を0,1,α,α
2 ,・・・,αq-2 の中から全探索によって算出する処
理であり、式(4)を満足するαi が推定誤り位置を示
す指標となる。なお、受信符号語中のi番目の位置を表
わす指標をαi (o≦i≦q−1)とする。
【0029】
【数6】
【0030】誤り数値推定処理は、j=0,1,・・
・,d−1について、エラーベクトル
【0031】
【外3】
を算出する処理であり、以下に示す手順で算出される。
受信符号語中のq+1個のシンボルの中で信頼度が最も
低いd−i−j個の位置を示す指標(バッファ1に保存
されている)の集合をDj と表す。また、推定誤り位置
多項式P(j)(x)の形式的微分をP(j) ’(x)と表わ
す。以下に示すように、誤り数値推定処理は、αq がD
j の元か否かによって若干異なる。
【0032】
【数7】【0033】推定符号語選択装置7は、誤り数値算出装
置6の出力
【0034】
【外4】
の各々について、受信符号語
【0035】
【外5】
との間の信頼度付き距離を算出し、その信頼度付き距離
が最も小さい一つのエラーベクトル
【0036】
【外6】
を出力する。
【0037】
【外7】はバッファ3に保存されている受信符号語に加算され
る。これは本発明の復号装置の出力となる。なお、訂正
不能な誤りが検出されている場合には、受信符号語がそ
のまま出力される。
【0038】図2は多項式演算装置4の処理を示すフロ
ーチャートである、図2のフローチャートは、d−2の
反復演算からなる反復演算アルゴリズムを示しており、
以下では、この反復演算ルゴリズムの詳細について説明
する。この反復演算アルゴリズムは、受信符号語中の
0,1,・・・,q−1番目のq個の受信シンボルにお
いて(先頭を0番目とする)、信頼度が最も低いd−2
個の位置を示す指標(x 0 ,x1 ,・・・,xd-3 )
と、式(3)に示したシンドロームS0 ,S1 ,・・
・,Sd-3 を係数とするシンドローム多項式S(x)か
ら、各k=0,1,・・・,d−2に関して、次の四つ
の条件を満足する多項式の組P(k)(x),R(k )(x)と
後述の補助多項式の組U(k) ( x),V(k)(x)を算出
する。
【0039】
【数8】
【0040】なお、S’(x)は式(2)に示したd−
3次の多項式とする。上述の四条件を満足する多項式の
組P(k)(x),R(k)(x)に関して、L(k) =degP
(k)(x)とする。条件(d)より、L(k) の値は一意的
に決まる。以下では、P(k)(x),R(k)(x)が条件
(a)(b)(c)(d)を満足しているものとし、こ
のP(k)(x),R(k)(x)を用いて、k+1に関する四
条件を満足する多項式の組P(k+1) ( x),R(k+1) (
x)を算出する方法を説明する。多項式の組P
(k )(x),R(k)(x)は次のような性質をもつ。
【0041】性質1 多項式R(k)(x)が、x−xk で
割り切れるとき、P(k+1)(x)=P (k)(x),R
(k+1)(x)=Q(k)(x)とおくと、P(k+1)(x),R
(k+1)(x)はk+1に関する条件(a)(b)(c)
(d)を満足する。なお、Q(k)(x)=R(k)(x)/
(x−xk )とおく。
【0042】多項式R(k)(x)がx−xk で割り切れる
ときは、性質1の方法により、P(k +1)(x),R
(k+1)(x)を算出することができる。次に、R(k)(x)
がx−xkで割り切れないときについて説明する。次の
ような性質がある。
【0043】性質2 多項式R(k)(x)がx−xk で割
り切れず、かつ2L(k) ≦kであるとき、P(k+1)(x)
=(x−xk )P(k)(x),R(k+1)(x)=R(k)(x)
とおくと、P(k+1)(x),R(k+1)(x)はk+1に関す
る条件(a)(b)(c)(d)を満足する。
【0044】多項式R(k)(x)がx−xk で割り切れ
ず、かつ2L(k) ≦kであるときは、性質2の方法によ
り、P(k+1)(x),R(k+1)(x)を算出することができ
る。次に、R(k)(x)がx−xk で割り切れず、かつ2
L(k) ≧k+1であるときについて説明する。まず、各
k=0,1,2,・・・,d−2に関して、次の条件を
満足する多項式の組(U(k)(x),V(k)(x))を導入
する。この多項式の組(U(k)(x),V(k)(x))は、
後述の多項式補正装置5において、P(k)(x),R
(k)(x)を補正する補助多項式となる。
【0045】
【数9】
【0046】以下では、多項式の組(U(k)(x),V
(k)(x))が、条件(A)(B)(C)(D)を満足し
ているものと仮定して説明する。さて、R(k)(x)がx
−xkで割り切れず、かつ2L(k) ≧k+1であるとき
のP(k+1)(x),R(k+1)(x)の算出に関して、次の性
質がある。
【0047】性質3 R(k)(x)でx−xk で割り切れ
ず、かつ2L(K) ≧k+1であるとする。V(k)(x)が
x−xk で割り切れるとき、P(k+1)(x)=(x−x
k )P (k)(x),R(k+1)(x)=R(k)(x)とおくと、
P(k+1)(x),R(k+1)(x)はk+1に関する条件
(a)(b)(c)(d)を満足する。
【0048】最後に、V(k)(x)がx−xk で割り切れ
ないときについて説明する。R(k)(x)をx−xk で割
った商をQ(k)(x)とし、余りをrk とする。また、V
(k)(x)をx−xk で割った商をW(k)(x)とし、余り
をvk とする。このとき、次の性質により、P
(k+1)(x),R(k+1)(x)が算出される。
【0049】性質4 R(k)(x)がx−xk で割り切れ
ず、かつ2L(k) ≧k+1であるとする。V(k)(x)が
x−xk で割り切れないとき、P(k+1)(x)=P(k) −
(r k /vk )U(k)(x),R(k+1)(x)=Q(k)(x)
−(rk /vk )W(k)(x)とおくと、P(k+1)(x),
R(k+1)(x)はk+1に関する条件(a)(b)(c)
(d)を満足する。
【0050】性質1,2,3,4より、kに関する条件
(a)(b)(c)(d)を満足する多項式の組P
(k)(x),R(k)(x)から、k+1に関する多項式の組
P(k+1)(x),R(k+1)(x)を算出することができる。
また、kに関する条件(A)(B)(C)(D)を満足
する多項式の組U(k)(x),V(k)(x)から、k+1に
関する多項式の組U(k+1)(x),V(k+1)(x)を算出す
るには、次の手続きを実行すればよい。
【0051】
【数10】
以上の説明により、k=0の初期状態として、
【0052】
【数11】
とおくことによって、反復演算アルゴリズムが得られ
る。なお、S(x)は式(3)で説明されている。
【0053】図2のフローチャートは、k=0,1,・
・・,d−2に関して、P(k)(x),R(k)(x),U
(k)(x),V(k)(x)を逐次的に算出する反復演算アル
ゴリズムである。P(k)(x),R(k)(x)は各々推定誤
り位置多項式、推定誤り数値多項式であり、U
(k)(x),V(k)(x)は補助多項式である。図2のフロ
ーチャートから明らかなように、後述の多項式補正装置
5において補正処理を実行するための補助多項式U
(k)(x),V(k)(x)は、反復演算アルゴリズムにおけ
る作業多項式として導入されている。すなわち、本発明
は補助多項式算出のための特別な装置が必要ないという
特徴をもっている。
【0054】以上の反復演算アルゴリズムに関する具体
的な実行例を示す。GF(24 )上の(17,11,
7)二重伸長リードソロモン符号を例にとる。符号ブロ
ック長は17、情報シンボル数は11、最小距離は7で
ある。パラメータq,dは、この場合各々q=16、d
=7となる。受信符号語を(0,0,0,0,0,
α9,0,0,0,α14,0,0,0,0,0,α7 ,
0)とし、これに対応する信頼度情報を(1,1,1,
1,1,1,1,1,1,0.8,0.8,0.8,
0.8,0.8,0.8,0.9,1)とする。ここ
で、αはα4 +α+1=0を満足するGF(24 )の原
始元とし、信頼度情報は、0に近いほど信頼度が低く、
1に近いほど信頼度が高いとする。受信符号語中の0,
1,・・・,q−1番目のシンボルにおいて信頼度が最
も低いd−2個の位置を示す指標は、{α10,α11,α
12,α13,α14}となる。ここでαi は先頭から数えて
i番目の位置を表す(先頭は0番目)。シンドローム
は、式(2)(3)の計算によって、S 0 =α12,S1
=α10,S2 =α2 ,S3 =α12,S4 =α6 と算出さ
れる。この入力に対して、図2のフローチャートに示し
た処理を実行する多項式演算装置4は、図3に示したP
(k)(x),R(k)(x),U(k)(x),V(k)(x)をk=
0,1,2,3,4,5の各々にについて算出する。こ
れらの算出結果は多項式補正装置5へ出力される。
【0055】図4は、多項式補正装置5の一例を示すブ
ロック図である。この多項式補正装置5には、前述の多
項式演算装置4で算出された推定誤り位置多項式と推定
誤り数値多項式の組P(k)(x),R(k)(x)と補助多項
式の組U(k)(x),V(k)(x)、および前述のS’d-2
が入力される。後に説明するように、実際この例におい
ては、次の条件式が満たされるときにのみ多項式の補正
がなされる。
【0056】
【数12】
したがって、条件式(6)が満たされないときには、多
項式補正装置の入力P (k)(x),R(k)(x)がそのまま
出力されることになるため、この場合には、U
(k)(x),V(k)(x)を保存しておく必要がない。
【0057】受信符号語中に前述の{xk ,xk+1 ,・
・・,xd-3 }を消失位置とする訂正可能な誤りが含ま
れており、なおかつ多項式演算装置4の出力P
(k)(x),R (k)(x)が、2degP(k)(x)<k+1
を満足している場合、P(k)(x),R (k)(x)は各々正
しい誤り位置多項式と誤り数値多項式となり、誤り数値
算出装置6によって、正しくエラーベクトル
【0058】
【外8】
を求めることができる。
【0059】前述の条件式(6)が満たされている場
合、一般には多項式演算装置4の出力である推定誤り位
置多項式P(k)(x)、推定誤り数値多項式R(k)(x)
は、各々誤り位置多項式、誤り数値多項式に一致しな
い。多項式補正装置5は、この多項式演算装置4の出力
P(k)(x),R(k)(x)から、これに補正を加えること
によって、正しい誤り位置多項式と誤り数値多項式を算
出する方法を提供している。受信符号語中に{xk ,x
k+1 ,・・・,xd-3 }を消失位置とする訂正可能な誤
りが含まれている場合には、正しい誤り位置多項式σ
(x)、誤り数値多項式ω(x)は次の四つの条件を満
足する唯一の多項式の組となる。
【0060】
【数13】
【0061】なお、S’d-2 は式(1)で説明されてい
る。前述の条件式(6)を満足する場合、多項式演算装
置の出力P(k)(x),R(k)(x)は条件(a)(b)
(c)(d)を、U(k)(x),V(k)(x)は条件(A)
(B)(C)(D)を満足することから、誤り位置多項
式σ(x)、および誤り数値多項式ω(x)は次のよう
にして算出することができる。
【0062】
【数14】
【0063】ここで、ru は、多項式R(k)(x)のd−
2−degP(k)(x)次の項の係数となる。式(7)は
ω(x)に関する
【0064】
【外9】
の項は、エラーベクトルの算出には影響を及ぼさないた
め省略することができる。同様の理由によって、多項式
R(k)(x)の補正に関する処理を簡略化すると、R
(k)(x)に関する補正は、P(k)(x)の補正と全く同様
に、補助多項式V(k)(x)にS’d-2 +ru を乗じた多
項式を加算することとしてもよい。したがって、条件式
(6)が満たされている場合、図4の多項式補正処理に
よって、所望の多項式の組を得ることができる。なお、
2degP(k)(x)>k+1の場合には、受信符号語中
には消失位置{xk ,xk+1 ,・・・,xd-3 }に関し
て、訂正不可能な誤りが含まれていることになる。
【0065】以上の処理に関して、多項式演算装置4の
説明で用いた具体的な実行例を引用して説明する。図3
に示した多項式演算装置4の出力において例えばP
(5)(x),R(5) ( x)は、各々
P(5)(x)=x3 +x2 +α,R(5)(x)=x2 +α3 x+α13・・・(8)
であり、これを既に説明した処理によって補正する。多
項式P(5)(x)の次数が3であるから、2・3=5+1
より、条件式(6)を満たす。また、式(1)より、
S’5 =α9 であり、R(5)(x)の2(=5−3)次の
項の係数が1であることから、S’5 +ru =α7 と計
算される。これより、多項式補正装置5の出力P
(5)(x),R(5)(x)は、次のように計算される。
【0066】P(5)(x)=x3 +x2 +α+α7 (α6
x2 +α7 x+α9 )=x3 +α6x2+α14x
R(5)(x)=x2 +α3 x+α13+α7 (x2 +α13x
+α6 )=α9 x2 +α11x
以下、P(5)(x),R(5)(x)は誤り数値推定装置6に
おいて処理される。前述のチェンサーチ処理により、P
(5)(0)=P(5)(α5 )=P(5)(α9 )=0が算出さ
れ、前から数えて5,9,15番目のシンボルに誤りが
生じていると判定される(先頭を0番目とする)。次
に、前述の誤り数値の算出に関する手順をP (5)(x),
R(5)(x)について適用すると、k=5に関するエラー
ベクトルは
【0067】
【外10】
と算出される。また、このエラーベクトルと前述の受信
符号語との間の信頼度付き距離は2.7となる。P
(i)(x),R(i)(x),(i=0,1,2,3,4)に
ついても同様に補正し、エラーベクトル、および信頼度
付き距離を算出する。推定符号語選択装置7において最
終的に前述のエラーベクトル
【0068】
【外11】が選択され、送信符号語として(0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0)が算出さ
れ、加算器8でバッファ3の出力と加算される。これが
本発明の二重伸長リードソロモン復号装置全体の出力と
なる。
【0069】
【発明の効果】以上説明したように、本発明は、多項式
演算装置と多項式補正装置を備え、この多項式演算装
置、およびその後処理を実行する多項式補正装置によっ
て、従来技術における問題点であった、t個のユークリ
ッド除算装置による並列処理(あるいは繰り返し処理)
を実行する必要がなくなり、計算回数、装置規模は1/
t程度になり、また本発明の二重伸長リードソロモン軟
判定復号装置が算出する推定符号語は、従来技術による
復号装置が算出するものに完全に一致し、推定符号語中
の各シンボルに関する誤り率は従来技術によるものと全
く同じとなる。すなわち、従来技術と比較して、復号後
の誤り率を全く劣化させることなしに、推定誤り位置多
項式、推定誤り数値多項式の算出に要する計算回数、装
置規模を1/t程度にすることができ、より経済的、か
つ効率的な二重伸長リードソロモン軟判定復号装置を構
成することができる。DETAILED DESCRIPTION OF THE INVENTION
[0001]
TECHNICAL FIELD The present invention relates to digital communication,
Or in decoding error-correcting codes to increase the reliability of storage.
And information on the reception status of the received codeword (reliability information)
The present invention relates to a soft decision decoding technique using.
[0002]
2. Description of the Related Art Soft-decision decoding is a method of decoding errors contained in a received codeword.
When estimating the transmission codeword, the
Uses information (reliability information) on the reception status of each symbol.
To increase the probability of correctly estimating the transmitted codeword.
ing. The theoretical principle of this soft decision decoding is
ー, David Jr., “Generalized Minimum Distance Decoding”, I
EEE Information Theory Subcommittee Bulletin, IT-12, 125-13
Page 1, April 1966 (Fornery, G.D. Jr.,
“Generalized Minimum Distance Decoding”, IEEETr
ansactions on Information Theory, vol.IT-12, pp.12
5-131, April 1966).
Is knowledge.
The basic problem with soft decision decoding is that
To efficiently and efficiently construct a high-speed soft decision decoder.
You. As a decoder for double-extended Reed-Solomon code,
Yama, Fujiwara, Onishi, Ishida “Double-extended Reed-Solomon codes”
No. 13 decoding method, IEICE National Convention, No. 13.
91, 1984. This prior art
Is a configuration of a hard decision decoding device for a double-extended Reed-Solomon code.
Although it is related to the configuration, the configuration of the soft decision
Can be applied to The technique in this case is
A series of estimation error locator polynomials giving word candidates and estimation errors
Euclidean divider for fast calculation of numerical polynomials
Are provided.
A schematic block diagram of a soft decision decoding apparatus according to the prior art
A lock diagram is shown in FIG. Received code to be input to decoding device
Word and reliability information for each symbol of the received codeword
Are stored in buffers 1 and 3, respectively. Syndrome arithmetic
The output processing device 2 calculates the syndrome using these as inputs.
Out and output. Syndrome consisting of d-1 symbols
Is t = [(d-1) / 2] parallelized Euc
Lid divider 91 ~ 9t Entered into each Euclidean
Divider 91 ~ 9t Is the estimated error locator polynomial and the number of estimated errors
Calculate the value polynomial. Each of these polynomial sets is d−1−
In k erasure error correction (k = 2, 4,..., 2t)
Estimation error position / corresponding to numerical polynomial, estimation of t sets in total
An error locator polynomial and a numerical polynomial are output. Note that d is
Indicates the minimum design distance of the code. [X] is less than or equal to x
Represents the maximum integer. Euclidean divider 91 ~ 9t Out of
T estimated error locator polynomials and estimated error numerical polynomials
The equation is input to the error value calculating device 6, and first, the estimated error position is calculated.
The estimated error position corresponding to the zero of the polynomial is calculated, and
Estimate from the estimated error location polynomial and the estimated error numerical polynomial
An error value at the error position is estimated. Calculated error
The output value is output to the estimated codeword selecting device 7.
[0005]
SUMMARY OF THE INVENTION In soft decision decoding technology
The most basic problem is that a high-speed soft decision decoding
And the reception state of the received codeword is
Estimate a transmitted codeword without using reliability information
With the same processing time and device scale as hard decision decoding
It is desirable to configure. Double-extended Reed-Solomon mark
In the prior art relating to
Of a series of estimated error locator polynomials and estimated error numerical polynomials
As shown in FIG. 5, the output processing is performed by using a Euclidean divider.
This is realized by t-parallelization. Previous hard decision reversion
The Euclidean division process is executed once in the
Therefore, there is no need for such parallelization. You
That is, the conventional soft code for the double-extended Reed-Solomon code is used.
Necessary for Euclidean division processing in decision decoding
The device scale becomes t times. Also, to reduce the size of the equipment,
If column (repeated) processing is performed, t times the calculation time is required.
It becomes important. No effective method has been proposed for this task
Not.
An object of the present invention is to provide a double-extended Reed-Solomon.
For soft decision decoding of codes,
Of computations required for parallelization of data division and the scale of the device
To solve the problem of the conventional soft decision decoding apparatus
More Economical and Efficient Double Stretch Reed-Solomon
It is to provide a decoding device.
[0007]
SUMMARY OF THE INVENTION A double-extended lead according to the present invention.
The Solomon decoding device has a code block length of q + 1 (q is a prime number).
Power of a number) for a double-extended Reed-Solomon code,
Received codeword and reliability information indicating the reception state of the received codeword
Is used to calculate an estimated codeword candidate.
From among the codewords most similar to the received codeword,
To correct a code error in the received codeword.
In the error correction decoding device, the reliability information and q + 1
Included in the q symbols in the received codeword
All estimated error locator polynomials and estimations corresponding to errors
A polynomial operation device for calculating a set of error numerical polynomials;
One symbol other than the q symbols in the codeword
Using the auxiliary polynomial calculated by the polynomial calculation device
To complement the estimated error locator polynomial and the estimated error numerical polynomial.
A correcting polynomial correction device and the corrected estimated error position
Calculate estimated codeword candidates from the polynomial and the estimated error numerical polynomial
Device that selects the most similar codeword after the received code.
Equipment.
According to an embodiment of the present invention, a polynomial arithmetic unit is provided.
Is the received codeword and the confidence in the received codeword.
D-1 with the lowest reliability selected by the degree information (d is
Syndrome calculated from the index specifying the position of (natural number)
From the repetition operation algorithm consisting of a maximum of d-2 repetition operations.
Algorithm, the k-th iteration of the iterative algorithm
When an iterative operation is performed on an eye (k is a natural number),
Out of the q symbols of d−2−
The above-mentioned estimated error locator polynomial where k positions are erasure positions
And the set of estimated error numerical polynomials are calculated by
The estimated error locator polynomial calculated at the time of execution and the number of estimated errors
Calculated from a set of value polynomials,
The polynomial and the estimated error numerical polynomial to the polynomial correction device.
The auxiliary polynomials for correction in the (k-1) th time
Two kinds of auxiliary polynomials calculated at the time of execution of the iterative operation of the eye
Is calculated.
According to an embodiment of the present invention, a polynomial correction
The apparatus executes the k-th iteration of the polynomial calculation processing apparatus.
The degree of the estimated error locator polynomial calculated at the time is (k +
1) / 2, one symbol in the received codeword
Syndrome corresponding to Bol and d of the error numerical polynomial
The above two types of sums with the coefficient of the term of −2− (k + 1) / 2 order
The estimated error locator polynomial of each of the polynomials multiplied by the auxiliary polynomial of
Correction of the polynomial added to the polynomial and the estimated error numerical polynomial
The estimated error locator polynomial and the estimated error numerical polynomial
It is characterized by doing.
The present invention relates to a syndrome calculating device, a polynomial
An arithmetic device and a polynomial correction device are provided. Sindrow
The system calculating unit calculates a received codeword consisting of q + 1 symbols.
And the least reliable of q symbols in the received codeword
Calculate the syndrome from the index designating d-1 positions
And outputs it to a polynomial arithmetic unit and a polynomial correction unit. Many
The term operation unit calculates the syndrome and the
d−2−k symbols having the lowest reliability among the q symbols
Estimated error locator polynomial with position as erasure position and estimated error number
.., D−2 with respect to k = 0, 1,..., D−2
It is calculated sequentially. Also, the polynomial arithmetic device is calculated
The estimated error location polynomial and the estimated error numerical polynomial
Are simultaneously calculated. Multiple shifts
By using a method based on the register synthesis means method,
The auxiliary polynomial consists of the estimation error location polynomial and the estimation error numerical polynomial.
Efficiently calculated as a work polynomial when calculating the formula
You. That is, the auxiliary polynomial needed to perform the correction
Does not require a special device for calculating
With. Estimated error position polynomial calculated by polynomial arithmetic unit
Double expansion of equation and estimated error numerical polynomial with codeword length q + 1
Estimation error locator polynomial and estimation for Reed-Solomon codes
In order to correct the error numerical polynomial, the present invention uses a polynomial correction
Equipment.
The polynomial correction device is calculated by a polynomial arithmetic device.
Estimated error location polynomial and estimated error numerical polynomial
And the aforementioned q symbols in the received codeword
The syndrome corresponding to one removed symbol
Estimated error locator polynomial and estimated error number
Output a value polynomial.
The polynomial correction device and the polynomial operation device are
Plays a central role in the invention. By these,
Estimation of Double Decompressed Reed-Solomon Soft Decision Decoder
The total number of error locator polynomials and estimated error numerical polynomials
Reduce the number of calculations and device scale to 1 / t of the conventional technology
More economical and efficient double-stretching lead solo
This makes it possible to configure a Mont decoding device.
[0013]
Next, an embodiment of the present invention will be described.
This will be described with reference to the drawings. Used in the following description
Double-extended Reed-Solomon code has the following three conditional expressions
Satisfy all (1). Vector on finite field GF (q)
[0014]
[Outside 1]
Is a set of
[0015]
(Equation 1)
Here, α is a primitive element of finite GF (q).
You. The code length of this double-extended Reed-Solomon code is q + 1
And the number of information symbols is q−d + 2 (q is a prime power
Squared).
FIG. 1 shows a double extended lead according to an embodiment of the present invention.
It is a block diagram showing a Dosolomon decoding device. buffer
1 is the d-1 place with the lowest reliability in the received codeword
To temporarily store the index specifying the position. Syndrome arithmetic
The output device 2 receives the received codeword consisting of q + 1 symbols.
(W0 , W1 , ..., wq ) And 0,
1, 2,..., Q-1st received symbol
(Starting at the 0th), d-2 with the lowest reliability
Index to specify the position (stored in buffer 1)
As input, syndrome S consisting of d-2 symbols
0 , S1 , ..., Sd-3 Is output. Syndrome
Details of the calculation process will be described. Received codeword (w0 ,
w1 , ..., wq ), S '0 , S '1 , ...
・, S 'd-2Is calculated as in the following equation (1).
[0018]
(Equation 2)
Each S 'j Is the coefficient of the term d-3-j
A -3 order polynomial is determined as in the following equation (2).
[0020]
(Equation 3)
With this S ′ (x), the syndrome is
Polynomial S (x) = S as a coefficient0 + S1 x + ... + S
d-3 xd-3 Is calculated according to the following equation (3). In addition,
x0, X1 , ..., xd-3 Is stored in buffer 1.
, Q-1 th of the received codeword
D-2 positions with the lowest reliability in the received symbol
Is an index to specify. Also, modxd-2 Remainder divided by
Means taking extra time
[0022]
(Equation 4)
Syndrome S0 , S1 , ..., Sd-3
Are the 0th, 1st,..., Q−1th synths in the received codeword.
, And w in the received codewordq Q
It corresponds to the symbol. Buffer 3 stores the received codeword
Save occasionally. The polynomial arithmetic unit 4 calculates the syndrome
Syndrome S which is the output of the delivery device 20 , S1 , ...
・, Sd-3 And the index x relating to the aforementioned low reliability position0 , X
1 , ..., xd-3 , And k = 0, 1, ...
., D-2, 0, 1, 2,.
.., the reliability is highest in q-1st received symbol
The lower d-2-k positions (xk , Xk + 1 , ..., x
d-3 ) Is the estimated error locator polynomial P (k)(x)
And the estimation error numerical polynomial R(k)Calculate and output the set (x)
You. In addition, the polynomial arithmetic unit 4 calculates k = 0, 1,.
, For d-2, P(k)(x), R(k)Correct (x)
Auxiliary polynomial U for(k)(x), V(k)Calculate (x)
You. Details of the procedure executed by the polynomial arithmetic unit 4
This will be described later.
The polynomial correction device 5 is a polynomial
Output P(k)(x), R(k)(x), U(k)(x), V
(k)(x) (k = 0, 1,..., d−2)
S 'd-2(Equation (1)) is input. S 'd-2 Is received
Q-th symbol w in codewordqDraw corresponding to
It is. The polynomial correction device 5 has a polynomial P(k)Next to (x)
Number L(k) Otherwise, 2L(k) When ≠ k + 1, P
(k)(x), R(k)(x) is output as it is and 2L(k) = K
When +1, the q-th received symbol wq Thin corresponding to
Drome S 'd-2 Using the parameter β determined by
And P(k)(x), R(k )Correct (x) as follows and output
I do.
[0025]
(Equation 5)
Procedures executed by the polynomial correction device 5
Will be described later.
The error value calculation device 6 includes a polynomial correction device 5
Output (this is again P(k)(x), R (k)(written as (x)) or
From among the q + 1 symbols in the received codeword, each j =
For 0, 2,..., 2t, d-
Error obtained when 1-j positions are lost positions
vector
[0028]
[Outside 2]
Is calculated and output. This error value calculation device 6
Search processing and error value estimation processing. Changer
H processing that satisfies the following equation (4)i To 0,1, α, α
Two , ..., αq-2 Processing to calculate by full search from
Α that satisfies equation (4)i Indicates the position of the estimation error
Index. Note that the i-th position in the received codeword is displayed.
The index to pass is αi (O ≦ i ≦ q−1).
[0029]
(Equation 6)
The error value estimating process is performed by j = 0, 1,.
·, For d-1, the error vector
[0031]
[Outside 3]
Is calculated by the following procedure.
The most reliable of q + 1 symbols in the received codeword
Index indicating low dij positions (saved in buffer 1)
D)j It expresses. Also, the estimated error position
Polynomial P(j)Let P be the formal derivative of (x)(j) ’(X)
You. As shown below, the error value estimating process is represented by αq Is D
j Slightly different depending on whether or not it is the original.
[0032]
(Equation 7)The estimated codeword selecting device 7 includes an error value calculating device.
Output of device 6
[0034]
[Outside 4]
For each of the received codewords
[0035]
[Outside 5]
Calculates the distance with reliability and the distance with reliability
Is the smallest error vector
[0036]
[Outside 6]
Is output.
[0037]
[Outside 7]Is added to the received codeword stored in buffer 3.
You. This is the output of the decoding device of the present invention. In addition, correction
If an impossible error is detected, the received codeword
Output as is.
FIG. 2 is a flowchart showing the processing of the polynomial arithmetic unit 4.
FIG. 2 is a flowchart of FIG.
It shows an iterative operation algorithm consisting of iterative operations,
The details of this iterative algorithm are described below.
I do. This iterative algorithm is based on the
0, 1,..., Q-1
(Starting at 0th), d-2 with the lowest reliability
Index (x 0 , X1 , ..., xd-3 )
And the syndrome S shown in equation (3)0 , S1 , ...
・, Sd-3 Is a syndrome polynomial S (x)
For each k = 0, 1,..., D-2, the following four
P that satisfies the condition(k)(x), R(k )(x) and
A set U of auxiliary polynomials described below(k) (x), V(k)Calculate (x)
I do.
[0039]
(Equation 8)
Note that S '(x) is d-
It is a cubic polynomial. Of a polynomial that satisfies the above four conditions
Set P(k)(x), R(k)Regarding (x), L(k) = DegP
(k)(x). From condition (d), L(k) Value is unique
Is decided. In the following, P(k)(x), R(k)(x) is a condition
It is assumed that (a), (b), (c), and (d) are satisfied.
P(k)(x), R(k)Using (x), the four for k + 1
A set of polynomials P satisfying the condition(k + 1) (x), R(k + 1) (
A method for calculating x) will be described. Polynomial set P
(k )(x), R(k)(x) has the following properties.
Property 1 Polynomial R(k)(x) is xxk so
When divisible, P(k + 1)(x) = P (k)(x), R
(k + 1)(x) = Q(k)(x), P(k + 1)(x), R
(k + 1)(x) is the condition (a) (b) (c) for k + 1
(D) is satisfied. Note that Q(k)(x) = R(k)(x) /
(Xxk )far.
The polynomial R(k)(x) is xxk Divisible by
Sometimes, by the method of Property 1, P(k +1)(x), R
(k + 1)(x) can be calculated. Next, R(k)(x)
Is xxkA case in which it is not divisible by will be described. next
There is such a property.
Property 2 Polynomial R(k)(x) is xxk Divided by
Unbreakable and 2L(k) When ≤k, P(k + 1)(x)
= (Xxk ) P(k)(x), R(k + 1)(x) = R(k)(x)
In other words, P(k + 1)(x), R(k + 1)(x) is related to k + 1
Conditions (a), (b), (c) and (d) are satisfied.
Polynomial R(k)(x) is xxk Divisible by
And 2L(k) ≤k, The property 2 method
, P(k + 1)(x), R(k + 1)(x) can be calculated
You. Next, R(k)(x) is xxk Not divisible by and 2
L(k) ≧The case when k + 1 is described. First, each
For k = 0, 1, 2,..., d−2,
A set of satisfying polynomials (U(k)(x), V(k)(x))
I do. This set of polynomials (U(k)(x), V(k)(x))
In a polynomial correction device 5 described later, P(k)(x), R
(k)An auxiliary polynomial for correcting (x) is obtained.
[0045]
(Equation 9)
In the following, a set of polynomials (U(k)(x), V
(k)(x)) satisfies the conditions (A), (B), (C), and (D).
The explanation will be made on the assumption that the Well, R(k)(x) is x
-XkIndivisible and 2L(k) When ≧ k + 1
P(k + 1)(x), R(k + 1)Regarding the calculation of (x), the following gender
There is quality.
Property 3 R(k)xx in (x)k Divisible by
And 2L(K) It is assumed that ≧ k + 1. V(k)(x)
xxk When divisible by P(k + 1)(x) = (xx−x
k ) P (k)(x), R(k + 1)(x) = R(k)(x)
P(k + 1)(x), R(k + 1)(x) is the condition for k + 1
(A), (b), (c), and (d) are satisfied.
Finally, V(k)(x) is xxk Divisible by
The case when there is not is described. R(k)(x) is xxk Divided by
Q(k)(x) and the remainder is rk And Also, V
(k)(x) is xxk Quotient divided by W(k)(x) and the remainder
Vk And At this time, P
(k + 1)(x), R(k + 1)(x) is calculated.
Property 4 R(k)(x) is xxk Divisible by
And 2L(k) It is assumed that ≧ k + 1. V(k)(x)
xxk When divisible by, P(k + 1)(x) = P(k) −
(R k / Vk ) U(k)(x), R(k + 1)(x) = Q(k)(x)
− (Rk / Vk ) W(k)(x), P(k + 1)(x),
R(k + 1)(x) is the condition (a) (b) (c) for k + 1
(D) is satisfied.
From the properties 1, 2, 3, and 4, the condition on k
(A) a set of polynomials P satisfying (b), (c) and (d)
(k)(x), R(k)From (x), a set of polynomials for k + 1
P(k + 1)(x), R(k + 1)(x) can be calculated.
Also, conditions (A), (B), (C), and (D) regarding k are satisfied.
Set of polynomials U(k)(x), V(k)From (x) to k + 1
Set of polynomials U(k + 1)(x), V(k + 1)Calculate (x)
To do so, perform the following procedure.
[0051]
(Equation 10)
According to the above description, as an initial state of k = 0,
[0052]
[Equation 11]
This gives an iterative algorithm
You. Note that S (x) has been described by equation (3).
The flowchart of FIG. 2 shows that k = 0, 1,.
.., with respect to d-2, P(k)(x), R(k)(x), U
(k)(x), V(k)Iterative calculation algorithm for sequentially calculating (x)
It is a gorhythm. P(k)(x), R(k)(x) is the estimation error
Position polynomial, estimated error numerical polynomial,
(k)(x), V(k)(x) is an auxiliary polynomial. The flow of FIG.
As is clear from the chart, the polynomial correction device described later
Auxiliary polynomial U for performing the correction process at 5
(k)(x), V(k)(x) is used in the iterative algorithm
It has been introduced as a working polynomial. That is, the present invention
Says that no special device is needed for calculating the auxiliary polynomial
Has characteristics.
Specifics regarding the above iterative operation algorithm
Here is a typical execution example. GF (2Four ) On (17,11,
7) Take a double-extended Reed-Solomon code as an example. Sign bro
And the minimum distance is 7.
is there. The parameters q and d are in this case q = 16 and d, respectively.
= 7. If the received codeword is (0,0,0,0,0,
α9, 0,0,0, α14, 0,0,0,0,0, α7 ,
0) and the corresponding reliability information is (1, 1, 1,
1,1,1,1,1,1,0.8,0.8,0.8,
0.8, 0.8, 0.8, 0.9, 1). here
Where α is αFour GF (2) satisfying + α + 1 = 0Four ) Hara
As the origin, the reliability information, the closer to 0, the lower the reliability,
It is assumed that the closer to 1, the higher the reliability. 0,
, ..., q-1st symbol has the highest reliability
The index indicating d-2 positions, which are also lower, is ΔαTen, Α11, Α
12, Α13, Α14It becomes}. Where αi Is counted from the beginning
Indicates the i-th position (the beginning is the 0th position). syndrome
Is calculated by the equations (2) and (3). 0 = Α12, S1
= ΑTen, STwo = ΑTwo , SThree = Α12, SFour = Α6 And calculated
It is. This input is shown in the flowchart of FIG.
The polynomial operation device 4 that executes the processing shown in FIG.
(k)(x), R(k)(x), U(k)(x), V(k)(x) to k =
Calculation is performed for each of 0, 1, 2, 3, 4, and 5. This
These calculation results are output to the polynomial correction device 5.
FIG. 4 is a block diagram showing an example of the polynomial correction device 5.
It is a lock figure. The polynomial correction device 5 includes the aforementioned polynomial.
Estimation error locator polynomial calculated by the terminology operation device 4 and estimation
Set of error numerical polynomials P(k)(x), R(k)(x) and auxiliary polynomial
Expression set U(k)(x), V(k)(x), and the aforementioned S 'd-2
Is entered. As we will see later, this example actually
Correction of the polynomial only when the following condition is satisfied:
Is made.
[0056]
(Equation 12)
Therefore, when conditional expression (6) is not satisfied,
Input P of term correction device (k)(x), R(k)(x) as it is
In this case, U
(k)(x), V(k)There is no need to save (x).
In the received code word, the above-mentioned {xk , Xk + 1 ,
.., xd-3 Includes a correctable error with} as the erasure position
And the output P of the polynomial arithmetic unit 4
(k)(x), R (k)(x) is 2 degP(k)(x) <k + 1
Is satisfied, P(k)(x), R (k)(x) is each positive
Error location polynomial and error value polynomial
The calculating device 6 correctly calculates the error vector.
[0058]
[Outside 8]
Can be requested.
If conditional expression (6) is satisfied,
In general, the estimated error level which is the output of the polynomial arithmetic unit 4 is
Set polynomial P(k)(x), estimation error numerical polynomial R(k)(x)
Do not match the error locator polynomial and the error numerical polynomial, respectively.
No. The polynomial corrector 5 outputs the output of the polynomial arithmetic unit 4
P(k)(x), R(k)From (x), amend this
To calculate the correct error locator polynomial and the error numerical polynomial.
Offers a way to get out. {X in the received codewordk , X
k + 1 , ..., xd-3 Correctable error with} as the vanishing position
If the error locator polynomial σ
(X), the error numerical polynomial ω (x) satisfies the following four conditions.
This is the only set of polynomials to be added.
[0060]
(Equation 13)
Note that S 'd-2 Is described by equation (1)
You. If the conditional expression (6) is satisfied, the polynomial
Output P(k)(x), R(k)(x) is the condition (a) (b)
(C) and (d)(k)(x), V(k)(x) is the condition (A)
Since (B), (C) and (D) are satisfied, the error locator polynomial
Equation σ (x) and error numerical polynomial ω (x) are as follows:
Can be calculated.
[0062]
[Equation 14]
Where ru Is the polynomial R(k)d- of (x)
2-degP(k)(x) The coefficient of the next term. Equation (7) is
about ω (x)
[0064]
[Outside 9]
Has no effect on the calculation of the error vector.
Can be omitted. For similar reasons, the polynomial
R(k)Simplifying the process related to the correction of (x), R
(k)The correction for (x) is P(k)Exactly the same as (x) correction
The auxiliary polynomial V(k)(x) is S 'd-2 + Ru Multiplied by
A term may be added. Therefore, the conditional expression
When (6) is satisfied, the polynomial correction processing of FIG.
Therefore, a desired set of polynomials can be obtained. In addition,
2degP(k)If (x)> k + 1, the received codeword
消失 xk , Xk + 1 , ..., xd-3 About}
Therefore, an uncorrectable error is included.
With respect to the above processing, the polynomial
This will be described with reference to a specific execution example used in the description. FIG.
In the output of the polynomial arithmetic unit 4 shown in FIG.
(Five)(x), R(Five) (x) is
P(Five)(x) = xThree + XTwo + Α, R(Five)(x) = xTwo + ΑThree x + α13... (8)
This is corrected by the processing already described. Many
Term P(Five)Since the degree of (x) is 3, 2.3 = 5 + 1
This satisfies conditional expression (6). Also, from equation (1),
S 'Five = Α9 And R(Five)2 (= 5-3) of (x)
Since the coefficient of the term is 1, S ′Five + Ru = Α7 And total
Is calculated. Thus, the output P of the polynomial correction device 5
(Five)(x), R(Five)(x) is calculated as follows.
P(Five)(x) = xThree + XTwo + Α + α7 (Α6
xTwo + Α7 x + α9 ) = XThree + Α6xTwo+ Α14x
R(Five)(x) = xTwo + ΑThree x + α13+ Α7 (XTwo + Α13x
+ Α6 ) = Α9 xTwo + Α11x
Hereinafter, P(Five)(x), R(Five)(x) is transmitted to the error value estimating device 6.
Is processed. By the above-described chain search processing, P
(Five)(0) = P(Five)(αFive ) = P(Five)(α9 ) = 0 is calculated
Error in the fifth, ninth and fifteenth symbols
It is determined that the error has occurred (the beginning is the 0th). Next
The procedure for calculating the error value described above is described in P. (Five)(x),
R(Five)Applying for (x), the error for k = 5
Vector is
[0067]
[Outside 10]
Is calculated. Also, this error vector and the reception
The distance with reliability from the codeword is 2.7. P
(i)(x), R(i)(x), (i = 0,1,2,3,4)
The same applies to the correction, error vector, and reliability
Calculate the attached distance. In the estimated codeword selection device 7,
Eventually the aforementioned error vector
[0068]
[Outside 11]Is selected, and (0, 0, 0, 0, 0,
0,0,0,0,0,0,0,0,0,0)
The result is added by the adder 8 to the output of the buffer 3. This is
The output of the entire double-extended Reed-Solomon decoding device of the present invention and
Become.
[0069]
As described above, the present invention provides a polynomial
An arithmetic device and a polynomial correction device are provided.
And a polynomial corrector that performs subsequent processing.
Thus, t problems of the prior art,
Parallel processing (or iterative processing) by the pad division device
Does not need to be executed, and the number of calculations and the device scale are reduced by 1 /
t, and the double extended Reed-Solomon soft
The estimated codeword calculated by the decision decoding device is based on the conventional technology.
Exactly matches what the decoding device calculates, and
The error rate for each symbol of
It will be the same. That is, compared to the prior art,
Error rate without deteriorating the error rate of
The number of calculations required to calculate the
The installation scale can be reduced to about 1 / t, making it more economical.
An efficient double-extended Reed-Solomon soft decision decoder
Can be achieved.
【図面の簡単な説明】
【図1】本発明の一実施形態の二重伸長リードソロモン
復号装置を示すブロック図である。
【図2】多項式演算装置4の処理例を示すフローチャー
トである。
【図3】反復演算アルゴリズムの一例を示す図である。
【図4】多項式補正装置5の一例を示すフローチャート
である。
【図5】従来例の軟判定復号装置を示すブロック図であ
る。
【符号の説明】
1 信頼度低位置に対応するシンボルを保存するバッ
ファ
2 シンドローム算出装置
3 受信符号語を保存するバッファ
4 多項式演算装置
5 多項式補正装置
6 誤り数値算出装置
7 推定符号語選択装置
8 加算器
91 〜9t ユークリッド除算装置BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing a double-extended Reed-Solomon decoding device according to an embodiment of the present invention. FIG. 2 is a flowchart illustrating a processing example of a polynomial operation device 4; FIG. 3 is a diagram illustrating an example of an iterative operation algorithm. FIG. 4 is a flowchart illustrating an example of a polynomial correction device 5; FIG. 5 is a block diagram showing a conventional soft decision decoding device. [Description of Code] 1 Buffer for storing symbols corresponding to low reliability positions 2 Syndrome calculation device 3 Buffer for storing received codewords 4 Polynomial operation device 5 Polynomial correction device 6 Error value calculation device 7 Estimated codeword selection device 8 Adder 9 1 to 9 t Euclidean divider
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 神谷典史、「Reed−Solomo n符号のGMD復号と多重系列を生成す るシフトレジスタの合成について」、信 学技報、IT93−113、1994年 3月24 日、p.43−48 E.Berlekamp,”Boun ded Distance +1 So ft−Decision Reed−S olomon Decoding,”I EEE Transactions o n Information Theo ry,Vol.42,No.3,May 1996,pp.704−720. ────────────────────────────────────────────────── ─── Continuation of front page (56) References Noriyuki Kamiya, "Reed-Solomo GMD decoding of n codes and generation of multiplexed sequence Shift register synthesis '' Academic report, IT93-113, March 24, 1994 Days, p. 43−48 E. FIG. Berlekamp, "Bown deed Distance +1 So ft-Decision Reed-S olomon Decoding, "I EEE Transactions o n Information Theo ry, Vol. 42, No. 3, May 1996, pp. 704-720.
Claims (1)
乗)の二重伸長リードソロモン符号に関する、受信符号
語と該受信符号語の受信状態を表す信頼度情報を用いて
推定符号語候補を算出し、該推定符号語候補の中から該
受信符号語に最もよく類似した符号語を選択することに
よって、該受信符号語中の符号誤りを訂正する二重伸長
リードソロモン復号装置において、q+1個のシンボルからなる前記受信符号語と該受信符
号語中のq個のシンボルの内、前記信頼度情報により選
択した信頼度の最も低いd−2個(dは自然数)の位置
情報から算出されるシンドロームからd−2回の反復演
算からなる反復演算アルゴリズムを用い、信頼度の最も
低いd−2−(k−1)個(但し、1≦k≦d−2で、
kは該反復演算アルゴリズムの演算実行回数を示す)の
位置を消失位置とする推定誤り位置多項式に対して、こ
れに対応する補助多項式に、「d−2−k番目に信頼度
が低い位置における誤り数値多項式の値」と「この誤り
数値多項式に対応した補助多項式の値」との比を乗じた
値を加算することで、前記受信符号語中のq個のシンボ
ルの内、信頼度の最も低いd−2−k個の位置を消失位
置とする推定誤り位置多項式、推定誤り数値多項式、及
び該推定誤り位置多項式と該推定誤り数値多項式の各々
に対応した2つの補助多項式を算出する多項式演算手段
と、 前記多項式演算手段の第k回目の反復実行時に算出した
前記推定誤り位置多項式の次数が(k+1)/2に等し
い場合、前記受信符号語中の1個のシンボルに対応する
シンドロームと前記推定誤り数値多項式のd−2−(k
+1)/2次の項の係数との和を、前記多項式演算処理
手段で算出した2つの補助多項式に乗じた多項式を各々
該推定誤り位置多項式と該推定誤り数値多項式に加算し
た多項式を算出する多項式補正手段と、 前記多項式補正手段で算出された推定誤り位置多項式と
前記多項式補正手段で算出された推定誤り数値多項式と
から 推定符号語候補を算出し、前記受信符号語に最も類
似した符号語を選別する手段とを備えることを特徴とす
る二重伸長リードソロモン復号装置。(57) Claims 1. A received codeword and a reliability representing the reception state of the received codeword for a double-extended Reed-Solomon code having a code block length of q + 1 (q is a power of a prime number). A codeword in the received codeword is corrected by calculating an estimated codeword candidate using the information and selecting a codeword most similar to the received codeword from the estimated codeword candidates. In the decompressed Reed-Solomon decoding device, the reception codeword consisting of q + 1 symbols and the reception codeword.
Selected from the q symbols in the word according to the reliability information.
D-2 positions (d is a natural number) with the lowest selected reliability
D-2 repetitions from the syndrome calculated from the information
Using an iterative algorithm consisting of
Low d-2- (k-1) (where 1 ≦ k ≦ d-2,
k indicates the number of executions of the iterative operation algorithm)
For the estimated error locator polynomial whose position is the erasure position,
In the corresponding auxiliary polynomial, "d-2-kth reliability
Error value polynomial value at the position where
Value of auxiliary polynomial corresponding to numerical polynomial "
By adding the values, q symboles in the received codeword
Of the d-2-k positions with the lowest reliability
Estimated error locator polynomial, estimated error numerical polynomial, and
And the estimated error locator polynomial and the estimated error numerical polynomial, respectively.
Calculating means for calculating two auxiliary polynomials corresponding to
If, calculated at the k-th iteration of the polynomial calculator
The degree of the estimated error locator polynomial is equal to (k + 1) / 2
If it corresponds to one symbol in the received codeword
D-2- (k) of the syndrome and the estimated error numerical polynomial
+1) / 2 sum of the coefficient of the term and the polynomial
The polynomials multiplied by the two auxiliary polynomials calculated by the means are respectively
Add the estimated error location polynomial and the estimated error numerical polynomial
A polynomial correction means for calculating a polynomial equation, the estimated error location polynomial calculated by the polynomial correction means
The estimated error numerical polynomial calculated by the polynomial correction means;
And a means for calculating an estimated codeword candidate from the above, and selecting a codeword most similar to the received codeword.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31957596A JP3439309B2 (en) | 1996-11-29 | 1996-11-29 | Double-extended Reed-Solomon decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31957596A JP3439309B2 (en) | 1996-11-29 | 1996-11-29 | Double-extended Reed-Solomon decoder |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10163882A JPH10163882A (en) | 1998-06-19 |
JP3439309B2 true JP3439309B2 (en) | 2003-08-25 |
Family
ID=18111801
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31957596A Expired - Fee Related JP3439309B2 (en) | 1996-11-29 | 1996-11-29 | Double-extended Reed-Solomon decoder |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3439309B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3352659B2 (en) * | 2000-03-27 | 2002-12-03 | 松下電器産業株式会社 | Decoding device and decoding method |
KR20200137184A (en) * | 2019-05-29 | 2020-12-09 | 에스케이하이닉스 주식회사 | Memory system and method of correcting errors in the memory system |
-
1996
- 1996-11-29 JP JP31957596A patent/JP3439309B2/en not_active Expired - Fee Related
Non-Patent Citations (2)
Title |
---|
E.Berlekamp,"Bounded Distance +1 Soft−Decision Reed−Solomon Decoding,"IEEE Transactions on Information Theory,Vol.42,No.3,May 1996,pp.704−720. |
神谷典史、「Reed−Solomon符号のGMD復号と多重系列を生成するシフトレジスタの合成について」、信学技報、IT93−113、1994年 3月24日、p.43−48 |
Also Published As
Publication number | Publication date |
---|---|
JPH10163882A (en) | 1998-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6347389B1 (en) | Pipelined high speed reed-solomon error/erasure decoder | |
US7793197B2 (en) | Error correction apparatus | |
US20070157064A1 (en) | Systems and methods for error corrections | |
US6725416B2 (en) | Forward error correction apparatus and methods | |
CN102684709B (en) | Decoding method and decoding device thereof | |
US5535140A (en) | Polynominal-set deriving apparatus and method | |
US20040210816A1 (en) | Error-correcting device and decoder enabling fast error correction with reduced circuit scale | |
CN1095122C (en) | Circuit for calculating error position polynomial at high speed | |
KR100970223B1 (en) | Soft-decision decoding method of Reed-Solomon code, Reed-Solomon codeword decoder and computer program product | |
US5541937A (en) | Apparatus for uniformly correcting erasure and error of received word by using a common polynomial | |
JP3439309B2 (en) | Double-extended Reed-Solomon decoder | |
JP3245290B2 (en) | Decoding method and device | |
US6915478B2 (en) | Method and apparatus for computing Reed-Solomon error magnitudes | |
JP3343857B2 (en) | Decoding device, arithmetic device, and methods thereof | |
US8296632B1 (en) | Encoding and decoding of generalized Reed-Solomon codes using parallel processing techniques | |
JP2605966B2 (en) | Error correction circuit | |
JP2773701B2 (en) | Error correction decoding device | |
JP2553565B2 (en) | Galois field arithmetic unit | |
JPH1117557A (en) | Error correction method and device therefor | |
US6446233B1 (en) | Forward error correction apparatus and methods | |
JP2907138B2 (en) | Error correction arithmetic processing method and processing circuit | |
US7222287B2 (en) | Decoder, error position polynomial calculation method, and program | |
JP2000315955A (en) | Encoding method, syndrome calculating method, number of erroneous bits estimating method, erroneous bit position estimating method, decoding method and decoder | |
JP2752510B2 (en) | Error correction decoder | |
JP2553571B2 (en) | Galois field arithmetic unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080613 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090613 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100613 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100613 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110613 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110613 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120613 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120613 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130613 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |