JP2000504158A - ガロア体における乗算回路およびエラー訂正デコーダにおけるこの種の回路の使用 - Google Patents

ガロア体における乗算回路およびエラー訂正デコーダにおけるこの種の回路の使用

Info

Publication number
JP2000504158A
JP2000504158A JP9526595A JP52659597A JP2000504158A JP 2000504158 A JP2000504158 A JP 2000504158A JP 9526595 A JP9526595 A JP 9526595A JP 52659597 A JP52659597 A JP 52659597A JP 2000504158 A JP2000504158 A JP 2000504158A
Authority
JP
Japan
Prior art keywords
circuit
input
output
bit
binary
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
Application number
JP9526595A
Other languages
English (en)
Inventor
マー,ジィアン―ジャン
マルチャアク,ジャン―マルク
Original Assignee
トムカス
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 トムカス filed Critical トムカス
Publication of JP2000504158A publication Critical patent/JP2000504158A/ja
Pending 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
    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (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)

Abstract

(57)【要約】 基数2mの有限体における乗算は、1つのオペランドのデュアルベース座標が最初にロードされているj個のシフトレジスタを含む乗算回路によって達成できる。ここで、jは、mの除数であり1よりも大きい。シフトレジスタは、m/jのクロックサイクルにおける2つのオペランドと各サイクルにおいて供給されるj個の座標との積のデュアルベースの座標を供給するよう構成された組合せロジックに接続されている。かくして、乗算実行速度は、1操作毎に少なくともmのクロックサイクルを必要とする既知のデュアルベース乗算器に比して増大する。乗算回路は、特に、BCHデコーダにおいて有用である。

Description

【発明の詳細な説明】 ガロア体における乗算回路およびエラー訂正デコーダにおけるこの種の回路の使 用 技術分野 本発明は、ガロア体における乗算回路およびエラー訂正デコーダにおける上記 回路の使用に関する。 背景技術 ガロア体における四則演算は、若干の用途において有用である。重要な用途は BCHタイプ、特に、リード・ソロモン・タイプのサイクリッド・コードに依拠 する伝送エラーを訂正するコーダおよびデコーダの構成にある(Berleka mp,“Algebraic Coding Theory”,Mc Graw −Hill社(1968)参照)。他の使用例は、暗号化装置の構成にある。こ のような計算を実行する場合、乗算回路のコンセプトが、システムの複雑性およ び実行速度の観点における中心問題である。上記回路は、超大規模集積回路(V LSI)の制約を受け、妥当なコストで多量の数値情報量を処理できなければな らない。 基数2m(mは、1よりも大きい整数を表す)のガロア体GF(2m)に関心が 持たれている。ガロア体GF(2m)の構成に使用するm次の母多項式f(x) =xm+fm-1m-1+fm-2m-2+...+f1x+f0を挙げる。ここで、係数 fi(0≦i<2m−1)は、ガロア体GF(2m)(fi=0または1)ではfo =1であり、αは、多項式f(x)の根であるGF(2m)の原始要素である。 αの連続冪αi(0≦i<2m−1)は、GF(2m)のゼロでない2m−1の要素 を定義する。 原始要素αに関連するガロア体GF(2m)の、いわゆる標準ベースは、要素 α0=1,α1=α,α2,.....,αm-1から構成される。ガロア体GF(2m )のすべての要素Aは、標準ベース(1,α,...,αm-1)におけるAの座 標を構成するビット(a0,a1,..,.,am-1)の特異のmヶ組によって表 現できる: 他のベースは、ガロア体GF(2m)で定義される。事実、ガロア体GF(2m )は、更に、ガロア体GF(2m)上のm次元のベクトル空間として考え得るの で、GF(2m)の独立の線形要素のすべてのmヶ組は、ベースを構成する。特 に、GF(2m)のすべての要素xについて下式で定義される、いわゆる“トレ ース”関数Tr(,)の特性から、標準ベース(1,α,...,αm-1)の、 いわゆる、デュアルベース(βo,βl,,...,βm-1)を定義できる: この関数Trは、線形であり、GF(2)内にその数値を取る。標準ベース( 1,α,...,αm-1)のデュアルベースは、GF(2m)の要素の特異なm組 (βol,,...,βm-1)である。例えば、0≦i,k≦m−1およびi≠ kの場合、Tr(αiβi)=1,Tr(αiβk)=0である。ガロア体GF(2m )のすべての要素Bは、デュアルベース(βo,βl,,...,βm-1)におけ るその座標を構成するビット(b’o,b’l,,...,b’m-1)の特異なm 組によって表現できる: ここで、b’1=Tr(Bαi)である。 Berlekampの論文“Bit−Serial Reed−Solomo n Encorders)”(IEEE Trans.on Informat ion Theory,Vol.IT−28,No.6,1982年11月)に は、リード・ソロモン・コーダに使用できる乗算回路が記載されており、この場 合、オペランドAの1つは、標準ベースで表され(関係式(1))、他のオペラ ンドBは、デュアルベースで表され(関係式(2))、結果C=ABは、デュア ルベースとして形成される: デュアルベースの上記乗算回路は、ビットがサイクル毎に重さ最小のビットで 始まることにもとづき、mのクロックサイクルにおいて2つのオペランドの積C =ABのデュアルベースからなる座標を連続的に供給する。 デュアルベースのこの種の乗算器は、リード・ソロモン・コーダの構成に使用 されている。リード・ソロモン・コーダによって実行される乗算の場合、オペラ ンドの1つは固定される。即ち、これは、コードの生成多項式の係数に対応する 。上記係数を標準ベース(オペランドA)で表現するのは容易である。かくして 、必要な論理ゲート数を減少できる。この構成モードは、Berlekampの 上記論文に記載されている(ヨーロッパ特許0066618も参照)。オペラン ドAを1つの乗算から他の乗算に変更できる事例は、Hsuらの論文“A co mparison of VLSI Architecture for Fi nite Fields Multipliers Using Dual,N ormal,or Standard Bases”, IEEE Trans .on Computers,Vol.37,no.6(1988年6月)に記 載されている。 公知の乗算回路のうち、デュアルベースの乗算器は、構成に必要な論理ゲート 数および処理サイクルに関して最も高性能である。乗算器のレジスタの始動の直 後に、第1出力ビットが得られる。更に、結果を連続的に形成できるという利点 が得られ、かくして、パイプラインを編成する系における実行が容易となる。 発明の開示 本発明は、特に、リード・ソロモン・デコーダに適用される。ガロア体GF( 2m)上で定義されるリード・ソロモンRSのコード(N,N−2t,t)が注 目される。リード・ソロモンのコードは、ブロックからなるサイクリックコード であり、GF(2m)内に係数を有するその2t次の生成多項式は、根について 、ガロア体GF(2m)の原始元Ψの順次の2t幕を有する。Ψは、αに等しく てよく、更に一般的には、ガロア体の生成多項式f(x)のすべての根に等しく てよい: ここで、Iは、整数の定数である。コードの各ワードは、独立情報のN−2tの 記号を表すガロア体GF(2m)のNの記号(N<2m)からなる。数tは、コー ドによって代数的に訂正できる間違った記号の最大数である。デコーダに受信さ れる各ブロックは、多項式を定義するGF(2m)のNの記号r0,r1,,.. .,rN-1からなる: R(x)=rN-1N-1+...+r1x+r0 受信した記号にエラーがない場合は、コードg(x)の生成多項式は、上記多 項式R(x)の因数である。 デコーディング法の場合、一般に、エラー・シンドロームの計算を行う。シン ドロームは、ガロア体の所与の要素の多項式R(x)の数値である。概ね、コー ドの生成多項式の2tの根についてのシンドロームの計算に制限される:0≦i ≦2t−1についてsi=R(ΨI+1)である。受信したブロックが、Vの間違っ た記号rh(0),rh(1),..,rh(V-1)を含む場合(V≦t)0≦v≦V−1に ついて0≦h(v)≦N+1)、各シンドロームSiが成立する: ここで、eh(v)は、記号rh(v)のエラーの振幅を表す。 シンドロームSiを計算する好適な方法の場合、本質的に、乗算器と、加算器 と、反復式を利用するためのレジスタとからなる回路を利用する: 初期条件Si (0)=rN-1によって、シンドロームSiを記号rN-1-nの(重さ増 加の順序の)到着に応じて計算し、ブロックの最後の記号r0が到着すると直ち に、S1=Si (N-1)が得られる。 2tの関係式(4)は、2Vの未知数、即ち、エラーの位置h(v)および振 幅eh(v)を有する。上式を解くため、大半のデコーディング・アルゴリズムは、 V次のエラー位置決め多項式σ(x)の計算を前提とする。この多項式の根は、 Ψ-h(v)の形のガロア体の要素である: 式中、κ=σ0は、ガロア体GF(2m)の任意の要素であり、u>Vの場合、σu =0である。上記多項式の係数は、下記線形系を満足する: 線形系(6)を解くため、各種のアルゴリズム、特に、ユークリッドのアルゴ リズムおよびBerlekamp−Masseyタイプのアルゴリズムが存在す る。ユークリッドのアルゴリズムは、コンセプト的に簡単であるが、VLSI回 路におけるその実行が、(論理ゲートの数に関して)Berlekamp−Ma sseyタイプのアルゴリズムの場合よりも多くの複合性を必要とする。Ber lekamp−Masseyタイプのアルゴリズムの場合、系(6)をモデル化 する線形演算子を含むシフトレジスタのリカーシブ構造として伝統的に解釈され ている2tの逐次イタレーションによって式(6)を解く。Berlekamp −Masseyのアルゴリズムの慣用のバージョンの場合(Blahutら“T heory and Practice of Error Control Codes”,Addis:on−Wesley,Reading,MA,(1 993)参照)、下記変数を使用する: −2tイタレーションに関してσ(x)に等しい位置決め多項式σ(k)(x)( 初期には、 σ(o)(x)=(1); −イタレーションにおいて位置決め多項式の形成に役立つ中間多項式λ(k)(x )(初期 には、λ(o)(x)=1); −Lk:σ(k)(x)の次数を表す整数の変数(初期には、Lo=0); −ガロア体GF(2m)の数値に対する予測偏差(“discrepancy” ) △k; −δk:2進変数。 各イタレーションk(1≦k≦2t)において実行する計算を以下に示す: Berlekamp−Masseyのアルゴリズムの各変数は、そのインプレ メンテーションの簡単化のために提案されている。例えば、これに関して、Ch oomchuayらの論文“Time Domain Algorithm a nd Architecture for Reed−Solomon Ded oding”,IEEE.Proceedings−I,Vol.140,no .3,1993年6月,p189−196または公報WO95/12850を参 照できる。Reedらの論文“VLSI Design of Inverse −Free Berlekamp−Massey Algorithm”には、 予測偏差((7.5)式参照)の逆数△k -1の計算が不要である限りにおいて興 味ある変数が提案されている。この変数は、上述の慣用バージョンのκ=1の代 わりに、係数κ=σoについてGF(2m)の任意のアプリオリの数値を考慮する ことに帰する。 エラーの位置決め多項式を計算した場合、エラーの位置h(v)を得るため上 記多項式の根を求める。このための汎用の方法(いわゆる“Chienのサーチ ”) の場合、ガロア体GF(2m)の各要素について多項式σ(x)を計算する。エ ラーは、σ(x)=0毎に特定される(Chien“Cyclic Decor ding Procedure for the Bose−Chaudhur i−Hocquenghem Codes”IEEE Trans.on In formation Theory,Vol.10,1964,p357−36 3参照)。この方法は、下式にもとづきn=0,1,...N−1について数値 σ(Ψ1-N+n)のリカーシブ計算からなる: この場合、ζu o=σuΨu(1-N)によってイニシャライズした下記の復帰式を使用 する: エラーの振幅は、例えば、Forneyのアルゴリズムにもとづき評価する( Forney“On Decording BCH Codes”,IEEE Trans.onInformation Theory,Vol.11,19 65,p549−557参照)。エラーの評価多項式ω(x)は、下記のキー式 によって定義される: S(x)は、下記のシンドローム多項式を表す: かくして、エラーの振幅は、下式によって得られる:ここで、σ’(x)は、エラーの位置決め多項式の導関数を表す。n=0,1, ...N−1について分母Ψ1-N+nσ’(Ψ1-N+n)の数値は、Chienのサー チにおいて簡単に得られる(例えば、(8)における合算によって;この場合、 uの奇数項のみを合算する)。分子Ψ(I-1)(1-N+n)ω(Ψ1-N+n)の数値は、n =0,1,...N−1について、Chienのサーチと類似の方法によって下 式にもとづき得られる。 この場合、ξu (o)u・Ψ(u+I-1)(1-N)によってイニシャライズした下記の復帰 式を使用する: Berlekamp−Masseyタイプのアルゴリズムにもとづきキー式を 解いた場合、評価多項式ω(x)の係数は、上記アルゴリズムの2tのイタレー ションにおいて計算できる。上述のアルゴリズムの慣用のバージョンの場合、評 価多項式ω(k)(x)は、ω(o)(x)=1によってイニシャライズされ、他の中 間多項式μ(k)(x)は、μ(o)(x)=1によってイニシャライズされ、各イタ レーションk(1≦k≦2t)は、(7.1)〜(7.5)の計算以外に、(7 .4)および(7.5)に類似な関係にもとづきω(2t)(x)=ω(x)を導く ための多項式ω(k)(x)およびμ(k)(x)の形成を含む: 概要を上述したデコーディング法は、デコーディング時間および必要な緩衝記 憶装置の容量を減らすためにパイプラインを編成するのに好適である。即ち、デ コーダ回路の一部が、現行ブロックに関してキー式を解いてる間、回路の他の部 分は、次のブロックのシンドロームを解き、更に、先行ブロックの訂正を行う。 実際のデコーダは、数メガビット/秒(Mbit/s)に達する極めて多量の 情報を処理できなければならない。公共用VLSI回路によるこの種の処理リズ ムの達成は、デコーダの設計者にとって主要な挑戦である。シンドロームの計算 およびChienのアルゴリズムにもとづく根の追求は、流量に関して主要な2 つの段階であり、1つは、処理すべき入力量に関し、他の1つは、エラーを評価 すべき流量に関する。これに関連して、乗算回路は、制限因子をなす。即ち、乗 算回路は、クロックサイクル当り最大でも1つのビットを形成するに過ぎず、ク ロック周波数は、技術的に制限されるので、並列の計算を実行するには、コンポ ーネントの数を実質的に増加しなければならない。この種の並列回路には、複雑 さの増加以外に、シンドローム計算のための(5)式によってまたは根の計算の ための(8),(9)(12)および(13)によって表現される如き最適なリ カーシブ・アルゴリズムに対する適合性が悪いという欠点がある。 本発明の目的は、ガロア体上に乗算結果を形成するのに必要な時間を短縮でき るデュアルベースの乗算回路を提案することにある。 従って、本発明にもとづき、基数2m(mは、1よりも大きい整数を表す)の ガロア体上の第1オペランドおよび第2オペランドの積を供給する乗算回路を提 案する。ここで、第1オペランドAは、ガロア体の標準ベース{1,α,... ,αm-1}において、mの2進座標a0,a1,...,am-1によって表される。 例えば、A=a0+a1α+....am-1αm-1であり、ここで、αは、ガロア体 の生成多項式f(x)=xm+fm-1m-1+...+f1x+f0の根を表し、そ の係数f0,f1,...,fm-1は、所定数値のビットである。第2オペランド Bは、上記標準ベースのデュアルベースであるガロア体のベース{β0,β1,. ..,βm-1}において、mの2進座標c’0,c’1,...,c’m-1で表され る。例えば、B=c’0β0+c’1β1+...c’m-1βm-1である。本発明にも とづき、乗算回路は下記を含む: j個シフトレジスタR0,R1,...,Rj-1(ここで、jは、mで徐した1 よりも大きい整数を表す):各シフトレジスタRq(0≦q≦j−1)は、0≦ p<(m/j)−1について各記憶素子Mpqの入力が、0≦p<(m/j)− 1について記憶素子Mpqの出力にあるビットを示す記憶素子Mp+1q’zpq の出力に接続されるよう構成されたm/j個の記憶素子M0q,M1q,... ,M(m/j)-1qを有し、zm/jqは、記憶素子M(m/j)-1qの入力にあるビット を表す; 各シフトレジスタRr(0≦r≦j−1)の記憶素子M(m/j)-1rの入力に、 2進加算によって得られる下記の各ビットx’r(ここで、0≦r≦qの場合は 、xpqr=fpj+q-r・zpqであり、q+1≦r≦j−1の場合は、xpq r=f(p+1)j+q-r・zp+1qである) をアドレスするための第1組合せ論理手段; 乗算回路のj個の出力W0,W1,...,Wj-1のうちの各出力Wr(0≦r≦ j−1)に2進加算によって得られる下記の各ビットy’r(ここで、0≦r≦ qの場合は、ypqr=apj+q-r・zpqであり、q+1≦r≦j−1の場合 は、ypqr=a(p+1)j+q-r・zp+1qである) をアドレスするための第2組合せ論理手段。 かくして、初期サイクルk=0において、0≦p≦(m/j)−1および0≦ q≦j−1についてzpq=b’pj+qにもとづき第2オペランドBのデュアルベ ースの2進座標をシフトレジスタに入力し、レジスタRqにおいて(m/j)− 1のシフトサイクルk=1,....,(m/j)−1を実行することによって 、サイクルk(0≦k≦(m/j)−1)において、出力W0,W1,...,W1-1 に積Cのデュアルベースの2進座標c’kj,c’kj+1,..., c’kj+(j -1) が、それぞれ、得られる。 本発明は、更に、シンドローム計算回路およびChienのサーチ回路におけ るこの種の乗算回路の使用に関する。上記回路は、リード・ソロモン・デコーダ に、更に一般的に言えば、BCHデコーダに使用できる。 従って、本発明にもとづき、N個の連続段(n=0,1,...,N−1)で 機能するシンドローム計算回路を提案する。この場合、上記段において、受信し た信号のブロックのシンボルrN-1,rN-2,...,r0をそれぞれ受信する。 各シンボルは、位数2mのガロア体の要素であり、この場合、上記ガロア体は、 下記を含む: −第1オペランドとして、エラーのシンドロームを計算すべきガロア体の一定要 素を有する、上述のような乗算回路; −各段(n≦1)において漸増する重さのj個の2進座標のm/j個の連続群の 形のシンボルrN-1-nのジュアルベースの座標を受信する、j個のビットの第1 入力と、乗算回路のj個の出力W0,...,Wj-1にあるj個のビットを受信す る、j個のビットの第2入力とを有する、jのビットの並列加算器; −N個の連続段の各々について乗算回路に第2オペランドを供給する手段;上記 第2オペランドは、段1についてブロックの第1シンボルrN-1に等しく、第2 オペランドは、各段n+1≧2について、先行段nにおいてシンボルrN-1-nのj 個の2進座標のm/j個の群の受信時に並列加算器によってそれぞれ供給される j個のビットのm/jの群に対応するデュアルベースの座標を有する。 本発明にもとづき、更に、N個の連続段(n=0,1,...,N−1)にお いて位数2mのガロア体のN個の連続要素について、xK・Q(x)(式中、Kは 、整数を表し、Qは、上記ガロア体の係数のt以下の次数の多項式を表す)の形 の関数の数値を計算する下記を含むChienのサーチ回路を提案する。上記の N個の連続要素は、ガロア体の原始元Ψの逐次幕Ψ1-N,Ψ2-N,...,Ψ0で ある: 各列0,1,...,tのt+1の計算ユニット;列u(0≦u≦t)の各計 算ユニットは、段nにおいて、ガロア体の要素Qu・Ψ(u+K)(1-N+n)(式中、Qu は、上記多項式のu次の係数を表す)のデュアルベースの座標を表すj個のビッ トのm/j個の連続群を供給するよう構成されている; 要素Ψ1-N+nについて上記関数によって決定される数値のデュアルベースの座 標を各段nにおいて供給するよう、上記の各計算ユニットから供給されるビット を受信するjのビットの並列の加算手段; この場合、列u≠Kの各計算ユニットは、第1オペランドとして、少なくとも 各段n≧1についてガロア体の要素Ψu+Kを有し、かつ第2オペランドとして、 段n=1についてガロア体のΨ(u+K)(1-N)と上記多項式のu次の係数との積を有 する乗算回路を含み、各段n≧2について、段n−1において、上記乗算回路か ら積が供給される。 更に、段n−1において各乗算回路から供給される積は、並列の加算手段のj 個のビットの並列の各入力にアドレスされる。 本発明は、図面を参照した実行例の下記の説明を読めばより良く理解されよう 。 第1図は、本発明の乗算回路の概略図であり、 第2図は、第1図の回路の要素の概略図であり、 第3,4図は、ガロア体GF(28)上の乗算回路の2つの実行例の概略図で あり、 第5図は、本発明を実行するリード・ソロモン・デコーダに使用できるレジス タの概略図であり、 第6図は、本発明を実行するリード・ソロモン・デコーダの概略図であり、 第7図は、第6図のデコーダのシンドローム計算回路の概略図であり、 第8図は、第7図の回路を示すクロノグラフであり、 第9図は、第6図のデコーダのキー式の解法回路の概略図であり、 第10図は、第9図の回路の計算素子の概略図であり、 第11図は、第10図に示したタイプの計算素子と共働する第9図の回路の計 算ロジックの概略図であり、 第12図は、第9〜11図の回路の機能を示すクロノグラフであり、 第13,14図は、キー式の解法回路の変更例を示す第10,11図と同様の 概略図であり、 第15,16図は、第6図のデコーダのChienのサーチ回路の概略図であ り、 第17図は、第15,16図の回路の機能を示すクロノグラフであり、第18 図は、Chienのサーチ回路の変更例の略図である。 発明を実行するための最良の形態 第1図の回路は、ガロア体GF(2m)(m>1)上で乗算を実行する。1より も大きい整数jは、mの除数を表す。乗算回路は、jのシフトレジスタR0,R1 ,...,Rj-1を含む。 上記の各レジスタRqは、m/jの記憶素子M0q,M1q,...,M(m/j) -1q からなる。第1図に、レジスタRqの記憶素子M0q,M1q,...,M(m/j) -1qをそれぞれ含む素子30pqを示した。このような素子30pqの概略図 を第2図に示した。記憶素子Mpq(0≦p≦m/j−1,0≦q≦j−1)は 、典型的に、出力に当該ビットzpqを含み入力をマルチプレクサ33pqの出 力に接続したマルチバイブレータDからなる。このマルチバイブレータは、共通 のクロックによって作動される。マルチプレクサ33pqは、オペランドBのデ ュアルベースの座標b’pj+q((2)式)を受信する乗算回路の入力に接続され た第1入力と、p<m/j−1の場合はマルチバイブレータ33p+1qの出力に 接続され、p=m/j−1の場合はシフトレジスタRqの直列入力に接続される 第2入力とを有する。マルチプレクサ33pqは、SLB=1の場合に第1入力 をアクティブにし(並列チャージモード)、SLB=0の場合に第2入力をアク ティブにする(直列シフトモード)共通の2進信号SLBによって制御される。 シフトレジスタRq(0≦q≦j−1)の直列入力にあるビットをzm/jqと呼 ぶ。 素子30pqは、j組を形成するj個のビツトxpq1,...,xpqj -1 またはjのビットのベクトルXpqを供給する。0≦r≦qについて、ビット xpqrは、fpj+q-r・zpqに対応し、一方、q+1≦r≦j−1の場合、 ビットxpqrは、fp(+1)j+q-r・zp+1qに対応する。ゼロでないビットfi の位置は、ガロア体GF(2m)を形成するため保持される原始多項式にもとづ き既知であるので、素子30pqは、生成多項式の係数1に対応するビットxp qr、即ち、xpqr=zpq(0≦r≦qおよびfpj+q-r≠0の場合)お よびxpqr=zp+1q(q+1≦r≦j−1およびf(p+1)j+q-r≠0の場合 )のみを供給するだけでよい。 第1図に示したようにi,j個の並列加算器を形成する組合せロジック32は 、j個のビットX’=(x’0,.x’1,...,x'j-1)のベクトルを供給す るためベクトルxpq (0≦p≦m/j−1,0≦q≦j−1)の和を形成する。ロジック32は、単 に、排他的論理和ゲート群からなり、列r(0≦r≦j−1)の加算器は、下記 の2進加算を実行する: 上記ビットx’rは、レジスタRrの入力にアドレスされ、従って、次のシフト サイクルにおいてマルチバイブレータzm/j-1rにロードされる上述のビットzm/jrに対応する。 乗算開始のため、オペランドBのデュアルベースの座標(b’0,b’1,.. .,b’m-1)をレジスタRqにロードし、クロックサイクルk=0において信号 SLBを1にセットする。レジスタRqの内容を以下に示す:0≦p≦m/j− 1,0≦q≦j−1について zpq (0)=b’pj+q=Tr(Bαpj+q)。 更に、上記初期サイクルk=0について下記関係が得られる: さて、0≦q≦r−1≦j−1についてzm/jq (0)=Tr(Bαm+q)と仮定 する。これは、既述の如く、r−1=0について真である。この場合、下記が得 られる: かくして、再帰的に、p=m/jおよび0≦q≦r−1について、zpq (0) =Tr(Bαpj+q)が得られることが証明される。 レジスタRqの初期化後、レジスタRqにおけるm/j−1個の連続シフトサイ クルに進む(SLB=0)。サイクルk−1において、0≦p≦m/jおよび0 ≦q≦j−1についてzpq (k-1)=Tr(Bα(p+k-1)j+q)と仮定する(これ は、k−1=0について真である)。0≦p≦m/j−1および0≦q≦j−1 について下記が得られる: 他方、下記が得られる: さて、上述の再帰理由から、0≦q≦j−1についてzm/j,q (k)=Tr(Bαm+kj+q )が得られることが示される。 従って、各クロックサイクルk(k=0,1,...)において、0≦p≦m /jおよび0≦q≦j−1についてzpq (k)=Tr(Bα(p+k)j+q)が得られ る。 第2図を参照して説明する。同図において、素子30pqは、j個のANDゲ ート34pqo,34pq1,...,34pqj-1を含む。0≦r≦qに つ いて、ANDゲート34pqrは、マルチバイブレータMpqの出力に制御さ れた入力と、レジスタ(図示してない)にあらかじめロードされたビットapj+q -r を受信する入力と、ビットypqrを受信する出力とを有する。q+1≦r ≦j−1について、AKDゲート34pqrは、マルチプレクサ33pqの第 2入力(SLB=0)に接続された入力と、ビットa(p+1)j+q-rを受信する入力 と、ビットypqrを供給する出力とを有する。ビツトypq0,ypq1 ,...,ypqj-1は、素子30pqから供給されるj個のビットYpqのj 組またはベクトルを形成する。 第1図に示したように、j個の並列加算器を形成する組合せロジック36は、 j個のビットY’=(y’0,y’1,...,y’j-1)の出力ベクトルを供給 するためベクトルYpq(0≦p≦m/j−1,0≦q≦j−1)の和を形成す る。ロジック36は、単に、排他的論理和ゲート群からなり、列r(0≦r≦j −1)の加算器は、下記の2進加算を実行する: 上記ビットy’rは、乗算器の出力Wrにアドレスされる。シフトサイクルkに おいて、この数値は下式で示される: 従って、乗算回路は、直/並混成モードで、当該レジスタへのオペランドA, Bの座標の並列ロードのための1つのサイクルとレジスタRqにおけるm/j− 1のシフトサイクルとからなるm/j個のクロックサイクルのみにおいて、積C =ABのデュアルベースの座標を供給する。 j=1の場合について記述した乗算器の構成に拡張すれば、1クロックサイク ル当り1ビットを供給するデュアルベースの乗算器の通常の構造が生ずるという ことが認められる。第3図に、m=8,j=2の場合の本発明の乗算回路の特定 のケースを示した。この場合、ガロア体GF(28)は、原始元としてα=(0 2)Hexを仮定する生成多項式f(x)=x8+x4+x3+x2+1から構成され る。ここで、指標Hexは、16進法の記号である。標準ベース(1,α,α2 ,...,α7)のデュアルベースは、{β0,...,β7}={(AD)Hex, (D8)Hex,(C1)Hex,(43)Hex,(02)Hex,(01)Hex,(8E)Hex ,(47)Hex}である。 第1,2図に使用した参照記号Rq,zpq,x’r,32,34pqr,3 6,Wrは、同様の要素を示すために再使用した。この場合、0≦p≦m/j− 1=3,0≦q,r≦j−1=1である。第3図を見やすいよう、チャージ・マ ルチプレクサ33pqは示してない。オペランドAの標準ベースの座標は、8ビ ット並列レジスタ38にファイルされている。生成多項式を選択すれば、組合せ ロジック32は、2つの入力を有する2段の6つの排他的論理和ゲートからなる 。この場合、第1段は、4つのゲート320−323を含み、第2段は、2つの ゲート324,325を含む。ゲート320,322,324は、2進加算x’0 =z00+z10+z20+z11を実行し、一方、ゲート321,323, 325は、2進加算x’1=z20+z01+z11+z21を実行する。換言 すれば、レジスタRrの直列入力に出力を接続したロジック32の列r=0また は1の2進加算器は、記憶素子Mpq(ここで、0≦p≦m/j−1=3,r≦ q≦j−1=1およびf2p+q-r=1)の出力および記憶素子Mpq(ここで、0 ≦p≦3,0≦q≦j−1およびf2(p+1)+q-r=1)の入力にそれぞれ接続され た3つの入力を有する。 乗算回路の出力S0,S1に論理積ゲート34pqrを接続する組合せロジッ ク36は、3段に構成された14の排他的論理和ゲート360−373からなり 、第1段は、8つのゲート360−367を含み、第2段は、4つのゲート36 8−371を含み、第3段は、2つのゲート372,373を含む。ゲート36 0,362,365,367,368,371,372は、2進加算y’0=y0 00+y100+y200+y300+y010+y110+y210 +y31, 0 を実行し、一方、ゲート361,363,364,366,369,370, 373は、2進加算y’1=y001+y101+y201+y301+y0 11+y111+y211+y311を実行する。 上記回路は、従来のデュアルベースの乗算器の場合のm=8の代わりに、m/ j=4のクロックサイクルにおいて乗算を実行する。この増速に起因する複雑さ の増加は、極めて僅かである。即ち、2入力ゲートの基本構造の場合、上記実施 例において、6つの論理和ゲートおよび10の排他的論理和ゲートを付加するだ けでよく、これは、回路のシリコンの表面積の15%を意味するに過ぎない。 標準ベースで表現されたオペランドAが固定であれば、乗算回路を簡単化でき る。レジスタ38およびmj個の論理積ゲート34pqrは不要であり、組合 せロジック36は、一般に、少数の排他的論理和ゲートを必要とするに過ぎない 。ロジック36のj個の2進加算器の各々は、回路の出力Wrの1つを構成する 出力と、記憶素子Mpq(ここで、0≦p≦m/j−1,r≦q≦j−1および apj+q-r=1)の出力および記憶素子Mpq(ここで、0≦p≦m/j−1,0 ≦q≦j−1およびa(p+1)j+q-r=1)の入力に接続された入力とを有する。第 4図に、更に、m=8,j=2の事例について、m/j=4のクロックサイクル において、固定オペランドA=(42)Hexによってデュアルベースに表現され た任意のオペランドBの乗算を実行する回路を示した。第4図において、同一の 要素は、第3図の参照記号で示した。この特殊事例の場合、組合せロジック36 は、演算y’1=y010+y300=z01+z30およびy’1=y001 +y311=z10+z31をそれぞれ実行する2つの排他的論理和ゲート3 74,375からなるに過ぎない。 第5図に、第1〜4図を参照して説明したタイプの1つまたは複数の乗算回路 を使用するアーキテクチャVLSIに適したm個のビットのレジスタの構造を示 した。乗算器と同様、上記レジスタは、j個のビットまたはm個のビットに関し て並列の入力/出力を有する。第5図の基本図において、レジスタは、j個のシ フトレジスタ100,...,10j-1からなる。各シフトレジスタ10qは、マ ルチバイブレータ12pq(p<m/j−1)の入力Dがマルチバイブレータ1 2p+1qの出力Qに接続されるよう直列に設置されたm/j個のマルチバイブレ ータ D120q,...,12m/j-1qからなる。レジスタのj個のビットの並列入 力は、マルチバイブレータ12m/j-1qのj個の入力Dに対応し、最下位ビット (LSB)は、マルチバイブレータ12m/j-10の入力Dにアドレスされ、最上 位ビット(MSB)は、マルチバイブレータ12m/j-1j-1の入力Dにアドレス される。マルチバイブレータ120qの出力は、レジスタのjのビット16の並 列出力を形成し、最下位ビットは、マルチバイブレータ1200から供給され、 最上位ビットは、マルチバイブレータ120j-1から供給される。各マルチバイ ブレータD12pqは、上述の乗算回路にシフトサイクルを生ずるものと同一の クロック信号CLKjによって作動される。各マルチバイブレータDは、更に、 イネーブル入力Eにあるイネーブル信号ENが論理1のレベルにある際にクロッ クの各立上りエッジCLKjにおいてレジスタ10qのシフトを可能とするイネー ブル入力Eと、リセット入力Rにあるリセット信号RESが論理1のレベルにあ る際にクロックの各立上りエッジCLKjにおいてマルチバイブレータの内容を ゼロにセットするリセット入力Rとを有する。第5図に示したレジスタは、m個 のビットの2つの並列出力18,20(以下では、それぞれ、タイプ1の出力お よびタイプ2の出力と呼ぶ)を有する6タイプ1の出力18に供給される重さp j+qのビットは、マルチバイブレータ12pqの出力Qに存在するビットであ る。タイプ2の出力20に供給されるpj+qのオーダのビットは、マルチバイ ブレータ12pqの入力Dに存在するビットである。 第5図に示したm個ビットのレジスタを使用する場合は、3つのタイプの出力 16,18,20のうちの1つまたは2つが結線されないよう、上記3つの出力 のうち1つまたは複数を必要とする。タイプ2の並列出力20のみが必要である 場合は、マルチバイブレータ1200,1201,...,120j-1は設けな くともよい。 第6図に、本発明を含むリード・ソロモン・デコーダの概略図を示した。受信 した信号のシンボルは、デコーダのm個ビットの並列入力に達する。各ブロック のシンボルは、rN-1,rN-2,...,r1,r0の順序で受信され、各シンボル は、標準ベースにおいてm個の2進座標(1,α,...,αm-1)で表現され ると仮定する。変換回路40は、連続のシンボルの2進座標のm組を受信し、変 換して、 シンボルのデュアルベースの座標を供給する。各シンボルについて、デュアルベ ースの座標は、重さ漸増のj個の2進座標のm/j個の連続群として供給される 。各クロックサイクルCLKj毎に1つの群が形成される。回路40は、簡単に 、連続シンボルの標準ベースの座標がシンボルのクロックサイクルCLKmで書 込まれる1つのレジスタと、ベース(1,α,...,αm-1)とベース(β0, β1,...,βm-1)との間の関係を考慮して、(シンボルのクロックCLKm よりもm/j倍高速の)各クロックサイクルCLKjにおいてj個のデュアルベ ースの座標の群を供給するよう構成された論理ゲートとから構成できる。 m=8,j=2,f(x)=x8+x4+x3+x2+1およびα=(02)Hexの 上述の実施例の場合、標準ベースの座標(a0,...,a7)を有するガロア体 の要素Aのデュアルベースの座標(a’0,...,a’7)が、下記の態様で、 m/j=4のクロックサイクルCLKjにおいて変換回路40から供給される: 第1サイクルではa’0=a5およびa’1=a4,第2サイクルではa’2=a3+ a7およびa’3=a2+a6+a7,第3サイクルではa’4=a1+a5+a6+a7 およびa’5=a0+a4+a5+a6,第4サイクルではa’6=a3+a4+a5お よびa’7=a2+a3+a4。 モジュール42は、変換回路40から供給され受信したシンボルのデュアルベ ースの座標のベースの2tのシンドロームS0,...,S2t-1を計算する。次 いで、エラーの位置決め多項式σ(x)の係数σ0,...,σtおよびエラーの 評価多項式ω(x)の係数ω0,...,ωtを供給するキー式の解法回路44に よって上記シンドロームを処理する。訂正計算モジュール46は、i=N−1, N−2,...,1,0の順序でエラーの振幅eiを求める。上記振幅eiは、m ビットの並列加算器48によって対応するシンボルriに加えられる。振幅eiの 形成のためにモジュール40,42,44,46で要する時間を考慮するため、 第1入力−第1出力メモリ(FIFO)から構成できる回路50が、加算器48 の入力においてシンボルriをシンボルのクロックサイクルCLKmの適切な数だ け遅延する。 クロック信号CLKj、CLKmおよび以下に説明する各種の制御信号は、デコ ーダの時間ベース(示してない)によって供給される。 モジュール42は、シンドロームSi=R(ΨI+i)(0≦i≦2t−1)の計 算のための第7図に示した如き2t個のシンドローム計算回路からなる。第7図 の回路は、標準ベースで表現されたオペランドAが固定でありΨI+iに等しいデ ュアルベース乗算器52と、j個ビットの並列加算器54とを含み、上記乗算器 のj個ビットの第1入力は、シンボルrN-1-nのj個の2進座標の群を受信し、 j個ビットの他の入力は、乗算器52の出力W0,...,Wj-1に接続されてい る。 加算器54は、乗算器の各出力Wqから供給されるビットと第1入力に受信した オーダqのビットとを合算する。デュアルベースで表現されたオペランドBを乗 算器52に供給するため、回路は、2進信号M1によって制御されるマルチプレ クサ56とレジスタ58とを含む。レジスタ58は、第5図を参照して説明した タイプであり、j個ビットの並列入力とタイプ2のmビットの並列出力とを有す る。 第8図のタイミング図を参照して、第7図のシンドローム計算回路の動作を説 明する。第1列に、シンボルのクロックサイクルCLKmにおけるブロックBL の連続のシンボル rN-1,rN-2,...,r1,r0の到着を示した。制御信号M1は、ブロックの 周期を有する。制御信号は、各ブロックの最終シンボルの到着時、シンボルのク ロックサイクルCLKmの周期に等しい期間の論理レベル1のパルスを有する。 M1=1の場合、マルチプレクサ56は、レジスタ58の並列入力に、0に等し いj個ビットをアドレスする。M1=0の場合、マルチプレクサ56は、レジス タ58の並列入力に、加算器54から供給されるj個ビットをアドレスする。乗 算器52のオペランドBのロード信号SLBは、シンボルの周期を有する。上記 信号は、レベル1およびクロックCLKjの周期に等しい期間のパルスを有し、 かくして、SLB=1の場合、クロックCLKmの各立上リエッジが現れる。か くして、オペランドB=0が、各、ブロックの第1シンボルrN-1+n=rN-1の到 着に対応する段n=0について乗算器、52にロードされ、次の段n=1の開始 時に乗算器52にロードされたオペランドBは、B=Si (0)=rN-1である(各 段の期間は、1クロックサイクルCLKmである)。各段n(0≦n≦N−1) において、シンボルrN-1+nが、加算器54に達し、量Si (n)(上記(5)参照 )が、加算器54から供給される。この量Si (n)は、次段n+1(n=N−1の 場合は除く)の開始時 に乗算器52にオペランドBとして供給される。最終段n=N−1において、加 算器54は、第8図の最終列に示したように、デュアルベースのj個の2進座標 のm/j個の群にシンドロームの数値Si=Si (N-1)を供給する。 シンドロームSiは、最終シンボルr0の到着時に、即ち、当該時点θ1に乗算 器54の出力に得られる。ブロックの第1シンボルrN-1が現れる時点をθ0で表 せば、待ち時間θ1−θ0は可能な最小値、即ち、ブロックの周期に対応する。 デュアルベース(j≧2)、の乗算器を使用すれば、クロックCLKjの所与 の周波数について、シンボルの周波数(j/m)fj、即ち、通常の乗算器(j =1)のj倍のシンボルの周波数に対応する入力量を処理できるという利点が得 られる。換言すれば、シンボル周波数fmを固定すれば、デュアルベース(j≧ 2)の乗算器は、通常の乗算器の場合に必要な周波数のj倍の周波数のクロック CLKjをVLSI回路に使用することによって、最小の待ち時間でシンドロー ムを計算できる。かくして、リードソロモン・デコーダのコンセプトに課せられ る技術的制約がかなり減る。 Ψ=αおよびI=0の通常の場合、コードの生成多項式の根ΨI+iのαの冪数 は小さく、大半は、デュアルベースのゼロではないが小さい座標を有する。従っ て、シンドローム計算回路の乗算器52は、簡単な構造を有し、従って、j≧2 (典型的にはj=2)の場合に起因して増加する複雑さは、極めて僅かである。 このような例は、特に、ディジタルテレビの分野のコードチャンネルに関する規 格DVBに見られる(m=8,t=8,N=204)。 第9図に、第6図のデコーダのキー式の解法回路44のアーキテクチャを示し た。回路44は、クロックCLKjによって作動されイネーブル信号として信号 ENTを受信するm個ビットの2t個のレジスタ600,...,60u,... ,602t-1を含む。これら2t個のレジスタ60uの各々は、第5図を参照して 説明したタイプであり、j個、ビットの並列入力と、j個ビットの並列出力と、 タイプ1のm個ビットの並列出力とを有する。レジスタ60uは、信号M1によ って制御される各マルチプレクサ62uに結合されている。マルチプレクサ62u (1≦u≦2t−1)は、レジスタ60uのj個ビットの並列入力を、M1=0 の場合、レジスタ60u-1のj個ビットの並列出力に接続し、M1=0の場合、 シンドローム S2t-uの計算回路の加算器54の出力に接続する。マルチプレクサ62uは、レ ジスタ600のj個ビットの並列入力を、M1=0の場合、レジスタ602t-1の j個ビットの並列出力に接続し、M1=0の場合、シンドロームS0の計算回路 の加算器54の出力に接続する。加算器54は、M1=1の間にシンドロームを 供給するので(第8図)、上記シンドロームは、M1=1の間、レジスタ60u にロードされた状態にとどまり、M1=0の間、シンドロームの数値は、ループ として接続されたレジスタ60uに移行する。 エラーの位置決め多項式σ(x)の各係数σu(0≦u≦t)について、回路 44は、それぞれ、計算素子64uと、信号M2によって制御されるマルチプレ クサ66uと、変換回路68uとを含む。各変換回路68uは、レジスタ60uのm ビットの並列出力に存在しシンドロームを表すデュアルベースのm個の2進座標 を受信し、変換して、ベース(1,α,...,αm-1)とベース(β0,β1, ...,βm-1)との間の関係を考慮して、上記シンドロームの標準ベースのm 個の2進座標を供給する論理ゲードから構成される。 m=8,j=2,f( x)=x8+x4+x3+x2+1およびα(02)Hexの上述の実施例の場合、デ ュアルベースの座標(b’0,..,.,b’7)を有するガロア体の要素Bの標 準ベースの座標(b0,...,b7)が、下記の態様で、変換回路68uから供 給される:b0=b’0+b’2+b’3+b’5+b’7,b1=b’3+b’4+b’6 +b’7,b2=b’0+b’6+b’7,b4=b’1,b5=b’0,b6=b’1+ b’2+b’3+b’7およびb7=b’0+b’1+b’2+b’6。 第9〜11図の実施例の場合、キー式の解法回路は、Reedらの上記論文に 記載のBerlekamp−Masseyのアルゴリズムにもとづき機能するよ う構成されている。このアルゴリズムの場合、2tの連続イタレーションk=1 ,...,2tを実施し、ガロア体のパラメータγk-1に依拠し、Berlek amp−Masseyのアルゴリズムの通常のバージョンに必要な逆計算((7 .5)式参照)は行わなくてもよい。リードのアルゴリズムは、下記の如く表現 できる: 初期条件:σ(0)(x)=1,λ(0)(x)=1,L0=1,γ0=1, ω(0)(x)=1,μ(0)(x)=0 各イタレーションkについて: エラーの位置決め多項式およびエラーの評価多項式は、下記の2tのイタレー ションにもとづき得られる:σ(x)=σ(2t)(x)およびω(x)=ω(2t)( x):ここで, 第9,10図を参照して説明する。同図において、各素子64u(0≦u≦t )は、5つの入力1−5および4つの出力6−9を含む。入力1−3は、mビッ トの並列入力であり、入力4は、jビットの並列入力であり、入力5は、2進入 力 である。出力6,7,9は、jビットの並列出力であり、出力8は、mビットの 並列出力である。各素子64uは、デュアルベースの2つの乗算器70,72と 、mビットの2つのレジスタ74,76とを含み、上記レジスタは、第5図を参 照して説明したタイプのレジスタであり、それぞれ、jビットの並列入力と、j ビットの並列出力と、タイプ1のmビットの並列出力とを有する。これら2つの レジスタ74,76は、リセット信号としての信号M1およびイネーブル信号と しての信号ENTを受信する。乗算器72の標準ベースのオペランドAは、素子 の入力1にあるmビットに対応する。乗算器70のデュアルベースのオペランド Aは、素子の入力2にあるmビットに対応する。乗算器70のデュアルベースの オペランドBは、mビットの並列出力を介してレジスタ74から読取られる。各 素子64uは、更に、乗算器70から供給されたjビットを1つの入力に受信し 且つ乗算器72から供給されたjビットを他の入力に受信するjビットの並列加 算器78を含む。加算器78のjビットの出力は、レジスタ74のjビットの並 列入力に接続されている。各素子64uは、更に、2進入力5に受信したビット によって制御されるマルチプレクサ80を含み、上記ビットは、イタレーション kにおいて、δkに等しい。マルチ、プレクサ80は、レジスタ76のjビット の並列入力を、δk=1の場合には、レジスタ74のjビットの並列出力に接続 し、δk=0の場合には、素子の入力4に接続する。レジスタ76のjビットの 並列出力は、素子64u+1(0≦u≦t)の入力4に接続された素子64uの出力 7を構成する。レジスタ76のmビットの並列出力は、素子64u+1(0≦u≦ t)の入力3に接続された素子64uの出力8を構成する。素子640の入力3, 4は、レベル0のビットを受信する。乗算器72のデュアルベースのオペランド Bは、素子の入力3にあるmのビットに対応する。素子の出力9は、その加算器 78の出力から構成される。 以下に説明する計算ロジック82は、各イタレーションkにおいて、(標準ベ ースとして表現された)ガロア体のパラメータγk-1,△kの数値および上記イタ レーションのための多項式σ、λ((14.3)式、(14.4)式)の形成に 使用される線形パラメータδkの数値を供給する。パラメータ△k、δkは、それ ぞれ、ロジック82によって素子64uの入力1,5に供給される。パラメータ γk -1 は、各マルチプレクサ66uのmビットの第1入力にある。マルチプレクサ6 6u他の入力は、変換回路68uから供給されるmのビットを受信する。マルチプ レクサ66uは、各イタレーションを2つの段階、即ち、(14.1)式にもと づき予想偏差△kの計算のための第1段階(M2=1:シンドロームSk-u-1は素 子64uの入力2にアドレスされる)および(14.3)式、(14.4)式に もとづき係数を形成するための第2段階(M2=0:パラメータγk-1は各素子 64u の入力2にアドレスされる)に分割する共通の信号M2によって制御される。 各イタレーションkにおいて、係数σu (k)およびλu (k)の2進座標の新しい数 値を計算し、素子64uのレジスタ74,76にファイルする。アルゴリズムに もとづきレジスタ74,76のイニシャライズのため、レジスタ74,76に供 給されるリイニシャライズ信号(第5図のRES)は、信号M1から構成できる 。しかしながら、素子640のレジスタ74,76は、(デュアルベースで表現 された)1ではリイニシャライズされなければならず、0ではリイニシャライズ されてはならい(上述の数値例の場合、1=β5、従って、素子640のレジスタ 74,76のマルチバイブレータ1221は、1においてリイニシャライズされ る)。 各イタレーションkの第1段階において、素子64uの乗算器70は、出力6 のm/j個の連続群からなる量σ(k-1)k-u-1のデュアルベースの座標を供給す る。 jビットの並列加算器84は、素子64uの出力6にそれぞれ接続されたt+1 個の入力を有する。加算器84のjビットの出力は、mビットのレジスタ86の jビットの並列入力に接続されている。レジスタ86は、第5図を参照して説明 したタイプであり、タイプ1のmビットの並列出力を有する。このレジスタは、 イネーブル信号として信号EN△を受信する。かくして、イタレーションkの第 1段階にもとづき、デュアルベースで表現された予想偏差△kは、レジスタ86 にファイルされる、 第11図に、イタレーションの第1段階で計算した予想偏差△kを処理するロ ジック82の概略図を示した。変換回路68uと同一の変換回路88は、予想偏 差△kの標準ベースの座標を形成し、上記予想偏差のデュアルベースの座標は、 レジスタ86に得られる。かくして得られた△kの標準ベースのm個の座標は、 素子64uの入力1にアドレスされる。ロジック82は、進行中のイタレーショ ンのナンバ ー値kを供給するJビットのカウンタ90を含む。ここで、Jは、log2(2 t)以上の整数である。カウンタ90は、信号M1によってゼロにセットされ、 イタレーションの逓増を行う、信号M2の立上りエッジ毎に1単位だけ増加され る。jビットの並列レジスタ92は、整数の変数Lkの数値を含むよう構成され ている。このレジスタ92は、0において信号M1によってイニシャライズされ 、信号ENLの立上りエッジ毎に、レジスタ入力にあるビットを記録する。比較 器94は、カウンタ90およびレジスタ92にあるkおよびLkの数値を比較し 、k>2Lk-1(即ち、2Lk-1≦k−1)の場合には1のビットを供給し、k≦ 2Lk-1の場合には0のビットを供給する。上記ビットは、m個の入力を有する OR回路98の出力に1つの入力を接続したANDゲート96の他の入力にアド レスされる。OR回路98のm個の入力は、レジスタ86内にある偏差△kのデ ュアルベースのm個の2進座標を受信する。信号ENδによって作動されるマル チバイブレータD100は、2進パラメータδkの現在値を記憶するよう構成さ れている。このマルチバイブレータ100の入力Dは、ANDゲート96の出力 に接続され、その出力Qは、素子64uの入力5に接続される。ANDゲート9 6の出力は、△k≠0および2Lk-1≦k−1の場合には1にあり、さもない場合 には0にあり、かくして、(14.2)式にもとづきδkが形成される。 ロジック82は、イタレーションkにおいて、パラメータγk-1の標準ベース の座標を含むのに役立つmビットの並列レジスタ102を含む。このレジスタ1 02の出力は、マルチプレクサ、66uの第1入力およびロジック82のマルチ プレクサ104の入力に接続されている。このマルチプレクサ104の他の入力 は、偏差△kの標準ベースのm個の座標を受信するため変換回路88の出力に接 続され、その出力は、レジスタ102の入力に接続されている。レジスタ102 は、1(=αo、標準ベースで表現した場合)において信号M1によってイニシ ャライズされ、信号ENLの立上りエッジ毎にマルチプレクサ104から供給さ れる数値を記録する。マルチプレクサ104は、マルチバイブレータ100の出 力にあるビットδkと信号M2の補数との間でロジックETを操作するANDゲ ート106の出力のビットによって制御され、かくして、δk=1の場合には、 γk=△kとなり、δk=0の場合には、γk=γk-1となる((14.8)式)。 ANDゲート1 06は、レジスタ92の入力に送信する他のマルチプレクサ108を制御する。 このマルチプレクサ108は、Jビットの2つの入力を有し、この場合、1つの 入力は、レジスタ92の出力に接続され、他の入力は、減算器110の出力に接 続される。減算器110は、カウンタ90の出力に接続された正の入力と、レジ スタ92の出力に接続された負の入力とを有し、かくして、数k−Lk−1が形 成される。マルチプレクサ108は、ゲート106のレベル0の信号によって制 御された場合、レジスタ92の入力をレジスタ92の出力に接続し、さもない場 合は、レジスタ92の入力を減算器110の出力に接続し、かくして、(14. 7)式にもとづき、δk=1の場合には、Lk=k−Lk-1となり、δk=0の場合 には、Lk=Lk-1となる。 エラー評価多項式ω(x)の計算のため、キー式の解法回路44は、更に、t +1の計算素子112o,...,112tを含む。上記計算素子は、素子112o kレジスタ76が0においてイニシャライズされるが1ではイニシャライズさ れないという相違点を除いて、上述の素子64uと同一である。素子112uのレ ジスタ74,76は、それぞれ、評価多項式ω(x)の係数ωuおよび関連の中 間多項式μ(x)の係数μuのデュアルベースの座標を含む。 キー式の解法回路の作動サイクルは、例えば、m/j=4の事例について作成 した第12図のタイミング図にもとづく。各イタレーションkは、2(m/j+ 1)のクロックサイクルCLKjに対応し、第1段階および第2段階は、それぞ れ、m/j+1のクロックサイクルCLKjだけ続く。SLσは、オペランドB のチャージのため素子のマルチプレクサ70,72に供給される信号を表す。こ の信号SLσは、各イタレーションの各段階の開始時に、1クロックサイクルC LKjだけ続くレベル1のパルスを有する。イタレーションの期間、即ち、クロ ックCLKjの2(m/j+1)の周期に等しい期間の信号M2は、各イタレー ションの第1段階の開始後のCLKjの周期の立上りエッジと、各イタレーショ ンの第2段階の開始後のCLKjの周期の立下りエッジとを有する。イネーブル 信号ENL,ENδ,ENT,EN△は、論理操作の結果ENL=SLσ ET M2,ENδ=SLσ ET M2,ENT=SLσ ET M2およびEN △=SLσET M2に対応する。 各イタレーションk(1≦)k≦2t)の第1段階において、レジスタ60u (0≦u≦k−1)は、シンドロームTu (k)=Sk-u-1を含む。各イタレーショ ンkの第1段階の第1クロックサイクルCLKjは、素子64uの乗算器70への デュアルベースのオペランドσu (k-1)のロード(SLσ=1)および第12図の 列“Reg.92,100”に示した如くレジスタ92,100への数値Lk-1 およびγk-1のファイルに使用される。次いで、カウンタ90は、イタレーショ ンの指数kを含むよう、M2の立上りエッジによって増加される。イタレーショ ンkの第1段階の最新のm/jのサイクルにおいて、素子64uの乗算器70か ら供給される積σu (k-1)k-u-1の和は、レジスタ86にロードされ、かくして 、(14.1)式にもとづき、デュアルベースの偏差△kを計算する(u≧kの 場合、σu (k-1)=0である)。イタレーションkの第2段階の第1サイクルは、 素子64u,112uの乗算器へのデュアルベースのオペランドσu (k-1)、λu-1 ( k-1) 、ωu (k-1)、μu (k-1)のロード(SLσ=1)および第12図の列“F/F 100”に示した如くマルチバイブレータ100へのδkの記憶(ENδ=1) に使用される。パラメータγk-1および△kは、イタレーションkの第2段階中、 当該の各レジスタ102,86内に保持される。イタレーションkの第2段階の 最新のm/jのサイクルにおいて、素子64u、112uのレジスタ74,76に は、(14.3)〜(14.6)式にもとづき多項式σ,λ,ω,μを形成する ため、加算器78およびマルチプレクサ80から供給されるビットがロードされ る(ENT=1)。同時に、次のイタレーションに使用されるシンドロームTu ( k+1) =Sk-uのロードのために、レジスタ60uにおいてTm/jのシフトサイク ルが実行される。 位置決め多項式の係数σu=σu (2t)および評価多項式の係数ωu=ωu (2t)は、 イタレーション2tの最新のm/jのサイクルにおいて、(デュアルベースで表 現されて)素子 64u,112uの出力9に供給される。上記係数は、第12図にθ2で示した時 点に完全に得られる。この場合,θ2−θ1は、クロックCLKjの4t(1+m /j)の周期に対応する。 キー式の解法回路44のアーキテクチャは、標準化素子64u,112uの使用 にもとづき、優れた規則性を有する。かくして、VLSIのインプレメンテーシ ョンの枠内において大きな利点が得られる。素子64uの乗算器70が、予想偏 差の計算(第1段階)にもマルチプレクサ66uによる係数形成(第2段階)に も役立つという事実にもとづき、回路の高速性を低下することなく必要な乗算回 路の数を減らすことができる。回路は、jビットの群毎にモジュール42からシ ンドロームを受信し、同じくjビットの群毎に係数σuおよびωuを供給する。こ れは、デコーダのパイプラインの構成に好適である。 キー式の解法回路のこのようなアーキテクチャは、Berlekamp−Ma sseyのアルゴリズムの各種のバリエーションおよび、特に、上述のReed らの有利なバージョンに容易に適合される。第13,14図に、(7.1)〜( 7.7)式によって示されるBerlekamp−Masseyのアルゴリズム の通常のバージョンに適するアーキテクチャを示した。第13図の素子164u は、第9図の素子64u(および112u)に代わるものであり、他方、第14図 のロジック182は、ロジック82に代わるものである。ロジック182は、第 11図に示したロジック82とほぼ同一の構造を有し、従って、同一のコンポー ネントは、同一の参照記号で示した。パラメータγk-1は、変換回路103で形 成される予想偏差の逆数△k -1で置換えてある。この回路103は、例えば、m 個ビットの2mのスペースのメモリROMのパネルから構成される。このパネル へのアドレスは、例えば、レジスタ86にあるm個ビットに対応し△kのデュア ルベースの座標を示すm個ビットのアドレスにもとづき行われる。パネルの所与 のアドレスには、このアドレスのm個、ビットによってデュアルベースで表され たガロア体の要素の標準ベースで表現された逆数が含まれる。 第13図に示した素子164は、同じく、第10図を参照して説明した素子6 4uに著しく類似している。第13図において、第10図の70,72,74, 76,78,80と同一の要素を参照記号70’,72’,74’,76’,7 8’,80’で示した。素子164uは、下記の点に関して素子64uと異なる: −乗算器70’の出力は、マルチプレクサ80’の入力(δk=1)に接続さ れ、加算器 78’の入力には接続されていない; −レジスタ74’のjビットの並列出力は、加算器78’の入力に接続され、 マルチプ レクサ80’の入力には接続されていない。 第9,13,14図の場合、キー式の解法回路のサイクルは、第9,10,1 1図のそれに極めて類似する。これは、特に、第12図のタイミング図のように 示すことができる。 σo,σt,ωo,ωtの計算素子の若干のコンポーネントは 無くともよい。その例は、素子64o、112o(または164o)の乗算器72 (または72’)である。なぜなちば、これらは、常に、そのオペランドBにつ いて数値ゼロを有するからである。他方、素子64o、112oは、その乗算器7 0およびレジスタ74を共有できる。なぜならば、アルゴリズムにもとづき、k =0,1,...,2tについてσo (k)=ωo (k)であるからである。(第13, 14図の例のように)κ=1についてキー式を解いた場合、更に、素子164o の乗算器70’およびレジスタ74’も不要である。なぜならば、k=0,1, ...,2tについてσo (k)=ωo (k)=1であるからである。素子64t,11 2t(または164t)のレジスタ76(または76’)およびマルチプレクサ8 0(または80’)は、同じく不要である。 第6図を参照すると、訂正計算モジュール46は、ガロア体の要素Ψ-i(i= N−1,N−2,...,1,0)について関数値を順次に計算する2つの回路 120,122を含む。回路120は、多項式σ(x)およびxσ’(x)の数 値を得るためChienのサーチを実行し、他方、回路122は、関数x1-1ω (x)の数値を得るため、同じく、Chienのサーチを実行する。 訂正値eiの計算のため、モジュール46によってForneyのアルゴリズ ムを実行する。反転回路124は、量Ψ-iσ’Ψ-iのデュアルベースの座標を受 信し、標準ベースで表現された上記量の逆数を供給する。回路124は、例えば 、第14図を参照して説明したパネル103と類似のメモリROMのパネルから なる。回路124の出力のmのビットは、乗算回路126の標準ベースで表現さ れたオペランドAを構成する。乗算器126にロードされたデュアルベースのオ ペランドBは、回路122から供給され、反転回路124の応答時間を考慮する ためレジスタ128において遅延される。変換回路130は、jビットの連続群 毎に乗算器126から供給ざれるデュアルベースの座標を受信し、標準ベースに 変換する。変換回路から供給されσ(Ψ-i)=0の場合に訂正値ei((11) 式)を示す標準ベースのm個の座標は、マルチプレクサ132の入力にアドレス され る。マルチプレクサ132の他の入力は、レベル0のmのビットを受信する。O R回路134は、反転回路124,乗算器126および変換回路130によって 誘起される遅延を考慮するためレジスタ136において遅延された量σ(Ψ- )のデュアルベースのm個の2進座標を受信する。OR回路134の出力のビッ ト(σ(Ψ- )=0では0)は、σ(Ψ-i)=0の場合に(さもなければei= 0)訂正値eiが変換回路130から加算器48に供給されるよう、マルチプレ クサ132を制御する。 第6図のデコーダは、パイプラインの構成を有する。即ち、1つのブロックに ついて回路44によってキー式を解く間に、モジュール42が、次のブロックに ついてシンドロームを計算し、モジュール46が、先行ブロックについて訂正を 行う。メモリFIFOによって導入される総合遅延は、シンドローム供給のため モジュール42で消費される時間θ1−θ0と、多項式σ(x)およびω(x)の 係数の供給のため回路44で消費される時間θ2−θ1と、訂正値の形成のためモ ジュール46で消費される時間θ3−θ2との和である。デコーダの応答時間を与 えるこの総合遅延を減らし、モジュール46における緩衝記憶装置の必要性を避 けるため、Chienのサーチ回路120,122が、大きな処理量および最小 応答時間で多項式の数値を形成することが重要である。これに関連して、上記回 路120,122において且つ乗算器130のために、j≧2のデュアルベース の乗算器を使用すれば、大きな利点が得られる。 第15図に、Chienのサーチ回路120の構造を示した。回路120は、 t+1個の計算ユニット138o,138,...,138tを含む。列uの計 算ユニット138uは、ξu (n)=σu・Ψu(1+N-n)(n=0,1,...,N−1 )((9)式)の連続の数値を供給するよう構成されている。各ユニット138u (u≧1)は、デュアルベースの乗算器140uと、mビットのレジスタ142u と、2つのマルチプレクサ144u,146uとを含む。レジスタ142u(u≧ 1)は、第5図を参照して説明したタイプであり、それぞれ、jビットの並列入 力と、乗算器140uにデュアルベースのオペランドBを供給するタイプ2のm ビットの並列出力とを有する。マルチプレクサ146uは、キー式の解法回路4 4の素子64u の出力9に接続されたj、ビットの入力を有する。マルチプレクサ146uの上 記入力は、時間θ2−θ1だけ遅延された信号M1(第12図)に対応する信号M 3によって活性化され、かくして、レジスタ142uは、素子64uの出力9に供 給された係数σuのデュアルベースの座標をjビットのm/jの連続群として受 信する。マルチプレクサ146uの他のjビットの入力は、乗算器140uのj個 の出力Wo,...,Wj-1に接続され、M3=0の場合に活性化される。回路1 20は、係数σuが得られた時点θ2からN個の連続段n=0,1,...,N− 1で機能する。この場合、各段は、シンボルクロックCLKmの周期にわたって 続く。マルチプレクサ144uは、乗算器140uの標準ベースで表現されるオペ ランドAを供給するため信号M4(第17図)によって制御され、かくして、オ ペランドAは、1つのブロックに関する第1段n=0ではΨu(1-N)となり、以降 の各段n=1,2,...,N−1ではΨuとなる。N=2m−1の場合、マルチ プレクサ144uは不要である。なぜならば、Ψu(1-N)=Ψuであるからである。 u=0ではΨu=Ψu(1-N)=1であるので、乗算器140uおよびマルチプレクサ 144uは、第15図に示したような計算素子138oには不要である。レジスタ 142oが、j個ビットの並列出力を有していれば十分であり(第5図)、レジ スタ142oは、マルチプレクサ146uと同様に構成されたマルチプレクサ14 6oから送信を受ける。 各段n(0≦n≦N−1)において、乗算器140u(1≦u≦t)は、(9 )式で定義される量ζu (n)のデュアルベースの座標を供給し、上記座標は、レジ スタ142uにロードされる。上記座標は、次の段n+1の開始時、オペランド Bとして乗算器140uにロードされる。レジスタ142oおよび乗算器140u から各段nに供給される量ζu (n)を合算するため加算手段が設けてある。第15 図に示した回路120の実施例の場合、上記加算手段は、3つのjビットの並列 加算器152,154,156を含む。加算器152は、乗算器140u(u: 奇数)から供給される量ζu (n)の対応する列のビットの和を形成する。かくして 、加算器152のjビットの出力は、jビットの連続群毎に、多項式xσ’(x )(ここで、x=Ψ- =Ψ1-N+n)の数値のデュアルベースの座標を供給する。 加算器156は、レジスタ142oおよび乗算器140u(u:偶数)から供給さ れる量ζu (n) の対応する列のビットの和を形成し、その出力のjビットは、加算器156によ って加算器152のjビットに加えられる。かくして、加算器156のjビット の出力は、jビットの連続群毎に、多項式σ(x)(ここで、x=Ψ-i=Ψl-N+ n )の数値のデュアルベースの座標を供給する。多項式σ(x)、xσ’(x) の第1数値のすべての座標を供給するのに要する時間は、シンボルクロックCL Km の1つのサイクルに対応する(第17図)。 第15図の回路は、xk・Q(x)の形のすべての関数の点Ψ1-N,Ψ2-N,. .,Ψ-1,Ψ0の数値の計算に一般化できる。この場合、Kは、(正または負の )任意の整数であり、Q(x)は、ガロア体GF(2m)の係数Qo,Ql,.. .,Qtを有しt以下の次数の多項式である。多項式Q(x)の係数Quは、M3 =1において計算開始のためマルチプレクサ146uの入力にアドレスされる。 要素Ψ(u+K)(1-N)は、マルチプレクサ144uの入力M4=1に供給され、要素 Ψu+Kは、マルチプレクサ144uの入力M4=0に供給され、従って、乗算器1 40uおよびマルチプレクサ144uは、u=−Kの場合、不要である。第15図 の実施例の場合、更に、xk+1・Q’(x)の数値を計算でき、K=0およびQ (x)=σ(x)が得られる。 第16図に、Ψ1-N,,..,Ψ-1,Ψoについて関数xl-1ω(x)の数値の 計算に使用するChienのサーチ回路122を示した。この回路122は、K =I−1では、Q(x)=ω(x)に対応する。導関数の計算は不要であるので 、加算手段は、計算ユニット138uから供給される量ξu (n)のデュアルベース の座標の和を形成するjビットの並列加算器150のみを含む((12)式)。 第15,16図の実施例の場合、乗算器140uの標準ベースのオペランドは 、N<2m−1の場合、変化する。上記オペランドを一定とし、かくして、乗算 器の構造を簡単化するため、Chienのサーチ回路の計算ユニットは、第18 図に示したユニット238uと同一でよい。このユニット238uは、Ψu+Kに等 しく一定の標準ベースのオペランドAを有する乗算器240uと、段nにおいて 量ζu (n)(またはξu (n))を受信して段n+1の開始時にオペランドBとして乗 算器240uに供給するためレジスタ142uと同一のレジスタ242uと、マル チプレクサ246uとを含む。マルチプレクサ246uは、シンボルクロックCL Kmの1つの サイクルだけ遅延された信号M3に対応する信号M’3によって制御される。M ’3=0の場合、乗算器240uから供給される積は、レジスタ242uのjビッ トの並列入力にアドレスされる。M’3=1の場合、レジスタ242uのjビッ トの並列入力は、デュアルベースのjビットのj個の2進座標のm/jの連続群 として量Qu・Ψ(u+K)(1-N)を受信する。更に、乗算器246uのjビットの出力 は、加算手段150(または152,154)の各入力に接続される。u=−K の場合、計算ユニットは、乗算器を含んでおらず、レジスタ242uは、マルチ プレクサ246uの入力(M3’=0)に接続されたjビットの並列出力を有す る。段n=0において、量ζu (o)=Qu・Ψ(u+K)(1-N)は、加算手段に直接に供 給される。各段n≧1において、乗算器240uは、第1オペランドとしてζu (n -1) を有し、ζu (n)を加算手段に供給する。 マルチプレクサ246uの入力にσuΨu(1-N)を得るため、マルチプレクサ66u には、Ψu(1-N)の標準ベースのmの座標を受信し、M3’=1において活性化 される第3入力が設けてある。素子64uの乗算器70は、マルチプレクサ24 6uの入力に必要なように、M3’=1においてデュアルベースのj個の座標の m/jの連続群としてσuΨu(1-N)を供給する。更に、ωuΨ(I-1+u)(1-N)を供給 するため、M3’=0の場合はγk-1を伝送し、M3’=1の場合は定数Ψ(I-1+ u)(1-N) を供給するマルチプレクサを素子112uの入力2に設ければ十分であり 、この場合、素子112uの乗算器70は、必要とされるようにM3’=1では 、ωuΨ(I-1+u)(1-N)を供給する。 Ψ=αの場合、j≧2のデュアルベースの乗算器を使用しても、第18図に示 したChienのサーチ回路120は、殆ど複雑化することはない。更に、Iが 小さい整数である場合(例えば、I=0),Chienのサーチ回路122は、 同じく、著しく簡単化される。

Claims (1)

  1. 【特許請求の範囲】 1.基数2m(mは、1よりも大きい整数を表す)のガロア体上の第1オペラン ドおよび第2オペランドの積を供給する乗算回路であって、第1オペランドAが 、A=a0+a1α+...am-1αm-1で、αは、ガロア体の生成多項式f(x) =xm+fm-1m-1+...+f1x+f0の根を表し、その係数f0,f1,... ,fm-1は、所定値のビットであるように、ガロア体の標準ベース{1,α,. ..,αm-1}において、m個の2進座標a0,a1,...,am-1によって表さ れ、第2オペランドBが、前記標準ベースのデュアルベースであるガロア体のベ ース{β0,β1,...,βm-1}において、B=c’0β0+c’1β1+...c ’m-1βm-1であるように、mの2進座標c’0,c’1,...,c’m-1で表さ れ、2つのオペランドA、Bの積が、前記デュアルベースにおいて、C=c’0 β0+c’1β1+...+c’m-1βm-1であるように2進座標c’0,c’1,. ..,c’m-1によって表わされる乗算回路において、 j個のシフトレジスタR0,R1,...,Rj-1(ここで、jは、mで除した 1よりも大きい整数を表す)を有し、各シフトレジスタRq(0≦q≦j−1) は、0≦p<(m/j)−1について各記憶素子Mpqの入力が、0≦p<(m /j)−1について記憶素子Mpqの出力にあるビットを示す記憶素子Mp+1q ’zpqの出力に接続されるよう構成されたm/j個の記憶素子M0q,M1q ,...,M(m/j)-1qを有し、zm/jqは、記憶素子M(m/j)-1qの入力にあ るビットを表しており、 各シフトレジスタRr(0≦r≦j−1)の記憶素子M(m/j)-1rの入力に、 2進加算(ここで、0≦r≦qの場合は、xpqr=fpj+q-r・zpqであり 、q+1≦r≦j−1の場合は、xpqr=f(p+1)j+q-r・zp+1qである) によって得られる各ビットx’rをアドレスするための第1の組合せ論理手段( 3 2)と、 乗算回路のj個の出力W0,W1,...,Wj-1のうちの各出力Wr(0≦r≦ j−1)に2進加算(ここで、0≦r≦qの場合は、ypqr=ap1+q-r・zp qであり、q+1≦r≦j−1の場合は、ypqr=a(p+1)j+q-r・zp+1q である) によって得られる下記の各ビットy’rを出力するための第2の組合せ論理手段 (36)とを含み、 初期サイクルk=0において、0≦p≦(m/j)−1および0≦q≦j−1 についてzpq=b’pj+qにもとづき第2オペランドBのデュアルベースの2進 座標をシフトレジスタに入力し、レジスタRqにおいて(m/j)−1のシフト サイクルk=1,...,(m/j)−1を実行することによって、サイクルk (0≦k≦(m/j)−1)において、出力W0,W1,...,Wj-1に積Cの デュアルベースの2進座標c’kj,c’kj+1,...,c’kj+(j-1)がそれぞれ 得られることを特徴とする乗算回路。 2.第1の組合せ論理手段(32)が、j個の2進加算器を構成する排他的論理 和ゲート(320−325)からなり、列r(0≦r≦j−1)の2進加算器が 、記億素子M(m/j)-1rの入力に接続された出力と、記憶素子Mpq(ここで、 0≦p≦(m/j)−1、r≦q≦j−1およびfpj+q-r=1)の出力および記 憶素子Mpq(ここで、0≦p≦(m/j)−1、r≦q≦r−1およびf(p+1 )j+q-r =1)の入力にそれぞれ接続された入力とを有することを特徴とする請求 項1に記載の乗算回路。 3.第1オペランドAの標準ベースの座標a0,a1,...,am-1が最初にロ ードされているmビットの第2のレジスタ(38)を含み、第2の組合せ論理手 段(36)が、ビットypqr(ここで、0≦p≦(m/j)−1、0≦q, r≦j−1)をそれぞれ計算するためのmj個のANDゲート(34pqr) と、ビットypqr(ここで、0≦p≦(m/j)−1、0≦q≦j−1)を それぞれ 加算して各ビットy’r(0≦r≦j−1)を出力するよう構成された排他的論 理和ゲート(360−373)とを含むことを特徴とする請求項1または2に記 載の乗算回路。 4.第1オペランドAが、標準ベースの所定の一定の座標a0,a1,...,am-1 を有し、第2の組合せ論理手段(36)が、j個の2進加算器を形成する排 他的論理和ゲート(374,375)からなり、列r(0≦r≦j−1)の2進 加算器が、乗算回路の出力Wrを構成する出力と、記憶素子Mpq(ここで、0 ≦p≦(m/j)−1、r≦q≦j−1およびapj+q-r=1)の出力および記憶 素子Mpq(ここで、0≦p≦(m/j)−1、0≦q≦r−1およびa(p+1)j +q-r =1)の入力にそれぞれ接続された入力とを有することを特徴とする請求項 1または2に記載の乗算回路。 5.受信された信号ブロックのシンボルrN-1,rN-2,...,r0がそれぞれ受 信されるN個の連続した段n=0,1,...,N−1として動作し、各シンボ ルが、基数2mを有するガロア体の要素であるシンドローム計算回路において、 エラーシンドローム(Si)を計算すべきガロア体の一定要素(Ψt+1)を第1 オペランドとして有する請求項1に記載の乗算回路(52)と、 各段n≧1において、増大する重みを有するj個の2進座標のm/j個の連続 した群の形をしたシンボルrN-1-nのデュアルベースの座標を受信するjビット の第1入力と、乗算回路(52)のj個の出力W0,...,Wj-1にあるjのビ ットを受信するjビットの第2の入力とを有するjビットの並列加算器(54) と、 N個の連続段の各々について乗算回路に、段1のブロックの第1シンボルrN- 1 に等しく、各段n+1≧2について、先行段nの進行中にシンボルrN-1-nのj の2進座標のm/j個の群の受信時に並列加算器(54)によってそれぞれ供給 されるjビットのm/j個の群に対応するデュアルベースの2進座標である第2 のオペランドを供給する手段(56,58)とを含み、 シンドロームのデュアルベースの座標が、最終段N−1の進行中に並列加算器 (54)の出力に得られることを特徴とする計算回路。 6.N個の連続段n=0,1,...,N−1において、基数2mのガロア体の 、 ガロア体の原始元Ψの連続した幕Ψ1-N,Ψ2-N,...,ΨOである、N個の連 続要素について、xK・Q(x)(ここで、Kは、整数であり、Qは、上記ガロ ア体の係数を有しt以下の次数の多項式を表す)の形の関数の常値を計算するた めのChienのサーチ回路(120;122)において、 列u(0≦u≦t)の各計算ユニット(138u;238u)が、段nの進行中 に、ガロア体の要素Qu・Ψ(u+K)(1-N+n)のデュアルベースの座標を表すj個ビ ットのm/j個の連続した群を供給するように構成され、Quが、上記多項式の u次の係数を示す、各列0,1,...,tのt+1の計算ユニット(1380 ,1381,...,138t;238u)と、 各段nにおいて要素Ψ1-N+nについて上記関数がとる数値のデュアルベースの 座標を供給するように、上記の各計算ユニット(138u;238u)から供給さ れるビットを入力するjビットの並列加算手段(152,154,156;15 0)とを含み、 列u(≠−K)の各計算ユニット(138u;238u)が、少なくとも各段n ≧1についてガロア体の要素Ψu+Kを第1オペランドとして有し、段n=1につ いて上記多項式のu次の係数とガロア体の要素Ψ(u+K)(1-N)との積を第2オペラ ンドとして有する請求項1に記載の乗算回路(140u;240u)を含み、各段 n≧2について、積が、段n−1において上記乗算回路(140u;240u)に よって出力され、 段n≧1の進行中に各乗算回路から出力される積が、前記並列加算手段のjビ ットの各並列入力にアドレスされることを特徴とするChienのサーチ回路。 7.前記並列加算手段が、各段nにおいて関数xK+1Q’(x)(ここで、Q’ は、多項式Qの導関数を表す)が要素Ψ1-N+nについて取る数値のデュアルベー スの座標を供給するよう、列u(ここで、0≦u≦tおよびu=奇数)の計算ユ ニットから供給されるビットを受信するjビットの並列加算器(152)を含む ことを特徴とする請求項6に記載のChienのサーチ回路(120)。
JP9526595A 1996-01-24 1997-01-21 ガロア体における乗算回路およびエラー訂正デコーダにおけるこの種の回路の使用 Pending JP2000504158A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR96/00797 1996-01-24
FR9600797A FR2743909B1 (fr) 1996-01-24 1996-01-24 Circuit multiplieur sur un corps de galois et applications d'un tel circuit dans un decodeur correcteur d'erreurs
PCT/FR1997/000111 WO1997027535A1 (fr) 1996-01-24 1997-01-21 Circuit multiplieur sur un corps de galois et applications d'un tel circuit dans un decodeur correcteur d'erreurs

Publications (1)

Publication Number Publication Date
JP2000504158A true JP2000504158A (ja) 2000-04-04

Family

ID=9488415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9526595A Pending JP2000504158A (ja) 1996-01-24 1997-01-21 ガロア体における乗算回路およびエラー訂正デコーダにおけるこの種の回路の使用

Country Status (8)

Country Link
EP (1) EP0876645B1 (ja)
JP (1) JP2000504158A (ja)
AT (1) ATE186788T1 (ja)
AU (1) AU1448397A (ja)
CA (1) CA2244975A1 (ja)
DE (1) DE69700806D1 (ja)
FR (1) FR2743909B1 (ja)
WO (1) WO1997027535A1 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4875211A (en) * 1986-12-10 1989-10-17 Matsushita Electric Industrial Co., Ltd. Galois field arithmetic logic unit

Also Published As

Publication number Publication date
WO1997027535A1 (fr) 1997-07-31
FR2743909B1 (fr) 1998-04-10
EP0876645A1 (fr) 1998-11-11
EP0876645B1 (fr) 1999-11-17
AU1448397A (en) 1997-08-20
CA2244975A1 (fr) 1997-07-31
DE69700806D1 (de) 1999-12-23
FR2743909A1 (fr) 1997-07-25
ATE186788T1 (de) 1999-12-15

Similar Documents

Publication Publication Date Title
US4873688A (en) High-speed real-time Reed-Solomon decoder
US5642367A (en) Finite field polynomial processing module for error control coding
US5517509A (en) Decoder for decoding ECC using Euclid's algorithm
Sarwate et al. High-speed architectures for Reed-Solomon decoders
US6374383B1 (en) Determining error locations using error correction codes
KR101616478B1 (ko) 프로그램가능한 프로세서 상에서의 임의의 갈루아 필드 산술연산의 구현
US5379243A (en) Method and apparatus for performing finite field division
US5440570A (en) Real-time binary BCH decoder
US6571368B1 (en) Systolic Reed-Solomon decoder
JPH10135846A (ja) リードソロモン復号器
US5535225A (en) Time domain algebraic encoder/decoder
JPH0452556B2 (ja)
Wilhelm A new scalable VLSI architecture for Reed-Solomon decoders
US20040078408A1 (en) Modular galois-field subfield-power integrated inverter-multiplier circuit for galois-field division over GF(256)
JP2004032737A (ja) リード−ソロモン復号器
JP2800723B2 (ja) リードソロモン復号器の誤り位置検出回路
Iwamura et al. A design of reed-solomon decoder with systolic-array structure
US5964826A (en) Division circuits based on power-sum circuit for finite field GF(2m)
JP3614978B2 (ja) ガロア体の除算方法および除算装置
JPH06197026A (ja) データ消失訂正方法とその回路
JP2000020333A (ja) 復号装置、演算装置およびこれらの方法
JP2000504158A (ja) ガロア体における乗算回路およびエラー訂正デコーダにおけるこの種の回路の使用
US5787100A (en) Apparatus for determining error evaluator polynomial for use in a Reed-Solomon decoder
US20070011592A1 (en) Decoder architecture for Reed Solomon codes
JP2000295116A (ja) 誤り修正符号化方法