JPH0636286B2 - 誤り訂正方法及び装置 - Google Patents
誤り訂正方法及び装置Info
- Publication number
- JPH0636286B2 JPH0636286B2 JP58110931A JP11093183A JPH0636286B2 JP H0636286 B2 JPH0636286 B2 JP H0636286B2 JP 58110931 A JP58110931 A JP 58110931A JP 11093183 A JP11093183 A JP 11093183A JP H0636286 B2 JPH0636286 B2 JP H0636286B2
- Authority
- JP
- Japan
- Prior art keywords
- word
- error
- correction
- words
- flag
- 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
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1806—Pulse code modulation systems for audio signals
- G11B20/1809—Pulse code modulation systems for audio signals by interleaving
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Description
【発明の詳細な説明】 〔発明の利用分野〕 本発明はディジタル信号の再生装置における誤り訂正に
係り、特に検査ワード数が多い場合に好適な誤り訂正装
置に関する。
係り、特に検査ワード数が多い場合に好適な誤り訂正装
置に関する。
ディジタル信号の伝送または記録を行なう場合には、伝
送系におけるデータ誤りの発生が問題となる。そこで、
送信または記録時に検査ワードを付加し、受信または再
生時にその検査ワードを用いて誤り訂正を行なう。検査
ワードとしては、能率が良く復号のしやすいBCH符号等
が用いられる。特に、ブロック符号ではBCH符号の一種
であるリード・ソロモン符号が多く用いられる。さら
に、これらの符号によって2重に符号化を行なうことに
よって訂正能力を大きくした方式としてクロス・インタ
ーリーブ符号がある。
送系におけるデータ誤りの発生が問題となる。そこで、
送信または記録時に検査ワードを付加し、受信または再
生時にその検査ワードを用いて誤り訂正を行なう。検査
ワードとしては、能率が良く復号のしやすいBCH符号等
が用いられる。特に、ブロック符号ではBCH符号の一種
であるリード・ソロモン符号が多く用いられる。さら
に、これらの符号によって2重に符号化を行なうことに
よって訂正能力を大きくした方式としてクロス・インタ
ーリーブ符号がある。
第1図及び第2図は、クロス・インターリーブ・リード
・ソロモン符号(以下CIRC符号と略す)の符号化回路及
び復号回路である。第1図において、1,2は符号器、3,
4,5はインターリーブ回路、6はデータ反転回路であ
る。また第2図において、7,8は復号器、9,10,11はデイ
ンターリーブ回路である。
・ソロモン符号(以下CIRC符号と略す)の符号化回路及
び復号回路である。第1図において、1,2は符号器、3,
4,5はインターリーブ回路、6はデータ反転回路であ
る。また第2図において、7,8は復号器、9,10,11はデイ
ンターリーブ回路である。
CIRC符号では、リード・ソロモン符号による2重符号化
を行なっている。第1図の符号化回路においては、24ワ
ードの情報ワードに対しインターリーブ回路3によって
第1のインターリーブ回路を行なった後に符号器1によ
って4ワードの検査ワードQ1,Q2,Q3,Q4を付
加する。さらに、この24ワードの情報ワード及び4ワー
ドの検査ワードよりなる28ワードの符号ブロックに対し
て、インターリーブ回路4によって第2のインターリー
ブを行なった後に符号器2によって4ワードの検査ワー
ドP1,P2,P3,P4を付加する。この24ワードの
情報ワード及び8ワードの検査ワードよりなる32ワード
の符号ブロックは、さらにインターリーブ回路5によっ
て第3のインターリーブが行なわれた後に送信または記
録される。なお、検査ワードについては、連続データ欠
落時の誤検出あるいは誤訂正を防ぐために、データ反転
回路6より反転されている。
を行なっている。第1図の符号化回路においては、24ワ
ードの情報ワードに対しインターリーブ回路3によって
第1のインターリーブ回路を行なった後に符号器1によ
って4ワードの検査ワードQ1,Q2,Q3,Q4を付
加する。さらに、この24ワードの情報ワード及び4ワー
ドの検査ワードよりなる28ワードの符号ブロックに対し
て、インターリーブ回路4によって第2のインターリー
ブを行なった後に符号器2によって4ワードの検査ワー
ドP1,P2,P3,P4を付加する。この24ワードの
情報ワード及び8ワードの検査ワードよりなる32ワード
の符号ブロックは、さらにインターリーブ回路5によっ
て第3のインターリーブが行なわれた後に送信または記
録される。なお、検査ワードについては、連続データ欠
落時の誤検出あるいは誤訂正を防ぐために、データ反転
回路6より反転されている。
第2図の復号回路においては、デインターリーブ回路9
による上記3のインターリーブに対応したデインターリ
ーブ及びデータ反転回路6による検査ワードの反転が行
なわれた後に、復号器7によって第1の復号が行なわれ
る。この第1の復号では、検査ワードP1〜P4による
誤り検出及び訂正が行なわれる。復号器7において誤り
検出及び訂正が行なわれた24ワードの情報ワード及び4
ワードの検査ワードは、デインターリーブ回路10によっ
て上記第2のインターリーブに対応したデインターリー
ブが行なわれた後に、復号器8によって第2の復号が行
なわれる。この第2の復号では、検査ワードQ1〜Q4
による誤り検出及び訂正が行なわれる。復号器8によっ
て誤り検出及び訂正が行なわれた24ワードの情報ワード
は、デインターリーブ回路11によって上記第1のインタ
ーリーブに対応したデインターリーブを行なった後に出
力される。
による上記3のインターリーブに対応したデインターリ
ーブ及びデータ反転回路6による検査ワードの反転が行
なわれた後に、復号器7によって第1の復号が行なわれ
る。この第1の復号では、検査ワードP1〜P4による
誤り検出及び訂正が行なわれる。復号器7において誤り
検出及び訂正が行なわれた24ワードの情報ワード及び4
ワードの検査ワードは、デインターリーブ回路10によっ
て上記第2のインターリーブに対応したデインターリー
ブが行なわれた後に、復号器8によって第2の復号が行
なわれる。この第2の復号では、検査ワードQ1〜Q4
による誤り検出及び訂正が行なわれる。復号器8によっ
て誤り検出及び訂正が行なわれた24ワードの情報ワード
は、デインターリーブ回路11によって上記第1のインタ
ーリーブに対応したデインターリーブを行なった後に出
力される。
CIRC符号のように2重符号化を行なう方式では、2つの
異なる符号ブロックによって2回またはそれ以上の復号
を行なうことによって訂正能力を大きくすることができ
る。しかし、従来の復号方式では、第1の復号及び第2
の復号において1ワードあるいは2ワードの訂正しか行
なっておらず、符号の持つ訂正能力を十分に利用してい
るとは言えない。
異なる符号ブロックによって2回またはそれ以上の復号
を行なうことによって訂正能力を大きくすることができ
る。しかし、従来の復号方式では、第1の復号及び第2
の復号において1ワードあるいは2ワードの訂正しか行
なっておらず、符号の持つ訂正能力を十分に利用してい
るとは言えない。
〔発明の目的〕 本発明の目的は、符号の持つ誤り訂正能力を最大限に活
用できる誤り訂正方式及び装置を提供することにある。
用できる誤り訂正方式及び装置を提供することにある。
本発明は、最小距離がdの符号において誤り位置が不明
のpワードの誤り及び誤り位置がわかっているqワード
の誤りを訂正する場合に、 2p+q=d−1 となるような復号方法を用いることにより、符号の持つ
誤り訂正能力を最大限に活用しようとするものである。
のpワードの誤り及び誤り位置がわかっているqワード
の誤りを訂正する場合に、 2p+q=d−1 となるような復号方法を用いることにより、符号の持つ
誤り訂正能力を最大限に活用しようとするものである。
以下、本発明の一実施例を前述のCIRC符号に適用した場
合について説明する。
合について説明する。
CIRC符号の復号では、第1の復号においては符号長32ワ
ード、検査ワード数4ワード、第2の復号においては符
号長28ワード、検査ワード数4ワードのガロア体GF(2
8)上のリード・ソロモン符号の復号を行なう必要があ
る。
ード、検査ワード数4ワード、第2の復号においては符
号長28ワード、検査ワード数4ワードのガロア体GF(2
8)上のリード・ソロモン符号の復号を行なう必要があ
る。
まず、ガロア体GF(28)上で定義されたリード・ソロ
モン符号及びその復号法について説明する。
モン符号及びその復号法について説明する。
GF(2)上の8次既約多項式F(x)の根の1つをαと
すると、GF(2)の元にαのべき乗で表わされる(28
−2)個の元を加えた集合{0,1,α,α2,…,α
254}はGF(28)を構成する。GF(28)におい
て、ある正の整数をtとする時 g(x)=(x+1)(x+α)(x+α2)…(x+
α2t−1) または(x+α)(x+α2)(x+α3)…(x+α
2t) (1) を生成多項式とする符号長n=(28−1),情報ワー
ド数(n−2t),検査ワード数2tの符号がリード・ソ
ロモン符号である。すなわち、リードソロモン符号では
符号語C={C0,C1,…,Cn−1}の多項式表現 C(x)=C0+C1x+C2x2+…+Cn−1x
n−1 (2) はg(x)で割り切れる。これを次式のように表わす。
すると、GF(2)の元にαのべき乗で表わされる(28
−2)個の元を加えた集合{0,1,α,α2,…,α
254}はGF(28)を構成する。GF(28)におい
て、ある正の整数をtとする時 g(x)=(x+1)(x+α)(x+α2)…(x+
α2t−1) または(x+α)(x+α2)(x+α3)…(x+α
2t) (1) を生成多項式とする符号長n=(28−1),情報ワー
ド数(n−2t),検査ワード数2tの符号がリード・ソ
ロモン符号である。すなわち、リードソロモン符号では
符号語C={C0,C1,…,Cn−1}の多項式表現 C(x)=C0+C1x+C2x2+…+Cn−1x
n−1 (2) はg(x)で割り切れる。これを次式のように表わす。
C(x)≡0(mod g(x)) (3) なお、符号長nは 28−1n>2t の範囲で短縮することができる。このリード・ソロモン
符号では、最小距離は(2t+1)である。
符号では、最小距離は(2t+1)である。
ここで、(2)式で表わされる符号語C(x)に対する受信信
号を R(x)=γ0+γ1x+…+γn−1xn−1 (4) とし、この受信信号ではν個の誤り が発生したとすると、 R(x)=C(x)+E(x) ≡E(x) (mod g(x)) (6) 誤りE(x)は、次式で表わされるシンドロームSkによ
り求めることができる。
号を R(x)=γ0+γ1x+…+γn−1xn−1 (4) とし、この受信信号ではν個の誤り が発生したとすると、 R(x)=C(x)+E(x) ≡E(x) (mod g(x)) (6) 誤りE(x)は、次式で表わされるシンドロームSkによ
り求めることができる。
復号手順としては、まずシンドロームStより誤り位置
多項式 を求め、その根を求めることにより誤り位置i1,
i2,…,iνがわかる。(8)式よりσ(αij)=0
であるから、 eijαij・kσ(αij)=0 上式を0≦k≦2t-1(または1≦k≦2t)ついて加えわ
せると、 Siσν+Si+1σν -1+…+Si+ ν -1σ1+Si+ ν=0 (0≦i≦2t-1-νまたは1≦i≦2t-ν) (9) が成立する。(9)式を解けばσiを求めることができる。
さらに、この誤り位置及び(7)式より誤り値ei1,e
i2,…eiνを求め、E(x)を求めれば、 C(x)=R(x),E(x) (10) により誤り訂正を行なうとができる。
多項式 を求め、その根を求めることにより誤り位置i1,
i2,…,iνがわかる。(8)式よりσ(αij)=0
であるから、 eijαij・kσ(αij)=0 上式を0≦k≦2t-1(または1≦k≦2t)ついて加えわ
せると、 Siσν+Si+1σν -1+…+Si+ ν -1σ1+Si+ ν=0 (0≦i≦2t-1-νまたは1≦i≦2t-ν) (9) が成立する。(9)式を解けばσiを求めることができる。
さらに、この誤り位置及び(7)式より誤り値ei1,e
i2,…eiνを求め、E(x)を求めれば、 C(x)=R(x),E(x) (10) により誤り訂正を行なうとができる。
最小距離がdの符号においては、誤り位置が不明のp個
の誤りと誤り位置がわかっているq個の誤りについて、 2p+q≦d−1 の範囲で訂正することができる。リード・ソロモン符号
では、最小距離が(2t+1)だから、 2p+q≦2t の範囲で誤り訂正を行なうとができる。
の誤りと誤り位置がわかっているq個の誤りについて、 2p+q≦d−1 の範囲で訂正することができる。リード・ソロモン符号
では、最小距離が(2t+1)だから、 2p+q≦2t の範囲で誤り訂正を行なうとができる。
次に、t=2で、情報ワード数(n−4),検査ワード
数4、生成多項式が g(x)=(x+1)(x+α)(x+α2)x+α3)
(11) であるリード・ソロモン符号について具体的な復号方法
を述べる。
数4、生成多項式が g(x)=(x+1)(x+α)(x+α2)x+α3)
(11) であるリード・ソロモン符号について具体的な復号方法
を述べる。
この場合のシンドロームS0,S1,S2,S3は次式
のようになる。
のようになる。
誤りがない場合には、明らかに S0=S1=S2=S3=0 となる。
誤りが1ワード(誤り位置がiとする)の場合には、
(9)式より、 したがって、 σ1=S1/S0=S2/S1=S3/S2 また、 σ(x)=x+αi =x+σ1 よって、 αi=S1/S0 (14) より誤り位置iが求められる。
(9)式より、 したがって、 σ1=S1/S0=S2/S1=S3/S2 また、 σ(x)=x+αi =x+σ1 よって、 αi=S1/S0 (14) より誤り位置iが求められる。
この場合の誤り値は、(7)式より ei=S0 (15) となる。
誤りが2ワード(誤り位置がi1,i2とする)の場合
には、(9)式より 上式を解くと、 となる。したがって、誤り位置多項式は となる。σ(x)=0を解くことにより が得られ、誤り位置i1,i2を求めることができる。
また、(7)式より、 したがって、 より誤り値 を求めることができる。
には、(9)式より 上式を解くと、 となる。したがって、誤り位置多項式は となる。σ(x)=0を解くことにより が得られ、誤り位置i1,i2を求めることができる。
また、(7)式より、 したがって、 より誤り値 を求めることができる。
誤りが3ワード(誤り位置がi1,i2,i3とする)
場合には、(9)式より S0σ3+S1σ2+S2σ1+S3=0 (20) また、 より したがって、誤り位置i1及びi2がわかっていれば、
(20),(22)式より ただし、 によって3番目の誤り位置i3を求めることができる。
また、(7)式より したがって、 ただし、 より誤り値 を求めることができる。
場合には、(9)式より S0σ3+S1σ2+S2σ1+S3=0 (20) また、 より したがって、誤り位置i1及びi2がわかっていれば、
(20),(22)式より ただし、 によって3番目の誤り位置i3を求めることができる。
また、(7)式より したがって、 ただし、 より誤り値 を求めることができる。
誤りが4ワード(誤り位置がi1,i2,i3,i4と
する)の場合には、(7)式より したがって、誤り位置i1〜i4がわかっていれば、 ただし、 以上述べたように、検査ワード数が4個のリード・ソロ
モン符号の復号方法としては、2個以下の誤り位置のわ
からない誤りを訂正する,2個以下の誤り位置のわかっ
た誤りと1個の誤り位置のわからない誤りを訂正する,
4個以下の誤り位置のわかった誤りを訂正するという3
種類の方法がある。こらの復号方法を組合せて用いるこ
とにより、効率の良い誤り訂正を行なうことができる。
する)の場合には、(7)式より したがって、誤り位置i1〜i4がわかっていれば、 ただし、 以上述べたように、検査ワード数が4個のリード・ソロ
モン符号の復号方法としては、2個以下の誤り位置のわ
からない誤りを訂正する,2個以下の誤り位置のわかっ
た誤りと1個の誤り位置のわからない誤りを訂正する,
4個以下の誤り位置のわかった誤りを訂正するという3
種類の方法がある。こらの復号方法を組合せて用いるこ
とにより、効率の良い誤り訂正を行なうことができる。
CIRC符号においては、検査ワード数は4ワード,最小距
離は5である。したがって、前述したように誤り位置が
不明のpワードの誤り及び誤り位置がわかっているqワ
ードの誤りを、 2p+q≦4 の範囲で訂正することができる。
離は5である。したがって、前述したように誤り位置が
不明のpワードの誤り及び誤り位置がわかっているqワ
ードの誤りを、 2p+q≦4 の範囲で訂正することができる。
第1の復号においては、誤り位置が不明である。したが
って、q=0,p=1または2となり、2ワードまでの
誤りを訂正することができる。すなわち、第1の復号で
は、誤りなしと判定される場合、1ワード訂正を行なう
場合、2ワード訂正を行なう場合、3ワード以上の誤り
があり訂正不能と判定される場合の4種類の場合が考え
られる。そこで、第1の復号の状態を示すフラグとして
以下のようなものを考える。
って、q=0,p=1または2となり、2ワードまでの
誤りを訂正することができる。すなわち、第1の復号で
は、誤りなしと判定される場合、1ワード訂正を行なう
場合、2ワード訂正を行なう場合、3ワード以上の誤り
があり訂正不能と判定される場合の4種類の場合が考え
られる。そこで、第1の復号の状態を示すフラグとして
以下のようなものを考える。
第1の復号においては、誤り訂正を行なうと同時にこの
ようなフラグを各ワードに付加しておく。このように複
数のフラグを付加するのは復号を行なう時に生じる誤検
出及び誤訂正の確率が各場合によって異なるからであ
る。誤検出及び誤訂正の確率は訂正能力が大きい程高く
なる。この確率をp(Fi)とすると、 P(F0)<P(F1)<(F2) となる。したがって、第1の復号において複数の状態を
示すフラグを付加することにより、第2の復号において
訂正能力及び検出能力が共に優れた誤り訂正を行なうこ
とができる。
ようなフラグを各ワードに付加しておく。このように複
数のフラグを付加するのは復号を行なう時に生じる誤検
出及び誤訂正の確率が各場合によって異なるからであ
る。誤検出及び誤訂正の確率は訂正能力が大きい程高く
なる。この確率をp(Fi)とすると、 P(F0)<P(F1)<(F2) となる。したがって、第1の復号において複数の状態を
示すフラグを付加することにより、第2の復号において
訂正能力及び検出能力が共に優れた誤り訂正を行なうこ
とができる。
第2の復号においては、第1の復号で付加されたフラグ
により誤り位置を検知することができる。したがって、 という3種類の訂正方法が考えられる。
により誤り位置を検知することができる。したがって、 という3種類の訂正方法が考えられる。
p=0,q≦4の場合には、フラグの付加されている4
ワードまでの誤りを訂正することができる。訂正能力は
最も高い方式であるが、訂正ブロック内に第1の復号に
おける誤検出または誤訂正よるフラグの付加されていな
い誤りがあった場合には誤訂正になってしまう。したが
って、F0あるいはF1のような誤検出及び誤訂正の確
率の少ないフラグを誤りフラグとして用いる必要があ
る。なお、訂正ワード数が3ワード未満の場合には、シ
ンドロームチェックにより検出能力を高くすることがで
きる。
ワードまでの誤りを訂正することができる。訂正能力は
最も高い方式であるが、訂正ブロック内に第1の復号に
おける誤検出または誤訂正よるフラグの付加されていな
い誤りがあった場合には誤訂正になってしまう。したが
って、F0あるいはF1のような誤検出及び誤訂正の確
率の少ないフラグを誤りフラグとして用いる必要があ
る。なお、訂正ワード数が3ワード未満の場合には、シ
ンドロームチェックにより検出能力を高くすることがで
きる。
p=1,q≦2の場合には、フラグの付加されている2
ワードまでの誤り及び任意の1ワードの誤りの3ワード
までの誤りを訂正することができる。この場合には、フ
ラグの付加されていない1ワードの誤りを訂正すること
ができる。また、フラグの付加されているワードが3ワ
ード(または3ワード以下)あった場合に、そのうちの
2ワード(または1ワード)を誤り位置のわかった誤っ
た誤りとして残りの1ワードの誤り位置を検出し、その
結果がフラグの位置と一致するかどうかのチェックを行
なう方法を用いれば、検出能力を高くすることができ
る。
ワードまでの誤り及び任意の1ワードの誤りの3ワード
までの誤りを訂正することができる。この場合には、フ
ラグの付加されていない1ワードの誤りを訂正すること
ができる。また、フラグの付加されているワードが3ワ
ード(または3ワード以下)あった場合に、そのうちの
2ワード(または1ワード)を誤り位置のわかった誤っ
た誤りとして残りの1ワードの誤り位置を検出し、その
結果がフラグの位置と一致するかどうかのチェックを行
なう方法を用いれば、検出能力を高くすることができ
る。
p=2,q=0の場合には、任意の2ワードまでの誤り
を訂正することができる。この場合には、フラグの付加
されていない誤りがあっても2ワードまで訂正すること
ができる。また、検出した誤り位置がフラグの位置と一
致するかどうかのチェックを行なえば、検出能力を高く
することができる。
を訂正することができる。この場合には、フラグの付加
されていない誤りがあっても2ワードまで訂正すること
ができる。また、検出した誤り位置がフラグの位置と一
致するかどうかのチェックを行なえば、検出能力を高く
することができる。
第2の復号C2における、3種類の復号方法の具体的な
適用例を第3図に示すフローチャートに従って説明す
る。
適用例を第3図に示すフローチャートに従って説明す
る。
(1)F0フラグの数が4個以下の場合には、フラグの付
加されているワードを誤りワードとして4ワード以下の
誤り訂正を行なう。(2)F0フラグの数が5個以上でF
1フラグの数が3個以下の場合には、F1フラグの付加
されている2ワード(または1ワード)を誤りワードと
して1ワードの誤り位置検出を行ない、検出した誤り位
置がフラグの位置と一致した場合または誤りなしとなっ
た場合に3ワード以下の誤り訂正を行なう。なお、最初
に決める誤りワードとしては、F2フラグの付加されて
いるワードを優先する。
加されているワードを誤りワードとして4ワード以下の
誤り訂正を行なう。(2)F0フラグの数が5個以上でF
1フラグの数が3個以下の場合には、F1フラグの付加
されている2ワード(または1ワード)を誤りワードと
して1ワードの誤り位置検出を行ない、検出した誤り位
置がフラグの位置と一致した場合または誤りなしとなっ
た場合に3ワード以下の誤り訂正を行なう。なお、最初
に決める誤りワードとしては、F2フラグの付加されて
いるワードを優先する。
(3)F1フラグの数が5個以上でF1フラグの数が4個
以上の場合には、2ワードまでの誤り位置検出を行な
い、検出した誤り位置にF1フラグが付加されていた場
合に2ワード以下の誤り訂正を行なう。
以上の場合には、2ワードまでの誤り位置検出を行な
い、検出した誤り位置にF1フラグが付加されていた場
合に2ワード以下の誤り訂正を行なう。
(4)、(3)の場合において、F2フラグの状態によってさ
らに細かい判断を行うことによって誤り検出能力を高く
することができる。
らに細かい判断を行うことによって誤り検出能力を高く
することができる。
以上述べたように、本発明の復号方法によれば、3ワー
ドまたは4ワードまでの誤りを訂正することができ、従
来の2ワードまでの誤り訂正を行なう方法に比べて訂正
能力を高することができる。また、フラグの状態に応じ
て最適な復号方法を用いることにより、誤り検出能力も
高くすることができる。
ドまたは4ワードまでの誤りを訂正することができ、従
来の2ワードまでの誤り訂正を行なう方法に比べて訂正
能力を高することができる。また、フラグの状態に応じ
て最適な復号方法を用いることにより、誤り検出能力も
高くすることができる。
また、本発明の誤り訂正方式はCIRC符号以外の復号、例
えば、第2の検査ワードの生成には巡回符号(CRC符
号)を用い、第1の復号では誤り検出のみを行なうよう
な場合にも適用できる。
えば、第2の検査ワードの生成には巡回符号(CRC符
号)を用い、第1の復号では誤り検出のみを行なうよう
な場合にも適用できる。
次に、本発明の誤り訂正装置のCIRC符号に適用した一実
施例について説明する。
施例について説明する。
第4図は、誤り訂正装置のブロック図である。同図にお
いて、17〜19はバスライン、20はシンドローム生成回
路、21,22ROM、25,27,29はRAM、24は演算回路、26は
カウンタ、28は比較回路、30は条件判断回路、31はプロ
グラムROM、32はアドレスカウンタである。
いて、17〜19はバスライン、20はシンドローム生成回
路、21,22ROM、25,27,29はRAM、24は演算回路、26は
カウンタ、28は比較回路、30は条件判断回路、31はプロ
グラムROM、32はアドレスカウンタである。
本回路は、3本のバスライン及びそのバスラインに接続
されている回路と、プログラムにより各回路の動作をコ
ントロールするコントロール回路より構成されている。
バスライン17は受信信号や誤りパターン等のデータをや
りとりするデータバス,バスライン18はデータの位置
(ロケーション)等のデータをやりとりするロケーショ
ンバス,バスライン19はデータに付加されるフラグのデ
ータをやりとりするフラグバスである。また、各バスに
は、それぞれデータ入出力端子12,ロケーション入出力
端子13,フラグ入出力端子14が接続されている。
されている回路と、プログラムにより各回路の動作をコ
ントロールするコントロール回路より構成されている。
バスライン17は受信信号や誤りパターン等のデータをや
りとりするデータバス,バスライン18はデータの位置
(ロケーション)等のデータをやりとりするロケーショ
ンバス,バスライン19はデータに付加されるフラグのデ
ータをやりとりするフラグバスである。また、各バスに
は、それぞれデータ入出力端子12,ロケーション入出力
端子13,フラグ入出力端子14が接続されている。
シンドローム生成回路20は、データ入出力端子12より入
力された受信信号によりシンドロームS0〜S3を生成
する。シンドローム生成回路20は、第5図のような回路
で構成されている。第5図において、42はEOR回路、44
は8ビットラッチである。また、43はマトリックス演算
回路であり、S0生成回路では“1”,S1生成回路で
は“α”,S2生成回路では“α2”,S3生成回路で
は“α3”と入力信号との積を出力する。第4図に示し
たのはS1生成回路の例である。この回路に、入力端子
38に受信信号を入力し、ラッチ44のクロック入力端子40
に受信信号に同期したクロック信号を入力することによ
り、受信信号を入力し終わった時点で出力端子39にシン
ドロームが出力される。なお、クリア信号入力端子41
は、シンドローム生成を行なう前にラッチをクリアする
ためのものである。
力された受信信号によりシンドロームS0〜S3を生成
する。シンドローム生成回路20は、第5図のような回路
で構成されている。第5図において、42はEOR回路、44
は8ビットラッチである。また、43はマトリックス演算
回路であり、S0生成回路では“1”,S1生成回路で
は“α”,S2生成回路では“α2”,S3生成回路で
は“α3”と入力信号との積を出力する。第4図に示し
たのはS1生成回路の例である。この回路に、入力端子
38に受信信号を入力し、ラッチ44のクロック入力端子40
に受信信号に同期したクロック信号を入力することによ
り、受信信号を入力し終わった時点で出力端子39にシン
ドロームが出力される。なお、クリア信号入力端子41
は、シンドローム生成を行なう前にラッチをクリアする
ためのものである。
演算回路24は、上記シンドローム生成回路で生成された
シンドロームS0〜S3によって誤り位置及び誤りパタ
ーンを求めるための演算を行なうものである。演算回路
では、GF(28)上での乗算、除算及び加算を行なう。
X(=αx)とY(=αy)のGF(28)上での乗算、除算
は以下のようになる。
シンドロームS0〜S3によって誤り位置及び誤りパタ
ーンを求めるための演算を行なうものである。演算回路
では、GF(28)上での乗算、除算及び加算を行なう。
X(=αx)とY(=αy)のGF(28)上での乗算、除算
は以下のようになる。
第6図は、乗算/除算回路である。48,49はROMであ
り、入力端子45,46に入力されたX,Yに対してそれぞ
れx,yを出力する。50は加算/減算回路であり、乗算
の場合には加算,除算の場合には減算を行なう。51はRO
Mであり、加算/減算回路50の出力x±yに対して、α
x±yを出力端子47に出力する。GF(28)での加算は
第7図に示すように、各ビットでmod 2の加算を行な
えばよい。
り、入力端子45,46に入力されたX,Yに対してそれぞ
れx,yを出力する。50は加算/減算回路であり、乗算
の場合には加算,除算の場合には減算を行なう。51はRO
Mであり、加算/減算回路50の出力x±yに対して、α
x±yを出力端子47に出力する。GF(28)での加算は
第7図に示すように、各ビットでmod 2の加算を行な
えばよい。
RAM 25は、シンドロームS0〜S3や演算回路25での
演算結果を記憶しておくためのものである。また、23は
8入力OR回路であり、データバス17上のデータが
“0”かどうかを判断するためのものである。
演算結果を記憶しておくためのものである。また、23は
8入力OR回路であり、データバス17上のデータが
“0”かどうかを判断するためのものである。
ROM 21,22は、iとαiの変換を行なうためのROMであ
る。外部回路とのやりとりを行なう場合には、データの
位置はi=0〜31となるが前述したように、復号の演算
を行なう場合にはαiの形で取り扱われる。したがっ
て、このROM21,22でiとαiの変換を行なっている。R
OM21はi→αi,ROM22はαi→iの変換を行なうROMで
ある。
る。外部回路とのやりとりを行なう場合には、データの
位置はi=0〜31となるが前述したように、復号の演算
を行なう場合にはαiの形で取り扱われる。したがっ
て、このROM21,22でiとαiの変換を行なっている。R
OM21はi→αi,ROM22はαi→iの変換を行なうROMで
ある。
カウンタ26は1ブロック内のフラグ数をカウントするも
のである。第2の復号では、カウンタ26でF0,F1,
F2の数をカウントし、その数を比較回路28によって所
定の数と比較し、何ワードの訂正を行なうか、あるいは
訂正を行なうか訂正を行なわないで訂正不能とするか等
の判断を行なう。
のである。第2の復号では、カウンタ26でF0,F1,
F2の数をカウントし、その数を比較回路28によって所
定の数と比較し、何ワードの訂正を行なうか、あるいは
訂正を行なうか訂正を行なわないで訂正不能とするか等
の判断を行なう。
ROM27は、カウンタ26でカウントしてフラグ数や誤り位
置等を記憶しておくためのものである。また、比較回路
28は、上述したフラグ数と所定の数の比較や、復号処理
途中におけるデータと定数の比較に用いられる。
置等を記憶しておくためのものである。また、比較回路
28は、上述したフラグ数と所定の数の比較や、復号処理
途中におけるデータと定数の比較に用いられる。
ROM29は、第2の復号においてデータに付加されている
第1の復号の結果を示すフラグF0〜F2を記憶してお
くものである。ROM29に記憶されているフラグの状況
は、復号よって求められた誤り位置におけるフラグの有
無をチェックするために用いられる。
第1の復号の結果を示すフラグF0〜F2を記憶してお
くものである。ROM29に記憶されているフラグの状況
は、復号よって求められた誤り位置におけるフラグの有
無をチェックするために用いられる。
条件判断回路30は、OR回路23や比較回路28で判断された
結果やROM29に記憶されているフラグの状況に基づいて
プログラムの分岐を行なうかどうかを判断するものであ
る。
結果やROM29に記憶されているフラグの状況に基づいて
プログラムの分岐を行なうかどうかを判断するものであ
る。
プログラムROM31は、上述した各回路をコントロールし
て復号を行なうためのプログラムを記憶しておくもので
ある。プログラムの構成を第8図に示す。1ワードは32
ビットで構成されている。52は各回路の入力部にあるレ
ジスタのうちデータを記憶するレジスタを選択する。53
は各回路の出力部にあるバッファのうちデータを出力す
るバッファを選択する。52及び53により、任意の回路か
ら任意の回路へバスラインを通してデータを転送するこ
とができる。54はROM25又はRAM27へのデータの書込みを
行なうものである。なお、RAM29へのデータの書込みは
受信信号の入力時のみに行なわれるため、プログラムで
コントロールする必要はない。55は、演算回路24におけ
る乗算、除算の選択等を行なうものである。33は、RAM
のアドレスの決定や各バスライン及び比較回路へ入力す
る定数を決めるものである。34はプログラムの分岐を行
なう場合の条件を決めるものであり条件判断回路30では
34の内容とOR回路23,比較回路28,RAM29等の状況を比
較して分岐を行なうかどうかを決定する。35は分岐する
場合の分岐先を決めるものである。本発明の回路では40
0ワード程度のプログラムでCIRC符号の復号を行なうこ
とができる。
て復号を行なうためのプログラムを記憶しておくもので
ある。プログラムの構成を第8図に示す。1ワードは32
ビットで構成されている。52は各回路の入力部にあるレ
ジスタのうちデータを記憶するレジスタを選択する。53
は各回路の出力部にあるバッファのうちデータを出力す
るバッファを選択する。52及び53により、任意の回路か
ら任意の回路へバスラインを通してデータを転送するこ
とができる。54はROM25又はRAM27へのデータの書込みを
行なうものである。なお、RAM29へのデータの書込みは
受信信号の入力時のみに行なわれるため、プログラムで
コントロールする必要はない。55は、演算回路24におけ
る乗算、除算の選択等を行なうものである。33は、RAM
のアドレスの決定や各バスライン及び比較回路へ入力す
る定数を決めるものである。34はプログラムの分岐を行
なう場合の条件を決めるものであり条件判断回路30では
34の内容とOR回路23,比較回路28,RAM29等の状況を比
較して分岐を行なうかどうかを決定する。35は分岐する
場合の分岐先を決めるものである。本発明の回路では40
0ワード程度のプログラムでCIRC符号の復号を行なうこ
とができる。
カウンタ32は、プログラムのアドレスをコントロールす
るものである。このカウンタは、マスタークロック入力
15より入力されるクロックによりプログラムROM31のア
ドレスを進め、プログラムを実行させる。また、プログ
ラムの分岐を行なう場合には、分岐命令37により分岐先
アドレス35をカウンタにロードし、プログラムを分岐さ
せる。なお、入力端子16は、プログラムスタート時にカ
ウンタ32をリセットする信号を入力するものである。
るものである。このカウンタは、マスタークロック入力
15より入力されるクロックによりプログラムROM31のア
ドレスを進め、プログラムを実行させる。また、プログ
ラムの分岐を行なう場合には、分岐命令37により分岐先
アドレス35をカウンタにロードし、プログラムを分岐さ
せる。なお、入力端子16は、プログラムスタート時にカ
ウンタ32をリセットする信号を入力するものである。
誤り訂正を行なう手順としては、まず、受信信号を入力
し、シンドロームS0〜S3の生成を行ない、第2の復
号ではフラグ数のカウント、フラグの状態のRAM29への
記憶を行なう。次にプログラムにより復号を行ない、誤
り位置及び誤りパターンを求め、(10)式によって誤りデ
ータの訂正を行なう。また、第1の復号及び第2の復号
において訂正不能となった場合には、フラグ入出力14よ
りデータに付加するフラグを出力する。
し、シンドロームS0〜S3の生成を行ない、第2の復
号ではフラグ数のカウント、フラグの状態のRAM29への
記憶を行なう。次にプログラムにより復号を行ない、誤
り位置及び誤りパターンを求め、(10)式によって誤りデ
ータの訂正を行なう。また、第1の復号及び第2の復号
において訂正不能となった場合には、フラグ入出力14よ
りデータに付加するフラグを出力する。
以上述べたように、本発明の誤り訂正装置では、プログ
ラムにより各回路をコントロールする方式を用いてお
り、回路規模が小さく、また異なる復号方法に対しても
プログラムの変更のみによって対処できる。
ラムにより各回路をコントロールする方式を用いてお
り、回路規模が小さく、また異なる復号方法に対しても
プログラムの変更のみによって対処できる。
本発明によれば、誤り検出及び訂正に用いられる符号の
能力を最大限に活用することができ誤り検出能力及び訂
正能力を向上させることができる。
能力を最大限に活用することができ誤り検出能力及び訂
正能力を向上させることができる。
第1図はCIRC符号の符号化回路図、第2図はCIRC符号の
復号回路図、第3図は本発明によるCIRC符号の第2の復
号手順の概略フローチャート図、第4図は本発明のブロ
ック図、第5図はシンドローム生成回路図、第6図はGF
(28)上の乗算/除算回路図、第7図はGF(28)上
の加算回路図、第8図はプログラムの構成図である。 20……シンドローム生成回路 21,22……ROM 23……OR回路 24……演算回路 25,27,29……RAM 26……カウンタ 28……比較回路 30……条件判断回路 31……プログラムROM 32……アドレスカウンタ
復号回路図、第3図は本発明によるCIRC符号の第2の復
号手順の概略フローチャート図、第4図は本発明のブロ
ック図、第5図はシンドローム生成回路図、第6図はGF
(28)上の乗算/除算回路図、第7図はGF(28)上
の加算回路図、第8図はプログラムの構成図である。 20……シンドローム生成回路 21,22……ROM 23……OR回路 24……演算回路 25,27,29……RAM 26……カウンタ 28……比較回路 30……条件判断回路 31……プログラムROM 32……アドレスカウンタ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 野口 敬治 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所家電研究所内 (72)発明者 荒井 孝雄 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所家電研究所内 (72)発明者 渋谷 敏文 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所家電研究所内 (56)参考文献 特開 昭58−29237(JP,A) 電子通信学会技術研究報告、82〔18〕
Claims (4)
- 【請求項1】複数の情報ワードと上記複数の情報ワード
に対して付加された最小距離がd1(d1は2以上の整
数)である第1の検査ワードとにより構成される第1の
符号ブロックの多数個よりなるデータブロックに対し
て、第1の符号ブロックの各々から選ばれたワードから
なるデータ系列とこのデータ系列に対して付加された最
小距離がd2(d2は2以上の整数)である第2の検査
ワードとにより、複数個の第2の符号ブロックが形成さ
れるように、2重に符号化された符号語の復号を行う誤
り訂正方法であり、 上記第2の検査ワードを用いて第2の符号ブロックの誤
り検査・訂正を行い、誤りの検出状態を示すフラグを上
記第2の検査ワードが付加された上記データ系列の各々
に対して発生し、 上記第1の検査ワード及び上記フラグを用いて上記第1
の符号ブロックの誤り検出・訂正を行う際に、 上記第1の符号ブロックの上記フラグが付加されている
ワードのうちの上記フラグが付加されたワードに誤りが
あるとして上記第1の検査ワードによる訂正の対象とす
るワードの個数と上記訂正の対象とされたワード以外の
上記第1の符号ブロックのうちの上記第1の検査ワード
による誤りの位置検出と訂正の対象とするワードの個数
との組合せを、上記第1の検査ワードの最小距離d1で
決まる組合せのうちの上記フラグの状態に応じたいずれ
かに設定し、誤り訂正を行うことを特徴とする誤り訂正
方法。 - 【請求項2】上記第2の検査ワードを用いた第2の符号
ブロックの誤り検出・訂正では、2p1≦d2−1であ
るp1個のワード誤り訂正が行われ、 上記第1の検査ワード及び上記フラグを用いた第1の検
査ワードが付加された複数の情報ワードの誤り検出・訂
正では、 2p2+q2≦d1−1であるp2個の誤り位置を検出
してその誤りを訂正するワード及びq2個の上記フラグ
の付加されているワードに誤りがあるとしてその誤りを
訂正するワードの組合せによる誤り訂正が行われ、か
つ、上記訂正ワード数p2及びd2は発生されたフラグ
の状態により変化することを特徴とする特許請求の範囲
第1項記載の誤り訂正方法。 - 【請求項3】上記訂正ワード数p2及びq2は、発生さ
れたフラグの数に依存して変化することを特徴とする特
許請求の範囲第2項記載の誤り訂正方法。 - 【請求項4】1符号ブロックの情報ワード,検査ワード
及び上記情報ワードや検査ワードに付加されている第1
の訂正の状態を示すフラグを用いて第2の訂正を行う誤
り訂正装置において、 上記情報ワード及び検査ワードよりシンドロームを生成
するシンドローム生成回路と、 上記情報ワード及び検査ワードに付加されているフラグ
数をカウントするカウンタと、 上記情報ワード及び検査ワードに付加されているフラグ
の位置を記憶する記憶回路と、 上記シンドローム生成回路で生成されたシンドロームの
値及び上記記憶回路に記憶されているフラグの付加され
ているワードの位置を用いてガロア体上の演算を行う演
算回路と、 上記演算回路を制御し、上記符号ブロックの上記フラグ
が付加されているワードのうちの上記フラグが付加され
たワードに誤りがあるとして上記検査ワードによる上記
第2の訂正の対象とするワードの個数と上記訂正の対象
とされたワード以外の上記符号ブロックのうちの上記検
査ワードよる誤りの位置検出と上記第2の訂正の対象と
するワードの個数との組合せを、上記検査ワードの最小
距離で決まる組合せのうちの上記カウンタでカウントさ
れたフラグの数に応じたいずれかに設定し、誤り訂正を
行う制御回路と よりなることを特徴とする誤り訂正装置。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58110931A JPH0636286B2 (ja) | 1983-06-22 | 1983-06-22 | 誤り訂正方法及び装置 |
| DE8484107110T DE3483375D1 (de) | 1983-06-22 | 1984-06-20 | Verfahren und system zur fehlerkorrektur. |
| EP84107110A EP0129849B1 (en) | 1983-06-22 | 1984-06-20 | Error correction method and system |
| US06/622,711 US4677622A (en) | 1983-06-22 | 1984-06-20 | Error correction method and system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58110931A JPH0636286B2 (ja) | 1983-06-22 | 1983-06-22 | 誤り訂正方法及び装置 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5590493A Division JP2500141B2 (ja) | 1993-03-16 | 1993-03-16 | 誤り訂正方法及び装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS605478A JPS605478A (ja) | 1985-01-12 |
| JPH0636286B2 true JPH0636286B2 (ja) | 1994-05-11 |
Family
ID=14548228
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58110931A Expired - Lifetime JPH0636286B2 (ja) | 1983-06-22 | 1983-06-22 | 誤り訂正方法及び装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0636286B2 (ja) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6280875A (ja) * | 1985-10-04 | 1987-04-14 | Sony Corp | 誤り訂正処理装置 |
| JP2823158B2 (ja) * | 1986-09-30 | 1998-11-11 | キヤノン株式会社 | 誤り訂正装置 |
| JPS63138815A (ja) * | 1986-11-29 | 1988-06-10 | Nec Home Electronics Ltd | 符号誤り訂正回路 |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5829237A (ja) * | 1981-08-14 | 1983-02-21 | Sony Corp | エラ−訂正方法 |
-
1983
- 1983-06-22 JP JP58110931A patent/JPH0636286B2/ja not_active Expired - Lifetime
Non-Patent Citations (1)
| Title |
|---|
| 電子通信学会技術研究報告、82〔18〕 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS605478A (ja) | 1985-01-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR880000426B1 (ko) | 이중 부호화 리드 솔로몬 코드에 대한 복호화 방법 및 장치 | |
| EP0129849B1 (en) | Error correction method and system | |
| EP0167627A1 (en) | Method and apparatus for decoding error correction code | |
| CN111628780B (zh) | 数据编码、解码方法及数据处理系统 | |
| EP0233075B1 (en) | Method and apparatus for generating error detection check bytes for a data record | |
| CN111597072B (zh) | 差错控制编码ecc系统及包括ecc系统的存储器设备 | |
| JPH10107650A (ja) | 誤り検出回路および誤り訂正回路 | |
| CA1291819C (en) | Decoder | |
| JPH0831806B2 (ja) | エラー訂正方法 | |
| JPH10112659A (ja) | 誤り訂正復号装置 | |
| JPS6316929B2 (ja) | ||
| JPS632370B2 (ja) | ||
| JPH058610B2 (ja) | ||
| EP0431576A2 (en) | BCH code decoder and method for decoding a BCH code | |
| JPH0636286B2 (ja) | 誤り訂正方法及び装置 | |
| JPH08293802A (ja) | インターリーブ式誤り訂正方法 | |
| KR100330642B1 (ko) | 오류정정방법및오류정정장치 | |
| EP0571019A2 (en) | Extended error protected communication system | |
| JP2500141B2 (ja) | 誤り訂正方法及び装置 | |
| JPH0691471B2 (ja) | 誤り訂正回路 | |
| JPH0365698B2 (ja) | ||
| JP2518827B2 (ja) | 符号化復号化装置 | |
| JP2605269B2 (ja) | エラー訂正方法 | |
| JPH0133055B2 (ja) | ||
| JPH0827731B2 (ja) | 誤り訂正方法及び装置 |