JPS6041771B2 - 二重誤り訂正回路 - Google Patents
二重誤り訂正回路Info
- Publication number
- JPS6041771B2 JPS6041771B2 JP53012588A JP1258878A JPS6041771B2 JP S6041771 B2 JPS6041771 B2 JP S6041771B2 JP 53012588 A JP53012588 A JP 53012588A JP 1258878 A JP1258878 A JP 1258878A JP S6041771 B2 JPS6041771 B2 JP S6041771B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- bits
- error correction
- syndrome
- 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
Links
Landscapes
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Description
【発明の詳細な説明】
本発明は二重誤り訂正回路に関し、特に並列データに対
する二重ランダム誤り訂正回路に関する。
する二重ランダム誤り訂正回路に関する。
データ処理装置のメモリには信頼性を向上させるために
、従来から主として単一誤り訂正兼二重誤り検出ハミン
グ符号が用いられてきた。
、従来から主として単一誤り訂正兼二重誤り検出ハミン
グ符号が用いられてきた。
この符号化システムでは特定個数のデータビットに最少
個数のチェックビットを付加してメモリに記憶しておき
、メモリから読み出す時に生じる単一誤りを訂正し、か
つ又二重誤りを検出している。前記符号化システムの特
徴は付加されるチェックビットの個数が少なくて済むと
いうことと、簡単な回路によつて前記誤りが並列的に訂
正兼検出できることにある。しかしながら、メモリの信
頼性を更に向上させるには二重ランダム誤り訂正システ
ムを採用することが望ましい。この二重ランダム誤りは
、例えば、周知の二重誤り訂正■…符号すなわちボーゼ
シヨードウリ符号(Bose一Chaudhuri符
号)によつても訂正される。しかしこのBCH符号を採
用すると並列的に二重誤りを訂正するための相当多量で
かつ複雑な論理回路が必要になるという欠点をもつてい
る比較的簡単な回路によつて二重誤りを訂正できる符号
には多数決論号可能二重誤り訂正符号がある。この符号
を用いれば二重ランダム誤りが多数決論理によつて並列
的に訂正され得る。特許公告公報昭和4奔一2013号
に記述される直交ラテン方陣符号は前記多数決論号可能
二重誤り訂正符号の良好な一例てある。前記直交ラテン
方陣符号では、mを1より大きい任意の整数とするとイ
個のデータビットに4m個のチェックビットを付加する
ことにより二重ランダム誤りが訂正される。この符号を
用いた誤り訂正システムは簡単な多数決論理回路によつ
て二重誤りが並列的に訂正できるという利点を有してい
るものの、一個のデータビットに4m個の多重なチェッ
クビットを付加する必要があるという、欠点を併せもつ
ている。したがつて前記直交ラテン方陣符号よりも少な
い冗長度を有する多数決論号可能二重誤り訂正符号を用
いた誤り訂正システムの実現が望まれる〔ここで冗長度
は冗長度■(チェックビットの個数)/(チェックビッ
トの個数+データビットの個数)で定義され、前記ラテ
ン方陣符号の冗長度は4m/(d+4m)=4/(m+
4)で与えられる〕。しかしながら、これまで上述のよ
うな二重誤り訂正システムは存在しなかつた。本発明の
目的は従来の多数決復号可能二重誤り訂正符号よりも少
ない冗長度を有する多数決復号可能二重誤り訂正符号を
用いた新規な二重誤り訂一正回路を提供することにある
。
個数のチェックビットを付加してメモリに記憶しておき
、メモリから読み出す時に生じる単一誤りを訂正し、か
つ又二重誤りを検出している。前記符号化システムの特
徴は付加されるチェックビットの個数が少なくて済むと
いうことと、簡単な回路によつて前記誤りが並列的に訂
正兼検出できることにある。しかしながら、メモリの信
頼性を更に向上させるには二重ランダム誤り訂正システ
ムを採用することが望ましい。この二重ランダム誤りは
、例えば、周知の二重誤り訂正■…符号すなわちボーゼ
シヨードウリ符号(Bose一Chaudhuri符
号)によつても訂正される。しかしこのBCH符号を採
用すると並列的に二重誤りを訂正するための相当多量で
かつ複雑な論理回路が必要になるという欠点をもつてい
る比較的簡単な回路によつて二重誤りを訂正できる符号
には多数決論号可能二重誤り訂正符号がある。この符号
を用いれば二重ランダム誤りが多数決論理によつて並列
的に訂正され得る。特許公告公報昭和4奔一2013号
に記述される直交ラテン方陣符号は前記多数決論号可能
二重誤り訂正符号の良好な一例てある。前記直交ラテン
方陣符号では、mを1より大きい任意の整数とするとイ
個のデータビットに4m個のチェックビットを付加する
ことにより二重ランダム誤りが訂正される。この符号を
用いた誤り訂正システムは簡単な多数決論理回路によつ
て二重誤りが並列的に訂正できるという利点を有してい
るものの、一個のデータビットに4m個の多重なチェッ
クビットを付加する必要があるという、欠点を併せもつ
ている。したがつて前記直交ラテン方陣符号よりも少な
い冗長度を有する多数決論号可能二重誤り訂正符号を用
いた誤り訂正システムの実現が望まれる〔ここで冗長度
は冗長度■(チェックビットの個数)/(チェックビッ
トの個数+データビットの個数)で定義され、前記ラテ
ン方陣符号の冗長度は4m/(d+4m)=4/(m+
4)で与えられる〕。しかしながら、これまで上述のよ
うな二重誤り訂正システムは存在しなかつた。本発明の
目的は従来の多数決復号可能二重誤り訂正符号よりも少
ない冗長度を有する多数決復号可能二重誤り訂正符号を
用いた新規な二重誤り訂一正回路を提供することにある
。
本発明の二重誤り訂正回路はmを3以上の任意の奇数と
して、d+艮(m−1)個のデータビットに伍+1個の
チェックビットを付加する符号−化回路と、前記データ
ビット及びチェックビットからシンドロームビツトを発
生する回路とこのシンドロームビツト発生回路の出力を
多数決論理によつて解続することによつて上記データビ
ット及びチェックビット内に生じた1個又は2個のラン
ダム誤りを訂正する多数決回路を有する復号回路とから
構成されている。
して、d+艮(m−1)個のデータビットに伍+1個の
チェックビットを付加する符号−化回路と、前記データ
ビット及びチェックビットからシンドロームビツトを発
生する回路とこのシンドロームビツト発生回路の出力を
多数決論理によつて解続することによつて上記データビ
ット及びチェックビット内に生じた1個又は2個のラン
ダム誤りを訂正する多数決回路を有する復号回路とから
構成されている。
以下図面を参照して本発明の詳細な説明する。
第1図はデータ処理装置内におけるメモリと本発明の誤
り訂正回路との関係を示すブロック図で5ある。第1図
において符号化回路1は演算回路4において発生された
データからチェックビットを生成する。このデータはチ
ェックビットと共にメモリ2に貯えられる。後に必要と
するときこのデータはチェックビットと共にメモリ2か
ら読み出一され、復号化回路3によつて誤りを訂正され
た後に再び演算回路4に供給される。以下では、本発明
に用いる多数決復号可能二重誤り訂正符号の構成及び前
記符号の符号化回路1と復号化回路3の構成を一例をも
つて説明する。
り訂正回路との関係を示すブロック図で5ある。第1図
において符号化回路1は演算回路4において発生された
データからチェックビットを生成する。このデータはチ
ェックビットと共にメモリ2に貯えられる。後に必要と
するときこのデータはチェックビットと共にメモリ2か
ら読み出一され、復号化回路3によつて誤りを訂正され
た後に再び演算回路4に供給される。以下では、本発明
に用いる多数決復号可能二重誤り訂正符号の構成及び前
記符号の符号化回路1と復号化回路3の構成を一例をも
つて説明する。
最初にm=5の場合を例として前記符号及び回路構成を
説明する。この場合、m=5であるから31〔=d+艮
(m−1)〕個のデータビットに16(=伍+1)個の
チェックビットを付加することとなり本発明で用いる二
重誤り訂正符号が得られる。
説明する。この場合、m=5であるから31〔=d+艮
(m−1)〕個のデータビットに16(=伍+1)個の
チェックビットを付加することとなり本発明で用いる二
重誤り訂正符号が得られる。
以下では前記31個のデータビットをDl,d2,d3
,・・,D3O,d3lと表わし、前記16個のチェッ
クビットをC。O,ClO9Cll9Cl29Cl39
Cl49C2O9C2l93O9C249C3O,C3
l,・・,C3,と表わす。ここでD,及びCIJは1
またはOのいづれかの値をとる。本発明による符号化回
路1は次の関係式(1),(2),(3),(4)に則
してデータビットからチェックビットを発生する。(こ
こで以後の全ての式において1記号は排他的0Rを示し
、Σ4は排他的0Rに関する総和を示すものとする。)
チェックビットを発生する前記関係式(1),(2),
(3),(4)をそれらの係数を与える符号化行列jに
よつて表わすとすれば玩は第2図で与えられる。
,・・,D3O,d3lと表わし、前記16個のチェッ
クビットをC。O,ClO9Cll9Cl29Cl39
Cl49C2O9C2l93O9C249C3O,C3
l,・・,C3,と表わす。ここでD,及びCIJは1
またはOのいづれかの値をとる。本発明による符号化回
路1は次の関係式(1),(2),(3),(4)に則
してデータビットからチェックビットを発生する。(こ
こで以後の全ての式において1記号は排他的0Rを示し
、Σ4は排他的0Rに関する総和を示すものとする。)
チェックビットを発生する前記関係式(1),(2),
(3),(4)をそれらの係数を与える符号化行列jに
よつて表わすとすれば玩は第2図で与えられる。
但し、第211F5において空なる行列要素は0である
。第2図の行列比を用いれば前記関係式(1),(2)
,(3),(4)は次式のようなベクトルと行列の乗算
て表わされる。既に述べたように第1図の符号化回路1
は式(1),(2),(3)及び(4),あるいは式(
5)に則してデータビットとからチェックビットを発生
する。
。第2図の行列比を用いれば前記関係式(1),(2)
,(3),(4)は次式のようなベクトルと行列の乗算
て表わされる。既に述べたように第1図の符号化回路1
は式(1),(2),(3)及び(4),あるいは式(
5)に則してデータビットとからチェックビットを発生
する。
例えばチェックビットClOは式(2)のようにデータ
ビットDl,d2,d3,d4,d5及びD26の排他
ビρRをとることにより生成されるが、これは、第3図
のように6個の入力を有する排他的0R回路5によつて
容易に実現される。他の14個のチェックビットCll
9Cl29Cl3?Cl49C2O9C2l9l9C2
49C′309C31,・・・C34を生成する回路も
同様式(2),(3)又は(4)に則してデータビット
の排他的0Rをとる回路によつて実現される。又チェッ
クビットC。Oは式(1)により、全てのデータビット
Dl,d2,d3,・・,D3O,d3lの排他的0R
をとつて生成される式(1)及び(2)に着目すればC
。Oは次式(6)によつても表わされる。従つて式(6
)によればチェックビットC。
ビットDl,d2,d3,d4,d5及びD26の排他
ビρRをとることにより生成されるが、これは、第3図
のように6個の入力を有する排他的0R回路5によつて
容易に実現される。他の14個のチェックビットCll
9Cl29Cl3?Cl49C2O9C2l9l9C2
49C′309C31,・・・C34を生成する回路も
同様式(2),(3)又は(4)に則してデータビット
の排他的0Rをとる回路によつて実現される。又チェッ
クビットC。Oは式(1)により、全てのデータビット
Dl,d2,d3,・・,D3O,d3lの排他的0R
をとつて生成される式(1)及び(2)に着目すればC
。Oは次式(6)によつても表わされる。従つて式(6
)によればチェックビットC。
Oは第3図の回路で発生されるチェックビットClO,
Cll,Cl2,Cl3及びCl4の排他的0Rをとつ
て生成される。すなわち、COOは第4図のように5個
の入力を.有する排他的0R回路6によつて発生される
。
Cll,Cl2,Cl3及びCl4の排他的0Rをとつ
て生成される。すなわち、COOは第4図のように5個
の入力を.有する排他的0R回路6によつて発生される
。
以上のようにして生成された1帽のチェックビットCO
O9Cll9Cl29Cl39Cl49C2O9l9C
249C知・・,C34は31個のデータビットDl,
d2,・・,D3lと共にメモリに書き込まれる。必要
に応じて、これ,らのチェックビット、データビットは
メモリから読み出される。以下においてはメモリから読
み出されたチェックビット、データビットにはダツシユ
記号を付けて表わすものとする。すなわち読み出しされ
たチェックビットはC″00C″10C″11,C12
,σ139C5149C′20919C′249σ30
▼09C′34と表わし、データビットはd″1,d″
2,・・,d″ょと表わすものとする。メモリから読み
出されたこれらのビットに生じた2個以下の誤りはデコ
ーダ(復号化回路)によつて訂正される。以下において
デコーダについて説明する。第5図はデコーダのブロッ
ク図である。
O9Cll9Cl29Cl39Cl49C2O9l9C
249C知・・,C34は31個のデータビットDl,
d2,・・,D3lと共にメモリに書き込まれる。必要
に応じて、これ,らのチェックビット、データビットは
メモリから読み出される。以下においてはメモリから読
み出されたチェックビット、データビットにはダツシユ
記号を付けて表わすものとする。すなわち読み出しされ
たチェックビットはC″00C″10C″11,C12
,σ139C5149C′20919C′249σ30
▼09C′34と表わし、データビットはd″1,d″
2,・・,d″ょと表わすものとする。メモリから読み
出されたこれらのビットに生じた2個以下の誤りはデコ
ーダ(復号化回路)によつて訂正される。以下において
デコーダについて説明する。第5図はデコーダのブロッ
ク図である。
第5図のようにデコーダ40はシンドロームビツト発生
回路20と誤り訂正実行回路21とから構成されている
。メモリ2から読み出された前記31個のデ・ータビツ
ト及び1帽のチェックビットはまずシンドロームビツト
発生回路20に入力し1帽のシンドロームビツトに変換
される。このシンドロームビツトには誤りを訂正するの
に必要な情報が含まれており、この情報を誤り訂正実行
回路21が解読して誤り訂正を実行する。以下において
、まずシンドロームビツト発生回路20について説明す
る。シンドロームビツト発生回路20は1帽のチェック
ビットCOO9ClO9Cll9Cl29Cl39Cl
49C2O9゜O9C249C3O9゜゜9C34に対
応する1帽のシンドロームビツトSOO9SlO9Sl
l9Sl29Sl39Sl49S2O9l9S249S
珈09S34を発生するO例えばClOに対応するシン
ドロームビツトSlOは以下のように発生される。Cl
Oを発生する式は(2)式よりClO=Dl4d2ld
34d44d54d8であるがこれは次式のように書き
直される。シンドロームビツトSlOは上式の右辺Dl
,d2,d3,d4,d5,dぉ,ClOをそれぞれ読
み出された時の記号d″1,d゛2,d″3,d″4,
d″5,d″ぉ,c″10におきかえて得られる。
回路20と誤り訂正実行回路21とから構成されている
。メモリ2から読み出された前記31個のデ・ータビツ
ト及び1帽のチェックビットはまずシンドロームビツト
発生回路20に入力し1帽のシンドロームビツトに変換
される。このシンドロームビツトには誤りを訂正するの
に必要な情報が含まれており、この情報を誤り訂正実行
回路21が解読して誤り訂正を実行する。以下において
、まずシンドロームビツト発生回路20について説明す
る。シンドロームビツト発生回路20は1帽のチェック
ビットCOO9ClO9Cll9Cl29Cl39Cl
49C2O9゜O9C249C3O9゜゜9C34に対
応する1帽のシンドロームビツトSOO9SlO9Sl
l9Sl29Sl39Sl49S2O9l9S249S
珈09S34を発生するO例えばClOに対応するシン
ドロームビツトSlOは以下のように発生される。Cl
Oを発生する式は(2)式よりClO=Dl4d2ld
34d44d54d8であるがこれは次式のように書き
直される。シンドロームビツトSlOは上式の右辺Dl
,d2,d3,d4,d5,dぉ,ClOをそれぞれ読
み出された時の記号d″1,d゛2,d″3,d″4,
d″5,d″ぉ,c″10におきかえて得られる。
すなわちSlOは次の式によつて発生される。SlO=
d″14d″24d″31d″44d″54d″261
C″10同様にしてチェックビットの発生式(1),(
2),(3),(4)より以下のシンドロームビツトの
発生式(8),(9卜,[株],(11)が得られる。
d″14d″24d″31d″44d″54d″261
C″10同様にしてチェックビットの発生式(1),(
2),(3),(4)より以下のシンドロームビツトの
発生式(8),(9卜,[株],(11)が得られる。
すなわち 一ーー −ーー −
ーー −“ノ上式(8),(9),Al,(11)は第
2図の符号化行列塊を用いれば下式のように行列とベク
トルの演算で表わすことができる。シンドロームビツト
発生回路20は上記1帽のシンドロームビツトを上記(
8),(9),[相],(11)式に従つて発生する回
路である。
ーー −“ノ上式(8),(9),Al,(11)は第
2図の符号化行列塊を用いれば下式のように行列とベク
トルの演算で表わすことができる。シンドロームビツト
発生回路20は上記1帽のシンドロームビツトを上記(
8),(9),[相],(11)式に従つて発生する回
路である。
例えばシンドロームビツトSlOの発生は(9)式つり
第6図のように7個の入力を有する排他的0R回路50
によつて実施できる。他の托個のシンドロームビツトも
同様にして発生される。前述したように、第5図の誤り
訂正実行回路21はシンドロームビツト発生回路20に
よつて発生されたシンドロームビツトを解読して誤りの
訂正を実行するので、シンドロームビツトは誤り訂正に
必要な情報を有していなければならない。式(8),(
9),(10,(11)によつて発生されたシンドロー
ムビツトが上記の誤り訂正に必要な情報を有しているこ
とは以下のようにして解る。まず、データビットd1に
生じた誤りをE,とすると、メモリから読み出されたデ
ータビットd1は下式(12)によつて表わされること
に注意する必要がある。すなわち、D,が誤つているな
らば誤りE,はE,=1であり、正しければ虜=Oであ
る。同様にチェックビットC,,に生じた誤りをEiJ
とすると、メモリから読み出されたチェックビットCi
jか下式(13)によつて表わされる。入すれば(7)
式が成立するのでSlOは下式(14)で表わされるこ
とが分る。
第6図のように7個の入力を有する排他的0R回路50
によつて実施できる。他の托個のシンドロームビツトも
同様にして発生される。前述したように、第5図の誤り
訂正実行回路21はシンドロームビツト発生回路20に
よつて発生されたシンドロームビツトを解読して誤りの
訂正を実行するので、シンドロームビツトは誤り訂正に
必要な情報を有していなければならない。式(8),(
9),(10,(11)によつて発生されたシンドロー
ムビツトが上記の誤り訂正に必要な情報を有しているこ
とは以下のようにして解る。まず、データビットd1に
生じた誤りをE,とすると、メモリから読み出されたデ
ータビットd1は下式(12)によつて表わされること
に注意する必要がある。すなわち、D,が誤つているな
らば誤りE,はE,=1であり、正しければ虜=Oであ
る。同様にチェックビットC,,に生じた誤りをEiJ
とすると、メモリから読み出されたチェックビットCi
jか下式(13)によつて表わされる。入すれば(7)
式が成立するのでSlOは下式(14)で表わされるこ
とが分る。
これは(9)式のSlO,すなわちSlO=d″14d
″24d″31d″41d″5,d″ぉ4C″10に表
わされているd″1,d″2,d″3,d″4,d″5
,d″26,C″10をそれぞれ誤りEl9e29e3
9e49e59e269ElOに置きかえたものに等し
い。
″24d″31d″41d″5,d″ぉ4C″10に表
わされているd″1,d″2,d″3,d″4,d″5
,d″26,C″10をそれぞれ誤りEl9e29e3
9e49e59e269ElOに置きかえたものに等し
い。
同様に(8),(9),ACjj,(11)式のシンド
ロームビツトに表われている全てのd″,C″ょはそれ
ぞれ誤りEi,.Ejkに置きかえられることが示され
るので、結局全てのシンドロームビツトは誤りEi,.
Ejkだけで書きあられされる。以上のように全てのシ
ンドロームビツトは誤りEi..Ejkによつて表わさ
れるのて誤り訂正回路はまず必要なシンドロームビツト
から誤りEiを求め、ついで(12)式を書きかえた式
D,=d″61ejに上記の求められたE,を代人して
誤りを訂正し元のD,を求めることができる。
ロームビツトに表われている全てのd″,C″ょはそれ
ぞれ誤りEi,.Ejkに置きかえられることが示され
るので、結局全てのシンドロームビツトは誤りEi,.
Ejkだけで書きあられされる。以上のように全てのシ
ンドロームビツトは誤りEi..Ejkによつて表わさ
れるのて誤り訂正回路はまず必要なシンドロームビツト
から誤りEiを求め、ついで(12)式を書きかえた式
D,=d″61ejに上記の求められたE,を代人して
誤りを訂正し元のD,を求めることができる。
以下において誤り訂正方法及び誤り訂正実行回路21に
ついて説明する。
ついて説明する。
最初にデータビットd1に生じた誤りを訂正する方法及
び回路について説明する。
び回路について説明する。
式(8),(9),00,(11)の内でd″1を含ん
でいるシンドロームビツトはS。O,SlO,S9,S
34である。すなわちこれらは式(8),(9),(1
Cji,(11)よりである。 一”− 一
ーー ″″− 一”一いまS(X)を含む線形和A=S
OOlSl。lSl,lS2。lジ1S311S33を
作ると、この線形和は式(8),(9),Aa,(11
)よりである。
でいるシンドロームビツトはS。O,SlO,S9,S
34である。すなわちこれらは式(8),(9),(1
Cji,(11)よりである。 一”− 一
ーー ″″− 一”一いまS(X)を含む線形和A=S
OOlSl。lSl,lS2。lジ1S311S33を
作ると、この線形和は式(8),(9),Aa,(11
)よりである。
前述のようにシンドロームビツトに表われるd″,、C
″,,はそれぞれ誤りEi..Eijに置きかえられる
から、上記A,SlO,S2O,S34は次式(15)
,(16),(17),(18)に書き直される。すな
わち上記(15),(16),(17),(18)式を
注目すれば、誤りe1はSlO,S2O,Sl34,A
のどの式にも含まれており、かつ又SlO,S2O,S
34,Aはe1以外に共通の誤りビットを含んでいない
ことが分る。
″,,はそれぞれ誤りEi..Eijに置きかえられる
から、上記A,SlO,S2O,S34は次式(15)
,(16),(17),(18)に書き直される。すな
わち上記(15),(16),(17),(18)式を
注目すれば、誤りe1はSlO,S2O,Sl34,A
のどの式にも含まれており、かつ又SlO,S2O,S
34,Aはe1以外に共通の誤りビットを含んでいない
ことが分る。
この事実はあらゆる2個以下の誤りに対して、e1はS
lO,S2O,S34,の4個の内の3個をとる多数決
論理によつて正しく求まることを意味している。すなわ
ち誤りe1は次の(19)式によつて求まる。さらに前
述の(12)式、すなわちd″,=DjleiがD,=
d″,4e,と書きなおされることに着目すればd″1
の誤りは次の(20)式によつて訂正される。すなわち
(20)式によつてd1が求まる。(20)?龜i1ル
た誤りの訂正を実行する回路は例えば第7図によつて実
施される。第7図において60,61,62,65で示
される回路は2個の入力を有する排他的オアゲートてあ
り、63の回路は4個の入力を有する排他的オアゲート
であり、又64て示される回路は4個の入力を有する多
数決回路てある。多数決回路64は4個の入力のうち3
個以上の入力が同時に論理1になるときだけ出力が論理
1になる回路であつて例えばANDゲート、0Rゲート
によつて容易に実現できるのが既に知られている。一般
にデータビットD,(但し1≦j≦25)の誤りは以下
のように訂正されるのが示される。
lO,S2O,S34,の4個の内の3個をとる多数決
論理によつて正しく求まることを意味している。すなわ
ち誤りe1は次の(19)式によつて求まる。さらに前
述の(12)式、すなわちd″,=DjleiがD,=
d″,4e,と書きなおされることに着目すればd″1
の誤りは次の(20)式によつて訂正される。すなわち
(20)式によつてd1が求まる。(20)?龜i1ル
た誤りの訂正を実行する回路は例えば第7図によつて実
施される。第7図において60,61,62,65で示
される回路は2個の入力を有する排他的オアゲートてあ
り、63の回路は4個の入力を有する排他的オアゲート
であり、又64て示される回路は4個の入力を有する多
数決回路てある。多数決回路64は4個の入力のうち3
個以上の入力が同時に論理1になるときだけ出力が論理
1になる回路であつて例えばANDゲート、0Rゲート
によつて容易に実現できるのが既に知られている。一般
にデータビットD,(但し1≦j≦25)の誤りは以下
のように訂正されるのが示される。
式(8).(9),Gα,(11)から分るようにデー
タビットd″j(1≦j≦25)を含んでいるシンドロ
ームビツトは一般にS。O,Sla,S2b,S3。の
形で表わされる。データビットd″,(1≦j≦25)
を含むシンドロームビツトS。
タビットd″j(1≦j≦25)を含んでいるシンドロ
ームビツトは一般にS。O,Sla,S2b,S3。の
形で表わされる。データビットd″,(1≦j≦25)
を含むシンドロームビツトS。
O,Sla,S2b,S.3cとすればd″jの誤りは
下式によつて訂正される。Ej=多数決(Sla,S2
b,S3cA)但しA=S(X)11,S1〔a+沙〕
)1−飄1S2]但し、式(21)において( )記号
は〔X〕=XmOdLllO5,すなわち〔x〕はXを
5で割つた時の剰余を意味する。
下式によつて訂正される。Ej=多数決(Sla,S2
b,S3cA)但しA=S(X)11,S1〔a+沙〕
)1−飄1S2]但し、式(21)において( )記号
は〔X〕=XmOdLllO5,すなわち〔x〕はXを
5で割つた時の剰余を意味する。
式(21)がj=1の時には誤りを正しく訂正すること
は既に式(15),(16),・・,(20)を用いて
説明した。
は既に式(15),(16),・・,(20)を用いて
説明した。
以下においてj=18の時にも式(21)が誤りを正し
く訂正することを示そう。j=18よりd″18を含ん
でいるシンドロームビツトは式(8),(9),QO,
(11)よりS。O,Sl3,S22及びS3lである
。式(21)によればEl8は下式によつて求められる
。但しA=SCX)1S101S121S241S21
1S311S33上式(22)のSl3,S22,S3
4,Aは式(8),(9),[株],(11)より下式
で表わされる(但しd″4及びCd″Ijをそれぞれ誤
りEj及びEijに置きかえる)。
く訂正することを示そう。j=18よりd″18を含ん
でいるシンドロームビツトは式(8),(9),QO,
(11)よりS。O,Sl3,S22及びS3lである
。式(21)によればEl8は下式によつて求められる
。但しA=SCX)1S101S121S241S21
1S311S33上式(22)のSl3,S22,S3
4,Aは式(8),(9),[株],(11)より下式
で表わされる(但しd″4及びCd″Ijをそれぞれ誤
りEj及びEijに置きかえる)。
VVVVlVVAシV&JXVVAVノ式(23)を見
れば分るように、Sl3,S22,S34,Aはいづれ
もEl8を含み、かつEl8以外に共通の誤りを含んで
いない。
れば分るように、Sl3,S22,S34,Aはいづれ
もEl8を含み、かつEl8以外に共通の誤りを含んで
いない。
従つてEl8はあらゆる2個以下の誤りに対してSl3
,S22,S34及びAの多数決をとることによつて得
られる。従つて前式(21)がj=18すなわちd″1
8の誤りノを正しく訂正し得ることが示された。
,S22,S34及びAの多数決をとることによつて得
られる。従つて前式(21)がj=18すなわちd″1
8の誤りノを正しく訂正し得ることが示された。
一般にd″,,(1≦j=≦25)の誤りも前式(21
)によつて訂正されることが示されるが説明は省略する
。
)によつて訂正されることが示されるが説明は省略する
。
前式(21)に従つたd″j(1≦j≦25)の誤り訂
正実行回路は既に説明した第7図のJd″1に対する誤
り訂正回路と同様に構成されるので説明は省略する。以
上ではd″j(1≦j≦25)の誤りを訂正する方法及
び回路について説明した。以下ではd″,(26≦j≦
31)の誤りを訂正する方法及び回路を)示そう。最初
にd″26の誤りを訂正する方法及び回路を説明する。
正実行回路は既に説明した第7図のJd″1に対する誤
り訂正回路と同様に構成されるので説明は省略する。以
上ではd″j(1≦j≦25)の誤りを訂正する方法及
び回路について説明した。以下ではd″,(26≦j≦
31)の誤りを訂正する方法及び回路を)示そう。最初
にd″26の誤りを訂正する方法及び回路を説明する。
式(8),(9),Ql,(11)から分るようにd′
26を含むシンドロームビツトはSOO9SlO9Sl
l9Sl2である。SOOを含む線形和B=SOO4S
2OlS2llS224S23lS244Sl3を作れ
ば、式(8),(9),Ql,(11)より、SlO,
Sll,Sl2,Bは誤りEi・Eijによつて下式で
表わされる前式(24)を見れば分るようにSlO,S
ll,Sl2,BはいづれもE26を含み、かつE26
以外に共通の誤りを含まない。
26を含むシンドロームビツトはSOO9SlO9Sl
l9Sl2である。SOOを含む線形和B=SOO4S
2OlS2llS224S23lS244Sl3を作れ
ば、式(8),(9),Ql,(11)より、SlO,
Sll,Sl2,Bは誤りEi・Eijによつて下式で
表わされる前式(24)を見れば分るようにSlO,S
ll,Sl2,BはいづれもE26を含み、かつE26
以外に共通の誤りを含まない。
従つてE26はあらゆる2個以下の誤りに対してSlO
,Sll,Sl2及びBの多数決をとることによつて得
られる。すなわちd″9の誤りは下式によつて訂正する
ことができる。式(25)に則してd″26の誤りの訂
正を実行する回路は例えば第8図のように実施される。
,Sll,Sl2及びBの多数決をとることによつて得
られる。すなわちd″9の誤りは下式によつて訂正する
ことができる。式(25)に則してd″26の誤りの訂
正を実行する回路は例えば第8図のように実施される。
第8図において回路70,71,72は排他的0R回路
、回路73は既に説明した4個の入力を有する多数決回
路である。データビットd″,(但し26≦j≦31)
を含むシンドロームビツトは前式(8),(9),(1
0),(11)から分るように一般にS。O,sabl
Sa(b+1)、Sa(5+。、の形としている。一般
にデータビットd″j(26≦j≦31)を含むシンド
ロームビツトをSOO9Sab)Sa(b+1)〜Sa
(b+2)とするれ一ぱd″,の誤りは下式(26)に
よつて訂正されることが示されるが説明は省略する。−
JV7J′ 但し前式(26)においてくa+1〉記号は、く1+1
〉=2、く2+1〉=3及びく3+1〉=1を意味する
。
、回路73は既に説明した4個の入力を有する多数決回
路である。データビットd″,(但し26≦j≦31)
を含むシンドロームビツトは前式(8),(9),(1
0),(11)から分るように一般にS。O,sabl
Sa(b+1)、Sa(5+。、の形としている。一般
にデータビットd″j(26≦j≦31)を含むシンド
ロームビツトをSOO9Sab)Sa(b+1)〜Sa
(b+2)とするれ一ぱd″,の誤りは下式(26)に
よつて訂正されることが示されるが説明は省略する。−
JV7J′ 但し前式(26)においてくa+1〉記号は、く1+1
〉=2、く2+1〉=3及びく3+1〉=1を意味する
。
又〔 〕記号は〔X〕=XmOdL]105を示す。
例えばd″31の誤りを訂正を実4行するには、式(8
),(9),AO,(11)よりd″31を含むシンド
ロームビツトはSOO9S329S339S34である
から式(26)より、d″31の誤りは下式で訂正され
る。11ゝ4j1W331ノ 前式(26)に則したd″j(26≦j≦31)の誤り
訂正実行回路は既に説明した第8図のd″26に対する
誤り訂正実行回路と同様に構成されるのて説明は省略す
る。
),(9),AO,(11)よりd″31を含むシンド
ロームビツトはSOO9S329S339S34である
から式(26)より、d″31の誤りは下式で訂正され
る。11ゝ4j1W331ノ 前式(26)に則したd″j(26≦j≦31)の誤り
訂正実行回路は既に説明した第8図のd″26に対する
誤り訂正実行回路と同様に構成されるのて説明は省略す
る。
以上においては第2図のm=5の場合の本発明ノによる
符号化行列比に則した符号化回路1と、シンドロームビ
ツト発生回路20とデータビットd″1,d″2,d″
3,・・,d″30,d″37の誤りを訂正する誤り訂
正実行回路21とから構成されている復号化回路40に
ついて説明した。
符号化行列比に則した符号化回路1と、シンドロームビ
ツト発生回路20とデータビットd″1,d″2,d″
3,・・,d″30,d″37の誤りを訂正する誤り訂
正実行回路21とから構成されている復号化回路40に
ついて説明した。
次にmを3以上の任意の奇数とする一般の場合の本発明
による符号化方法及び誤り訂正方法を説明する。
による符号化方法及び誤り訂正方法を説明する。
m=5の時の符号化行列は第2図のH5で与えられた。
一般のmの場合の符号化行列は第9図のHmで与えられ
る。第9図のHmの中にある部分行ダ旧,は第10図で
与えられる。第9図及び第10図より符号化行列は0m
+1)x(支)十艮(m−1))の行列である。第9図
及び第10図を見れは符号化行列Hmの構成法は明白と
考えられるので、これ以下の説明は要しない。いまR=
d+?(m−1)個のデータビットをDl,d2,d3
,・・,DR−1,dRとし、動+1個のチェックビッ
トをCOO9ClO9Cll9Cl29個9Cl(m−
2)9C1(m−1)9C209C219C229を9
C2(m−1)9C309C319C32999C3(
m−1)とすればチェックビットはデータビット及び前
記符号化行列Hmを用いて下式のようにベクトルと行列
の乗算によつて生成される。上記チェックビットはデー
タビットと共にメモリに記憶される。
一般のmの場合の符号化行列は第9図のHmで与えられ
る。第9図のHmの中にある部分行ダ旧,は第10図で
与えられる。第9図及び第10図より符号化行列は0m
+1)x(支)十艮(m−1))の行列である。第9図
及び第10図を見れは符号化行列Hmの構成法は明白と
考えられるので、これ以下の説明は要しない。いまR=
d+?(m−1)個のデータビットをDl,d2,d3
,・・,DR−1,dRとし、動+1個のチェックビッ
トをCOO9ClO9Cll9Cl29個9Cl(m−
2)9C1(m−1)9C209C219C229を9
C2(m−1)9C309C319C32999C3(
m−1)とすればチェックビットはデータビット及び前
記符号化行列Hmを用いて下式のようにベクトルと行列
の乗算によつて生成される。上記チェックビットはデー
タビットと共にメモリに記憶される。
但しR=d+?(m−1)である。
次にメモリから読み出されたチェックビット及びデータ
ビットにダツシユ記号をつけて表わせば?+1個のシン
ドロームビツトS(X),SlO,Sll,Sl2?
″″?S1(m−2)9S1(m−1)9S頒9S21
9S229019S2(m−1)9S309S319S
32919S3(m−1)は下式のように行列とベクト
ルの演算によつて生成される。
ビットにダツシユ記号をつけて表わせば?+1個のシン
ドロームビツトS(X),SlO,Sll,Sl2?
″″?S1(m−2)9S1(m−1)9S頒9S21
9S229019S2(m−1)9S309S319S
32919S3(m−1)は下式のように行列とベクト
ルの演算によつて生成される。
但しR=イ+?(m−1)である。
前式(29)で与えられるシンドロームビツトを用いて
データビットd′,(但し1≦j≦イ置(m−1))の
誤りを以下のように訂正することができる。
データビットd′,(但し1≦j≦イ置(m−1))の
誤りを以下のように訂正することができる。
前式(29)においてd″,(1≦j≦イ)を含むシン
ドロームビツトは一般にS(X),Sla,S知S3,
の形で表わされる。このS。O,Sla,S2b,ジを
用いてd″,(1≦j≦771′)の誤り訂正は下式(
30)で行うことができる。Vj−JV−Jノ 但し上式において〔 〕記号は〔X〕 XmOdulOmを意味する。
ドロームビツトは一般にS(X),Sla,S知S3,
の形で表わされる。このS。O,Sla,S2b,ジを
用いてd″,(1≦j≦771′)の誤り訂正は下式(
30)で行うことができる。Vj−JV−Jノ 但し上式において〔 〕記号は〔X〕 XmOdulOmを意味する。
次に、前式(24)においてd″,≦イ+?(m−1)
を含むシンドロームビツトは一般にS。
を含むシンドロームビツトは一般にS。
O,Sab9Sa(b+1)9Sa(b+2)の形で表
わされる。このSl9Sab9Sa(b+1)9Sa(
b+2)を用いて)d″,(d+1≦j≦ボ+艮(m−
1)の誤り訂正は下式(31)によつて行うことができ
る。但し上式において〔 〕記号〔X〕= XmOdLllOmを意味し、又くa+1〉記号はく1
+1〉=2,〈2+1〉=3,〈3+1〉=1を意味し
ている。
わされる。このSl9Sab9Sa(b+1)9Sa(
b+2)を用いて)d″,(d+1≦j≦ボ+艮(m−
1)の誤り訂正は下式(31)によつて行うことができ
る。但し上式において〔 〕記号〔X〕= XmOdLllOmを意味し、又くa+1〉記号はく1
+1〉=2,〈2+1〉=3,〈3+1〉=1を意味し
ている。
従つて本発明による誤り訂正方法は前式(28)に従う
符号化方法、前式(29)に従うシンドロームビツト発
生方法と前式(30)及び(31)に従う誤り訂正の実
行方法に要約される。
符号化方法、前式(29)に従うシンドロームビツト発
生方法と前式(30)及び(31)に従う誤り訂正の実
行方法に要約される。
すなわち、式(28)に則してd+艮(m−1)個のデ
ータビットから伍+1個のチェックビットが生成され、
これらデータビットとチェックビットは共にメモリに記
憶される。次にメモリから読み出されたイ+?(m−1
)個のデータビットど如+1個のチェックビット式に則
して?+1個のシンドロームビツトが生成され、次いで
前記伍+1個のシンドロームビツトを用いて、式(30
)及び(31)に則して、イ+?(m−1)個のデータ
ビットと師+1個のチェックビットに生じた2個以下の
ランダム誤りが訂正される。
ータビットから伍+1個のチェックビットが生成され、
これらデータビットとチェックビットは共にメモリに記
憶される。次にメモリから読み出されたイ+?(m−1
)個のデータビットど如+1個のチェックビット式に則
して?+1個のシンドロームビツトが生成され、次いで
前記伍+1個のシンドロームビツトを用いて、式(30
)及び(31)に則して、イ+?(m−1)個のデータ
ビットと師+1個のチェックビットに生じた2個以下の
ランダム誤りが訂正される。
従つて、本発明による誤り訂正回路は前式(28)に則
した符号化回路、前式(29)に則したシンドロームビ
ツト発生回路及び前式(30)及び(31)に則した誤
り訂正実行回路を実現すれば良いことになる。
した符号化回路、前式(29)に則したシンドロームビ
ツト発生回路及び前式(30)及び(31)に則した誤
り訂正実行回路を実現すれば良いことになる。
既に説明したように本発明の一例、m=5の場合の符号
回路は第3図及び第4図のように実施され、シンドロー
ムビツト発生回路は第6図のように実施され、又誤り訂
正実行回路は第7図及び第8図のように実施された。
回路は第3図及び第4図のように実施され、シンドロー
ムビツト発生回路は第6図のように実施され、又誤り訂
正実行回路は第7図及び第8図のように実施された。
同様に一般のm(但しmは奇数)の場合の前記符号化回
路、前記シンドロームビツト発生回路及び前記誤り訂正
実行回路も構成され得るので説明は省略する。尚以上の
説明では符号化回路と復号化回路との間にメモリを構成
したが、この他に伝送回線にも適用出来ることは明らか
である。以上のように本発明はmを3以上の任意の奇数
とした時、イ+?(m−1)のデータビットに?+1個
のチェックビットを付加することにより任意の二個以下
の誤りを訂正する構成を有している。
路、前記シンドロームビツト発生回路及び前記誤り訂正
実行回路も構成され得るので説明は省略する。尚以上の
説明では符号化回路と復号化回路との間にメモリを構成
したが、この他に伝送回線にも適用出来ることは明らか
である。以上のように本発明はmを3以上の任意の奇数
とした時、イ+?(m−1)のデータビットに?+1個
のチェックビットを付加することにより任意の二個以下
の誤りを訂正する構成を有している。
第1図はデータ処理装置内におけるメモリと本発明の誤
り訂正回路との関係を示すブロック図、第2図は本発明
において31個のデータビットから1帽のチェックビッ
トを発生するために用いられる符号行ダ旧.を示す図、
第3図及び第4図はチェックビットを発生する回路の一
例を示す図、第5図は復号化回路の一例を示すブロック
図、第6図はシンドロームビツトを発生する回路の一例
を示す図、第7図及び第8図は誤り訂正を実行する回路
の一例を示す図、第9図は本発明においてイ+?(m−
1)個のデータビットから伍+1個のチェックビットを
発生するために用いられる符号化行列Hmを示す図、第
10図は第9図の行列Hm内の部分行列H1を示す図て
ある。 図において、1は符号化回路、2はメモリ、3”は復号
化回路、4は演算回路、5,6,50,60,61,6
2,63,65,70,71及び72は排他的0R回路
、40は復号化回路、20はシンドロームビツト発生回
路、21は誤り訂正実行回路、64及び73は多数決回
路てある。
り訂正回路との関係を示すブロック図、第2図は本発明
において31個のデータビットから1帽のチェックビッ
トを発生するために用いられる符号行ダ旧.を示す図、
第3図及び第4図はチェックビットを発生する回路の一
例を示す図、第5図は復号化回路の一例を示すブロック
図、第6図はシンドロームビツトを発生する回路の一例
を示す図、第7図及び第8図は誤り訂正を実行する回路
の一例を示す図、第9図は本発明においてイ+?(m−
1)個のデータビットから伍+1個のチェックビットを
発生するために用いられる符号化行列Hmを示す図、第
10図は第9図の行列Hm内の部分行列H1を示す図て
ある。 図において、1は符号化回路、2はメモリ、3”は復号
化回路、4は演算回路、5,6,50,60,61,6
2,63,65,70,71及び72は排他的0R回路
、40は復号化回路、20はシンドロームビツト発生回
路、21は誤り訂正実行回路、64及び73は多数決回
路てある。
Claims (1)
- 1 mを3以上の任意の奇数とする▲数式、化学式、表
等があります▼個のデータビットに前記データビットを
もとに3m+1個のチェックビットを付加する符号化回
路と、前記付加されたデータビットとチェックビットを
もとに3m+1個のシンドロームビットを発生する回路
および前記シンドローム発生回路の出力を多数決論理に
よつて解読する多数決回路とを有し前記付加されたデー
タビットおよびチェックビット内に生じた任意の2個以
下の誤りを訂正する復号化回路とを含み構成されたこと
を特徴とする二重誤り訂正回路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP53012588A JPS6041771B2 (ja) | 1978-02-07 | 1978-02-07 | 二重誤り訂正回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP53012588A JPS6041771B2 (ja) | 1978-02-07 | 1978-02-07 | 二重誤り訂正回路 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS54105444A JPS54105444A (en) | 1979-08-18 |
| JPS6041771B2 true JPS6041771B2 (ja) | 1985-09-18 |
Family
ID=11809506
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP53012588A Expired JPS6041771B2 (ja) | 1978-02-07 | 1978-02-07 | 二重誤り訂正回路 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6041771B2 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS57185752A (en) * | 1981-05-11 | 1982-11-16 | Kokusai Denshin Denwa Co Ltd <Kdd> | Reproduction relay system |
-
1978
- 1978-02-07 JP JP53012588A patent/JPS6041771B2/ja not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| JPS54105444A (en) | 1979-08-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4402045A (en) | Multi-processor computer system | |
| US5457702A (en) | Check bit code circuit for simultaneous single bit error correction and burst error detection | |
| US5856987A (en) | Encoder and decoder for an SEC-DED-S4ED rotational code | |
| US3688265A (en) | Error-free decoding for failure-tolerant memories | |
| JPH02148225A (ja) | 有限体の乗法的逆数元を計算するデータ処理方法及び装置 | |
| Peterson et al. | On codes for checking logical operations | |
| US6505318B1 (en) | Method and apparatus for partial error detection and correction of digital data | |
| US3891969A (en) | Syndrome logic checker for an error correcting code decoder | |
| JPS6041771B2 (ja) | 二重誤り訂正回路 | |
| US4868829A (en) | Apparatus useful for correction of single bit errors in the transmission of data | |
| Kennedy et al. | A coding theoretic approach to extending designs | |
| RU51428U1 (ru) | Отказоустойчивый процессор повышенной достоверности функционирования | |
| JP3654655B2 (ja) | データ処理システム | |
| Tang et al. | A new single-error correction scheme based on self-diagnosis residue number arithmetic | |
| Solov'eva | Perfect binary codes: bounds and properties | |
| RU2211492C2 (ru) | Отказоустойчивое оперативное запоминающее устройство | |
| RU2758410C1 (ru) | Отказоустойчивый процессор с коррекцией ошибок в двух байтах информации | |
| RU204690U1 (ru) | Отказоустойчивый процессор с коррекцией ошибок в двух байтах информации | |
| CN108242973A (zh) | 一种数据纠错方法及装置 | |
| US3474412A (en) | Error detection and correction equipment | |
| KR100292788B1 (ko) | 에러검출 및 정정회로 | |
| RU2758065C1 (ru) | Отказоустойчивый процессор с коррекцией ошибок в байте информации | |
| RU2829012C1 (ru) | Устройство хранения информации с повышенной корректирующей способностью | |
| JP2684031B2 (ja) | データの復号化方法 | |
| RU2037271C1 (ru) | Устройство для коррекции ошибок |