KR100720911B1 - 기억 제어 회로, 기억 제어 회로에서의 어드레스 에러 체크방법 - Google Patents

기억 제어 회로, 기억 제어 회로에서의 어드레스 에러 체크방법 Download PDF

Info

Publication number
KR100720911B1
KR100720911B1 KR1020050059174A KR20050059174A KR100720911B1 KR 100720911 B1 KR100720911 B1 KR 100720911B1 KR 1020050059174 A KR1020050059174 A KR 1020050059174A KR 20050059174 A KR20050059174 A KR 20050059174A KR 100720911 B1 KR100720911 B1 KR 100720911B1
Authority
KR
South Korea
Prior art keywords
address
data
code
bit
bits
Prior art date
Application number
KR1020050059174A
Other languages
English (en)
Other versions
KR20060106558A (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 KR20060106558A publication Critical patent/KR20060106558A/ko
Application granted granted Critical
Publication of KR100720911B1 publication Critical patent/KR100720911B1/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/1016Error in accessing a memory location, i.e. addressing error
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

본 발명은 종래의 기억 제어 회로가 어드레스에 관한 다중 비트 에러를 검출할 수 없었던 것을 해결하는 기억 제어 회로와 이 기억 제어 회로에서의 어드레스 에러 체크 방법에 관한 것이다. 본 발명은 어드레스로 지정되는 기억 영역에 데이터를 저장하는 기억부를 갖는 기억 제어 회로에서의 어드레스 에러 체크 방법으로서, 상기 어드레스에 부여하는 제1 코드를 짝수 비트로 부호화하고, 상기 기억부에 기록되는 데이터에 부여하는 제2 코드를 홀수 비트로 부호화하여 상기 제1 코드와 상기 제2 코드에 기초하여 체크 코드를 생성하고 상기 기억부에 기록되는 데이터에 대응시켜서 상기 기억부에 저장하고, 상기 기억부에서 판독되는 데이터와 이 판독되는 데이터에 대응시켜진 체크 코드와, 판독 어드레스에 기초하여 에러 체크를 행함으로써 어드레스의 다중 비트 에러를 검출한다.

Description

기억 제어 회로, 기억 제어 회로에서의 어드레스 에러 체크 방법{STORAGE CONTROL CIRCUIT, AND METHOD FOR ADDRESS ERROR CHECK IN THE STORAGE CONTROL CIRCUIT}
도 1은 종래 기술에 있어서의 에러 검출 방법을 설명하는 도면이다.
도 2는 본 발명의 실시예에 있어서의 기억 제어 회로의 구성예를 도시하는 도면이다.
도 3은 체크 코드 생성 회로 및 체크 코드 검사 회로에 의해 생성되는 비트 패턴의 예를 도시하는 도면으로서, 도 3의 A는 32 비트의 데이터 전반 16 비트에 관한 비트 패턴을 도시하고, 도 3의 B는 32 비트의 데이터 후반 16 비트에 관한 비트 패턴을 도시하며, 도 3의 C는 9 비트의 어드레스에 관한 비트 패턴을 도시한다.
도 4는 판독 어드레스에 대한 1 비트 에러가 발생하는 경우에 있어서의 에러검출의 모습을 설명하는 도면이다.
도 5는 판독 어드레스에 대한 2 비트 에러가 발생하는 경우에 있어서의 에러검출의 모습을 설명하는 도면이다.
도 6은 판독 어드레스에 대한 3 비트 에러가 발생하는 경우에 있어서의 에러검출의 모습을 설명하는 도면이다.
도 7은 EOR 게이트의 단수를 줄이는 것을 목적으로 하는 어드레스에 관한 비트 패턴의 예이다.
도 8의 A는 본 실시예에 있어서의 메모리의 물리적 구성을 도시한 도면이고, 도 8의 B는 컬럼을 추출하여 설명하는 도면이며, 도 8의 C는 어드레스에 있어서의 그룹화를 설명하는 도면이다.
도 9의 A는 롤 비트를 설명하는 도이고, 도 9의 B는 한 바퀴 순회한 기록을 설명하는 도면이며, 도 9의 C는 두 바퀴 순회한 기록을 설명하는 도면이다.
도 10은 롤 비트가 부여되는 경우의 어드레스에 관한 비트 패턴의 예이다.
도 11은 본 실시예의 기억 제어 회로의 변형예를 도시하는 도면이다.
<도면의 주요부분에 때한 부호의 설명>
21 : 체크 코드 생성 회로
22 : 기록 레지스터
23 : 기록 디코더
24 : 판독 디코더
25 : 메모리
26 : 판독 레지스터
27 : 체크 코드 검사 회로
30 : 디코더
200 : 어드레스
201 : 기록 어드레스
202 : 기록 데이터
203 : 판독 어드레스
204 : 체크 코드
300 : 고장 개소
303 : 고장 어드레스
304 : 고장 어드레스로부터 생성한 체크 코드
305 : 판독 어드레스로부터 생성한 체크 코드
401 : 신드롬 비트
본 발명은 메모리 등의 기억 제어 회로에 관한 것으로, 특히 어드레스에 관한 다중 비트 에러를 검출하는 기억 제어 회로, 기억 제어 회로에서의 에러 체크 방법에 관한 것이다.
메모리 등의 기억 제어 회로에서의 데이터의 입출력은 그 기억 제어 회로에서의 기억 영역을 어드레스에 의해 지정하여 행해진다. 예컨대, 어드레스에 의해 지정되는 기억 영역에 원하는 데이터가 기록되고, 어드레스에 의해 지정되는 기억 영역에 저장된 데이터가 판독된다.
일반적으로 기억 제어 회로에서는 여러 가지의 요인(예컨대, 신호선에 발생하는 노이즈, 신호선을 중계하는 버퍼의 고장, 신호선의 단선, 전자파 등의 영향에 의한 소프트 에러 등)에 의해 어드레스나 데이터의 값이 반전하는 에러나, 0 또는 1의 고정치가 되는 에러가 발생하는 경우가 있다. 예컨대, 데이터 기록시에 어드레스에 에러가 발생하면, 원하는 어드레스와는 다른 기억 영역에 데이터가 기록되고, 경우에 따라서는 그 기억 제어 회로를 탑재하는 PC(Persona1 Computer) 등의 정보 처리 장치의 폭주의 원인이 된다.
기록하고자 하는 데이터에 에러가 발생하더라도 역시 정보 처리 장치의 폭주의 원인이 될 우려가 있어 바람직하지 못하다. 판독시에 어드레스 또는 데이터에 발생하는 에러도 마찬가지로 그 기억 제어 회로를 탑재하는 정보 처리 장치에 중대한 영향을 미치게 할 가능성이 있다.
그래서, 종래예에서 에러를 검출하기 위한 기술이 제안되고 있다. 예컨대, 특허 문헌 1∼5에는 어드레스 정보와 기억 장치에 저장하는 데이터를 이용하여 단일 비트 오류 정정·이중 비트 오류 검출 가능한 에러 정정 코드(ECC: Error Correcting Code)를 생성하는 것이 기재된다.
또한, 도 1에도 종래 기술에서의 에러 검출 방법이 도시된다. 도 1은 어드레스 패리티와 데이터에 기초하여 체크 코드를 생성하고 그것을 데이터와 함께 지정된 어드레스에 기록하는 기억 제어 회로의 예를 도시한다.
어드레스 패리티용 체크 코드 생성 회로(11)는 데이터를 기록하기 위해서 지정되는 어드레스의 패리티 비트(도 1에서는 예로서 홀수 패리티)에 기초하여 어드레스용 코드(103)를 생성한다. 도 1에는 어드레스 패리티용 체크 코드 생성 회로(11)에 의해 생성되는 비트 패턴의 예가 나타나 있다. x 표시는 패리티 비트가 1인 경우, ON 이 되는 비트이다.
데이터용 체크 코드 생성 회로(12)는 기록하는 데이터에 기초하여 데이터용 코드(104)를 생성한다. 데이터용 체크 코드 생성 회로(12)에 의해 생성되는 비트 패턴은 도시되어 있지 않지만, 원하는 코드를 얻을 수 있도록 설계되어 있다.
도 1의 경우 주어진 어드레스(101)(「01010101」)의 패리티 비트(홀수 패리티)가 1 이므로, 어드레스용 코드(103)로서 선두 5 비트가 ON 이 된「11111000」이 생성된다. 그리고, 데이터용 체크 코드 생성 회로(12)에 의해 일례로서「0010100 l」인 데이터용 코드(104)가 생성된다. 양자의 배타적 논리합(EOR)을 취하여 체크 코드(105)(「11010001」)가 생성되어, 데이터(102)(「00000001」)와 함께 어드레스(101)로 지정된 기억 영역에 기록된다.
그리고, 데이터의 판독시에 판독된 데이터(102)와 판독에 이용한 어드레스(101)를 사용하여 기록시와 마찬가지로 체크 코드를 생성하고, 그것을 판독된 체크 코드(105)와 비교한다. 양자가 일치하지 않는 경우, 에러로서 검출된다.
(특허 문헌 1) 일본국 특개소55-8617호 공보
(특허 문헌 2) 일본국 특개소53-62936호 공보
(특허 문헌 3) 일본국 특개평8-235793호 공보
(특허 문헌 4) 일본국 특개평2-206855호 공보
(특허 문헌 5) 일본국 특개소52-2244호 공보
그러나, 종래 기술에서는 어드레스의 다중 비트 에러로 검출할 수 없는 경우가 있다는 과제를 갖고 있었다. 예컨대, 도 1에 도시하는 종래예에서는 어드레스의 2개소에서 비트가 반전하더라도(예컨대, 선두 비트와 2번째 비트가 교체한 상태에서도), 패리티 비트는 1 인 채로 있어 에러로서 검출되지 않는다.
그래서, 본 발명의 목적은 어드레스에 관한 다중 비트 에러를 검출하는 기억 제어 회로, 기억 제어 회로에서의 에러 체크 방법을 제공하는 것에 있다.
상기 목적은 본 발명의 제1 측면으로서, 어드레스로 지정되는 기억 영역에 데이터를 저장하는 기억부와, 상기 기억부에 기록되는 데이터와 기록용으로 지정되는 상기 어드레스로부터 상기 기억부에 기록되는 데이터에 대응시켜서 상기 기억부에 저장하는 체크 코드를 생성하는 체크 코드 생성부와, 상기 기억부에서 판독되는 데이터와 이 판독되는 데이터에 대응시켜진 체크 코드와 판독용으로 지정되는 상기 어드레스로부터 에러 체크를 행하는 체크 코드 검사부를 구비하고, 상기 체크 코드 생성부와 상기 체크 코드 검사부는 상기 어드레스에 부여하는 제1 코드를 짝수 비트로 부호화하고, 상기 기억부에 기록되는 데이터에 부여하는 제2 코드를 홀수 비트로 부호화하여 상기 제1 코드와 상기 제2 코드에 기초하여 상기 기록되는 데이터 또는 상기 판독되는 데이터에 대응한 체크 코드를 생성 또는 검사하는 것을 특징으로 하는 기억 제어 회로를 제공함으로써 달성된다.
상기 발명의 측면에서 보다 바람직한 실시예에 따르면, 상기 어드레스는 1 또는 복수의 비트씩 구획되어 복수의 그룹으로 분할되고, 상기 복수의 그룹마다 각 그룹내의 모든 1 비트 또는 복수 비트의 고장이 식별 가능한 비트 패턴을 이용하여 상기 제1 코드를 짝수 비트로 부호화한다.
상기 발명의 측면에서 보다 바람직한 실시예에 따르면, 상기 어드레스에 상기 기억부로의 상기 데이터의 기록 및 판독을 위해서 추가로 지정되는 어드레스가 한 바퀴 순회할 때마다 값이 반전하는 롤 비트(roll bit)가 부여되고, 상기 롤 비트를 포함한 상기 어드레스에 부여하는 상기 제1 코드를 짝수 비트로 부호화한다.
또한, 상기 목적은 제2 측면으로서, 어드레스로 지정되는 기억 영역에 데이터를 저장하는 기억부를 갖는 기억 제어 회로에서의 어드레스 에러 체크 방법으로서, 상기 어드레스에 부여하는 제1 코드를 짝수 비트로 부호화하고, 상기 기억부에 기록되는 데이터에 부여하는 제2 코드를 홀수 비트로 부호화하며, 상기 제1 코드와 상기 제2 코드에 기초하여 체크 코드를 생성하여 상기 기억부에 기록되는 데이터에 대응시켜서 상기 기억부에 저장하고, 상기 기억부에서 판독되는 데이터, 이 판독되는 데이터에 대응하는 체크 코드 및 판독 어드레스에 기초하여 에러 체크를 수행하는 것을 특징으로 하는 어드레스 에러 체크 방법을 제공함으로써 달성된다.
상기 발명의 측면에서 보다 바람직한 실시예에 따르면, 상기 어드레스는 1 또는 복수의 비트씩 구획되어 복수의 그룹으로 분할되고, 상기 복수의 그룹마다 각 그룹내의 모든 1 비트 또는 복수 비트의 고장이 식별 가능한 비트 패턴을 이용하여 상기 제1 코드를 짝수 비트로 부호화한다.
상기 발명의 측면에서 보다 바람직한 실시예에 따르면, 상기 어드레스에 상기 기억부로의 상기 데이터의 기록 및 판독을 위해서 추가로 지정되는 어드레스가 한 바퀴 순회할 때마다 값이 반전하는 롤 비트가 부여되고, 상기 롤 비트를 포함한 상기 어드레스에 부여하는 상기 제1 코드를 짝수 비트로 부호화한다.
본 실시예의 어드레스 에러 체크 방법을 사용하면, 체크 코드의 비트수를 증가시키지 않고서도 어드레스에 관한 다중 비트 에러를 검출할 수 있다.
이하, 본 발명의 실시예에 관해서 도면에 따라서 설명한다. 그러나, 본 발명의 기술적 범위는 이러한 실시예에 한정되는 것은 아니며, 특허 청구의 범위에 기재된 발명과 그 균등물에까지 미치는 것이다.
도 2는 본 발명의 실시예에서의 기억 제어 회로의 구성예를 도시하는 도면이다. 체크 코드 생성 회로(21)에는 데이터를 기록하기 위해서 지정되는 어드레스(201)(이하, 기록 어드레스라고 부른다)와, 기억 제어 회로에 저장하는 데이터(202)(이하, 기록 데이터라고 부른다)가 입력된다.
그리고, 체크 코드 생성 회로(21)는 기록 어드레스(201)와 기록 데이터(202)에 기초하여 기록 데이터(202)에 부여하는 체크 코드를 생성한다. 체크 코드 생성 회로(21)에 의해 생성되는 비트 패턴에 관해서는 도 3에서 후술한다.
메모리(25)는 본 실시예의 기억 제어 회로에서의 기억부이다. 메모리(25)에는 어드레스(번지)로 지정되는 복수의 기억 소자가 배치되고, 그 복수의 기억 소자가 기억 영역을 형성하고 있다.
기록 레지스터(WR)(22)에는 메모리(25)에 저장되는 정보(기록 데이터(202)와 체크 코드(204))가 입력된다. 기록 레지스터(22)는 이 메모리(25)에 저장되는 정보를 일시적으로 저장한다.
기록 디코더(WDEC)(23)에는 기록 어드레스(201)가 입력된다. 기록 디코더(23)는 기록 어드레스(201)에 대응하는 메모리(25)내의 기억 영역을 구동하여 기록 레지스터(22)의 정보를 구동하는 기억 영역에 저장한다.
판독 디코더(RDEC)(24)에는 판독 어드레스(203)가 입력된다. 판독 디코더(24)는 판독 어드레스(203)에 대응하는 메모리(25)내의 기억 영역에 저장되는 정보를 판독하고, 판독 레지스터(RR)(26)에 저장한다.
판독 레지스터(26)에는 메모리(25)로부터 판독된 정보(판독 어드레스(203)에 대응하는 기록 데이터(202)와 체크 코드(204))가 입력된다. 판독 레지스터(26)는 이 메모리(25)로부터 판독된 정보를 일시적으로 저장한다.
체크 코드 검사 회로(27)는 판독 어드레스(203)와 메모리(25)로부터 판독된 정보(판독 어드레스(203)에 대응하는 기록 데이터(202)와 체크 코드(204)가 입력된다. 체크 코드 검사 회로(27)는 판독 어드레스(203)와 판독 어드레스(203)에 대응하는 기록 데이터(202)에 기초하여 체크 코드를 생성하고, 그 생성된 체크 코드와 판독 어드레스(203)에 대응하는 체크 코드(204)를 비교한다.
비교 과정에서, 체크 코드 검사 회로(27)는 신드롬 비트를 생성한다. 신드롬 비트란 생성된 체크 코드와 판독 어드레스(203)에 대응하는 체크 코드(204)의 배타적 논리합을 취한 코드를 말한다.
체크 코드 검사 회로(27)는 신드롬 비트가 모두 0 이면, 에러 없음으로 판정하여, 판독 어드레스(203)에 대응하는 기록 데이터(202)를 출력한다. 체크 코드 검사 회로(27)는 신드롬 비트에 1이 포함되면, 에러 있음으로 판정하여 에러 통지를 출력한다. 체크 코드 검사 회로(27)에 의해 생성되는 체크 코드는 체크 코드 생성 회로(21)로 생성되는 것과 동일하며, 도 3에서 후술한다.
본 실시예의 기억 제어 회로는 체크 코드 생성 회로(21)와 체크 코드 검사 회로(27)로 생성되는 체크 코드의 비트 패턴에 특징이 있다. 본 실시예의 기억 제어 회로는 기록 어드레스(201)에 부여하는 코드를 짝수 비트로 부호화하고, 기록 데이터(202)에 부여하는 코드를 홀수 비트로 부호화하여 양자의 배타적 논리합(EOR)을 취함으로써 체크 코드를 생성한다.
도 3은 체크 코드 생성 회로(21) 및 체크 코드 검사 회로(27)에 의해 생성되는 비트 패턴의 예를 도시하는 도면이다. 도 3은 32 비트의 기록 데이터(202)와 9 비트의 기록 어드레스(201)에 대하여 본 실시예의 기억 제어 회로가 생성하는 체크 코드의 예를 도시한다.
본 실시예의 기억 제어 회로는 데이터 부분을 3 비트로 부호화한다. 즉, 32 비트의 데이터의 각 비트 위치에서 그 비트가 1 인 경우, 생성되는 체크 코드에서 ON이 되는 비트의 수가 3 이 된다. 그리고, 본 실시예의 기억 제어 회로는 어드레스 부분을 2 비트로 부호화한다.
도 3의 A는 32 비트의 데이터 전반 16 비트에 관한 비트 패턴을 도시하고, 도 3의 B는 32 비트의 데이터 후반 16 비트에 관한 비트 패턴을 도시하며, 도 3의 C는 9 비트의 어드레스에 관한 비트 패턴을 도시한다. x 표시는 (데이터 또는 어드레스의) 비트가 1 인 경우, (생성되는 코드에 있어서) ON 이 되는 비트를 도시한다.
예컨대, 32 비트의 데이터가 마지막에서 2번째와 4번째 비트만이 1 인 것과 같은 데이터 「00000000 00000000 00000000 00001010」의 경우, 도 3의 B의 「D28 」이 1인 경우에 ON이 되는 비트로 이루어지는 코드 「00001101」과, 「D30」이 1 인 경우에 ON이 되는 비트로 이루어지는 코드 「0O01O1O1」인 2자 배타적 논리합을 취한 「OO0110OO」이 데이터에 대한 코드(제2 코드)로서 생성된다.
이 데이터를 어드레스 「101010101」에 기록할 때, 도 3의 C의 「A0」이 1인 경우에 0N이 되는 비트로 이루어지는 코드 「11000000」, 마찬가지로 「A2, A4, A6, A8」이 1인 경우에 ON이 되는 비트로 이루어지는 코드 「1O010OOO」 「1OO0O1OO」 「1OOO00O1」 「O1O1OOO0」의 5자의 배타적 논리합을 취한 「000001O1」이 어드레스에 대한 코드(제1 코드)로서 생성된다.
기억 제어 회로는 어드레스에 대한 제1 코드 「00O00101」와 데이터에 대한 제2 코드 「00011000」의 배타적 논리합을 취하여 최종적으로 체크 코드를 생성한다. 이 경우, 체크 코드는 「O0011101」이다.
또한, 도 3에 있어서, 데이터부의 비트 패턴은 각각 상이하다. 예컨대, 데이터의 선두 비트 DOO에 대한 비트 패턴 「OOOO111O」은 데이터에 있어서의 다른 비트 Dxx에 대한 비트 패턴과는 모두 상이하다. 이와 마찬가지로, 어드레스부의 비트 패턴도 각각 상이하다.
이렇게 해서, 본 실시예의 기억 제어 회로는 어드레스에 부여하는 코드의 체계를 데이터에 부여하는 코드의 체계와 바꿈으로써, 어드레스에 생기는 에러를 검출할 수 있다. 본 실시예의 기억 제어 회로에서는 어드레스에 부여하는 코드는 2 비트로 부호화되어 있고, 어드레스에 생기는 에러가 신드롬 비트에서의 데이터의 2 비트 에러로서 검출된다.
또한, 본 실시예에서는 기억 제어 회로가 기록 어드레스(201)에 부여하는 코드를 2 비트로 부호화하고, 기록 데이터(202)에 부여하는 코드를 3 비트로 부호화하지만, 부호화에 사용하는 비트 수는 이것에 한정되지 않는다. 일반적으로, 기록 어드레스(201)에 부여하는 코드를 2 비트 이상의 짝수 비트로 부호화하고, 기록 데이터(202)에 부여하는 코드를 3 비트 이상의 홀수 비트로 부호화하면, 본 실시예와 동일한 효과를 얻을 수 있다.
본 실시예에서는, 신드롬 비트의 비트 패턴이 도 3의 A 또는 도 3의 B의 비트 패턴과 동일하면, 전술한 데이터 비트의 1 비트 에러이며, 전술한 데이터 비트를 반전(정정)하면 정확한 데이터를 얻을 수 있다. 또한, 신드롬 비트가 1 비트만 ON 인 비트 패턴은 체크 비트의 1 비트 에러이며 무시할 수 있고, 신드롬 비트가 모두 0 이면 에러가 없는 것이 된다. 그리고, 신드롬 비트가 이들의 어느 것도 아닌 경우에는 데이터의 2 비트 에러 또는 어드레스 에러로서 인식한다.
데이터의 2 비트 에러를 검출하기 위해서 도 3의 예에 도시한 바와 같이, 데이터의 각 비트에는 3 비트 이상의 홀수 비트의 비트 패턴을 부여하고 있다. 이에 따라 임의의 2 비트의 데이터 비트가 반전하면 신드롬 비트는 홀수 비트 패턴과 홀수 비트 패턴의 배타적 논리합으로 짝수 비트 패턴이 되기 때문에 2 비트 에러로 인식할 수 있다. 어드레스의 에러는 짝수 비트 패턴이 부여되어 있기 때문에, 1 비트 또는 복수 비트가 반전하면 신드롬 비트는 짝수 비트 패턴과 짝수 비트 패턴의 배타적 논리합으로 짝수 비트 패턴이 되기 때문에, 2 비트 에러로 인식할 수 있다.
도 3의 C의 어드레스에 대한 비트 패턴예에서는 비트 A0∼A6과 비트 A7∼A8 의 2그룹으로 나눠 비트 패턴을 부여하고 있다. 이 도 3의 C의 비트 패턴예에서는 어드레스 그룹내의 모든 고장 조합(1∼7 비트의 임의의 조합)으로도, 신드롬 비트는 2 비트 이상의 짝수 비트 패턴이 되기 때문에, 2 비트 에러로 인식할 수 있다. 다만, 어드레스 그룹 사이에 걸치는 3 비트 이상의 고장(예컨대 어드레스의 A0, Al, A7 비트가 동시에 반전하는 고장)에서는 신드롬 비트가 모두 O 이 되어 에러를 검출할 수 없는 경우가 있다. 그러나, 어드레스 그룹은 동시에 고장날 가능성이 낮은 비트 끼리를 그룹화하기 때문에 신드롬 비트가 모두 O 이 되어 에러를 검출할 수 없는 고장은 거의 발생하지 않는다.
도 4는 판독 어드레스(203)에 대한 1 비트 에러가 발생하는 경우에 있어서의 에러 검출의 모습을 설명하는 도면이다. 판독 어드레스(203)가 판독 디코더(24)에 입력되는 도중에 고장 개소(300)가 있어, 어드레스에 1 비트 반전이 발생하는 상태를 도시한다. 기록은 정상적으로 행해지고, 어드레스 「101010101」에 데이터와 체크 코드가 저장되어 있다.
그리고, 기록된 데이터를 판독하기 위해서 판독 어드레스(203)(「101O1O101」)가 지정된다. 판독 디코더(24)에는 고장 개소(300)를 거친 판독 어드레스(203)가 1 비트 반전(여기서는, 판독 어드레스의 선두 비트가 반전한다)하여 고장 어드레스(303)(「0O101O1O1」)로서 입력되고, 대응하는 어드레스에 저장된 데이터와 체크 코드가 판독 레지스터(26)를 지나서 체크 코드 검사 회로(27)에 입력된다.
한편, 판독 어드레스(203)는 정상적으로 체크 코드 검사 회로(27)에 입력된다. 체크 코드 검사 회로(27)는 판독된 데이터와 체크 코드와 판독 어드레스(203) 에 기초하여 신드롬 비트(401)를 생성한다.
생성되는 신드롬 비트(401)는 고장 어드레스(303)(「00101O101」)의 체크 코드(304)(「11OOO1O1」)와 판독 어드레스(203)(「101O1O101」)의 체크 코드(305)(「00O00101」)의 배타적 논리합이 된다. 신드롬 비트(401)는 여기서는 「110O0OO0」이며, 어드레스에서의 1 비트 반전이 데이터의 2 비트 에러로서 검출된다.
도 5는 판독 어드레스(203)에 대한 2 비트 에러가 발생하는 경우에 있어서의 에러 검출의 모습을 설명하는 도면이다. 도 5는 도 4와 달리 2 비트 에러가 발생하는 점이 다르지만, 그 이외의 점은 동일하다.
판독 어드레스(203)가 판독 디코더(24)에 입력되는 도중에 고장 개소(300)가 있어, 어드레스에 2 비트 반전이 발생하는 상태를 도시한다. 기록은 정상적으로 행해지고, 어드레스 「101010101」에 데이터와 체크 코드가 저장되어 있다.
그리고, 기록된 데이터를 판독하기 위해서 판독 어드레스(203)(「1O101O101」)가 지정된다. 판독 디코더(24)에는 고장 개소(300)를 거친 판독 어드레스(203)가 2 비트 반전(여기서는, 판독 어드레스의 선두 비트와 2 번째 비트가 반전한다)하여, 고장 어드레스(303)(「011010101」)로서 입력되고, 대응하는 어드레스에 저장된 데이터와 체크 코드가 판독 레지스터(26)를 거쳐서 체크 코드 검사 회로(27)에 입력된다.
한편, 판독 어드레스(203)는 정상적으로 체크 코드 검사 회로(27)에 입력된다. 체크 코드 검사 회로(27)는 판독된 데이터와 체크 코드와 판독 어드레스(203)(「101O101O1」)에 기초하여 신드롬 비트(401)를 생성한다. 생성되는 신드롬 비트 (401)는 고장 어드레스(303)(「O11O10101」)의 체크 코드(304)(「O11O01O1」)와 판독 어드레스(203)(「101O10101」)의 체크 코드(305)(「O00O01O1」)의 배타적 논리합이 된다. 신드롬 비트(401)는 여기서는 「O1100OOO」이며, 어드레스에서의 2 비트의 반전이 데이터의 2 비트 에러로서 검출된다.
도 6은 판독 어드레스(203)에 대한 3 비트 에러가 발생하는 경우에 있어서의 에러 검출의 모습을 설명하는 도면이다. 도 6은 도 4와 달리 3 비트 에러가 발생하는 점이 다르지만, 그 이외의 점은 동일하다.
판독 어드레스(203)가 판독 디코더(24)에 입력되는 도중에 고장 개소(300)가 있어, 어드레스에 3 비트 반전이 발생하는 상태를 나타낸다. 기록은 정상적으로 행해지고, 어드레스 「101010101」에 데이터와 체크 코드가 저장되어 있다.
그리고, 기록된 데이터를 판독하기 위해서 판독 어드레스(203)(「101O1O101」)가 지정된다. 판독 디코더(24)에는 고장 개소(300)를 거친 판독 어드레스(203)가 3 비트 반전(여기서는, 판독 어드레스의 선두 비트와 2번째, 3번째 비트가 반전한다)하여, 고장 어드레스(303)(「010010101」)로서 입력되고, 대응하는 어드레스에 저장된 데이터와 체크 코드가 판독 레지스터(26)를 거쳐서 체크 코드 검사 회로(27)에 입력된다.
한편, 판독 어드레스(203)는 정상적으로 체크 코드 검사 회로(27)에 입력된다. 체크 코드 검사 회로(27)는 판독된 데이터와 체크 코드와 판독 어드레스(203)(「1O1O1O1O1」)에 기초하여 신드롬 비트(401)를 생성한다. 생성되는 신드롬 비트(401)는 고장 어드레스(303)(「01O01O101」)의 체크 코드(304)(「1111O101」)와 판 독 어드레스(203)(「101010101」)의 체크 코드(305)(「OO00O101」)의 배타적 논리합이 된다. 신드롬 비트(401)는 여기서는 「11110000」이며, 어드레스에서의 3 비트 반전이 데이터의 2 비트 에러로서 검출된다. 이렇게 해서, 어드레스 에러가 신드롬 비트(401)에 있어서의 짝수 비트 에러로서 검출된다.
도 3에 도시하는 체크 코드의 비트 패턴에 있어서, 체크 코드의 각 비트를 행마다 볼 때, 각 행에 포함되는 x 표시의 수가 많으면 그것 만큼 체크 코드 생성 회로(21) 및 체크 코드 검사 회로(27)에 있어서, EOR 게이트가 다단에 접속되게 되고, 지연 시간이 늦어진다. 그래서, 각 행에 포함되는 x 표시의 수가 평균화되도록 하여, 다단에 접속되는 EOR 게이트를 줄이도록 체크 코드 생성 회로(21)및 체크 코드 검사 회로(27)를 설계할 수 있다.
도 7은 EOR 게이트의 단수를 줄이는 것을 목적으로 하는 어드레스에 관한 비트 패턴의 예이다. 도 3의 C를 도 7에서 치환하면 체크 코드의 선두 비트 CO에 필요한 EOR 게이트의 단수가 도 3의 C와 비교해서 적게 끝나는 것을 알 수 있다.
또한, 본 실시예에 있어서는, 체크 코드로서 8 비트(C0∼C7)를 이용하였지만, 이 체크 코드에 필요한 비트 수 x 는 다음과 같은 조건을 만족하면 된다. 그것은, n 개의 대상물(things)로부터 순서를 고려하지 않고, r 개 추출했을 때의 조합을 nCr로 나타낼 때, 데이터에 관해서는 xCd > (데이터의 비트수)가 성립하는 것이다. 여기서, d는 데이터를 부호화하기 위한 3 이상의 홀수 모두이며, (8C3 = 56) + (8C5 = 56) + (8C7 = 8) = 120이 되어, 데이터의 비트 수가 32 보다 크기 위한 조건을 만족시키고 있는 것을 알 수 있다.
어드레스에 관해서는 2 개의 조건이 필요하며, 첫번째 조건은 xCa > (어드레스의 비트 수)가 성립하는 것이다. 여기서, a 는 어드레스를 부호화하기 위한 2 이상의 짝수의 모두이며, (8C2 = 28) + (8C4 = 70) + (8C6 = 28) + (8C8 = 1) = 127이 되어 어드레스의 비트 수 9 보다 크기 때문에 조건을 만족하고 있는 것을 알 수 있다. 어드레스의 두번째 조건은 어드레스 그룹내의 비트 수보다 체크 코드의 비트 수가 크면 된다. 여기서는, 어드레스 그룹은 비트 A0∼A6과, 비트 A7, A8의 2 개의 그룹으로 분리되어 있고, 각각 7 비트와 2 비트씩이며, 체크 코드의 8 비트 쪽이 크기 때문에 조건을 만족하고 있는 것을 알 수 있다.
계속해서, 어드레스 그룹화의 예를 설명한다.
도 8의 A는 본 실시예에 있어서의 메모리의 물리적 구성을 도시한 도면이다. 4 개의 컬럼(컬럼 0∼3)으로 분할되어, 데이터와 체크 코드를 맞춘 40 비트가 기록되는 모습이 그려진다.
도 8의 B는 컬럼을 추출하여 설명하는 도면이다. 각 컬럼은 40 비트의 데이터 1 세트를 128 세트(로우 0∼127) 저장하는 기억 소자를 포함한다.
도 8의 C는 어드레스에 있어서의 그룹화를 설명하는 도면이다. 도 8에 도시하는 메모리의 경우, 9 비트의 어드레스 중 선두에서부터의 7 비트가 로우를 지정하는 데 이용되고, 나머지 2 비트가 컬럼을 지정하는 데 이용된다. 어드레스의 그룹은 이 어드레스의 그룹은 이 로우를 지정하는 7 비트와 컬럼을 지정하는 2 비트로 나누어진다.
이상의 설명은 기억 제어 회로가 데이터의 판독시에 있어서의 어드레스의 에 러를 검출하는 예로서 설명해 왔다. 이상의 설명으로부터 명확한 바와 같이 메모리에 기록된 체크 코드에는 기록 어드레스 정보가 코드화되어 포함되어 있고, 판독 어드레스와 불일치하면 어드레스 에러로 하고 있는 것을 알 수 있다. 이것은 판독 어드레스의 에러 이외에 기록 어드레스의 에러도 검출이 가능한 것을 용이하게 추측할 수 있다. 기록 어드레스가 고장 나서 메모리가 틀린 어드레스 위치에 데이터와 체크 코드를 기록했다고 한다. 다만, 체크 코드는 정확한 기록 어드레스로부터 생성되었다고 한다. 그 잘못된 어드레스 위치에 기록된 데이터와 체크 코드를 판독하여 체크 코드를 검사하면, 판독 어드레스와 판독된 체크 코드에 포함된 기록 어드레스 정보가 불일치하기 때문에 어드레스 에러를 검출할 수 있다. 다만, 기록 어드레스가 에러가 되면, 원래 기록되어야 하는 어드레스 위치에는 낡은 데이터와 체크 코드가 남아 있게 된다. 이 낡은 데이터와 체크 코드를 판독하더라도 판독 어드레스와 판독한 체크 코드의 기록 어드레스 정보가 일치하기 때문에 어드레스 에러를 검출할 수 없다. 이 낡은 데이터와 체크 코드를 판독했을 때에 에러를 검출하기 위해서 메모리로의 데이터 기록을 위해 지정되는 어드레스가 한 바퀴 순회할 때마다 값이 반전하는 롤 비트(roll bit)를 추가한다.
도 9의 A는 롤 비트를 설명하는 도면이다. 9 비트의 어드레스의 선두 어드레스는 「000000000」이며, 말미의 어드레스는 「111111111」이다. 롤 비트는 어드레스가 「000000000」부터 「111111111」까지 한 바퀴 돌고, 재차 「000000000」이 될 때에 반전한다.
도 9의 B는 한 바퀴 순회한 기록을 설명하는 도면이다. 한 바퀴 순회한 기록 에서는 롤 비트는 0으로서 체크 비트가 생성되어 데이터와 함께 기록된다.
도 9의 C는 두 바퀴 순회한 기록을 설명하는 도면이다. 그리고, 기록 어드레스(201)가 선두 어드레스를 통과하는 두 바퀴 순회한 기록에서는, 롤 비트가 1로서 체크 비트가 생성되어 데이터와 함께 기록된다. 도 9의 C에서, 어드레스 「 000OO110」에 두 바퀴 순회한 데이터를 기록하려고 하여 3 비트 반전이 발생하고, 어드레스 「O00O101O1」에 기록이 행하여졌다고 한다.
어드레스 「OO0OO01l0」에 대응하는 메모리(25)에는 롤 비트가 0 일 때에 생성된 체크 코드가 남겨져 있다. 어드레스 「O00O101O1」에 대응하는 메모리(25)에는 롤 비트가 1로서 생성된 체크 코드가 (주위는 롤 비트가 0 인 영역임에도 상관없이) 저장된다.
다음에, 롤 비트에 1 이 지정된 상태에서 데이터의 판독이 행하여진다고 한다. 그러면, 어드레스 「000000110」의 데이터를 판독하여 에러 체크를 행하면, 롤 비트가 0 일 때에 생성된 체크 코드가 남겨져 있고 에러가 검출된다.
도 10은 롤 비트가 부여되는 경우의 어드레스에 관한 비트 패턴의 예이다. 도 3의 C와 비교하여 추가된 롤 비트(AX)가 1 인 경우, 모든 비트가 ON 이 되는 것과 같은 예이다. 이 경우에도 롤 비트는 짝수 비트로 부호화되어 있게 된다.
도 11은 본 실시예의 기억 제어 회로의 변형예를 도시하는 도면이다. 변형예는 도 2에 도시하는 기록 디코더(23)와 판독 디코더(24)로 분리된 2 포트 구성이 아니라, 기록 디코더(23)와 판독 디코더(24)의 기능을 합친 디코더(DEC)(30)를 갖는 1 포트 구성인 점이 상이하다. 디코더(30)에는 기록 어드레스와 판독 어드레스 가 함께 어드레스(200)로서 입력되어 각각의 처리가 행하여진다.
이 경우에도, 도 2에 도시하는 구성에 있어서의 본 실시예의 기억 제어 회로와 동일한 효과를 얻을 수 있다.
이렇게 해서, 본 실시예의 기억 제어 회로는 어드레스에 부여하는 코드의 체계와, 데이터에 부여하는 코드의 체계를 바꿈으로써, 어드레스에 생기는 다중 비트 에러라도 검출할 수 있다. 본 실시예의 기억 제어 회로에서는, 어드레스에 부여하는 코드는 2 비트로 부호화되어 있고, 어드레스에 생기는 에러가 신드롬 비트에 있어서의 데이터의 2 비트 에러로서 검출된다.
또한, 본 실시예의 기억 제어 회로는 롤 비트라고 하는 가상의 비트를 어드레스에 부가하여, 마찬가지로 부호화함으로써 데이터의 기록이 행하여지지 않은 어드레스의 에러를 검출할 수도 있다.
본 실시예의 어드레스 에러 체크 방법을 사용하면, 체크 코드의 비트수를 증가시키지 않으면서 어드레스에 관한 다중 비트 에러를 검출할 수 있다.

Claims (6)

  1. 어드레스로 지정되는 기억 영역에 데이터를 저장하는 기억부와;
    상기 기억부에 기록되는 데이터와 상기 데이터의 기록용으로 지정되는 상기 어드레스에 기초하여 체크 코드를 생성하고, 생성한 상기 체크 코드를 상기 기억부에 기록되는 데이터에 대응시켜 상기 기억부에 기억하는 체크 코드 생성부와;
    상기 기억부에서 판독되는 데이터와, 이 판독되는 데이터에 대응시켜진 체크 코드와, 판독용으로 지정되는 상기 어드레스로부터 에러 체크를 행하는 체크 코드검사부
    를 구비하고,
    상기 체크 코드 생성부와 상기 체크 코드 검사부는 상기 어드레스에 부여하는 제1 코드를 짝수 비트로 부호화하고, 상기 기억부에 기록되는 데이터에 부여하는 제2 코드를 홀수 비트로 부호화하여 상기 제l 코드와 상기 제2 코드에 기초하여 상기 기록되는 데이터 또는 상기 판독되는 데이터에 대응한 체크 코드를 생성 또는 검사하는 것을 특징으로 하는 기억 제어 회로.
  2. 제1항에 있어서, 상기 어드레스는 1 또는 복수의 비트씩 구획되어 복수의 그룹으로 분할되고,
    상기 복수의 그룹마다 각 그룹내의 모든 1 비트 또는 복수 비트의 고장이 식별가능한 비트 패턴을 이용하여 상기 제1 코드를 짝수 비트로 부호화하는 것을 특 징으로 하는 기억 제어 회로.
  3. 제1항 또는 제2항에 있어서, 상기 어드레스에, 상기 기억부로의 상기 데이터의 기록 및 판독을 위해서 지정되는 전체의 어드레스 범위가 한 바퀴 순회할 때마다 값이 반전하는 롤 비트(roll bit)가 추가로 부여되고,
    상기 롤 비트를 포함한 상기 어드레스에 부여하는 상기 제1 코드를 짝수 비트로 부호화하는 것을 특징으로 하는 기억 제어 회로.
  4. 어드레스로 지정되는 기억 영역에 데이터를 저장하는 기억부를 갖는 기억 제어 회로에서의 어드레스 에러 체크 방법으로서,
    상기 어드레스에 부여하는 제1 코드를 짝수 비트로 부호화하는 단계와;
    상기 기억부에 기록되는 데이터에 부여하는 제2 코드를 홀수 비트로 부호화하는 단계와;
    상기 제1 코드와 상기 제2 코드에 기초하여 체크 코드를 생성하여 상기 기억부에 기록되는 데이터에 대응시켜서 상기 기억부에 저장하는 단계와;
    상기 기억부에서 판독되는 데이터, 상기 판독되는 데이터에 대응하는 체크 코드 및 판독 어드레스에 기초하여 에러 체크를 수행하는 단계
    를 포함하는 것을 특징으로 하는 어드레스 에러 체크 방법.
  5. 제4항에 있어서, 상기 어드레스는 1 또는 복수의 비트씩 구획되어 복수의 그 룹으로 분할되고,
    상기 복수의 그룹마다 각 그룹내의 모든 1 비트 또는 복수 비트의 고장이 식별 가능한 비트 패턴을 이용하여 상기 제1 코드를 짝수 비트로 부호화하는 것을 특징으로 하는 어드레스 에러 체크 방법.
  6. 제4항 또는 제5항에 있어서, 상기 어드레스에, 상기 기억부로의 상기 데이터의 기록 및 판독을 위해서 지정되는 전체의 어드레스 범위가 한 바퀴 순회할 때마다 값이 반전하는 롤 비트가 추가로 부여되고,
    상기 롤 비트를 포함한 상기 어드레스에 부여하는 상기 제1 코드를 짝수 비트로 부호화하는 것을 특징으로 하는 어드레스 에러 체크 방법.
KR1020050059174A 2005-03-31 2005-07-01 기억 제어 회로, 기억 제어 회로에서의 어드레스 에러 체크방법 KR100720911B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2005-00100541 2005-03-31
JP2005100541A JP4799027B2 (ja) 2005-03-31 2005-03-31 記憶制御回路、記憶制御回路におけるアドレスエラーチェック方法

Publications (2)

Publication Number Publication Date
KR20060106558A KR20060106558A (ko) 2006-10-12
KR100720911B1 true KR100720911B1 (ko) 2007-05-25

Family

ID=36954951

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050059174A KR100720911B1 (ko) 2005-03-31 2005-07-01 기억 제어 회로, 기억 제어 회로에서의 어드레스 에러 체크방법

Country Status (5)

Country Link
US (1) US7555699B2 (ko)
EP (1) EP1715424A3 (ko)
JP (1) JP4799027B2 (ko)
KR (1) KR100720911B1 (ko)
CN (1) CN1841334B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180060927A (ko) * 2016-11-29 2018-06-07 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 메모리 어드레스 보호 회로 및 방법

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080028180A1 (en) * 2006-07-31 2008-01-31 Newman Alex P Inappropriate access detector based on system segmentation faults
GB2455212B (en) * 2008-01-30 2012-03-21 Ibm Method for identifying address faults of CPU status register files during read and write accesses
US8990660B2 (en) 2010-09-13 2015-03-24 Freescale Semiconductor, Inc. Data processing system having end-to-end error correction and method therefor
US8566672B2 (en) * 2011-03-22 2013-10-22 Freescale Semiconductor, Inc. Selective checkbit modification for error correction
US8607121B2 (en) 2011-04-29 2013-12-10 Freescale Semiconductor, Inc. Selective error detection and error correction for a memory interface
US8990657B2 (en) 2011-06-14 2015-03-24 Freescale Semiconductor, Inc. Selective masking for error correction
US8949694B2 (en) * 2011-09-23 2015-02-03 International Business Machines Corporation Address error detection
US9048876B2 (en) * 2011-11-18 2015-06-02 Sandisk Enterprise Ip Llc Systems, methods and devices for multi-tiered error correction
FR2992091B1 (fr) * 2012-06-14 2015-07-03 Commissariat Energie Atomique Procede d'enregistrement de donnees, procede de detection des erreurs d'acces a une memoire et dispositif associe
US9690517B2 (en) * 2015-05-22 2017-06-27 Texas Instruments Incorporated Dual-mode error-correction code/write-once memory codec
US20170177259A1 (en) * 2015-12-18 2017-06-22 Intel Corporation Techniques to Use Open Bit Line Information for a Memory System
US10489241B2 (en) * 2015-12-30 2019-11-26 Arteris, Inc. Control and address redundancy in storage buffer
US10353769B2 (en) * 2017-07-25 2019-07-16 Apple Inc. Recovering from addressing fault in a non-volatile memory
US11443820B2 (en) * 2018-01-23 2022-09-13 Microchip Technology Incorporated Memory device, memory address decoder, system, and related method for memory attack detection
CN109669802A (zh) * 2018-11-13 2019-04-23 北京时代民芯科技有限公司 一种用于edac验证的可配置存储器验证系统
JP7184632B2 (ja) * 2018-12-25 2022-12-06 ルネサスエレクトロニクス株式会社 半導体装置
US11537319B2 (en) * 2019-12-11 2022-12-27 Advanced Micro Devices, Inc. Content addressable memory with sub-field minimum and maximum clamping

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR910017284A (ko) * 1990-03-29 1991-11-05 존 지. 웨브 메모리 칩용 패리티 검사 방법 및 장치
JPH0546419A (ja) * 1991-08-15 1993-02-26 Fujitsu Ltd Fifoメモリのエラー検出処理方式
JPH08314812A (ja) * 1995-05-16 1996-11-29 Kawasaki Steel Corp パリティ検査回路
US6282686B1 (en) 1998-09-24 2001-08-28 Sun Microsystems, Inc. Technique for sharing parity over multiple single-error correcting code words
US20020147954A1 (en) 2001-03-22 2002-10-10 Shea John M. Method and coding means for error-correction utilizing concatenated parity and turbo codes

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS522244A (en) 1975-06-24 1977-01-08 Toshiba Corp Measuring system
JPS5362936A (en) 1976-11-17 1978-06-05 Toshiba Corp Memory control device
JPS605022B2 (ja) * 1977-08-29 1985-02-07 株式会社日立製作所 記憶装置のエラー検出装置
JPS54142942A (en) * 1978-04-28 1979-11-07 Hitachi Ltd Address checking system
JPS558617A (en) 1978-06-29 1980-01-22 Fujitsu Ltd Storage system
DE3319710A1 (de) * 1983-05-31 1984-12-06 Siemens AG, 1000 Berlin und 8000 München Speichersteueranordnung, insbesondere fuer ein fehlertolerantes fernsprech-vermittlungssystem
JP2930239B2 (ja) 1989-02-06 1999-08-03 株式会社日立製作所 記憶装置の障害検出方法及び記憶制御装置
JPH0793225A (ja) * 1993-09-27 1995-04-07 Toshiba Corp メモリチェック方式
JP3307529B2 (ja) 1994-12-27 2002-07-24 インターナショナル・ビジネス・マシーンズ・コーポレーション データ処理方法及びデータ記憶装置
US5949358A (en) * 1995-06-07 1999-09-07 Seagate Technology, Inc. Rate n(n+1) code for embedded servo address encoding
DE59701778D1 (de) * 1996-08-30 2000-06-29 Siemens Ag Fehlererkennung in einem speichersystem
EP0936743A1 (fr) * 1998-02-17 1999-08-18 Koninklijke Philips Electronics N.V. Décodage itératif pour codes binaires en bloc
US6691278B1 (en) * 1999-10-13 2004-02-10 Maxtor Corporation Detecting errors in coded bit strings
US6457154B1 (en) * 1999-11-30 2002-09-24 International Business Machines Corporation Detecting address faults in an ECC-protected memory
US6581185B1 (en) * 2000-01-24 2003-06-17 Storage Technology Corporation Apparatus and method for reconstructing data using cross-parity stripes on storage media
WO2002099976A2 (en) * 2001-06-06 2002-12-12 Seagate Technology Llc A method and coding apparatus using low density parity check codes for data storage or data transmission

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR910017284A (ko) * 1990-03-29 1991-11-05 존 지. 웨브 메모리 칩용 패리티 검사 방법 및 장치
JPH0546419A (ja) * 1991-08-15 1993-02-26 Fujitsu Ltd Fifoメモリのエラー検出処理方式
JPH08314812A (ja) * 1995-05-16 1996-11-29 Kawasaki Steel Corp パリティ検査回路
US6282686B1 (en) 1998-09-24 2001-08-28 Sun Microsystems, Inc. Technique for sharing parity over multiple single-error correcting code words
US20020147954A1 (en) 2001-03-22 2002-10-10 Shea John M. Method and coding means for error-correction utilizing concatenated parity and turbo codes

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180060927A (ko) * 2016-11-29 2018-06-07 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 메모리 어드레스 보호 회로 및 방법
KR101952512B1 (ko) * 2016-11-29 2019-02-26 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 메모리 어드레스 보호 회로 및 방법
US11379298B2 (en) 2016-11-29 2022-07-05 Taiwan Semiconductor Manufacturing Company, Ltd. Memory address protection circuit and method
US11714705B2 (en) 2016-11-29 2023-08-01 Taiwan Semiconductor Manufacturing Company, Ltd. Memory address protection circuit and method of operating same

Also Published As

Publication number Publication date
US7555699B2 (en) 2009-06-30
JP2006285318A (ja) 2006-10-19
CN1841334B (zh) 2010-08-18
EP1715424A3 (en) 2008-03-19
EP1715424A2 (en) 2006-10-25
JP4799027B2 (ja) 2011-10-19
CN1841334A (zh) 2006-10-04
US20060236205A1 (en) 2006-10-19
KR20060106558A (ko) 2006-10-12

Similar Documents

Publication Publication Date Title
KR100720911B1 (ko) 기억 제어 회로, 기억 제어 회로에서의 어드레스 에러 체크방법
JP4192154B2 (ja) エラー訂正のためのデータの分割
KR0163566B1 (ko) 에러 정정 방법
US4271519A (en) Address mark generation and decoding method
US6751769B2 (en) (146,130) error correction code utilizing address information
US8069395B2 (en) Three bit error detection using ECC codes
KR19990060758A (ko) 반도체 메모리 장치 및 그 장치의 에러 정정 방법
JPS60142430A (ja) 誤り訂正・検出装置
JP2000004170A (ja) 訂正検査方法及び訂正検査装置
JPS61113166A (ja) デイジタル情報再生装置における時間軸補正装置
KR100566162B1 (ko) 버스트 동작에 의해 데이터 및 패리티 데이터를입출력하는 반도체 기억 장치
US20230368860A1 (en) Memory and operation method of memory
KR20060056305A (ko) 리드-솔로몬 프로덕트 코드를 위한 에러 정정 방법
KR100577988B1 (ko) 오류 검출 능력이 강화된 플래시 메모리 및 다비트 오류검출 방법
KR102007163B1 (ko) 인코더, 디코더 및 이를 포함하는 반도체 장치
CN112133362B (zh) 存储器存储装置及其存储器测试方法
US7620884B2 (en) Memory checking device and method for checking a memory
JPS58111539A (ja) エラ−訂正方法
US7904789B1 (en) Techniques for detecting and correcting errors in a memory device
US20050216816A1 (en) Error correction code generator, generation method of error correction code, error correction device, and error correction method
JP2005011386A (ja) 誤り訂正装置
US11852680B1 (en) Test device and test method thereof
JP3813337B2 (ja) 消失誤り訂正方法とその装置
US6877127B2 (en) Quality control in data transfer and storage apparatus
JP2005216437A (ja) 誤り訂正機能付き半導体記憶装置およびその誤り訂正方法

Legal Events

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

Payment date: 20130502

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140418

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150416

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160419

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170420

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee