JPS6135731B2 - - Google Patents
Info
- Publication number
- JPS6135731B2 JPS6135731B2 JP56113617A JP11361781A JPS6135731B2 JP S6135731 B2 JPS6135731 B2 JP S6135731B2 JP 56113617 A JP56113617 A JP 56113617A JP 11361781 A JP11361781 A JP 11361781A JP S6135731 B2 JPS6135731 B2 JP S6135731B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- bit string
- syndrome
- bit
- error
- 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
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
Landscapes
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Detection And Correction Of Errors (AREA)
- Error Detection And Correction (AREA)
Description
【発明の詳細な説明】
本発明はデイジタルデータの伝送や蓄積時に生
じるビツト誤りを自動的に検出し訂正する方式に
関する。
じるビツト誤りを自動的に検出し訂正する方式に
関する。
データ伝送や蓄積時に生じる誤りを自動的に訂
正する方法として誤り訂正符号化技術が用いられ
ている。これに使われる誤り訂正符号には各種あ
るが、その中でBCH(ボーゼ・チヨドーリ・ホ
ツキンジエム)符号は符号長や誤り訂正能力の選
択の自由度が大きく、また付加された検査ビツト
数のかわりに誤り訂正能力が優れた符号として知
られている。本発明はBCH符号の内、一符号語
に3つ以下のビツト誤りがある場合にその誤りを
訂正できる符号、すなわち3誤り訂正BCH符号
を用いて符号化された信号中に生じたビツト誤り
を訂正する装置すなわち復号装置に関する。
正する方法として誤り訂正符号化技術が用いられ
ている。これに使われる誤り訂正符号には各種あ
るが、その中でBCH(ボーゼ・チヨドーリ・ホ
ツキンジエム)符号は符号長や誤り訂正能力の選
択の自由度が大きく、また付加された検査ビツト
数のかわりに誤り訂正能力が優れた符号として知
られている。本発明はBCH符号の内、一符号語
に3つ以下のビツト誤りがある場合にその誤りを
訂正できる符号、すなわち3誤り訂正BCH符号
を用いて符号化された信号中に生じたビツト誤り
を訂正する装置すなわち復号装置に関する。
ここで3誤り訂正BCH符号について簡単に説
明しておく。
明しておく。
3誤り訂正BCH符号においては符号語Cはk
個の情報ビツト(a1,a2,…,ak)とこれらの
情報ビツトから計算されたq個の検査ビツト(a
k+1,ak+2,…,ak+q)より構成される。つまり
符号誤〓は 〓=(a1,a2,…,ak,ak+1,…,ak+q) となる。
個の情報ビツト(a1,a2,…,ak)とこれらの
情報ビツトから計算されたq個の検査ビツト(a
k+1,ak+2,…,ak+q)より構成される。つまり
符号誤〓は 〓=(a1,a2,…,ak,ak+1,…,ak+q) となる。
但しk、はmを4以上の整数として
k=2m−3m−1
q=3m
となるよう決定される。以後符号長k=q=2m
−1をnで表わす。すなわち符号語〓は 〓=(a1,a2,……,ao-1,ao) となる。検査ビツトは符号語が H〓T=0 を満足するよう決定される。ここで〓Tは〓の転
置ベクトルである。Hはパリテイ検査行列でGF
(2m)の原始元αを用いて と表わされる。Hの各要素αw(w=0,1,
…,n−1)はm要素の列ベクトルで表わされ
る。
−1をnで表わす。すなわち符号語〓は 〓=(a1,a2,……,ao-1,ao) となる。検査ビツトは符号語が H〓T=0 を満足するよう決定される。ここで〓Tは〓の転
置ベクトルである。Hはパリテイ検査行列でGF
(2m)の原始元αを用いて と表わされる。Hの各要素αw(w=0,1,
…,n−1)はm要素の列ベクトルで表わされ
る。
ここで〓に誤りが生じて〓′となつたとする。
〓′=(a′1,a′2,……,a′o-1,a′o)
〓′は〓と誤りベクトルeにより次のように表わ
される。
される。
〓′=〓+e
但し〓は〓′の誤りビツトの位置では1、他の位
置では0である要素からなるベクトルである。
置では0である要素からなるベクトルである。
〓=(e1,e2,……eo-1,eo)
〓′が与えられた時に、もとの〓を再現するの
が復号であり、本発明はそれを実現する新しい装
置を与えるものである。
が復号であり、本発明はそれを実現する新しい装
置を与えるものである。
従来の3誤り訂正符号の復号は、通常、以下に
述べる方法で行なわれている。
述べる方法で行なわれている。
まず次式で定義される第1、第2および第3シ
ンドロームすなわちA1,A2、およびA3を計算す
る。
ンドロームすなわちA1,A2、およびA3を計算す
る。
シンドロームA1,A2およびA3は例えばF.J.
MacWilliams,N.J.A.Sloane著“The Theory of
Error―Correcting Codes,Part ”(North
Holland Publishing Company)pp.270―272に
あるようにして生成される。つまり第1シンドロ
ームA1はαの最小多項式に対応するフイードバ
ツクシフトレジスタC′のビツトをa′1からa′oまで
入力し、a′oが入力された時点でシフトレジスタ
中に完成する。第2シンドロームA2はα3の最
小多項式に対応するフイードバツクシフトレジス
タにC′を入力し、最後のビツトが入力された時
点でシフトレジスタ中にできあがつたビツト列を
排他的論理和回路を用いて変換して得られる。第
3シンドロームA3も、同様に、α5の最小多項
式に対応するフイードバツクシフトレジスタ
C′を入力し、最後のビツトが入力された時点で
シフトレジスタ中にできあがつたビツト列を排他
的論理和回路を用いて変換して得られる。次にこ
のA1,A2およびA3を用いて誤り位置多項式σ
(Z)を求める。
MacWilliams,N.J.A.Sloane著“The Theory of
Error―Correcting Codes,Part ”(North
Holland Publishing Company)pp.270―272に
あるようにして生成される。つまり第1シンドロ
ームA1はαの最小多項式に対応するフイードバ
ツクシフトレジスタC′のビツトをa′1からa′oまで
入力し、a′oが入力された時点でシフトレジスタ
中に完成する。第2シンドロームA2はα3の最
小多項式に対応するフイードバツクシフトレジス
タにC′を入力し、最後のビツトが入力された時
点でシフトレジスタ中にできあがつたビツト列を
排他的論理和回路を用いて変換して得られる。第
3シンドロームA3も、同様に、α5の最小多項
式に対応するフイードバツクシフトレジスタ
C′を入力し、最後のビツトが入力された時点で
シフトレジスタ中にできあがつたビツト列を排他
的論理和回路を用いて変換して得られる。次にこ
のA1,A2およびA3を用いて誤り位置多項式σ
(Z)を求める。
σ(Z)=1+A1Z
(A1 3+A2=0の場合)
このσ(Z)にαt(t=1,2,……,n)を
代入し、σ(Z)=0となるtの値が誤りの位置
を示すとしてその位置のビツトを反転して誤り訂
正を行う。以上が従来の復号装置で行なわれてい
る復号動作である。しかしながらこの方法ではσ
(Z)の各系数を求めるのに比較的複雑な装置が
必要であるし、時間がかかる。
代入し、σ(Z)=0となるtの値が誤りの位置
を示すとしてその位置のビツトを反転して誤り訂
正を行う。以上が従来の復号装置で行なわれてい
る復号動作である。しかしながらこの方法ではσ
(Z)の各系数を求めるのに比較的複雑な装置が
必要であるし、時間がかかる。
従つて本発明は比較的簡単な装置を用いて短時
間に復号することの出来る3誤り訂正符号復号方
式を提供することを目的とする。
間に復号することの出来る3誤り訂正符号復号方
式を提供することを目的とする。
次に本発明の復号装置の行う復号動作を説明す
る。
る。
本発明の復号装置においても第1、第2および
第3シンドロームA1,A2,A3をまず計算するこ
とは従来の方法と同じである。次に第1シンドロ
ームA1と第2シンドロームA2を用いてA1 3+A2を
計算する。A1 3はROMテーブル等を用いた3乗器
にA1を入力して計算できる。A1 3とA2との加算は
排他的論理和回路を用いて容易に実現できる。さ
らにαn-t,α3(n-t)およびα5(n-t)をt=1から
nまで順次発生する。αn-tはビツト列1で、α3
(n−t)はビツト例2でα5(n-t)はビツト列3で表わ
す。αn-tの発生は例えば宮川他著符号理論(昭
晃堂)p.119にあるようにαの最小多項式に対応
するフイードバツクシフトレジスタにαn=1な
る初期値を設定してt回シフトすればαn-tが得
られる。α3(n-t)はαn-tを例えばROMテーブル
を用いた3乗器に入力して得られる。α5(n-t)も
同様にαn-tを5乗器に入力して得られる。又は
宮川他著符号理論(昭晃堂)p.120にあるような
1回のシフトでα-3あるいはα-5を乗ずるシフト
レジスタ回路にα3n=α5n=1なる初期値を設定
してt回シフトすれば得られる。各tの値に対し
て第1シンドロームA1、第2シンドロームA2、
第3シンドロームA3、αn-t,α3(n-t),およびα
5(n-t)を用いて次式で定義されるS1,S2およびS3
を計算する。
第3シンドロームA1,A2,A3をまず計算するこ
とは従来の方法と同じである。次に第1シンドロ
ームA1と第2シンドロームA2を用いてA1 3+A2を
計算する。A1 3はROMテーブル等を用いた3乗器
にA1を入力して計算できる。A1 3とA2との加算は
排他的論理和回路を用いて容易に実現できる。さ
らにαn-t,α3(n-t)およびα5(n-t)をt=1から
nまで順次発生する。αn-tはビツト列1で、α3
(n−t)はビツト例2でα5(n-t)はビツト列3で表わ
す。αn-tの発生は例えば宮川他著符号理論(昭
晃堂)p.119にあるようにαの最小多項式に対応
するフイードバツクシフトレジスタにαn=1な
る初期値を設定してt回シフトすればαn-tが得
られる。α3(n-t)はαn-tを例えばROMテーブル
を用いた3乗器に入力して得られる。α5(n-t)も
同様にαn-tを5乗器に入力して得られる。又は
宮川他著符号理論(昭晃堂)p.120にあるような
1回のシフトでα-3あるいはα-5を乗ずるシフト
レジスタ回路にα3n=α5n=1なる初期値を設定
してt回シフトすれば得られる。各tの値に対し
て第1シンドロームA1、第2シンドロームA2、
第3シンドロームA3、αn-t,α3(n-t),およびα
5(n-t)を用いて次式で定義されるS1,S2およびS3
を計算する。
S1=A1+αn-t
S2=A2+α3(n-t)
S3=A3+α5(n-t)
S1はビツト列4で、S2はビツト列5で、S3はビツ
ト列6で表わされる。A1とαn-tの加算、A2とα3
(n−t)の加算、A3とα5(n-t)の加算は排他的論理和
回路により容易に実現される。次に次式で定義さ
れるEL(t)を計算する。
ト列6で表わされる。A1とαn-tの加算、A2とα3
(n−t)の加算、A3とα5(n-t)の加算は排他的論理和
回路により容易に実現される。次に次式で定義さ
れるEL(t)を計算する。
EL(t)=S1 6+S2 2+S1 3S2+S1+S3
EL(t)はROMテーブルで構成された6乗回路
でS1からS1 6を計算し、ROMテーブルで構成され
た2乗回路でS2からS2 2を計算し、ROMテーブル
で構成された3乗および積回路でS1とS3から
S1 3S2を計算し、同じくROMテーブルで構成され
た積回路でS1とS3からS1S3を計算し、S1 6とS2 2と
S1 3S2とS1S3を排他的論理和回路を用いて加算す
れば得られる。前記A1 3+A2が0であるならば、
各tの値に対してS1の値を調べS1=0となるtに
おいてC′中のt番目のビツトa′tにおいてC′中の
t番目のビツトa′tが誤りであるとしてa′tを反転
して誤りの訂正を行ない、A1 3+A2が0でないな
らば、各tの値に対して前記EL(t)の値を調
べEL(t)=0となるtにおいてC′中のt番目の
ビツトa′tが誤りであるとしてa′tを反転して誤り
の訂正を行なうのが本発明の復号装置が行なう復
号動作である。この復号動作では比較的簡単な動
作が符号語の各ビツトに対して繰り返されるが、
従来の復号方法における誤り位置多項式を求める
ような複雑な動作がないので装置が簡単になる。
でS1からS1 6を計算し、ROMテーブルで構成され
た2乗回路でS2からS2 2を計算し、ROMテーブル
で構成された3乗および積回路でS1とS3から
S1 3S2を計算し、同じくROMテーブルで構成され
た積回路でS1とS3からS1S3を計算し、S1 6とS2 2と
S1 3S2とS1S3を排他的論理和回路を用いて加算す
れば得られる。前記A1 3+A2が0であるならば、
各tの値に対してS1の値を調べS1=0となるtに
おいてC′中のt番目のビツトa′tにおいてC′中の
t番目のビツトa′tが誤りであるとしてa′tを反転
して誤りの訂正を行ない、A1 3+A2が0でないな
らば、各tの値に対して前記EL(t)の値を調
べEL(t)=0となるtにおいてC′中のt番目の
ビツトa′tが誤りであるとしてa′tを反転して誤り
の訂正を行なうのが本発明の復号装置が行なう復
号動作である。この復号動作では比較的簡単な動
作が符号語の各ビツトに対して繰り返されるが、
従来の復号方法における誤り位置多項式を求める
ような複雑な動作がないので装置が簡単になる。
本動作により誤りのビツト数が3以下の時は必
ず正しい誤り訂正が行なわれることを以下に示
す。
ず正しい誤り訂正が行なわれることを以下に示
す。
まず誤りが1ビツトもないとしよう。この時は
A1=A2=A3=0
従つて、
A1 3+A2=0
従つてS1の値に従つて誤り訂正が行なわれる。と
ころで、 S1=A1+αn-t=αn-t はどんなtの値に対しても0にならない。従つて
C′の中のどんなビツトに対しても反転はなされ
ない。
ころで、 S1=A1+αn-t=αn-t はどんなtの値に対しても0にならない。従つて
C′の中のどんなビツトに対しても反転はなされ
ない。
次にi番目のビツトa′iだけが誤りであるとし
よう。この時 A1=αn-i A2=α3(n-i) 従つて A1 3+A2=0 従つてS1の値に従つて誤り訂正が行なわれる。
よう。この時 A1=αn-i A2=α3(n-i) 従つて A1 3+A2=0 従つてS1の値に従つて誤り訂正が行なわれる。
この時
S1=A1+αn-t=αn-iαn-t
S1はt=iの時だけ0となり、t≠iでは0とな
らない。従つて正しい誤り訂正が行なわれる。
らない。従つて正しい誤り訂正が行なわれる。
次にi番目とj番目のビツトつまりa′iとa′jが
誤りであるとしよう。この時 A1=αn-i+αn-j A2=α3(n-i)+α3(n-j) A3=α5(n-i)+α5(n-j) A1 3+A2=α(n-i)・αn-j(αn-i+αn-j) i≠jであるからA1 3+A2≠0 従つてEL(t)の値に従つて誤り訂正が行なわ
れる。この時、 S1=A1+αn-t=αn-iαn-j+αn-t S2=A2+α3(n-t) =α3(n-i)+α3(n-j)+α3(n-t) S3=A3+α5(n-t) =α5(n-i)+α5(n-j)+α5(n-t) EL(t)=S1 6+S2 2+S1 3S2+S1S3 =αn-iαn-jαn-t(αn-i+αn-j) (αn-t+αn-i)(αn-t+αn-j) EL(t)はtがi又はjと一致した時だけ0と
なり、tが他の値をとつた時は0とならない。従
つて正しい誤り訂正が行なわれる。
誤りであるとしよう。この時 A1=αn-i+αn-j A2=α3(n-i)+α3(n-j) A3=α5(n-i)+α5(n-j) A1 3+A2=α(n-i)・αn-j(αn-i+αn-j) i≠jであるからA1 3+A2≠0 従つてEL(t)の値に従つて誤り訂正が行なわ
れる。この時、 S1=A1+αn-t=αn-iαn-j+αn-t S2=A2+α3(n-t) =α3(n-i)+α3(n-j)+α3(n-t) S3=A3+α5(n-t) =α5(n-i)+α5(n-j)+α5(n-t) EL(t)=S1 6+S2 2+S1 3S2+S1S3 =αn-iαn-jαn-t(αn-i+αn-j) (αn-t+αn-i)(αn-t+αn-j) EL(t)はtがi又はjと一致した時だけ0と
なり、tが他の値をとつた時は0とならない。従
つて正しい誤り訂正が行なわれる。
次にi番目とj番目とl番目のビツト、すなわ
ちa′iとa′jとa′lが誤りであるとしよう。この時 A1=αn-i+αn-j+αn-l A2=α3(n-i)+α3(n-j)+α3(n-l) A3=α5(n-i)+α5(n-j)+α5(n-l) A1 3+A2=(αn-i+αn-j) (αn-j+αn-l)(αn-l+αn-i) i≠j、j≠l、l≠iであるからA1 3+A2≠0
従つてEL(t)の値に従つて誤り訂正が行なわ
れる。
ちa′iとa′jとa′lが誤りであるとしよう。この時 A1=αn-i+αn-j+αn-l A2=α3(n-i)+α3(n-j)+α3(n-l) A3=α5(n-i)+α5(n-j)+α5(n-l) A1 3+A2=(αn-i+αn-j) (αn-j+αn-l)(αn-l+αn-i) i≠j、j≠l、l≠iであるからA1 3+A2≠0
従つてEL(t)の値に従つて誤り訂正が行なわ
れる。
この時
S1=A1+αn-t=αn-i
+αn-j+αn-l+αn-t
S2=A2+α3(n-t)=α3(n-i)
+α3(n-j)+α3(n-l)+α3(n-t)
S3=A3+α5(n-t)=α5(n-i)
+α5(n-j)+α5(n-l)+α5(n-t)
EL(t)=S1 6+S2 2+S1 3S2+S1S3
=(αn-i+αn-j)(αn-j+αn-l)
(αn-l+αn-i)(αn-t+αn-i)
(αn-t+αn-j)(αn-t+αn-l)
EL(t)はtがi又はj又はlと一致した時だ
け0となり、tが他の値をとつた時は0とならな
い。従つて正しい誤り訂正が行なわれる。以上よ
りわかるように誤りビツトの数が3以下であれば
必ず正しい復号が行なわれる。
け0となり、tが他の値をとつた時は0とならな
い。従つて正しい誤り訂正が行なわれる。以上よ
りわかるように誤りビツトの数が3以下であれば
必ず正しい復号が行なわれる。
次に本発明による復号装置を実施例の図面を参
照しながら説明する。これまで述べたように本発
明の復号装置では、その復号手順においてガロア
体の元を取り扱う。GF(2m)の任意の元はαを
原始元として、1,α,α2,αm-2,αm-1の線
形結合であらわすことができることはよく知られ
ている。本実施例においてはガロア体の元は上記
線形結合の系数列であるmビツトであらわすもの
とする。もちろん全復号手順でガロア体の元のビ
ツト列によるあらわし方を統一する必要はなく、
むしろ部分的に異なつたあらわし方を用いること
で装置が若干簡単になることもあり得るが、ここ
では説明の簡単のため上記のあらわし方に統一す
るものとする。
照しながら説明する。これまで述べたように本発
明の復号装置では、その復号手順においてガロア
体の元を取り扱う。GF(2m)の任意の元はαを
原始元として、1,α,α2,αm-2,αm-1の線
形結合であらわすことができることはよく知られ
ている。本実施例においてはガロア体の元は上記
線形結合の系数列であるmビツトであらわすもの
とする。もちろん全復号手順でガロア体の元のビ
ツト列によるあらわし方を統一する必要はなく、
むしろ部分的に異なつたあらわし方を用いること
で装置が若干簡単になることもあり得るが、ここ
では説明の簡単のため上記のあらわし方に統一す
るものとする。
図1は本発明による実施例の構成を示すブロツ
ク図である。図1において入力データαはデータ
バツフア101と、第1シンドローム生成回路1
02、第2シンドローム生成回路104、及び第
3シンドロームの生成回路106に加えられる。
データバツフア101は、1符号語長nビツト
に、シンドローム生成回路で生成されたシンドロ
ームをシンドロームバツフアに移すのに必要な時
間信号を保持するための1ビツトを加えた、合計
n+1ビツトのシフトレジスタより構成される。
第1シンドローム生成回路102は、GF(2n)
の原始元αの最小多項式に対応するm段のフイー
ドバツクシフトレジスタからなる。第2シンドロ
ーム生成回路104はα3の最小多項式に対応す
るm段のフイードバツクシフトレジスタと排他的
論理和回路より構成されるビツト列変換回路から
なる。第3シンドローム生成回路106はα5の
最小多項式に対応するフイードバツクシフトレジ
スタと排他的論理和回路より構成されるビツト列
変換回路からなる。符号語の最後のビツトがデー
タバツフア101に入力し終つた時、第1、第
2、および第3シンドロームは各シンドローム生
成回路により生成されている。生成された第1、
第2、および第3シンドロームは次の符号語がシ
ンドローム生成回路に入力されると破壊されるの
で、その前に各々第1、第2、および第3シンド
ロームバツフアに移される。第1シンドローム
(A1)と第2シンドローム(A2)は訂正条件判別回
路108に入力され、訂正条件判別回路108は
A1 3+A2が0か否かの判別を行つて、A1 3+A2が
0の時は0を、そうでない時は1を出力して選択
回路117に与える。訂正条件判別回路はROM
テーブルで構成された3乗回路と排他的論理和で
構成された加算回路と加算結果が全ビツト0かど
うかを判別する論理和回路よりなる。データバツ
フア101に格納された符号語は先頭のビツトか
ら1ビツトづつ出力され、誤り訂正回路118に
入力される。第t番目(t=1,2,…n)のビ
ツトがデータバツフア101より出力され誤り訂
正回路118に入力される時、αのベキ発生回路
110はαn-tをあらわすmビツト列であるビツ
ト列1を発生し、α3のベキ発生回路112はα
3(n-t)をあらわすmビツトのビツト列であるビツ
ト列2を発生し、又α5のベキ発生回路114は
α5(n-t)をあらわすビツト列3を発生する。αの
ベキ発生回路110はαの最小多項式に対応する
フイードバツクシフトレジスタからなる。α3の
ベキ発生回路112はα3の最小多項式に対応す
るフイードバツクシフトレジスタからなる。α5
のベキ発生回路114はα5の最小多項式に対応
するフイードバツクシフトレジスタからなる。ビ
ツト列1と第1シンドロームは排他的論理和回路
109により対応するビツト毎に排他的論理和を
とられることで加算され、S1=A1+αn-tをあら
わすビツト列4が生成される。同様にビツト列2
と第2シンドロームは排他的論理和回路111を
用いて加算されS2=A2+α3(n-t)をあらわすビツ
ト列5が生成される。さらにビツト列3と第3シ
ンドロームは排他的論理和回路113を用いて加
算されて、S3=A3+α5(n-t)をあらわすビツト列
6が生成される。ビツト列4は第1誤り検出回路
115と第2誤り検出回路116に供給され、ビ
ツト列5とビツト列6は第2誤り検出回路に供給
される。第1誤り検出回路115はS1が0の時は
1を、そうでない時は0を出力して選択回路11
7に与えるものであり、論理和回路と否定回路で
構成される。第2誤り検出回路116はS1をあら
わすビツト列4、S2をあらわすビツト列5、およ
びS3をあらわすビツト列6を入力してS1 6+S2 2+
S1 3S2+S1S3が0の時は1を、そうでない時は0
を出力して選択回路117に与えられるものであ
る。
ク図である。図1において入力データαはデータ
バツフア101と、第1シンドローム生成回路1
02、第2シンドローム生成回路104、及び第
3シンドロームの生成回路106に加えられる。
データバツフア101は、1符号語長nビツト
に、シンドローム生成回路で生成されたシンドロ
ームをシンドロームバツフアに移すのに必要な時
間信号を保持するための1ビツトを加えた、合計
n+1ビツトのシフトレジスタより構成される。
第1シンドローム生成回路102は、GF(2n)
の原始元αの最小多項式に対応するm段のフイー
ドバツクシフトレジスタからなる。第2シンドロ
ーム生成回路104はα3の最小多項式に対応す
るm段のフイードバツクシフトレジスタと排他的
論理和回路より構成されるビツト列変換回路から
なる。第3シンドローム生成回路106はα5の
最小多項式に対応するフイードバツクシフトレジ
スタと排他的論理和回路より構成されるビツト列
変換回路からなる。符号語の最後のビツトがデー
タバツフア101に入力し終つた時、第1、第
2、および第3シンドロームは各シンドローム生
成回路により生成されている。生成された第1、
第2、および第3シンドロームは次の符号語がシ
ンドローム生成回路に入力されると破壊されるの
で、その前に各々第1、第2、および第3シンド
ロームバツフアに移される。第1シンドローム
(A1)と第2シンドローム(A2)は訂正条件判別回
路108に入力され、訂正条件判別回路108は
A1 3+A2が0か否かの判別を行つて、A1 3+A2が
0の時は0を、そうでない時は1を出力して選択
回路117に与える。訂正条件判別回路はROM
テーブルで構成された3乗回路と排他的論理和で
構成された加算回路と加算結果が全ビツト0かど
うかを判別する論理和回路よりなる。データバツ
フア101に格納された符号語は先頭のビツトか
ら1ビツトづつ出力され、誤り訂正回路118に
入力される。第t番目(t=1,2,…n)のビ
ツトがデータバツフア101より出力され誤り訂
正回路118に入力される時、αのベキ発生回路
110はαn-tをあらわすmビツト列であるビツ
ト列1を発生し、α3のベキ発生回路112はα
3(n-t)をあらわすmビツトのビツト列であるビツ
ト列2を発生し、又α5のベキ発生回路114は
α5(n-t)をあらわすビツト列3を発生する。αの
ベキ発生回路110はαの最小多項式に対応する
フイードバツクシフトレジスタからなる。α3の
ベキ発生回路112はα3の最小多項式に対応す
るフイードバツクシフトレジスタからなる。α5
のベキ発生回路114はα5の最小多項式に対応
するフイードバツクシフトレジスタからなる。ビ
ツト列1と第1シンドロームは排他的論理和回路
109により対応するビツト毎に排他的論理和を
とられることで加算され、S1=A1+αn-tをあら
わすビツト列4が生成される。同様にビツト列2
と第2シンドロームは排他的論理和回路111を
用いて加算されS2=A2+α3(n-t)をあらわすビツ
ト列5が生成される。さらにビツト列3と第3シ
ンドロームは排他的論理和回路113を用いて加
算されて、S3=A3+α5(n-t)をあらわすビツト列
6が生成される。ビツト列4は第1誤り検出回路
115と第2誤り検出回路116に供給され、ビ
ツト列5とビツト列6は第2誤り検出回路に供給
される。第1誤り検出回路115はS1が0の時は
1を、そうでない時は0を出力して選択回路11
7に与えるものであり、論理和回路と否定回路で
構成される。第2誤り検出回路116はS1をあら
わすビツト列4、S2をあらわすビツト列5、およ
びS3をあらわすビツト列6を入力してS1 6+S2 2+
S1 3S2+S1S3が0の時は1を、そうでない時は0
を出力して選択回路117に与えられるものであ
る。
図2は第2誤り検出回路116の構成例を示
す。図2においてビツト列4は6乗回路201、
3乗及び積回路203、及び積回路204に供給
され、又ビツト列5は2乗回路202と3乗及び
積回路203に供給され、さらにビツト列6は積
回路204に供給される。6乗回路201はS1 6
をあらわすビツト列7を生成する。2乗回路20
2はS2 2をあらわすビツト列8を生成する。3乗
及び積回路203はS1 3S2をあらわすビツト列9
を生成する。積回路204はS1S3をあらわすビツ
ト列10を生成する。6乗回路201、2乗回路2
02、3乗及び積回路203、及び積回路204
は全てROMテーブルで構成される。排他的論理
和回路205はビツト列7とビツト列8の対応す
るビツト毎に排他的論理和をとることで加算を行
いS1 6S2 2をあらわすビツト列11を作成する。排他
的論理和回路206はビツト列9とビツト列10の
対応するビツト毎に排他的論理和をとることで加
算を行いS1 3S2+S1S3をあらわすビツト列12を作
成する。排他的論理和回路207はビツト列11と
ビツト列12の対応するビツト毎に排他的論理和を
とることで加算を行いS1 6+S2 2+S1 3S2+S1S3を
あらわすビツト列13を作成する。論理和回路20
8はビツト列13の全ビツトの論理和をとることで
S1 6+S2 2+S1 3S2+S1S3が0の場合は0を出力
し、他の場合は1を出力する。否定回路209は
論理和回路208の出力の極性を反転し、S1 6+
S2 2+S1 3S2+S1S3が0の場合は1、他の場合は0
を出力する。図1にもどつて選択回路117は論
理積回路、論理和回路及び否定回路より構成さ
れ、訂正条件判別回路108がA1 3+A2=0であ
ると判定して0を出力している場合には第1誤り
検出回路115の出力をその出力とし、訂正条件
判別回路108がA1 3+A2≠0であると判定して
1を出力している場合には第2誤り検出回路11
6の出力をその出力とする。誤り訂正回路118
は排他的論理和回路であり、データバツフア10
1の出力である第t番目のビツトa′tと選択回路
117の出力との排他的論理和をとる。従つて訂
正条件判別回路108の出力が0でかつ第1誤り
検出回路115の出力が1である場合、又は訂正
条件判別回路108の出力が1でかつ第2誤り検
出回路116の出力が1である場合に誤り訂正回
路118の出力はデータバツフア101の出力で
ある第t番目のビツトa′tを反転したものとな
し、そうでない場合は誤り訂正回路118の出力
はデータバツフア101の出力a′tそのままであ
る。誤り訂正回路118の出力uは出力データと
なる。
す。図2においてビツト列4は6乗回路201、
3乗及び積回路203、及び積回路204に供給
され、又ビツト列5は2乗回路202と3乗及び
積回路203に供給され、さらにビツト列6は積
回路204に供給される。6乗回路201はS1 6
をあらわすビツト列7を生成する。2乗回路20
2はS2 2をあらわすビツト列8を生成する。3乗
及び積回路203はS1 3S2をあらわすビツト列9
を生成する。積回路204はS1S3をあらわすビツ
ト列10を生成する。6乗回路201、2乗回路2
02、3乗及び積回路203、及び積回路204
は全てROMテーブルで構成される。排他的論理
和回路205はビツト列7とビツト列8の対応す
るビツト毎に排他的論理和をとることで加算を行
いS1 6S2 2をあらわすビツト列11を作成する。排他
的論理和回路206はビツト列9とビツト列10の
対応するビツト毎に排他的論理和をとることで加
算を行いS1 3S2+S1S3をあらわすビツト列12を作
成する。排他的論理和回路207はビツト列11と
ビツト列12の対応するビツト毎に排他的論理和を
とることで加算を行いS1 6+S2 2+S1 3S2+S1S3を
あらわすビツト列13を作成する。論理和回路20
8はビツト列13の全ビツトの論理和をとることで
S1 6+S2 2+S1 3S2+S1S3が0の場合は0を出力
し、他の場合は1を出力する。否定回路209は
論理和回路208の出力の極性を反転し、S1 6+
S2 2+S1 3S2+S1S3が0の場合は1、他の場合は0
を出力する。図1にもどつて選択回路117は論
理積回路、論理和回路及び否定回路より構成さ
れ、訂正条件判別回路108がA1 3+A2=0であ
ると判定して0を出力している場合には第1誤り
検出回路115の出力をその出力とし、訂正条件
判別回路108がA1 3+A2≠0であると判定して
1を出力している場合には第2誤り検出回路11
6の出力をその出力とする。誤り訂正回路118
は排他的論理和回路であり、データバツフア10
1の出力である第t番目のビツトa′tと選択回路
117の出力との排他的論理和をとる。従つて訂
正条件判別回路108の出力が0でかつ第1誤り
検出回路115の出力が1である場合、又は訂正
条件判別回路108の出力が1でかつ第2誤り検
出回路116の出力が1である場合に誤り訂正回
路118の出力はデータバツフア101の出力で
ある第t番目のビツトa′tを反転したものとな
し、そうでない場合は誤り訂正回路118の出力
はデータバツフア101の出力a′tそのままであ
る。誤り訂正回路118の出力uは出力データと
なる。
図1は本発明による復号装置の実施例の構成図
であり、図2は図1の中の第2誤り検出回路11
6の構成例である。図において101はデータバ
ツフア、102は第1シンドローム生成回路、1
03は第1シンドロームバツフア、104は第2
シンドローム生成回路、105は第2シンドロー
ムバツフア、106は第3シンドローム生成回
路、107は第3シンドロームバツフア、108
は訂正条件判別回路、1009は排他的論理和回
路、110はαのベキ発生回路、111は排他的
論理和回路、112はα3のベキ発生回路、11
3は排他的論理和回路、114はα5のベキ発生
回路、115は第1誤り検出回路、116は第2
誤り検出回路、117は選択回路、118は誤り
訂正回路、201は6乗回路、202は2乗回
路、203は3乗及び積回路、204は積回路、
205は排他的論理和回路、206は排他的論理
和回路、207は排他的論理和回路、208は論
理和回路、209は否定回路、aは入力データ、
bは第1シンドローム、cは第2シンドローム、
dは第3シンドローム、eはビツト列、fはビツ
ト列2、gはビツト列3、hはビツト列4、pは
ビツト列5、rはビツト列6、uはビツト列7、
xはビツト列8、yはビツト列9、aaはビツト列
10、ccはビツト列12、ddはビツト列13、は復
号出力である。
であり、図2は図1の中の第2誤り検出回路11
6の構成例である。図において101はデータバ
ツフア、102は第1シンドローム生成回路、1
03は第1シンドロームバツフア、104は第2
シンドローム生成回路、105は第2シンドロー
ムバツフア、106は第3シンドローム生成回
路、107は第3シンドロームバツフア、108
は訂正条件判別回路、1009は排他的論理和回
路、110はαのベキ発生回路、111は排他的
論理和回路、112はα3のベキ発生回路、11
3は排他的論理和回路、114はα5のベキ発生
回路、115は第1誤り検出回路、116は第2
誤り検出回路、117は選択回路、118は誤り
訂正回路、201は6乗回路、202は2乗回
路、203は3乗及び積回路、204は積回路、
205は排他的論理和回路、206は排他的論理
和回路、207は排他的論理和回路、208は論
理和回路、209は否定回路、aは入力データ、
bは第1シンドローム、cは第2シンドローム、
dは第3シンドローム、eはビツト列、fはビツ
ト列2、gはビツト列3、hはビツト列4、pは
ビツト列5、rはビツト列6、uはビツト列7、
xはビツト列8、yはビツト列9、aaはビツト列
10、ccはビツト列12、ddはビツト列13、は復
号出力である。
Claims (1)
- 【特許請求の範囲】 1 3誤り訂正BCH符号の符号語〓に誤りベク
トル〓が加算されて出来た入力系列〓′=(a′1,
a′2,a′3,…a′o)、(nは附号長n=2m-1、mは
自
然数)を復号装置に入力して誤まり訂正を行なう
復号方式において、前記入力系列〓′から第1シ
ンドロームA1、第2シンドロームA2、及び第3
シンドロームA3; をシフトレジスタを用いて求め、次いでA1 3+A2
=0であれば S1=A1+αn-t (αは2m個の要素よりなるガロア体GF(2m)の
原始元、tは誤りかどうかを判定されるビツトを
指定する番号でnを越えない自然数)を0とする
tの値があればそれに対応する入力ビツトa′tを
誤りとして反転して他の入力ビツトはそのまま出
力し、又 A1 3+A2≠0であれば S1=A1+αn-t S2=A2+α3(n-t) S3=A3+α5(n-t) として EL′(t)=S1 6+S2 2+S1 3S2+S1S3=0 を与える3個までのtの値(t1,t2,t3)に対応す
る入力ビツト(a′t1,a′t2,a′t3)を反転し、他の
入力ビツトはそのまま出力することにより、3個
までの誤りを訂正することを特徴とする3誤り訂
正符号復号方式。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP56113617A JPS5815352A (ja) | 1981-07-22 | 1981-07-22 | 3誤り訂正符号復号方式 |
| GB8204214A GB2093238B (en) | 1981-02-18 | 1982-02-12 | Error correcting system for simultaneous errors in a code |
| US06/349,319 US4468769A (en) | 1981-02-18 | 1982-02-16 | Error correcting system for correcting two or three simultaneous errors in a code |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP56113617A JPS5815352A (ja) | 1981-07-22 | 1981-07-22 | 3誤り訂正符号復号方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5815352A JPS5815352A (ja) | 1983-01-28 |
| JPS6135731B2 true JPS6135731B2 (ja) | 1986-08-14 |
Family
ID=14616746
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP56113617A Granted JPS5815352A (ja) | 1981-02-18 | 1981-07-22 | 3誤り訂正符号復号方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS5815352A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0593739U (ja) * | 1992-05-28 | 1993-12-21 | エヌオーケー株式会社 | ワークの供給装置 |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62137924A (ja) * | 1985-12-12 | 1987-06-20 | Nec Home Electronics Ltd | リ−ドソロモン符号・復号方式の誤り位置決定回路 |
| JP2774513B2 (ja) * | 1988-07-29 | 1998-07-09 | キヤノン株式会社 | 誤り訂正装置 |
| JPH03179923A (ja) * | 1989-12-08 | 1991-08-05 | Matsushita Electric Ind Co Ltd | Bch符号の復号方法および装置 |
-
1981
- 1981-07-22 JP JP56113617A patent/JPS5815352A/ja active Granted
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0593739U (ja) * | 1992-05-28 | 1993-12-21 | エヌオーケー株式会社 | ワークの供給装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5815352A (ja) | 1983-01-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Huffman et al. | Fundamentals of error-correcting codes | |
| JPS638494B2 (ja) | ||
| JPH0389631A (ja) | 符号語の復号方法および装置 | |
| EP0026516A1 (en) | Apparatus for the processing of an information stream with the aid of an error-correcting convolutional code and for the detection of an error still irremediable in this processing | |
| JPS59124011A (ja) | 多数バイトエラ−訂正システム | |
| JPS60144834A (ja) | 有限体の演算回路 | |
| JPH0728227B2 (ja) | Bch符号の復号装置 | |
| JPS6135731B2 (ja) | ||
| JP3248098B2 (ja) | シンドローム計算装置 | |
| JPH09307458A (ja) | エラー訂正向け多項式評価装置 | |
| JPS6150416B2 (ja) | ||
| JP2622957B2 (ja) | Bch符号の符号化及び復号化方法 | |
| JP3099890B2 (ja) | Bch符号の誤り訂正装置 | |
| US10623026B2 (en) | Error correction | |
| JP3223513B2 (ja) | 誤り訂正復号装置 | |
| JP2694794B2 (ja) | 誤り訂正処理方法 | |
| JPH0361210B2 (ja) | ||
| JP2534563B2 (ja) | 許容誤り逐次訂正回路 | |
| KR930011573B1 (ko) | 2중 오류정정이 가능한 bch 코덱(codec) | |
| JPH077919B2 (ja) | 2進情報変換回路 | |
| KR890007345Y1 (ko) | 디지탈 오디오에서의 리드-솔로몬 엔코오더의 코오드 워드 발생회로 | |
| JP2805328B2 (ja) | バースト誤り訂正方法 | |
| JPH01160118A (ja) | Bch復号器 | |
| JPH05268101A (ja) | チェンサーチ回路 | |
| JPS60246125A (ja) | Bch符号の復号器 |