JPS6349245B2 - - Google Patents

Info

Publication number
JPS6349245B2
JPS6349245B2 JP58250004A JP25000483A JPS6349245B2 JP S6349245 B2 JPS6349245 B2 JP S6349245B2 JP 58250004 A JP58250004 A JP 58250004A JP 25000483 A JP25000483 A JP 25000483A JP S6349245 B2 JPS6349245 B2 JP S6349245B2
Authority
JP
Japan
Prior art keywords
bit
error
column
bits
vectors
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
Application number
JP58250004A
Other languages
English (en)
Other versions
JPS60142430A (ja
Inventor
Moryuki Takamura
Shigeru Mukogasa
Takashi Ihi
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP58250004A priority Critical patent/JPS60142430A/ja
Priority to CA000471002A priority patent/CA1226368A/en
Priority to AU37138/84A priority patent/AU550471B2/en
Priority to US06/686,815 priority patent/US4631725A/en
Priority to DE8484402758T priority patent/DE3483310D1/de
Priority to KR1019840008616A priority patent/KR900001228B1/ko
Priority to BR8406792A priority patent/BR8406792A/pt
Priority to EP84402758A priority patent/EP0147336B1/en
Priority to ES539201A priority patent/ES8701395A1/es
Publication of JPS60142430A publication Critical patent/JPS60142430A/ja
Priority to ES550916A priority patent/ES8706271A1/es
Priority to ES550915A priority patent/ES8706270A1/es
Publication of JPS6349245B2 publication Critical patent/JPS6349245B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • G06F11/1028Adjacent errors, e.g. error in n-bit (n>1) wide storage units, i.e. package error
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/19Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Description

【発明の詳細な説明】
(a) 発明の技術分野 本発明はデータの誤り訂正・検出装置に関り、
特に情報処理システムの記憶装置のデータにおけ
る1ビツト誤りを訂正し、2ビツト誤りを検出
し、単一4ビツトブロツク誤りを検出し、さらに
2ブロツク内の8ビツトバースト誤りを検出する
誤り訂正・検出装置に関するものである。 (b) 従来技術と問題点 情報処理システムまたは電子計算機の記憶装置
には、データインテグリテイ(integrity)の確
保と信頼向上のために、ここ数年来、誤り訂正符
号により誤り訂正・検出装置が広く用いられてい
る。 1950年に、R.W.Hamming、“Error Detecting
and Error Correcting Codes、”Bell System
Tech.J.、vol29、No.2、pp.147−160、Aprilによ
り開示されたいわゆるHamming符号が誤り訂正
符号の端緒であり、これを用いて1ビツト誤りの
訂正・2ビツト誤りの検出(Single−bit−Error
Correcting、Double−bit−Error Detecting、略
してSEC−DED)の制御を行つた。 その後、1970年にM.Y.Hsiaoは復号の高速化
と多ビツト誤り検出率の向上を目的とした改良を
行い、改良型1ビツト誤り訂正・2ビツト誤り検
出符号を提示し、以来この符号を用いた誤り訂
正・検出装置が汎用大型計算機の記憶装置では一
般的に実用されている。その技術は、“A Class
of Optimal Minimum Odd−weght−column
SEC−DED Codes、”IBMJ.Res.Develop.、
vol.14、pp.395−401、July1970に開示されてい
る。 上述の装置は、記憶装置の構成要素であるLSI
メモリチツプの故障モートが1ビツト誤りである
から、記憶装置のデータインテグリテイの確保と
信頼度の向上に極めて有用であつた。メモリチツ
プ、メモリボード、またはメモリモジユールを1
ビツトの単位に構成することは、一層効果的であ
る。 しかし、メモリチツプの高集積化と実装の高密
度化が長足の進歩を遂げるに伴い、メモリ容量・
メモリの性能および実装の観点よりメモリチツ
プ、メモリボード、またはメモリモジユールを1
ビツトの単位に構成することは実際的でなくなつ
てきている。その結果、たとえば、メモリチツプ
当りで16K語×4ビツト、または8K語×8ビツ
トという4ビツトまたは8ビツトの単位に構成し
たメモリチツプが実用されつつある。(ただし、
K=1024。) さらにまた、1ビツトまたは4ビツト構成のメ
モリチツプを複数個搭載して多ビツトを単位に構
成したメモリボードまたはメモリモジユールが記
憶装置の構成部品として実用されつつある。これ
ら多ビツト構成のメモリチツプ、メモリボード、
またはメモリモジユールを構成部品とする記憶装
置においては、該構成部品の単一故障によりデー
タのブロツク(塊り)誤りが発生する可能性があ
り、ブロツク内の一部または全部のビツトが誤る
という危険がある。 今までにも増して、このブロツク誤りについて
注目し、記憶装置のデータインテグリテイと信頼
度を確保する技術を確立することが急務である所
似は正にここにある。 ここに、ブロツクとは、上述の4ビツトまたは
8ビツトなどの多ビツトの単位の呼称であり、1
ブロツクを構成するビツト数をbで表わせば、上
述のメモリチツプの構成においては、b=4また
はb=8となる。 このような背景をふまえ、1ビツト誤りの訂正
以外に、単一ブロツク内の多ビツト誤りを検出す
る符号(Single−bit−Error Correcting、
Single−b bit Block−Error Detectecting略
してSEC−SbBED)や、1ビツト誤りの訂正・
2ビツト誤りの検出以外に、単一ブロツク内の多
ビツト誤りを検出する符号(Single−bit−Error
Correcting、Double−bit−Error Detecting、
Single−b bit Block Error Detecting略して
SEC−DED−SbBED)を用いた誤り訂正・検出
装置がいくつか提示されている。 前者に属するものとして、Bossen、Chang
and Chen、“Measurement and Generation of
Error Correcting Codes for Package
Failures、”IEEE Trans.Comput.、vol.C−27、
No.3、pp.201−204、March1978により開示され
た符号により誤り訂正・検出制御方式がある。こ
の符号構成論によるチエツクビツト数は、b+
「log2(r+1)」−1である。 ここに、 b=1ブロツクのビツト数 r=1符号語のブロツク数 「p」=pを越える最小整数 たとえば、b=4、r=18の場合はチエツクビ
ツト数は4+「log219」−1=8であり、従つて
(72、64)SEC−S4BED符号が構成される。 ここに、(n、k)は n=1符号語のビツト数 k=1符号語中の情報ビツト数 である。 後者に属するものとして、S.M.Reddy、“A
Class of Linear Codes for Error Control in
Byte−per−Card Organized Didital Systems、
“IEEE Trans.Comput.、vol.C−27、No.5、
pp.455−459、May1978およびDunning and
Varanasi、“Code Construction for Error
Control in Byte Organized Memory
Systems、”IEEE Trans.Comput.vol.C−32、No.
6、pp.535−542、June1983がある。 Reddyの符号構成論においては、 (i) 2b4のときには SEC−SbBED符号のためにはb+「log2(r
+1)」−1ビツトのチエツクビツトが、また
SEC−DED−SbBED符号のためには、全ビツ
トに関するパリテイテエツクビツトが更に1ビ
ツト必要であり、 (ii) 5bのときには b+「log2(r+1)」−1ビツトのチエツクビ
ツトでSEC−DED−SbBED符号 が構成される。たとえば、b=4のときには
73、64)SEC−DED−S4BED符号が構成され
る。 一方、Dunning and Varanasiの符号において
は、SEC−SbBED符号のためには、b+2ビツ
トのチエツクビツトが必要であり、b〓7のとき
のSEC−DED−SbBED符号のためには、b+
「log2((r+b+1)/(b+1))」+1ビツトの
チエツクビツトが必要である。b<7で2ビツト
誤り訂正(DED)が要求されるときには、
Reddyの符号の方がチエツクビツト数が少ないこ
とが開示されている。 また特開昭58−78241(58.5.11公開)には、b
=4、情報ビツト長=64ビツト、チエツクビツト
長=8ビツト、符号語長=64+8=72ビツトの場
合に限定された構成において、(72、64)SEC−
DED−S4BED符号のパリテイチエツクマトリク
スとその誤り訂正検出方式が開示されている。 以上がブロツク誤りの検出とその制御方式に関
する現在の技術の水準である。 (c) 発明の目的 本発明の目的は、b=4の場合に32ビツトおよ
び64ビツトの情報ビツト長に対して現用のSEC−
DED符号と同一のチエツクビツト数、即ち7ビ
ツトおよび8ビツトを用いて、 1ビツト誤りの訂正・2ビツト誤りの検出
(SEC−DED)、 単一4ビツトブロツク誤りの検出
(S4BED)、および 任意の2ブロツク内の8ビツトバースト誤り
の検出(Double−4bit−Block−Burst−Error
Detectig、略して、D4UED) を行うことが可能である誤り訂正・検出方式を提
示することにある。 本発明の他の目的は、先行技術の符号構成論に
より所要とするチエツクビツト数(即ち冗長ビツ
ト数)を増加させることなく、一層誤り検出能力
の高い誤り訂正・検出方式を提示することにあ
る。 本発明の他の目的は、先行技述の誤り訂正・検
出方式における符号化・復号化時間に変更を与え
ることなく、従来技術では得られなかつた任意の
2ブロツクにわたる8ビツトバースト誤りの検出
を可能にする誤り訂正・検出方式を提示すること
にある。 (d) 発明の構成 上記目的は、0と1を元とし、 列ベクトル
【式】i=1、2、…、18; j=1、2、…、4 4個よりなるブロツクベクトル18個より構成さ
れるHマトリクス であつて、 (i) 全零ベクトルはない、 (ii) 列ベクトルは互いに異なる、 (iii) 1を1個だけ含む列ベクトル8個を含む、 (iv) 列ベクトルは1を奇数個含む列ベクトルであ
る、 (v) ブロツクi内の4つの列ベクトルから3つの
列ベクトルを選ぶすべての組合せについて、3
つの列ベクトルからビツト対応の2を法とする
加法により生成される1つの列ベクトルhAが式
(100)のHマトリクスの列ベクトルと一致しな
い、 即ち、 ここで、 i=1、2、…、18;j=1、2、…、4; p=1、2、…、18 (k、l、m)=(2、3、4)、(1、3、
4)、(1、2、4)、(1、2、3) (vi) ブロツクi内の4つの列ベクトルからビツト
対応の2を法とする加法により生成される1つ
の列ベクトルhBが全零ベクトルでない、 即ち、 ここで、i=1、2、…、18 (vii) 2つのブロツクp、qからなる8個の列ベク
トルからビツト対応の2を法とする加法により
生成される1つの列ベクトルhCが全零ベクトル
でない、 即ち、 ここで、p、q=1、2、…、18;p≠q を満たすように構成されたHマトリクスHに従つ
て64ビツトの情報ビツトから8ビツトの冗長ビツ
トを生成する手段と、該冗長ビツトと情報ビツト
とより成る72ビツトの符号語を記憶装置に書き込
む手段と、該記憶装置より該符号語を読み出す手
段と、該72ビツトの符号語より上記Hマトリクス
に従つて8ビツトのシンドロームを生成する手段
と、該シンドロームより1ビツト誤りのビツト位
置を表示する72ビツトのエラービツト信号を生成
するシンドローム解読手段と、該エラービツト信
号により上記72ビツトの符号語の1ビツト誤りを
訂正する手段と、上記エラービツト信号のすべて
の論理和と上記8ビツトのシンドロームとより2
ビツト誤り、単一4ビツトブロツク誤り、および
2ブロツク内の8ビツトバースト誤りの存在を判
別する手段を含んで成る誤り訂正・検出装置によ
つて達成される。 さらに上記目的は、0と1を元とし、 列ベクトル
【式】i=1、2、…、10; j=1、2、…、4 4個よりなるブロツクベクトル10個より構成さ
れるHマトリクス であつて、 (i) 全零ベクトルはない、 (ii) 列ベクトルは互いに異なる、 (iii) 1を1個だけ含む列ベクトル8個を含む、 (iv) 列ベクトルは1を奇数個含む列ベクトルであ
る、 (v) ブロツクi内の4つの列ベクトルから3つの
列ベクトルを選ぶすべての組合せについて、3
つの列ベクトルからビツト対応の2を法とする
加法により生成される1つの列ベクトルhAが式
(200)のHマトリクスの列ベクトルと一致しな
い。 即ち、 ここで、 i=1、2、…、10;j=1、2、…、4; p=1、2、…、10 (k、l、m)=(2、3、4)、(1、3、
4)、(1、2、4)、(1、2、3) (vi) ブロツクi内の4つの列ベクトルからビツト
対応の2を法とする加法により生成される1つ
の列ベクトルhBが全零ベクトルでない、 即ち、 ここで、i=1、2、…、10 (vii) 2つのブロツクp、qからなる8個の列ベク
トルからビツト対応の2を法とする加法により
生成される1つの列ベクトルhCが全零ベクトル
でない、 即ち、 ここで、p、q=1、2、…、10;p≠q を満たすように構成されたHマトリクスHに従つ
て32ビツトの情報ビツトから8ビツトの冗長ビツ
トを生成する手段と、該冗長ビツトと情報ビツト
とより成る40ビツトの符号語を記憶装置に書き込
む手段と、該記憶装置より該符号語を読み出す手
段と、該40ビツトの符号語より上記Hマトリクス
に従つて8ビツトのシンドロームを生成する手段
と、該シンドロームより1ビツト誤りのビツト位
置を表示する40ビツトのエラービツト信号を生成
するシンドローム解読手段と、該エラービツト信
号により上記40ビツトの符号語の1ビツト誤りを
訂正する手段と、上記エラービツト信号のすべて
の論理和と上記8ビツトのシンドロームとより2
ビツト誤り、単一4ビツトブロツク誤り、および
2ブロツク内の8ビツトバースト誤りの存在を判
別する手段を含んで成る誤り訂正・検出装置によ
つて達成される。 さらに上記目的は、0と1を元とし、 列ベクトル
【式】i=1、2、…、9; j=1、2、…、4 4個よりなるブロツクベクトル9個と 列ベクトル
【式】i=10;j=1、2、3 3個より成るブロツクベクトル1個とより構成
されるHマトリクス であつて、 (i) 全零ベクトルはない、 (ii) 列ベクトルは互いに異なる、 (iii) 1を1個だけ含む列ベクトル7個を含む、 (iv) 列ベクトルは1を奇数個含む列ベクトルであ
る、 (v) ブロツクi内の4つの列ベクトルから3つの
列ベクトルを選ぶすべての組合せについて、お
よび3つの列ベクトルからなる1つのブロツク
について、3つの列ベクトルからビツト対応の
2を法とする加法により生成される1つの列ベ
クトルhAが式(300)のHマトリクスの列ベク
トルと一致しない、 即ち、 ここで、 i=1、2、…、10;j=1、2、…、4; p=1、2、…、10 (k、l、m)=(2、3、4)、(1、3、
4)、(1、2、4)、(1、2、3) (vi) ブロツクi内の4つの列ベクトルからビツト
対応の2を法とする加法により生成される1つ
の列ベクトルhBが全零ベクトルでない、 即ち、 ここで、i=1、2、…、9 (vii) 2つのブロツクp、qからなる8個の列ベク
トルからビツト対応の2を法とする加法により
生成される1つの列ベクトルhCが全零ベクトル
でない、 即ち、 ここで、p、q=1、2、…、9;p≠q を満たすように構成されたHマトリクスHに従つ
て32ビツトの情報ビツトから7ビツトの冗長ビツ
トを生成する手段と、該冗長ビツトと情報ビツト
とより成る39ビツトの符号語を記憶装置に書き込
む手段と、該記憶装置より該符号語を読み出す手
段と、該39ビツトの符号語より上記Hマトリクス
に従つて7ビツトのシンドロームを生成する手段
と、該シンドロームより1ビツト誤りのビツト位
置を表示する39ビツトのエラービツト信号を生成
するシンドローム解読手段と、該エラービツト信
号により上記39ビツトの符号語の1ビツト誤りを
訂正する手段と、上記エラービツト信号のすべて
の論理和と上記7ビツトのシンドロームとより2
ビツト誤り、単一4ビツトブロツク誤り、および
2ブロツク内の8ビツトバースト誤りの存在を判
別する手段を含んで成る誤り訂正・検出装置によ
つて達成される。 (e) 発明の実施例 本発明による符号構成論と誤り訂正・検出装置
を順次説明する。 まず、符号のパラメータを以下の通り定義し、
符号論についての一般的説明を行なう。 b=1ブロツク内のビツト数 r=1符号語内のブロツク数 n=1符号語内のビツト数 c=1符号語内のチエツク(冗長)ビツト数 k=1符号語内の情報ビツト数 従つて、 n=br=c+k よく知られているように、線型2進誤り訂正符
号はパリテイチツクマトリクスHにより一意に記
述することができる。パリテイチエツクマトリク
スHは、0と1を元とするc行n列のマトリクス で与えられる。式(1)のHマトリクスが、冗長度を
付加する規則すなわち文法を定めるわけであり、
行数はチエツクビツト数に、列数は符号長に一致
する。 ここで、符号語をT=T(t1、t2、…、to)とす
れば、 HT〓=0 ……(2) であり、これが符号化の規則を与える式である。
なお、τは転置である。 また、被検査符号語をR=R(r1、r2、…、ro)、
誤りパタン位置をE=E(e1、e2、…、eo)とす
れば、 R=TE ……(3) =(t1e1、…、toeo)、 シンドロームSは、式(2)より S=HR〓=H(TE)〓=HE〓 ……(4) で与えられ、S=0なら誤りが生じないことを、
S≠0なら誤りが生じていることが検出できる。
また、式(4)を解くことによりT=REより誤り
が訂正される。たとえば、1ビツトの誤りについ
ては誤りビツト位置iに対して、シンドロームS
は、式(1)に示したHマトリクスの第i列で与えら
れる。これが復号化の規制である。 さて、実施例による符号のHマトリクスは次の
通りに構成される。 まず、実施例のHマトリクスの列ベクトルは以
下の条件(i)〜(vii)を満たす必要がある。 条件(i) 全零ベクトルはない。 (ii) すべての列ベクトルは互いに異なる。 (iii) 1を1個だけ含む列ベクトルをC個だけ
含む。 (iv) 各々の列ベクトルは1を奇数個含む。 (v) 任意のブロツク内の4つの列ベクトルか
ら3つの列ベクトルを選ぶすべての組合せ
について、3つの列ベクトルからビツト対
応の2を法とする加法により生成される1
つの列ベクトルがHマトリクスの列ベクト
ルと一致しない。 (vi) 任意のブロツク内の4つの列ベクトルに
ついて、4つの列ベクトルからビツト対応
の2を法とする加法により生成される1つ
の列ベクトルが全零ベクトルでない。 (vii) 任意の2つのブロツクからなる8つの列
ベクトルについて、8つの列ベクトルから
ビツト対応の2を法とする加法により生成
される1つの列ベクトルが全零ベクトルで
ない。 条件(i)(ii)(iii)(iv)により、前述のM.Y.Hsiaoによ
つて開示された技術によつて、SEC−DED符号
が保証される。1を奇数個含む列ベクトルを奇数
個(または偶数個)2を法とする加法を施すと常
に1を奇数個(または0を含む偶数個)含む列ベ
クトルが生成されるので、条件(v)により、ブロツ
ク内の3ビツト誤りの検出が、条件(vi)により、ブ
ロツク内の4ビツト誤りの検出が可能となる。さ
らに条件(vii)により2つのブロツクにまたがる8ビ
ツトバースト誤りの検出が可能となる。 では、条件(i)〜(vii)を満たす列ベクトル群をどの
ように決定すればよいかを次に述べる。列ベクト
ルの内の1の数が奇数である列ベクトル(奇数重
み列ベクトル)の数は、 〓 〓j=1 c Cj(λ=Cを越えない最大奇数) ……(5) だけ存在する。 C=8の場合は、 8C1=8 ……(6) 8C3=56 ……(7) 8C5=56 ……(8) 8C7=8 ……(9) また、C=7の場合は、 7C1=7 ……(10) 7C3=35 ……(11) 7C5=21 ……(12) 通りの奇数重み列ベクトルが存在する。 条件(i)(ii)(iii)(iv)のためには上述の列ベクトルは

ずれでも採用できるが、チエツクビツト、シンド
ロームの生成のための時間、金物量、故障率の極
小化の観点より、Hマトリクスの1の数の最小の
もの程よい。この意味から 8C18C38C5の順
に72個(または、 7C17C3の順に39個)の奇数
重み列ベクトルを採用していくのが実際的であ
る。 次に、上述のようにして得られたHマトリクス
を初期Hマトリクスとして、条件(v)、(vi)、(vii)を満
足するか否かを検証し、満足しない場合は、他の
ブロツクおよび/または列の列ベクトルと交換
(swapping)を行なう。条件(v)、(vi)、(vii)が満足さ
れるまで列ベクトルの交換をつづける。上述の試
行プロセスは計算機によりシミユレートするのが
最も効率的である。 以上のようにして得られた実施例による符号の
Hマトリクスの一例を第1図、第2図、および第
3図に示す。 第1図は(72、64)SEC−DED−S4BED−
D4UED符号、第2図は(40、32)SEC−DED−
S4BED−D4UED符号、第3図は(39、32)SEC
−DED−S4BED−D4UED符号のHマトリクス
である。 次に、第1図に示したHマトリクスを用いた実
施例による実施例の誤り訂正・検出装置を第4図
〜第8図により説明する。 第4図は誤り訂正回路の全体構成図であり、こ
こでは本発明の本質には特に関係はないが、符号
語に訂正可能な誤りが発生した時には該誤りを訂
正した符号語を再書き込みする方式をとつてい
る。 第4図において、1は図示しない中央処理装置
(CPU)からの書込みデータ線(64ビツト)、2
はマルチプレクサ、3は記憶部への書込みデータ
線(64ビツト)、4はチエツクビツト発生回路、
5はチエツクビツトデータ線(8ビツト)、6は
書込みデータレジスタ(書込みデータ+チエツク
ビツト=72ビツト)、7はメモリアレイ部、8は
読出しデータレジスタ(読出しデータ+チエツク
ビツト=72ビツト)、9は読出しチエツクビツト
線(8ビツト)、10はシンドローム発生回路、
11はシンドローム線(8ビツト)、12はシン
ドロームデコード回路、13はエラー検出回路、
14はエラー信号線、15はデコード信号線、1
6はメモリ読出しデータ線、17はデータ訂正回
路、18は訂正済のメモリ読出しデータ線、19
はメモリ読出/書込制御回路である。 第4図の記憶装置を使用する装置(CPU)に
より送出される書込みデータ(64ビツト)はマル
チプレクサ2を通つて後述のチエツクビツト発生
回路4に送られて、チエツクビツトC0〜C7(8ビ
ツト)が生成される。このチエツクビツトと書込
みデータを合わせることにより、72ビツトの符号
語を生成し、書込みデータレジスタ6を経由して
メモリアレイ部7に書込む。これが書込み動作で
ある。 次に読出し動作時には格納されていた符号語で
ある72ビツトが読み出されて読出しデータレジス
タ8に取り込まれる。この符号語中のデータ部、
及びチエツクビツト部は後述のシンドローム発生
回路10に送出され、データ訂正回路17にはデ
ータ部のみを送出すればよい。シンドローム発生
回路10においては、書込み時チエツクビツト発
生回路4でチエツクビツトを生成した時と同様
に、データ部よりチエツクビツト(8ビツト)を
作成し、この結果と読み出したチエツクビツト
(8ビツト)との比較を行い、この結果がシンド
ロームS0〜S7(8ビツト)となる。比較の結
果、シンドロームの各ビツトがすべて零となれば
誤りがないことが、またいずれか1ビツト以上1
になつていれば誤りがあることが検出できる。 このシンドローム(8ビツト)はシンドローム
デコード回路12に送出される。シンドロームデ
コード回路12において、S0〜S7をデコーダ
に入力して1ビツト誤りであれば、このデコーダ
の出力が誤りビツト位置を示す。この出力をデー
タ訂正回路17に送出して、先に送出されていた
読出しデータレジスタ8の出力である読出しデー
タの誤りビツトを反転させて訂正する。 訂正されたデータ部は一方はCPUへ送出され、
他方は再書込みのためにマルチプレクサ2に戻さ
れる。 一方、シンドロームデコード回路12のデコー
ドが出来たか否かの信号とS0〜S7の信号は後
述のエラー検出回路13に送出されて、誤りの訂
正可否判定を行い、この結果をCPUに送出する
と共に記憶装置では、1ビツト誤りが発生した時
には、ここでは記していない再書込み回路の制御
により訂正された符号語をメモリアレイ部7に再
書込みする。 尚、チエツクビツトの1ビツト誤りは再書込み
時に正常なデータより再度生成されるため、特に
ここでは訂正を必要としない。 次に第5図は、チエツクビツト発生回路4の一
部を示す図である。図中の各ゲートは排他オアゲ
ートである。C0ビツトの生成は、第1図のHマ
トリクス中の第1行においてD07ビツトを除く
“1”と記した位置のデータビツト部26ビツトの
排他的論理和(2を法とする加法)をとることに
より行われる。 同様にC1は、第2行のD69ビツトを除く“1”
と記した位置のデータビツト部26ビツトの排他的
論理和をとることにより生成される。C2、…、
C7についても同様である。 次に第6図は、シンドローム発生回路10の一
部を示す図である。図中の各ゲートは排他オアゲ
ートである。 S0ビツトの作成は、C0ビツトを作成する時に
除いたD07ビツトをも、排他的論理和の入力とし
た点を除いてC0の作成と全く同様である。これ
は読み出したデータ部より新たに生成したチエツ
クビツトと読み出したチエツクビツトの比較を意
味する。同様にしてS1〜S7を作成し、誤りが
なければS0〜S7は全零となる。 仮に第1ビツトであるD01ビツトが誤まつたと
するとその結果、S0〜S7は10100100となつて
H−マトリクスの第1列に一致する。 これはエラービツト位置を表わしていることに
なり、第7図に示したシンドロームデコード回路
12にS0〜S7が入力されるとEB01が“1”
となつて、読出しデータレジスタ8の出力である
MRD01データを反転させることにより、訂正を
行いMCRD01データを作成する。 第7図において、30−1〜3−72はそれぞ
れ8入力ゲート回路、31−1〜31−72はそ
れぞれ排他オア回路、S0〜S7はシンドロー
ム、MRD01〜72はメモリからの読出しデー
タビツト、MCRD01〜72は訂正済のメモリ
読出しデータビツト、EB01〜72はエラービ
ツト、12,17はそれぞれ第4図と同一のもの
である。 第8図は、エラー検出回路13の詳細図であ
り、図中、40−1〜40−9,41,42はそ
れぞれオアゲート回路、43はアンドゲート回
路、EB01〜EB72はエラービツト、S0〜S
7はシンドローム、SBEは1ビツトエラー信号、
MBEは多重ビツトエラー信号である。 第7図のEB01〜72のエラー信号は、第8
図に示すエラー検出回路に入力されて、72ビツ
トの論理和出力が1のとき、即ち第7図のデコー
ド回路12よりデコード出力があつた時に第8図
のエラー検出回路により1ビツトエラーと判定で
きる。 次に、仮にHマトリクス上でD01とD02ビツト
が同時に誤まるとS0〜S7は11100001となつて
偶数個の“1”を有するシンドロームとなる。 これは奇数ベクトル列より構成されるHマトリ
クスのどの列ベクトルとも一致しないし、全零と
もならない。従つて、シンドロームデコード回路
12によつてデコードされることがないため第8
図においてSBEが“0”となつて、かつ、
ERRORが“1”であるためMBE=“1”となつ
て訂正不可の2ビツト誤りが検出できる。 次に、仮にHマトリクス上で、D01、D02、
D03ビツトが同時に誤まるとS0〜S7は
10101011となつて奇数個の“1”を有するシンド
ロームとなるが、Hマトリクス上のどの列とも一
致しない。 このために、シンドロームデコード回路12の
出力は、“0”となつて、かつMBE=“1”とな
り、訂正不可の3ビツト誤りが検出できる。 次に、4ビツト誤りにおいてもシンドロームの
1の数が偶数となつて2ビツト誤りと同様に
MBE=1となる。 次に、仮にD01〜04とD69〜72の2つのブロツ
クにわたる8ビツトが同時に誤ると、シンドロー
ムS0〜S7は01101010であり、偶数個の1を有
するシンドロームとなり全零ベクトルとはならな
い。従つてERROR=1となり8ビツトのバース
ト誤りが検出可能となる。他の2つの任意のブロ
ツクにわたる8ビツトバースト誤りについても同
様であることが検証されている。 このようにして、1ビツト誤りの訂正、2ビツ
ト誤りの検出、4ビツトよりなる同一ブロツク内
の2、3、4ビツト誤りの検出、さらに、2ブロ
ツクにわたる8ビツトバースト誤りの検出が可能
であることが説明された。 次に、第2図に示したHマトリクスを用いた実
施例について説明する。誤り訂正回路の全体構成
図は第4図と同一である。 ただし、CPUからの書込みデータおよびCPU
への読出しデータが32ビツトである点、チエツク
ビツト発生回路4等の具体的構成等の点で相違が
ある。 第9図は、第2図のHマトリクスを用いたとき
のチエツクビツト発生回路4の一部を示す図であ
る。図中の各ゲートは排他オアゲートである。
C0ビツトの生成は、第2図のHマトリクス中の
第1行においてC01ビツトを除く“1”と記した
位置のデータビツト部12ビツトの排他的論理和
(2を法とする加法)をとることにより行われる。 同様にC1は、第2行のC02ビツトを除く“1”
と記した位置のデータビツト部12ビツトの排他的
論理和をとることにより生成される。C2、…、
C7についても同様である。 次に第10は、シンドローム発生回路10の一
部を示す図である。図中の各ゲートは排他オアゲ
ートである。 S0ビツトの作成は、C0ビツトを作成する時に
除いたC01ビツトをも、排他的論理和の入力とし
た点を除いてC0の作成と全く同様である。これ
は読み出したデータ部より新たに生成したチエツ
クビツトと読み出したチエツクビツトの比較を意
味する。同様にしてS1〜S7を作成し、誤りが
無ければS0〜S7は全零となる。 仮に第1ビツトであるD01ビツトが誤まつたと
するとその結果、S0〜S7は00100110となつて
H−マトリクスの第1列に一致する。 これはエラービツト位置を表わしていることに
なり、第11図に示したシンドロームデコード回
路12にS0〜S7が入力されるとEB01が
“1”となつて、読出しデータレジスタ8の出力
であるMRD01データを反転させることにより、
訂正を行いMCRD01データを作成する。 第11図において、50−1〜50−40はそ
れぞれ8入力ゲート回路、51−1〜51−40
はそれぞれ排他オア回路、S0〜S7はシンドロ
ーム、MRD01〜MRDC8はメモリからの読出
しデータビツト、MCRD01〜MCRDC08は
訂正済のメモリ読出しデータビツト、EB01〜
40はエラービツト、12,17はそれぞれ第4
図と同一のものである。 第12図はエラー検出回路13の詳細図であ
り、図中、60−1〜60−5,61,62はそ
れぞれオアゲート回路、63はアンドゲート回
路、EB01〜EB40はエラービツト、S0〜S
7はシンドローム、SBEは1ビツトエラー信号、
MBEは多重ビツトエラー信号である。 第11図のEB01〜40のERROR信号は、
第12図に示すエラー検出回路に入力されて、40
ビツトの論理和出力が1のとき、即ち第11図の
デコード回路12よりデコード出力があつた時に
第12図のエラー検出回路により1ビツトエラー
と判定できる。 次に、仮にHマトリクス上でD01とD02ビツト
が同時に誤まるとS0〜S7は01110010となつて
偶数個の“1”を有するシンドロームとなる。 これは奇数ベクトル列より構成されるHマトリ
クスのどの列ベクトルとも一致しないし、全零と
もならない。従つてシンドロームデコード回路1
2によつてデコードされることがないため第12
図においてSBEが“0”となつて、かつ、
ERRORが“1”であるためMBE=“1”となつ
て訂正不可の2ビツト誤りが検出できる。 次に、仮にHマトリクス上でD01、D02、D03
ビツトが同時に誤まるとS0〜S7は、01011011
となつて奇数個の“1”を有するシンドロームと
なるが、Hマトリクス上のどの列とも一致しな
い。 このために、シンドロームデコード回路12の
出力は“0”となつて、かつ、MBE=“1”とな
り、訂正不可の3ビツト誤りが検出できる。 次に、4ビツト誤りにおいてもシンドロームの
1の数が偶数となつて2ビツト誤りと同様に
MBE=1となる。 次に、仮にD01〜04とC05〜C08の2つのブロ
ツクにわたる8ビツトが同時に誤ると、シンドロ
ームS0〜S7は11011110であり、偶数個の1を
有するシンドロームとなり全零ベクトルとはなら
ない。従つてERROR=1となり8ビツトのバー
スト誤りが検出可能となる。他の2つの任意のブ
ロツクにわたる8ビツトバースト誤りについても
同様であることが検証されている。 このようにして、1ビツト誤りの訂正、2ビツ
ト誤りの検出、4ビツトよりなるブロツク内の
2、3、4ビツト誤りの検出、さらに、2ブロツ
クにわたる8ビツトバースト誤りの検出が可能で
あることが説明された。 次に、第3図に示したHマトリクスを用いた実
施例について説明する。誤り訂正回路の全体構成
図は第4図と同一である。 ただし、CPUからの書込みデータおよびCPU
への読出しデータが32ビツトである点、チエツク
ビツトが7ビツトである点、チエツクビツト発生
回路4等の具体的構成等の点で相違がある。 第13図は、第3図のHマトリクスを用いたと
きのチエツクビツト発生回路4の一部を示す図で
ある。図中の各ゲートは、排他オアゲートであ
る。C0ビツトの生成は、第3図のHマトリクス
中の第1行においてD35ビツトを除く“1”と記
した位置のデータビツト部14の排他的論理和
(2を法とする加法)をとることにより行われる。 同様にC1は、第2行のD11ビツトを除く“1”
と記した位置のデータビツト部15ビツトの排他的
論理和をとることにより生成される。C2、…、
C6についても同様である。 次に、第14図はシンドローム発生回路10の
一部を示す図である。図中の各ゲートは、排他オ
アゲートである。 S0ビツトの作成は、C0ビツトを作成する時に
除いたD35ビツトをも、排他的論理和の入力とし
た点を除いてC0の作成と全く同様である。これ
は読出したデータ部より新たに生成したチエツク
ビツトと読み出したチエツクビツトの比較を意味
する。 同様にしてS1〜S6を作成し、誤りが無けれ
ばS0〜S6は全零となる。 仮に、第1ビツトであるD01ビツトが誤まつた
とするとその結果、S0〜S6は1000011となつ
てH−マトリクスの第1列に一致する。 これはエラービツト位置を表わしていることに
なり、第15図に示したシンドロームデコード回
路12にS0〜S6が入力されるとEB01が
“1”となつて、読出しデータレジスタ8の出力
であるMRD01データを反転させることにより、
訂正を行い、MCRD01データを作成する。 第15図において、70〜1−70−39はそ
れぞれ7入力ゲート回路、71−1〜71−39
はそれぞれ排他オア回路、S0〜S6はシンドロ
ーム、MRD01〜39はメモリからの読出しデ
ータビツト、MCRD01〜39は訂正済のメモ
リ読出しデータビツト、EB01〜39はエラー
ビツト、12,17はそれぞれ第4図と同一のも
のである。 第16図はエラー検出回路13の詳細図であ
り、図中、80−1〜80−5,81,82はそ
れぞれオアゲート回路、83はアンドゲート回
路、EB01〜EB39はエラービツト、S0〜S
6はシンドローム、SEBは1ビツトエラー信号、
MBEは多重ビツトエラー信号である。 第15図のEB01〜39のERROR信号は、
第16図に示すエラー検出回路に入力されて、39
ビツトの論理和出力が1のとき、即ち第15図の
デコード回路12よりデコード出力があつた時に
第16図のエラー検出回路により1ビツトエラー
と判定できる。 次に、仮にHマトリクス上でD01とD02ビ
ツトが同時に誤まるとS0〜S6は1010000とな
つて偶数個の“1”を有するシンドロームとな
る。 これは奇数ベクトル列より構成されるHマトリ
クスのどの列ベクトルとも一致しないし、全零と
もならない。従つてシンドロームデコード回路1
2によつてデコードされることがないため第16
図においてSBEが“0”となつて、かつ、
ERRORが“1”であるためMBE=“1”となつ
て訂正不可の2ビツト誤りが検出できる。 次に、仮にHマトリクス上でD01、D02、D03
ビツトが同時に誤まるとS0〜S6は1110110と
なつて奇数個の“1”を有するシンドロームとな
るが、Hマトリクス上のどの列とも一致しない。 このために、シンドロームデコード回路12の
出力は“0”となつて、かつ、MBE=“1”とな
り、訂正不可の3ビツト誤りが検出できる。 次に、4ビツト誤りにおいてもシンドロームの
1の数が偶数となつて2ビツト誤りと同様に
MEB=1となる。 次に、仮にD01〜04とD33〜D36の2つのブロ
ツクにわたる8ビツトが同時に誤まると、シンド
ロームS0〜S6は1110111であり、偶数個の1
を有するシンドロームとなり全零ベクトルとはな
らない。従つてERROR=1となり8ビツトのバ
ースト誤りが検出可能となる。他の2つの任意の
ブロツクにわたる8ビツトバースト誤りについて
も同様であることが検証されている。 このようにして、1ビツト誤りの訂正、2ビツ
ト誤りの検出、4ビツトよりなるブロツク内の
2、3、4ビツト誤りの検出、さらに、2ブロツ
クにわたる8ビツトバースト誤りの検出が可能で
あることが説明された。 (f) 発明の効果 本発明の誤り訂正・検出装置によれば、従来技
術に比べ冗長ビツト長を増加させることなく、従
来技術では不可能であつた2ブロツクにわたる8
ビツトバースト誤りの検出も可能となるので、誤
り検出能力をより一層高めることができる。 4ビツト構成のメモリチツプにより構成された
記憶装置において、2チツプの故障、または2チ
ツプごとに設けられた共通回路の故障による8ビ
ツトバースト誤りの存在が検出されるので、記憶
装置のデータインテグリテイとハードウエアの信
頼度がより一層向上する。さらに、1ビツト、2
ビツト、または4ビツト構成のメモリチツプを用
い、8ビツトを単位とするメモリモジユールを記
憶装置の構成部品とする場合においても、該メモ
リモジユール内のバースト誤りや、2つの該メモ
リモジユールにわたる8ビツトバースト誤りも検
出することができるから、データのインテグリテ
イの確保と信頼度の向上に極めて有用である。 上述の本発明の誤り訂正・検出装置は、従来技
術と全く同一の金物量、符号化・復号化時間、信
頼度、コストで実現できるというすぐれた利点を
有する。さらに、既存の記憶装置を、より一層高
集積化されたメモリ素子で置換することによりコ
スト・パフオーマンスの改良を図ろうとする場
合、たとえば、64K語×1ビツト構成の64Kビツ
トメモリ素子で構成された記憶装置を256Kビツ
トのメモリ素子で置換しようとする場合に、
256K語×1ビツト構成のメモリ素子で置換える
と、SEC−DED符号による誤り訂正・検出装置
の使用は継続できるものの、記憶装置の最小容
量、増設容量の増大をまねくとともに、容量当り
のインタリーブ数の減少のため改良型記憶装置の
性能の低下となるという欠点がある。 一方、64K語×4ビツト構成のメモリ素子で置
換すると、最小容量、増設容量は既存記憶装置と
同一に保つことができるが、SEC−DED符号に
よる既存の誤り訂正・検出装置は、すでに述べた
ようにデータのインテグリテイと信頼度の確保の
観点より継続使用できない。かかる場合に、本発
明の誤り訂正・検出装置を用いれば、64K語×4
ビツト構成のメモリ素子に対しても、この改良に
伴う誤り訂正・検出装置の構成、時間仕様の手直
しなく同一の誤り訂正・検出装置により充分なデ
ータインテグリテイの保証と信頼度の確保が図れ
るという利点が享受できる。
【図面の簡単な説明】
第1図〜第3図は本発明による実施例のHマト
リクスの構成例を示す図、第4図は実施例の誤り
訂正回路の全体構成図、第5図は第1図図示のH
マトリクスを使用したときのチエツクビツト発生
回路の構成の一部分を示す図、第6図は第1図図
示のHマトリクスを使用したときのシンドローム
発生回路の構成の一部分を示す図、第7図は第1
図図示のHマトリクスを使用したときのシンドロ
ームデコード回路およびデータ訂正回路の構成の
一部分を示す図、第8図は第1図図示のHマトリ
クスを使用したときのエラー検出回路の構成の一
部分を示す図、第9図は第2図図示のHマトリク
スを使用したときのチエツクビツト発生回路の構
成の一部分を示す図、第10図は第2図図示のH
マトリクスを使用したときのシンドローム発生回
路の構成の一部分を示す図、第11図は第2図図
示のHマトリクスを使用したときのシンドローム
デコード回路およびデータ訂正回路の構成の一部
分を示す図、第12図は第2図図示のHマトリク
スを使用したときのエラー検出回路の構成の一部
分を示す図、第13図は第3図図示のHマトリク
スを使用したときのチエツクビツト発生回路の構
成の一部分を示す図、第14図は第3図図示のH
マトリクスを使用したときのシンドローム発生回
路の構成の一部分を示す図、第15図は第3図図
示のHマトリクスを使用したときのシンドローム
デコード回路およびデータ訂正回路の構成の一部
分を示す図、第16図は第3図図示のHマトリク
スを使用したときのエラー検出回路の構成の一部
分を示す図である。

Claims (1)

  1. 【特許請求の範囲】 1 0と1を元とし、 列ベクトル【式】i=1、2、…、18; j=1、2、…、4 4個よりなるブロツクベクトル18個より構成さ
    れるHマトリクス であつて、 (i) 全零ベクトルはない、 (ii) 列ベクトルは互いに異なる、 (iii) 1を1個だけ含む列ベクトル8個を含む、 (iv) 列ベクトルは1を奇数個含む列ベクトルであ
    る、 (v) ブロツクi内の4つの列ベクトルから3つの
    列ベクトルを選ぶすべての組合せについて、3
    つの列ベクトルからビツト対応の2を法とする
    加法により生成される1つの列ベクトルhAが式
    (100)のHマトリクスの列ベクトルと一致しな
    い、 即ち、 ここで、 i=1、2、…、18;j=1、2、…、4; p=1、2、…、18 (k、l、m)=(2、3、4)、(1、3、
    4)、(1、2、4)、(1、2、3) (vi) ブロツクi内の4つの列ベクトルからビツト
    対応の2を法とする加法により生成される1つ
    の列ベクトルhBが全零ベクトルでない、 即ち、 ここで、i=1、2、…、18 (vii) 2つのブロツクp、qからなる8個の列ベク
    トルからビツト対応の2を法とする加法により
    生成される1つの列ベクトルhCが、全零ベクト
    ルでない、 即ち、 ここで、p、q=1、2、…、18;p≠q を満たすように構成されたHマトリクスHに従つ
    て64ビツトの情報ビツトから8ビツトの冗長ビツ
    トを生成する手段と、該冗長ビツトと情報ビツト
    とより成る72ビツトの符号語を記憶装置に書き込
    む手段と、該記憶装置より該符号語を読み出す手
    段と、該72ビツトの符号語より上記Hマトリクス
    に従つて8ビツトのシンドロームを生成する手段
    と、該シンドロームより1ビツト誤りのビツト位
    置を表示する72ビツトのエラービツト信号を生成
    するシンドローム解読手段と、該エラービツト信
    号により上記72ビツトの符号語の1ビツト誤りを
    訂正する手段と、上記エラービツト信号のすべて
    の論理和と上記8ビツトのシンドロームとより2
    ビツト誤り、単一4ビツトブロツク誤り、および
    2ブロツク内の8ビツトバースト誤りの存在を判
    別する手段を含んで成る誤り訂正・検出装置。 2 0と1を元とし、 列ベクトル【式】i=1、2、…、10;j =1、2、…、4 4個より成るブロツクベクトル10個より構成さ
    れるHマトリクス であつて、 (i) 全零ベクトルはない、 (ii) 列ベクトルは互いに異なる、 (iii) 1を1個だけ含む列ベクトル8個を含む、 (iv) 列ベクトルは1を奇数個含む列ベクトルであ
    る、 (v) ブロツクi内の4つの列ベクトルから3つの
    列ベクトルを選ぶすべての組合せについて、3
    つの列ベクトルからビツト対応の2を法とする
    加法により生成される1つの列ベクトルhAが式
    (200)のHマトリクスの列ベクトルと一致しな
    い。 即ち、 ここで、 i=1、2、…、10;j=1、2、…、4; p=1、2、…、10 (k、l、m)=(2、3、4)、(1、3、
    4)、(1、2、4)、(1、2、3) (vi) ブロツクi内の4つの列ベクトルからビツト
    対応の2を法とする加法により生成される1つ
    の列ベクトルhBが全零ベクトルでない、 即ち、 ここで、i=1、2、…、10 (vii) 2つのブロツクp、qからなる8個の列ベク
    トルからビツト対応の2を法とする加法により
    生成される1つの列ベクトルhCが全零ベクトル
    でない、 即ち、 ここで、p、q=1、2、…、10;p≠q を満たすように構成されたHマトリクスHに従つ
    て32ビツトの情報ビツトから8ビツトの冗長ビツ
    トを生成する手段と、該冗長ビツトと情報ビツト
    とより成る40ビツトの符号語を記憶装置に書き込
    む手段と、該記憶装置より該符号語を読み出す手
    段と、該40ビツトの符号語より上記Hマトリクス
    に従つて8ビツトのシンドロームを生成する手段
    と、該シンドロームより1ビツト誤りのビツト位
    置を表示する40ビツトのエラービツト信号を生成
    するシンドローム解読手段と、該エラービツト信
    号により上記40ビツトの符号語の1ビツト誤りを
    訂正する手段と、上記エラービツト信号のすべて
    の論理和と上記8ビツトのシンドロームとより2
    ビツト誤り、単一4ビツトブロツク誤り、および
    2ブロツク内の8ビツトバースト誤りの存在を判
    別する手段を含んで成る誤り訂正・検出装置。 3 0と1を元とし、 列ベクトル【式】i=1、2、…、9; j=1、2、…、4 4個より成るブロツクベクトル9個と、 列ベクトル【式】i=10;j=1、2、 3 3個より成るブロツクベクトル1個とより構成
    されるHマトリクス であつて、 (i) 全零ベクトルはない、 (ii) 列ベクトルは互いに異なる、 (iii) 1を1個だけ含む列ベクトル7個を含む、 (iv) 列ベクトルは1を奇数個含む列ベクトルであ
    る、 (v) ブロツクi内の4つの列ベクトルから3つの
    列ベクトルを選ぶすべての組合せについて、お
    よび3つの列ベクトルからなる1つのブロツク
    について、3つの列ベクトルからビツト対応の
    2を法とする加法により生成される1つの列ベ
    クトルhAが式(300)のHマトリクスの列ベク
    トルと一致しない、 即ち、 ここで、 i=1、2、…、10;j=1、2、…、4 p=1、2、…、10 (k、l、m)=(2、3、4)、(1、3、
    4)、(1、2、4)、(1、2、3) (vi) ブロツクi内の4つの列ベクトルからビツト
    対応の2を法とする加法により生成される1つ
    の列ベクトルhBが全零ベクトルでない、 即ち、 ここで、i=1、2、…、9 (vii) 2つのブロツクp、qからなる8個の列ベク
    トルからビツト対応の2を法とする加法により
    生成される1つの列ベクトルhCが全零ベクトル
    でない、 即ち、 ここで、p、q=1、2、…、9;p≠q を満たすように構成されたHマトリクスHに従つ
    て32ビツトの情報ビツトから7ビツトの冗長ビツ
    トを生成する手段と、該冗長ビツトと情報ビツト
    とより成る39ビツトの符号語を記憶装置に書き込
    む手段と、該記憶装置より該符号語を読み出す手
    段と、該39ビツトの符号語より上記Hマトリクス
    に従つて7ビツトのシンドロームを生成する手段
    と、該シンドロームより1ビツト誤りのビツト位
    置を表示する39ビツトのエラービツト信号を生成
    するシンドローム解読手段と、該エラービツト信
    号により上記39ビツトの符号語の1ビツト誤りを
    訂正する手段と、上記エラービツト信号のすべて
    の論理和と上記7ビツトのシンドロームとより2
    ビツト誤り、単一4ビツトブロツク誤り、および
    2ブロツク内の8ビツトバースト誤りの存在を判
    別する手段を含んで成る誤り訂正・検出装置。
JP58250004A 1983-12-28 1983-12-28 誤り訂正・検出装置 Granted JPS60142430A (ja)

Priority Applications (11)

Application Number Priority Date Filing Date Title
JP58250004A JPS60142430A (ja) 1983-12-28 1983-12-28 誤り訂正・検出装置
CA000471002A CA1226368A (en) 1983-12-28 1984-12-24 Error correcting and detecting system
AU37138/84A AU550471B2 (en) 1983-12-28 1984-12-27 Error correction system
US06/686,815 US4631725A (en) 1983-12-28 1984-12-27 Error correcting and detecting system
KR1019840008616A KR900001228B1 (ko) 1983-12-28 1984-12-28 에러정정 및 검출장치
DE8484402758T DE3483310D1 (de) 1983-12-28 1984-12-28 Fehlerkorrektur- und detektionssystem.
BR8406792A BR8406792A (pt) 1983-12-28 1984-12-28 Sistema de deteccao e correcao de erros
EP84402758A EP0147336B1 (en) 1983-12-28 1984-12-28 Error correcting and detecting system
ES539201A ES8701395A1 (es) 1983-12-28 1984-12-28 Sistema de deteccion y correccion de errores de una unidad de memoria de procesado de datos.
ES550916A ES8706271A1 (es) 1983-12-28 1986-01-15 Sistema de correccion y deteccion de errores de una unidad de memoria de procesado de datos
ES550915A ES8706270A1 (es) 1983-12-28 1986-01-15 Sistema de correccion y deteccion de errores de una unidad de memoria de proceso de datos

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58250004A JPS60142430A (ja) 1983-12-28 1983-12-28 誤り訂正・検出装置

Publications (2)

Publication Number Publication Date
JPS60142430A JPS60142430A (ja) 1985-07-27
JPS6349245B2 true JPS6349245B2 (ja) 1988-10-04

Family

ID=17201412

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58250004A Granted JPS60142430A (ja) 1983-12-28 1983-12-28 誤り訂正・検出装置

Country Status (9)

Country Link
US (1) US4631725A (ja)
EP (1) EP0147336B1 (ja)
JP (1) JPS60142430A (ja)
KR (1) KR900001228B1 (ja)
AU (1) AU550471B2 (ja)
BR (1) BR8406792A (ja)
CA (1) CA1226368A (ja)
DE (1) DE3483310D1 (ja)
ES (3) ES8701395A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0697542B2 (ja) * 1985-05-14 1994-11-30 松下電器産業株式会社 インタ−リ−ブ回路
JPS6246357A (ja) * 1985-08-23 1987-02-28 Hitachi Vlsi Eng Corp 半導体記憶装置
JPS6250943A (ja) * 1985-08-30 1987-03-05 Hitachi Ltd 記憶装置
JPS63236416A (ja) * 1987-03-25 1988-10-03 Mitsubishi Electric Corp 符号化復号化方法
US4868829A (en) * 1987-09-29 1989-09-19 Hewlett-Packard Company Apparatus useful for correction of single bit errors in the transmission of data
US4961192A (en) * 1988-07-29 1990-10-02 International Business Machines Corporation Data error detection and correction
US5491702A (en) * 1992-07-22 1996-02-13 Silicon Graphics, Inc. Apparatus for detecting any single bit error, detecting any two bit error, and detecting any three or four bit error in a group of four bits for a 25- or 64-bit data word
US5517511A (en) * 1992-11-30 1996-05-14 Digital Voice Systems, Inc. Digital transmission of acoustic signals over a noisy communication channel
US5751744A (en) * 1993-02-01 1998-05-12 Advanced Micro Devices, Inc. Error detection and correction circuit
DE69317766T2 (de) * 1993-06-10 1998-07-30 Bull Hn Information Syst Fehlerkorrekturgerät für digitale Daten zur Korrektur von Einfachfehlern (sec), von Doppelfehlern (ded) und Vielfacheinzelbytefehlern (sbd) und zur Korrektur von Einzelbytefehlern ungerader Anzahl (odd sbc)
US5657331A (en) * 1995-03-13 1997-08-12 Samsung Electronics Co., Ltd. Method and apparatus for the generation of simple burst error correcting cyclic codes for use in burst error trapping decoders
JP3234130B2 (ja) * 1995-05-30 2001-12-04 三菱電機株式会社 誤り訂正符号復号化方法およびこの方法を用いる回路
US6463563B1 (en) 1999-11-30 2002-10-08 International Business Machines Corporation Single symbol correction double symbol detection code employing a modular H-matrix
KR20010057145A (ko) * 1999-12-18 2001-07-04 윤종용 Xor 코드, 이를 이용한 직렬 연접 부호기 및 복호기
US6675344B1 (en) * 2000-05-01 2004-01-06 Hewlett-Packard Development Company, L.P. Multiple ECC schemes to improve bandwidth
KR100429528B1 (ko) * 2002-01-23 2004-05-03 삼성전자주식회사 디지털 통신 방법 및 장치
US7596743B2 (en) 2005-09-28 2009-09-29 Ati Technologies Inc. Method and apparatus for error management
US8069377B2 (en) * 2006-06-26 2011-11-29 Micron Technology, Inc. Integrated circuit having memory array including ECC and column redundancy and method of operating the same
US8010864B2 (en) * 2006-10-26 2011-08-30 Analog Devices, Inc. Parameter setting with error correction for analog circuits
KR101497545B1 (ko) * 2008-09-12 2015-03-03 삼성전자주식회사 프리 페이지 검출 방법 및 장치와 이를 이용한 에러 정정 코드 디코딩 방법 및 장치
CN112216333B (zh) * 2020-09-30 2024-02-06 深圳市宏旺微电子有限公司 芯片测试方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3958220A (en) * 1975-05-30 1976-05-18 International Business Machines Corporation Enhanced error correction
US4107650A (en) * 1976-08-13 1978-08-15 The Johns Hopkins University Error correction encoder and decoder
JPS5848939B2 (ja) * 1977-12-23 1983-11-01 富士通株式会社 エラ−訂正処理装置
US4168486A (en) * 1978-06-30 1979-09-18 Burroughs Corporation Segmented error-correction system
CA1161565A (en) * 1980-06-20 1984-01-31 Yoichiro Sako Method of error correction
JPS58198935A (ja) * 1982-05-15 1983-11-19 Sony Corp デ−タ伝送方法
US4569050A (en) * 1983-01-14 1986-02-04 Honeywell Inc. Data communication system with fixed weight error correction and detection code

Also Published As

Publication number Publication date
ES8706270A1 (es) 1987-05-16
JPS60142430A (ja) 1985-07-27
EP0147336B1 (en) 1990-09-26
KR850004675A (ko) 1985-07-25
ES8706271A1 (es) 1987-05-16
ES550916A0 (es) 1987-05-16
CA1226368A (en) 1987-09-01
EP0147336A2 (en) 1985-07-03
ES539201A0 (es) 1986-11-16
KR900001228B1 (ko) 1990-03-05
DE3483310D1 (de) 1990-10-31
US4631725A (en) 1986-12-23
ES550915A0 (es) 1987-05-16
EP0147336A3 (en) 1987-08-26
BR8406792A (pt) 1985-10-29
AU550471B2 (en) 1986-03-20
ES8701395A1 (es) 1986-11-16
AU3713884A (en) 1985-07-04

Similar Documents

Publication Publication Date Title
US6453440B1 (en) System and method for detecting double-bit errors and for correcting errors due to component failures
US4402045A (en) Multi-processor computer system
US6018817A (en) Error correcting code retrofit method and apparatus for multiple memory configurations
JPS6349245B2 (ja)
US7278085B1 (en) Simple error-correction codes for data buffers
US6751769B2 (en) (146,130) error correction code utilizing address information
JP3325914B2 (ja) データ用誤り訂正検出方法及びコンピュータ・メモリ用 誤り検出回路
US4817095A (en) Byte write error code method and apparatus
US4569052A (en) Coset code generator for computer memory protection
US5768294A (en) Memory implemented error detection and correction code capable of detecting errors in fetching data from a wrong address
US5856987A (en) Encoder and decoder for an SEC-DED-S4ED rotational code
JPS5960654A (ja) エラ−訂正システム
JP2005202957A (ja) エラー訂正のためのデータの分割
US20030061558A1 (en) Double error correcting code system
US5751745A (en) Memory implemented error detection and correction code with address parity bits
US6393597B1 (en) Mechanism for decoding linearly-shifted codes to facilitate correction of bit errors due to component failures
US5761221A (en) Memory implemented error detection and correction code using memory modules
US5535227A (en) Digital information error correcting apparatus for single error correcting (SEC), double error detecting (DED), single byte error detecting (SBED), and odd numbered single byte error correcting (OSBEC)
US5491702A (en) Apparatus for detecting any single bit error, detecting any two bit error, and detecting any three or four bit error in a group of four bits for a 25- or 64-bit data word
RU2637426C1 (ru) Устройство хранения и передачи данных с обнаружением ошибок
RU2297030C2 (ru) Самокорректирующееся устройство хранения информации
RU2297032C2 (ru) Самокорректирующееся запоминающее устройство
RU2297034C2 (ru) Отказоустойчивое устройство хранения информации
RU2297035C2 (ru) Отказоустойчивое запоминающее устройство
RU175054U1 (ru) Устройство хранения и передачи данных с обнаружением одиночных и двойных ошибок