JP3740175B2 - 多項式系導出装置 - Google Patents
多項式系導出装置 Download PDFInfo
- Publication number
- JP3740175B2 JP3740175B2 JP00933493A JP933493A JP3740175B2 JP 3740175 B2 JP3740175 B2 JP 3740175B2 JP 00933493 A JP00933493 A JP 00933493A JP 933493 A JP933493 A JP 933493A JP 3740175 B2 JP3740175 B2 JP 3740175B2
- Authority
- JP
- Japan
- Prior art keywords
- polynomial
- storage means
- algorithm
- auxiliary
- polynomials
- 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
Images
Landscapes
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
- Complex Calculations (AREA)
Description
【産業上の利用分野】
本発明は、ディジタル通信系及びディジタル記憶系において通信路または記憶媒体で受けた誤りを、誤り訂正符号を用いて受信側で自動的に訂正する誤り訂正に関し、特に誤り訂正符号として代数幾何符号を用いる場合の復号において、与えられた多次元配列を生成する最小多項式系を求める多項式系導出装置及びその方法に関する。
【0002】
【従来の技術】
従来、ディジタル通信系及びディジタル記憶系において通信路または記憶媒体で受けた誤りを、受信側で自動的に訂正する誤り訂正符号として、リード・ソロモン(RS)符号やBCH符号がよく知られ、コンパクト・ディスクや衛星通信等において実際に装置化され使用されている(参考文献[1] 参照)。
【0003】
しかし、最近は、代数曲線論を駆使した代数幾何符号(参考文献[1]-[4] 参照)と呼ばれる符号の研究が盛んに行われている。代数幾何符号は、前述のRS符号やBCH符号をその1クラスとして含む非常に適用範囲の広い符号系であり、従来の符号よりもよい性質を持つ新符号が存在することが徐々に明らかになってきている(参考文献[5][6]参照)。
【0004】
このように優れた符号が発見される中で、恒に問題となっていたのは復号法の問題であり、その効率的な復号アルゴリズムの開発が急がれたが、1989年にJustesenらのグループが一般化Peterson algorithm(参考文献[7] 参照)を提案するまで、長い間有効な復号アルゴリズムは全く得られなかった。また、Justesenらは、与えられた有限の大きさを持つ2次元配列を生成する、記憶素子数最小の2次元線形帰還シフトレジスタを求める効率的なアルゴリズムとして、阪田によって提案された阪田アルゴリズム(参考文献[8] 参照)を、彼らの一般化 Peterson algorithm に応用することで、少ない計算量で高速に誤り位置関数を導出できることを示した。
【0005】
しかし、一般化Peterson algorithmは、その訂正能力に制約があったために、Skorobogatovらはより高い訂正能力を保証する Modified decoding algorithm(参考文献[9] 参照)を提案した。また、阪田アルゴリズムには Modified decoding algorithmに対しては直接関係のない無駄な演算が多く存在したために、神谷らは、阪田アルゴリズムを Modified decoding algorithmに沿った形(参考文献[11][12]参照)に修正したアルゴリズムを1992年に提案した。
【0006】
一方、従来用いられているRS符号やBCH符号の復号法として、Peterson法と、バーレカンプ・マッセイ(BM)法及びユークリッド(Eu)法がよく知られている。前述の一般化 Peterson algorithm はRS符号の復号に用いられるPeterson法の拡張になっている。また阪田アルゴリズムは2次元BM法とも呼ばれ、RS符号の復号に用いられるBM法(以後、1次元BM法と呼ぶ)の拡張になっていることが知られている。
【0007】
【発明が解決しようとしている課題】
しかしながら、RS符号の復号に用いられるEu法(以後、1次元Eu法と呼ぶ)の拡張に相当するアルゴリズムは、これまでに考えられていなかった。
【0008】
また、阪田は、2次元BM法の拡張として多次元BM法(参考文献[13]参照)も提案したが、それに対応する多次元Eu法もまた、考案されていなかった。
【0009】
そこで、本発明では、1次元Eu法の拡張に相当する2次元Eu法を提案し、更に、この2次元Eu法を拡張して、多次元BM法に対応する多次元Eu法を提案することを目的とする。
【0010】
【課題を解決するための手段】
上記課題を解決するために、本発明では、与えられた多次元配列を生成する最小多項式系を求める多項式系導出装置に、求める最小多項式系となる第1の多項式系を記憶するための第1多項式記憶手段と、当該第1の多項式系と異なる第2の多項式系を記憶するための第2多項式記憶手段と、前記第1の多項式系に対する第1の補助多項式系を記憶するための第1補助多項式記憶手段と、前記第2の多項式系に対する第2の補助多項式系を記憶するための第2補助多項式記憶手段と、注目点の座標を記憶する注目点記憶手段と、前記第1の多項式記憶手段の初期値として前記多次元配列に対応する多項式を設定し、前記注目点記憶手段の初期値として原点を設定し、前記第2の多項式記憶手段、並びに前記第1及び第2の補助多項式記憶手段の初期値を設定する設定手段と、前記第2多項式記憶手段に記憶された各多項式の最高次数の係数が0か否かを判別する判別手段と、該判別手段により最高次数の係数が0でない多項式があると判別された場合に、当該係数が0でない最高次数を与える2変数の次数の組と、前記注目点記憶手段に記憶された現在の注目点の座標とに基づいて定義点を更新する定義点更新手段と、該定義点更新手段により更新された定義点に応じて新たな第1及び第2の多項式を生成し、前記第2多項式記憶手段に記憶された第2の多項式系から最高次の係数が0でない全ての多項式を削除するとともに、前記新たな第2の多項式を追加し、前記第1多項式記憶手段に記憶された第1の多項式系から、当該削除された第2の多項式に対応する多項式を削除するとともに、前記新たな第1の多項式を追加する多項式系更新手段と、前記定義点が変化した場合に、前記第1補助多項式記憶手段に記憶された第1の補助多項式系及び前記第1多項式記憶手段から削除された多項式の中から新たな第1の補助多項式系を選択し、前記第2補助多項式記憶手段に記憶された第2の補助多項式系及び前記第2多項式記憶手段から削除された多項式の中から新たな第1の補助多項式系を選択する補助多項式系更新手段と、前記判別手段による判別を前記原点より所定の順序における終了点までの各点を注目点として順次実行することで、前記第1多項式記憶手段に最終的に得られる第1の多項式系として、前記最小多項式系を得るように制御する制御手段とを具える。
【0012】
[参考文献]
[1] 今井:“符号理論”,電子情報通信学会
[2]V.D.Goppa: “Codes on algebraic curves ”, Soviet Math.Dokl., 24, pp.170-172, 1981.
[3]V.D.Goppa: “Algebraico-geometric codes”, Math. U.S.S.R. Izvestiya, vol.21, no.1, pp.75-91, 1983.
[4]V.D.Goppa: “Geometry and Codes”, Kluwer Academic Publishers, 1988.
[5]M.A.Tsfasman and S.G.Vladut: “Algebraic-geometric codes ”, Kluwer Academic Publishers, 1991.
[6] 三浦:“ある平面曲線上の代数曲線符号”, Preprint.
[7]J.Justesen, K.J.Larsen, E.Jensen, A.Havemose and T.Hoholdt:“Construction and decoding of a class of algebraic geometry codes”, IEEE Trans.Inform.Theory, vol.35, no.4, pp.811-821, July 1989.
[8] 阪田:“与えられた2次元配列を生成する2次元線形帰還シフトレジスタの合成”,信学論(A),vol.J-70A, pp.903-910, 1987.
[9]A.N.Skorobogatov and S.G.Vladut: “On the decoding of algebraic geometric codes”, IEEE Trans.Inform.Theory, vol.36, no.5, pp.1051-10 60, Sep. 1990.
[10]三浦:“代数曲線符号の一般的な復号法(1),(2) ”,信学技法,vol.IT89, no.452, IT89-91,92, pp.61-70, pp.71-80, 1990.
[11]神谷,三浦:“ある種の代数曲線符号に関する Modified decoding
algorithmへの Sakata algorithm の応用について”,信学技法, vol.IT9 1, no.435, IT91-96, pp.47-54, 1992.
[12]神谷,三浦:“ある種の代数曲線符号に関する再帰的な復号アルゴリズム”,
信学技法, vol.IT91, no.505, IT91-116, pp.89-96, 1992.
[13]S.Sakata: “Extension of the Berlekamp-Massey algorithm to N dimensions”,Information and Computation, vol.84, pp.207-239, 1990
【0013】
【実施例】
[説明の概要]
以下では、まず1次元Eu法の拡張に相当する2次元Eu法を提案する。
【0014】
そして、この2次元Eu法が、2次元BM法である阪田アルゴリズムやその修正アルゴリズムである神谷アルゴリズムと等価な結果を出力することを示す。更に、2次元Eu法を拡張し、多次元BM法に対応する多次元Eu法を提案する。そして、本発明による多次元Eu法が、装置化や高速化において、従来の多次元BM法と異なる効果をもつアルゴリズムであることも示し、その違いを明らかにする。
【0015】
従来知られた多次元BM法のアルゴリズムは、図2に示す構造を持つ。一方、本発明による多次元Eu法のアルゴリズムは、図3に示す構造を持つ。多次元BM法と多次元Eu法の違いは、前者がステップS22においてdfn (i) を直接計算し、ステップS25においてその値を用いて多項式系Fを更新するのに対し、後者では、dfn (i) を直接計算せず、新たに導入した多項式系Bに属する多項式の最高次係数di を用いて、ステップS34において多項式系Bを更新し、ステップS35において多項式系Fを更新する点である。
【0016】
上記従来の多次元BM法が、与えられた多次元配列uを生成する最小多項式系Fを導くことは、前記文献[8] ,[13]に証明されている。よって、ここでは本発明による多次元Eu法が、多次元BM法と同じ多項式系Fを導くことを以下に示す定理1〜定理3により証明することによって、図3の多次元Eu法から得られる多項式系Fも、与えられた多次元配列uを生成する最小多項式系であることを示す。以下、従来知られた2次元BM法及び多次元BM法を例にとり、本発明による多次元Eu法を具体的に説明する。
【0017】
[実施例1]
まず、以下の準備(用語の説明)の後に、阪田アルゴリズムを示す。このアルゴリズムが、与えられた有限2次元配列uを生成する、記憶素子数最小の2次元線形帰還シフトレジスタを合成する多項式系Fを導出することの証明は、前記文献[8] になされているので省略する。
【0018】
準備1(詳細は文献[8] 参考):
Σ:あらゆる非負整数n1 ,n2 の対n=(n1 ,n2 )の集合。
【0019】
n:点と呼ばれ、X−Y平面上の座標(n1 ,n2 )を持つ点と同一視される。
【0020】
<T :全順序と呼ばれ、Σ上の点nの大小関係を定める。ここでは、点n=(n1 ,n2 )に対し、<T に関する次の点を以下のように定める。
【0021】
<p :半順序と呼ばれ、次のように定義される。
【0022】
m1 ≦n1 ,m2 ≦n2 のとき、かつそのときに限ってm≦p n。
【0023】
m<p nはm≦p nかつm≠nを意味する。
【0024】
Σt p:={m∈Σ|t≦p m,m<T p}
u:uは大きさqの有限部分2次元配列であり、Σ0 qから体Kへの写像として定義される。
【0025】
F:体K上の2変数多項式を
【0026】
【外1】
【0027】
とする。
【0028】
ただし、zm =xm1・ ym2,Γf ={m∈Σ|fm ≠0},
s=LP(f) =max {m|m∈Γf }
多項式の組をF={f(0),…, f(l-1) }と表す。
【0029】
dfn (i) :Σ上の点nから体Kへの写像をun とすると、LP( f(i))=s(i) なる多項式f(i) に対し、
【0030】
【外2】
【0031】
とする。
【0032】
V(u) :p≦T qに対するun の集合をup ={un |n∈Σ0 p}とするとき、up に対してdfn (i) =0(0≦n<p)であれば、f[ up]=0と表す。このとき、V( up)={fは多項式|f[ up]=0}とする。
【0033】
定義点:多項式の組Fが与えられた2次元配列を生成することができる極小な多項式系であるとき、LP( f(i))=s(i) を定義点と呼ぶ。ただし、極小な多項式系とは次の条件を満たすものである。
【0034】
i)F⊆V( up)
ii)1≦i,j≦lかつi≠jかつLP( f(i))≧p LP( f(j))となるi,jは存在しない。
【0035】
iii)g∈V( u) かつLP( g) ∈△Fとなる多項式gは存在しない。
【0036】
ただし、
【0037】
【外3】
【0038】
△:上の条件を満たすときの△F。次のようにして求められる。
【0039】
△=∪△q-s。, q,s ∈Σ0 p
ただし、dfq≠0かつLP( f) =sとなるf∈V( uq)が存在するとき
△q-s ={m∈Σ|m≦p q−s}、そうでなければ△q-s =¢。
【0040】
h1 :型<i,j>のh1 を次のように定義する。
【0041】
h1 =zr-s(i)・ f(i) −( di/dj)・ zr-n+m-t(j)・ g(j)
ただし、r=(r1 ,r2 ),r1 =max {s1(i),n1 −s1(j)+1},
r2 =max {s2(i),n2 −s2(j+1)+1},t(j) =LP(g(j)),
f(i)∈V( un),g(j)∈V( um),di =dfn (i) ,dj =dgm (j) 。
G:Fの補助多項式系と呼ばれ、G={g(0),…, g(l-2) }なる多項式の組。
【0042】
補題1:▲1▼で定まる型のjは、LP( f(j))=s(j) かつp−s(i) ≦p (s1(j)−1,s2(j+1)−1)となるjである。
【0043】
補題2:▲2▼で定まる型のkは、LP( f(k))<p tとなるkである。
【0044】
阪田アルゴリズム
1)n=(0,0),F={1},G=¢
2)Fの全ての多項式に対してdfn (i) を計算する。
【0045】
3)もしdfn (i) ≠0 となるf(i) があれば、新しい△と定義点tを定める。4)そのあらゆる定義点tにおいて以下の手続きを実行する。
【0046】
▲1▼t=(s1(i),s2(i))→補題1の多項式h1 を作る。
【0047】
▲2▼t=(n1 −s1(i)+1,n2 −s2(i+1)+1)→補題2の型<k, i>のh1 を作る。
【0048】
▲3▼t=(n1 −s1(i)+1,s2(j)), 1≦i≦l- 1→型<j, i>のh1 を作る。
【0049】
▲4▼t=(s1(i),n2 −s2(j)+1), 2≦j≦l→型<i, j- 1>のh1 を作る。
【0050】
▲5▼t=(n1 +1,s2(j))→h1 =xn1-s1(j)+1・ f(j)
▲6▼t=(s1(i),n2 +1)→h1 =yn2-s2(i)+1・ f(i)
Fからdfn (i) ≠0の全ての多項式を除去し、新しく求めたh1 を全てFに挿入する。
【0051】
5)△が変化した場合、新しいFの補助多項式系Gの多項式を旧のGと除去したFの多項式の中から選び出す。
【0052】
6)n=n+1;n=pならば終了;さもなければ2)へ
以下に、阪田アルゴリズムと同じ出力を導出する、本発明による新しいアルゴリズムを示す。
【0053】
アルゴリズム1
1)n=(0,0),F={1},G=¢,A={x-1},B={u}
2)Bの全ての多項式の最高次係数が0でなければ、新しい△と定義点tを定める。
【0054】
3)そのあらゆる定義点tにおいて以下の手続きを実行する。
【0055】
▲1▼t=(s1(i),s2(i))→補題1の型をもつ多項式h2 を作る。
【0056】
▲2▼t=(n1 −s1(i)+1,n2 −s2(i+1)+1)→補題2の型<k, i>のh2 を作る。
【0057】
▲3▼t=(n1 −s1(i)+1,s2(j)), 1≦i≦l- 1→型<j, i>のh2 を作る。
【0058】
▲4▼t=(s1(i),n2 −s2(j)+1), 2≦j≦l→型<i, j- 1>のh2 を作る。
【0059】
▲5▼t=(n1 +1,s2(j))→h2 =x-(n1-s1(j)+1)・b(j)
▲6▼t=(s1(i),n2 +1)→h2 =yn2-s2(i)+1・ b(i)
Bから最高次係数が0でない全ての多項式を除去し、新しく求めたh2 を全てBに挿入する。
【0060】
4)3)で決定された型の多項式h1 を作る。また、FからBの除去した多項式に対応する多項式を除去し、新しく求めたh1 をFに挿入する。
【0061】
5)△が変化した場合、新しいFの補助多項式系Gの多項式を旧のGと除去したFの多項式の中から選び出す。また、新しいBの補助多項式系Aの多項式を旧のAと除去したBの多項式の中から選び出す。
【0062】
6)n=n+1;n=pならば終了;さもなければ2)へ
ただし、
A,B:A={a(0),…, a(l-2) },B={b(0),…, b(l-1) }となる多項式の組。
【0063】
h2 :型<i,j>のh2 を次のように定義する。
【0064】
h2 =zr-s(i)・ b(i) −( di/dj)・ zr-n+m-t(j)・ a(j)
アルゴリズム1と阪田アルゴリズムの大きな違いは、阪田アルゴリズムがdfn (i) を直接計算し、それが全て0であるかどうかを検査するのに対し、アルゴリズム1はdfn (i) を直接計算せず、Bに属す多項式b(i) の最高次係数が0であるかどうかを検査することであり、そのためにアルゴリズム1は阪田アルゴリズムにない多項式の組A,Bを導入している。
【0065】
アルゴリズム1によって得られるFと阪田アルゴリズムによって得られるFが同じ多項式系であることは次のようにして証明できる。
【0066】
定理1
式(1)のように定義したun (n∈Σ0p)を係数とする多項式uとLP( ) =sである多項式fの積多項式をbとするとき、多項式bのzv-n+s 次の係数bv-n+s は式(2)のようになる。ただし、vは任意の整数。
【0067】
証明:
式(1)から
【0068】
【外4】
【0069】
である。
【0070】
よって、多項式bのzv-n+s の係数bv-n+s はv−i+m=v−n+sよりi=m+n−sとなるので、式(2)のようになる。
【0071】
(証明終了)
この定理からf(i) ∈Fに対応するb(i) =f(i)・uのzv-n+s の係数は阪田アルゴリズムのdfn (i) となっていることがわかる。
【0072】
また、V( un)である多項式f(i) をfn (i)と表すと次の定理が成り立つ。
【0073】
定理2:
式(3),(4)によって更新される多項式をlq (k),cq (k)とする(q>T n>T m)。また、多項式wq (k)を式(5)のように定義すると、wq (k)は式(6)によって更新できる。ただし、rs,rtは任意の整数。また、ln (i),lm (j)及びcn (i),cm (j)の初期値は任意の多項式。
【0074】
lq (k)=zrs・ ln (i)−( di /dj)・ zrt・ lm (j) (3)
cq (k)=zrs・ cn (i)−( di /dj)・ zrt・ cm (j) (4)
wq (k)=lq (k)・ e−cq (k)・ d (d,eは任意の多項式) (5)
wq (k)=zrs・ wn (i)−( di /dj)・ zrt・ wm (j) (6)
証明:
式(6)は任意のq及びkに対して成り立つので、次が成り立つ。
【0075】
wn (i)=ln (i)・ e−cn (i)・ d
wm (j)=lm (j)・ e−cm (j)・ d
従って、次が言える。
【0076】
(証明終了)
阪田アルゴリズムにおいて、V( uq)となるf(k) =fq (k)∈Fはh1 によって更新され、g(j) はV( um)となるf(j) =fm (j)であるので、h1 は式(3)の形式で表現できる。
【0077】
また、次の定理が成立する。
【0078】
定理3:
式(5)において、lq (k)=fq (k),e=u,d=zv・x、及びc-1 (j) =1,c0 (i)=0とすると、deg wq (k)≦vにおいてwq (k)=bq (k)である。このとき、bq (k)はv−q+s(k) 次の多項式である。
【0079】
証明:
lq (k)=fq (k),e=uより、式(5)はwq (k)=bq (k)−cq (k)・ dとなる。また、deg c-1 (j) ≦0,deg c0 (i)≦0であれば式(4)よりcq (k)は正の次数の多項式であり、d=zv・xであるのでdeg cq (k)・ d>vである。よって、deg wq (k)≦vにおいてwq (k)=bq (k)である。
【0080】
また、定義からbq (k)=u・ fq (k)の最高次数はv+s(k) であるが、このときのfq (k)はfq (k)∈V(uq )であるのでdfi (k) =0(i=0, …,q-1) である。定理1からdfi (k) はbq (k)のzv-i+s(k)の係数であるので、bq (k)のv−i+s(k) 次(i=0, …,q-1) の係数は0になり、bq (k)の最高次数はv−q+s(k) になる。
【0081】
(証明終了)
従って、bq (k)=wq (k)は式(6)によって更新できる。即ち、bq (k)はh2 によって更新できる。この場合、定理1,定理3からdi ,dj は各々多項式bn (i),bm (k)のzv-n+s(i),zv-m+s(j)の係数、即ち、最高次係数である。
【0082】
以上から、アルゴリズム1によって得られるFと阪田アルゴリズムによって得られるFが同じ多項式系であることが証明された。阪田アルゴリズムによって得られる多項式系Fは与えられた2次元配列uを生成する最小多項式系であることが文献[8] によって証明されているので、アルゴリズム1から得られる多項式系Fも与えられた2次元配列uを生成する最小多項式系であることがいえる。
【0083】
よって、このアルゴリズムは例えば図1のような装置によって実現できる。まず、アルゴリズム1の1)で設定されている初期値及びその更新値を記憶するメモリと、そこに格納されたBの多項式の最高次係数が0であるかどうかを判断し、0であれば6)を実行し、0でなければ新しい定義点を計算し型を判断する2)を実行する制御回路11と、その型に従って3),4)に示されたh2 ,h1 の演算を行う処理回路12によって実現できる。また、制御回路11は定義点が更新されていればメモリ13中のA,Gの多項式を5)に示されるように新しく選択・更新する。
【0084】
ただし、制御回路11と処理回路12は、各種制御手順及び前記アルゴリズムに対応するプログラムをCPUに実行させることによりソフトウェア的に実現することもできるので、分離してある必要はない。また、制御・処理において必要な演算は簡単な整数の乗除算と加減算であるので、特殊な回路・処理は必要としない。また、制御における型の判定及び手順の流れは、予めプログラミングしておいたりROMに焼き付けておいて、必要なときに検索(テーブル・ルックアップ)すれば簡単である。
【0085】
また、h1 とh2 は同時に実行することができるので処理回路をh1 とh2 独立に持つこともできる。また、h1 とh2 は同様の処理であるので1つの回路によって実行することしてもよい。また、効果の所で後述するように本アルゴリズムの特徴は並列処理のしやすさであるので、処理回路は1つである必要はない。以上から、アルゴリズム1を実行する回路は簡単に実現することができることがわかる。
【0086】
[実施例2]
次に神谷らに示された Modified decoding algorithm に適したアルゴリズムと等価なアルゴリズムを考える。まず、以下の準備の後に、神谷らによって示されたアルゴリズムを示す。ただし、以下の準備において述べられていない部分は実施例1の場合と同じである。
【0087】
準備2(詳細は文献[12]参照):
<T :ここでは全順序は次のように定める。
【0088】
Q(i)=a・ i1 +b・ i2 (a,bは互いに素な自然数,i=(i1 ,i2 ))
Q(m)<Q(n)が満たされるか、
Q(m)=Q(n)かつm2 ≦n2 の時に限って、
m≦T nとし、この全順序<T に関してmの次の点をm+1と表す。
【0089】
Σt p(n) :={m∈Σ|m2 ≦n,t≦p m,m<T p}
u :uは大きさqの有限部分2次元配列であり、Σ0 q(2・(a-1)) から体Kへの写像として定義される。
【0090】
F :体K上の2変数多項式を
【0091】
【外5】
【0092】
とする。
【0093】
ただし、zm =xm1・ ym2,Γf ={m∈Σ(a-1) |fm ≠0},
s=LP( f) =max {m|m∈Γf }
多項式の組をF={f(0),…, f(a-1) }と表す。
【0094】
V( u) :Q( p) <qに対するun の集合をup ={un |n∈Σ0 p(2・(a-1)) }とするとき、up に対してdfn (i) =0(n∈Σs p(a-1+s2))であれば、f[ up]=0と表す。このとき、V( up)={fは多項式|f[ up]=0}とする。
【0095】
△ :△は次のようにして求められる。
【0096】
△=∪△q-s
q,s∈Σ0 p(2・(a-1))
ただし、dfq≠0かつLP( f) =sとなるf∈V( uq)が存在するとき△q-s ={m∈Σ(a-1) |m1 ≦q1 −s1 ,m2 =q2 −s2 }、
そうでなければ△q-s =¢。
【0097】
h3 :型<i,j>のh3 を次のように定義する。
【0098】
h3 =xr1-s1(i)・ f(i) −( di/dj)・ xr1-n1+m1-t1(j)・ g(j)
G:Fの補助多項式系と呼ばれ、G={g(0),…, g(a-1) }なる多項式の組。神谷アルゴリズム
1)n=(0,0),F={1,y,y2 ,…,ya-1 },G=¢
2)Fの全ての多項式に対してdfn (i) を計算する。
【0099】
3)もしdfn (i) ≠0 となるf(i) があれば、新しい△と定義点tを定める。4)そのあらゆる定義点tにおいて以下の手続きを実行する。
【0100】
t=(s1(i),s2(i))→型<i,n2 −i>のh3 を作る。
【0101】
t=(n1 −s1(i)+1,n2 −s2(i))→型<n2 −i,i>のh3 を作る。
【0102】
t=(n1 +1,n2 −s2(i))→h3 =xn1-s1(n2-i)+1・f(n2-i)
Fからdfn (i) ≠0の全ての多項式を除去し、新しく求めたh3 を全てFに挿入する。
【0103】
5)△が変化した場合、新しいFの補助多項式系Gの多項式を旧のGと除去したFの多項式の中から選び出す。
【0104】
6)n=n+1;n=pならば終了;さもなければ2)へ
神谷アルゴリズムと等価なアルゴリズムを以下に示す。
【0105】
アルゴリズム2
1)n=(0,0),F={1,y,…,ya-1 },G=¢,
A={x-1},B={u}
2)Bの全ての多項式の最高次係数が0でなければ、新しい△と定義点tを定める。
【0106】
3)そのあらゆる定義点tにおいて以下の手続きを実行する。
【0107】
▲1▼t=(s1(i),s2(i))→型<i,n2 −i>のh4 を作る。
【0108】
▲2▼t=(n1 −s1(i)+1,n2 −s2(i))→型<n2 −i,i>のh4 を作る。
【0109】
▲3▼t=(n1 +1,n2 −s2(i))→h4 =xs1(n2-i)-n1-1・f(n2-i)
Bから最高次係数が0でない全ての多項式を除去し、新しく求めたh4 を全てBに挿入する。
【0110】
4)3)で決定された型の多項式h3 を作る。また、FからBの除去した多項式に対応する多項式を除去し、新しく求めたh3 をFに挿入する。
【0111】
5)△が変化した場合、新しいFの補助多項式系Gの多項式を旧のGと除去したFの多項式の中から選び出す。また、新しいBの補助多項式系Aの多項式を旧のAと除去したBの多項式の中から選び出す。
【0112】
6)n=n+1;n=pならば終了;さもなければ2)へ
ただし、
h4 :型<i,j>のh4 を次のように定義する。
【0113】
h4 =xr1-s1(i)・ b(i) −( di/dj)・ xr1-n1+m1-t1(j)・ a(j)アルゴリズム2と神谷アルゴリズムの違いも、アルゴリズム1と阪田アルゴリズムの違いと同様にdfn (i) を直接計算するか、Bに属す多項式b(i) の最高次係数とするかである。従って、アルゴリズム1と阪田アルゴリズムの間で成り立った関係が、アルゴリズム2と神谷アルゴリズムの間で成立すればアルゴリズム2によって得られるFと神谷アルゴリズムによって得られるFが同じ多項式系であることが証明できる。よって、次のようになる。
【0114】
定理1のf(i) ∈Fを神谷アルゴリズムのf(i) とすれば、それに対応する多項式b(i) =f(i)・uのzv-n+s の係数は神谷アルゴリズムのdfn (i) となっていることがいえる。よって、定理1はこの実施例においても成立する。
【0115】
定理2は一般的に成立する。
【0116】
定理3のfq (k)は神谷アルゴリズムのf(i) であるので、定理3も同様に成立する。
【0117】
従って、阪田アルゴリズムの場合と同様にwq (k)=bq (k)であることがいえるので、bq (k)はh4 によって更新できる。この場合も、定理1からdi ,dj は各々多項式bn (i),bm (k)の最高次数の係数である。
【0118】
以上から、アルゴリズム2によって得られるFと神谷アルゴリズムによって得られるFが同じ多項式系であることが証明された。
【0119】
よって、アルゴリズム2も図1のような装置によって実現できる。ただし、制御及び処理はアルゴリズム1と異なる。(処理はh3 ,h4 の演算を行い、制御は型の判定が簡単化されている。また、メモリ部もA,B,F,Gの初期値も1)に示された多項式が設定される。)また、アルゴリズム2も並列処理に適しているので、処理回路は1つである必要はない。以上から、アルゴリズム2を実行する回路も簡単に実現することができることがわかる。
【0120】
[実施例3]
多次元配列を生成する記憶素子数最小の多次元シフトレジスタを合成する多項式系Fを導出するアルゴリズムもまた、阪田によって示されている[13]。このアルゴリズムは多次元BM法と呼ばれており、ここでは、多次元BM法に対応する新しいアルゴリズムを考える。
【0121】
詳細なアルゴリズムは煩雑であるので、BM法と呼ばれるアルゴリズムの特徴を図で示す。1次元のBM法を含め、その拡張である阪田によって提案されたアルゴリズム(多次元BM法)は図2のような構成を持っている。それに対応するアルゴリズムは図3のようになる。図2と図3の違いも前述の2つの実施例と同様に、dfn (i) を直接計算するか、Bに属す多項式b(i) の最高次係数とするかである。従って、定理1〜3が多次元配列においても成立すれば、図2の多次元BM法によって得られるFと図3のアルゴリズムによって得られるFが同じ多項式系であることが証明できる。
【0122】
前述の実施例において点はn=(n1 ,n2 )となる2次元空間上で定義され、配列及び多項式の各係数はその点における写像である。これをN次元空間に拡張した場合、点はn=(n1 ,n2 ,…,nN )と定義され、配列及び多項式もその点における写像になり、その関係は次元を問わず同じである。従って、N次元空間においても定理1〜3は同様に成り立つことは明らかである。
【0123】
従って、図3のアルゴリズムから生成されるFは図2のアルゴリズムから生成されるFと同じであることがいえる。よって、図3のアルゴリズムも図1のような装置によって簡単に実現できる。
【0124】
ただし、図3のアルゴリズムは1次元の場合、前述のRS符号やBCH符号の復号において用いられるEu法と呼ばれるアルゴリズムになる。また、効果の所で述べるように図3のアルゴリズムは1次元Eu法の特徴を失うことなく、多次元へとEu法を拡張している。従って、アルゴリズム1,2を含む図3の構成を持つアルゴリズムを多次元BM法に対応して多次元Eu法と呼ぶことにする。
【0125】
[その他の実施例]
前述したように1次元のBM法や1次元のEu法はRS符号やBCH符号においてよく用いられているので、種々の変形アルゴリズムが提案されている。よく知られた1次元Eu法の変形アルゴリズムとして連分数法(L.R.Welch and R.A.Scholtz: “Continued fractions and Berlekamp's algorithm,”IEEE Trans.Inf.Theory, IT-25,pp.19-27, Jan.1979)がある。これは、式(6)の演算を最後まで行わず、最終結果に関係のない演算を省いた手法である。しかし、式(6)の形式の演算によってBを更新しdfn (i) を直接計算しないという点では同じであるので、本方式は連分数法を含む種々のアルゴリズムの変形に対しても有効であることは明かである。
【0126】
また、本方式はアルゴリズム1,2の例からもわかるように型の分類の方法に依存しない。従って、本方式は多次元配列に対してBM法のように直接dfn (i) を計算せず、式(6)の形式の演算によってBを更新し、dfn (i) をBの多項式の最高次係数として演算する手法に対して全て有効である。
【0127】
また、点や各パラメータ(rs,rt等)は整数とし、fn (i)及びbn (i)は多項式としているが、点や各パラメータを任意の複素数、多項式を有理関数等に拡張しても本方式が有効であることは明かである。
【0128】
また、多項式uやfの次数を逆(双対多項式)にすれば、多項式b=f・ uも次数が逆になりdi を多項式bの最低次係数とすることもできる。
【0129】
また、定理3においてd=zv・xとしているが、d=zv+1 またはd=0としてもwq (k)=bq (k)となり図3の構造を持つアルゴリズムの結果は変わらないことは明かである。
【0130】
また、以上の実施例ではBの更新のために次の式(7)のような演算を用いているが、式(8)のような演算によっても定数項の違いを除いて同じ結果が得られる。ただし、an (j)=bm (j)。
【0131】
bn+1 (k)=zrs・ bn (i)−( di /dj)・ zrt・ an (j) (7)
bn+1 (k)=dj・zrs・ bn (i)−di・zrt・ an (j) (8)
以上からわかるように、Eu法とBM法の違いを次のように表せる。
【0132】
BM法:dfn (i) を直接計算して、その値を用いてfn+1 (k) を求める。
【0133】
Eu法:dfn (i) を直接計算せず、多項式bn (i)とbn (j)の最高次の係数di,dj を用いて式(7)のようにbn+1 (k)を求める。また、同じdi,dj を用いてfn+1 (k) を計算する。ただし、an (j)=bm (j)。
【0134】
bn+1 (k)=zrs・bn (i)−(di /dj )・zrt・an (j) (7)
この違いから次のような相違点がBM法とEu法の装置化及び高速化に対して生じる。
【0135】
BM法: BM法はfn (i)とfn+1 (k)を並列に計算することは困難である。なぜならば、fn+1 (k)を計算するためにはdfn (i) =di が必要であり、dfn (i) はfn (i)の全ての係数を用いて計算される。従って、dfn (i) が得られるのはfn (i)の計算が終わった後であるので、fn+1 (k)の計算はfn (i)の計算が終わった後でしか始まらない。従って、図4(a) に示すようにBM法では点nとn+1における多項式fn (i)とfn+1 (k)は逐次的に計算される。さらに、BM法はfn (i)とfn+1 (k)及びdfn (i) の演算を1クロックで計算したとしても、それらが並列に実行されないため図4(b) に示すように2pクロック程度の計算時間が必要である。これは、1次元BM法から図2に示される多次元BM法に対して共通する特徴である。
【0136】
Eu法: Eu法はfn (i)とfn+1 (k)を並列に計算することができる。なぜならば、Eu法においてdi はbn (i)∈Bの最高次係数となっており、Bに属す多項式は式(7)によってBに属す多項式のみによって計算される。bn (i)とan ( j)を用いて式(7)が最高次数から下位次数の方へ順次計算されているとすると、出力bn+1 (k)は最高次係数から下位次係数の方へ順次得られる。よって、点n+2における多項式bn+2 (k)はbn+1 (i)の最高次係数が得られた時点から計算を始めることができる(an+1 (j)は既に得られている多項式である。)。これは点n+1とn+2における多項式が並列に計算できることを示しているが、点nとn+1においても同様であることは明かである。従って、Bの更新のための演算は各点において並列に実行することができる。また、fn+2 (k)とfn+1 (k)の計算もbn+1 (i)とbn (i)の最高次係数がわかった時点で始めることができるので、図5の(a) に示すようにfn+1 (k)の演算も各点において並列に実行できる。よって、Eu法は式(7)の演算を行う処理回路を複数用意すれば、その数に比例した高速化が容易に行える。これは、よく知られた1次元Eu法から図3の多次元Eu法に対して共通の特徴であり、上記のBM法にはない特徴である。また、bn (i),bn+1 (k)及びfn (i),fn+1 (k)の演算を1クロックで計算した場合、図5の(b) に示すようにpクロック程度の計算時間で良く、BM法より高速な演算が行える(ただし、図5は点nにおけるdi をdn と表す。)。
【0137】
一般的に、高速なアルゴリズムとは計算量の少ないアルゴリズムを指す場合が多い。しかし、高速化を実現する場合、アルゴリズムの計算量を減少させるアプローチとアルゴリズムの並列度を高めるアプローチが考えられる。それは並列処理によって複数の処理を同時に実行すれば処理時間が短縮できるためである。最近はVLSI技術の進歩により大規模な並列処理チップを容易に実現することができる。よって、並列度の高いアルゴリズムの方が高速処理向きである場合も多い。
【0138】
【発明の効果】
以上説明したように、本発明によるEu法は、BM法よりも並列度が高く、高速処理に向いていると言える。また、BM法が多項式fn (i)とスカラ量dfn (i) という2種類の演算を必要とするのに対して、Eu法はfn (i),bn (i)に対して式(7)に示される同一形式の演算のみでよいので、処理回路をユニット化しやすくより並列処理に向いていると言える。
【0139】
従って、並列処理を用いて装置化する場合、本発明によれば、簡単に高速な処理装置を構成できるという効果がある。
【図面の簡単な説明】
【図1】本発明による多次元配列生成回路である。
【図2】従来のBM法による多次元配列生成アルゴリズムである。
【図3】本発明によるEu法による多次元配列生成アルゴリズムである。
【図4】従来のBM法の動作説明図である。
【図5】本発明によるEu法の動作説明図である。
【符号の説明】
11 制御回路
12 処理回路
13 メモリ
Claims (5)
- 与えられた多次元配列を生成する最小多項式系を求める多項式系導出装置において、
求める最小多項式系となる第1の多項式系を記憶するための第1多項式記憶手段と、
当該第1の多項式系と異なる第2の多項式系を記憶するための第2多項式記憶手段と、
前記第1の多項式系に対する第1の補助多項式系を記憶するための第1補助多項式記憶手段と、
前記第2の多項式系に対する第2の補助多項式系を記憶するための第2補助多項式記憶手段と、
注目点の座標を記憶する注目点記憶手段と、
前記第1の多項式記憶手段の初期値として前記多次元配列に対応する多項式を設定し、前記注目点記憶手段の初期値として原点を設定し、前記第2の多項式記憶手段、並びに前記第1及び第2の補助多項式記憶手段の初期値を設定する設定手段と、
前記第2多項式記憶手段に記憶された各多項式の最高次数の係数が0か否かを判別する判別手段と、
該判別手段により最高次数の係数が0でない多項式があると判別された場合に、当該係数が0でない最高次数を与える2変数の次数の組と、前記注目点記憶手段に記憶された現在の注目点の座標とに基づいて定義点を更新する定義点更新手段と、
該定義点更新手段により更新された定義点に応じて新たな第1及び第2の多項式を生成し、前記第2多項式記憶手段に記憶された第2の多項式系から最高次の係数が0でない全ての多項式を削除するとともに、前記新たな第2の多項式を追加し、前記第1多項式記憶手段に記憶された第1の多項式系から、当該削除された第2の多項式に対応する多項式を削除するとともに、前記新たな第1の多項式を追加する多項式系更新手段と、
前記定義点が変化した場合に、前記第1補助多項式記憶手段に記憶された第1の補助多項式系及び前記第1多項式記憶手段から削除された多項式の中から新たな第1の補助多項式系を選択し、前記第2補助多項式記憶手段に記憶された第2の補助多項式系及び前記第2多項式記憶手段から削除された多項式の中から新たな第1の補助多項式系を選択する補助多項式系更新手段と、
前記判別手段による判別を前記原点より所定の順序における終了点までの各点を注目点として順次実行することで、前記第1多項式記憶手段に最終的に得られる第1の多項式系として、前記最小多項式系を得るように制御する制御手段とを有することを特徴とする多項式系導出装置。 - 前記多項式更新手段は、前記第1の多項式系の更新動作と前記第2の多項式系の更新動作とを独立の回路により並列に実行することを特徴とする請求項1に記載の多項式系導出装置。
- 前記多項式更新手段は、前記第1の多項式系の更新動作と前記第2の多項式系の更新動作とを共通の回路により実行すること特徴とする請求項1に記載の多項式系導出装置。
- 前記多項式更新手段が、bn (i)、bm (j)を前記第2多項式系に属する多項式とし、di、djを、それぞれ当該多項式bn(i),bm(j)の最高または最低次の係数として、演算
bq (k)=zrs・bn (i)−(di/dj)・zrt・bm (j)を行うことを特徴とする請求項1に記載の多項式系導出装置。 - 前記多項式更新手段が、bn (i)、bm (j)を前記第2多項式系に属する多項式とし、di、djを、それぞれ当該多項式bn (i),bm (j)の最高または最低次の係数として、演算
bq (k)=dj・zrs・bn (i)−di・zrt・bm (j)を行うことを特徴とする請求項1に記載の多項式系導出装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP00933493A JP3740175B2 (ja) | 1993-01-22 | 1993-01-22 | 多項式系導出装置 |
EP94300473A EP0611054B1 (en) | 1993-01-22 | 1994-01-21 | Polynomial-set deriving apparatus and method |
DE69409418T DE69409418T2 (de) | 1993-01-22 | 1994-01-21 | Vorrichtung und Verfahren zur Ableitung von Polynomialmengen |
US08/183,969 US5535140A (en) | 1993-01-22 | 1994-01-21 | Polynominal-set deriving apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP00933493A JP3740175B2 (ja) | 1993-01-22 | 1993-01-22 | 多項式系導出装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06223096A JPH06223096A (ja) | 1994-08-12 |
JP3740175B2 true JP3740175B2 (ja) | 2006-02-01 |
Family
ID=11717576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP00933493A Expired - Fee Related JP3740175B2 (ja) | 1993-01-22 | 1993-01-22 | 多項式系導出装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3740175B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1526647B1 (en) | 2002-07-02 | 2008-10-01 | Mitsubishi Electric Corporation | Generation of a check matrix for irregular low-density parity-check (LDPC) codes |
-
1993
- 1993-01-22 JP JP00933493A patent/JP3740175B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH06223096A (ja) | 1994-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Shokrollahi et al. | List decoding of algebraic-geometric codes | |
EP0611054B1 (en) | Polynomial-set deriving apparatus and method | |
JP3970337B2 (ja) | 大規模データ・ブロックのためのハードウェア最適化リード・ソロモン・デコーダ | |
US8335808B2 (en) | Method and apparatus for processing multiple decomposed data for calculating key equation polynomials in decoding error correction code | |
CN101277119B (zh) | 里德所罗门码解码器硬件复用方法及其低硬件复杂度解码装置 | |
JPH07202715A (ja) | 時間定義域代数エンコーダ/デコーダ | |
KR100260415B1 (ko) | 고속시리얼에러위치다항식계산회로 | |
US8261176B2 (en) | Polynomial division | |
Koetter et al. | Efficient interpolation and factorization in algebraic soft-decision decoding of Reed-Solomon codes | |
Ahmed et al. | VLSI architectures for soft-decision decoding of Reed-Solomon codes | |
US6487691B1 (en) | Reed-solomon decoder | |
CN1653699B (zh) | 软判定解码里德-索洛蒙码的方法 | |
US5878058A (en) | Apparatus for determining an error locator polynomial for use in a reed-solomon decoder | |
KR101094574B1 (ko) | Bch 복호기를 위한 고속 소면적 파이프라인 폴딩 방식 벨르캄프-메시 알고리즘 연산 회로 및 그 방법 | |
JP3343857B2 (ja) | 復号装置、演算装置およびこれらの方法 | |
JP3740175B2 (ja) | 多項式系導出装置 | |
TWI784406B (zh) | 採用迭代計算的模數運算電路 | |
JP3614978B2 (ja) | ガロア体の除算方法および除算装置 | |
JP3233502B2 (ja) | 復号化装置 | |
US20100031126A1 (en) | System and method for using the universal multipole for the implementation of a configurable binary bose-chaudhuri-hocquenghem (BCH) encoder with variable number of errors | |
Ahmed et al. | Systolic interpolation architectures for soft-decoding Reed-Solomon codes | |
CN101741397A (zh) | Rs译码装置及其使用的关键多项式求解装置 | |
US20030009723A1 (en) | Simplified reed-solomon decoding circuit and method of decoding reed-solomon codes | |
JP2940386B2 (ja) | 誤り訂正復号装置 | |
Zhang et al. | Low-complexity interpolation architecture for soft-decision Reed-Solomon decoding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040113 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040315 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050208 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050411 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20051101 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051107 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081111 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091111 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101111 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101111 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111111 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121111 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |