KR930000897B1 - 에러정정회로를 갖는 반도체메모리 - Google Patents
에러정정회로를 갖는 반도체메모리 Download PDFInfo
- Publication number
- KR930000897B1 KR930000897B1 KR1019890000139A KR890000139A KR930000897B1 KR 930000897 B1 KR930000897 B1 KR 930000897B1 KR 1019890000139 A KR1019890000139 A KR 1019890000139A KR 890000139 A KR890000139 A KR 890000139A KR 930000897 B1 KR930000897 B1 KR 930000897B1
- Authority
- KR
- South Korea
- Prior art keywords
- output
- information
- syndrome
- semiconductor memory
- memory
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Dram (AREA)
- Static Random-Access Memory (AREA)
Abstract
내용 없음.
Description
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제1도는 본 발명의 제 1의 실시예에 의한 반도체메모리의 블럭도.
제2도는 본 발명의 제 2의 실시예에 의한 반도체메모리의 블럭도.
제3도는 본 발명의 실시예에 있어서의 정보비트용 메모리블럭과 그 주변의 회로의 블럭도.
제4도는 본 발명의 실시예에 의한 패리티검사회로에 있어서의 배타적논리합 게이트의 회로도.
제5도는 패리티검사용 신호선의 저감예를 도시한 도면.
제6도a, 제6도b는 CMOS 회로에 의한 배타적논리합 게이트의 회로예를 도시한 도면.
제7도는 종래예에 의한 반도체메모리의 블럭도.
본 발명은 반도체메모리에 관한 것으로, 특히 에러정정부호(Error Correcting Code, 이하 ECC라 한다)를 사용한 에러정정기능을 갖는 반도체메모리에 관한 것이다.
반도체메모리의 고집적화에 따르는 메모리셀의 축소에 의해서 메모리셀의 기억정보가선등에 의해서 파괴되는, 소위 소프트에러가 문제로 되어 왔다. 그 대책으로써는, 예를들면 ISSC Digest of Technical papers, pp. 22-23, Feb. 1987)에 있어서 거론되고 있는 바와 같이 에러정정에 의한 방법이 유효하다. 여기에서, 에러정정에 대해서 약간의 설명을 한다.
에러정정이라 함은 기억해야할 정보를 담당하는 비트(정보비트)에 일정한 법칙으로 용장비트(검사비트)를 부가해서 데이타에 용장성을 갖게 하는 것에 의해 데이타의 일부에 에러가 발생하여도 상기 일정한 법칙성에 따라서 에러를 검출해서 정정하는 것이다.
그리고, 에러정정부호라 함은 부여된 정보비트에 대해서 에러정정이 가능하도록 검사비트를 부가하는 법칙을 부여하는 체계이며, 이 에러정정부호에는 2원부호(two dimentional code)와 다원부호(multi-dime-nitonal code)가 있고, 2원부호에는 또 해밍부호, 수평수직 패리티, BCH 부호등이 있다.
에러정정의 순서는 신드롬(syndrome)을 계산하는 스텝과 그 신드롬을 이용해서 에러가 발생한 비트를 정정하는 스텝으로 나누어진다. 여기에서, 신드롬이라 함은 데이타의 에러에 관한 정보를 추출한 것이며, 일정한 법칙에 따라서 데이타중의 일부의 비트를 선택하고, 그것의 패리티(우수/기수성) 검사를 실행하는 것에 의해 계산된다. 또한, 에러정정부호 및 그것을 사용한 에러정정방법에 대해서는, 예를들면 미야가와등의 『부호논리』(쇼코도발행)에 상세하게 기술되어 있다.
상기와 같이 소프트에러대책에는 에러정정에 의한 방법이 유효하지만, 이 방법에는 다음과 같은 문제가 있다.
에러정정을 실행하기 위해서는 기억해야할 정보를 담당하는 비트에 검사비트를 부가하지 않으면 안된다. 이 검사비트를 기억하기 위해서 여분인 메모리셀이 필요하므로, 검사비트수는 적을수록 바람직하다. 그러나, 에러정정에 필요한 검사비트수에는 하한이 있는 것이 부호논리에 의해서 알려져 있다. 부호논리에 의하면, 1회의 에러정정에 사용하는 정보비트수를 k, 검사비트수를 m으로 하였을때, 계(k+m)비트중의 1비트가 정정할 수 있기 위해서는
k≤2m-1-m (1)
이지 않으면 안된다. 이 식에서 m이 클수록 부호의 용장도 m/k는 작게 되는 것을 알 수 있다. 예를들면,
k=32이면, m≥6이므로 m/k≥0.19
k=64이면, m≥7이므로 m/k≥0.11
k=128이면, m≥8이므로 m/k≥0.06
이다. 따라서, 용장도를 작게 하기 위해서는 1회의 에러정정에 사용하는 정보비트수를 k를 크게하면 좋다.
한편, 에러정정회로에는 (k +m)비트의 입력이 필요하다. 즉, 메모리어레이와 에러정정회로와의 사이에는(k +m)개의 배선이 필요하다. 따라서, 배선수의 관점에서는 k는 작은 쪽이 바람직하다.
제7도는 상기 일본국 특허공개공보에 개시되어 있는 반도체메모리의 구성도이다. 도면중, (11)은 메모리어레이, (12)는 정보비트를 기억하는 메모리블럭, (13)은 검사비트를 기억하는 메모리블럭, (17)은 멀티플렉서, (18)은 출력버퍼, (19)는 센스앰프, (20)은 패리티검사회로, (21)은 에러정정회로, (22)는 신드롬의 계산을 실행하기 위해 메모리블럭간을 접속하기 위한 버스(이하, 신드롬버스라 한다)이다. 도한, 신드롬버스 (22)상에는 이 버스내의 패리티검사회로(22a)가 배치되어 있다. 이 반도체메모리에서 메모리어레이(11)은 여러개(b개, 여기에서는 b=4)의 정보비트용 메모리블럭(12)와 1개의 검사 비트용 메모리블럭(13)으로 분할되어 있다. 각 정보비트용 메모리블럭(12)에 근접해서 패리티검사회로(20)과 에러정정회로(21)이 마련되어 있다. 패리티검사회로 (20)은 신드롬계산의 전단처리, 즉 메모리블럭마다의 패리티검사를 실행한다. 각패리티검사회로(20) 및 검사비트용 메모리블럭(13)은 신드롬버스(22)에 의해서 접속되어 있고, 여기서 신드롬계산의 후단처리가 실행된다. 즉, 각 패리티검사결과가 통합되어 신드롬이 생성된다. 각 에러정정회로(21)은 이 신드롬을 사용해서 에러정정을 실행한다. 정정된 정보는 멀티플렉서(17), 출력버퍼(18)을 거쳐서 출력단자 Q0∼Q3에서 출력된다.
이 방법에 의하면, 메모리블럭간을 연결하는 긴 배선은 신드롬버스(22)만으로 된다. 이 배선갯수는 m개(왕복 2m개)이므로, 상술한 (k+m)개에 비해서 현저하게 적게할 수 있다.
상기 종래기술의 문제점은 메모리블럭간을 연결하는 긴 배선의 갯수는 상기와 같이 m개로 적게 할수 있지만, 각 메모리블럭(12) 및 (13)에서의 출력배선(23) 및 (24)의 수가 많은 것이다. 배선(23)의 갯수는 1메모리블럭당 k/b개, 배선(24)의 갯수는 m개이다. 따라서, 합계 (k+m)개의 배선이 필요하다는 사정은 종래와 변함이 없다. 이 배선은 메모리셀에 직결해서 배치할 필요가 있으므로, 각 메모리블럭(12) 및 (13)의 점유면적의 증대, 반도체메모리의 칩면적의 증대를 초래한다.
본 발명의 목적은 상기 문제점을 해결하여 칩 면적증가가 적은 에러정정기능을 갖는 반도체메모리를 제공하는 걱이다.
상기 목적을 달성하기 위해서 본 발명에서는 정보비트용의 각 메모리블럭의 출력부에 선택회로를 배치하고, 이 선택회로에서는 출력용비트를 선택함과 동시에 패리티검사를 위한 소요비트를 선택한다. 이 소요비트의 패리티검사를 실행하도록 선택회로와 패리티검사회로를 상기 정보비트용의 각 메모리블럭의 출력부에 직결해서 마련하고, 이 패리티검사회로 출력을 사용하여 신드롬 생성회로를 거쳐서 상기 출력용 비트의 에러정정을 실행하도록 구성하는 것으로 하였다.
각 메모리블럭 출력부에서, 한편으로는 출력용비트를 선택함과 동시에 다른 한편으로는 패리티검사를 위한 소요비트를 선택하고, 이 비트의 패리티검사를 실행하도록 선택회로와 패리티검사회로를 상기 각 메모리블럭의 출력부에 직결해서 마련하는 것에 의해 각 메모리블럭에서 출력되는 정보는 에러가 정정되지 않은 출력용 비트와 신드롬계산의 중간결과로 된다. 배선갯수의 관점에서 말하면, 전자의 출력용 비트로써는 1 내지 소수의 필요한 수를 선택할 수 있고, 또 후자의 신드롬계산의 중간결과는 신드롬의 비트수 m에 상당하는 것이므로, 이들의 합계로 이루어지는 각 메모리블럭의 출력개수는 종래의 k/b개에 비해서 적게 할수 있다. 즉, 본 발명의 구성은 각 메모리블럭에서의 출력 배선갯수를 저감시키는 것이다.
이하, 본 발명의 실시예를 도면에 따라 설명한다. 이하의 설명에서는 ECC로써 해밍부호를 사용한 경우에 대해서 설명하지만, 다른 부호, 예를들면 수평수직 패리티나 BCH 부호를 사용한 경우라도 본 발명을 적용할수 있다. 또, DRAM(Dynamic Random Access Memory)에 적용한 경우에 대해서 설명하지만, 본 발명은 다른 반도체메모리, 예를들면 SRAM(Static Random Access Memory)나 ROM(read Only Memory)에도 적용할 수 있다. 또 1개의 메모리셀에 다중정보를 기억하는 다중메모리에도 적용할수 있다. 이 경우는 일본국 특허공개공보 소화 60-163300호에 있어서 거론되어 있는 바와 같이 ECC로써 다원부호를 사용하는 것이 유효하다.
제1도에, 본 발명의 제1의 실시예인 반도체메모리의 구성도를 도시한다. 도면중, (11)은 메모리어레이, (12)는 정보비트를 기억하는 메모리블럭, (13)은 검사비트를 기억하는 메모리블럭, (18)은 출력버퍼, (19)는 센스앰프, (21)은 에러정정회로, (22)는 신드롬버스, (26)은 멀티플랙서, (27)은 패리티검사회로이다. 이 반도체메모리에서, 메모리어레이(11)은 상기의 종래예와 마찬가지로 여러개(b개, 여기에서는 b=4)의 정보비트용 메모리블럭(12)와 1개의 검사비트용 메모리블럭(13)으로 분할되어있다.
이 실시예가 종래예와 다른 점은 각 메모리블럭(12)의 출력부에 직결해서 멀티플렉서(26) 및 패리티검사회로(27)이 마련되어 있는 것과 데이타출력용의 배선(28)과 신드롬계산용의 배선(28)과 신드롬계산용의 배선(29)를 분리한 것이다. 상기의 종래예에서는 각 메모리블럭에서 출력되는 것은 리드된 데이타 그 자체이였기 때문에, 각 메모리블럭의 출력 배선수는 k/b개였다. 그러나, 본 발명에서는 멀티플랙서(26) 및 패리티검사회로 (27)이 메모리블럭(12)의 출력부에 직결해서 배치되어 있으므로, 각 메모리블럭 (12)에서 배선(29)를 통해서 출력되는 것은 신드롬계산의 도중결과이다. 이 출력에 요하는 배선갯수는 신드롬의 비트수 m과 같다. 한편, 이 실시예의 경우 데이타출력용으로써는 멀티플랙서(26)에 의해서 선택된 1비트만이 배선(28)을 통해서 출력된다. 결국, 각 메모리블럭 (12)의 출력배선수는 합계(m +1)개이며, 종래의 k/b개에 비해서 적게 할수 있다. 예를들면, k = 128, m=8, b=4인 경우, m +1=9, k/b=32이며, 배선갯수는 종래의 약 30%로 끝낼 수 있다. 또한, 메모리블럭간을 연결하는 긴 배선의 갯수가 m개(왕복 2m개)로 좋다는 종래예의 이점은 본 실시예에도 해당된다.
제2도에 본 발명의 제2 의 실시예인 반도체메모리의 구성도를 도시한다. 제1도의 실시예와의 상이점은 신드롬버스(22)의 배선방법이다. 제1도에서는 폴디드(folded) 배선하고 있었기 때문에, 왕복 2m개의 배선이 필요하였지만, 본 실시예에서는 m개로 좋다. 단, 각 메모리블럭(12)에서 에러정정회로(21)까지 b개의 데이타출력용의 배선 (28)이 필요하다. 따라서, 메모리블럭간을 연결하는 긴 배선의 갯수는 합계(m+b)개이며, b<m이면 2m개 보다 적게 할수 있다. 또, 신드롬버스(22)의 배선길이가 제1도에 비해서 짧으므로, 배선의 기생용량이나 기생저항이 적게 되어 에러정정의 고속화가 도모된다. 또, 에러정정회로(21)을 1개소에 집중해서 배치하는 것에 의해 칩면적의 이용효율이 좋게 된다. 또한, 본 실시예와 같이 신드롬버스를 폴디드하지 않는 구성으로 하는 것도, 본 발명의 적용에 의해 메모리블럭간을 연결하는 긴 배선의 갯수를(m +b)개와 같이 적게 할수 있도록 하기 때문이다.
여기서, 제1도 및 제2도의 실시예에 있어서의 메모리블럭에 대해서 상세하게 설명한다. 제3도에 정보비트용 메모리블럭과 그 주변의 회로도를 도시한다. 이것은 DRAM의 예이지만, 본 발명은 다른 반도체메모리에도 적용할수 있는 것은 상술한 바와 같다.
1개의 메모리블럭(12)는 도면의 상하방향으로 배치된 k/b개의 메모리 서브블럭 (100)으로 이루어진다. 센스앰프(19), 멀티플렉서(26) 및 패리티검사회로(27)도 마찬가지로 각각 k/b개의 서브블럭(110), (120), (130)으로 이루어진다. 패리티검사는 각 서브블럭에서 1비트씩 선택된 계 k/b비트의 데이타에 대해서 실행된다.
1개의 메모리 서브블럭(100)내에는 d쌍의 비트선, Bj,(j=0∼d-1) 이 배치되어 있으며, MOS 트랜지스터(102)와 커패시터(103)으로 이루엊는 메모리셀(101)이 워드선 Wi와 비트선쌍의 각 교차점에 배치되어 있다. 1개의 센스앰프 서브블럭(110)내에는 비트선쌍, Bj,의 전압을 차동증폭하기 위한 차동앰프(111)이 d개 배치되어 있다. 또한, 도면에 도시한 것은 1쌍의 비트선이 평행하게 배치되어 있는, 소위 폴디드 비트선 방식이지만, 오픈비트선 방식이라도 지장은 없다.
멀티플렉서(26)은 패리티검사를 위해 각 서브블럭에서 1비트씩, 계 k/b 비트를 선택한다. 그것과 함께 데이타출력을 위해 메모리블럭 전체에서 1비트를 선택한다. 디코더(140) 및 (141)은 이들의 선택을 제어한다. 디코더(140)은 각 서브블럭내의 d쌍의 비트선중의 1쌍만을 MOS 트랜지스터(121) 및 (122)를 거쳐서 서브 입출력선,를 통해서 패리티검사 서브블럭(130)으로 보내진다. 한편, 디코더(141)은 k/b쌍의 서브 입출력선,중의 1쌍만을 MOS 트랜지스터(123) 및 (124)를 거쳐서 공통 입출력선에 접속한다. 이것에 의해 비트선쌍상의 정보가 서브 입출력선, 공통 입출력선를 통해서 출력된다. 또한, 이 공통 입출력선는 데이타출력용의 배선(28)로써 제1도의 에러정정회로(21)에 접속되어 있다. 또한, 멀티플렉서 및 디코더의 배치위치는 도면의 예에 한정되는 것은 아니다. 예를들면, 패리티검사를 위한 멀티플렉서와 디코더(140)을 메모리블럭의 한쪽에 배치하고, 데이타출력을 위한 멀티플렉서와 디코더(141)을 반대측에 배치한다는 방법이라도 좋다. 또, 메모리블럭마다 디코더를 마련하는 대신에 일본국 특허공개공보 소화 57-198592호에서 제안되어 있는 바와 같이 디코더는 칩의 끝에 1개만 마련하고, 그 출력신호를 각 메모리블럭에 분배한다는 방법이라도 좋다.
패리티검사회로(27)은 각 서브 입출력선,(j=0∼k/b-1)을 통해서 보내져 온 데이타의 패리티검사를 실행한다. 회로내에는 도면의 상하방향으로 m개의 패리티검사용 신호선(131)이 배선되어 있고, 그 상단에서 패리티검사의 결과 P0∼Pm-1이 출력된다. 또한, 이들의 패리티검사결과 P0∼Pm-1은 신드롬계산용의 배선(29)로써 제1도의 신드롬버스(22)에 접속되어 있다. 신호선(131)과 서브 입출력선,와의 교차점(전부 mk/b개소 있다)의 일부에는 배타적논리합 게이트(132)가 마련되어 있다. 게이트가 마련되어 있는 교차점에 있어서는 서브 입출력선상의 신호와 도면의 아래쪽에서 입력된 신호(131)의 배타적논리합이 위쪽으로 출력된다. 게이트가 마련되어 있지 않은 교차점에 있어서는 아래쪽에서의 신호가 그대로 위쪽으로 보내질 뿐이다. 각 교차점에 배타적논리합 게이트를 마련하는가 하지 않는가는 사용하는 ECC의 패리티검사 행렬에 의해서 결정한다. 다음에, 그 방법을 설명한다.
ECC로써 정보비트수는 k=32, 검사비트수 m=6의 해밍부호를 사용하고, 메모리블럭수 b=4인 경우에 대해서 설명한다. 패리티검사행렬을
로 한다. 신드롬 s는 메모리에서 리드된 정보비트 a0∼a31과 검사비트 a32∼a37을 나열해서 얻어지는 벡터
과의 곱
이다. 여기서, 가산은 2진법으로 실행한다. 즉, 가산한 결과가 기수이면 ″1″이고, 우수이면 ″0″이라 한다. 이것을 계산하기 위해서 각 메모리블럭에서는 H의 일부와 a의 일부와의 곱을 계산한다. 예를들면, 제 1의 정보비트용 메모리블럭에서는
와
와의 곱을 계산한다. 그를 위해서는 H1의 ″1″에 대응하는 개소에는 배타적논리합 게이트를 마련하고, ″0″에 대응하는 개소에는 마련하지 않도록 한다. 즉, 제4도에 도시한 바와 같이 배타적논리합 게이트를 배치하면 좋다.
또한, 패리티검사행렬은 (2)식에 나타낸 것에 한정되는 것은 아니다. 행렬중의 ″1″ 1개의 배타적논리합 게이트에 대응하므로, ″1″의 수가 적고, 또한 각 행에 평균해서 배치되어 있는 쪽이 패리티검사의 고속화를 위해 바람직하다. 예를들면
을 패리티검사행렬로 하면, 1메모리블럭내에서 1개의 패리티검사용 신호선에 접속되는 배타적논리합 게이트의 수는 고작 4개이다. 이것은 (2)식을 사용한 경우(최고 8개)보다도 적어 패리티검사의 고속화가 도모된다.
본 회로의 특징은 1회에 에러정정에 사용되는 비트끼리가 서로 비트선 d개분 떨러져 있는 것이다. 그 때문에, 1회의선의 입사에 의해서 1회의 에러정정에 사용되는 비트중의 2비트이상이 동시에 파괴되는 확률은 상당히 작다. 따라서, 복잡한 다중에러 정정부호를 사용하지 않더라도 단일 에러정정부호로 충분히 에러정정할 수가 있다.
이상의 실시예에서, 패리티검사용 신호선의 갯수는 신드롬의 비트수와 같고 m개이었다. 그러나, 패리티 검사행렬의 연구에 의해 이 갯수를 줄이는 것도 가능하다. 다음에, 이 방법을 설명한다.
패리티검사행렬로써, 예를들면
을 채용한다. 즉, 제1 행 ∼ 제 3 행에는 각 8열중에서는 서로 다른 배열이 8열마다 반복되도록 배치한다. 제 4 행 ∼ 제 6행에는 8열마다 모두 ″0″ 또는 모두 ″1″을 배치한다. 이와 같은 패리티검사행렬에서도 단일 에러정정부호로써의 조건은 만족하고 있다. 이렇게 하면, 예를들면 제 1 의 메모리블럭에서 이루어져야 할 것은
와
와의 곱을 계산하는 것이다. 즉,
를 계산하지 않으면 안된다. 그런데 P3와 P4는 동일하고, P5는 계산이 불필요하다. 따라서, 계산해야할 패리티는 P0∼ P3의 4개 뿐이다. 상기 실시예에서는 P0∼ P5를 모두 계산하지 않으면 안되었기 때문에 패리티검사용 신호선은 m=6개 필요하였다. 그것에 대해서 본 실시예에서는 계산해야할 패리티의 수는 4개이므로, 제5도에 도시한 바와 같이 패리티검사용 신호선은 4개로 좋다. 제2∼제 4의 메모리블럭에서도 마찬가지로 계산해야할 패리티의 수가 4개인 것은 (8)식에서 명확하다.
본 실시예에서 P3와 P4가 동일한 경우와 같이 패리티검사회로의 출력비트중 적어도 2비트가 항사 동일하던가 또는 본 실시예에서 P5=0인 출력비트를 갖도록 패리티검사회로의 출력비트중의 적어도 1비트가 정보비트에 의존하지 않는 정수로 되도록 검사행렬을 구성시키는 것에 의해 패리티검사용 신호선의 갯수를 신드롬의 비트수보다 작게 할 수 있다.
또한, (8)식의 패리티검사행렬에는 ″1″의 배치가 규칙적이라는 다른 이점도 있다. 그 때문에, 패리티검사회로의 설계가 용이하게 된다.
다음에, 패리티검사회로에 사용하는 배타적논리합 게이트의 실현방법에 대해서 기술한다. 제6도 A는 CMOS회로에 의한 배타적논리합 게이트의 회로도이다. 여기서, (150)∼(154)는 p채널 MOS트랜지스터, (155)∼(159) n 채널 MOS트랜지스터이다. 이 외에 제6도 B에 도시한 실현방법도 있다. 이 회로는 4개의 n채널 MOS트랜지스터(160)∼(163)으로 이루어진다. 이 회로에서는 패리티검사용 신호는 b와의 차동으로 입력되고, c와의 차동으로 출력된다. 서브입출력선의 신호도 a와의 차동으로 입력한다. a=0(저전위),(고전위)일때는 (160)과 (161)이 도통, (162), (163)이 비도통이므로, c=b,이다. a=1,=0일때는 (162)와 (163)이 도통, (160)과 (161)이 비도통이므로이며, 출력 c는 a와 b의 배티적논리합으로 된다. 이 회로는 필요한 MOS트랜지스터수가 적고, 또한 b,가 드레인에서 입력되기 때문에 지연시간이 작다는 이점이 있다.
이상 설명한 바와 같이 본 발명에 의하면, 각 메모리블럭에서의 출력배선수를 적게할 수가 있다. 즉, 예를들면 정보비트수가 128, 검사비트수가 8 이며, 4개의 정보비트용 메모리블럭수를 갖는 경우를 예로들면, 각 메모리블럭의 출력배선 갯수는 종래의 32개(128/4)에 대해 본 발명에서는 9개(8+1)로 할수가 있도록 종래의 약 30%으로 저감된다. 따라서, 본 발명에 의하면, 칩 면적증가가 적은 에러정정기능을 갖는 반도체메모리를 만들 수가 있는 효과를 갖는다.
본 발명의 특징은 단순히 종래예의 회로배치를 변경한 것만은 아니고,멀티플렉서(26)의 출력을 2계통 마련한 것이다. 즉, I/O(배선(28))가 한쪽의 출력, a1가 다른쪽의 출력이다(제3도 참조). I/O는 데이타출력용, a1는 신드롬계산용이다. 이것에 의해 이하에 기술하는 바와 같이 본 발명의 목적인 배선갯수와 칩면적의 저감을 실현할 수 있다. 또한, 이하의 설명에서는 보충신호의 배선은 계산에 넣지 않는 것으로 한다.
본 발명의 제 1 의 효과는 메모리어레이(11)과 주변회로사이의 배선수의 저감이다. 종래는 각 정보비트용 메모리블럭(12)에서 a1에 상당하는 신호를 그대로 출력(제7도의 배선(23))하고 있었다. 그 때문에, 출력배선은 k/b개(k는 에러정정부호의 정보비트수, b는 정보비트용 메모리블럭수)필요하였다. 따라서, 메모리어레이(11)에서의 출력배선수의 합계는 (k/b)×b+m=k+m이었다. 예를들면, k=128, m=8, b=4인 경우, 136개의 배선이 메모리어레이(11)과 주변회로사이에 필요하며, 이것이 칩면적의 증대를 초래하고 있었다. 본 발명에서는 먼저 멀티플렉서(26)과 신드롬계산의 전단처리회로(27)과를 근접해서 배치하는 것에 의해 a1의 배선에 의한 칩면적 증가를 최소한으로 억제하였다. 멀티플렉서와 전단처리회로와의 사이에는 여전히 k/b개의 배선이 필요하지만, 회로끼리를 근접시키는 것에 의해 배선길이를 최소한으로 한 것이다. 전단처리회로의 출력배선수는 m개(제5도에 도시한 바와 같은 연구를 더하면 더욱 저감가능)이지만, 이것은 보통 k/b보다 적다. 다음에, 데이타출력용으로써는 신드롬계산용과는 달리 멀티플렉서에서 필요한 것만 선택해서 출력하는 것에 의해 배선갯수를 최소한인 1개로 하였다. 이상에 의해 각 정보비트용 메모리블럭에서의 출력배선은 m +1개, 메모리어레이에서의 출력배선수의 합계는 (m +1)×b +m개로 된다. 예를들면, k=128,m=8,b=4인 경우는 44개로 되어 종래의 32%로 저감된다.
본 발명의 제 2 의 효과는 에러정정회로(21)로의 입출력 배선수의 저감이다. 종래는 각 에러정정회로의 입력배선은 배선(23)이 k/b개, 신드롬 버스가 m개, 계 k/b +m개, 출력배선은 k/b개이었다. 이것은 멀티플렉서(17)을 에러정정회로의 후단에 배치하고, 배선(23)을 신드롬계산의 전단처리회로(20)과 에러정정회로(21)에서 공용하고 있었기 때문이다. 본 발명에서는 멀티플렉서(26)을 메모리블럭의 근방에 배치하고, 데이타출력전용의 배선(28)을 별도로 마련하는 것에 의해 입력배선은 m +1개, 출력배선은 1개로 된다. 예를들면, k=128,m=8,b=4인 경우, 종래는 입력배선 40개, 출력배선 32개이었지만, 본 발명에 의하면 입력배선 9개(종래의 23%), 출력배선 1개(종래의 3%)가 저감된다.
Claims (22)
- (a) (i) 각각이 출력부를 가지며, 또한 정보비트를 기억하는 여러개의 정보메모리블럭(12), (ii) 검사비트를 기억하는 검사메모리블럭(13), (iii) 각각이 제1의 출력(28) 및 제 2 의 출력을 가지며 또한 각각의 정보메모리블럭의 각각의 출력부에 각각 배치된 여러개의 멀티플렉서(26), (iv) 각각이 상기 멀티플렉서(26)의 각각의 제 2 의 출력에 결합되고, 또한 패리티검사용 정보비트를 받는 여러개의 패리티검사회로(27)을 포함하는 메모리어레이(11), (b) 각각의 정보메모리블럭(12)에 대해서, 각각이 그의 각각의 메모리블럭의 멀티플렉서(26)의 제 1 의 출력(28)에서의 하나의 입력정보비트와 다른 하나의 입력을 갖는 여러개의 에러정정회로(21), (c) 상기 패리티검사회로(27)의 각각의 출력(29), 상기 검사메모리블럭(13,19)의 출력 및 상기 여러개의 에러정정회로(21)의 다른 하나의 입력에 전기적으로 결합된 신드롬버스(22), (d) 상기 신드롬버스(22)에서의 신드롬에 응답해서 상기 멀티플렉서(26)의 제 1 의 출력에서 공급된 정보비트를 정정하는 각각의 에러정정회로(21)를 포함하는 반도체메모리.
- 특허청구의 범위 제1항에 있어서, 상기 멀티플렉서(26)의 각각은 상기 각각의 정보메모리블럭(12)내의 정보비트의 일부분을 선택하고, 상기 선택된 정보비트의 일부분을 상기 제 2 의 출력으로 전달하는 여러개의 제 1 의 스위치(121,122)를 갖고, 상기 각각의 제 2 의 출력은 여러개의 서브입출력선(a0,)를 각각 포함하고, 상기 멀티플렉서(26)의 각각은 상기 서브입출력선(a0,)에 전달된 정보비트의 일부분중의 하나를 선택하고, 상기 선택된 정보비트를 상기 제 2 의 출력으로 전달하는 제 2의 스위치 (123, 124)를 갖고, 상기 제 2 의 출력은 공통 입출력선()를 포함하고, 상기 멀티플렉서(26)의 상기 서브 입출력선(a0,)는 상기 패리티검사회로(27)에 각각 접속되고, 상기 멀티플렉서(26)의 상기 공통 입출력선()는 상기 에러정정회로(21)에 각각 접속되는 반도체메모리.
- 특허청구의 범위 제2항에 있어서, 상기 제1 및 제 2 의 스위치(121,122, 123,124)는 MOS트랜지스터인 반도체메모리.
- 특허청구의 범위 제3항에 있어서, 상기 정보메모리블럭(12)는 하나의 트랜지스터(102)와 하나의 커패시터(103)만을 구비하는 메모리셀(101)을 포함하는 반도체메모리.
- 특허청구의 범위 제3항에 있어서, 상기 여러개의 정보메모리블럭(12)는 적어도 4개의 정보메모리블럭을 포함하는 반도체메모리.
- 특허청구의 범위 제5항에 있어서, 상기 신드롬버스(22)는 한쪽의 방향으로 연장하고, 상기 한쪽의 방향과 반대인 제 2 의 방향으로 리턴하는 반도체메모리.
- 특허청구의 범위 제5항에 있어서, 상기 신드롬버스(22)는 한쪽의 방향으로 연장하고, 리턴되지 않는 반도체메모리.
- 특허청구의 범위 제3항에 있어서, 상기 신드롬버스(22)는 한쪽의 방향으로 연장하고, 상기 한쪽의 방향과 반대인 제 2 의 방향으로 리턴하는 반도체메모리.
- 특허청구의 범위 제2항에 있어서, 상기 정보메모리블럭(12)는 하나는 트랜지스터와 하나의 커패시터만을 구비하는 메모리셀을 포함하는 반도체메모리.
- 특허청구의 범위 제2항에 있어서, 상기 여러개의 정보메모리블럭(12)는 적어도 4개의 정보메모리블럭을 포함하는 반도체메모리.
- 특허청구의 범위 제10항에 있어서, 상기 신드롬버스(22)는 한쪽의 방향으로 연장하고, 상기 한쪽의 방향과 반대인 제 2 의 방향으로 리턴하는 반도체메모리.
- 특허청구의 범위 제10항에 있어서, 상기 신드롬버스(22)는 한쪽의 방향으로 연장하고, 리턴되지 않는 반도체메모리.
- 특허청구의 범위 제2항에 있어서, 상기 신드롬버스(22)는 한쪽의 방향으로 연장하고, 상기 한쪽의 방향과 반대인 제 2 의 방향으로 리턴하는 반도체메모리.
- 특허청구의 범위 제1항에 있어서, 상기 정보메모리블럭(12)는 하나의 트랜지스터와 하나의 커패시터만을 구비하는 메모리셀을 포함하는 반도체메모리.
- 특허청구의 범위 제1항에 있어서, 상기 여러개의 정보메모리블럭(12)는 적어도 4개의 정보메모리블럭을 포함하는 반도체메모리.
- 특허청구의 범위 제15항에 있어서, 상기 신드롬버스(22)는 한쪽의 방향으로 연장하고, 상기 한쪽의 방향과 반대인 제 2 의 방향으로 리턴하는 반도체메모리.
- 특허청구의 범위 제15항에 있어서, 상기 신드롬버스(22)는 한쪽의 방향으로 연장하고, 리턴되되지 않는 반도체메모리.
- 특허청구의 범위 제1항에 있어서, 상기 신드롬버스(22)는 한쪽의 방향으로 연장하고, 상기 한쪽의 방향과 반대인 제 2 의 방향으로 리턴하는 반도체메모리.
- (a) (i) 각각이 출력부를 가지며, 또한 정보비트를 기억하는 여러개의 수단(12), (ii) 검사비트를 기억하는 수단(13), (iii) 각각이 제1의 출력(28) 및 제 2 의 출력을 가지며, 또한 정보비트를 기억하는 각각의 수단의 각각의 출력부에 각각 배치된 여러개 멀티플렉스용 수단(26), (iv) 상기 각각의 멀티플렉스용 수단의 제 2 의 출력에 각각 결합되고, 또한 패리티검사용 정보비트를 받는 패리티검사용의 여러개의 수단(27)을 포함하는 비트기억용 수단, (b) 정보비트를 기억하는 각각의 수단(12)에 대해서, 정보비트를 기억하는 그의 각각의 수단(12)의 멀티플렉스용 수단(26)에서의 제 1 의 입력정보비트와 제 2 의 입력을 갖는 여러개의 에러정정용수단(21), (c) 상기 패리티검사용 수단(27)의 각각의 출력, 상기 검사비트를 기억하는 수단(13)의 출력 및 상기 여러개의 에러정정용 수단의 상기 제 2 의 입력에 전기적으로 결합되고, 신드롬을 발생하여 전달하는 신드롬 발생/전달수단(22), (d) 상기 신드롬 발생/전달수단(22)에서의 신드롬에 응답해서 상기 멀티플렉스용 수단(26)의 제 1 의 출력에서 공급된 정보비트를 정정하는 각각의 에러정정용 수단(21)을 포함하는 반도체메모리.
- 특허청구의 범위 제19항에 있어서, 상기 신드롬 발생/전달수단(22)는 신드롬버스를 포함하는 반도체메모리.
- (a) 각각의 출력부를 갖고, 메모리어레이(11)내의 여러개의 정보 메모리블럭 (12)의 정보비트를 기억하는 스텝, (b) 상기 메모리어레이(11)내의 검사비트 메모리블럭(13)의 검사비트를 기억하는 스템, (c)상기 메모리어레이(11)내의 각각의 정보메모리블럭(12)의 각각의 출력을 멀티플렉스하여 제 1 의 출력(28) 및 제 2 의 출력을 마련하는 스텝, (d) 패리티검사용 정보비트에 응답해서 상기 메모리어레이(11)내의 각각의 제 2 의 출력의 패리티를 검사하는 스텝, (e) 상기 검사비트 메모리블럭(13)의 출력과 각각의 제 3 의 출력에 전기적으로 결합된 버스(22)에 대해서 신드롬을 발생하여 전달하는 스텝, (f) 상기 버스(22)상의 신드롬에 응답해서 상기 제 1 의 출력에서의 정보비트를 정정하는 스텝을 포함하는 반도체메모리에서의 배선저감방법.
- 특허청구의 범위 제21항에 있어서, 상기 정보비트를 정정하는 스텝은 상기 제 1 의 출력과 상기 신드롬을 에러정정회로(21)에 공급하는 스텝을 포함하는 반도체메모리에서의 배선저감방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63-3865 | 1988-01-13 | ||
JP88-3865 | 1988-01-13 | ||
JP63003865A JP2583547B2 (ja) | 1988-01-13 | 1988-01-13 | 半導体メモリ |
Publications (2)
Publication Number | Publication Date |
---|---|
KR890012323A KR890012323A (ko) | 1989-08-25 |
KR930000897B1 true KR930000897B1 (ko) | 1993-02-11 |
Family
ID=11569088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019890000139A KR930000897B1 (ko) | 1988-01-13 | 1989-01-07 | 에러정정회로를 갖는 반도체메모리 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5056095A (ko) |
JP (1) | JP2583547B2 (ko) |
KR (1) | KR930000897B1 (ko) |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04141900A (ja) * | 1990-10-01 | 1992-05-15 | Nec Ic Microcomput Syst Ltd | 半導体集積回路 |
US5206865A (en) * | 1990-12-17 | 1993-04-27 | Motorola, Inc. | Error detection and correction memory system |
US5291498A (en) * | 1991-01-29 | 1994-03-01 | Convex Computer Corporation | Error detecting method and apparatus for computer memory having multi-bit output memory circuits |
US5289477A (en) * | 1991-06-06 | 1994-02-22 | International Business Machines Corp. | Personal computer wherein ECC and partly error checking can be selectively chosen for memory elements installed in the system, memory elements enabling selective choice of error checking, and method |
JPH05216698A (ja) * | 1991-08-05 | 1993-08-27 | Advanced Micro Devicds Inc | 改良されたエラー検出および訂正回路 |
JP3067866B2 (ja) * | 1991-11-26 | 2000-07-24 | 沖電気工業株式会社 | 半導体記憶装置 |
US5367526A (en) * | 1993-06-22 | 1994-11-22 | Kong Edmund Y | Memory module, parity bit emulator, and associated method for parity bit emulation |
US5488691A (en) * | 1993-11-17 | 1996-01-30 | International Business Machines Corporation | Memory card, computer system and method of operation for differentiating the use of read-modify-write cycles in operating and initializaiton modes |
US5555250A (en) * | 1994-10-14 | 1996-09-10 | Compaq Computer Corporation | Data error detection and correction system |
DE69533391D1 (de) * | 1995-04-28 | 2004-09-23 | St Microelectronics Srl | Schaltung zur Erkennung einer Überspannung an einem elektrischen Verbraucher |
EP0766174B1 (en) * | 1995-09-29 | 2002-05-22 | STMicroelectronics S.r.l. | Memory device having improved yield and reliability |
EP0797147B1 (en) * | 1996-03-21 | 2002-07-03 | STMicroelectronics S.r.l. | Method for recovering failed memory devices |
US5907671A (en) * | 1996-09-23 | 1999-05-25 | International Business Machines Corporation | Fault tolerant system based on voting |
KR100287018B1 (ko) * | 1998-08-07 | 2001-04-16 | 윤종용 | 에러 정정 회로를 구비한 반도체 메모리 장치 |
USH1915H (en) * | 1998-12-18 | 2000-11-07 | Cardiac Pacemakers, Inc. | Hybrid static RAM circuit |
AU1634600A (en) * | 1998-12-30 | 2000-07-24 | Intel Corporation | Memory array organization |
US7073099B1 (en) | 2002-05-30 | 2006-07-04 | Marvell International Ltd. | Method and apparatus for improving memory operation and yield |
US6988237B1 (en) | 2004-01-06 | 2006-01-17 | Marvell Semiconductor Israel Ltd. | Error-correction memory architecture for testing production errors |
JP3935151B2 (ja) * | 2004-01-26 | 2007-06-20 | 株式会社東芝 | 半導体集積回路装置 |
US7266635B1 (en) | 2004-07-22 | 2007-09-04 | Marvell Semiconductor Israel Ltd. | Address lookup apparatus having memory and content addressable memory |
US8464093B1 (en) * | 2004-09-03 | 2013-06-11 | Extreme Networks, Inc. | Memory array error correction |
JP4980565B2 (ja) * | 2004-12-21 | 2012-07-18 | 富士通セミコンダクター株式会社 | 半導体メモリ |
JP4802515B2 (ja) * | 2005-03-01 | 2011-10-26 | 株式会社日立製作所 | 半導体装置 |
US7451380B2 (en) * | 2005-03-03 | 2008-11-11 | International Business Machines Corporation | Method for implementing enhanced vertical ECC storage in a dynamic random access memory |
JP4547313B2 (ja) * | 2005-08-01 | 2010-09-22 | 株式会社日立製作所 | 半導体記憶装置 |
WO2007046350A1 (ja) * | 2005-10-18 | 2007-04-26 | Nec Corporation | Mramの動作方法 |
US7843927B1 (en) | 2006-12-22 | 2010-11-30 | Extreme Networks, Inc. | Methods, systems, and computer program products for routing packets at a multi-mode layer 3 packet forwarding device |
DE102006016499B4 (de) * | 2006-04-07 | 2014-11-13 | Qimonda Ag | Speichermodulsteuerung, Speichersteuerung und entsprechende Speicheranordnung sowie Verfahren zur Fehlerkorrektur |
US7506226B2 (en) * | 2006-05-23 | 2009-03-17 | Micron Technology, Inc. | System and method for more efficiently using error correction codes to facilitate memory device testing |
KR20080080882A (ko) * | 2007-03-02 | 2008-09-05 | 삼성전자주식회사 | Ecc용 레이어를 구비하는 다층 구조 반도체 메모리 장치및 이를 이용하는 에러 검출 및 정정 방법 |
WO2008133087A1 (ja) * | 2007-04-17 | 2008-11-06 | Nec Corporation | 半導体記憶装置及びその動作方法 |
TWI381392B (zh) * | 2010-02-04 | 2013-01-01 | Transcend Information Inc | 雙層面記憶體錯誤修正方法以及相關的記憶體裝置 |
US8331373B2 (en) * | 2010-03-15 | 2012-12-11 | Extreme Networks, Inc. | Methods, systems, and computer readable media for automatically selecting between internet protocol switching modes on a per-module basis in a packet forwarding device |
US9218243B2 (en) * | 2011-06-06 | 2015-12-22 | Rambus Inc. | Memory system for error detection and correction coverage |
US8909981B2 (en) * | 2011-06-21 | 2014-12-09 | Hamilton Sundstrand Corporation | Control system software execution during fault detection |
US9904595B1 (en) * | 2016-08-23 | 2018-02-27 | Texas Instruments Incorporated | Error correction hardware with fault detection |
US20240021266A1 (en) * | 2022-07-18 | 2024-01-18 | Winbond Electronics Corp. | Memory array |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3851306A (en) * | 1972-11-24 | 1974-11-26 | Ibm | Triple track error correction |
US4651321A (en) * | 1983-08-29 | 1987-03-17 | Amdahl Corporation | Apparatus for reducing storage necessary for error correction and detection in data processing machines |
US4625313A (en) * | 1984-07-06 | 1986-11-25 | Tektronix, Inc. | Method and apparatus for testing electronic equipment |
JPS623499A (ja) * | 1985-06-28 | 1987-01-09 | Mitsubishi Electric Corp | 半導体メモリ装置 |
JPS6246357A (ja) * | 1985-08-23 | 1987-02-28 | Hitachi Vlsi Eng Corp | 半導体記憶装置 |
JPH0785360B2 (ja) * | 1985-11-19 | 1995-09-13 | 日本電気株式会社 | 半導体記憶装置 |
US4763329A (en) * | 1986-02-10 | 1988-08-09 | Techlan, Inc. | Modular data routing system |
US4817095A (en) * | 1987-05-15 | 1989-03-28 | Digital Equipment Corporation | Byte write error code method and apparatus |
-
1988
- 1988-01-13 JP JP63003865A patent/JP2583547B2/ja not_active Expired - Fee Related
-
1989
- 1989-01-07 KR KR1019890000139A patent/KR930000897B1/ko not_active IP Right Cessation
- 1989-01-12 US US07/296,135 patent/US5056095A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2583547B2 (ja) | 1997-02-19 |
JPH01182999A (ja) | 1989-07-20 |
KR890012323A (ko) | 1989-08-25 |
US5056095A (en) | 1991-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR930000897B1 (ko) | 에러정정회로를 갖는 반도체메모리 | |
US4747080A (en) | Semiconductor memory having self correction function | |
US5784391A (en) | Distributed memory system with ECC and method of operation | |
CN101123123B (zh) | 能够改变纠错码码长的半导体存储装置 | |
US5206831A (en) | Serial access semiconductor memory device having a redundancy system | |
EP0172734A2 (en) | Semiconductor memory device | |
EP0166269A2 (en) | Error correction method and system for multiple bit output chips | |
US20010000690A1 (en) | Semiconductor device with flexible redundancy system | |
US4453251A (en) | Error-correcting memory with low storage overhead and fast correction mechanism | |
KR950010311B1 (ko) | 반도체 기억장치 | |
US4689792A (en) | Self test semiconductor memory with error correction capability | |
US4763302A (en) | Alternatively addressed semiconductor memory array | |
KR970003279A (ko) | 메모리회로, 메모리회로의 데이타제어회로 및 메모리회로의 어드레스지정회로 | |
US4464755A (en) | Memory system with error detection and correction | |
EP0189699B1 (en) | Interdigitated bit line rom | |
JPH0357048A (ja) | 半導体メモリ | |
US4114192A (en) | Semiconductor memory device to reduce parasitic output capacitance | |
US4450562A (en) | Two level parity error correction system | |
JP2738363B2 (ja) | 連想記憶装置 | |
US8645621B2 (en) | Block mapping circuit and method for memory device | |
JPS59132489A (ja) | 半導体記憶装置 | |
JP3020614B2 (ja) | 半導体記憶装置 | |
JPS6233625B2 (ko) | ||
JPH05274871A (ja) | メモリ構造 | |
JPS61261898A (ja) | 半導体記憶装置 |
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: 20030203 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |