JPH0258432A - ビット・シリアル型乗算器を用いた誤り位置多項式導出回路 - Google Patents
ビット・シリアル型乗算器を用いた誤り位置多項式導出回路Info
- Publication number
- JPH0258432A JPH0258432A JP20828488A JP20828488A JPH0258432A JP H0258432 A JPH0258432 A JP H0258432A JP 20828488 A JP20828488 A JP 20828488A JP 20828488 A JP20828488 A JP 20828488A JP H0258432 A JPH0258432 A JP H0258432A
- Authority
- JP
- Japan
- Prior art keywords
- multiplier
- bit
- error locator
- circuit
- locator polynomial
- 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.)
- Pending
Links
Landscapes
- Error Detection And Correction (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
リード・ソロモン符号やBCH符号などの誤り訂正符号
を用いて1ブロツク内の多数ワードの誤り訂正を行う誤
り訂正方式が光ディスク、磁気ディスク、光磁気ディス
ク、通信などの分野で広く採用されている。
を用いて1ブロツク内の多数ワードの誤り訂正を行う誤
り訂正方式が光ディスク、磁気ディスク、光磁気ディス
ク、通信などの分野で広く採用されている。
本発明は、このようなリードソロモン符号やBCH符号
などの1つの訂正系列内で多数ワードの誤りを訂正可能
な誤り訂正符号(ロング・デイスタンス・コード:LD
C)を用いた誤り訂正回路に関し、より詳しくは、ロン
グ・デイスタンス・コードの復号に際して誤り位置多項
式をユークリッド互除法により求めるようにした誤り位
置導出回路に関する。
などの1つの訂正系列内で多数ワードの誤りを訂正可能
な誤り訂正符号(ロング・デイスタンス・コード:LD
C)を用いた誤り訂正回路に関し、より詳しくは、ロン
グ・デイスタンス・コードの復号に際して誤り位置多項
式をユークリッド互除法により求めるようにした誤り位
置導出回路に関する。
リードソロモン符号やBCH符号などのロング・ディス
クンス・コード(以下LDC)を用いて多数ワードの誤
り訂正を行うには、受信データからシンドロームを生成
して誤り位置多項式の係数を求める必要がある。一般に
、LDCの復号手順は次の通りである。
クンス・コード(以下LDC)を用いて多数ワードの誤
り訂正を行うには、受信データからシンドロームを生成
して誤り位置多項式の係数を求める必要がある。一般に
、LDCの復号手順は次の通りである。
■ 受信データXからシンドロームS 1(x)を求め
る。
る。
■ シンドロームS r (x)から誤り位置多項式σ
(X)を求める。
(X)を求める。
■ 誤り位置多項式σ(x)から誤り位置を求める。
■ 誤りパターンを求める。
■ Jllり位置と誤りパターンから受信データXを訂
正する。
正する。
上記一連の処理ステップにおいて最も処理が複雑で時間
を要するのは■の誤り位置多項式σ(x)を求める部分
である。誤り位置多項式の係数を求める手法の1つとし
てユークリッド互除法が知られている。このユークリッ
ド互除法は与えられた2つの数(多項式)の最大公約数
(多項式)を求めるためのアルゴリズムであり、2つの
多項式R−+ (x) とRo(x)を与え、下記の(
Ll 〜(J R”:、の演算をRt(x)=Oとなる
まで繰り返し実行し、Rt (x) =0となった時の
R; −1(x)を与えられた2つの多項式R−、(x
)とRo(x)の最大公約多項式として決定するもので
ある。
を要するのは■の誤り位置多項式σ(x)を求める部分
である。誤り位置多項式の係数を求める手法の1つとし
てユークリッド互除法が知られている。このユークリッ
ド互除法は与えられた2つの数(多項式)の最大公約数
(多項式)を求めるためのアルゴリズムであり、2つの
多項式R−+ (x) とRo(x)を与え、下記の(
Ll 〜(J R”:、の演算をRt(x)=Oとなる
まで繰り返し実行し、Rt (x) =0となった時の
R; −1(x)を与えられた2つの多項式R−、(x
)とRo(x)の最大公約多項式として決定するもので
ある。
Q+(x)=(R,−z(x)/Rt−+(x))
−11)R=(X)=Ri−z(x)−Q+(x)R
;−+(x) −121L;(x) = Lt−z(
x) Qi(x) L=−+(x) −131U1
(x)=U、−z(x)−Q;(x)U;−+(x)
−(41但し、()は商多項弐を表す。
−11)R=(X)=Ri−z(x)−Q+(x)R
;−+(x) −121L;(x) = Lt−z(
x) Qi(x) L=−+(x) −131U1
(x)=U、−z(x)−Q;(x)U;−+(x)
−(41但し、()は商多項弐を表す。
L−、(x) = O、LO(X) = 1U−1(に
)=−1,U、(に)=0 このユークリッド互除法の演算過程においては次の性質
が成り立つ。
)=−1,U、(に)=0 このユークリッド互除法の演算過程においては次の性質
が成り立つ。
R1(x) = L ;(x) Ro(x) −[1(
x) rl!−+(z)deg、 R;(x) <de
g、 R;−+(x) −−[61deg、L
i(x)=deg、R−+(x)−deg、R;−+(
x)・−一−・−(7) L 、 (x)≠0 −
・−・・・・・−・(8)gr、d (U r 、 L
r ) = 1 −−一−−−
−−(91ここに、gcd()は最大公約多項式を示す
。
x) rl!−+(z)deg、 R;(x) <de
g、 R;−+(x) −−[61deg、L
i(x)=deg、R−+(x)−deg、R;−+(
x)・−一−・−(7) L 、 (x)≠0 −
・−・・・・・−・(8)gr、d (U r 、 L
r ) = 1 −−一−−−
−−(91ここに、gcd()は最大公約多項式を示す
。
いま問題とする誤り位置多項式σ(x)は、上記ユーク
リッド互除法の演算過程においてRr (x)の次故が
1次未満(Lは誤り訂正可能なワード数)となった時の
L H(x)として得られる。
リッド互除法の演算過程においてRr (x)の次故が
1次未満(Lは誤り訂正可能なワード数)となった時の
L H(x)として得られる。
すなわち、シンドロームS、は、
で表される。ここに、αはガロア体GF(2″)上の原
始元であり、X、は受信語を表す。
始元であり、X、は受信語を表す。
前記シンドロームS、を基にシンドローム多項式S (
x)を次の通り定義する。
x)を次の通り定義する。
5(X)=S、+S、X+S2X”+・+S?X’・・
−・ 0υ また、誤りが1個発生した時の誤り位置多項式σ(x)
を次の通り定義する。
−・ 0υ また、誤りが1個発生した時の誤り位置多項式σ(x)
を次の通り定義する。
f (x) = (X + VI)(X + Vz)−
(X + Vt)= X l+σ、−、’X’−’+・
・・十σ、X+σ。
(X + Vt)= X l+σ、−、’X’−’+・
・・十σ、X+σ。
・−(1乃
ここに、■、〜■1 は誤り位置を示す。
上記シンドローム多項式S (x)と誤り位置多項式σ
(x)との間には次の関係がある。
(x)との間には次の関係がある。
A (x) X 2L+ ty (x) S (x)
= ti Cx) −−−−031deg、 (
11(x) <deg、 tt (x) ≦t
−−−−−aIO但し A (x)コ任意の多項式 ω(X):誤り評価多項式 L 二訂正可能な誤りワード数 deg、ω(X):多項式〇(x)の次数deg、σ(
×):多項式σ(x)の次数このQ3)、041式を満
たすσ(x)と0パX)は、X2tとS (x)の最大
公約多項式を求めるユークリッドの互除法の演算過程に
おいて、Ri(x)の次数がt次未満(tは誤り訂正可
能なワード数)となった時のL 、 (x)とR= (
x)に他ならない。
= ti Cx) −−−−031deg、 (
11(x) <deg、 tt (x) ≦t
−−−−−aIO但し A (x)コ任意の多項式 ω(X):誤り評価多項式 L 二訂正可能な誤りワード数 deg、ω(X):多項式〇(x)の次数deg、σ(
×):多項式σ(x)の次数このQ3)、041式を満
たすσ(x)と0パX)は、X2tとS (x)の最大
公約多項式を求めるユークリッドの互除法の演算過程に
おいて、Ri(x)の次数がt次未満(tは誤り訂正可
能なワード数)となった時のL 、 (x)とR= (
x)に他ならない。
第5図は上記のユークリッド互除法を用いて誤り位置多
項式σ(×)と誤り評価多項式ω(x)を求めるKun
ng らによって[されたシストリック・アルゴリズム
を示す。このシストリック・アルゴリズムでは、前記し
たR r (x)をA (x)とB(に)で交互に表し
、またL ; (x)をL (x)とM (x)で交互
に表している。
項式σ(×)と誤り評価多項式ω(x)を求めるKun
ng らによって[されたシストリック・アルゴリズム
を示す。このシストリック・アルゴリズムでは、前記し
たR r (x)をA (x)とB(に)で交互に表し
、またL ; (x)をL (x)とM (x)で交互
に表している。
ここでA (x)とB (x)を次のように表す。
A(x)=a、x’+a、−、xト1+−°−a 、
x +a 。−−−−O5 B (x)= blIx’+ blI−、X’−’+・
+・b 、 x + b 0−−−〇6) この時、ユークリッド互除法における前記(])。
x +a 。−−−−O5 B (x)= blIx’+ blI−、X’−’+・
+・b 、 x + b 0−−−〇6) この時、ユークリッド互除法における前記(])。
(2)式の演算は次式のようになる。
Q、(x)= (R,−z(x)/R;−+(x)1=
QbXk+qk−、xh−1・・・+q+X”q。
QbXk+qk−、xh−1・・・+q+X”q。
・−−−−−−−・−0η
A (x) = A (x) −Q (X) B (X
) −−−−θ(至)0匂式の代わりに次式
の演算をに+1回繰り返して行う。
) −−−−θ(至)0匂式の代わりに次式
の演算をに+1回繰り返して行う。
A (x) = A (x) −q ux ’ B (
x) ・−−−一−−・−(19)(u =
に、に−1,・・・、0) a9,00式の各演算時のA (x)とB (x)の最
高次数の係数をそれぞれβ、αと置くと qu=β/α −−−一・・−
・(2Iとなり、u =deg、 A −deg、 B
であることを利用すると、091式は次のように書き直
せる。
x) ・−−−一−−・−(19)(u =
に、に−1,・・・、0) a9,00式の各演算時のA (x)とB (x)の最
高次数の係数をそれぞれβ、αと置くと qu=β/α −−−一・・−
・(2Iとなり、u =deg、 A −deg、 B
であることを利用すると、091式は次のように書き直
せる。
a A (x) = ex A (x)−βx (d
a’l −A −d I! 9 °” ’ B(x)・
・−・・−・(21) したがって、αA(x)、を再びA (x)に置き換え
れば、掛は算だけで誤り位置多項式の定係数倍の結果を
得ることができる。すなわち、A (x)またはB (
x)のどちらかがt次未満になった時点のしく×)また
はM (x)が定数倍された誤り位置多項式を表してい
る。また、この時のA (X)またはB (x)が定数
倍された誤り評価多項式を表している。
a’l −A −d I! 9 °” ’ B(x)・
・−・・−・(21) したがって、αA(x)、を再びA (x)に置き換え
れば、掛は算だけで誤り位置多項式の定係数倍の結果を
得ることができる。すなわち、A (x)またはB (
x)のどちらかがt次未満になった時点のしく×)また
はM (x)が定数倍された誤り位置多項式を表してい
る。また、この時のA (X)またはB (x)が定数
倍された誤り評価多項式を表している。
第6図に」;記ユークリッド互除法を用いて構成した3
重誤り訂正可能(t=3)な誤り位置多項式4出回路の
例を示す。図示回路は第5図のシストリック・アルゴリ
ズム中のA (x)とB (x)の演算部分のみを示し
ており、A (x)とB (x)の演算をパラレル処理
するものである。なお、L (x)とM (x)の演算
部分については同様の回路構成で行うことができるので
図示を略した。
重誤り訂正可能(t=3)な誤り位置多項式4出回路の
例を示す。図示回路は第5図のシストリック・アルゴリ
ズム中のA (x)とB (x)の演算部分のみを示し
ており、A (x)とB (x)の演算をパラレル処理
するものである。なお、L (x)とM (x)の演算
部分については同様の回路構成で行うことができるので
図示を略した。
図中、符号1,2はA(x) 、 B(x)の係数デ
ータを格納するためのビット・シリアル・シフトレジス
タであり、パラレルロードの機能を有している。3,4
はそれぞれビット・シリアル・シフトレジスタ1,2か
ら与えられるA(x) 、B(x)の係数データを保
持するためのバッファ、5,6はビット・シリアル・シ
フトレジスタ1,20入力を選択するセレクタである。
ータを格納するためのビット・シリアル・シフトレジス
タであり、パラレルロードの機能を有している。3,4
はそれぞれビット・シリアル・シフトレジスタ1,2か
ら与えられるA(x) 、B(x)の係数データを保
持するためのバッファ、5,6はビット・シリアル・シ
フトレジスタ1,20入力を選択するセレクタである。
7.8はバッファ3,4から与えられるA (x)B(
×)の係数データとビット・シリアル・レジスタ16.
26から与えられる最高次数α、βとの乗算αA(X)
、βB (x)を行うためのガロア体乗算器である
。
×)の係数データとビット・シリアル・レジスタ16.
26から与えられる最高次数α、βとの乗算αA(X)
、βB (x)を行うためのガロア体乗算器である
。
9は加算器、10〜12はセレクタであり、セレクタ1
1.12は初期データの設定時以外は“0”を入力する
。なお、ビット・シリアル・シフトレジスタ16と26
はそれぞれA(x) 、B(x)の最高次数係数、す
なわちβとαを表している。
1.12は初期データの設定時以外は“0”を入力する
。なお、ビット・シリアル・シフトレジスタ16と26
はそれぞれA(x) 、B(x)の最高次数係数、す
なわちβとαを表している。
また、次数に関する処理はフラグを用いて独立に行って
いるが、このフラグ関係は図示を略した。
いるが、このフラグ関係は図示を略した。
上記回路の動作を第7図のフローチャートを参照して説
明する。
明する。
先ず、セレクタ11.12を通じて初期データを設定す
る。すなわち、t=3であるから2t=6となるので、
ビット・シリアル・シフトレジスタ1゜〜16にA(x
)=X’を設定するとともに、ビット・シリアル・シフ
トレジスタ2゜〜26にB (x)としてシンドローム
多項式S (x)を設定する。また、図示にない他のL
(x) とM (x)の演算回路のしく×)に0を、
M (x)に1をそれぞれセットする(ステップ[1コ
)。同時に、図示を略した次数計算用のフラグなどもセ
ットする。
る。すなわち、t=3であるから2t=6となるので、
ビット・シリアル・シフトレジスタ1゜〜16にA(x
)=X’を設定するとともに、ビット・シリアル・シフ
トレジスタ2゜〜26にB (x)としてシンドローム
多項式S (x)を設定する。また、図示にない他のL
(x) とM (x)の演算回路のしく×)に0を、
M (x)に1をそれぞれセットする(ステップ[1コ
)。同時に、図示を略した次数計算用のフラグなどもセ
ットする。
次いで、ビット・シリアル・シフトレジスタ1゜〜1.
に設定されたA (x)の値をバッファ3゜〜3.にロ
ート′するとともに、ビット・シリアル・シフトレジス
タ2゜〜2.に設定されたB (x)−S (x)の値
をバッファ4゜〜4.にそれぞれロードする(ステップ
[2])。また、ガロア体乗算器7,8の演算結果を次
段のビット・シリアル・シフトレジスタへ転送するため
に、各セレクタ5゜〜5.および6゜〜6.をセレクタ
10o〜10s側へ切り替える(ステ7プ「3J)。
に設定されたA (x)の値をバッファ3゜〜3.にロ
ート′するとともに、ビット・シリアル・シフトレジス
タ2゜〜2.に設定されたB (x)−S (x)の値
をバッファ4゜〜4.にそれぞれロードする(ステップ
[2])。また、ガロア体乗算器7,8の演算結果を次
段のビット・シリアル・シフトレジスタへ転送するため
に、各セレクタ5゜〜5.および6゜〜6.をセレクタ
10o〜10s側へ切り替える(ステ7プ「3J)。
ガロア体乗算器7゜〜7.はビット・シリアル・シフト
レジスタI、の最高次数係数αと各バッファ3゜〜3.
の値との乗算αA (x)を行い、またガロア体乗算器
8゜〜8.はビット・シリアル・シフトレジスタ26の
最高次数係数βと各バッファ4゜〜45の値との乗算β
B (x)を行い(ステップ[4] )、それぞれの乗
算結果を1ビツトづつ各加算器9゜〜9Sに送って加算
する(ステップ[5])。
レジスタI、の最高次数係数αと各バッファ3゜〜3.
の値との乗算αA (x)を行い、またガロア体乗算器
8゜〜8.はビット・シリアル・シフトレジスタ26の
最高次数係数βと各バッファ4゜〜45の値との乗算β
B (x)を行い(ステップ[4] )、それぞれの乗
算結果を1ビツトづつ各加算器9゜〜9Sに送って加算
する(ステップ[5])。
上記加算結果は、図示を略した次数フラグの制御の下に
セレクタ10゜〜10.を通じて次段のビット・シリア
ル・シフトレジスタ1,2へ転送される(ステップ[6
])。
セレクタ10゜〜10.を通じて次段のビット・シリア
ル・シフトレジスタ1,2へ転送される(ステップ[6
])。
セレクタ5゜〜5Sと6゜〜65をビット・シリアル・
シフトレジスタ側へ切り替えた後(ステップ[7])、
図示にない0検定回路によりビット・シリアル・シフト
レジスタ16,2.に格納されているA (x)とB
(x)の最高次数係数βとαの何れかがOであるか否か
が判定され(ステップ[8])、何れかが0である場合
には、対応する側のビット・シリアル・シフトレジスタ
1または2を】ワードシフトする(ステップ[9,])
。ビット・シリアル・シフトレジスタl側がシフトされ
るとA (x)の次数が1つ減り、ビット・シリアル・
シフトレジスタ2側がシフトされるとB (x)の次数
が1つ減る。
シフトレジスタ側へ切り替えた後(ステップ[7])、
図示にない0検定回路によりビット・シリアル・シフト
レジスタ16,2.に格納されているA (x)とB
(x)の最高次数係数βとαの何れかがOであるか否か
が判定され(ステップ[8])、何れかが0である場合
には、対応する側のビット・シリアル・シフトレジスタ
1または2を】ワードシフトする(ステップ[9,])
。ビット・シリアル・シフトレジスタl側がシフトされ
るとA (x)の次数が1つ減り、ビット・シリアル・
シフトレジスタ2側がシフトされるとB (x)の次数
が1つ減る。
β、αの何れもがOでない場合には、ステップ[10]
へ移行し、図示にない終了チエツク回路においてビット
・シリアル・シフトレジスタl。
へ移行し、図示にない終了チエツク回路においてビット
・シリアル・シフトレジスタl。
2に格納されているA(X) 、 13(x)のde
g、 Aまたはdeg、 Bが判定され、t=3以上の
場合にはステ7プ[2]へ復帰して上記処理を繰り返し
実行する。他方、deg、Aまたはdeg、 Bが(=
3よりも小さい場合には該時点でユークリッド互除法に
よる演算処理を終了しくステップ[10] ) 、ビッ
ト・シリアル・シフトレジスタに格納されているデータ
を出力する(ステップ[11])。
g、 Aまたはdeg、 Bが判定され、t=3以上の
場合にはステ7プ[2]へ復帰して上記処理を繰り返し
実行する。他方、deg、Aまたはdeg、 Bが(=
3よりも小さい場合には該時点でユークリッド互除法に
よる演算処理を終了しくステップ[10] ) 、ビッ
ト・シリアル・シフトレジスタに格納されているデータ
を出力する(ステップ[11])。
すなわち、上記終了時にビット・シリアル・シフトレジ
スタ側または2に格納されてるするA (x)またはB
(×)がその時の受信データに対する誤り評価多項式ω
(x)を与え、また図示を略した他のL (x)とM
(x)の演算回路に格納されているしく×)またはM(
x)が誤り位置多項式σ(x)を与えるものである。
スタ側または2に格納されてるするA (x)またはB
(×)がその時の受信データに対する誤り評価多項式ω
(x)を与え、また図示を略した他のL (x)とM
(x)の演算回路に格納されているしく×)またはM(
x)が誤り位置多項式σ(x)を与えるものである。
(発明が解決しようとする課題〕
上記誤り位置多1項弐導出回路におけるガロア体乗算器
は、A (x)とB (x)用に4を個、またf、(x
)とM (x)用に2L個必要となり、合計6を個が必
要となる。従来用いられているガロア体乗算器としては
、例えばビット・パラレル型のもので1個当たり300
ゲ一ト程度を必要とし、上記例のむ=3の場合には全体
で約5400ゲート程度必要となる。したがって、t=
8の周知の光ディスクなどのLDCの場合には全体で約
2万ゲート程度を必要とし、回路のハードウェア量が大
きくなって装置の小型化の障害となる。
は、A (x)とB (x)用に4を個、またf、(x
)とM (x)用に2L個必要となり、合計6を個が必
要となる。従来用いられているガロア体乗算器としては
、例えばビット・パラレル型のもので1個当たり300
ゲ一ト程度を必要とし、上記例のむ=3の場合には全体
で約5400ゲート程度必要となる。したがって、t=
8の周知の光ディスクなどのLDCの場合には全体で約
2万ゲート程度を必要とし、回路のハードウェア量が大
きくなって装置の小型化の障害となる。
また、シストリック・アルゴリズムに基づいたバイブラ
イン処理による高速化とVLSI化に通したリード・ソ
ロモン符号の符号化・復号化のためのプロセッシングユ
ニン) (PE)が岩村らにより提案されている(電子
情報通信学会論文誌’88/3 Vol、J71−A
No、3 pp751〜759 ) 、しかし、このI
Hになるプロセッシングユニットでも、1個のユニット
当たり1000ゲート程度を必要とし、回路全体でこれ
が(7t+4)個必要となる。
イン処理による高速化とVLSI化に通したリード・ソ
ロモン符号の符号化・復号化のためのプロセッシングユ
ニン) (PE)が岩村らにより提案されている(電子
情報通信学会論文誌’88/3 Vol、J71−A
No、3 pp751〜759 ) 、しかし、このI
Hになるプロセッシングユニットでも、1個のユニット
当たり1000ゲート程度を必要とし、回路全体でこれ
が(7t+4)個必要となる。
したがって、光ディスクなどで採用しているt=8の場
合には合計で約6万ゲート必要となり、高価なシステム
となってしまう。
合には合計で約6万ゲート必要となり、高価なシステム
となってしまう。
本発明は上記事情に鑑み、この種の誤り位置多項式導出
回路におけるハードウェアの大部分を占めるガロア体乗
算器の回路構成を検討することにより、ガロア体乗算器
のハードウェア量を従来よりも低減し、演算の高速化と
同時に装置の小型化を図った誤り位置多項式導出回路を
提供するものである。
回路におけるハードウェアの大部分を占めるガロア体乗
算器の回路構成を検討することにより、ガロア体乗算器
のハードウェア量を従来よりも低減し、演算の高速化と
同時に装置の小型化を図った誤り位置多項式導出回路を
提供するものである。
本発明は上記目的を実現するめに、ロングデイスタンス
コートの復号に際し、ユークリッド互除法を用いてシン
ドロームから誤り位置多項式を求める誤り位置多項式導
出回路において、2つの元の乗算を行うガロア体乗算器
として、ハンケル行列で一次変換した元と変換を施しで
いない元とにより乗算を行うようにしたIhener−
Hopf方程式に基づいて構成したピント・シリアル型
乗算器を用いるとともに、該ビット・シリアル型乗算2
g内に一方の元を逆変換K −1する逆変換回路を付設
し、該ビット・シリアル型乗算器に入出力されるすべて
の元をそれぞれハンケル行列Kによって一次変換した表
現形式に統一したものである。
コートの復号に際し、ユークリッド互除法を用いてシン
ドロームから誤り位置多項式を求める誤り位置多項式導
出回路において、2つの元の乗算を行うガロア体乗算器
として、ハンケル行列で一次変換した元と変換を施しで
いない元とにより乗算を行うようにしたIhener−
Hopf方程式に基づいて構成したピント・シリアル型
乗算器を用いるとともに、該ビット・シリアル型乗算2
g内に一方の元を逆変換K −1する逆変換回路を付設
し、該ビット・シリアル型乗算器に入出力されるすべて
の元をそれぞれハンケル行列Kによって一次変換した表
現形式に統一したものである。
Wiener−Hopf方程式に基づいて構成したビッ
ト・シリアル型乗算器に入出力するすべての元をハンケ
ル行列により一次変換した表現形式に統一しするととも
に、乗算すべき2つの元の一方の元を逆変換して乗算す
るように構成したので、演算が高速化されると同時に回
路の構成が簡潔化される。
ト・シリアル型乗算器に入出力するすべての元をハンケ
ル行列により一次変換した表現形式に統一しするととも
に、乗算すべき2つの元の一方の元を逆変換して乗算す
るように構成したので、演算が高速化されると同時に回
路の構成が簡潔化される。
以下、本発明の実施例につき説明する。
本発明は、第6図に示した誤り位置多項式導出回路にお
けるガロア体乗算器7゜〜7.および80〜8.として
、以下に詳述するようなWienerHopi方程式に
基づいて構成されたビット・シリアル型乗算器を用いた
ものである。
けるガロア体乗算器7゜〜7.および80〜8.として
、以下に詳述するようなWienerHopi方程式に
基づいて構成されたビット・シリアル型乗算器を用いた
ものである。
ビット・シリアル型巣′n器としては、正規基底に基づ
く方法によって構成されたものやBerlkammpの
方法によって構成されたものなどがあるが、これらの方
法に基づいて構成されたビット・シリアル型乗算器は基
底変換が複雑になる。そこで、本発明は、森井らの提案
になるWiener−Hopf方程式に基づいて構成さ
れたビット・シリアル型乗算器(電子情報通信学会論文
誌’88/3 Vol、J71−A No。
く方法によって構成されたものやBerlkammpの
方法によって構成されたものなどがあるが、これらの方
法に基づいて構成されたビット・シリアル型乗算器は基
底変換が複雑になる。そこで、本発明は、森井らの提案
になるWiener−Hopf方程式に基づいて構成さ
れたビット・シリアル型乗算器(電子情報通信学会論文
誌’88/3 Vol、J71−A No。
3 pp845〜853)をガロア体乗算器として採用
した。先ず、このWiener−Hopf方程式に基づ
いて構成されたビット・シリアル型乗算器について説明
する。
した。先ず、このWiener−Hopf方程式に基づ
いて構成されたビット・シリアル型乗算器について説明
する。
いまベクトル表現されたガロア体GF(2”)上の2元
UおよびSから V ” IJ ’ S −・−−一・・
−−一−−−・−(22)を満足するSを求めることを
考える。これはv (z) = u (z) −s (
z) mod f(z) −−(23)但し、f (
z)は原始多項式 を満足するv (z)を求めることに等しい。この時、
次式が成立する。
UおよびSから V ” IJ ’ S −・−−一・・
−−一−−−・−(22)を満足するSを求めることを
考える。これはv (z) = u (z) −s (
z) mod f(z) −−(23)但し、f (
z)は原始多項式 を満足するv (z)を求めることに等しい。この時、
次式が成立する。
ている。このハンケル行列KによりU、Vを基底変換す
ると次のようになる。
ると次のようになる。
・−−(24)
こごで、αはガロア体GF(2ffi)の原始元、βは
任意の元であり、 但し、xeGF(::’) とする。ここで、 と置く。
任意の元であり、 但し、xeGF(::’) とする。ここで、 と置く。
一般に、上記にはハンケル行列と呼ばれこの上うなUと
Vを用いると、(24)式に基づいて第4図に示す一般
的なビット・シリアル型乗算器を構成することができる
。すなわち、シフ1−レジスタR9−R7−1の初期値
として、RH−IJt 、 (i = 0. I
、 −m −1) −−−−−−(29)を与える
ことにより、m回のシフト演算でVi(i =0.1.
・・・m−1)を出力して生成することができる。
Vを用いると、(24)式に基づいて第4図に示す一般
的なビット・シリアル型乗算器を構成することができる
。すなわち、シフ1−レジスタR9−R7−1の初期値
として、RH−IJt 、 (i = 0. I
、 −m −1) −−−−−−(29)を与える
ことにより、m回のシフト演算でVi(i =0.1.
・・・m−1)を出力して生成することができる。
ここに、原始多項式「(2)は
f(z)=z″+fffi−、z+・・・トf、z−−
−−−−−(30)とする。
−−−−−(30)とする。
しかしながら、第・1図のビット・シリアル型乗算器は
乗する元の表現形式が異なるために汎用性がなく、その
ためにこれまでは一方の乗数が定数である符B化やシン
ドロームの生成時にしか使用できなかった。
乗する元の表現形式が異なるために汎用性がなく、その
ためにこれまでは一方の乗数が定数である符B化やシン
ドロームの生成時にしか使用できなかった。
上述したユークリッド互除法における演算では、A(x
) 、 B(x)の係数と各多項式の最高次数との乗
算を行うため、ガロア体の表現形式は同一でなければな
らない。そこで、本発明はこの第4図に示すWiene
r−Hopf方程式に基づくビット・シリアル型乗算器
を汎用化してユークリッド互除法による誤り位置多項式
導出回路に利用できるようにするために、第2図に示す
ような回路構成として拡張を行い、乗算する2つの元を
同一の表現形式で表示できるようにした。
) 、 B(x)の係数と各多項式の最高次数との乗
算を行うため、ガロア体の表現形式は同一でなければな
らない。そこで、本発明はこの第4図に示すWiene
r−Hopf方程式に基づくビット・シリアル型乗算器
を汎用化してユークリッド互除法による誤り位置多項式
導出回路に利用できるようにするために、第2図に示す
ような回路構成として拡張を行い、乗算する2つの元を
同一の表現形式で表示できるようにした。
すなわち、第4図ではUとVをハンケル行列Kによって
一次変換した表現形式とし、Sについては多項式基底の
ままであったが、本発明では第2図にその一例をしめす
ように残るSについても、ハンケル行列にで一次変換し
たSを用いるように汎用化し、すべての元をハンケル行
列で一次変換した統一した表現形式とする。そして、こ
のハンケル行列にで一次変換したτをもとの基底表現形
式に戻すために、乗算器内に逆変l!AK −’を行う
逆変換回路を付設した。
一次変換した表現形式とし、Sについては多項式基底の
ままであったが、本発明では第2図にその一例をしめす
ように残るSについても、ハンケル行列にで一次変換し
たSを用いるように汎用化し、すべての元をハンケル行
列で一次変換した統一した表現形式とする。そして、こ
のハンケル行列にで一次変換したτをもとの基底表現形
式に戻すために、乗算器内に逆変l!AK −’を行う
逆変換回路を付設した。
これにより、すべての元の表現形式が統一され、したが
ってレジスタの表現形式を変えることなく演算処理を行
うことができる。ここで(24)式中のβは任意に選べ
るため、ハンケル行列にしたがって逆行列に−1は21
1−1個あり、最も有利な行列を選ぶことにより逆変換
に必要な回路を最小にすることができる。
ってレジスタの表現形式を変えることなく演算処理を行
うことができる。ここで(24)式中のβは任意に選べ
るため、ハンケル行列にしたがって逆行列に−1は21
1−1個あり、最も有利な行列を選ぶことにより逆変換
に必要な回路を最小にすることができる。
上記結論に基づき、−例として、原始多項式がX” +
X’ +X’ +X” + 1であるcにうなガo7体
GF(2’)上における上記Wiener−Hopf方
程式に法づくビット・シリアル型乗算器の具体的な構成
例を第3図に示す。ここでβ−α250とすると、(2
6)式で与えられる逆行列K −1はとなる。
X’ +X’ +X” + 1であるcにうなガo7体
GF(2’)上における上記Wiener−Hopf方
程式に法づくビット・シリアル型乗算器の具体的な構成
例を第3図に示す。ここでβ−α250とすると、(2
6)式で与えられる逆行列K −1はとなる。
この場合、第3図に示すようにこの逆変換は2個のXO
Rゲート31,32だけで構成することができる。した
がって、ガロア体乗算器1個に必要な回路素子はAND
ゲートが8個、XORゲートが11個、被乗数を記憶す
るためのバッファが1ワードである。これは従来のビッ
ト・パラレル型乗算器に比べて約1/3以下のハードウ
ェア量となる。
Rゲート31,32だけで構成することができる。した
がって、ガロア体乗算器1個に必要な回路素子はAND
ゲートが8個、XORゲートが11個、被乗数を記憶す
るためのバッファが1ワードである。これは従来のビッ
ト・パラレル型乗算器に比べて約1/3以下のハードウ
ェア量となる。
第1図は上記の汎用化したWiener−Hopf方程
式に基づくビット・シリアル型乗算器を用いて構成した
本発明になる誤り位置多項式導出回路の例である。図示
の回路は、第6図中のαA (x)の演算を行うバッフ
ァ3゜〜31、ガロア体乗算器7゜〜7.の部分に対応
する回路である。
式に基づくビット・シリアル型乗算器を用いて構成した
本発明になる誤り位置多項式導出回路の例である。図示
の回路は、第6図中のαA (x)の演算を行うバッフ
ァ3゜〜31、ガロア体乗算器7゜〜7.の部分に対応
する回路である。
第1図中、B (x)の最高次数係数を与えるαはハン
ケル行列Kにより一次変換された形でシフトレジスタ2
1に入力され、また、A (x)の係数データはハンケ
ル行列Kにより一次変換された形でバッファ221〜2
2□い、に記憶される。
ケル行列Kにより一次変換された形でシフトレジスタ2
1に入力され、また、A (x)の係数データはハンケ
ル行列Kにより一次変換された形でバッファ221〜2
2□い、に記憶される。
乗算αA (x)の実行は、バッファ22.〜22zt
−+の各係数データを逆変換回路23においてそれぞれ
逆変換した後、A’N Dプレーン24に1ピントづつ
送られてシフトレジスタ21からのαと乗算され、該乗
算結果はXORプレーン25により1ピントづつ出力さ
れる。したがって、ユークリッド互除法における(21
)式を演算するには、第1図の回路を2つ並べてαA
(x)とβB (x)を計算し、各出力のXORをとれ
ばよい。 上記構成の場合、ガロア体乗算器が従来の乗
算器よりもかなり小型化でき、LSIでチップ化が可能
である。
−+の各係数データを逆変換回路23においてそれぞれ
逆変換した後、A’N Dプレーン24に1ピントづつ
送られてシフトレジスタ21からのαと乗算され、該乗
算結果はXORプレーン25により1ピントづつ出力さ
れる。したがって、ユークリッド互除法における(21
)式を演算するには、第1図の回路を2つ並べてαA
(x)とβB (x)を計算し、各出力のXORをとれ
ばよい。 上記構成の場合、ガロア体乗算器が従来の乗
算器よりもかなり小型化でき、LSIでチップ化が可能
である。
また、α、βをm回シフトするだけですべての係数に対
する演算を行うことができるため、誤り訂正可能なワー
ド数が増えても処理時間は1次のオーダーで増えるだけ
で済む。
する演算を行うことができるため、誤り訂正可能なワー
ド数が増えても処理時間は1次のオーダーで増えるだけ
で済む。
本発明によれば、入出力する元の表現形式をハンケル行
列で一次変換した形式に統一するとともに、ガロア体乗
算器として汎用化したWiener−11oρf方程式
に基づいたビット・シリアル型乗算器を用い、該乗算器
内にハンケル行列の逆変換を行う逆変換回路を付設した
ので、処理の高速化と同時にハードウェア量を減らして
装置を小型化することができる。
列で一次変換した形式に統一するとともに、ガロア体乗
算器として汎用化したWiener−11oρf方程式
に基づいたビット・シリアル型乗算器を用い、該乗算器
内にハンケル行列の逆変換を行う逆変換回路を付設した
ので、処理の高速化と同時にハードウェア量を減らして
装置を小型化することができる。
第1図は本発明になる誤り位置多項式導出回路の1実施
例の要部構成を示すブロック図、第2図は本発明に用い
る汎用化したWiener−Hopf方程式に基づいて
構成したビット・シリアル型乗算器の構成原理を示す図
、 第3図は上記汎用化した一1ener−Hopf方程弐
に基づいて構成したビット・シリアル型乗算器の具体例
を示す図、 第4図はWiener−Hopf方程式に基づいて構成
した汎用化されていない従来の一般的なビット・シリア
ル型乗算器の構成を示す図、第5図はユークリッド互除
法を用いて誤り位置多項式を求めるためのシストリック
・アルゴリズムのフローチャート、 第6図は誤り位置多項式導出回路の構成を示す図、 第7図は誤り位置多項式導出回路の動作のフローチャー
トである。 21・・・シフトレジスタ、22・・・バッファ、23
・・・逆変換回路、 5・・・XORブレーン、 K・・・パン ケル行列、 K−1・・・逆行列。
例の要部構成を示すブロック図、第2図は本発明に用い
る汎用化したWiener−Hopf方程式に基づいて
構成したビット・シリアル型乗算器の構成原理を示す図
、 第3図は上記汎用化した一1ener−Hopf方程弐
に基づいて構成したビット・シリアル型乗算器の具体例
を示す図、 第4図はWiener−Hopf方程式に基づいて構成
した汎用化されていない従来の一般的なビット・シリア
ル型乗算器の構成を示す図、第5図はユークリッド互除
法を用いて誤り位置多項式を求めるためのシストリック
・アルゴリズムのフローチャート、 第6図は誤り位置多項式導出回路の構成を示す図、 第7図は誤り位置多項式導出回路の動作のフローチャー
トである。 21・・・シフトレジスタ、22・・・バッファ、23
・・・逆変換回路、 5・・・XORブレーン、 K・・・パン ケル行列、 K−1・・・逆行列。
Claims (1)
- 【特許請求の範囲】 ロングディスタンスコードの復号に際し、ユークリッド
互除法を用いてシンドロームから誤り位置多項式を求め
る誤り位置多項式導出回路において、 2つの元の乗算を行うガロア体乗算器として、ハンケル
行列で一次変換した元と変換を施していない元とにより
乗算を行うようにしたWiener−Hopi方程式に
基づいて構成したビット・シリアル型乗算器を用いると
ともに、該ビット・シリアル型乗算器内に一方の元を逆
変換K^−^1する逆変換回路を付設し、 該ビット・シリアル型体乗算器に入出力されるすべての
元をそれぞれハンケル行列Kによって一次変換した表現
形式に統一したことを特徴とするビット・シリアル型乗
算器を用いた誤り位置多項式導出回路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP20828488A JPH0258432A (ja) | 1988-08-24 | 1988-08-24 | ビット・シリアル型乗算器を用いた誤り位置多項式導出回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP20828488A JPH0258432A (ja) | 1988-08-24 | 1988-08-24 | ビット・シリアル型乗算器を用いた誤り位置多項式導出回路 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0258432A true JPH0258432A (ja) | 1990-02-27 |
Family
ID=16553697
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP20828488A Pending JPH0258432A (ja) | 1988-08-24 | 1988-08-24 | ビット・シリアル型乗算器を用いた誤り位置多項式導出回路 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0258432A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007309785A (ja) * | 2006-05-18 | 2007-11-29 | Takenaka Komuten Co Ltd | 固有振動モード抽出方法、固有振動モード抽出装置、および固有振動モード抽出用プログラム |
-
1988
- 1988-08-24 JP JP20828488A patent/JPH0258432A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007309785A (ja) * | 2006-05-18 | 2007-11-29 | Takenaka Komuten Co Ltd | 固有振動モード抽出方法、固有振動モード抽出装置、および固有振動モード抽出用プログラム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4873688A (en) | High-speed real-time Reed-Solomon decoder | |
| US6347389B1 (en) | Pipelined high speed reed-solomon error/erasure decoder | |
| Fitzpatrick | On the key equation | |
| EP0114938B1 (en) | On-the-fly multibyte error correction | |
| US6571368B1 (en) | Systolic Reed-Solomon decoder | |
| US5905740A (en) | Apparatus and method for error correction | |
| EP0621698B1 (en) | Error correction method including erasure correction, and apparatus therefore | |
| CN1095122C (zh) | 差错定位多项式高速计算电路 | |
| JPH07202715A (ja) | 時間定義域代数エンコーダ/デコーダ | |
| US6687725B1 (en) | Arithmetic circuit for finite field GF (2m) | |
| KR100322739B1 (ko) | 유한체연산방법및그장치 | |
| JP2694792B2 (ja) | 誤り位置多項式演算回路 | |
| US8335808B2 (en) | Method and apparatus for processing multiple decomposed data for calculating key equation polynomials in decoding error correction code | |
| JP3343857B2 (ja) | 復号装置、演算装置およびこれらの方法 | |
| US20030126543A1 (en) | Method and apparatus for solving key equation polynomials in decoding error correction codes | |
| JPH11136136A (ja) | リードソロモン符号化装置及び方法 | |
| JP3239522B2 (ja) | データ消失訂正方法とその回路 | |
| JP3614978B2 (ja) | ガロア体の除算方法および除算装置 | |
| KR100552694B1 (ko) | 유한 체에서 곱셈 연산 방법 및 장치 | |
| JPH0258432A (ja) | ビット・シリアル型乗算器を用いた誤り位置多項式導出回路 | |
| JP3233502B2 (ja) | 復号化装置 | |
| JP2907138B2 (ja) | 誤り訂正の演算処理方法及び処理回路 | |
| JP3230888B2 (ja) | ユークリッド互除回路 | |
| US20070011592A1 (en) | Decoder architecture for Reed Solomon codes | |
| JPH08139612A (ja) | リード・ソロモン誤り訂正符号復号化回路 |