JP2585361B2 - リ−ド・ソロモン符号の誤り位置と誤りパタ−ンの抽出装置 - Google Patents

リ−ド・ソロモン符号の誤り位置と誤りパタ−ンの抽出装置

Info

Publication number
JP2585361B2
JP2585361B2 JP63091418A JP9141888A JP2585361B2 JP 2585361 B2 JP2585361 B2 JP 2585361B2 JP 63091418 A JP63091418 A JP 63091418A JP 9141888 A JP9141888 A JP 9141888A JP 2585361 B2 JP2585361 B2 JP 2585361B2
Authority
JP
Japan
Prior art keywords
flip
flop
error
output
zero
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
Application number
JP63091418A
Other languages
English (en)
Other versions
JPH01264316A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP63091418A priority Critical patent/JP2585361B2/ja
Publication of JPH01264316A publication Critical patent/JPH01264316A/ja
Application granted granted Critical
Publication of JP2585361B2 publication Critical patent/JP2585361B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Error Detection And Correction (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデイスク用誤り訂正装置に係り、特にリード
・ソロモン符号を用いたシングルバースト誤り訂正処理
に適した復号方法および符号化・復号装置に関する。
〔従来の技術〕
従来の磁気デイスク用リード・ソロモン符号シングル
バースト誤り訂正方式として 、昭和61年3月に発行さ
れた日本工業技術センター編“誤り訂正符号化技術の要
点、P154〜163、「F6425の誤り訂正方式」と「F6420の
誤り訂正方式」が知られている。「F6420の誤り訂正方
式」は、「F6425の誤り訂正方式」に比べ、適用データ
長が短い、さらに信頼性(誤検出率、誤訂正率)が低
い。又、「F6420の誤り訂正方式」では8ビット単位で
データを扱うが、「F6425の誤り訂正方式」と同等の性
能を出すためにこれを16ビット単位へ拡張しようとする
と、60K×2バイト以上の演算テーブル用ROMが必要とな
る。このROMを使わずに仮にフィードバックシフトレジ
スタのシフトで演算を行なうとしても、時間的に非実際
的となる。
「F6425の誤り訂正方式」によれば、簡単に言えば、
符号化とシンドローム計算は16ビットのビットシリアル
フィードバックシフトレジスタ6個をそれぞれ独立に用
い2回インターリーブしたデータを除算することで行な
う。誤り位置と誤りパターンの計算は上記フィードバッ
クシフトレジスタを用いてある程度の処理をして誤りの
パターンと相対位置μ、μを求めた上で、中国人の
剰余定理により誤りの絶対位置lを求めていた。この絶
対位置の計算 l=−32639μ+32640μ はソフトウェアで行なうか、さもなければ別に計算専用
のハードウェアが必要である。
〔発明が解決しようとする課題〕
上記従来技術は、誤りの状態(1シンボルエラーか、
2シンボルエラーか、あるいは訂正不可能な誤りか)の
場合分けと、それぞれの場合の分岐処理など、アルゴリ
ズムが複雑なソフトウェアが必要であった。
本発明の目的は、アルゴリズムとして簡潔なものを用
いることにより訂正処理の煩雑さをなくし、それにより
ソフトウェアを不要とし、かつハードウェア量を増やさ
ずに、上記従来技術と同等以上の誤り訂正能力・信頼性
を有する誤り訂正方法と装置を実現することにある。
〔課題を解決するための手段〕
上記目的は、生成多項式を ik∈{1、2、3、…、2m−1} αik:GF(2m)上の元 とするmビットシリアルフィードバックシフトレジスタ
(除算回路)を用いることにより達成される。
〔作用〕
カロア体GF(q)上の原始多項式P(x)の原始元α
には次の性質がある。
xq+x=x(xq-1+1) =(x−0)(x−α)(x−α)…(x−
αq-1) (20) 式(19)の右辺のq個の因数から1つ以上をとって多
項式 を作る。
一方、G(x)による除算回路内の初期パターンを F0(x)=αjm-1xm-1+αjm-2xm-2+…+αj1x+αj0 とし、これから入力を0として除算回路を1回シフトす
ることは、 F1(x)=x・F0(x)modG(x) を計算することに相当するから、初期パターンから(q
−1)回シフトすれば、 Fq-1(x)=xq-1F0(x)modG(x) =(xq-1−1)・F0(x)modG(x)+F
0(x) =F0(x) (22) となり、初期パターンに戻る。
よって、式(21)を満たす任意の多項式G(x)を除
数とする除算回路は周期(q−1)を有するフィードバ
ックシフトレジスタとなる。このフィードバックシフト
レジスタの巡回性により、(q−1)シンボル以内のデ
ータの誤りパターン・位置の抽出が可能である。
〔実施例〕
以下、本発明の一実施例を第1図、第2図、および第
3図により説明する。
第1図は、下記のGF(216)上の原始多項式P(x)
および生成多項式G(x)に基いて構成した、リード・
ソロモン符号の符号化・復号装置のブロック図である。
P(x)=x16+x12+x3+x+1 G(x)=(x+α-93)(x+α93)(x+α-376
(x+α376) ×(x+α-469)(x+α469) =x6+x5+βx4+x3+βx2+x+1 但し、αはP(x)の原始元。β=α47961 図中1〜6はそれぞれ第1段〜第6段のフリップフロ
ップ群、7〜11はそれぞれ第k段(k=1、2、3、
4、5)フリップフロップ群の出力とフィード バック
パターンを入力とする排他的論理和ゲート群で、その出
力は第k段フリップフロップ群の入力となる。12は第5
段フリップフロップ群の出力と入力データを入力とする
排他的論理和ゲート群である。排他的論理和ゲート12の
出力は、そのまま生成多項式G(x)の係数が1の項
(0次、1次、3次、5次の項)へのフィードバックパ
ターンとなり、第1段フリップフロップ群および排他的
論理和ゲート群7、9、11へ入力する。一方排他的論理
和ゲート群12の出力はまた、フィードバック係数生成回
路13へ入力、そこでG(x)の係数がβの項(2次、4
次の項)へのフィードバックパターンが生成され、排他
的論理和ゲート群8、10の入力となる。
フリップフロップ群と排他的論理和ゲート群の一部で
あるフリップフロップ群2、3と排他的論理和ゲート8
を詳細に示したものが第2図である。フリップフロップ
群2およびフリップフロップ群3は図示の通りそれぞれ
16個のフリップフロップから成り、16個のフリップフロ
ップがそれぞれα、α、α、…、α15の位に対
応、16ビット全部でx2およびxの項の係数パターンを表
わす。排他的論理和ゲート群8は、16個の排他的論理和
ゲートから成り、フリップフロップ群2の第i位(α
の項:i=0、1、2、…、15)の出力b′iとフィード
バック係数生成回路13の第i位(αの項:i=0、1、
2、…、15)の出力▲α ▼との排他的論理和がとら
れ、フリップフロップ群3の第i位(αの項)の入力
となる。
従って、クロック信号がフリップフロップ群2および
フリップフロップ群3の各フリップフロップにクロック
信号が送られると、フリップフロップ群2の16ビットの
パターンとフィードバック係数生成回路の16ビット出力
パターンとの排他的論理和がとられ、フリップフロップ
群3の新しいパターンとなる。
第1図におけるフリップフロップ群1〜6、排他的論
理和ゲート群7〜12は、すべてこのような16ビットのフ
リップフロップと16個の排他的論理和ゲートの繰り返し
であり、排他的論理和ゲート群7、9、11は、それぞれ
フリップフロップ群1、3、5の第i位(αの項)の
出力と排他的論理和ゲート群12の第i位(αの項)の
出力との排他的論理和をとる。排他的論理和ゲート群12
は、フリップフロップ群6の16ビットの出力と入力端16
から入力される2バイトデータとの排他的論理和をと
る。
以上のようにして、フリップフロップ群1〜6のすべ
てのフリップフロップに同時にクロック信号が送られる
と、各段のフリップフロップ群のパターンがフィードバ
ックを受けながら1段上段へシフトするフィードバック
シフトレジスタが構成される。クロックカウンタ17はフ
ィードバックシフトレジスタが1回シフトする度に+1
を計数する。
次に、フィードバック係数生成回路13について説明す
る。
原始多項式(1)および生成多項式(2)を用いて除
算回路を構成する場合、フィードバック係数生成回路の
α(i=0、1、2、…、15)の項の入力をα(i
=0、1、2、…、15:α=1 OR 0)、出力を▲
α ▼とすれば、▲α ▼は、以下の16個の式を満
たさなければならない。
▲d ▼=d13+d12+d10+d4+d3+d1+d0 −(3) ▲d ▼=d14+d12+d11+d10+d5+d3+d2−(4) ▲d ▼=d15+d13+d12+d11+d6+d4+d3−(5) ▲d ▼=d14+d10+d7+d5+d3+d1+d0 −(6) ▲d ▼=d15+d11+d8+d6+d4+d2+d1+d0
(7) ▲d ▼=d12+d9+d7+d5+d3+d2+d1 −(8) ▲d ▼=d13+d10+d8+d6+d4+d3+d2+d0
(9) ▲d ▼=d14+d11+d9+d7+d5+d4+d3+d1 −(1
0) ▲d ▼=d15+d12+d10+d8+d6+d5+d4+d2+d0
−(11) ▲d ▼=d13+d11+d9+d7+d6+d5+d3+d1+d0
(12) ▲d 10▼=d14+d12+d10+d8+d7+d6+d4+d2+d1
−(13) ▲d 11▼=d15+d13+d11+d9+d8+d7+d5+d3+d2
+d0 −(14) ▲d 12▼=d14+d13+d9+d8+d6+d0 −(15) ▲d 13▼=d15+d14+d10+d9+d7+d1+d0 −(16) ▲d 14▼=d15+d11+d10+d8+d2+d1 −(17) ▲d 15▼=d12+d11+d9+d3+d2+d0 −(18) 但し、式(3)〜式(18)中、+は排他的論理和を表
わすものとする。
d0〜d15から▲d ▼(i=0、1、2、…、15)
を求める回路は、数個の排他的論理和ゲートを用いて容
易に実現される。例として▲d 10▼(α10の項)、▲
11▼(α11の項)を算出する回路を第3図に示す。
以下、第1図により、データの符号化・復号手順を説
明する。尚、訂正バースト長を2シンボルに設定する。
(i) 符号化 フリップフロップ群1〜6のパターンをすべてゼロに
初期設定し、1回のクロック信号によりフィードバック
シフトレジスタを1回シフトさせるとともに入力端16か
ら2バイト単位(=1シンボル)でデータを入力する。
クロックカウンタの計数値がデータ長〔シンボル〕とな
るまでシフトを繰返し、その後フィードバックシフトレ
ジスタに残った6シンボル(=12バイト)のパターンを
検査シンボルとしてデータの末尾に付加する。
(ii) 誤り検出(シンドローム計算) 符号化と同様にして、データ入力端16からデータを入
力しながらフィードバックシフトレジスタをシフトす
る。データ入力終了時点で誤り検出回路がゼロを検出す
れば、即ち、6段のフリップフロップ群のすべての内容
がゼロであれば、誤りなしと判定、復号を終了する。誤
り検出回路14がゼロを検出しない場合はシンドロームが
非ゼロでデータに誤りが発生したものと判定し、(ii
i)の誤り位置・パターン抽出作業に移る。
(iii) 誤り位置・パターン抽出 シンドロームが非ゼロの場合、まず、シンドロームを
反転する。即ち、フリップフロップ群1の内容とフリッ
プフロップ群6の内容を交換し、フリップフロップ群2
の内容とフリップフロップ群5の内容を交換し、フリッ
プフロップ群3とフリップフロップ群4の内容を交換す
る(交換手段は図示していない)。この際には第i位
(i=0、1、2、…、15)の内容どうしを入れ換え
る。この後、データ入力端16からの入力データをゼロに
設定したまま、ゼロ検出回路15がゼロを検出するまで、
即ち、上位4段のフリップフロップ群の内容がすべてゼ
ロとなるまでクロックカウンタ17でシフト回数を計数し
ながらフィードバックシフトレジスタのシフトを繰り返
す。
データ長〔シンボル〕以下のシフト回数の後にゼロ検
出回路15がゼロを検出した場合、データ中に2シンボル
以内のシングルバースト誤りが存在するものと判定、こ
のときの下位2段のフリップフロップ群の内容を反転し
たもの(フリップフロップ群1の内容とフリップフロッ
プ群2の内容を入れ換えたもの)を誤りパターンとし、
計数されたシフト回数を、データの末尾から数えた誤り
パターンの先頭シンボルの位置、即ち誤り位置とする。
データ長〔シンボル〕より以上のシフトを行ってもゼ
ロ検出回路15がゼロを検出しない場合、訂正不可能な誤
りが存在するものと判定する。
本実施例によれば、代数計算のためのシフトウェアや
演算用のROMテーブルを用いることなく、従来の誤り訂
正効果と同じ効果(信頼性・訂正能力)を、ハードウェ
ア量をほとんど増やすことなく17ビット以下の任意のシ
ングルバーストエラーを訂正することができる。
誤り位置・パターン抽出時には、シンドロームパター
ンを反転してからシフトを行なうので、データの末尾か
ら誤りを探すことになり、抽出に要するシフト回数は最
大でデータ長〔シンボル〕となる。
また、生成多項式として対称式を用いているため、シ
ンドローム計算後誤り抽出に移る時点で、フィードバッ
クの位置と係数を変える必要がなく、x6、x5、x3、x、
x0の項の係数が1、x4、x2の項の係数がβであるため、
フィードバック係数生成回路は1種類しか必要とせず、
ハードウェア量の制約になる。
〔発明の効果〕
本発明によれば、以下のような特長・効果を有する符
号化・復号装置が実現される。
すなわち、代数計算(誤り位置・パターンの算出)の
ためのソフトウェアやROMテーブルを用いることなく、
従来の誤り訂正効果と同じ効果(信頼性・訂正能力)
を、ハードウェア量をほとんど増やすことなくbシンボ
ル以下の任意のシングルバーストエラーを訂正すること
ができる。また、従来の復号方法によれば、bシンボル
の誤りを訂正するために一般にb回のデータインターリ
ーブを必要としたが、この処理が不要である。
又、さらに一般にフィードバック係数生成回路の種類
以下ですむため、ハードウェア量が節減される。
さらに又、誤り位置・パターンの抽出時には、シンド
ロームパターンを反転してからシフトを行なうため、抽
出に要するシフト回数は最大でデータ長〔シンボル〕と
することができ、またシフトはnビット単位で行なうた
め、誤り抽出を行うのに要する時間は結局、1セクタデ
ータのシンドローム計算に要する時間の1/m以下にな
る。
さらには、シンドローム計算後誤り抽出に移る時点
で、フィードバックの位置と係数を変える必要がない。
【図面の簡単な説明】
第1図は本発明の一実施例の符号化・復号装置のブロッ
ク図、第2図は第1図中のフリップフロップ群と排他的
論理和ゲート群の部分的詳細図、第3図は第1図中のフ
ィードバック係数生成回路の部分的詳細図である。 1〜6……フリップフロップ群、7〜12……排他的論理
和ゲート群、13……フィードバック係数生成回路、14…
…誤り検出回路、15……ゼロ検出回路、16……データ入
力端、17……クロックカウンタ。
フロントページの続き (72)発明者 川村 哲士 神奈川県横浜市戸塚区吉田町292番地 株式会社日立製作所マイクロエレクトロ ニクス機器開発研究所内 (56)参考文献 特開 昭58−133062(JP,A) 特開 昭60−105055(JP,A) 特開 昭60−183642(JP,A) 特開 昭63−13522(JP,A)

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】ガロア体GF(2n)の原始元αおよびα
    α、…、αn-1の各位を表すn個のフリップフロップ
    が構成するフリップフロップ群(これを1シンボルとい
    う)m個と、第m段フリップフロップ群のn個のフリッ
    プフロップの出力値に基いて各フリップフロップ群への
    フィードバックパターンを生成するm個以下のフィード
    バック係数生成回路と、m×n個の排他的論理和手段
    と、フリップフロップの入力を計数するクロックカウン
    ト手段とを有し、前記第k段(k=1、2、…、m)フ
    リップフロップ群の第j位(j=1、2、…、n)のフ
    リップフロップの出力と該当する前記フィードバック係
    数生成回路の出力とが前記排他的論理和手段のひとつに
    入力され、前記排他的論理和手段の出力が前記第k+1
    段フリップフロップ群の第j位のフリップフロップに入
    力され、第m段のフリップフロップ群の各フリップフロ
    ップの出力とnビットの入力データとを入力とする前記
    排他的論理和手段の出力が前記フィードバック係数生成
    回路のそれぞれに入力し、すべての前記フリップフロッ
    プが同一のクロック信号により入出力し、m次多項式 で除算する除算回路と、 すべての前記フリップフロップの出力がゼロであること
    を検出する誤り検出回路と、 前記除算回路により訂正可能な誤りの長さをbシンボル
    と設定した場合に上位(m−b)段の前記フリップフロ
    ップ群のすべてのフリップフロップの出力がゼロである
    ことを検出するゼロ検出回路と、 下位から第k段目の前記フリップフロップ群の第j位フ
    リップフロップの内容と上位から第k番目の前記フリッ
    プフロップ群の第j位フリップフロップの内容とを入れ
    換える手段と、 前記生成多項式G(x)に関しCm≠Coである場合に、前
    記生成多項式の逆多項式G′(x)=Xm・G(1/x)に
    基いて構成したm個以下の前記フィードバック係数生成
    回路と、生成多項式G(x)に基く前記フィードバック
    係数生成回路を切り離し、かわりに逆多項式G′(x)
    に基く前記フィードバック係数生成回路を接続する手段
    と、 前記クロックカウント手段をリセットし、前記ゼロ検出
    回路がゼロを検出するまで前記フリップフロップ群の入
    出力を繰り返す手段と、 前記フリップフロップの入出力の繰り返しの回数を前記
    クロックカウント手段で計数する手段と を備え、 前記ゼロ検出回路がゼロを検出したときの第1段から第
    b段の前記フリップフロップ群の順序を入れ換えた結果
    の内容を誤りパターンとし、前記ゼロ検出回路がゼロを
    検出したときの前記クロックカウント手段の計数lをデ
    ータの末尾から数えた誤りパターンの先頭シンボルの位
    置とすることを特徴とするリード・ソロモン符号の誤り
    位置と誤りパターンの抽出装置。
JP63091418A 1988-04-15 1988-04-15 リ−ド・ソロモン符号の誤り位置と誤りパタ−ンの抽出装置 Expired - Fee Related JP2585361B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63091418A JP2585361B2 (ja) 1988-04-15 1988-04-15 リ−ド・ソロモン符号の誤り位置と誤りパタ−ンの抽出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63091418A JP2585361B2 (ja) 1988-04-15 1988-04-15 リ−ド・ソロモン符号の誤り位置と誤りパタ−ンの抽出装置

Publications (2)

Publication Number Publication Date
JPH01264316A JPH01264316A (ja) 1989-10-20
JP2585361B2 true JP2585361B2 (ja) 1997-02-26

Family

ID=14025824

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63091418A Expired - Fee Related JP2585361B2 (ja) 1988-04-15 1988-04-15 リ−ド・ソロモン符号の誤り位置と誤りパタ−ンの抽出装置

Country Status (1)

Country Link
JP (1) JP2585361B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5737632A (en) 1989-12-19 1998-04-07 Hitachi, Ltd. Magnetic disc control apparatus with parallel data transfer between disc control unit and encoder/decoder circuit

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58133062A (ja) * 1982-02-02 1983-08-08 Nec Corp バイトシリアルエンコ−ダ
JPS60105055A (ja) * 1983-11-11 1985-06-10 Hitachi Ltd フアイヤ符号の復号方法および復号装置
JPS60183642A (ja) * 1984-03-02 1985-09-19 Toshiba Corp リ−ド・ソロモン符号誤り検出装置
JPS6313522A (ja) * 1986-07-04 1988-01-20 Hitachi Ltd 符号・復号装置

Also Published As

Publication number Publication date
JPH01264316A (ja) 1989-10-20

Similar Documents

Publication Publication Date Title
Berlekamp Algebraic coding theory (revised edition)
EP0114938B1 (en) On-the-fly multibyte error correction
Blaum et al. MDS array codes with independent parity symbols
US7278085B1 (en) Simple error-correction codes for data buffers
US6615387B1 (en) Method and apparatus for error detection
Houghton The engineer’s error coding handbook
US4928280A (en) Fast processor for multi-bit error correction codes
EP0112988A2 (en) Syndrome processing for multibyte error correcting systems
EP0233075B1 (en) Method and apparatus for generating error detection check bytes for a data record
JPS63244935A (ja) 誤り検出訂正方法とシステム
US8694872B2 (en) Extended bidirectional hamming code for double-error correction and triple-error detection
Patel et al. Optimal rectangular code for high density magnetic tapes
JPH0728227B2 (ja) Bch符号の復号装置
JPS59151246A (ja) エンコ−ダ検査装置
US20020188909A1 (en) Symbol level error correction codes which protect against memory chip and bus line failures
US7100103B2 (en) Efficient method for fast decoding of BCH binary codes
JP2585361B2 (ja) リ−ド・ソロモン符号の誤り位置と誤りパタ−ンの抽出装置
JPH10327080A (ja) シンドローム計算装置
JP2691973B2 (ja) 単一誤り訂正および多重誤り検出bch符号の復号装置
JPH0351008B2 (ja)
TWI272778B (en) Method and apparatus for generating parity characters for a codeword of a cyclic code
JPS642293B2 (ja)
JPS594741B2 (ja) ブロツク誤り検出訂正方式
CA1082815A (en) Table lookup direct decoder for double-error- correcting (dec) bch codes using general pair of syndromes
Singh Digital Principles Switching Theory

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees