JP2685180B2 - Error correction device - Google Patents

Error correction device

Info

Publication number
JP2685180B2
JP2685180B2 JP62089475A JP8947587A JP2685180B2 JP 2685180 B2 JP2685180 B2 JP 2685180B2 JP 62089475 A JP62089475 A JP 62089475A JP 8947587 A JP8947587 A JP 8947587A JP 2685180 B2 JP2685180 B2 JP 2685180B2
Authority
JP
Japan
Prior art keywords
code
error correction
output
signal
bit
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 - Lifetime
Application number
JP62089475A
Other languages
Japanese (ja)
Other versions
JPS63254829A (en
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP62089475A priority Critical patent/JP2685180B2/en
Publication of JPS63254829A publication Critical patent/JPS63254829A/en
Application granted granted Critical
Publication of JP2685180B2 publication Critical patent/JP2685180B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Error Detection And Correction (AREA)

Description

【発明の詳細な説明】 産業上の利用分野 本発明はPCM(パルス・コード・モジュレーション)
音声の再生などの際に適用できるディジタル符号伝送に
おける誤り訂正装置に関するものである。 従来の技術 PCM音声等のディジタル信号を伝送する際、伝送途中
でのビット誤りを訂正するために送信側で誤り訂正用検
査符号を付加して送信し、受信側で誤り訂正装置を用い
てビット誤りを訂正する方法が用いられる。たとえば、
訂正符号にはBCH符号があり、その誤り訂正装置として
第4図のようなものがよく知られている。 以下、図面を参照しながら、上述した従来の誤り訂正
装置の一例について説明する。 第4図に従来の誤り訂正装置のブロック図を示す。第
4図において、41,42は除算器で、符号生成用の生成多
項式を成すそれぞれ2つの既約多項式に基づいて入力信
号を除算し、それぞれの剰余を出力するものである。4
3,44は符号変換器で、除算器41,42で得られた剰余符号
を入力し、入力信号の誤りのある位置を示す誤り位置符
号を出力するもので、通常ROM(リード・オンリー・メ
モリ)で実現される。45,46は一致検出器、47はカウン
ター、50はOR回路で、カウンタ47によって出力する信号
の位置を計数し、一致検出器45,46で誤り位置符号とカ
ウンタ47の出力とを比較して、出力する信号の位置が誤
りである場合にそれぞれ誤り訂正信号を出力し、OR回路
50によって前述の2つの誤り訂正信号の論理和がとられ
る。48は遅延器で、入力信号を遅延させて、誤り訂正信
号とのタイミングを合せるものである。49はビット反転
器で、遅延器48によって遅延された入力信号を、OR回路
50で得られた誤り訂正信号でビット反転することで誤り
を訂正し、出力するものである。 以上のように構成された誤り訂正装置について、BCH
(15,7)符号を用いて説明する。 BCH(15,7)符号は、7ビットの情報に8ビットの誤
り訂正符号を付加して15ビットで伝送し、誤り訂正装置
によって伝送中に発生した符号中の2個以下の誤りを訂
正できる符号である(参考文献、羽物俊秀「BCH符号に
よる誤り訂正」,放送技術,昭58.11,p.1111)。 たとえば、BCH(15,7)符号の生成多項式は、G=x8
+x7+x6+x4+1、2つの既約多項式は、G1=x4+x+
1、および、G2=x4+x3+x2+x+1であり、生成多項
式Gは2つの既約多項式G1,G2を乗算して得られるもの
である。 第4図において、除算器41,42を、既約多項式G1,G2
に基づいた除算器とすると、それぞれ、第2図および第
3図に示すような構成になる。第2図および第3図にお
いて、21a〜21d,31a〜31dはフリップ・フロップで、信
号を1クロック遅延させるものである。22a〜22b,32a〜
32dは加算回路で、2を法とした加算を行うもので、EX
−OR回路で実現できる。23a〜23d,33a〜33dはそれぞれ
の除算器の出力端子で、24,34はそれぞれ除算器の入力
端子である。 第4図において、符号変換器43,44はROMで構成でき、
除算器41,42が出力する剰余符号を連結したのもをROMの
アドレスとし、すべての2個以下の誤りについて、その
ときの除算器41,42が出力する剰余符号をアドレスとし
て与えたときに、その誤りの位置が出力されるようにRO
Mのデータを設定しておく。 いま、伝送された信号が入力端子51から入力される
と、入力信号は遅延器48によって1符号分(本例では15
ビット分)遅延され、また、同時に入力信号は除算器4
1,42によって除算される。入力信号が1符号分入力され
ると、除算器41,42によって剰余符号が求められ、符号
変換器43,44によって入力された信号中の誤りの位置を
示す符号を得る。次に、除算器41,42を停止させ、カウ
ンタ47を起動してカウンタ47で出力信号の位置をカウン
トしながら、遅延器48から信号を出力する。このとき、
一致検出器45,46によって、符号変換器43,44の出力とカ
ウンタ47の出力とを比較し、符号変換器43,44で示され
る誤りの位置とカウンタで示される出力符号の位置が一
致したときに誤り訂正信号を出力し、OR回路50で論理和
された誤り訂正信号によって、ビット反転器49で出力信
号を反転することで誤りを訂正し、出力端子52から出力
する。 なお、除算器41,42内のフリップ・フロップの初期状
態をすべて零とし、入力信号は生成多項式Gによって生
成された符号とする。 発明が解決しようとする問題点 しかしながら上記のような構成では、符号変換器に用
いられるROMに、2つの剰余符号を連結したビット数の
アドレスを持ち、各アドレスに誤りの位置を表現し得る
だけのビット数の出力を持つROMが必要となり、ROMの容
量が非常に大きく、誤り訂正装置の回路規模が大きなも
のになるという問題を有していた。更には、誤り訂正に
用いる符号長が大きくなると、ROMの容量が符号長に大
して指数関数的に増加して、誤り訂正装置の回路規模が
莫大なものとなる。 たとえば、15ビットの符号長を持つBCH(15,7)符号
の場合、2つの除算器の出力するそれぞれの剰余符号が
4ビットでROMのアドレスは8ビットとなり、1アドレ
スで出力するデータのビット数は符号長15ビット中のビ
ット位置を示すために4ビットで、そのROMが符号変換
器43,44に1個づつ計2個あるため、ROMの容量は合計20
48(=2×4×28)ビット必要であり、63ビットの符号
長を持つBCH(63,51)符号では、ROMの容量が49152ビッ
ト必要である。 そこで、本発明は符号変換器に用いるROMの容量を小
さくし、回路規模の小さな誤り訂正装置を提供するもの
である。 問題を解決するための手段 上記問題点を解決するために本発明の誤り訂正装置
は、2個以下の誤りを訂正する誤り訂正符号発生用の生
成多項式を成す2つの既約多項式のうち原始多項式であ
る第1の既約多項式で除算を行なう第1の除算器と、他
の一方の既約多項式である第2の既約多項式で除算を行
なう第2の除算器と、第1の除算器で得られた第1の剰
余符号を変換して検査符号を出力する符号変換器と、第
2の除算器で得られた第2の剰余符号と検査符号の比較
して誤り訂正信号を出力する一致検出器とを備えたもの
である。 作用 本発明は上記した構成によって、符号変換器にROMを
用いた場合に、ROMのアドレスとして入力する剰余符号
を2つの除算器のうち一方の除算器の出力する剰余符号
のみとし、一致検出器で他方の除算器の出力する剰余符
号と符号変換器の出力とを比較して誤り訂正信号を発生
することによって、符号変換器に用いるROMの容量を小
さくでき、誤り訂正装置の回路規模を小さくすることが
できる。 実施例 以下本発明の一実施例の誤り訂正装置について、図面
を参照しながら説明する。 第1図は本発明の誤り訂正装置の一実施例の構成を示
すブロック図である。第1図において、1は除算器で、
誤り訂正符号発生用の生成多項式を成す2つの既約多項
式のうち原始多項式である第1の既約多項式に基づいた
除算を行ない、剰余符号を出力するものである。2は除
算器で、前記の2つの既約多項式うち第1の既約多項式
でない方の既約多項式である第2の既約多項式に基づい
た除算を行ない、剰余符号を出力するものである。3は
符号変換器で、除算器1で得られた剰余符号を入力して
検査符号を出力するものである。4は一致検出器で、除
算器2で得られた剰余符号と検査符号との一致を検査し
て、誤り訂正信号を出力するものである。5は選択器
で、入力信号と誤り訂正信号のいずれかを選択して、除
算器1および除算器2に入力するように制御されるもの
である。6は遅延器で、入力信号を所定のクロックパル
ス数だけ遅延させ、誤り訂正信号とのタイミングをとる
ものである。7はビット反転器で、遅延器6によって遅
延された入力信号を誤り訂正信号によって反転するもの
で、EX−OR回路で実現できる。 以上のように構成された誤り訂正装置について、前述
されたBCH(15,7)符号を用いて説明する。 ここで、生成多項式Gおよび既約多項式G1,G2は前述
ものと同じで、原始多項式である既約多項式は既約多項
式G1であり、除算器1は既約多項式G1に基づいた除算を
行なうもので、たとえば第2図に示すようなものであ
る。また、除算器2は既約多項式G2に基づいた除算を行
なうもので、たとえば第3図に示すようなものである。 いま、誤り訂正符号の先に伝送される信号から順に番
号を付け、第1ビット〜第15ビットとする。また、伝送
途中で第iビットと第jビットに誤りが発生した誤り訂
正符号が除算器1,2に入力されたとき、除算器1,2から出
力される4ビットの剰余符号をそれぞれR1(i,j),R2
(i,j)とし(ただし、i<j)、第iビットだけに誤
りが発生した場合に、除算器1,2から出力される剰余符
号をそれぞれR1(i,i),R2(i,i)とする。 符号変換器3はROMを用いて構成し、1≦i≦15なる
iについて、R1(1,i)をROMのアドレスとし、そのアド
レスにおいてR2(1,i)が出力されるようにあらかじめR
OMを設定しておく。ここで、除算器1では原始多項式で
ある既約多項式に基づいて除算を行なうため、1≦i≦
15,1≦j≦15,i≠jなるiおよびjについて、R1(1,
i)≠R1(1,j)となることは容易に示される。第1表に
ROMに設定するデータを示す。第1表のアドレスおよび
データの剰余符号R1(1,i),R2(1,i)は左側が最小位
ビットを示し、剰余符号R1(1,i)の左側のビットから
順に第2図の出力端子23a〜23dの出力に、剰余符号R
2(1,i)の左側のビットから順に第3図の出力端子33a
〜33dの出力に対応する。なお、除算器1の出力する剰
余符号が零(0000)である場合、すなわち、誤りが無い
場合の処理は後述する。 ここで、2≦i≦15,i≦j≦15,1≦k≦15なるi,jお
よびkにおいて、除算器1からR1(i,j)なる剰余符号
が出力された場合、R1(i,j)=R1(1,k)なる剰余符号
R1(1,k)が存在し、符号変換器3(ROM)は剰余符号R1
(1,k)の入力で検査符号としてR2(1,k)を出力する。
誤り訂正符号の定義より、R1(i,j)=R1(1,k)とR
2(i,j)=R2(1,k)は同時に成り立たないため、剰余
符号R1(i,j)を符号変換器3で変換して得られた検査
符号R2(1,k)と除算器2で得られた剰余符号R2(i,j)
とは一致せず、一致検出器4からは誤り訂正信号が出力
されない。 以下に、第2ビットおよび第6ビットに誤りが生じた
信号が入力された場合を仮定して本発明の誤り訂正装置
の動作を説明する。 まず、除算器1,2内のシフトレジスタをすべて零に
し、入力端子8からの入力信号が除算器1,2に入力され
るように選択器5を制御する。 次に、入力端子8から入力信号を遅延器6と、選択器
5を経て除算器1,2とに与える。除算器1,2と遅延器6と
を動作させながら順次信号を入力し、信号が1符号分入
力されると、選択器5を制御し、一致検出器4で得られ
る誤り訂正信号が除算器1,2に入力されるようにする。
入力信号は、遅延器1によって1符号分遅延して出力さ
れ、以後順次出力される。 信号が1符号分入力された時点において、除算器1,2
からそれぞれR1(2,6),R2(2,6)なる剰余符号が出力
され、符号変換器3によってR1(2,6)を変換した検査
符号が一致検出器4に与えられる。この場合、符号変換
器3によってR1(2,6)を変換した検査符号とR2(2,6)
は一致しないため誤り訂正信号は出力されず、遅延器6
から出力された第1ビットの信号はビット反転器7を経
てそのまま出力端子9から出力される。 続いて、遅延器6および除算器1,2を1クロック動作
させると、遅延器6から第2ビットの信号が出力され、
除算器1,2からはそれぞれR1(1,5),R2(1,5)なる剰
余符号が出力されることになる。このときの除算器の動
作は、第2図,第3図に示す除算器の回路図から容易に
確かめられる。たとえば、除算器1において前述の動作
の場合、剰余符号R1(2,6)は1110すなわち第2図にお
けるフリップ・フロップ21a〜21dの状態はそれぞれ1,1,
1,0で、一致検出器4からは誤り訂正信号が出力されて
いないため除算器1の入力は0であり、その状態から除
算器を1クロック動作させると第2図におけるフリップ
・フロップ21a〜21dの状態はそれぞれ0,1,1,1となり、
剰余符号は0111すなわちR1(1,5)となることがわか
る。除算器2の動作についても第3図を用いて同様に確
かめられ、また、以下の説明において除算器の詳細な動
作は省略する。この場合、符号変換器3によってR1(1,
5)を変換した検査符号とR2(1,5)は一致し、誤り訂正
信号が出力され、誤り訂正信号によって遅延器6から出
力された第2ビットの信号はビット反転器7で反転さ
れ、誤りが訂正されて出力端子9から出力される。 続いて、遅延器6および除算器1,2を1クロック動作
させると、遅延器6から第3ビットの信号が出力され、
除算器1,2からはそれぞれR1(4,4),R2(4,4)なる剰
余符号が出力されることになる。この除算器1,2の動作
では、先の誤り訂正信号が選択器5を経て除算器1,2に
入力されるため、第2図,第3図における除算器の入力
端子24,34には1が入力されている。この場合、符号変
換器3によってR1(4,4)を変換した検査符号R2(4,4)
は一致しないため誤り訂正信号は出力されず、遅延器6
から出力された第3ビットの信号はビット反転器7を経
てそのまま出力端子9から出力される。同様の動作で、
第4,第5ビットの信号は出力端子9からそのまま出力さ
れる。 続いて、遅延器6および除算器1,2を1クロック動作
させると、遅延器6から第6ビットの信号が出力され、
除算器1,2からはそれぞれR1(1,1),R2(1,1)なる剰
余符号が出力されることになる。この場合、符号変換器
3によってR1(1,1)を変換した検査符号とR2(1,1)は
一致し、誤り訂正信号は出力され、誤り訂正信号によっ
て遅延器6から出力された第6ビットの信号はビット反
転器7で反転され、誤りが訂正されて出力端子9から出
力される。また誤り訂正信号は選択器5を経て除算器1,
2に入力され、剰余符号は零になり、以後、誤りがない
状態を示す。 続いて、遅延器6および除算器1,2を1クロック動作
させると、遅延器6から第7ビットの信号が出力され、
除算器1,2からはそれぞれ零符号が出力されることにな
る。この場合、一致検出器から誤り訂正信号が出力され
なくなり、遅延器6から出力された第7ビットの信号は
ビット反転器7を経てそのまま出力端子9から出力され
る。以後同様の動作で、第8ビット〜第15ビッイの信号
は出力端子9からそのまま出力され、誤り訂正は完了す
る。 また、前述の第3ビット以後の誤り訂正装置の動作か
ら、符号中の1ビットだけが誤った場合も正しく訂正で
きることがわかる。 なお、本実施例において、誤りのない場合または誤り
が途中ですべて訂正された場合、すなわち除算器1,2の
出力する剰余符号が零である場合に誤り訂正信号を出力
しないようにするため、符号変換器3は除算器1の出力
する剰余符号が零であるとき検査符号と合わせて訂正制
御信号を出力し、一致検出器4で誤り訂正信号を出力し
ないようにしたり、除算器1の出力する剰余符号が零で
あるときに符号変換器3から検査符号として零以外の符
号を出力するようにし、誤りのないときに一致検出器で
除算器2の剰余符号(零)と検査符号が一致しないよう
にする。 以上のように誤り訂正装置を本実施例のような構成に
すれば、符号変換器にROMを用いた場合に、ROMのアドレ
スとして入力する剰余符号を1つとし、一致検出器で残
りの剰余符号と符号変換器の出力とを比較して誤り訂正
信号を発生することによって、符号変換器に用いるROM
の容量を小さくでき、誤り訂正装置の回路規模が小さく
することができる。 たとえば、15ビットの符号長をもつBCH(15,7)符号
の場合、剰余符号は4ビットでROMのアドレスは4ビッ
トとなり、1アドレスで出力するデータのビット数は4
ビットであるため、ROMの容量は合計64(=4×24)ビ
ットあればよく、本発明のROM容量を極めて小さくする
ものであり、更には、63ビットの符号長を持つBCH(63,
51)符号では、ROMの容量が384ビットあればよく、誤り
訂正符号の符号長が大きいほど本発明の効果は顕著にな
る。 第2表に、誤り訂正符号の符号長に対し、第4図に示
される従来の誤り訂正装置および第1図に示される本発
明の誤り訂正装置の符号変換器に用いられるROMの容量
を示す。第2表からわかるように本発明の誤り訂正装置
はROMの容量を極めて小さくでき、更に、誤り訂正信号
の符号長が大きくなるほど本発明の効果は顕著になる。 発明の効果 以上のように本発明は、2個以下の誤りを訂正する誤
り訂正符号発生用の生成多項式を成す2つの既約多項式
のうち原始多項式である第1の既約多項式で除算を行な
う第1の除算器と、他の一方の既約多項式である第2の
既約多項式で除算を行なう第2の除算器と、第1の除算
器で得られた剰余符号を変換して検査符号を出力する符
号変換器と、第2の除算器で得られた剰余符号と検査符
号の一致を検査して誤り訂正信号を出力する一致検出器
とを備えることにより、符号変換器に用いるROMの容量
を極めて小さくすることができ、回路規模の極めて小さ
な誤り訂正装置を提供することができる。
DETAILED DESCRIPTION OF THE INVENTION Industrial Field of the Invention The present invention relates to PCM (Pulse Code Modulation).
The present invention relates to an error correction device in digital code transmission that can be applied when reproducing voice. Conventional technology When transmitting digital signals such as PCM voice, the sending side adds an error correction check code to correct bit errors during transmission, and then the receiving side uses an error correction device to send bits. A method of correcting the error is used. For example,
There is a BCH code as the correction code, and an error correction device such as that shown in FIG. 4 is well known. Hereinafter, an example of the above-mentioned conventional error correction device will be described with reference to the drawings. FIG. 4 shows a block diagram of a conventional error correction device. In FIG. 4, reference numerals 41 and 42 denote dividers, which divide an input signal based on two irreducible polynomials that form a generator polynomial for code generation and output the respective remainders. Four
3, 44 is a code converter, which inputs the remainder code obtained by the dividers 41, 42 and outputs an error position code indicating the position of the input signal in error, which is usually a ROM (read only memory) ) Is realized. 45 and 46 are coincidence detectors, 47 is a counter, and 50 is an OR circuit.The position of the signal output by the counter 47 is counted, and the coincidence detectors 45 and 46 compare the error position code with the output of the counter 47. , OR circuit outputs error correction signal when the position of the output signal is incorrect.
The logical sum of the above two error correction signals is taken by 50. A delay device 48 delays the input signal to match the timing with the error correction signal. Reference numeral 49 is a bit inverter, which inputs the input signal delayed by the delay unit 48 into an OR circuit.
The error is corrected and output by bit inversion with the error correction signal obtained in 50. Regarding the error correction device configured as above, BCH
This will be described using the (15,7) code. The BCH (15,7) code adds 8-bit error correction code to 7-bit information and transmits it with 15 bits, and an error correction device can correct two or less errors in the code generated during transmission. Code (Reference, Toshihide Hamono "Error Correction by BCH Code", Broadcasting Technology, 58.11, p.1111). For example, the generator polynomial for BCH (15,7) code is G = x 8
+ X 7 + x 6 + x 4 +1, the two irreducible polynomials are G 1 = x 4 + x +
1 and G 2 = x 4 + x 3 + x 2 + x + 1, and the generator polynomial G is obtained by multiplying two irreducible polynomials G 1 and G 2 . In FIG. 4, the dividers 41, 42 are replaced by irreducible polynomials G 1 , G 2
If the divider is based on, the configurations are as shown in FIGS. 2 and 3, respectively. In FIGS. 2 and 3, 21a to 21d and 31a to 31d are flip-flops, which delay the signal by one clock. 22a ~ 22b, 32a ~
32d is an adder circuit that performs addition modulo 2, EX
It can be realized with an OR circuit. 23a to 23d and 33a to 33d are output terminals of the respective dividers, and 24 and 34 are input terminals of the respective dividers. In FIG. 4, the code converters 43 and 44 can be composed of ROM,
When the remainder code output from the dividers 41 and 42 is concatenated to the ROM address, and for all errors of 2 or less, when the remainder code output from the dividers 41 and 42 at that time is given as the address , RO so that the position of the error is output
Set M data. Now, when the transmitted signal is input from the input terminal 51, the input signal is input by the delay unit 48 for one code (15 in this example).
The input signal is simultaneously divided by a divider 4
It is divided by 1,42. When the input signal is input by one code, the remainder code is obtained by the dividers 41 and 42, and the code indicating the error position in the signal input by the code converters 43 and 44 is obtained. Then, the dividers 41 and 42 are stopped, the counter 47 is activated, and the counter 47 outputs the signal from the delay device 48 while counting the position of the output signal. At this time,
The output of the code converters 43, 44 is compared with the output of the counter 47 by the coincidence detectors 45, 46, and the position of the error indicated by the code converters 43, 44 and the position of the output code indicated by the counter match. An error correction signal is sometimes output, and an error correction signal logically ORed by the OR circuit 50 inverts the output signal by the bit inverter 49 to correct the error and output from the output terminal 52. The initial states of the flip-flops in the dividers 41 and 42 are all zero, and the input signal is the code generated by the generator polynomial G. Problems to be Solved by the Invention However, in the configuration as described above, the ROM used in the code converter has an address of the number of bits in which two residue codes are concatenated, and each address can represent an error position. Therefore, there is a problem that the ROM having the output of the number of bits is required, the capacity of the ROM is very large, and the circuit scale of the error correction device becomes large. Furthermore, when the code length used for error correction increases, the ROM capacity increases exponentially with the code length, and the circuit scale of the error correction device becomes enormous. For example, in the case of a BCH (15,7) code having a code length of 15 bits, each remainder code output from the two dividers is 4 bits, and the ROM address is 8 bits. The number is 4 bits to indicate the bit position in the code length of 15 bits, and since there are two ROMs, one for each of the code converters 43 and 44, the total capacity of the ROM is 20.
It requires 48 (= 2 × 4 × 2 8 ) bits, and the BCH (63,51) code having a code length of 63 bits requires a ROM capacity of 49152 bits. Therefore, the present invention provides an error correction device having a small circuit scale and a small ROM capacity. Means for Solving the Problem In order to solve the above-mentioned problems, the error correction device of the present invention is a primitive polynomial of two irreducible polynomials forming a generator polynomial for generating an error correction code for correcting two or less errors. A first divider that performs division by a first irreducible polynomial that is a second irreducible polynomial, a second divider that performs division by a second irreducible polynomial that is another irreducible polynomial, and a first divider A code converter that converts the first remainder code obtained in step 1 and outputs a check code, and the second remainder code obtained by the second divider and the check code are compared, and an error correction signal is output. And a coincidence detector. According to the present invention, when the ROM is used as the code converter, the remainder code input as the address of the ROM is only the remainder code output from one of the two dividers, and the coincidence detector has the above-described configuration. By comparing the remainder code output from the other divider with the output of the code converter to generate the error correction signal, the capacity of the ROM used for the code converter can be reduced and the circuit scale of the error correction device can be reduced. can do. Embodiment An error correction device according to an embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing the configuration of an embodiment of the error correction device of the present invention. In FIG. 1, 1 is a divider,
This is to perform division based on a first irreducible polynomial, which is a primitive polynomial, out of two irreducible polynomials that form a generator polynomial for generating an error correction code, and output a residue code. Reference numeral 2 denotes a divider, which performs division based on a second irreducible polynomial, which is one of the two irreducible polynomials that is not the first irreducible polynomial, and outputs a remainder code. Reference numeral 3 denotes a code converter which inputs the remainder code obtained by the divider 1 and outputs a check code. Reference numeral 4 is a coincidence detector, which inspects the coincidence between the remainder code and the check code obtained by the divider 2 and outputs an error correction signal. A selector 5 is controlled to select either the input signal or the error correction signal and input it to the divider 1 and the divider 2. Reference numeral 6 denotes a delay device, which delays the input signal by a predetermined number of clock pulses and takes timing with the error correction signal. Reference numeral 7 is a bit inverter, which inverts the input signal delayed by the delay device 6 with an error correction signal, and can be realized by an EX-OR circuit. The error correction device configured as described above will be explained using the BCH (15,7) code described above. Here, the generator polynomial G and the irreducible polynomials G 1 and G 2 are the same as those described above, the irreducible polynomial that is a primitive polynomial is the irreducible polynomial G 1 , and the divider 1 is based on the irreducible polynomial G 1 . The division is performed, for example, as shown in FIG. The divider 2 performs division based on the irreducible polynomial G 2 , and is, for example, as shown in FIG. Now, numbers are sequentially assigned from the signal transmitted prior to the error correction code, and the first bit to the fifteenth bit are set. Further, when an error correction code in which an error occurs in the i-th bit and the j-th bit is input to the dividers 1 and 2 during transmission, the 4-bit remainder code output from the dividers 1 and 2 is R 1 respectively. (I, j), R 2
(I, j) (where i <j), and when an error occurs only in the i-th bit, the remainder codes output from the dividers 1 and 2 are R 1 (i, i) and R 2 (respectively). i, i). The code converter 3 is configured by using a ROM, and for 1 ≦ i ≦ 15, R 1 (1, i) is used as the ROM address, and R 2 (1, i) is output at that address. R in advance
Set OM. Here, since the divider 1 performs division based on an irreducible polynomial that is a primitive polynomial, 1 ≦ i ≦
For i and j such that 15,1 ≦ j ≦ 15, i ≠ j, R 1 (1,
It is easy to show that i) ≠ R 1 (1, j). In Table 1
Indicates the data to be set in ROM. The left side of the address and data remainder codes R 1 (1, i) and R 2 (1, i) in Table 1 indicates the least significant bit, and the leftmost bits of the remainder code R 1 (1, i) are listed in order from the leftmost bit. The remainder code R is output to the output terminals 23a to 23d in FIG.
2 Output terminal 33a in Fig. 3 in order from the bit on the left side of (1, i)
Corresponds to ~ 33d output. The processing when the remainder code output from the divider 1 is zero (0000), that is, when there is no error will be described later. Here, if the remainder code of R 1 (i, j) is output from the divider 1 at i, j and k such that 2 ≦ i ≦ 15, i ≦ j ≦ 15, 1 ≦ k ≦ 15, R 1 Remainder code such that (i, j) = R 1 (1, k)
R 1 (1, k) exists and the code converter 3 (ROM) has a residue code R 1
The input of (1, k) outputs R 2 (1, k) as a check code.
From the definition of the error correction code, R 1 (i, j) = R 1 (1, k) and R
Since 2 (i, j) = R 2 (1, k) does not hold at the same time, the check code R 2 (1, k) obtained by converting the remainder code R 1 (i, j) by the code converter 3 And the remainder code R 2 (i, j) obtained by the divider 2
Therefore, no error correction signal is output from the coincidence detector 4. The operation of the error correction device of the present invention will be described below assuming that a signal having an error in the second bit and the sixth bit is input. First, all the shift registers in the dividers 1 and 2 are set to zero, and the selector 5 is controlled so that the input signal from the input terminal 8 is input to the dividers 1 and 2. Next, the input signal from the input terminal 8 is given to the delay unit 6 and the selectors 1 and 2 via the selector 5. A signal is sequentially input while operating the dividers 1 and 2 and the delay device 6, and when the signal is input by one code, the selector 5 is controlled and the error correction signal obtained by the coincidence detector 4 is a divider. Make sure that it is input to 1,2.
The input signal is output after being delayed by one code by the delay device 1, and then sequentially output. When the signal for one code is input, the dividers 1, 2
Output the residual codes R 1 (2,6) and R 2 (2,6), respectively, and the code converter 3 supplies the check code obtained by converting R 1 (2,6) to the coincidence detector 4. In this case, the check code obtained by converting R 1 (2,6) by the code converter 3 and R 2 (2,6)
, The error correction signal is not output and the delay unit 6
The signal of the first bit output from the output terminal 9 passes through the bit inverter 7 and is output from the output terminal 9 as it is. Then, when the delay unit 6 and the dividers 1 and 2 are operated for one clock, the delay unit 6 outputs the signal of the second bit,
The remainder codes R 1 (1,5) and R 2 (1,5) are output from the dividers 1 and 2, respectively. The operation of the divider at this time can be easily confirmed from the circuit diagrams of the divider shown in FIGS. For example, in the case of the above-described operation in the divider 1, the remainder code R 1 (2,6) is 1110, that is, the states of the flip-flops 21a to 21d in FIG.
At 1,0, since the error correction signal is not output from the coincidence detector 4, the input of the divider 1 is 0. If the divider is operated for one clock from that state, the flip-flops 21a to 21a in FIG. The states of 21d are 0,1,1,1 respectively,
It can be seen that the remainder code is 0111, that is, R 1 (1,5). The operation of the divider 2 can be similarly confirmed using FIG. 3, and the detailed operation of the divider will be omitted in the following description. In this case, R 1 (1,
The check code converted from 5) and R 2 (1,5) match, an error correction signal is output, and the signal of the second bit output from the delay unit 6 by the error correction signal is inverted by the bit inverter 7. , The error is corrected and output from the output terminal 9. Then, when the delay unit 6 and the dividers 1 and 2 are operated for one clock, the delay unit 6 outputs the signal of the third bit,
The remainder codes R 1 (4,4) and R 2 (4,4) are output from the dividers 1 and 2, respectively. In the operation of the dividers 1 and 2, the above error correction signal is input to the dividers 1 and 2 through the selector 5, so that the input terminals 24 and 34 of the dividers in FIGS. 1 has been entered. In this case, the check code R 2 (4,4) obtained by converting R 1 (4,4) by the code converter 3
, The error correction signal is not output and the delay unit 6
The third bit signal output from the output terminal 9 is output from the output terminal 9 as it is through the bit inverter 7. With the same operation,
The signals of the 4th and 5th bits are directly output from the output terminal 9. Then, when the delay unit 6 and the dividers 1 and 2 are operated for one clock, the 6th bit signal is output from the delay unit 6,
The remainder codes R 1 (1,1) and R 2 (1,1) are output from the dividers 1 and 2, respectively. In this case, the check code obtained by converting R 1 (1,1) by the code converter 3 matches R 2 (1,1), the error correction signal is output, and the error correction signal is output from the delay unit 6. The signal of the sixth bit is inverted by the bit inverter 7, the error is corrected, and the signal is output from the output terminal 9. Further, the error correction signal passes through the selector 5 and the divider 1,
It is input to 2, the residual code becomes zero, and shows the error-free state thereafter. Then, when the delay unit 6 and the dividers 1 and 2 are operated for one clock, the delay unit 6 outputs the signal of the 7th bit,
The zero code is output from each of the dividers 1 and 2. In this case, the coincidence detector does not output the error correction signal, and the signal of the 7th bit output from the delay device 6 is output from the output terminal 9 as it is through the bit inverter 7. Thereafter, in the same operation, the signals of the 8th to 15th bits are output from the output terminal 9 as they are, and the error correction is completed. Further, from the operation of the error correction device after the third bit described above, it can be understood that even if only one bit in the code is erroneous, it can be corrected correctly. In this embodiment, in order to prevent the error correction signal from being output when there is no error or when all the errors are corrected in the middle, that is, when the remainder code output from the dividers 1 and 2 is zero, The code converter 3 outputs a correction control signal together with a check code when the remainder code output from the divider 1 is zero, and prevents the coincidence detector 4 from outputting an error correction signal or outputs the output from the divider 1. When the remainder code is zero, the code converter 3 outputs a code other than zero as a check code, and when there is no error, the match detector matches the remainder code (zero) of the divider 2 with the check code. Try not to. If the error correction device is configured as in this embodiment as described above, when a ROM is used as the code converter, one residue code is input as the address of the ROM, and the remaining residue is detected by the coincidence detector. ROM used for the code converter by comparing the code and the output of the code converter to generate an error correction signal
Can be reduced, and the circuit scale of the error correction device can be reduced. For example, in the case of a BCH (15,7) code having a code length of 15 bits, the remainder code is 4 bits, the ROM address is 4 bits, and the number of bits of data output at one address is 4 bits.
Since the capacity of the ROM is 64 bits (= 4 × 2 4 ) in total, the ROM capacity of the present invention is extremely small, and further, the BCH (63,
For the 51) code, the capacity of the ROM only needs to be 384 bits, and the effect of the present invention becomes more remarkable as the code length of the error correction code increases. Table 2 shows the capacity of the ROM used in the code converter of the conventional error correction device shown in FIG. 4 and the error correction device of the present invention shown in FIG. 1 with respect to the code length of the error correction code. . As can be seen from Table 2, the error correction device of the present invention can make the ROM capacity extremely small, and the effect of the present invention becomes more remarkable as the code length of the error correction signal increases. EFFECTS OF THE INVENTION As described above, the present invention performs division by the first irreducible polynomial, which is a primitive polynomial, of two irreducible polynomials that form a generator polynomial for generating an error correction code that corrects two or less errors. The first divider, the second divider that performs division with the other second irreducible polynomial, and the remainder code obtained by the first divider are converted to check code Of the ROM used for the code converter by providing a code converter for outputting the code and a match detector for checking the match between the remainder code and the check code obtained by the second divider and outputting an error correction signal. The capacity can be made extremely small, and an error correction device having an extremely small circuit scale can be provided.

【図面の簡単な説明】 第1図は本発明による誤り訂正装置の構成を示すブロッ
ク図、第2図および第3図は第1図または第4図の誤り
訂正装置に用いられる除算器の構成を示す回路図、第4
図は従来例による誤り訂正装置の構成を示すブロック図
である。 1……原始多項式なる既約多項式に基づいた除算器、2
……残りの既約多項式に基づいた除算器、3……符号変
換器、4……一致検出器、5……選択器、6,48……遅延
器、7,49……ビット反転器、21a,21b,31a〜31d……フリ
ップ・フロップ、22a〜22d,32a〜32d……加算器、41,42
……除算器、43,44……符号変換器、45,46……一致検出
器、47……カウンタ。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing the configuration of an error correction device according to the present invention, and FIGS. 2 and 3 are the configuration of a divider used in the error correction device of FIG. 1 or 4. Circuit diagram showing the fourth
FIG. 1 is a block diagram showing the structure of a conventional error correction device. 1 ... Divider based on irreducible polynomials that are primitive polynomials, 2
…… Divider based on the remaining irreducible polynomials, 3 …… Sign converter, 4 …… Match detector, 5 …… Selector, 6,48 …… Delayer, 7,49 …… Bit inverter, 21a, 21b, 31a to 31d ... flip-flops, 22a to 22d, 32a to 32d ... adders, 41, 42
...... Divider, 43,44 …… Code converter, 45,46 …… Match detector, 47 …… Counter.

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭58−175334(JP,A) 特開 昭61−288524(JP,A) 特開 昭56−44974(JP,A) 特開 昭55−109054(JP,A)   ────────────────────────────────────────────────── ─── Continuation of front page    (56) Reference JP-A-58-175334 (JP, A)                 JP-A-61-288524 (JP, A)                 JP-A-56-44974 (JP, A)                 JP-A-55-109054 (JP, A)

Claims (1)

(57)【特許請求の範囲】 1.2個以下の誤り訂正を行なう誤り訂正装置であっ
て、2個以下の誤りを訂正する誤り訂正符号発生用の生
成多項式を成す2つの既約多項式のうち原始多項式であ
る第1の既約多項式で除算を行なう第1の除算手段と、
前記第1の既約多項式でない方の既約多項式である第2
の既約多項式で除算を行なう第2の除算手段と、前記第
1の除算手段で得られた第1の剰余符号を変換して検査
符号を出力する符号変換手段と、前記第2の除算手段で
得られた第2の剰余符号と前記検査符号とを比較して誤
り訂正信号を出力する一致検出手段と、入力信号と前記
誤り訂正信号のいずれかを選択して前記第1の除算手段
および前記第2の除算手段に入力するように制御される
選択手段と、前記入力信号を所定のクロックパルス数だ
け遅延させる遅延手段と、前記遅延手段の出力信号を前
記誤り訂正信号で反転させるビット反転手段とを備え、
前記符号変換手段が所定のビットないし前記所定のビッ
トと他の1ビットが誤った場合に前記第1の除算手段に
得られる第1の剰余符号を前記第2の除算手段に得られ
る第2の剰余符号に変換し検査符号として出力すること
を特徴とする誤り訂正装置。
(57) [Claims] An error correction device that corrects 1.2 or less errors, and includes two irreducible polynomials that form a generator polynomial for error correction code generation that corrects two or less errors First dividing means for performing division by the first irreducible polynomial, which is a primitive polynomial,
A second irreducible polynomial that is not the first irreducible polynomial
Second division means for performing division with the irreducible polynomial, code conversion means for converting the first residue code obtained by the first division means and outputting a check code, and the second division means. Coincidence detection means for comparing the second remainder code obtained in step 1 and the check code and outputting an error correction signal, and the first division means for selecting either the input signal or the error correction signal, Selection means controlled to be input to the second division means, delay means for delaying the input signal by a predetermined number of clock pulses, and bit inversion for inverting the output signal of the delay means with the error correction signal. And means,
A second residue obtained by the second division means is a first residue code obtained by the first division means when the code conversion means makes an error in a predetermined bit or the predetermined bit and another one bit. An error correction device characterized by converting to a remainder code and outputting as a check code.
JP62089475A 1987-04-10 1987-04-10 Error correction device Expired - Lifetime JP2685180B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62089475A JP2685180B2 (en) 1987-04-10 1987-04-10 Error correction device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62089475A JP2685180B2 (en) 1987-04-10 1987-04-10 Error correction device

Publications (2)

Publication Number Publication Date
JPS63254829A JPS63254829A (en) 1988-10-21
JP2685180B2 true JP2685180B2 (en) 1997-12-03

Family

ID=13971752

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62089475A Expired - Lifetime JP2685180B2 (en) 1987-04-10 1987-04-10 Error correction device

Country Status (1)

Country Link
JP (1) JP2685180B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2553576B2 (en) * 1987-07-24 1996-11-13 松下電器産業株式会社 Error correction device
JP2685186B2 (en) * 1987-07-24 1997-12-03 松下電器産業株式会社 Error correction device
JPH03179923A (en) * 1989-12-08 1991-08-05 Matsushita Electric Ind Co Ltd Method and device for decoding bch code

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58175334A (en) * 1983-03-11 1983-10-14 Hitachi Ltd Code error correcting circuit
JPS61288524A (en) * 1985-06-14 1986-12-18 Sanyo Electric Co Ltd Bch code decoding system

Also Published As

Publication number Publication date
JPS63254829A (en) 1988-10-21

Similar Documents

Publication Publication Date Title
EP0280013A1 (en) Device for verifying proper operation of a checking code generator
JPS6151814B2 (en)
EP0101218A2 (en) Methods of correcting errors in binary data
JPH0728227B2 (en) Decoding device for BCH code
JPH10107650A (en) Error detection circuit and error correction circuit
US4320510A (en) Error data correcting system
EP0431576B1 (en) BCH code decoder and method for decoding a BCH code
JP2685180B2 (en) Error correction device
US5408476A (en) One bit error correction method having actual data reproduction function
JP2553576B2 (en) Error correction device
JPH03219725A (en) Error inspection code generator and transmission error detector
US5031181A (en) Error correction processing apparatus
JP2553575B2 (en) Error correction device
JP2685186B2 (en) Error correction device
KR100281946B1 (en) Syndrome calculation device
JP3361654B2 (en) Data transmission equipment
KR100239798B1 (en) Error correction method in the reproduction of digital signal and apparatus therefor
JP3223513B2 (en) Error correction decoding device
JPH0691471B2 (en) Error correction circuit
JP3099890B2 (en) Error correction device for BCH code
JP3521558B2 (en) Transmission equipment
KR100532373B1 (en) Error correction method in reproduction of digital signal
JP2858538B2 (en) Re-syndrome check method
JP2591164B2 (en) Parity operation circuit
JPS592583Y2 (en) Cyclic code encoding circuit

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070815

Year of fee payment: 10