KR900001228B1 - 에러정정 및 검출장치 - Google Patents

에러정정 및 검출장치 Download PDF

Info

Publication number
KR900001228B1
KR900001228B1 KR1019840008616A KR840008616A KR900001228B1 KR 900001228 B1 KR900001228 B1 KR 900001228B1 KR 1019840008616 A KR1019840008616 A KR 1019840008616A KR 840008616 A KR840008616 A KR 840008616A KR 900001228 B1 KR900001228 B1 KR 900001228B1
Authority
KR
South Korea
Prior art keywords
bit
error
vectors
syndrome
bits
Prior art date
Application number
KR1019840008616A
Other languages
English (en)
Other versions
KR850004675A (ko
Inventor
모리유끼 다까무라
시게루 무까사
다까시 이비
Original Assignee
후지쓰 가부시끼가이샤
야마모도 다꾸마
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 후지쓰 가부시끼가이샤, 야마모도 다꾸마 filed Critical 후지쓰 가부시끼가이샤
Publication of KR850004675A publication Critical patent/KR850004675A/ko
Application granted granted Critical
Publication of KR900001228B1 publication Critical patent/KR900001228B1/ko

Links

Images

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)

Abstract

내용 없음.

Description

에러정정 및 검출장치
제1도 내지 제3도는 본 발명에 의한 패리터(Parity)검사 H-메트릭스의 구성예를 나타낸 도표들.
제4도는 본 발명에 의한 에러정정 및 검출장치의 제1실시예의 개통도.
제5도는 제4도의 검사비트의 논리회로도.
제6도는 제4도의 신드롬(Syndrome)발생회로의 논리회로도.
제7도는 제4도의 신드롬 해독회로 및 데이타 정정회로의 논리회로도.
제8도는 제4도의 에러검출의 논리회로도.
제9도는 본 발명에 의한 에러정정 및 검출장치의제2실시예의 개통도.
제10도는 제9도의 검사비트 발생회로의 논리회로도.
제11도는 제9도의 신드롬 발생회로의 논리회로도.
제12도는 제9도의 신드롬 해독회로 및 데이타 정정회로의 논리회로도.
제13도는 제9도의 에러검출회로의 논리회로도.
제14도는 본 발명에 의한 에러정정 및 검출장치의 제3실시예의 개통도.
제15도는 제14도의 검사비트 발생회로의 논리회로도.
제16도는 제14도의 신드롬 발생회로의 논리회로도.
제17도는 제14도의 신드롬 해독회로 및 데이타 정정회로의 논리회로도.
제18도는 제14도의 에러검출회로의 논리회로도.
본 발명은 에러점검 및 정정(error check and correction : ECC)부호를 사용하는 데이타의 에러정정 및 검출장치에 관한 것으로, 특히 1블록내의 1비트 에러를 정정하고 2비트에러, 3비트에러 및 4비트에러를 검출하며 또한 2블록내의 8비트 버어스트(burst) 블록에러를 검출하는 에러검사 및 정정(ECC)코드들을 이용하는 에러정정 및 검출장치에 관한 것이다.
데이타 보전성(integrity)을 확보하고 기억장치의 신뢰도를 개선하기 위해 ECC코드들을 이용하는 에러정정 및 검출장치들이 최근에 개발되었다.
ECC코드는 1950년 4월 밸시스템 기술지 29권 제2호 147-160페이지의 알.더블유.하밍의 "에러검출 및 에러정정 코드"에 기술된 하밍코드가 기원이 된다. 하밍코드는 1비트 에러를 정정하고 2비트에러를 검출하기 위해 사용되었으므로 "SEC-DED"코드라 칭하고 있다.
엠.와이.히아오(M. Y. HSIAO)는 해독속도를 향상시키는 한편 복수비트 에러의 검출속도를 개선하기 위해 하밍 SEC-DED코드의 개량을 제시했다(참조 : 1970년 7월 IBM J. RES. DEVELOP. 14권, 395-401페이지 "A Class of Optimal Minimum Odd-Weight-Column SEC-DED Codes").
이 "히아오"SEC-DED코드는 범용 대형 컴퓨터들에 지금까지 널리 사용되고 있다.
상술한 SEC-DED 코드는 기억장치의 데이타 보전성을 확보하고 그이 신뢰성을 개선하는데 많은 도움을 주었다. 왜냐하면 기억장치의 소자 즉, 메모리칩의 불량양태는
그러나, 메모리칩의 고집적화 기억장치의 고밀도화가 장족의 발전을 함에 따라 기억장치의 용량, 성능 및 집적 밀도면에서 메모리칩, 기판 및 모듈들을 1비트단위로 구성하는 것은 더 이상 실용성이 없음을 뜻하게 됐다. 현재 메모리칩이나 기판 및 모듈들을 4비트 또는 8비트 형태로 복수비트 형태로 구성되고 있다. 예를 들면 64K비트 메모리칩이 16K 워드×4비트들 또는 8K 워드×8비트들로 구성된다.
다수의 그러한 메모리칩들이 메모리기판이나 모듈상에 장치될 때 기판 또는 모듈을 또한 다수비트 형태를 취한다.
그러나 복수비트 형태의 메모리칩이나 기판 및 모듈들에 의해 구성된 기억장치에는 구성품들중 하나만 고장이 나도 데이타의 블록(럼프 : lump)에러가 발생할 가능성이 있다. 다시말하면, 한 블록의 비트들의 일부분이나 모두가 에러가 될 수도 있다. 기억장치의 데이타 보전성 및 신뢰성을 확보하기 위해 그러한 블록에러들을 검출하는 것이 중요하다. 여기서 "블록"이라함은 복수 비트형태를 뜻한다. 만일 "b"가 1블록을 형성하는 비트들의 수라하면 상술한 기억장치에서 b=4 또는 b=8이 된다.
전술한 것에 비추어 1비트 에러 정정용 단일 "b"비트 블록 에러 검출(SEC-SbBED) 코드 및 1비트 에러정정용, 2비트 에러검출용, 단일 "b"비트블록 에러검출(SED-DED-SbBED)용 코드들이 제안된 바 있다.
SEC-SbBED 코드는 1973년 3월 IEEE Trans. Comput. C-27권, 제3호 201-204페이지에서 보쎈, 창 및 첸이 발표한 "페캐이지 고장에 대한 에러정정 모드의 조치 및 발생"에 기술되어 있다. SEC-SbBED 코드에 의하면 검사비트(여분비트)의 수는 b+2 2 19 4 2 11
따라서 (39, 32) SEC-S4BED코드가 설정된다. SEC-DED-SbBED 코드는 1978년 5월 IEEE Trans. Comput. C-27권, 제5호 455-459페이지에 에스. 엠. 레디에 의해 발포된 "A Class of Linear Codes for Error Control in Byte-per-Card Organiged Digital Systems"와 1983년 6월 IEEE Trans. Comput. C-32권, 제6호 535-542페이지에 더닝과 바라나시에 의해 발표된 "Code Construction for Error Control in Byte Organiged Memory System"에 기술되어 있다. Reddy 코드에 의하면, i) 2≤b≤4 경우, b+「log2(r+1)」-1의 검사비트가 SEC-SbBED 코드에 필요하며 하나의 추가검사 비트가 SEC-DED-SbBED코드에 필요하다. 그리고, ii) b≥5 경우, b+「log2(5+1)」-1의 검사비트가 SEC-DED-SbBED에 필요하다.
그러므로, 레디코드에 의하면, b=4, r=18의 경우, (73, 64) SEC-DED-S4BED 코드가 설정된다. 만일 b=4, r=10의 경우 (40, 32) SEC-DED=S4BED코드가 설정된다.
다른 한편, 더닝과 바라나시 코드에 의하면, b+2 검사 비트가 SEC-SbBED코드2
(72, 64) SEC-DED-S4BED코드에 대해서는 1983년 5월 11에 공개된 아직 미심사중인 일본특허공개(공개) 소 58-78241에 기술되어 있다. 그러나 상술한 종래 공보들에는 1부호어의 2블록내의 8비트 버어스트 에러의 검출에 대한 기술이 없다. 그러므로 본 발명의 근본목적은 b=4일 경우 (72, 64) SEC-DED-S4BED-이중-4-비트블록 버어스트 에러검출(D4UED)코드와 동일한 코드를 사용하는 에러정정 및 검출장치를 제공하는데 있다.
본 발명의 다른 목적은 b=4일 경우(40, 32) SEC-DED-S4BED-D4UED코드와 동일한 코드를 사용하는 에러정정 및 검출장치를 제공하는데 있다.
본 발명의 또 다른 목적은 b=4일 경우, (39, 32) SEC-DED-S4BED-D4UED코드와 동일한 코드를 사용하는 에러정정 및 검출장치를 제공하는데 있다.
본 발명에 의한 SEC-DED-S4BED-D4UED의 검사비트수는 종래의 SEC-DED-S4BED코드의 수와 동일하다. 즉, 본 발명에 의한 7비트 또는 8비트의 검사비트가 있다. 본 발명에 의한 에러정정 및 검출장치는 1블록내의 1비트 에러(SEC)의 정정, 2비트에러(DED)의 검출 그리고 단일 4비트 블록에러(S4BED)의 검출이외에 2블록내의 8비트 버어스트 에러를 종래의 에러정정 및 검출장치의 부호화 및 해독시간 주기를 수정함이 없이 검출할 수 있다.
본 발명의 상술한 목적은 0과 1을 원소로하여, 다음과 같은 열백터
Figure kpo00001
4개로부터 이루어지는 블록벡터 18개로부터 구성되는 H매트릭스(100).
Figure kpo00002
···(100)이며, (i) 모두 "0"이 아니고, (ii) 열백터(column vector)는 서로 다르고, (iii) 1을 1개만 포함하는 백터 8개를 포함하고, (iv) 열백터는 1을 기수개 포함하는 열백터이며, (v) 블록 i 내의 4개의 열백터에서 3개의 열백터를 선정하는 모든 조합시킴에 관해서 3개의 열백터에서 비트대응의 2를 법으로 하는 (모듈로-2합)에 의해 생성되는 1개의 열백터 hA가 식(100)의 H매트릭스의 열백터와 일치하지 않음.
즉,
Figure kpo00003
여기서, 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는 모두 "0"백터가 아님.
즉,
Figure kpo00004
여기서, i=1,2,...,18 (vii) 2개의 블록 p,q로부터 이루어지는 8개의 열백터에서 비트대응의 2를 법으로 하는 가법에 의해 생성되는 1개의 열백터 hC는 모두 "0"백터가 아님.
즉,
Figure kpo00005
Figure kpo00006
여기서, p,q=1,2,...,18 : p≠q를 채우도록 구성된 H매트릭스 H에 따라서 64비트의 데이타비트에서 8비트의 여분비트를 생성하는 수단과, 기억장치와, 해당 여분비트와 데이타 비트로부터 이루어지는 72비트의 부호어를 상기 기억장치에 기입하는 수단과, 해당 기억장치로부터 해당 부호어를 판독하는 수단과, 해당 72비트의 부호어로부터 상기 H매트릭스에 따라서 8비트의 신드롬을 생성하는 수단과, 해당 신드롬 비트로부터 1비트 에러의 비트위치를 표시하는 72비트의 에러-비트신호를 생성하는 신드롬 해독수단과 해당 에러-비트신호에 의해 상기 72비트의 부호어의 1비트에러를 정정하는 수단과, 상기 상기 에러-비트신호의 모든 논리합과 상기 8비트의 신드롬에 의해 1블록내의 2비트에러, 3비트에러, 4비트에러와 2블록내의 8비트 버어스트에러의 존재를 판별하는 수단을 포함해서 이루어지는 에러정정 및 검출장치에 의해서 달성된다.
상술한 또 다른 목적은 0과 1을 원소로 하여, 다음과 같은 열백터
Figure kpo00007
4개로부터 이루어지는 블록벡터 10개로부터 구성되는 H매트릭스(200).
Figure kpo00008
...(200)이며, (i) 모두 "0"백터는 아니고, (ii) 열백터는 서로 다르고, (iii) 1을 1개만 포함한 열백터 8개로 포함하고, (iv) 열백터는 1을 기수개 포함한 열백터이며, (v) 블록 i 내의 4개의 열백터에서 3개의 열백터를 고르는 모든 조합에 관해서 3개의 열백터에서 비트대응의 2를 법으로 하는 가법에 의해 생성되는 1개의 열백터 hA가 식(200)의 H매트릭스의 열백터와 일치하지 않음.
즉,
Figure kpo00009
여기서, 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는 모두 "0"이 아님.
즉,
Figure kpo00010
여기서, i=1,2,...,10
(vii) 2개의 블록 i로부터 이루어지는 8개의 열백터에서 비트대응의 2를 법으로 하는 가법에 의해 생성되는 1개의 열백터 hC는 모두 "0"이 아님.
즉,
Figure kpo00011
여기서, p, q=1,2,...,10 : p≠q를 채울 수 있도록 구성된 H매트릭스 H에 따라서 32비트와 데이타 비트에서 8비트의 여분비트를 생성하는 수단과, 기억장치와, 해당 여분비트와 데이타 비트로부터 이루어지는 40비트의 부호어를 상기 기억장치에 기입하는 수단과, 해당 기억장치로부터 해당 부호어를 판독하는 수단과 해당 40비트의 부호어로부터 상기 H매트릭스에 따라서 8비트의 신드롬을 생성하는 수단과, 해당 신드롬으로부터 1비트 에러의 비트위치를 표시하는 40비트의 에러-비트신호를 생성하는 신드롬 해독수단과, 해당 에러-비트신호에 의해 상기 40비트의 부호어의 1비트 에러를 정정하는 수단과, 상기 에러-비트신호의 모든 논리합과 상기 8비트의 신드롬에 의해 1블록내의 2비트에러, 3비트에러 및 4비트에러와, 2블록내의 8비트 버어스트 에러의 존재를 판별하는 수단을 포함해서 이루어지는 에러정정 및 검출장치에 의해서 달성된다.
상술한 또 다른 목적은 0과 1을 원소로 해서, 다음과 같은 열백터
Figure kpo00012
4개로부터 이루어지는 블록 백터 9개와,
Figure kpo00013
3개로부터 이루어지는 블록벡터 1개로부터 구성되어지는 H매트릭스(300) :
Figure kpo00014
이며, (i) 모두 "0"백터가 아니고 (ii) 열백터는 서로 다르고, (iii) 1을 1개만 포함한 열백터 7개를 포함하고, (iv) 열백터는 1을 기수개 포함하는 열백터이며 (v) 블록 i내의 4개의 열백터에서 3개의 열백터를 고르는 모든 조합에 관해서 및 3개의 열백터로부터 이루어지는 1개의 블록에 관해서, 3개의 열백터에서 비트대응의 2를 법으로 하는 가법에 의해 생성되는 1개의 열백터 hA가 식(300)의 H매트릭스의 열백터와 일치하지 않음.
즉,
Figure kpo00015
여기서 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개의 열백터 hS는 모두 "0"백터가 아님.
즉,
Figure kpo00016
여기서, i=1,2,......,9
(vii) 2개의 블록 p,q로부터 이루어지는 3개의 열백터에서 비트대응의 2를 법으로 하는 가법에 의해 생성되는 1개의 열백터 hC는 모두 "0"백터가 아님.
즉,
Figure kpo00017
여기서, p,q=1,2,......,9 : p≠q를 채울 수 있도록 구성된 H매트릭스 H에 따라서 32비트의 데이타 비트에서 7비트의 여분비트를 생성하는 수단과, 메모리장치와, 해당 여분비트와 데이타 비트로부터 이루어지는 39비트의 부호어를 상기 기억장치에 기입하는 수단과, 해당 기억장치로부터 해당 부호어를 판독하는 수단과, 해당 39비트의 부호어를 상기 H매트릭스에 따라서 7비트의 신드롬을 생성하는 수단과, 해당 신드롬으로부터 1비트 에러의 비트위치를 표시하는 39비트의 에러-비트신호를 생성하는 신드롬 해독수단과, 해당 에러-비트신호에 의해 상기 39비트의 부호어의 1비트 에러를 정정하는 수단과, 상기 에러-비트신호의 모든 논리합과 상기 7비트의 신드롬에 의해 1블록내의 2비트에러, 3비트에러 및 4비트에러와 2블록내의 8비트 버어스트 에러의 존재를 판별하는 수단을 포함해서 이루어지는 에러정정 및 검출장치에 의해서 달성된다.
이하 본 발명의 양호한 실시예들을 첨부된 도면들을 참조하여 설명하면 다음과 같다.
본 발명에 의한 부호구성론에 사용된 파라메터들을 정의하면 다음과 같다. b : 1블록내의 비트수, r : 1부호이내의 블록수, n : 1부호어내의 비트수, c : 1부호어내의 검사(여분)비트수, k : 1부호어내의 데이타 비트수.
그러므로, n=br=c+r이고, 공지된 바와같이 선형 바이나리 에러정정 코드는 패리티검사 H-매트릭스에 의해 표현될 수 있다. 패리티검사 H-매트릭스는 0과 1을 원소로 하는 C-행(row), n-열 매트릭스로 주어진다. 즉
Figure kpo00018
식(1)의 H매트릭스는 여유도를 추가하는 규칙 또는 "법칙"을 정하는 이유이며, 행수는 검사 비트수에 대응하며, 열수는 부호어길이 즉, 1부호어내의 비트수에 대응한다. 여기서 1부호어는 T=T(t1,t2,···, tn)으로 정의되며, 이때,
HTt=0 ···················(2)
식(2)는 부호화하는 규칙을 정의한다. t=변수이다.
그밖에, 만일 검사된 부호어는 R=R(r1,r2,···,rn)으로서 정의되며, 에러 패턴위치는 E=E(e1,e2,···,en)으로서 정의된다. 이때,
Figure kpo00019
신드롬S는 다음식과 같이 식(2)로부터 나온다.
Figure kpo00020
그러므로 s≠0일 경우, 에러가 발생되지 않는 한편, S=0일 경우 에러가 발생된다는 것이다. 또한 에러는 식(4)로부터 나온 T=R
Figure kpo00021
E에 의해 정정딘다. 예를들면 1비트 에러에 관해서는 비트위치 1에 대한 신드롬 S 는 H-매트릭스의 1번째 열에 의해 주어진
본 발명에 의한 H-매트릭스의 열백터(vector)는 다음조건(i) 내지 (vii)를 만족시켜야만 한다.
(i) 모두 "0"백터가 아님.
(ii) 모든 열백터는 상호 다르다.
(iii) "1"을 1개만 갖는 열백터들의 수는 단 C개 있다.
(iv) 각 열백터는 "1"의 기수개 포함하는 열백터이다.
(v) 어떤 블록내의 4개의 열백터들의 ( ) 조합중에서 3개의 열백터들의 비트들의 모듈로(modulo)-2합에 의해 얻은 1개의 열백터는 H-매트릭스의 열백터와 일치하지 않는다.
(vi) 어떤 블록내의 4개의 열백터들 중 비트들의 모듈로-2합에 의해 얻은 1개의 열백터는 모두 "0"백터가 아니다.
(vii) 어떤 두 블록들내의 8개의 모듈로-2합에 의해 얻은 1개의 열백터는 모두 "0"백터가 아니다.
조건들 (i),(ii),(iii)와 (iv)는 앰, 와이, 히아오 이론에 의한 SEC-DED 코드에 의해 만족된다. 그밖에 3개의 기수가중 백터(Odd-Weight-Vector)들의 모듈로-2합은 항상 기수-가중 백터이기 때문에 이 모듈로-2합은 모든 "0"백터와 결코 동일하지 않다. 그러므로, 만일 조건(v)가 만족된다면, 어떤 블록내의 3비트 에러가 검출될 수 있다. 또한 4개의 기구가중 백터들의 모듈로-2합이 항상 모든 "0"백터를 포함하는 우수 가중 백터이기 때문에 만일조건(Ⅵ)가 만족될 경우 블록내의 4비트 에러가 검출될 수 있다.
또한 8개의 기수가중 백터들의 모듈로-2합이 모든 "0 백터를"포함하여 항상 8개
이제 (i) 내지 (vii)의 조건을 만족시키는 열백터들의 결정에 대해 설명한다. 기수가중 열백터들의 수는 아래와 같이 주어진다.
Figure kpo00022
여기서 λ는 C보다 크지 않은 기수이다. C=8일 경우에 기수가중 열백터들의 수는 아래와 같다.
Figure kpo00023
C=7일 경우에 기수가중 열백터들의 수는 아래와 같다.
Figure kpo00024
(i),(ii),(iii)와 (iv)의 조건에 대해서는 기수가중 열백터들 중 어느것이나 사용될 수 있다. 그러나 H-매트릭스내의 "1"의 총수가 최소이기 때문에 예를들면 72기수가중 열백터들의 c=8의 경우에 순서적으로 조합
Figure kpo00025
로부터 선택되며, 그리고 예를들어 39 기수가중 열백터들은 c=7일 경우에 순차적으로 조합
Figure kpo00026
Figure kpo00027
으로부터 선택될 수 있다.
H-매트릭스내의 "1"의 총수가 최소일 때 검사비트 발생회로와 신드롬 발생회로(
따라서, 조건(i) 내지 (iv)을 만족시키는 최소의 H-매트릭스가 설정된다. 그 다음, 결국, 설정된 열백터들이 모든 조건들(v),(vi),(vii)를 만족시키는가가 확인된다. 만일 열백터가 이러한 조건들을 만족시키지 못할 경우 그러한 열백터는 다른 블록의 한 열백터 또는 최소의 H-매트릭스내의 다른 열백터와 교환된다. 그러한 교환방법은 H-매트릭스의 모든 열백터들이 그 조건들(v),(vi),(vii)를 만족시킬때까지 계속된다.
컴퓨터를 사용하여 교환방법을 수행하는 것이 가장 효과적이다.
본 발명에 의한 코드의 H-매트릭스의 예들이 제1,2 및 3도에 도시되어 있다. 즉, 제1도는 (72,64)SEC-DED-S4BED-D4UED코드의 H-매트릭스를 나타내며, 제2도는 (40,32)SEC-DED-S4BED-D4UED코드의 H-매트릭스를 나타내며, 제3도는 (39,32)SEC-DED-S4BED-D4UED코드의 H-매트릭스를 나타낸다.
제4도에는 제1도의 H-매트릭스를 이용하는 본 발명의 일실시예가 도시되어 있다. 참조번호 1은 중앙처리 유니트(CPU, 도시안됨)과 멀티플렉서 2간에 연결되어 있는 64비트 기입데이타라인을 나타낸다. 또한 멀티플렉서 2에 연결된 것은 정정된 메모리 판독데이타라인 18이다. 멀티플렉서 2는 기입데이타라인 1과 정정된 메모리 판독데이타라인 18을 합성하여 그들 중 하나를 검사비트 발생회로 4와 기입데이타 레지스터 6에 연결된 64비트 기입데이타라인 3에 연결시킨다. 기입데이타 레지스터 6은 또한 8비트 검사비트라인 5를 통해 검사비트 발생회로 4로부터 8개의 검사비트들을 수신한다. 64비데이타 비트와 8검사비트에 의해 형성된 72비트 부호어는 기억장치 7에 기입되는 한편, 기억장치 7내에 기억된 부호어는 판독되어 판독데이타 레지스터 8로 전송된다. 판독데
메모리 기입/판독 제어회로 19는 멀티플렉서 2, 기입데이타 레지스터 6, 판독데이타 레지스터 8 등을 제어한다. 기입모드동안 CPU로부터 전송된 64비트 기입데이타는 멀티플렉서 2를 통해 검사비트를 C0~C7(8비트)를 발생시키는 검사비트 발생회로 4로 전송된다. 이 검사비트들과 기입데이타는 기입데이타 레지스터 6을 통해 기억장치 7내에 기입된 72비트 부호어를 발생시키도록 조합된다. 따라서 기입동작이 완료된다.
그다음, 판독모드동안 기억된 부호어의 72비트는 판독되어 판독데이타 레지스터 8내에 임시 기억된다. 이 부호어의 데이타 비트와 검사비트가 신드롬 발생회로 10으로 전송되는 반면, 데이타 비트들만은 데이타 정정회로 17로 전송된다. 신드롬 발생회로 10에는 검사비트 발생회로 4가 검사비트들을 발생시키는 것과 동일한 방식으로 검사비트들이 판독데이타로부터 발생된다. 이 검사비트들은 판독검사비트들과 비교되어 8신드롬 비트들 S0~S7을 발생시킨다. 비교결과 만일 신드롬 비트들 S0~S7의 비트들이 모두 "0"일 경우 에러는 발생하지 않는 반면 만일 하나이상의 신드롬 비트가 "1"일 경우 에러발생이 검출될 수 있다.
신드롬 비트들 S0~S7은 신드롬 해독회로 12로 전송된다. 신드롬 해독회로 12에서 신드롬 비트 S0~S7은 디코오더로 입력된다. 만일, 1비트 에러가 발생될 경우 이 디코델는 이 에러의 위치를 나타내는 출력을 발생시킨다. 이 출력은 판독데이타 레지스터 8로부터 전송된 판독데이타의 에러비트를 반전시키는 데이타 정정회로 17로 전송된다.
데이타 정정회로 17에 의해 정정된 데이타 비트는 한편 CPU로 전송되고 다른 한편 기억장치 7에 재기입시키기 위해 멀트플랙서 2로 귀환된다. 그러한 재기입 동작은 회로 19가 에러 검출회로 13으로부터 1비트 에러신호 SBE를 수신할 때 메모리 기입/판독 제어회로 19에 의해 수행된다.
1비트 에러들이나 2비트 에러들을 분류하기 위해 에러비트 위치와 신드롬 비트들 S0~S7을 나타내는 신호는 정정이 수행될 수 있는가를 판정하는 에러 검출회로 13으로 전송된다. 그 결과 CPU로 전송된다. 또한 1비트 에러가 검출될 때 정정된 부호어는 상술한 바와 같이 메모리 기입/판독 제어회로 19에 의해 기억장치 7로 재기입된다.
본 실시예에서, 판독데이타내의 검사비트들의 1비트 에러는 데이타 정정회로 17내에서 정정되지 않음을 주목해야 한다.
검사비트 발생회로 4를 제5도를 참조하여 설명한다. 이 도면의 각 게이트는 익스클루시브 오아회로이다. 검사비트 C0는 제1도에 도시된 H-매트릭스 제1행의 "1"원소들에 대응하는 데이타 비트들의 모듈로-2 합에 의해 발생된다. 즉, 검사비트 C0는 데이타 비트들 D01, D08, D12~D15, D17, D23, D25, D27, D35, D39~D46, D50, D52, D57, D58, D61 및 D62의 모듈로-2합에 의해 발생된다. 마찬가지로 검사비트 C1은 제1도에 도시된 H-매트릭스의 제2행의 "1"원소들에 대응하는 데이타 비트들의 모듈로-2합에 의19""
신드롬 발생회로 10을 제6도를 참조하여 설명한다. 이 도면의 각 게이트 역시 익스클루시브 오아회로이다. 신드롬 비트 S0는 검사비트 C0를 포함하여 제1도에 보인 H-매트릭스의 제1행의 "1"원소들에 대응하는 데이타 비트들의 모듈로-2합에 의해 발생된다. 즉, 신드롬 비트 S0는 데이타 비트 D01, D08, D12~D15, D17, D23, D25, D27, D33, D35, D39~D46, D50, D52, D57, D58, D61, D62 및 검사비트 C0의 모듈로-2합에 의해 발생된다. 마찬가지로 신드롬 비트 S1은 거사비트 C1을 포함하여 제1도에 보인 H-매트릭스의 제2행의 "1"원소들에 대응하는 데이타 비트들의 모듈로-2합에 의해 발생된다. 즉, 신드롬 S1은 데이타 비트들 D02, D03, D06, D08~D13, D17, D19, D21, D26~D28, D31, D37, D38, D40, D43, D49, D51, D52, D54, D55, D60 및 검사비트 C1의 모듈로-2합에 의해 발생된다. 또한 신드롬 비트 S7은 검사비트 C7을 포함하여 제1도에 도시된 H-매트릭스의 제8항의 "1"원소들에 대응하는 데이타 비트들의 모듈로-2합에 의해 발생된다. 즉, 신드롬 비트 S7은 데이타 비트들 D02, D07, D11, D13, D16, D20, D21, D24, D25, D29∼D32, D35∼D39, D44, D48, D51, D55, D56, D57, D61, ""
만일, 판독 부호어에서 에러가 발생되지 않을 경우, 신드롬 비트 S0~S7은 모두 "0"이다. 즉, 신드롬은 모두 "0"백터이다. 이와 반대로, 만일 하나이상의 에러가 발생될 경우, 신드롬 비트 S0~S7중 적어도 하나는 "1"이다. 즉, 신드롬은 모두 "0"백터가 아니다.
만일, 제1 데이타 비트 D01이 에러일 경우 그때 신드롬 비트 S0~S7은 제1도에 보인 H-매트릭스의 제1열인(10100100)이다. 즉, 신드롬 비트 S0~S7은 1비트 에러의 위치를 나타낸다.
신드롬 검출회로 12와 데이타 정정회로 17를 제7도를 참조하여 설명한다. 제7도에서 신드롬 해독회로 12는 데이타 비트 D01~D64와 검사비트 C0~C7에 대응하는 8입력 게이트회로들 1201~1272를 포함한다. 각각의 8입력 게이트회로는 디코오더로서 작용한다. 그러한 검사비트 에러는 데이타 비트들의 1비트 에러에 대한 재기입 동작이 수행될 때 검사비트들의 재생에 의해 결정된다.
데이타 정정회로 17은 64데이타 비트들에 대응하는 64익스크루시브오아회로들 1701~1764를 포함한다. 만일 신드롬 비트들 S0~S7(101001000)이 신드롬 해독회로 12에 인가될 경우 신드롬 해독회로 12의 게이트회로 1201은 에러비트의 위치가 데이타
에러 검출회로 13을 이제 제8도를 참조하여 설명한다. 제8도에서, 참조번호 1301~1310은 8입력 오아회로를 나타내며, 1311은 9입력 오아회로, 1312는 두 입력 게이트회로, SBE는 1비트 에러신호 그리고 MBE는 복수비트 에러신호를 각각 나타낸다.
1비트 에러가 발생되면 에러비트신호들 EB01~EB64 와 EBC0~EBC7중 단 하나만이 고(high)레벨이 된다. 결과적으로 오아회로들 1301~1309중 단 하나만이 고레벨 신호를 발생시키며 그에 따라 오아회로 1311은 1비트 에러신호 SBE를 발생시키는 한편, 게이트회로 1312는 복수비트 에러신호 MBE를 발생시키지 않는다.
특수한 복수비트 에러가 발생될 경우, 오아회로 1311은 1비트 에러신호 SBE를 발생시키지 않는 한편, 게이트회로 1312는 복수비트 에러신호 MBE를 발생시킨다. 그러한 특수한 복수비트 에러를 이제 설명한다.
만일 D01 및 D02와 같은 2개 데이타 비트가 동시에 에러일 경우 신드롬 비트들 S0~S7은 (11100001)이다. 즉, 신드롬은 우수가중 백터이다. 그밖에 2개 데이타 비트들에 대응하는 H-매트릭스의 그러한 2개 열백터는 상호 다르기 때문에 신드롬은 모두 "0"백터가 아니다. 그러므로 신드롬은 열백터들의 기수가중 백터들인 H-매트릭스의 어떠한 열백터들과도 일치하지 않는다. 결과적으로 이 신드롬은 신드롬 해독회로 12의 게이트회로들 1201~1272에 의해 해독될 수 없으므로 결국 에러비트신호들 EB01~EB64와 EBC0~EBC7은 저레벨에 있는다. 따라서 1비트 에러신호 SBE은 저레벨에 있는다. 이""
만일 D01, D02 및 D03과 같은 1블록내의 3개 데이타 비트들이 동시에 에러일 경우 신드롬 비트 S0~S7은 (10101011)이다. 즉, 신드롬 기수가중 백터이다. 그러나 이 경우에 상술한 조건(v)에 의하면 이 신드롬은 H-매트릭스의 어떤 열백터들과도 일치하지 않는다. 결과적으로, 이 신드롬은 신드롬 해독회로 12의 게이트회로 1201~1271에 의해 해독될 수 없으므로 결국, 모든 에러비트신호들 EB01~EB64와 EBC0~EBC7은 저레벨에 있는다. 따라서, 1비트 에러신호 SBE은 저레벨에 있는다. 이와 반대로 신드롬은 모두 "0"백터가 아니기 때문에 오아회로 1310은 신호 ERROR를 발생시키며, 그에 의해 게이트회로 1312는 고레벨에서 복수비트 에러신호 MBE를 발생시킨다. 따라서 1블록내의 3개 비트 에러가 검출될 수 있다.
만일 D01, D02, D03 및 D05와 같은 1블록내의 4개 데이타 비트들이 동시에 에어일 경우, 신드롬 비트 S0 내지 S7은 (10011001)이다. 즉, 신드롬은 우수가중 백터이다. 그밖에 상술한 조건(vi)에 의하면 신드롬은 모두 "0"백터가 아니다. 그러므로 신드롬은 일백터가 기수가중 백터들인 H-매트릭스의 어떤 열백터들과도 일치하지 않는다. 결과적으로 이 신드롬은 또한 신드롬 해독회로 12의 어떤 게이트회로들 1201~1272에 의해서도 해독될 수 없으므로 결국 모든 에러비트신호들 EB01~EB64 와 EBC0~EBC7은 저레벨에 있는다. 따라서 1비트 에러신호 SBE는 저레벨에 있다. 이와 반대로, 신드롬이 모두 "0"백터가 아니기 때문에 오아회로 1310은 신호 ERROR을 발생시키며 그에 의해 게이트회로 1352는 고레벨에서 복수비트 에러신호 MBE를 발생시킨다. 따라서, 한 블
만일 2개 블록들내의 D01~D04과 C1, D62~D64와 같은 8데이타 비트들이 동시에 에러일 경우, 신드롬 비트 S0~S7은 (01101010)이다. 즉, 신드롬은 우수가중 백터이다. 그밖에 상술한 조건(vii)에 의하면 신드롬은 모두 "0"백터가 아니다. 그러므로 신드롬은 열백터들이 기수가중 백터들인 H-매트릭스의 어떤 열백터들과도 일치하지 않는다. 결과적으로, 이 신드롬은 또한 신드롬 해독회로 12의 어떤 게이트회로들 1201~1272에 의해서도 해독될 수 없으므로 결국 모든 에러비트신호들 EB01~EB64와 EBC0~EBC7은 저레벨에 있다. 따라서 단일비트 에러신호 SBE는 저레벨에 있다. 이와 반대로 신드롬은 모두 "0"백터가 아니기 때문에 오아회로 1310은 신호 ERROR를 발생시키며, 그에 의해 게이트회로 1312는 고레벨에서 복수비트 에러신호 MBE를 발생시킨다. 따라서, 2블록내의 8비트 버어스트 에러가 검출될 수 있다.
따라서 1비트 에러를 정정하고 1블록내의 2비트 에러, 3비트 에러 그리고 4비트를 갖는 1블록내의 4비트 에러를 검출하는 것이 가능하다. 또한 2블록들내의 8비트 버어스트 에러를 검출하는 것도 가능하다.
제9도는 제2도의 H-매트릭스를 사용하는 본 발명의 제2실시예를 나타낸 것으로 제4도의 것과 동일한 소자들은 동일한 참조번호들로 나타낸다. 제9도에서 기입데이타라인 3, 디코오딩라인 15, 판독데이터라인 16가 정정된 메모리 판독데이터라인18은 32비트 단위이다.
또한 검사비트라인 5, 판독검사비트라인 9, 그리고 신드롬라인 11은 8비트단위이다. 그러므로, 검사비트 발생회로 4', 신드롬 발생회로12', 에러 검출회로13' 그리고 데이타정정회로17'는 제4도의 대응소자들과 약간 다르다.
이제 검사비트 발생회로 4'를 제10도를 참조하여 설명한다. 이 도면의 각 게이트는 익스클루시브 오아회로이다. 검사비트 C0는 제2도에 보인 H-매트릭스의 제1행의 "1"원소들에 대응하는 데이타 비트들의 모듈로-2할에 의해 발생된다. 즉, 검사비트 C0는 데이타 비트들 D04, D07∼D09, D13, D15, D18, D19, D23, D25, D30 및 D31의 모듈로 -2합에 의해 발생된다. 마찬가지로 검사비트 C1은 제2도에 보인 H-매트릭스의 제2행의 "1"원소들에 대응하는 데이타 비트들의 모듈로 -2할에 의해 발생된다. 즉, 검사비트 C1은 데이타 비트들 D02, D05, D10, D13, D14, D17, D20, D21, D24, D25, D28 및 D32의 모듈로-2합에 의해 발생된다. 또한 검사비트 C7은 제2도에 보인 H-매트릭스의 제8행의 "1"원소들에 대응하는 데이타 비트들의 모듈로 -2합에 의해 발생된다. 즉, 검사비트 C7은 데이타 비트들 D03, D06, D10, D11, D18, D19, D22, D26∼D29 및 D32의 모듈로 -2합에 의해 발생된다.
신드롬 발생회로 10'를 제11도를 참조하여 설명한다. 이 도면의 각 게이트는 또한 익스클루시브 오아회로이다. 신드롬 비트 S0는 제2도에 보인 H-매트릭스의 제1행의 "1"원소들에 대응하는 데이타 비트들의 모듈로 -2합에 의해 발생된다. 즉, 신드롬 비트 S0는 데이타 비트들 D04, D07∼D09, D13, D15, D18, D19, D23, D25, D30 및 D31과 검사비트 C0의 모듈로 -2합에 의해 발생된다. 마찬가지로 신드롬 비트 S1은 제2도에 보인 H-매트릭스의 제2행의 "1"원소들에 대응하는 데이타 비트의 모듈로 -2합 의해 발생된다. 즉, 신드롬 비트 S1은 데이타 비트들 D02, D05, D10, D13, D14, D17, D20, D21, D24, D25, D28 및 D32 그리고 검사비트 C1에 의해 발생된다. 또한 신드롬 비트 S7은 제2도에 보인 H-매트릭스의 제8행의 "1"원소들에 대응하는 데이타 비트들의 모듈로 -2합에 의해 발생된다. 즉, 신드롬 비트 S7은 데이타 비트들 D03, D06, D10, D11, D18,
만일, 판독 부호어내에서 에러가 발생할 경우 신드롬 비트들 S0∼S7은 모두 "0"이다. 즉, 신드롬은 모두 "0"백터이다. 이와는 대조적으로 만일 하나 이상의 에러가 발생될 경우, 신드롬 비트들 S0∼S7중 적어도 하나가 "1"이다. 즉, 신드롬은 모두 "0"백터가 아니다.
만일 제1데이타 비트 D01이 에러일 경우 이때 신드롬 비트 S0∼S7은 모두 "0"이다. 즉, 신드롬은 모두 "0"벡터이다. 이와는 대조적으로 만일 하나이상의 에러가 발생될 경우, 신드롬 비트들 S0~S7중 적어도 하나가 '1"이다. 즉, 신드롬은 모두 "0"벡터가 아니다.
만일 제1데이타 비트 D01이 에러일 경우 이때 신드롬 비트 S0~S7은 제2도에 보인 H-매트릭스의 제1열인 (00100110)이다. 즉, 신드롬 비트 S0∼S7은 단일비트 에러의 위치를 나타낸다.
이제 신드롬 해독회로 12'와 데이타 정정회로 17'를 제12도를 참조하여 설명한다. 제12도에서 신드롬 해독회로 12'는 데이타 비트 D01∼D32와 검사비트들 C0∼C7에 대응하는 8입력 게이트회로들 1201'∼1240'를 포함한다. 8입력 게이트회로들의 각각은 디코오더로서 작용한다. 데이타 정정회로 17'는 32개 데이타 비트 D01∼D32에 역시 대응하는 32익스클루시브 오아회로들 1701'∼1732'를 포함한다. 만일 신드롬 비트 S0∼S7(00100110)이 신드롬 해독회로 12'에 인가될 경우 신드롬 해독회로 12'의 게이트회로 1201'는 에러비트의 위치가 데이타 비트 D01에 대응하는 제1열임을 나타내는 에러비트신호 EB01을 발생시켜 판독 데이타 레지스터 8로부터의 데이타 MRD01을 반전시켜 정정동작을 수행한다. 따라서, 정정된 데이타MCRD01이 발생된다. 그러한 정정
이제 에러검출회로 13'를 제13도를 참조하여 설명한다. 제13도에서 표시번호 1301'∼1306'은 8입력 오아회로들을 나타내며 1307'는 5입력 게이트회로, 1308'는 2입력 게이트회로, SBE는 1비트 에러신호 그리고 MBE는 복수비트 에러신호를 각각 나타낸다.
특수 복수비트 에러가 발생될 때 오아회로 1307'는 1비트 에러신호 SBE를 발생시키지 않는 반면 게이트회로 1308'는 복수비트 에러신호 MBE를 발생시킨다.
그러한 특수복수 비트에러를 이제 설명한다. 만일 D01 및 D02과 같은 두 데이타비트들이 동시에 에러일 경우 신드롬 비트 S0∼S7은(01110010)이다. 즉, 신드롬은 8가중 백터이다. 그밖에 두 데이타비트에 대응하는 H-매트릭스의 2개 얼백터들은 서로 다르기 때문에 신드롬은 모두 "0"백터가 아니다. 그러므로 신드롬은 열백터들이 기수가중 백터들인 H-매트릭스의 어떤 열백터들과도 일치하지 않는다. 결과적으로 이 신드롬은 신드롬 해독회로12'의 어떤 게이트회로들 1201'∼1240'에 의해서라도 해독될 수 없으므로 결국 모든 에러비트 신호들 EB01∼EB32와 EBC0∼EBC7은 저레벨에 있다. 따라서 1비트 에러신호 SBE는 저레벨에 있다. 이와 대조적으로 신드롬은 모두 "0"백터가 아니기 때문에 오아회로 1306'는 신호 "에러(오차)"를 발생시키며 그에 따라 게이트 회로 1308'는 고레벨에서 볼 수 있는 비트에러 신호 MBE를 발생시킨다. 따라서 2개 비트에러가 검출될 수 있다.
만일, D01, D02 및 D03와 같은 1블록내의 3개의 데이타 비트들이 동시에 에러일 경우 신드롬 비트들 S0∼S7은 (01011011)이다. 즉, 신드롬은 기수가중 백터이다. 그""
만일 D01, D02, D03, D04와 같은 1블록내의 4개 데이타비트가 동시에 에러일 경우 신드롬 비트 S0 내지 S7은(11010001)이다. 즉, 신드롬은 8가중 백터이다. 그밖에 상술한 조건(vi)에 의하면 신드롬은 모두 "0"백터가 아니다. 그러므로, 신드롬은 열백터들이 기수가중 백터들인 H-매트릭스의 어떤 열백터들과도 일치하지 않는다. 결과적으로, 이 신드롬 역시 신드롬 해독회로12'의 어떤 게이트회로들 1201'∼1240'에 의해서도 해독될 수 없으므로, 결국 모든 에러 비트 신호들 EB01∼EB32와 EBC0∼EBC7은 저레벨에 있다. 따라서 1비트에러신호 SBE는 저레벨에 있다. 이와 반대로, 신드롬은 모두 "0"백터가 아니기 때문에 오아회로 1305'는 신호 ERROR를 발생시키며, 그에 따라 게이트 회로 1307'는 고레벨에서 복수비트 에러신호 MBE를 발생시킨다. 따라서 1블록내의 4개 비트에러가 검출될 수 있다.
만일, 두 임의의 블록들내의 D01∼D08와 같은 8데이타 비트들이 동시에 에러일 경우, 신드롬 비트들 S0∼S7은(10011100)이다. 즉, 신드롬은 우수가중 백터이다. 그밖에 상술한 조건(vii)에 의하면, 신드롬은 모두 "0"백터가 아니다. 그러므로 신드롬은 열백터들이 기수가중 백터들인 H-매트릭스의 어떤 열백터들과도 일치하지 않는다. 결과적""
따라서 1비트 에러를 정정하고, 또한 2비트 에러, 블록내의 3비트 에러, 그리고 4비트를 갖는 1블록내의 4비트 에러를 검출하는 것이 가능하다. 또한 두 블록들내의 8비트 버어스트 에러를 검출하는 것도 가능하다.
제14도에는 제3도의 H-매트릭스를 사용하는 본 발명의 제3실시예가 도시되어 있다. 여기서 제4도에서와 동일 소자들은 동일한 표시문자로 나타낸다. 제14도에서 기입데이타 라인 3, 디코오딩 라인 15, 판독데이터 라인 16, 그리고 정정된 메모리 판독 데이타라인 18은 32비트 단위로 되어 있다. 또한 검사비트 라인 5, 판독검사 비트라인 9와 신드롬라인 11은 7비트 형태로 되어 있다. 그러므로 검사비트 발생회로 4'', 신드롬 발생회로 12'',에러 검출회로 13'' 그리고 데이타 정정회로 17''는 제4도의 대응소자들과 약간 다르다.
이제 검사비트 발생회로 4''를 제15도를 참조하여 설명한다. 이 도면의 각 게이트는 익스클루시크 오아게이트이다. 검사비트 CO는 제3도에 보인 H-매트릭스의 제1행의 "1"원소들에 대응하는 데이타비트들의 모듈로 -2합에 의해 발생된다. 즉, 검사비트 CO는 데이타 비트들 D01, D06, D08, D09, D12, D14∼D17, D20, D22, D27, D30 및 D31의 모듈로 -2합에 의해 발생된다. 마찬가지로 검사비트 C1은 제3도에 보인 H-매트""""
이제 신드롬 발생회로 10''를 제16도를 참조하여 설명한다. 이 도면의 각 비트도 또한 익스클루시크 오아회로이다. 신드롬 비트 S0는 검사비트 C0를 포함하여 제3도에 보인 H-매트릭스의 제1행의 "1"원소들에 대응하는 데이타비트의 모듈로 -2합에 의해 발생된다. 즉, 신드롬 비트 S0는 데이타 비트들 D01, D06, D08, D09, D12, D14∼D17, D20, D22, D27, D30 및 D31 그리고 검사비트 C0의 모듈로 -2합에 의해 발생된다. 마찬가지로 신드롬 비트 S1은 검사비트 C1을 포함하여 제3도에 보인 H-매트릭스의 제2행의 "1"원소들에 대응하는 데이타 비트들의 모듈로 -2합에 의해 발생된다. 즉, 신드롬 비트 S1은 데이타비트들 D03, D07, D09∼D13, D17, D19, D21, D26∼D28, D30 및 D32 그리고 검사비트 C1의 모듈로 -2합에 의해 발생된다. 또한 신드롬 비트 S6는 검사비트 C6을 포함하여 제3도에 보인 H-매트릭스의 제7행의 "1"원소들에 대응하는 데이타 비트들의 모듈로 -2합에 의해 발생된다. 즉, 신드롬 비트 S6는 데이타 비트들 D01, D02, D05, D12∼D14, D19, D20, D24, D25, D26, D29 및 D32 그리고 검사비트 C6의 모듈로 -2합에 의해 발생된다.
만일, 판독 부호내에서 에러가 발생하지 않을 경우, 신드롬 비트들 S0∼S6은 모두 "0"이다. 즉, 신드롬은 모두 "0"백터이다. 이와 반대로 만일 하나 이상의 비트들이 발""""
만일 제1데이타 비트 D01의 에러일 경우 이때 신드롬 비트들 S0∼S6는 제3도에 보인 H-매트릭스의 제1열인(1000011)이다. 즉, 신드롬 비트들 S0∼S6는 1비트 에러의 위치를 나타낸다.
신드롬 해독회로 12''와 데이타 정정회로 17"를 제17도를 참조하여 설명한다. 제17도에서 신드롬 해독회로 12"는 7개의 입력게이트회로들 1201"∼1239"를 포함하는데, 이는 데이타 비트 D01∼D39와 검사비트 C0∼C6에 대응한다. 7입력 게이트회로들 각각은 디코오더로서 작용한다. 데이타 정정회로 17"는 32익스클루시브 오아회로들 1701"∼1732"를 포함하는데 이는 32데이타 비트들에 해당한다. 만일 신드롬 비트들 S1∼S6(1000011)이 신드롬 해독회로 12"에 인가될 경우 신드롬 해독회로 12"의 게이트회로 1201"는 1비트 에러의 위치가 데이타비트 D01에 대응하는 제1열임을 나타내는 에러비트신호 EB01을 발생시키므로 판독데이타 레지스터 8로부터 데이타 MRD01을 반전시킬 수 있으므로 정정동작이 수행된다. 따라서 정정데이타 MCRD01이 발생된다. 그러한 정정데이타 MCRD01은 메모리 기입/판독 제어회로19에 기억장치 7내에 재기입된다.
에러검출회로13"를 제18도를 참조하여 설명한다. 제18도에서 표시번호 1301"∼1306"는 7입력 오아회로들을 나타내며, 1307"는 5입력 오아회로, 1308"는 2입력 게이트회로, SBE는 1비트 에러신호 그리고 MBE는 복수비트 에러 신호를 나타낸다.
1비트에러가 발생될 때 에러 비트신호들 EB01∼EB32와 EBC0∼EBC6중 단 하나만 고레벨이 된다. 결과적으로 오아회로들 1301"∼1306"중 단 하나만이 고레벨 신""
특수한 복수비트 에러가 발생될때 오아회로 1307"는 1비트 에러신호 SBE를 발생시키지 않는 반면, 게이트 회로 1308"은 복수비트 에러신호 MBE를 발생시킨다.
그러한 복수비트 에러를 설명한다. 만일 D01과 D02와 같은 두 데이타 비트가 동시에 에러일 경우 신드롬비트 S0∼S6은 (1010000)이다. 즉, 그 신드롬은 우수 가중백터이다. 그밖에 두 데이타 비트에 해당하는 H-매트릭스의 그러한 2개 열백터들은 상호 다르기 때문에 그 신드롬은 모두 "0"백터가 아니다. 그러므로, 신드롬은 H-매트릭스의 어떤 열 백터들과도 일치하지 않는다. 여기서 열백터들은 기수가중 백터들이다. 결과적으로 이 신드롬은 신드롬 해독회로 12의 어떤 게이트 회로 1201"∼1239"에 의해서도 디코오드될 수 없으므로 결국, 모든 에러비트 신호들 EB01∼EB32와 EBC0∼EBC6는 저레벨에 있다. 따라서, 1비트 에러신호 SBE는 저레벨에 있다. 이와 반대로, 그 신드롬이 모두 "0"백터가 아니기 때문에 오아회로 1306"는 에러(오차)신호를 발생시키며 그에 따라 게이트회로 1308"는 고레벨에서 복수비트 에러신호 MBE를 발생시킨다. 따라서 2개비트 에러가 검출될 수 있다.
만일, D01,D02 및 D03와 같은 1블록내에서 3개의 데이타 비트가 동시에 에러일 경우, 신드롬 비트 S0∼S6는 (1110110)이다. 즉, 신드롬은 기수가중 백터이다. 그러나, 이 경우에 상술한 조건(v)에 의하면, 이 신드롬은 H-매트릭스의 어떤 열백터들과도 일치하지 않는다. 결과적으로, 이 신드롬은 신드롬 해독회로12"의 어떤 게이트회로 1201"∼1239"에 의해서도 해독될 수 없으므로 결국 모든 에러비트 신호 EB01∼EB32와 EBC0∼EBC6는 저레벨에 있다. 따라서 1비트 에러신호 SBE는 저레벨에 있다. 이와 """"
만일 D01, D02, D03 및 D04와 같이 1블록내에서 4개 데이타 비트가 동시에 에러일 경우 신드롬 비트 S0∼S6는 (1111000)이다. 즉, 신드롬은 우수가중 백터이다. 그밖에, 상술한 조건(vi)에 의하면, 신드롬은 모두 "0"백터가 아니다. 그러므로, 신드롬은 H-매트릭스의 어떤 열백터들과도 일치하지 않는다. 여기서 열백터들은 기수가중 백터들이다. 결과적으로 이 신드롬도 또한 신드롬 해독 회로 12"의 어떤 게이트회로 1201"∼1239"에 의해서도 해독될 수 없으므로 결국 모든 에러비트 신호 EB01∼EB32와 EBC0∼EBC6는 저레벨에 있다. 따라서 단일 비트에러신호 SBE는 저레벨에 있다. 이와 반대로 신드롬은 모두 "0"백터가 아니기 때문에 오아회로 1306"는 신호 ERROR를 발생시키므로 게이트회로 1308"는 고레벨에서 복수비트 에러신호 MBE를 발생시킨다. 따라서 1블록내의 4개 비트 에러가 검출될 수 있다.
만일 두 개의 임의의 블록내에서 D01∼D04와 D10∼D13과 같은 8데이타 비트들이 동시에 에러일 경우 신드롬 비트 S0∼S6는 (0100100)이다. 즉, 신드롬은 기수가중 백터이다. 그밖에 상술한 조건(vii)에 의하면 신드롬은 모두 "0"백터가 아니다. 그러므로 신드롬은 H-매트릭스의 어떤 열백터들과도 일치하지 않는다. 여기서 열백터들은 우수가중 백터들이다. 결과적으로 이 신드롬은 또한 신드롬 해독회로 12"의 어떤 게이트회로 1201"내지 1239"에 의해서도 해독될 수 없으므로 결국 모든 에러비트신호 EB01∼EBS와 EBC0∼EBC6는 저레벨에 있다. 따라서 1비트 에러신호 SBE는 저레벨에 있다. 이와 반대로, 신드롬은 모두 "0"백터가 아니기 때문에 오아회로 1306"는 에러신호를 발생시키"
따라서 4비트를 갖는 1비트 에러를 정정하고 1블록내에서 2비트 에러 및 3비트에러를 검출하고 4비트를 갖는 1블록내의 4비트에러를 검출하는 것이 가능하다.
본 발명의 에러정정 및 검출장치에 의하면, 종래에 불가능했던 두 블록내의 8비트 버어스트 에러를 종래기술과 비교하여 검사비트(여분비트들)를 증가시키지 않고도 가능하므로 에러 검출능력을 더욱 향상시킬 수 있다.
4비트 단위의 메모리칩에 의해 형성된 기억 장치에서는 두 칩의 고장 또는 두 칩에 대한 공통회로의 고정으로 인한 8비트 버어스트 에러가 나타나면 본 발명에 의해 검출될 수 있기 때문에 기억장치의 데이타 보전성과 하드웨어와 신뢰성이 개선된다. 또한 기억장치가 1비트, 2비트 또는 4비트 단위의 메모리칩들을 사용하는 8비트 단위의 메모리 모듈들에 의해 구성되는 경우조차 메모리내의 한 버어스트 에러 또는 메모리 모듈들중 둘의 8비트 버어스트 에러가 검출될 수 있기 때문에 본 발명은 데이타의 보전성을 보장해주고 신뢰성을 개선하는데 유익하다.
본 발명의 에러정정 및 검출장치는 종래기술의 것들과 동일한 양의 하드웨어, 동일한 시간의 부호화 및 해독, 동일한 신뢰성 그리고 동일한 비용으로 실현될 수 있다. 또한 메모리 칩을 고집적 메모리 칩으로 교체하여 비용을 절감할 때 예를 들면 64K워드×1비트 형태의 64K비트 메모리칩을 256K워드×1비트 형태의 256K비트 메모리칩으로 대치할 때 종래의 SEC-DED를 사용하여 동일한 에러정정 및 검출장치가 사용될 수 있다. 그러나 기억장치의 최소용량 및 증분용량이 증가되므로 단위용량당 끼워넣는 것이 줄어들기 때문에 대치된 기억장치의 성능이 감소되는 문제가 있다.
다른 한편, 상술한 기억장치가 64K워드×4비트형태의 256비트 메모리로 대치될 때 기억장치의 최소용량 및 증분용량이 종래만큼 동일하게 얻어질 수 있다. 그러나, SEC-DED코드를 사용하여 종래의 에러정정 및 검출 장치는 데이타의 보전성과 신뢰성면에서 사용될 수 없다. 그러한 경우에 만일 본 발명의 에러정정 및 검출장치가 사용된다면 대체시에 에러정정 및 검출장치의 형태와 타이밍 명세를 수정할 필요가 없으므로 충분한 데이타 보전성과 신뢰성을 얻을 수 있는 장점이 있다.

Claims (8)

  1. 0과 1을 원소로 하여, 다음과 같은 열백터
    Figure kpo00028
    4개로부터 이루어지는 블록벡터 18개로부터 구성되는 H매트릭스(100).
    Figure kpo00029
    이며, (i) 모두 "0"이 아니고, (ii) 열백터(column Vector)는 서로 다르고, (iii) 1을 1개만 포함하는 백터 8개를 포함하고, (iv) 열백터는 1을 기수개 포함하는 열백터이며, (v) 블록 i내의 4개의 열백터에서 3개의 열백터를 선정하는 모든 조합시킴에 관해서 3개의 열백터에서 비트대응의 2를 법으로 하는 가법(모듈로 -2합)에 의해 생성되는 1개의 열백터 hA가 식(100)의 H매트릭스의 열백터와 일치하지 않음.
    즉,
    Figure kpo00030
    여기서, i=1,2,...,13 : 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는 모두 "0"백터가 아님.
    즉,
    Figure kpo00031
    여기서, i=1,2,...,18
    (vii) 2개의 블록 p,q로부터 이루어지는 8개의 열백터에서 비트대응의 2를 법으로 하는 가법에 의해 생성되는 1개의 열백터 hC는 모두 "0"백터가 아님.
    즉,
    Figure kpo00033
    여기서, p, q=1,2,......,18 : p≠q를 채우도록 구성된 H매트릭스 H에 따라서 64비트의 데이타비트에서 8비트의 여분비트를 생성하는 수단(4)과, 기억장치(7)와, 해당여분비트와 데이타 비트로부터 이루어지는 72비트의 부호어를 상기 기억장치에 기입하는 수단(6,19)과, 해당 기억장치(7)로부터 해당 부호어를 판독하는 수단(8,19)과, 해당 72비트의 부호어로부터 상기 H매트릭스(100)에 따라서 8비트의 신드롬(S0∼S7)을 생성하는 수단(10)과, 해당 신드롬 비트(S0∼S7)로부터 1비트 에러의 비트위치를 표시하는 72비트의 에러-비트신호(EB01∼EB64, EBC0∼EBC7)를 생성하는 신드롬 해독수단(12)과 해당 에러-비트 신호에 의해 상기 72비트의 부호어의 1비트 에러를 정정하는 수단(17)과, 상기 에러-비트신호의 모든 논리합과 상기 8비트의 신드롬에 의해 1블록내의 2비트에러, 3비트에러 및 4비트에러와 2블록내의 8비트 버어스트에러의 존재를 판별하는 수단(13)을 포함해서 이루어지는 것이 특징인 에러정정 및 검출장치.
  2. 0과 1을 원소로하여, 다음과 같은 열백터
    Figure kpo00034
    4개로부터 이루어지는 블록벡터 10개로부터 구성되는 H매트릭스(200).
    Figure kpo00035
    이며 (i) 모두 "0"백터는 아니고, (ii) 열백터는 서로 다르고, (iii) 1을 1개만 포함한 열백터 8개를 포함하며, (iv) 열백터는 1을 기수개 포함한 열백터이며, (v)블록 i내의 4개의 열백터에서 3개의 열백터를 고르는 모든 조합에 관해서 3개의 열백터에서 비트대응의 2를 법으로 하는 가법에 의해 생성되는 1개의 열백터 hA가 식(200)의 H매트릭스의 열백터와 일치하지 않음.
    즉,
    Figure kpo00036
    여기서, 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는 모두 "0"이 아님.
    즉,
    Figure kpo00037
    여기서, i=1,2,......,10
    (vii) 2개의 블록 i로부터 이루어지는 8개의 열백터에서 비트대응의 2를 법으로 하는 가법에 의해 생성되어지는 1개의 열백터 hO는 모두 "0"이 아님.
    즉,
    Figure kpo00038
    여기서, p, q=1,2,......,10 : p≠q를 채울 수 있도록 구성된 H매트릭스 H에 따라서 32비트의 데이타 비트에서 8비트의 여분비트를 생성하는 수단(4')과, 기억장치(7)와, 해당 여분비트와 데이타 비트로부터 이루어지는 40비트의 부호어를 상기 기억장치에 기입하는 수단 (6,19)과, 해당 기억장치로부터 해당 부호어를 판독하는 수단(8,19)과 해당 40비트의 부호어로부터 상기 H매트릭스(200)에 따라서 8비트의 신드롬(S0∼S7)을 생성하는 수단(10')과 해당 신드롬으로부터 1비트 에러의 비트위치를 표시하는 40비트의 에러-비트신호(EB01∼EB32, EBC0∼EBC7)를 생성하는 신드롬 해독수단(12')과, 해당 에러-비트신호에 의해 상기 40비트의 부호어의 1비트 에러를 정정하는 수단(17')과, 상기 에러-비트신호의 모든 논리합과 상기 8비트의 신드롬에 의해 1블록내의 2비트에러, 3비트에러 및 4비트에러와, 2블록내의 8비트 버어스트 에러의 존재를 판별하는 수단(13')을 포함해서 이루어지는 것이 특징인 에러정정 및 검출장치.
  3. 0과 1을 원소로해서, 다음과 같은 열백터
    Figure kpo00039
    4개로부터 이루어지는 블록 백터 9개와,
    Figure kpo00040
    3개로부터 이루어지는 블록벡터 1개로부터 구성되어지는 H매트릭스(300)
    Figure kpo00041
    이며,
    (i) 모두 "0"백터가 아니고, (ii) 열백터는 서로 다르고, (iii) 1을 1개만 포함한 열백터 7개를 포함하고, (iv) 열백터는 1을 기수개 포함하는 열백터이며, (v) 블록 i 내지 4개의 열백터에서 3개의 열백터를 고르는 모든 조합에 관해서 및 3개의 열백터로부터 이루어지는 1개의 블록에 관해서, 3개의 열백터에서 비트대응의 2를 법으로 하는 가법에 의해 생성되는 1개의 열백터 hA가 식(300)의 H매트릭스의 열백터와 일치하지 않음.
    즉,
    Figure kpo00042
    여기서, 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는 모두 "0"백터가 아님.
    즉,
    Figure kpo00043
    여기서, i=1,2,...,9 :
    (vii) 2개의 블록 p,q로부터 이루어지는 3개의 열백터에서 비트대응의 2를 법으로 하는 가법에 의해 생성되는 1개의 열백터 h0는 모두 "0"백터가 아님.
    즉,
    Figure kpo00044
    여기서, p, q=1,2,......,9 : p≠q를 채울 수 있도록 구성된 H매트릭스 H에 따라서 32비트의 데이타 비트에서 7비트의 여분비트를 생성하는 수단(4")과, 메모리장치(7)와, 해당 여분비트와 데이타 비트로부터 이루어지는 39비트의 부호어를 상기 기억장치에 기입하는 수단(6,19)과, 해당 기억장치로부터 해당 부호어를 판독하는 수단(8,19)과, 해당 39비트의 부호어로부터 상기 H매트릭스에 따라서 7비트의 신드롬(S0∼S7)을 생성하는 수단(10")과 해당 신드롬으로부터 1비트 에러의 비트위치를 표시하는 39비트의 에러-비트신호를 생성하는 신드롬 해독수단(12")과, 해당 에러-비트신호에 의해 상기 39비트의 부호어의 1비트 에러를 정정하는 수단(17")과, 상기 에러-비트신호의 모든 논리합과 상기 7비트의 신드롬에 의해 1블록내의 2비트 에러, 3비트에러 및 4비트에러와 2블록내의 8비트 버어스트 에러의 존재를 판별하는 수단(13")을 포함해서 이루어지는 것이 특징인 에러정정 및 검출장치.
  4. 제1항 또는 2항에 또는 3항에서, 상기 여분비트발생수단(4,4',4")는 익스클루시브 오아회로들의 다수그룹을 포함하며, 각 그룹은 H-매트릭스의 한 행의 "1"소자에 대응하는 데이타 비트들에 대해 모듈로-2합동작을 수행하는 것이 특징인 에러정정 및 검출장치
  5. 제1항 또는 2항 또는 3항에서, 상기 신드롬 비트 발생수단(10,10',10")는 익스클루시브 오아회로들의 다수그룹을 포함하며, 각 그룹은 H-매트릭스의 한 행의 "1"소자에 대응하는 데이타 비트들에 대해 모듈로 -2합 동작을 수행하는 것이 특징인 에러정정 및 검출장치.
  6. 제1항 또는 2항 또는 3항에서, 상기 신드롬해독수단(12,12',12")는 상기 신드롬 비트들을 해독하기 위해 데이타 비트들 각각에 제공되는 다수의 게이트회로들(1201 내지 1264,1201' 내지 1240',1201" 내지 1239")를 포함하는 것이 특징인 에러정정 및 검출장치.
  7. 제1항 또는 2항 또는 3항에서, 상기 에러정정수단(17,17',17")는 다수의 익스클루시브 오아회로들(1701 내지 1772,1701' 내지 1740',1701" 내지 1739")를 포함하며, 각 회로들은 상기 판독수단(8,19)로부터 상기 판독데이타비트(MRD1 내지 64, MRD01 내지 32)중 하나와 상기 신드롬 디코오딩수단(12,12',12")의 상기 오차비트신호들(EB01 내지 EB64, EBC0 내지 EBC7, EB01 내지 EB32, EBC0 내지 EBC7, EB01 내지 EBC32, EBC8 내지 EBC6)중 하나를 수신하는 것이 특징인 에러정정 및 검출장치.
  8. 제1항 또는 2항 또는 3항에서, 상기 에러검출수단(13,13',13")는 단일비트에러신호(SBE)를 발생시키도록 1비트에러를 검출하기 위해 상기 신드롬 해독수단(12,12',12")에 연결되는 오아회로수단(1301 내지 1309,1311,1301' 내지 1305',1307',1301" 내지 1305",1307")와, 에러신호(ERROR)을 발생시키기 위해 상기 신드롬 발생수단(10,10',10")로부터 상기 신드롬 비트들 (S0 내지 S7, S0 내지 S6)를 수신하도록 연결되는 오아회로(1310,1306',1306")와, 그리고 1비트 에러신호(SBE)가 아닌 상기 에러신호(ERROR)을 수신할때만 복수비트 오차신호(MBE)를 발생시키기 위해 상기 오아회로수단과 상기 오아회로에 연결되는 게이트회로(1312,1308',1308")를 포함하는 것이 특징인 에러정정 및 검출장치.
KR1019840008616A 1983-12-28 1984-12-28 에러정정 및 검출장치 KR900001228B1 (ko)

Applications Claiming Priority (2)

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

Publications (2)

Publication Number Publication Date
KR850004675A KR850004675A (ko) 1985-07-25
KR900001228B1 true KR900001228B1 (ko) 1990-03-05

Family

ID=17201412

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019840008616A KR900001228B1 (ko) 1983-12-28 1984-12-28 에러정정 및 검출장치

Country Status (9)

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

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
JPS6349245B2 (ko) 1988-10-04
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
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
KR900001228B1 (ko) 에러정정 및 검출장치
US6976194B2 (en) Memory/Transmission medium failure handling controller and method
US6973613B2 (en) Error detection/correction code which detects and corrects component failure and which provides single bit error correction subsequent to component failure
US7278085B1 (en) Simple error-correction codes for data buffers
US5418796A (en) Synergistic multiple bit error correction for memory of array chips
US4277844A (en) Method of detecting and correcting errors in digital data storage systems
US5745508A (en) Error-detection code
US7398449B1 (en) Encoding 64-bit data nibble error correct and cyclic-redundancy code (CRC) address error detect for use on a 76-bit memory module
US6453440B1 (en) System and method for detecting double-bit errors and for correcting errors due to component failures
US7370264B2 (en) H-matrix for error correcting circuitry
US4817095A (en) Byte write error code method and apparatus
EP0535086B1 (en) Multiple error correction in a computer memory
US6041430A (en) Error detection and correction code for data and check code fields
US7844880B2 (en) Error correction for flash memory
US20040088636A1 (en) Error detection/correction code which detects and corrects a first failing component and optionally a second failing component
US6751769B2 (en) (146,130) error correction code utilizing address information
JP3325914B2 (ja) データ用誤り訂正検出方法及びコンピュータ・メモリ用 誤り検出回路
EP1183605B1 (en) System and method for protecting data and correcting bit errors due to component failures
US5922080A (en) Method and apparatus for performing error detection and correction with memory devices
US5856987A (en) Encoder and decoder for an SEC-DED-S4ED rotational code
US7231585B2 (en) Error correction for flash memory
US7587658B1 (en) ECC encoding for uncorrectable errors
US8140945B2 (en) Hard component failure detection and correction
JPH0260013B2 (ko)
US5459740A (en) Method and apparatus for implementing a triple error detection and double error correction code

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20000222

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee