JPH0691471B2 - 誤り訂正回路 - Google Patents

誤り訂正回路

Info

Publication number
JPH0691471B2
JPH0691471B2 JP60200005A JP20000585A JPH0691471B2 JP H0691471 B2 JPH0691471 B2 JP H0691471B2 JP 60200005 A JP60200005 A JP 60200005A JP 20000585 A JP20000585 A JP 20000585A JP H0691471 B2 JPH0691471 B2 JP H0691471B2
Authority
JP
Japan
Prior art keywords
bit
error
data
syndrome
circuit
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
JP60200005A
Other languages
English (en)
Other versions
JPS6260320A (ja
Inventor
誠 中村
文夫 杉山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP60200005A priority Critical patent/JPH0691471B2/ja
Publication of JPS6260320A publication Critical patent/JPS6260320A/ja
Publication of JPH0691471B2 publication Critical patent/JPH0691471B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Error Detection And Correction (AREA)

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は、誤り訂正能力を有するブロック符号データを
受入れて複号化する際に用いられる誤り訂正回路に関す
る。
〔発明の技術的背景とその問題点〕
近年、ディジタル通信技術の発展に伴い、誤り訂正符号
が盛んに利用されている。とりわけ衛星通信、移動通信
のように伝送路の信頼性が低い無線ディジタル通信にお
いては誤り訂正技術は不可欠の技術であり、さらに近年
は磁気記録装置へのディジタル信号の記録再生にも誤り
訂正技術が広く利用されている。誤り訂正符号は大きく
分けてブロック符号、畳込み符号に大別されるが、なか
でも巡回符号を用いたブロック符号は種々の冗長度や誤
り訂正能力をもつものが数多く知られており、広く利用
されている。
ところで、巡回符号のうちBCH(ポース・チョードリ・
オッケンジェム)符号は、ランダム誤りを訂正する符号
であり、2ビット以上の誤り位置決定のためのアルゴリ
ズムとしてピーターソンの方法、バーレンカンプの方
法、あるいはマッシィの方法等、種々の方式が提案され
ている。しかし、これらの方法は、いずれも学術的には
ともかくとして極めて複数な演算を必要とすることから
実用上有用な方法とは言い難く、一般には2ビット以上
の訂正にはあまり使用されていないというのが実状であ
った。
また、誤り訂正符号の全てのパターンに対応するアドレ
スを有するメモリ(ROM)の各アドレスに誤り訂正情報
を書き込んでおき、誤り訂正符号をアドレスデータとし
てメモリへ入力して誤り訂正情報を読出す方式も考えら
れている。しかし、この方式は入力データ(誤り訂正符
号)の符号ビット長が長くなると、極めて大容量のメモ
リを必要とするという問題があった。
〔発明の目的〕
本発明は、このような事情に基づきなされたもので、そ
の目的とするところは、極めて簡易な方法で、2ビット
以上の誤り位置を確定することができる誤り訂正回路を
提供することにある。
〔発明の概要〕
本発明は、情報ビットと冗長ビットとで構成された受入
データを生成多項式で除算してシンドロームを検出する
シンドローム検出手段と、このシンドローム検出手段か
ら出力される前記シンドロームをアドレスとして入力
し、前記シンドロームから決定される前記受入データの
誤りがあるビット位置の情報をバイナリデータで構成さ
せて、これを記憶し出力する記憶装置と、この記憶装置
からのバイナリデータを前記受入データの各ビット毎に
ビット誤りの有無を示すデータに変換して出力する手段
と、前記ビット誤りの有無を示すデータを用いて前記受
入データの誤りビットを訂正する誤りビット訂正手段と
を具備したことを特徴とする。
〔発明の効果〕
本発明によれば、記憶装置のアドレスにシンドロームを
与え、記憶装置からシンドロームによって決まるビット
誤り位置を示すデータを出力データとして出力するよう
にしているので、2ビット以上の誤り訂正を複雑なアル
ゴリズムを用いることなく、また大容量の記憶装置を用
いることなく行なうことができる。したがって、回路構
成の簡単化、これによる通信システム、磁気記録装置等
の信頼性向上に寄与できる。このような効果は訂正可能
なビット数が増えれば増える程一層顕著に現れる。
〔発明の実施例〕
以下、本発明の実施例を説明する。
ここでは一例としてBCH符号を用いる場合について考え
る。
いま、誤り訂正符号の符号語M(X)がガロア体GF
(q)の元で構成され、その生成多項式G(X)が、GF
(q)の拡大体GF(qm)の元により定められていると
き、符号語M(X)はG(X)で割切れる。このような
符号語M(X)を採用すれば、入力された符号語M′
(X)が生成多項式G(X)で割切れるかどうかによっ
て誤り発生の有無がわかる。
いま、入力された符号語M′(X)が伝送誤りを含む場
合、符号語M′(X)をG(X)で除算した余りは0に
はならない。誤りが生じたビットを“1"、その他を“0"
とする符号列をE(X)とすると、 M′(X)=M(X)+E(X) (「+」は法2加算)であるから、M′(X)をG
(X)で除算した余りは、E(X)/G(X)の余りと等
しい、この余りをシンドロームS(X)と呼ぶ。このシ
ンドロームS(X)がlビットまでの誤りの全てのパタ
ーンについて異なる値をとり得れば、シンドロームS
(X)からlビットまでの誤りを訂正することができ
る。
第1図は本発明の一実施例を示す図である。この誤り訂
正回路は、受入データM′(X)から上述したシンドロ
ームを検出するシンドローム検出回路11と、このシンド
ローム検出回路11によって検出されるシンドロームS
(X)を入力として、シンドロームS(X)によって決
定される、受入データM′(X)のビット誤り位置を受
入データM′(X)の各ビット毎に示すデータE(X)
を出力する誤り位置検出回路12と、この誤り位置検出回
路12から出力されるデータE(X)に基づいて、受入デ
ータM′(X)の誤りビットを反転させて誤りビットを
訂正するビット誤り反転回路13とで構成される。誤り位
置検出回路12は、後述するようにビット誤り位置を示す
バイナリデータを記憶するためのROM(第4図参照)を
含んで構成される。(このバイナリデータとは、2進化
10進符号を意味する) いま、受入データM′(X)が符号ビット長31(情報ビ
ット長16、冗長ビット長15)で、3ビットまでの誤りを
訂正できる(31,16)のBCH符号であるとする。そして、
生成多項式を、 g(X)=X15+X11+X10+X3+X8+X7+X5+X3+X2
X+1 とする。
このような31ビットの受入データM′(X)が、シンド
ローム検出回路11に入力されると、シンドローム検出回
路11では受入データM′(X)を生成多項式g(X)で
除算してシンドロームS(X)を算出する。シンドロー
ムS(X)は、生成多項式g(X)の次数が15であるか
ら15ビットのデータとなる。
第2図にシンドロームS(X)検出の一例を示す。な
お、ここでは簡単のために生成多項式が、 g′(X)=X5+X2+1 である場合の例を示した。
すなわち、まずデータ入力に先だって遅延回路21,22,2
3,24,25が全てクリアされる。次に高次のビットから順
次シリアルに入力された受入データは、EX−OR回路26に
おいて、遅延回路25の出力信号と排他的論理和され、遅
延回路21に与えられる。遅延回路21に入力されたビット
データは、所定のクロックに従って遅延回路22〜25まで
順次シフトされるが、遅延回路22と23との間のEX−OR回
路27において再び遅延回路25の出力と排他的論理和がと
られる。シンドロームS(X)は、受入データの最後の
ビットがシンドローム検出回路11に入力され、さらにEX
−OR回路26を介して遅延回路21から出力された時に遅延
回路21〜25の出力信号として得られる。上述した15次の
生成多項式g(X)の場合にも、遅延回路が15段になる
だけで第2図の回路と全く同じ原理の検出回路を構成す
ることができる。
このようにして得られたシンドロームS(X)は、誤り
位置検出回路12にアドレスデータとして与えられる。
例えば下位16ビット目が誤ったとすると、シンドローム
は、X15をg(X)で除算した余りであるから、 S(X)=X11+X10+X3+X8+X7+X5+X3+X2+X+1 となる。従って、誤り位置検出回路12内のROMのアドレ
スには、 000111110101111 なるアドレスデータが与えられる。そして、こりアドレ
スデータで示されるROMの記憶場所には、X15の位置に誤
りがあることを示す。
01111 なるバイナリデータが記憶されており、これが読出され
出力される。このROMから出力されたバイナリデータ
は、受入データM′(X)の各ビット毎に誤り位置を示
すデータE(X)に変換されて誤り位置検出回路12から
出力される。
また、例えば下位4ビット目、16ビット目、17ビット目
の3ビットのデータが誤ったとすると、シンドロームS
(X)は、X16+X15+X3をg(X)で割った余りである
から、 S(X)=X12+X7+X6+X5+X4+X3+1 となる。従って、ROMのアドレスには 001000011111001 なるアドレスデータが与えられる。そして、このアドレ
スデータで示されるROMの記憶場所には、 00100,10000,10001 なる3個のデータが記憶されており、これが出力され
る。
このように、全ての1ビット誤り、2ビット誤り、3ビ
ット誤りに対応するシンドロームでアドレス指定される
ROMの各記憶場所には、予めそれぞれのビット誤り位置
を示す15ビットのバイナリデータを記憶しておく。訂正
できる誤りは、1ビット誤りが31通り、2ビット誤りが
31C2=465通り、3ビット誤りが31C3=4495通りである
ので、215=32768あるアドレスのうちの約1/6に相当す
る。なお、ビット誤りが生じていない場合には、シンド
ローム検出回路11からはアドレス(00…00)が指定され
るので、この場所には(00…00)のデータを記憶してお
く。そして、これ以外のアドレスが指定される場合は、
4ビット以上の誤りが生じたことを示しており、この場
合には誤り訂正が不可能である。したがって、このよう
なアドレスで指定されるROMの記憶場所の全てに、訂正
不能を知らせる特別のデータ、例えば15ビットの全てを
“1"とした(11…11)のデータを記憶しておく。31ビッ
ト目が誤った場合には、例えば 11111,00000,00000 なるデータを記憶しているので、これと区別できる。
誤り位置検出回路12において、ROMの出力データはバイ
ナリデータであるので、これを誤り位置に対応するビッ
トを“1"、他のビットを“0"とした31ビットの誤り位置
を示すデータ、すなわち受入データM′(X)の各ビッ
ト毎に誤り位置を示すデータE(X)に変換して、誤り
ビット反転回路13に出力する。例えば前述のように、 00100,10000,10001 なるバイナリデータがROMに記憶されていれば、 0000000000000011000000000001000 なるデータが誤り位置検出回路12から出力される。ま
た、訂正不能な4ビット以上の誤りがあることを示す
(11…11)なるデータがROMから出力された時には、特
別に31ビット全てを“1"としたデータが出力される。例
えば第3図に示すように構成されている。すなわち、受
入データM′(X)は、31ビットのシフトレジスタ31に
シリアルに入力される。31ビットの受入データの全ての
ビットがシフトレジスタ31に格納されたら、受入データ
はシフトレジスタ31から31ビットのラッチ回路32にラッ
チされる。そして、各ビットデータは各々EX−OR回路33
1,332,…,3331の一方の入力に与えられる。一方、誤
り位置検出ROM12からの誤り位置データE(X)も31ビ
ットのラッチ回路34にラッチされ、各々EX−OR回路3
31,332,…,3331の他方の入力に与えられる。また、
ラッチ回路34の出力はAND回路35にも入力されている。
いま、受入データに誤りがないときは、ラッチ回路34の
出力は、全て“0"であるから、受入データ、EX−OR回路
331,332,…,3331によっては何等左右されず、そのま
ま出力される。
一方、受入データに3ビット以下の誤りがある場合に
は、誤り位置検出回路12からは誤り位置に“1"が立った
データが出力されるので、入力データは、EX−OR回路33
1,332,…,3331によって反転され、これによって誤り
が訂正されたデータM(X)がEX−OR回路331,332
…,3331から出力される。
また、4ビット以上の誤りが生じた場合には、ラッチ回
路34の出力が全て“1"になるので、AND回路35の出力が
“0"から“1"に反転し、これが誤りを検出信号ERRとし
て出力される。
このように本実施例によれば、誤り位置検出回路12を用
いた極めて簡単な回路構成によりまた複雑なアルゴリズ
ムを一切用いることなく2ビット以上のランダム誤りを
訂正でき、誤り訂正符号の実用化に大きく寄与すること
は明らかである。
なお、本発明は、上述した実施例に限定されるものでは
ない。
例えば上記実施例では31個のEX−OR回路を使用して受入
データとビット誤り位置を示すデータとのEX−ORを並列
的にとるようにしたが、受入データがシリアルに入力さ
れるので、誤りビット反転回路13の出力データも1ビッ
トずつ出力するようにすれば、EX−OR回路は1つで足り
ることになる。このような構成とすれば、第3図に示し
たような31ビットのシフトレジスタ31、ラッチ32,34お
よび31個のEX−OR回路331〜3331を必要としないという
利点がある。この構成による本発明の実施例を第4図に
示す。
第4図において、誤り位置検出ROM51とコンパレータ52
とカウンタ53およびRSフリップフロップ56は第1図の誤
り検出回路12に相当し、シフトレジスタ54およびEX−OR
回路55は第1図の誤りビット反転回路13に相当する。こ
こで、誤り位置検出ROM51は、最上位アドレスが“0"と
なる第一の領域、つまり、00000…0から01111…1まで
のアドレスに対応する部分と、最上位アドレスが“1"と
なる第二の領域、つまり、10000…0から11111…1まで
のアドレスに対応する部分、とに分割されている。そし
て、アドレスが00000…0から01111…1の範囲に、下位
の誤りビット位置を示すデータを記憶し、アドレスが、
10000…0から11111…1の範囲に、下位の誤りビット位
置を示すデータを記憶する。(シンドロームのビット数
をmとすると、アドレスのビット数はm+1となる。)
従って、2ビット誤りのうち上位の誤りビットの位置を
示す5ビットのバイナリーデータが、上記第1の領域の
対応するシンドロームで特定される記憶場所に記憶さ
れ、同下位の誤りビットの位置を示す5ビットのバイナ
リーデータが、上記第2の領域の対応するシンドローム
で特定される記憶場所に記憶されている。当初ROM51の
アドレスの最上位ビットは“0"に設定されている。ROM5
1の出力は、コンパレータ52の第1の入力端子に導入さ
れている。一方、コンパレータ52の第2の入力端子に
は、5ビットのカウンタ53からの出力が与えられてい
る。カウンタ53は高速クロックφによって駆動され、
(0)から(31)までのバイナリーコードを出力する。
コンパレータ52は両入力データが一致したら“1"を出力
する。一方、受入データM′(X)は、シフトレジスタ
54に導入されている。このシフトレジスタ54は、カウン
タ53の高速クロックφで駆動されている。したがって、
コンパレータ52から“1"が出力された時に、シフトレジ
スタから出力されているビットデータは誤りということ
になる。そこで、コンパレータ52の出力が、“1"になっ
たときには、シフトレジスタ54の出力をEX−OR回路55で
反転させれば、誤り訂正を行なうもとができる。なお、
コンパレータ52からの“1"出力は、RSフリップフロップ
回路56のセット(S)端子に与えられているので、RSフ
リップフロップ回路56の出力は“0"から“1"に反転し、
ROM51のアドレスの最上位ビットは“1"となる。そし
て、再び同様の手順で2ビット目の誤り訂正が行われ
る。なお、誤り訂正が終了したら、カウンタ53とRSフリ
ップフロップ56のリセット(R)端子に、外部らのリセ
ット信号RSが与えられる。訂正できる誤りビットの数が
増えれば、RSフリップフロップの数を増やさせば良い。
このような構成であれば、31ビットのうち誤りのないビ
ットを“0"、誤りのあるビットを“1"としてROMに記憶
する方法に比較して、誤り位置検出ROM51の容量を5t/31
に削減することができる。但し、tは訂正可能な最大の
誤りビット数を示す。
この他、本発明はシンドロームからビット誤り位置を検
出する記憶装置としてRAMや磁気ディスクなど他の記憶
装置を用いるようにしてもよい。
また、巡回符号の種類はBCHに限らず、シンドロームか
らビット誤り位置を特定できる誤り訂正能力を有する符
号であれば、この発明を適用可能である。
【図面の簡単な説明】
第1図は本発明の一実施例に係る誤り訂正回路のブロッ
ク図、第2図は同誤り訂正回路におけるシンドローム検
出回路の一例を示すブロック図、第3図は同誤り訂正回
路における誤りビット反転回路の一例を示すブロック
図、第4図は本発明の他の実施例に係る誤り訂正回路の
一部を示すブロック図である。 21〜25…遅延回路、31…シフトレジスタ、32,34…ラッ
チ回路、56…RSフリップフロップ回路。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】情報ビットと冗長ビットとで構成された受
    入データを生成多項式で除算してシンドロームを検出手
    段するシンドローム検出手段と、 このシンドローム検出手段から出力される前記シンドロ
    ームをアドレスとして入力し、前記シンドロームから決
    定される前記受入データの誤りがあるビット位置の情報
    をバイナリデータで構成させて、これを記憶し出力する
    記憶装置と、 この記憶装置からのデイナリデータを前記受入データの
    各ビット毎にビット誤りの有無を示すデータに変換して
    出力する手段と、 前記ビット誤りの有無を示すデータを用いて前記受入デ
    ータの誤りビットを訂正する誤りビット訂正手段とを具
    備したことを特徴とする誤り訂正回路。
  2. 【請求項2】前記記憶装置は、前記シンドロームから誤
    りがあるビット位置を決定できないときに前記受入デー
    タに誤りがあったことだけを知らせるデータを出力する
    ものであることを特徴とする特許請求の範囲第1項記載
    の誤り訂正回路。
JP60200005A 1985-09-10 1985-09-10 誤り訂正回路 Expired - Lifetime JPH0691471B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60200005A JPH0691471B2 (ja) 1985-09-10 1985-09-10 誤り訂正回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60200005A JPH0691471B2 (ja) 1985-09-10 1985-09-10 誤り訂正回路

Publications (2)

Publication Number Publication Date
JPS6260320A JPS6260320A (ja) 1987-03-17
JPH0691471B2 true JPH0691471B2 (ja) 1994-11-14

Family

ID=16417209

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60200005A Expired - Lifetime JPH0691471B2 (ja) 1985-09-10 1985-09-10 誤り訂正回路

Country Status (1)

Country Link
JP (1) JPH0691471B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7694209B2 (en) 2005-11-22 2010-04-06 Kabushiki Kaisha Toshiba Decoding device for decoding codeword

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63308444A (ja) * 1987-06-10 1988-12-15 Matsushita Electric Ind Co Ltd 通信プロトコル処理装置
JPH01212924A (ja) * 1988-02-19 1989-08-25 Sanyo Electric Co Ltd 誤り訂正回路
JP2696885B2 (ja) * 1988-03-03 1998-01-14 日本電気株式会社 誤り訂正情報出力回路
FR2864575B1 (fr) * 2003-12-24 2006-02-10 Saint Gobain Ct Recherches Bloc pour la filtration de particules contenues dans les gaz d'echappement d'un moteur a combustion interne
JP7660717B2 (ja) * 2022-02-24 2025-04-11 チャンシン メモリー テクノロジーズ インコーポレイテッド データ誤り訂正回路およびデータ伝送回路

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5644946A (en) * 1979-09-20 1981-04-24 Hitachi Ltd Code error correction and detection system
JPS5789349A (en) * 1980-11-22 1982-06-03 Nec Corp Decoder for error correction code

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7694209B2 (en) 2005-11-22 2010-04-06 Kabushiki Kaisha Toshiba Decoding device for decoding codeword

Also Published As

Publication number Publication date
JPS6260320A (ja) 1987-03-17

Similar Documents

Publication Publication Date Title
EP0136604B1 (en) Decoding method and system.
JP3234130B2 (ja) 誤り訂正符号復号化方法およびこの方法を用いる回路
US6639865B2 (en) Memory device, method of accessing the memory device, and reed-solomon decoder including the memory device
EP0129849B1 (en) Error correction method and system
CN111597072B (zh) 差错控制编码ecc系统及包括ecc系统的存储器设备
JPH084233B2 (ja) 誤り訂正符号の復号装置
JPH11508712A (ja) ディスクドライブバッファ内のデータを保護するための方法および装置
CN111628780A (zh) 数据编码、解码方法及数据处理系统
US4527269A (en) Encoder verifier
EP0101218A2 (en) Methods of correcting errors in binary data
US4404673A (en) Error correcting network
US7392461B2 (en) Decoding for algebraic geometric code associated with a fiber product
US20030051204A1 (en) Interconnect system with error correction
WO2009146517A1 (en) Method of encoding and/or decoding multidimensional and a system comprising such method
US6868517B1 (en) Method and apparatus for checking read errors with two cyclic redundancy check stages
US6138263A (en) Error correcting method and apparatus for information data having error correcting product code block
JPH0691471B2 (ja) 誤り訂正回路
US7120850B2 (en) Low-cost methods and devices for the decoding of product cases
KR100330642B1 (ko) 오류정정방법및오류정정장치
JPS6260319A (ja) 誤り訂正回路
JPH0361210B2 (ja)
KR100239798B1 (ko) 디지털 신호의 재생에 있어 에러정정방법 및 그에 적용되는 장치
JP3338320B2 (ja) バースト誤り訂正方法及び装置
JP2768723B2 (ja) 復号化装置
RU1810909C (ru) Корректор ошибок