JP2694792B2 - 誤り位置多項式演算回路 - Google Patents

誤り位置多項式演算回路

Info

Publication number
JP2694792B2
JP2694792B2 JP5011318A JP1131893A JP2694792B2 JP 2694792 B2 JP2694792 B2 JP 2694792B2 JP 5011318 A JP5011318 A JP 5011318A JP 1131893 A JP1131893 A JP 1131893A JP 2694792 B2 JP2694792 B2 JP 2694792B2
Authority
JP
Japan
Prior art keywords
circuit
polynomial
coefficient
output
multiplication
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
Application number
JP5011318A
Other languages
English (en)
Other versions
JPH0722966A (ja
Inventor
勝 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP5011318A priority Critical patent/JP2694792B2/ja
Priority to US08/186,574 priority patent/US5495488A/en
Priority to GB9401575A priority patent/GB2274732B/en
Priority to GB9704600A priority patent/GB2307572B/en
Publication of JPH0722966A publication Critical patent/JPH0722966A/ja
Application granted granted Critical
Publication of JP2694792B2 publication Critical patent/JP2694792B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1525Determination and particular use of error location polynomials
    • H03M13/1535Determination and particular use of error location polynomials using the Euclid algorithm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/724Finite field arithmetic
    • G06F7/726Inversion; Reciprocal calculation; Division of elements of a finite field

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はBCH符号やリードソロ
モン符号等を用いたディジタル信号のビット誤りを訂正
するために必要な誤り数値多項式および誤り位置多項式
を演算する誤り数値多項式および誤り位置多項式演算回
路に関し、特にユークリッドアルゴリズムにより演算を
実行する誤り数値多項式および誤り位置多項式演算回路
に関する。
【0002】
【従来の技術】一般に、BCH符号やリードソロモン符
号等を用いたディジタル信号の記録再生等によるビット
誤りを訂正する場合、受信データからシンドロームを生
成して誤り数値多項式および誤り位置多項式を求めてい
る。このような誤り数値および位置多項式を演算する一
手法として、ユークリッドアルゴリズムが用いられてい
る。
【0003】図6は誤り数値多項式および誤り位置多項
式を演算するユークリッドアルゴリズムの一例を示すフ
ローチャートである。
【0004】ここで、tは訂正可能な誤りワード数、S
(X)はシンドローム多項式、σ(X)は誤り位置多項
式、η(X)は誤り数値多項式である。またiは演算回
数を示し、deg Ri(X)はi回目の演算で生成さ
れた剰余多項式Ri(X)の次数を示している。
【0005】図6において、まず最初に、多項式R
(X),B(X)の初期値を設定する(ステップ30
1)。次に、商多項式Qi(X)および剰余多項式Ri
(X)を演算する(ステップ302)。その後、多項式
Bi(X)を演算する(ステップ303)。剰余多項式
Ri(X)の次数がt以上ならばiをインクリメントし
てステップ302および303の演算を繰返す(ステッ
プ304,305)。また、剰余多項式Ri(X)の次
数がtより小さくなったときは、剰余多項式Ri(X)
を誤り数値多項式η(X)とし、剰余多項式Bi(X)
を誤り位置多項式σ(X)として演算を終了する(ステ
ップ306)。
【0006】このようにユークリッドアルゴリズムで
は、多項式の除算によって剰余多項式を求め、この剰余
多項式がある条件を満足するまで除算を繰り返すことに
より、誤り数値多項式および誤り位置多項式を求めるも
のである。
【0007】従来の誤り数値多項式および誤り位置多項
式演算回路は、図5に示すように、商多項式Qi(X)
を演算する商多項式演算部5と、誤り数値多項式η
(X)を演算する誤り数値多項式演算部6と、誤り位置
多項式σ(X)を演算する誤り位置多項式演算部7と、
演算部からそれぞれ出力されるシリアルデータをパラレ
ルデータに変換するSP変換部8,9とを備えている。
【0008】ところで、多項式R i-2(X),R
i-1(X)および多項式B i-2(X),Bi-1(X)を
それぞれ式(1),(2),(3),(4)とする。
【0009】 R i-2(X)=r-2,ee +r-2,e-1e-1 +……+r-2,0 ……(1) R i-1(X)=r-1,mm +r-1,m-1m-1 +……+r-1,0 ……(2) B i-2(X)=b-2,ff +b-2,f-1f-1 +……+b-2,0 ……(3) B i-1(X)=b-1,nn +b-1,n-1n-1 +……+b-1,0 ……(4) ここで、R,Bのサフィックスi−2およびi−1は、
現在の演算回数をiとしたときの2つ前および1つ前の
演算結果をそれぞれ示し、また、係数r,bのサフィッ
クスe,m,f,nは、e,m,f,n≦2t、且つe
>m、f<nをそれぞれ満足する正の整数である。さ
て、図5において、商多項式演算部5は、式(5)に示
す商多項式Qi(X)を演算するように構成されてお
り、レジスタ回路510〜51mと、EXOR回路52
1〜52mと、乗算回路530〜53mとを有してい
る。
【0010】 Qi(X)=R i-2(X)/R i-1(X)……(5) 動作概要としては、初期リセット後、被除数となるR
i-2(X)の係数r-2,m,r-2,m-1,……,r-2,0を入
力端子51から高次順に入力してレジスタ回路510〜
51mに順次ラッチさせる。一方、乗算回路530〜5
3mには、除数となるR i-1(X)の係数r-1,0,r
-1,1,……,r-1,m-1,1/r-1,mをそれぞれ設定して
おく。従って、乗算回路530〜53mは、除数となる
多項式R i-1(X)の各係数の数(m+1個)だけ設け
ている。
【0011】まず乗算回路53mは、レジスタ回路51
mがラッチしているR i-2(X)の最高次係数r-2,m
i-1(X)の最高次係数r-1,mの逆数を乗算する。つ
まり、r-2,m/r-1,mの除算を行う。この除算結果は商
多項式Qi(X)の最高次係数として誤り数値多項式演
算部6へ送出されると共に、他の乗算回路に入力されて
係数r-1,0,r-1,1,……,r-1,m-1とそれぞれ乗算さ
れる。EXOR回路521〜52mは、乗算出力と前段
のレジスタ回路出力との排他的論理和を演算し、次段の
レジスタ回路511〜51mにそれぞれラッチさせる。
このような処理を繰返すことにより、商多項式Qi
(X)の各係数が乗算回路53mから順次生成される。
【0012】誤り数値多項式演算部6は、商多項式演算
部5から出力される商多項式Qi(X)の各係数を受け
て、式(6)に示す剰余多項式Ri(X)を演算するよ
うに構成されており、レジスタ回路611〜61mと、
EXOR回路621〜62mと、乗算回路630〜63
mと、レジスタ回路641〜64mと、セレクタ回路6
51〜65mと、EXOR回路660とを有している。
【0013】 Ri(X)=R i-2(X)−R i-1(X)・Qi(X)……(6) ここで、R i-1(X)・Qi(X)の乗算は、レジスタ
回路611〜61mとEXOR回路621〜62mと乗
算回路630〜63mとにより実行する。この場合、乗
算を行うために、除算を行う商多項式演算部5とは逆の
構成としている。また、レジスタ回路641〜64mと
セレクタ回路651〜65mとにより、R i-2(X)の
各係数成分を選択して順次EXOR回路66に供給し、
i-2(X)とR i-1(X)・Qi(X)との排他的論
理和を演算してRi(X)を求めている。ここで、de
g Ri(X)<tを満足したときのRi(X)が誤り
数値多項式η(X)となる。
【0014】誤り位置多項式演算部7は、誤り数値多項
式演算部6と同様な構成であり、商多項式演算部5から
出力される商多項式Qi(X)の各係数を受けて、式
(7)に示すBi(X)を演算する。
【0015】 Bi(X)=B i-2(X)−B i-1(X)・Qi(X)……(7) ここで、B i-1(X)・Qi(X)の乗算は、レジスタ
回路711〜71nとEXOR回路721〜72nと乗
算回路730〜73nとにより実行している。また、レ
ジスタ回路741〜74nとセレクタ回路751〜75
nとにより、Bi-2(X)の各係数成分を選択して順次
EXOR回路760に供給し、B i-2(X)とB
i-1(X)・Qi(X)との排他的論理和を演算してB
i(X)を求めている。ここで、deg Ri(X)<
tを満足したときのBi(X)が誤り位置多項式σ
(X)となる。
【0016】SP変換部8,9は、誤り数値多項式演算
部6および誤り位置多項式演算部7からシリアルに出力
されるデータをそれぞれパラレル化して送出する。
【0017】
【発明が解決しようとする課題】上述した従来の誤り数
値多項式および誤り位置多項式演算回路は、回路構成が
複雑であるばかりでなく、誤り数値多項式演算部および
誤り位置多項式演算部から出力されるシリアルデータを
パラレル化するためのSP変換部が必要となるので、更
に回路規模が大きくなり、LSI化等に際して障害とな
っている。
【0018】本発明の目的は、回路構成を簡素化でき、
更に、演算時間も短縮でき、LSI化を容易に実現でき
る誤り数値多項式および誤り位置多項式演算回路を提供
することにある。
【0019】
【課題を解決するための手段】本発明の誤り数値多項式
演算回路は、ユークリッドアルゴリズムにより誤り数値
多項式の係数を演算する誤り数値多項式演算回路におい
て、除数となる第1の多項式の最高次数m(mは1以上
の整数)の係数が逆数で設定されて乗算を行う最高次係
数の乗算回路と、前記第1の多項式の最高次係数を除く
係数がそれぞれ設定され前記最高次係数乗算回路の出力
を受けて乗算を行うm個の乗算回路と、初期設定時に高
次順に入力される被除数となる第2の多項式の係数をそ
れぞれラッチし終段が最高次係数をラッチして前記最高
次係数乗算回路へ出力する複数のレジスタ回路と、この
複数のレジスタ回路と交互に縦続接続され前記m個の乗
算回路の出力および前段のレジスタ回路の出力を受けて
排他的論理和を演算して次段のレジスタ回路に出力する
m個のEXOR回路とを有し、前記第1および第2の多
項式の除算を実行して商多項式の係数を生成する手段
と、前記m個のEXOR回路の出力側にそれぞれ接続さ
れるレジスタ回路の出力をそれぞれパラレルに受け、前
記商多項式の演算が終了したときにラッチすることによ
り前記誤り数値多項式の係数をパラレルデータとして出
力する手段とを備えて構成されている。
【0020】本発明の誤り位置多項式演算回路は、ユー
クリッドアルゴリズムにより商多項式の係数を受けて誤
り位置多項式の係数を演算する誤り位置多項式演算回路
において、1つ前の演算によって求められるn次(nは
1以上の整数)の第1の誤り位置多項式の係数がそれぞ
れ設定されて前記商多項式の係数との乗算を行うn+1
個の乗算回路と、この乗算回路の内前記第1の誤り位置
多項式の最低次係数が設定される最低次係数の乗算回路
の出力をラッチする初段のレジスタ回路と、前記最低次
係数の乗算回路を除くn個の乗算回路に対応してそれぞ
れ設けられ、1つ低次の係数の乗算回路の出力結果と該
当する係数の乗算回路の出力との排他的論理和を演算す
るn個の第1のEXOR回路と、このn個の第1のEX
OR回路の出力側にそれぞれ接続されて排他的論理和の
演算結果をラッチするn個のレジスタ回路と、前記第1
の誤り位置多項式の最高次係数が設定される乗算回路に
対応する第1のEXOR回路の出力側のレジスタ回路の
出力を更にラッチする終段のレジスタ回路とを有し、前
記第1の誤り位置多項式および前記商多項式の乗算を実
行する手段と、前記初段のレジスタ回路の出力および前
記第1の誤り位置多項式の最高次係数の乗算回路を除く
乗算回路に対応する第1のEXOR回路の出力側のレジ
スタ回路の出力をそれぞれの一方の端子に受け、また、
2つ前の演算によって求められた第2の誤り位置多項式
の係数をそれぞれの他方の端子に設定されて排他的論理
和を出力するn個の第2のEXOR回路と、前記終段の
レジスタ回路の入力側および出力側ならびに前記n個の
第2のEXOR回路の出力側にそれぞれ接続されてデー
タをパラレルに受け前記商多項式の係数との演算が終了
したときにラッチすることにより前記誤り位置多項式の
係数をパラレルデータとして出力する手段とを備えて構
成されている。
【0021】
【実施例】次に本発明について図面を参照して説明す
る。
【0022】まず、一具体例によって基本動作を説明す
る。
【0023】ここで、拡張ガロア体GF(24 )上で定
義される周期が24 −1の巡回符号の場合とし、元αを
根にもつ生成多項式がx4 +x+1であり、シンドロー
ム多項式S(X)が、 S(X)=α5 3 +α132 +α12X+α2 ……(8)であるとする。
【0024】この場合、図6に示したユークリッドアル
ゴリズムによれば、1回目の演算R-1(X)/R
0(X)は図4(a)のようになり、2回目の演算R 0
(X)/R1(X)は図4(b)のようになる。なお、
0(X)=S(X)である。
【0025】一方、生成多項式x4 +x+1=0の根を
αとしたとき、0,1およびαは拡張ガロア体GF(2
4 )の元である。また、α4 =α+1の関係から、GF
(24 )の元は、{0,1,α,α2 ,……,α14}の
16個の元の集合体となる。また、GF(24 )上での
乗算は、元の冪乗を加算して15で割った剰余で定義さ
れ、また加算減算は、元をベクトル表現したときの各成
分の排他的論理和で定義される。例えば、図4(b)に
示した演算において、α14×α6 は、α14×α6 =α20
=α20-15 =α5 となる。また、α13−α2 は、α13
(α4 2 ・α4 ・α=(α+1)2 ・(α+1)・α
=α3 +α2 +1でありベクトル表現すれば(1,1,
0,1)となり、また、α2 はベクトル表現すれば
(0,1,0,0)であるので、α13−α2 =(1,
1,0,1)−(0,1,0,0)=(1,0,0,
1)となる。ここで、ベクトル表現(1,0,0,1)
はα3 +1であり、一方、α14=α13・α=(α3 +α
2 +1)α=α4 +α3 +α=α3 +1であるので、α
13−α2 =α14となる。
【0026】このような元の演算定義に従って1回目の
除算を実行した結果、図4(a)に示したように、 Q 1(X)=α10X+α3 ……(9) R 1(X)=α142 +α11X+α5 ……(10)
となる。また、2回目の除算を実行した結果、図4
(b)に示したように、 Q 2(X)=α6 X+1 ……(11) R 2(X)=α12X+α ……(12)
となる。ここで、deg Ri(X)<2となるので、
剰余多項式R 2(X)が求める誤り数値多項式η(X)
である。
【0027】まず最初に、図4(b)に示した除算によ
り、式(11)および式(12)に示した商多項式Q 2
(X)、および剰余多項式R 2(X)の係数すなわち誤
り数値多項式η(X)の係数を求める演算回路について
説明する。
【0028】図2はこの演算回路のブロック図であり、
レジスタ回路110〜112と、EXOR回路121,
122と、乗算回路130〜132と、各レジスタ回路
111,112の出力をラッチしてパラレルデータとし
て出力するレジスタ回路210とを有している。なお、
各接続線は4ビットパラレルである。
【0029】さて、初期タイミング状態として、乗算回
路132〜130には、除数であるR 1(X)の係数α
14,α11,α5 がそれぞれ設定される。この場合、乗算
回路132には、R 1(X)の最高次係数α14の逆数が
設定される。一方、入力端11から被除数であるR
0(X)の係数α5 ,α13,α12,α2 が高次順に入力
され、レジスタ回路112にはR 0(X)の最高次係数
α5 ,レジスタ回路111には係数α13、レジスタ回路
110には係数α12がラッチされる。
【0030】この状態で乗算回路132は、レジスタ回
路112がラッチしている係数α5と係数α14の逆数と
を乗算して、つまりα5 /α14の演算を行って出力端1
2へ送出する。従って、出力端12には、商多項式Q 2
(X)の最高次係数α6 が出力される。乗算回路13
1,130は、この係数α6 に係数α11,α5 をそれぞ
れ乗算し、乗算結果として係数α2 ,α11を出力する。
【0031】EXOR回路122は、乗算回路131か
らの係数α2 とレジスタ回路111からの係数α13との
排他的論理和を演算することにより、係数α14を算出し
てレジスタ回路112にラッチさせる。同様に、EXO
R回路121は、乗算回路130からの係数α11とレジ
スタ回路110からの係数α12との排他的論理和を演算
することにより、係数α0 を算出してレジスタ回路11
1にラッチさせる。
【0032】この結果、出力端12には商多項式Q
2(X)の最高次係数α6 が出力され、レジスタ回路1
12,111には、剰余α14,α0 がそれぞれラッチさ
れる。このとき、レジスタ回路110には、R 0(X)
の最低次係数α2 がラッチされる。
【0033】その後、同様な動作を繰り返えすことによ
り、出力端12には商多項式Q 2(X)の次の係数α0
が出力され、また、レジスタ回路112,111には、
剰余多項式R 2(X)の係数α12,α1 がそれぞれラッ
チされる。このとき、レジスタ回路210は、レジスタ
回路112,111が出力する剰余多項式R 2(X)の
係数α12,α1 、すなわち、誤り数値多項式η(X)の
係数をパラレルデータでラッチしてパラレルデータとし
て出力する。なお、誤り数値多項式の係数は、商多項式
の係数が全て算出された次のクロックで全て生成される
ので、そのタイミングによってレジスタ回路210にラ
ッチさせる。
【0034】このようにすることにより、図5に示した
従来例で使用していた誤り数値多項式演算部6およびS
P変換部8を省略できるので、回路構成を大幅に簡素化
でき、演算時間も短縮できる。
【0035】次に、誤り位置多項式σ(X)を演算する
回路について説明する。
【0036】ところで、図6に示したユークリッドアル
ゴリズムによれば、 B 1(X)=B-1(X)−B 0(X)・Q 1(X) ……(13) B 2(X)=B 0(X)−B 1(X)・Q 2(X) ……(14)であり、多項
式B 2(X)が求める誤り位置多項式σ(X)となる。
【0037】さて、B-1(X)=0、B 0(X)=1=
α0 であり、また、Q 1(X)およびQ 2(X)は、式
(9)および式(11)に示したように、Q 1(X)=
α10X+α3 およびQ 2(X)=α6 X+1であるか
ら、 B 1(X)=Q 1(X)=α10X+α3 ………(15) B 2(X)=α0 −(α10X+α3 )・(α6 X+1) =α1 2 +α13X+α14 ………(16) となる。
【0038】図3は、式(16)に示した多項式B
2(X)の係数、すなわち誤り位置多項式σ(X)を演
算する演算回路のブロック図である。ここで、レジスタ
回路310,311,320と、EXOR回路331,
420と、乗算回路340,341と、レジスタ回路3
20,311およびEXOR回路420の出力をそれぞ
れラッチするレジスタ回路410とを有しており、各接
続線は4ビットパラレルである。
【0039】さて、初期タイミング状態として、乗算回
路341,340には、1つ前の演算結果から求めたB
1(X)の係数α10,α3 をそれぞれ設定しておく。ま
た、EXOR回路420の一方の入力端にはB 0(X)
の係数α0 を入力しておく。
【0040】まず、B 1(X)・Q 2(X)の演算動作
を説明する。
【0041】初期リセット後、商多項式Q 2(X)の最
高次係数α6 が入力端31を介して乗算回路341,3
40へ入力される。乗算回路341,340は、B
1(X)の係数α10,α3 と入力された係数α6 とをそ
れぞれ乗算して係数α1 ,α9 を出力する。このとき、
乗算回路340が出力した係数α9 はレジスタ回路31
0にラッチされるが、乗算回路341が出力した係数α
1 はEXOR回路331に入力する。EXOR回路33
1は、レジスタ回路310がラッチしている係数α9
乗算回路341が出力する係数α1 との排他的論理和を
演算する。このとき、レジスタ回路310は初期リセッ
トされているので、係数α1 をそのまま出力してレジス
タ回路311にラッチさせる。
【0042】次に、商多項式Q 2(X)の次の係数α0
が乗算回路341,340へ入力する。乗算回路34
1,340は、B 1(X)の係数α10,α3 との乗算を
行って係数α10,α3 を出力する。このとき、乗算回路
340が出力した係数α3 はレジスタ回路310にラッ
チされるが、乗算回路341が出力した係数α10はEX
OR回路331に入力する。EXOR回路331は、レ
ジスタ回路310にラッチされている係数α9 との排他
的論理和を演算し、係数α13としてレジスタ回路311
にラッチさせる。同時にレジスタ回路311にラッチさ
れていた係数α1はレジスタ回路320にラッチされ
る。これで、レジスタ回路320,311,310に
は、それぞれ、係数α1 ,α13,α3 が、つまりB
1(X)・Q 2(X)の演算結果である多項式α1 2
+α13X+α3 の係数がラッチされることになる。
【0043】ここで、α0 −(α1 X2 +α13X+α3
)を演算すればB 2(X)となる。この場合、α0
α3 =α14を行えばよく、この演算はEXOR回路42
0で実行している。従って、EXOR回路420の出力
およびレジスタ回路320,311の出力をレジスタ回
路410にパラレルにラッチさせることにより、B
2(X)の係数、つまり誤り位置多項式σ(X)の係数
をレジスタ回路410からパラレルデータとして出力さ
せることができる。
【0044】なお、誤り位置多項式の係数は、商多項式
の係数が全て入力された次のクロックで全て生成される
ので、そのタイミングでレジスタ回路410にラッチさ
せればよい。
【0045】このようにすることにより、図5に示した
従来例で使用していたSP変換部8を省略できるので、
回路構成が簡素化し、演算時間も短縮できる。
【0046】以上、一具体例について基本動作を説明し
たが、これを一般化した演算回路のブロック図を図1に
示す。
【0047】ここで、入力端11から被除数となる多項
式の係数を受けて商多項式Qi(X)の係数を演算する
除算部1と、この除算部内の各レジスタ回路の出力をラ
ッチして誤り数値多項式η(X)の係数をパラレルデー
タとして出力する誤り数値多項式出力部2と、商多項式
Qi(X)の係数を受け、1つ前の演算によって求めら
れる最高次数n(nは1以上の整数)の誤り位置多項式
の係数との乗算を行う乗算部3と、この乗算部内の各レ
ジスタの出力をラッチして誤り位置多項式σ(X)の係
数をパラレルデータとして出力する誤り位置多項式出力
部4とを備えている。
【0048】ここで、除算部1は、図2に示した具体例
の商多項式演算部5と同じ構成であり、また誤り数値多
項式出力部2は、図2に示した具体例のレジスタ回路2
10と同様な動作を行う。従って、除算部1は、式
(1),(2)に示した多項式によりR i-2(X)/R
i-1(X)を演算して、式(5)に示す商多項式Qi
(X)の係数を出力すると共に、誤り数値多項式出力部
2は、誤り数値多項式η(X)の係数をパラレルデータ
として出力する。
【0049】また、乗算部3は、図5に示した従来例の
誤り位置多項式演算部7のB i-1(X)・Qi(X)を
演算する部分と同じ構成である。また、誤り位置多項式
出力部4は、図3に示したEXOR回路420およびレ
ジスタ回路410からなる部分と同様に動作し、式
(7)に示した演算:B i-2(X)−B i-1(X)・Q
i(X)を実行し、レジスタ回路410が剰余多項式B
i(X)の係数、つまり、誤り位置多項式σ(X)の係
数をパラレルデータとして出力する。
【0050】
【発明の効果】以上説明したように本発明の誤り数値多
項式演算回路によれば、多項式の除算を実行して商多項
式を演算するために縦続接続されたレジスタ回路の出力
をそれぞれパラレルに受け、演算が終了したときにラッ
チすることにより、誤り数値多項式の係数をパラレルデ
ータとして出力できる。従って、従来のようにシリアル
に演算してパラレルに変換しないので、回路構成を大幅
に簡素化でき、演算時間も短縮でき、LSI化が容易に
なる。
【0051】また、本発明の誤り位置多項式演算回路に
よれば、1つ前の演算によって求められた第1の誤り位
置多項式の係数と商多項式の係数とを乗算するために縦
続接続されたレジスタ回路の出力をパラレルに受け、2
つ前の演算によって求められた第2の誤り位置多項式の
同次数の係数との排他的論理和を演算してラッチするこ
とにより、誤り位置多項式の係数をパラレルデータとし
て出力できる。従って、従来のようにシリアルに演算し
てパラレルに変換しないので、回路構成を簡素化でき、
演算時間も短縮でき、LSI化が容易になる。
【図面の簡単な説明】
【図1】本発明の誤り数値多項式および誤り位置多項式
演算回路の一実施例を示すブロック図である。
【図2】本実施例の誤り数値多項式演算回路の基本動作
を説明するためのブロック図である。
【図3】本実施例の誤り位置多項式演算回路の基本動作
を説明するためのブロック図である。
【図4】図2および図3に示した演算回路の動作を説明
するための演算の一具体例を示す図であり、(a)は1
回目の演算を示し、(b)は2回目の演算を示してい
る。
【図5】従来の誤り数値多項式および誤り位置多項式演
算回路の一例を示すブロック図である。
【図6】誤り数値多項式および誤り位置多項式を演算す
るユークリッドアルゴリズムの一例を示すフローチャー
トである。
【符号の説明】
1 除算部 110〜11m レジスタ回路 121〜12m EXOR回路 130〜13m 乗算回路 2 誤り数値多項式出力部 210,410 レジスタ回路 3 乗算部 310〜31n,320 レジスタ回路 331〜33n ,420〜42n−1 EXOR回
路 340〜34n 乗算回路 4 誤り位置多項式出力部 41 レジスタ回路 42 EXOR回路

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 ユーグリッドアルゴリズムにより誤り数
    値多項式の係数を演算する誤り数値多項式演算回路から
    求まる商多項式の係数を受けて誤り位置多項式の係数を
    演算する誤り位置多項式演算回路において、 1つ前の演算によって求められるn次(nは1以上の整
    数)の第1の誤り位置多項式の係数がそれぞれ設定され
    て前記商多項式の係数との乗算を行うn+1個の乗算回
    路と、この乗算回路の内前記第1の誤り位置多項式の最
    低次係数が設定される最低次係数の乗算回路の出力をラ
    ッチする初段のレジスタ回路と、前記最低次係数の乗算
    回路を除くn個の乗算回路に対応してそれぞれ設けら
    れ、1つ低次の係数の乗算回路の出力結果と該当する係
    数の乗算回路の出力との排他的論理和を演算するn個の
    第1のEXOR回路と、このn個の第1のEXOR回路
    の出力側にそれぞれ接続されて排他的論理和の演算結果
    をラッチするn個のレジスタ回路と、前記第1の誤り位
    置多項式の最高次係数が設定される乗算回路に対応する
    第1のEXOR回路の出力側のレジスタ回路の出力を更
    にラッチする終段のレジスタ回路とを有し、前記第1の
    誤り位置多項式および前記商多項式の乗算を実行する手
    段と、 前記初段のレジスタ回路の出力および前記第1の誤り位
    置多項式の最高次係数の乗算回路を除く乗算回路に対応
    する第1のEXOR回路の出力側のレジスタ回路の出力
    をそれぞれの一方の端子に受け、また、2つ前の演算に
    よって求められた第2の誤り位置多項式の係数をそれぞ
    れの他方の端子に設定されて排他的論理和を出力するn
    個の第2のEXOR回路と、前記終段のレジスタ回路の
    入力側および出力側ならびに前記n個の第2のEXOR
    回路の出力側にそれぞれ接続されてデータをパラレルに
    受け前記商多項式の係数との演算が終了したときにラッ
    チすることにより前記誤り位置多項式の係数をパラレル
    データとして出力する手段とを備えることを特徴とする
    誤り位置多項式演算回路。
JP5011318A 1993-01-27 1993-01-27 誤り位置多項式演算回路 Expired - Fee Related JP2694792B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP5011318A JP2694792B2 (ja) 1993-01-27 1993-01-27 誤り位置多項式演算回路
US08/186,574 US5495488A (en) 1993-01-27 1994-01-26 Arithmetic circuit having a simple structure for producing an error numeric value polynomial and an error locator polynomial
GB9401575A GB2274732B (en) 1993-01-27 1994-01-27 Arithmetic circuit having a simple structure for producing an error numeric value polynomial
GB9704600A GB2307572B (en) 1993-01-27 1994-01-27 Arithmetic circuit having a simple structure for producing an error locator coefficient of an error locator polynomial

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5011318A JP2694792B2 (ja) 1993-01-27 1993-01-27 誤り位置多項式演算回路

Publications (2)

Publication Number Publication Date
JPH0722966A JPH0722966A (ja) 1995-01-24
JP2694792B2 true JP2694792B2 (ja) 1997-12-24

Family

ID=11774678

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5011318A Expired - Fee Related JP2694792B2 (ja) 1993-01-27 1993-01-27 誤り位置多項式演算回路

Country Status (3)

Country Link
US (1) US5495488A (ja)
JP (1) JP2694792B2 (ja)
GB (1) GB2274732B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2517995B2 (ja) * 1987-12-18 1996-07-24 東洋紡績株式会社 熱収縮性ポリエステル系フイルム
US5473620A (en) * 1993-09-21 1995-12-05 Cirrus Logic, Inc. Programmable redundancy/syndrome generator
KR970004515B1 (ko) * 1993-12-29 1997-03-28 삼성전자 주식회사 리드-솔로몬 복호기의 오류위치다항식 연산방법 및 장치
US5615220A (en) * 1995-01-31 1997-03-25 Philips Electronics North America Corporation Polynomial divider which can perform Euclid's Algorithm to produce an error locator polynomial from an error syndrome polynomial, and apparatus including the polynomial divider
JPH09246995A (ja) * 1996-03-13 1997-09-19 Mitsubishi Electric Corp 符号誤り検出回路
JPH11196006A (ja) 1997-12-26 1999-07-21 Nec Corp 並列処理シンドロ−ム計算回路及びリ−ド・ソロモン複合化回路
US8464141B2 (en) * 2008-08-13 2013-06-11 Infineon Technologies Ag Programmable error correction capability for BCH codes
US8565435B2 (en) 2010-08-16 2013-10-22 International Business Machines Corporation Efficient implementation of fully homomorphic encryption
US9281941B2 (en) 2012-02-17 2016-03-08 International Business Machines Corporation Homomorphic evaluation including key switching, modulus switching, and dynamic noise management
US10333696B2 (en) 2015-01-12 2019-06-25 X-Prime, Inc. Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0096163B1 (en) * 1982-06-15 1988-06-01 Kabushiki Kaisha Toshiba Apparatus for dividing the elements of a galois field
JPS6162234A (ja) * 1984-09-04 1986-03-31 Kokusai Denshin Denwa Co Ltd <Kdd> 誤り訂正符号復号方式
JPS63167527A (ja) * 1986-12-27 1988-07-11 Ricoh Co Ltd 拡張ガロア体上の最大公約多項式算出回路および多項式互除演算回路
US4873688A (en) * 1987-10-05 1989-10-10 Idaho Research Foundation High-speed real-time Reed-Solomon decoder
US5170399A (en) * 1989-08-30 1992-12-08 Idaho Research Foundation, Inc. Reed-Solomon Euclid algorithm decoder having a process configurable Euclid stack
US5185711A (en) * 1989-12-08 1993-02-09 Sony Corporation Apparatus for dividing elements of a finite galois field and decoding error correction codes
JP3232602B2 (ja) * 1991-09-06 2001-11-26 ソニー株式会社 ユークリッドの互除回路
US5442578A (en) * 1991-12-12 1995-08-15 Sony Corporation Calculating circuit for error correction

Also Published As

Publication number Publication date
US5495488A (en) 1996-02-27
GB9401575D0 (en) 1994-03-23
JPH0722966A (ja) 1995-01-24
GB2274732B (en) 1997-08-27
GB2274732A (en) 1994-08-03

Similar Documents

Publication Publication Date Title
US5517509A (en) Decoder for decoding ECC using Euclid&#39;s algorithm
US4873688A (en) High-speed real-time Reed-Solomon decoder
US4868828A (en) Architecture for time or transform domain decoding of reed-solomon codes
US6119262A (en) Method and apparatus for solving key equation polynomials in decoding error correction codes
JPH07312560A (ja) 誤り訂正符号化装置及び誤り訂正復号装置及び誤り訂正符号付きデータ伝送システム及び誤り訂正符号の復号方法
TW297190B (ja)
WO2007132656A1 (ja) 誤り訂正符号化方法及び装置
JPH10135848A (ja) リードソロモン符号化装置およびその方法
JP2694792B2 (ja) 誤り位置多項式演算回路
CN112468161B (zh) 一种rs高速编码电路
US7051267B1 (en) Efficient high-speed Reed-Solomon decoder
EP1502356B1 (en) A method of soft-decision decoding of reed-solomon codes
US6304994B1 (en) Reed Solomon decoder and decoding method utilizing a control signal indicating a new root for an initial error locator polynomial with respect to new erasure information
JPH11225079A (ja) 新たな多項式配列構造を採用したリード−ソロモン復号器とその復号方法
US6263471B1 (en) Method and apparatus for decoding an error correction code
Truong et al. A new decoding algorithm for correcting both erasures and errors of Reed-Solomon codes
JPH11136136A (ja) リードソロモン符号化装置及び方法
JP3239522B2 (ja) データ消失訂正方法とその回路
KR940011663B1 (ko) 오류정정 시스템
US5971607A (en) Polynomial evaluator for use in a Reed-Solomon decoder
JP3351413B2 (ja) 並列処理リードソロモン符号化回路及びそれに用いる並列処理リードソロモン符号化方法
JP3614978B2 (ja) ガロア体の除算方法および除算装置
JPH06314978A (ja) チェン・サーチ回路
JP3233502B2 (ja) 復号化装置
JPS63107319A (ja) 拡張ガロア体上の多項式除算回路

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19970812

LAPS Cancellation because of no payment of annual fees