KR100717572B1 - 에러 검출 정정 장치의 제어 방법, 에러 검출 정정 장치,정보 처리 시스템, 에러 검출 정정 장치의 제어 프로그램,데이터 처리 장치 - Google Patents

에러 검출 정정 장치의 제어 방법, 에러 검출 정정 장치,정보 처리 시스템, 에러 검출 정정 장치의 제어 프로그램,데이터 처리 장치 Download PDF

Info

Publication number
KR100717572B1
KR100717572B1 KR1020050058650A KR20050058650A KR100717572B1 KR 100717572 B1 KR100717572 B1 KR 100717572B1 KR 1020050058650 A KR1020050058650 A KR 1020050058650A KR 20050058650 A KR20050058650 A KR 20050058650A KR 100717572 B1 KR100717572 B1 KR 100717572B1
Authority
KR
South Korea
Prior art keywords
data
data processing
information exchange
information
error
Prior art date
Application number
KR1020050058650A
Other languages
English (en)
Other versions
KR20060101140A (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 KR20060101140A publication Critical patent/KR20060101140A/ko
Application granted granted Critical
Publication of KR100717572B1 publication Critical patent/KR100717572B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • 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/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • 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/14Error detection or correction of the data by redundancy in operation

Landscapes

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

Abstract

본 발명은 ECC의 에러 체크 단위의 데이터를 복수의 처리 장치로 분담하여 처리하는 에러 검출 정정 기술에 있어서, 데이터의 병합 처리를 필요로 하는 고수준의 데이터 처리를 개개의 처리 장치에서 가능하게 한다.
데이터 통신로에 개재되어 ECC 체크의 데이터 단위를 분담하여 처리하는 복수의 데이터 처리 장치(40)에 있어서, 데이터 처리 장치(40)의 각각에서 생성한 부분 신드롬과 에러 정정 후의 데이터에 관한 재기록 정보를 정보 교환 버스(50)를 통해 교환함으로써, 판독 수정 기록 등의 데이터 병합 처리를 수반하는 고수준의 처리를 개개의 데이터 처리 장치(40)의 내부에서 실행하는 것을 가능하게 하였다.
에러 검출, 에러 정정, ECC, 신드롬, 정보 교환로.

Description

에러 검출 정정 장치의 제어 방법, 에러 검출 정정 장치, 정보 처리 시스템, 에러 검출 정정 장치의 제어 프로그램, 데이터 처리 장치{CONTROL METHOD FOR ERROR DETECTION AND CORRECTION APPARATUS, ERROR DETECTION AND CORRECTION APPARATUS, AND CONTROL PROGRAM FOR ERROR DETECTION AND CORRECTION APPARATUS}
도 1은 본 발명의 일 실시형태인 에러 검출 정정 장치의 작용의 일례를 도시하는 개념도이다.
도 2는 본 발명의 일 실시형태인 에러 검출 정정 장치의 작용의 변형예를 도시하는 개념도이다.
도 3은 본 발명의 일 실시형태인 에러 검출 정정 장치의 일례인 메모리 액세스 제어 장치를 구성하는 데이터 처리 장치의 구성의 일례를 도시하는 블록도이다.
도 4는 본 발명의 일 실시형태인 정보 처리 시스템의 구성의 일례를 도시하는 개념도이다.
도 5는 본 발명의 일 실시형태인 정보 처리 시스템의 구성의 일례를, 보다 구체적으로 도시하는 개념도이다.
도 6은 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치의 동작을 도시하는 개념도이다.
도 7A는 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수 의 데이터 처리 장치 사이의 정보 교환 버스의 구성예를 도시하는 개념도이다.
도 7B는 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치 사이의 정보 교환 버스의 신호 사양예를 도시하는 설명도이다.
도 8은 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치 사이에서 수수(授受)되는 정보 패킷의 식별정보의 설정예를 도시하는 설명도이다.
도 9는 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치 사이에서 수수되는 신드롬 교환 패킷의 포맷예를 도시하는 개념도이다.
도 10은 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치 사이에서 수수되는 재기록 정보 교환 패킷의 포맷예를 도시하는 개념도이다.
도 11은 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치 사이에서 수수되는 동기 체크 패킷의 포맷예를 도시하는 개념도이다.
도 12는 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치 사이에서 수수되는 축퇴 운전시 데이터 패킷의 포맷예를 도시하는 개념도이다.
도 13은 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수 의 데이터 처리 장치에서의 에러 체크 제어의 일람을 도시하는 설명도이다.
도 14는 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치의 메모리 판독 동작의 일례를 도시하는 개념도이다.
도 15는 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치의 메모리 기록 동작의 일례를 도시하는 개념도이다.
도 16은 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치의 부분기록 동작의 일례를 도시하는 개념도이다.
도 17은 본 발명의 일 실시형태인 메모리 액세스 제어 장치를 구성하는 복수의 데이터 처리 장치의 패트롤 동작의 일례를 도시하는 개념도이다.
<도면의 주요부분에 대한 부호의 설명>
10 : 정보 처리 장치
11 : CPU
11a : 시스템 버스
12 : 입출력 제어 장치
13 : 메모리 장치
14 : 메모리 액세스 제어 장치
15 : 상위측 버스
15a : 어드레스 버스
15b : 리플라이 버스
16 : 메모리 버스
17 : 하위측 버스
20 : 버스 스위치
30 : 입출력 기기
40 : 데이터 처리 장치
41 : 메모리 액세스 제어 논리
42 : 기록 버퍼
43 : 판독 버퍼
44 : 정보 교환 버퍼
50 : 정보 교환 버스
51 : 신드롬 교환 패킷
51a : ID부
51b : 예약부
51c : 에러 종별 정보
51d : 신드롬값
52 : 재기록 정보 교환 패킷
52a : ID부
52b : 예약부
52c : 동작 변경 플래그
52d : 재기록 정보
53 : 동기 체크 패킷
53a : ID부
53b : 동기 식별 정보
54 : 축퇴 운전시 데이터 패킷
54a : ID부
54b : 전송 데이터
본 발명은 에러 검출 정정 장치의 제어 방법, 에러 검출 정정 장치, 정보 처리 시스템, 에러 검출 정정 장치의 제어 프로그램, 데이터 처리 장치에 관한 것으로, 특히, 데이터 전송이나 데이터 축적에서의 에러 정정 부호(ECC)를 이용한 데이터 에러의 검출 및 정정 등에 효과적으로 적용할 수 있는 기술에 관한 것이다.
예를 들면, 정보 처리 시스템으로서, 정보 전송로인 버스 또는 정보를 기억하는 메모리에서의 데이터 에러의 검출 및 정정을 ECC를 이용하여 행하는 것이 알려져 있다.
ECC에서의 에러 체크 단위를 하나의 ECC 처리 장치로 처리시키는 경우에는, 에러 체크 단위의 데이터 크기에 맞추어 ECC 처리 장치의 핀수를 늘리거나 데이터 그 자체를 접어 포개어 전송할 필요가 있다.
그러나, 데이터 크기에 맞추어 ECC 처리 장치의 핀수를 늘리는 것은 ECC 처리 장치의 제조 비용의 증대를 초래한다. 또한 데이터의 접어 포갬 전송은 핀 혹은 데이터 전송로의 1비트 고장이 복수 비트 에러가 되어 에러 회복을 할 수 없게 된다는 신뢰성 상의 문제를 일으킨다.
이 때문에, 에러 체크 단위를 복수의 ECC 처리 장치에 분담시키는 것이 생각된다. 그 경우, 에러 체크 단위를 분담하여 처리하는 개개의 ECC 처리 장치에서 부분적인 에러 체크를 행하고, 보다 상위의 처리 장치(상위의 컨트롤러나 CPU)에 의해서 에러 체크 단위의 최종적인 에러 체크 및 정정을 행하는 방식을 채용하는 것이 생각된다. 혹은, 일본 공개특허공보 평4-023048호 또는 일본 공개특허공보 평11-232129호와 같이 에러 체크 단위를 분담하는 복수의 ECC 처리 장치 사이에서 부분 신드롬의 교환을 행하여 에러 체크 단위의 진정한 신드롬을 생성하는 방법이 알려져 있다.
즉, 일본 공개특허공보 평4-023048호의 기술에서는, 외부로부터 입력되는 부호어(codeword)의 일부로부터 부분 신드롬을 생성하여 외부에 출력하는 수단과, 외부로부터 입력되는 부분 신드롬과 내부에서 생성된 부분 신드롬으로부터 부호어의 신드롬을 생성하는 수단과, 생성된 신드롬을 디코드하여 부호어의 일부의 오류 정정을 행하는 수단을 구비한 오류 검출·정정 회로가 개시되어 있다.
또한, 일본 공개특허공보 평11-232129호에는 다(多)비트 데이터를 복수로 분할하여 얻어지는 복수의 블록마다 ECC를 생성하는 경우에 있어서, 복수 블록의 각각을 분담하는 ECC 회로를, 외부 제어 신호만으로 상위 비트 블록과 하위 비트 블록 중 어느 하나에 대응 가능하게 함으로써, 완전히 동일한 구성을 갖는 복수의 ECC 회로가 다비트 데이터의 분담 처리를 할 수 있도록 하는 기술이 개시되어 있 다.
그러나, 상위의 처리 장치가 데이터 처리를 행하도록 하는 경우에는, 에러 체크 단위를 분담하는 개개의 ECC 처리 장치가 고수준의 데이터 처리(예를 들면 데이터의 부분 병합 처리 등과 같은 에러 체크 이후에만 가능한 데이터 처리)를 취급할 수 없게 된다. 마찬가지로, 단순한 부분 신드롬 교환만으로는 상술한 바와 같이 고수준의 데이터 처리를 행할 수 없다는 문제가 있었다.
본 발명의 목적은 ECC의 에러 체크 단위의 데이터를 복수의 처리 장치로 분담하여 처리하는 에러 검출 정정 기술에 있어서, 데이터의 병합 처리를 필요로 고수준의 데이터 처리를 개개의 처리 장치가 할 수 있도록 하는 것에 있다.
본 발명의 다른 목적은 ECC의 에러 체크 단위의 데이터를 복수의 처리 장치로 분담하여 처리하는 에러 검출 정정 기술에 있어서, 검출된 에러의 종별 등에 따른 다양한 에러 검출 정정 처리를 개개의 처리 장치가 할 수 있도록 하는 것에 있다.
본 발명의 다른 목적은 ECC의 에러 체크 단위의 데이터를 복수의 처리 장치로 분담하여 처리하는 에러 검출 정정 기술에 있어서, ECC의 에러 체크 단위의 데이터를 하나의 데이터 처리 장치로 처리하는 경우와 동등한 에러 검출 정정 능력을 실현하는 것에 있다.
본 발명의 제1 관점은, 에러 검출 정정 장치의 제어 방법으로서, 상기 에러 검출 정정 장치는, 데이터 통신로에 개재되어 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와, 복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로를 포함하고, 상기 정보 교환로를 통해 개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬을 교환 함으로써 진정한 신드롬을 생성하며,
개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를, 상기 정보 교환로를 통해 다른 상기 데이터 처리 장치와의 사이에서 교환하는 단계를 포함하는 에러 검출 정정 장치의 제어 방법을 제공한다.
본 발명의 제2 관점은, 데이터 통신로에 개재되어 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와, 복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로를 포함하고, 상기 정보 교환로를 통해 개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬을 교환 함으로써 진정한 신드롬을 생성하는 에러 검출 정정 장치로서,
개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를, 상기 정보 교환로를 통해 다른 상기 데이터 처리 장치와의 사이에서 교환하는 정보 교환 수단을 구비한 에러 검출 정정 장치를 제공한다.
본 발명의 제3 관점은, 기억 장치와, 상기 기억 장치에 액세스하는 액세스 장치와, 상기 기억 장치와 상기 액세스 장치를 접속하는 데이터 전송로와, 상기 데이터 전송로에 개재하는 에러 검출 정정 장치를 포함하는 정보 처리 시스템으로서,
상기 에러 검출 정정 장치는,
데이터 전송로에서의 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와,
복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로와,
개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬 및 개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를 상기 정보 교환로를 통해 복수의 상기 데이터 처리 장치 사이에서 교환하는 정보 교환 수단을 구비하는 것인, 정보 처리 시스템을 제공한다.
본 발명의 제4 관점은, 데이터 통신로에 개재되어 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와, 복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로를 포함하는 에러 검출 정정 장치의 제어 프로그램으로서,
개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬 및 개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를, 상기 정보 교환로를 통해 다른 상기 데이터 처리 장치와의 사이에서 교환하는 프로세스를 개개의 상기 데이터 처리 장치에 실행시키는 에러 검출 정정 장치의 제어 프로그램을 제공한다.
본 발명의 제5 관점은, 데이터 통신로에 개재되는 에러 검출 정정 장치에 포함되고, 에러 정정 부호 단위의 데이터의 송수신을 분담하는 데이터 처리 장치로서,
자신이 분담하는 상기 데이터의 일부에 관한 부분 신드롬 및 자신이 분담한 상기 데이터의 일부에 관한 재기록 정보를 다른 데이터 처리 장치와 교환하는 정보 교환 수단을 구비한 데이터 처리 장치를 제공한다.
상기한 본 발명에 따르면, 에러 체크 단위를 분담하여 처리하는 복수의 데이터 처리 장치를 포함하는 에러 검출 정정 장치에 있어서, 복수의 데이터 처리 장치 사이에서 부분 신드롬에 한정되지 않는 에러 정정 정보를 교환함으로써 개개의 데이터 처리 장치에서의 부분 데이터 병합 처리 등의 고수준의 데이터 처리가 가능해진다.
예를 들면, 메모리 컨트롤러 등의 ECC 보호된 데이터를 취급하는 데이터 처리 장치에 있어서, ECC의 에러 체크 단위의 데이터가 복수의 데이터 처리 장치에 걸쳐 처리되는 경우라도 메모리 액세스에서의 판독 수정 기록(부분 데이터 병합) 등의 고수준의 데이터 처리가 가능해진다.
또한, 부분 신드롬 이외의 에러 정정 정보를 복수의 데이터 처리 장치 사이에서 교환함으로써, 검출된 에러의 종별에 따른 다양한 에러 검출 정정 처리를 행할 수 있다. 또한, 단일의 데이터 처리 장치로 에러 체크 단위를 취급하는 경우와 동등한 에러 검출·정정 능력을 실현할 수 있다.
발명을 실시하기 위한 최선의 형태
이하, 도면을 참조하면서 본 발명의 실시형태에 관해서 상세히 설명한다.
도 1은, 본 발명의 일 실시형태인 에러 검출 정정 장치의 작용의 일례를 도시하는 개념도이고, 도 2는, 본 발명의 일 실시형태인 에러 검출 정정 장치의 작용의 변형예를 도시하는 개념도이다.
도 3은, 본 발명의 일 실시형태인 에러 검출 정정 장치의 일례인 메모리 액세스 제어 장치를 구성하는 데이터 처리 장치의 구성의 일례를 도시하는 블록도이다. 도 4는, 본 발명의 일 실시형태인 정보 처리 시스템의 구성의 일례를 도시하는 개념도이다.
우선, 도 4를 참조하여 본 실시형태의 정보 처리 시스템의 구성에 관해서 설명한다. 본 실시형태의 정보 처리 시스템은 복수의 정보 처리 장치(10)와, 버스 스위치(20)(GDX)와, 1개 또는 복수의 입출력 기기(30)(FLI)를 포함하고 있다.
버스 스위치(20)는 이들의 정보 처리 장치(10) 및 입출력 기기(30) 사이에서의 정보 전송 경로의 접속의 전환을 행한다.
개개의 정보 처리 장치(10)는 CPU(11), 시스템 버스(11a), 입출력 제어 장치(12)(FLN), 메모리 장치(13)(DIMM), 메모리 액세스 제어 장치(14)(에러 검출 정정 장치), 상위측 버스(15), 메모리 버스(16), 하위측 버스(17)를 포함하고 있다.
CPU(11)는 메모리 장치(13)에 저장된 프로그램이나 데이터에 액세스함으로써 정보 처리를 행한다.
입출력 제어 장치(12)는 CPU(11)와, 메모리 장치(13), 다른 정보 처리 장치(10) 및 입출력 기기(30) 등과의 사이에서의 정보의 교환을 제어한다.
메모리 장치(13)에는 CPU(11)가 실행하는 프로그램이나 데이터가 저장된다. 본 실시형태의 경우, 메모리 액세스 제어 장치(14)는 에러 검출 정정 장치로서 기능한다. 즉, 메모리 액세스 제어 장치(14)는 메모리 버스(16), 상위측 버스(15), 하위측 버스(17)를 통해 메모리 장치(13)에 대하여 판독/기록되는 데이터의 ECC를 이용한 에러 검출 정정을 행한다.
즉, 상위측 버스(15), 메모리 버스(16), 하위측 버스(17)를 통해 전송되는 데이터는 후술과 같이 ECC에 의해서 보호되고 있다.
이 메모리 액세스 제어 장치(14)는 각각이 도 3에 예시되는 것과 같은 구성을 구비한 복수의 데이터 처리 장치(40)로 구성되어 있다.
즉, 개개의 데이터 처리 장치(40)는 메모리 액세스 제어 논리(41), 기록 버퍼(42), 판독 버퍼(43), 정보 교환 버퍼(44)를 포함하고 있다. 이들의 복수의 데이터 처리 장치(40)는, 정보 교환 버스(50)(정보교환로)를 통해 서로 접속되어 있다.
기록 버퍼(42)에는 CPU(11), 다른 정보 처리 장치(10), 입출력 기기(30) 등으로부터 메모리 장치(13)에 기록되는 기록 데이터가 일시적으로 저장된다.
판독 버퍼(43)에는 메모리 장치(13)로부터 독출된 판독 데이터가 저장된다.
메모리 액세스 제어 논리(41)는 이하와 같은 기능을 실현하기 위한 제어 논리(제어 프로그램)를 소프트웨어, 펌웨어, 혹은 하드웨어로서 구비하고 있다.
즉, 메모리 액세스 제어 논리(41)는 정보 교환 버스(50)를 통해 다른 데이터 처리 장치(40)와 각종의 정보를 교환함으로써, 상위측 버스(15)나 하위측 버스(17)의 데이터폭의 판독/기록 데이터 ECC 처리를 다른 데이터 처리 장치(40)와 분담하여 처리하는 기능을 구비하고 있다.
메모리 액세스 제어 논리(41)는 자신의 재기록 정보를 정보 교환 버스(50)를 사용하여 다른 데이터 처리 장치(40)와 서로 교환함으로써, 상위측 버스(15), 메모리 버스(16), 하위측 버스(17)에서의 ECC의 에러 체크 단위의 데이터에 대한 부분 재기록 시에도 체크 비트의 변환과 에러 체크/정정을 가능하게 하는 기능을 구비하고 있다.
메모리 액세스 제어 논리(41)는 ECC의 에러 체크 단위의 데이터에 대한 부분 재기록 정보의 패턴에 따라서 정보 교환 버스(50)를 사용하는 케이스와 사용하지 않는 케이스에서 동작을 선택하는 기능을 구비하고 있다.
메모리 액세스 제어 논리(41)는 에러 정정시에서의 부분 재기록 정보가 아니라, 부분 재기록 후의 데이터에 대해서 다른 데이터 처리 장치(40)가 분담하는 데이터를 모두 0이라고 간주한 체크 비트를 대체(갱신)를 행하고, 정보 교환 버스(50)를 사용하여 원래의 데이터 처리 장치(40)와 교환하는 기능을 구비하고 있다.
메모리 액세스 제어 논리(41)는, 정보 교환 버스(50)를 사용하여, 자신이 검출한 특정한 에러 패턴의 검출 정보를 다른 데이터 처리 장치(40)와 교환하여, 에러 정정 동작을 변경하는 기능을 구비하고 있다.
메모리 액세스 제어 논리(41)는 부분 신드롬에 동기 확인 신호를 부가함과 동시에, 정보 교환 버스(50) 자체에 ECC 보호를 부가하고, 그 정보 교환 버스(50)를 사용하여 다른 데이터 처리 장치(40)와 교환하며, 부분 신드롬의 사용 타이밍에 오류가 없는지를 자신과 다른 데이터 처리 장치(40)에서 검출함으로써, 잘못된 부분 신드롬의 사용에 의한 오정정을 방지하는 기능을 구비하고 있다.
메모리 액세스 제어 논리(41)는 정보 교환 버스(50)를 사용하여 다른 데이터 처리 장치(40)와 교환되는 부분 신드롬의 데이터 길이를 가변적으로 제어하는 기능을 구비하고 있다.
메모리 액세스 제어 논리(41)는 정보 교환 버스(50)를 사용한 부분 신드롬의 교환에 의해서 정정한 데이터를 입출력 제어 장치(12) 등에 송출할 뿐만 아니라, 정정 동작을 행하지 않고 데이터만을 먼저 송출한 다음 검출한 에러를 통지하는 기능을 구비하고 있다.
메모리 액세스 제어 장치(14)를 구성하는 데이터 처리 장치(40)에 관해서 더욱 구체적으로 예시한다. 우선, 복수의 데이터 처리 장치(40)(LDX) 사이에서의 정보 교환 버스(50)를 이용한 부분 신드롬의 교환에 관해서 설명한다.
예를 들면, CPU(11)에서의 128바이트의 캐쉬 라인의 전송 레이턴시를 최소로 하기 위해서 128바이트 데이터를 4개의 LDX/DIMM으로 분할하고, FLN-LDX간/FLN-GDX간의 상위측 버스(15)/하위측 버스(17)를 최대한 이용한다. 이 때문에, 16바이트 ECC가 2개의 LDX에 걸치기 때문에 기본적으로는 에러 체크를 행하지 않고 S4 EC-D4ED(Single 4bit block Error Correction Double 4bit block Error Detection) 코드인 채로 LDX로부터 다른 FLN, FLI 등의 디바이스로 데이터를 전송한다.
도 5에 32 SMP 기본 구성으로 메모리 ECC(16바이트의 S4EC-D4ED)에서 보호 대상이 되는 버스를 도시한다.
ECC의 생성 및 체크&정정은 기본적으로 FLN(입출력 제어 장치(12))/FLI(입출력 기기(30))에서 행하지만, 에러 위치의 식별과 DIMM(메모리 장치(13))의 패트롤(후슬) 및 판독 수정 기록 등의 부분기록 시의 데이터 이동을 LDX 내에서 모두 완결시킬 목적으로 LDX에서도 체크&정정을 행한다. 이 때문에, 신드롬 교환을 위한 버스로서 정보 교환 버스(50)를 인접하는 LDX 사이에 설치한다. 후술과 같이, 이 정 보 교환 버스(50)는 예를 들면, 데이터 전송 방향이 서로 반대인, 버스#0 및 버스#1의 2개의 버스로 이루어진다.
메모리 액세스 제어 장치(14)를 구성하는 개개의 데이터 처리 장치(40)(LDX)에서의 메모리 액세스 제어 논리(41)에 의한 에러 제어에 관해서 설명한다.
복수의 LDX로 구성되는 메모리 액세스 제어 장치(14)는 메모리 장치(13)로의 액세스에 있어서, 메모리 판독, 메모리 기록, 부분기록(판독 수정 기록), 패트롤(정기적인 동작 감시 처리)의 각 동작을 행한다.
전술의 각 동작시에서의 LDX의 에러 제어를 이하에 도시한다. 개요는 이하와 같다.
(1) 에러 위치의 식별을 위해 LDX에서도 ECC 체크를 행한다. 이 때문에, ECC 체크 단위에 걸쳐있는 LDX들간에 신드롬 교환을 행한다.
(2) 판독시에는, 메모리 레이턴시에 중점을 두어, ECC 체크는 지연된 체크로 한다. 즉, 메모리 장치(13)로부터 독출된 데이터를 FLN/FLI에 송출한 후에 ECC 체크를 실행하고, 에러가 검출되면, 나중에 FLN/FLI에게 에러 보고를 행한다.
부분 신드롬 교환을 수반하는 ECC 체크에서는 신드롬의 교환은 정보 교환 버스(50)를 이용하여 행한다. 이 정보 교환 버스(50)는 축퇴 운전시 데이터 전송 버스로서도 이용된다. 정보 교환 버스(50)에서의 전송 프로토콜에 관해서는 후술한다.
도 6에 도시된 바와 같이 ECC 에러 체크 단위의 데이터폭(예를 들면 16바이트)을 분담하는 복수의 데이터 처리 장치(40)(LDX#0/#1)는, 자신이 검출한 부분 신 드롬을 정보 교환 버스(50)를 통해 상대측에 송신한다. 즉, 상대측의 LDX가 분담하는 8바이트의 데이터는 모두 "0"으로 신드롬을 생성하여 상대측으로 보낸다. 데이터에 에러가 없는 경우, LDX들간 서로 교환하는 신드롬의 값은 동일하다.
LDX 내의 ECC 체크에 있어서 에러를 검출한 경우, LDX의 메모리 액세스 제어 논리(41)는 리플라이 버스(15b)를 통하여 상위의 FLN에 대하여 에러의 보고를 행한다.
이 에러 보고는 4개의 메모리 동작(메모리 판독, 메모리 기록, 부분기록, 패트롤)의 각각마다 3타입(SBE : 싱글 블록 에러(정정 가능), DBE : 더블 블록에러(정정 불능), 부정 데이터(Poisoned Data)검출)의 에러로 나누어 나타낸다.
통상, 에러의 보고는 ECC 체크 단위에 걸쳐있는 LDX의 쌍(도 5의 예에서는, LDX#0/#1 또는 LDX#2/#3)으로부터는 동일한 내용이 보고된다. 단, 축퇴 운전시의 메모리 기록 시 등, 한 쪽 LDX만으로부터의 보고도 있을 수 있다.
에러의 보고는 ECC 체크 단위에 걸쳐있는 LDX의 쌍 또는 LDX 단독으로 행해지기 때문에, 전체 LDX의 동기 동작을 방해하지 않는 사이클로 처리한다. 즉, 동일하게 리플라이 버스(15b)를 사용하는 메모리 기록 완료 통지가 항상 우선된다. 후술하는 스크럽 기록(Scrub Write) 요구에서도 마찬가지이다. 스크럽 기록(Scrub Write) 시의 ECC 체크의 에러 보고는 하지 않는다.
도 7A는, 본 실시형태에서의 정보 교환 버스(50)의 구성의 일례를 도시하는 개념도이다. 정보 교환 버스(50)는 Bus#0 및 Bus#1로 이루어진다. Bus#0 및 Bus#1의 각각은, 도 7B에 예시되는 비트폭(핀수)의 각 신호로 구성되어 있다.
이와 같이, 정보 교환 버스(50)를 구성하는 Bus#0 및 Bus#1 중 어느 하나에서도 전송 데이터는 21비트 데이터 ECC(SEC-DED)에 의해 보호된다.
그리고, 본 실시형태에서는 이 정보 교환 버스(50)를 이용하여 (1) DIMM의 판독, 패트롤 및 기록, 부분기록 시의 16바이트의 ECC 체크의 신드롬 교환 및 재기록 정보의 교환, (2) LDX#0과 #1 및 LDX#2와 #3의 동기 체크, (3)축퇴 운전시의 데이터 전송이 행해진다.
도 8은, 정보 교환 버스(50)를 통해 LDX 사이에서 교환되는 정보 패킷의 식별 정보의 설정예를 도시하는 설명도이다. 도 9, 도 10, 도 11, 도 12는 각종 패킷의 포맷예를 도시하는 개념도이다.
도 9는, 신드롬 교환을 위한 신드롬 교환 패킷(51)의 구성예를 도시하고 있다. 신드롬 교환 패킷(51)은 ID부(51a), 예약부(51b), 에러 종별 정보(51c) 및 신드롬값(51d)으로 이루어진다. ID부(51a)에는 도 8의「신드롬 교환」에 대응한 "100"이 설정된다. 에러 종별 정보(51c)에는 부정 데이터인지의 여부를 나타내는 정보 비트가 셋트된다.
한편, 이 에러 종별 정보(51c)가 셋트된 경우, 신드롬값(51d)에는 신드롬값을 대신하여 에러 종별을 도시하는 정보를 저장하고, 대응하는 LDX들간에 서로 교환되고, 개개의 LDX에서의 에러 정정 동작을 전환할 수도 있다.
도 10은, 재기록 정보 교환을 위한 재기록 정보 교환 패킷(52)의 구성예를 도시하고 있다. 재기록 정보 교환 패킷(52)은 ID부(52a), 예약부(52b), 동작 변경 플래그(52c) 및 재기록 정보(52d)로 이루어진다.
ID부(52a)에는 도 8의「재기록 정보 교환」에 대응한 "101"이 설정된다. 재기록 정보(52d)에는 그 재기록 정보 교환 패킷(52)의 송신원의 LDX에서 얻어진, 에러 정정 후의 데이터가 저장된다. 동작 변경 플래그(52c)에는 특정 에러 패턴을 검출한 것을 LDX들끼리 서로 통지하여 그 특정 에러 패턴을 검출한 경우의 동작을 변경하기 위해서 이용한다.
도 11은, 동기 체크용의 동기 체크 패킷(53)의 구성예를 도시하고 있다. 동기 체크 패킷(53)은 ID부(53a) 및 동기 식별 정보(53b)로 이루어진다.
ID부(53a)에는 도 8의「동기 체크」에 대응한 "001"이 설정된다. 동기 식별 정보(53b)에는 LDX 사이의 동기 제어용 Sync-ID가 설정된다.
동기 체크는 모든 LDX의 동기를 체크하는 것은 아니고, ECC 데이터 단위를 상호로 분담하는 LDX#0과 #1, 및 LDX#2와 #3의 쌍 사이에서의 동기를 제어한다.
도 12는, 축퇴 운전시 데이터 패킷(54)의 구성예를 도시하고 있다. 축퇴 운전시 데이터 패킷(54)은 ID부(54a), 전송 데이터(54b)로 이루어진다. ID부(54a)에는 도 8에서의「축퇴 운전 데이터 전송」에 대응하는 "111"이 설정된다. 전송 데이터(54b)에는 축퇴 운전시의 전송 데이터가 저장된다.
도 13은, 개개의 LDX에서의 에러 체크 제어의 일람을 도시하는 설명도이다. 판독(read), 기록(write), 부분기록(P-write), 패트롤(Patrol)의 각 동작에 있어서의 에러 체크 동작이 표시되고 있다.
이하, 도 1, 도 2 및 도 14, 도 15, 도 16, 도 17을 참조하여 본 실시형태의 정보 처리 장치(10), 메모리 액세스 제어 장치(14) 및 정보 처리 시스템의 작용의 일례에 관해서 설명한다.
도 14는, 통상 가동 시에서의 메모리 장치(13)(DIMM)로부터의 판독 동작을 도시하고 있다. 개개의 LDX에서 메모리 액세스 제어 논리(41)는 메모리 장치(13)로부터 독출한 데이터를 입출력 제어 장치(12)에 전송함과 동시에, 정보 교환 버스(50)를 통해 부분 신드롬값을 교환함으로써 독출한 데이터에 대하여 분담하여 ECC 체크를 실행한다. 이때, 입출력 제어 장치(12)로의 데이터 전송을 우선하여 독출한 데이터에 에러가 검출된 경우에는, 나중에 입출력 제어 장치(12)에게 리플라이 버스(15b)를 사용하여 에러 보고를 행한다. 메모리 장치(13)로부터 입출력 기기(30)로의 데이터 판독도 마찬가지이다.
또한, 메모리 장치(13)로부터의 판독 데이터에 관한 ECC 체크에서 에러가 검출된 경우에는 메모리 액세스 제어 논리(41)는 리플라이 버스(15b)를 통하여 입출력 제어 장치(12)에 대해서 스크럽 기록 요구를 행하고, 입출력 제어 장치(12)로부터 어드레스 버스(15a)를 통하여 지시된 어드레스의 기억 영역에 대해서 메모리 장치(13) 내의 기억 데이터를 부분적으로 수복하는 스크럽 기록(Scrub Write)를 실행한다.
도 15는, 메모리 장치(13)에 대한 기록 동작에서의 LDX의 동작을 도시하고 있다.
입출력 제어 장치(12)로부터 상위측 버스(15)를 통해 도래하는 기록 데이터를 복수의 LDX에서 분담하여 ECC 체크 및 정정을 실행하고, 개개의 LDX의 내부의 메모리 액세스 제어 논리(41)는 에러가 검출된 경우에는 정정하여 메모리 장치(13) 에 기록함과 동시에, 리플라이 버스(15b)를 통하여 입출력 제어 장치(12)에 에러 보고를 행한다. 입출력 기기(30)로부터 메모리 장치(13)로의 데이터의 기록 처리도 마찬가지이다.
도 16은, 메모리 장치(13)에 대한 부분기록(판독 수정 기록)에서의 LDX의 동작을 도시하고 있다.
각 LDX는 FLN 또는 GDX로부터 기록 데이터를 수취한 후, 신드롬을 교환하여 ECC 체크 및 정정을 행하고, 에러가 검출된 경우에는 리플라이 버스(15b)를 통해 FLN에 에러를 보고한다.
한편, DIMM으로부터 독출한 판독 데이터에 관해서도 신드롬을 서로 교환하여 ECC 체크 및 정정을 행하고 에러가 검출된 경우에는 리플라이 버스(15b)를 통해 FLN으로 에러를 보고한다.
또한, 기록 데이터 및 판독 데이터에 관한 정정 결과는 정보 교환 버스(50)를 통해 재기록 정보로서 서로 교환한다.
DIMM으로의 데이터의 기록은 ECC 체크 및 정정이 이루어진 기록 데이터 및 DIMM으로부터 독출한 데이터를 ECC 체크 비트를 포함해서 병합하고 DIMM에 기록한다. ECC 체크의 결과, DBE(더블 블록 에러) 또는 부정 데이터(Poisoned Data)가 검출된 경우에는 부정 데이터를 DIMM에 기록한다.
이와 같이, 판독 수정 기록으로서, 본 실시형태에서는 ECC 체크 및 정정을 분담하는 두 개의 LDX 사이에서, 판독 데이터 및 기록 데이터에 관한 두 개의 부분 신드롬 외에, 판독 데이터의 수정 결과 및 기록 데이터의 수정 결과를 반영한 자신 의 재기록 정보를 정보 교환 버스(50)를 통해 교환한다. 이 재기록 정보의 교환에는 전술한 재기록 정보 교환 패킷(52)을 이용한다.
도 17은, 패트롤에서의 LDX의 동작을 도시하고 있다. DIMM으로부터 데이터를 독출한 후, 각 LDX는 정보 교환 버스(50)를 통해 신드롬을 서로 교환하여 ECC 체크를 행하며, 에러가 검출된 경우에는 리플라이 버스(15b)를 통해 FLN에 에러를 보고한다.
ECC 체크의 결과, 에러가 검출된 경우에는 리플라이 버스(15b)를 통해 FLN에 스크럽 기록을 요구하고 DIMM의 에러 정정을 행한다.
도 1을 참조하여, 전술의 판독 수정 기록의 동작을 보다 상세히 설명한다.
우선, ECC 체크를 분담하는 두 개의 데이터 처리 장치(40)(예를 들면, LDX#0, #1)가 데이터 통신로(상위측 버스(15) 또는 하위측 버스(17)로부터 동시에 기록 데이터를 수신한다.
동일 타이밍에서 LDX(#0)가 수신하는 데이터(A0∼A3)와, LDX(#1)가 수신하는 데이터(B0∼B3)가 하나의 ECC 단위를 구성한다. LDX(#0)과 (#1)은 부분 신드롬(SD-A0, SD-B0)을 서로 보내고 진정한 신드롬(SD-AB0)을 생성하여 에러 정정 동작을 행한다. 또한 마찬가지로 판독 데이터에 대해서도 동일한 동작을 행하여 에러 정정 동작을 한다. 기록 동작과 판독 동작의 순서는 어느 것이 우선이어도 된다.
그 후, 데이터의 재기록 정보(에러 정정 동작으로 변화된 부분)를 LDX(#0)과 (#1)로 서로 보내고 데이터의 병합 동작 및 체크 비트의 재구축을 행한다.
또한, 본 실시형태의 경우에는 전술의 재기록 정보 교환 패킷(52)의 동작 변 경 플래그(52c)를 이용함으로써 특정한 에러 패턴의 검출시에 개개의 LDX에서 ECC 에러 검출 시의 동작을 변경할 수 있다. 이것을 도 2를 참조하여 설명한다. 이 도 2에서는 LDX(#0)과 (#1)의 쌍에 관해서 설명한다.
LDX(#0)과 (#1)은 정보 교환 버스(50)를 통해 신드롬을 서로 교환하지만, 도 2의 예에서는 특정 에러 패턴의 검출을 행한 경우에는 정보 교환 버스(50)를 사용하여 재기록 정보 교환 패킷(52)의 동작 변경 플래그(52c)에서 그 특정 에러 패턴의 검출 정보를 LDX들끼리 교환함으로써 에러 정정 동작을 억지하는 경우를 예시하고 있다. 이 경우, 재기록 정보(52d)에는 에러가 된 특정한 데이터 패턴이 저장된다.
LDX에서의, 이러한 제어 동작은 에러 마킹, 즉 에러를 검출 혹은 에러를 매립한 장치가 특정한 데이터 패턴으로 또한 ECC 에러가 되는 데이터를 교환함으로써 에러 발생 위치의 식별, 또는 프로그램의 흐름을 제어하는 방식을 채용한 정보 처리 시스템에 있어서 유용하다.
또한, LDX들끼리 잘못된 신드롬을 교환하여 옳은 데이터를 오정정하는 것을 방지하기 위해서 동기 체크 패킷(53)을 이용하여 동기 신호를 임의의 타이밍으로 신드롬 데이터에 부가하여 에러 체크를 행할 수 있도록 하고 있다.
이상 설명한 바와 같이, 본 실시형태에서는 메모리 액세스 제어 장치(14)를 구성하는 복수의 데이터 처리 장치(40) 내에서 신드롬의 교환 외에, 에러 정정 후의 데이터인 재기록 정보를 교환하여 에러 체크를 행하기 때문에, 예를 들면, 데이터의 병합 처리를 수반하는 판독 수정 기록(부분기록) 등의 고수준의 처리 기능을 개개의 데이터 처리 장치(40) 내에서 행하게 할 수 있다.
또한, 복수의 데이터 처리 장치(40)로써 ECC 체크 단위의 데이터를 분담하여 ECC 체크를 함으로써 ECC 체크 단위의 데이터를 접어 포개지 않고 처리하기 때문에 핀 고장에서도 1비트 에러밖에 발생하지 않고 에러에 강한 통신을 할 수 있다.
ECC 체크 단위의 데이터를 복수의 데이터 처리 장치(40)로 분담하여 처리하기 때문에 데이터 처리 장치(40)에서의 입출력 신호의 핀수를 억제할 수 있고, 데이터 처리 장치(40)를 포함하는 메모리 액세스 제어 장치(14)의 제조 비용의 저감이 가능하게 된다.
데이터 처리 장치(40) 사이에서는 신드롬 및 필요 최저한의 정보만 교환하기때문에 데이터 처리 장치(40) 사이의 버스폭을 작게 할 수 있다.
이 결과, 예를 들면, 복수의 데이터 처리 장치(40)로 구성되는 메모리 액세스 제어 장치(14) 등과 같이, ECC에서 보호된 데이터를 취급하는 장치에 있어서, ECC 체크의 단위가 복수의 데이터 처리 장치(40)에 걸치고 있는 경우라도, 단일의 데이터 처리 장치로 처리하는 경우와 비교하여 에러 검출/정정 능력이 동등한 ECC 체크를 실현할 수 있다.
특히, 판독 수정 기록(부분 데이터 병합) 등의 고수준의 데이터 처리에서도 단일한 데이터 처리 장치로써 처리하는 경우와 동등한 에러 검출/정정 능력을 실현할 수 있다.
한편, 본 발명은 전술한 실시형태에 예시한 구성에 한하지 않고, 그 취지를 일탈하지 않는 범위에서 여러가지 변경 가능한 것은 물론이다.
(부기 1)
데이터 통신로에 개재되어 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와, 복수의 상기 데이터 처리 장치 사이에 설치된 정보교환로를 포함하고, 상기 정보 교환로를 통해 개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬을 교환함으로써 진정한 신드롬을 생성하는 에러 검출 정정 장치의 제어 방법으로서,
개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를, 상기 정보 교환로를 통해 다른 상기 데이터 처리 장치와의 사이에서 교환하는 것을 특징으로 하는 에러 검출 정정 장치의 제어 방법.
(부기 2)
부기 1 기재의 에러 검출 정정 장치의 제어 방법에 있어서,
상기 재기록 정보의 패턴의 종별에 따라서 상기 정보 교환로를 통한 상기 재기록 정보의 교환의 유무를 제어하는 것을 특징으로 하는 에러 검출 정정 장치의 제어 방법.
(부기 3)
부기 1 기재의 에러 검출 정정 장치의 제어 방법에 있어서,
개개의 상기 데이터 처리 장치에서는 그 데이터 처리 장치가 분담한 상기 데이터의 일부에 대하여 부분 재기록 처리를 실행한 후, 그 데이터의 다른 상기 데이터 처리 장치가 분담하는 부분을 모두 O으로 간주하여 체크 비트의 갱신을 실행하고,
갱신 후의 그 체크 비트를 상기 정보 교환로를 통해 다른 상기 데이터 처리 장치와 교환하는 것을 특징으로 하는 에러 검출 정정 장치의 제어 방법.
(부기 4)
부기 1 기재의 에러 검출 정정 장치의 제어 방법에 있어서,
개개의 상기 데이터 처리 장치에서 검출된 특정한 에러 패턴을 상기 정보 교환로를 통해 교환하는 것을 특징으로 하는 에러 검출 정정 장치의 제어 방법.
(부기 5)
부기 1 기재의 에러 검출 정정 장치의 제어 방법에 있어서,
상기 정보 교환로에 에러 정정 부호를 부가하여 그 정보 교환로를 전송하는 정보를 보호함과 동시에, 상기 부분 신드롬에 동기 확인 신호를 부가하고 상기 부분 신드롬의 사용 타이밍의 오류를 억지하는 것을 특징으로 하는 에러 검출 정정 장치의 제어 방법.
(부기 6)
부기 1 기재의 에러 검출 정정 장치의 제어 방법에 있어서,
상기 부분 신드롬의 데이터 길이를 가변으로 제어하는 것을 특징으로 하는 에러 검출 정정 장치의 제어 방법.
(부기 7)
부기 1 기재의 에러 검출 정정 장치의 제어 방법에 있어서,
개개의 상기 데이터 처리 장치는 상기 데이터에 대하여, 상기 부분 신드롬의 교환에 의한 에러 정정을 실행하지 않고, 그 데이터를 그대로 전송처 장치에 송출 하며, 그 데이터에 관한 에러 검출 정보를 후 추종으로 상기 전송처 장치에 통지하는 것을 특징으로 하는 에러 검출 정정 장치의 제어 방법.
(부기 8)
데이터 통신로에 개재되어 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와, 복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로를 포함하고, 상기 정보 교환로를 통해 개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬을 교환함으로써 진정한 신드롬을 생성하는 에러 검출 정정 장치로서,
개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를 상기 정보 교환로를 통해 다른 상기 데이터 처리 장치와의 사이에서 교환하는 정보 교환 수단을 구비한 것을 특징으로 하는 에러 검출 정정 장치.
(부기 9)
부기 8 기재의 에러 검출 정정 장치에 있어서, 상기 정보 교환 수단은 상기 재기록 정보의 패턴의 종별에 따라서 상기 정보 교환로를 통한 상기 재기록 정보의 교환의 유무를 제어하는 것을 특징으로 하는 에러 검출 정정 장치.
(부기 10)
부기 8 기재의 에러 검출 정정 장치에 있어서,
개개의 상기 데이터 처리 장치에서는 그 데이터 처리 장치가 분담한 상기 데이터의 일부에 대하여 부분 재기록 처리를 실행한 후, 그 데이터의 다른 상기 데이터 처리 장치가 분담하는 부분을 모두 0으로 간주하여 체크 비트의 갱신을 실행하 고,
상기 정보 교환 수단은 갱신 후의 그 체크 비트를 상기 정보 교환로를 통해 다른 상기 데이터 처리 장치와 교환하는 것을 특징으로 하는 에러 검출 정정 장치.
(부기 11)
부기 8 기재의 에러 검출 정정 장치에 있어서,
상기 정보 교환 수단은 개개의 상기 데이터 처리 장치에서 검출된 특정한 에러 패턴을 상기 정보 교환로를 통해 교환하는 것을 특징으로 하는 에러 검출 정정 장치.
(부기 12)
부기 8 기재의 에러 검출 정정 장치에 있어서,
상기 정보 교환 수단은 상기 정보 교환로에 에러 정정 부호를 부가하여 그 정보 교환로를 전송히는 정보를 보호함과 동시에, 상기 부분 신드롬에 동기 확인 신호를 부가하고, 상기 부분 신드롬의 사용 타이밍의 오류를 억지하는 것을 특징으로 하는 에러 검출 정정 장치.
(부기 13)
부기 8 기재의 에러 검출 정정 장치에 있어서,
상기 정보 교환 수단은 상기 부분 신드롬의 데이터 길이를 가변으로 제어하는 것을 특징으로 하는 에러 검출 정정 장치.
(부기 14)
부기 8 기재의 에러 검출 정정 장치에 있어서,
개개의 상기 데이터 처리 장치는 상기 데이터에 대해서, 상기 부분 신드롬의 교환에 의한 에러 정정을 실행하지 않고, 그 데이터를 그대로 전송처 장치에 송출하며, 그 데이터에 관한 에러 검출 정보를 후 추종으로 상기 전송처 장치에 통지하는 기능을 구비한 것을 특징으로 하는 에러 검출 정정 장치.
(부기 15)
기억 장치와, 상기 기억 장치에 액세스하는 액세스 장치와, 상기 기억 장치와 상기 액세스 장치를 접속하는 데이터 전송로와, 상기 데이터 전송로에 개재하는 에러 검출 정정 장치를 포함하는 정보 처리 시스템으로서,
상기 에러 검출 정정 장치는,
데이터 전송로에서의 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와,
복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로와,
개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬 및 개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를, 상기 정보 교환로를 통해 복수의 상기 데이터 처리 장치 사이에서 교환하는 정보 교환 수단을 구비한 것을 특징으로 하는 정보 처리 시스템.
(부기 16)
부기 15 기재의 정보 처리 시스템에 있어서,
상기 정보 교환 수단은, 또한
상기 재기록 정보의 패턴의 종별에 따라서 상기 정보 교환로를 통한 상기 재 기록 정보의 교환의 유무를 제어하는 기능,
개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 대하여 부분재기록 처리를 실행한 후, 그 데이터의 다른 상기 데이터 처리 장치가 분담하는 부분을 모두 0으로 간주하여 체크 비트의 갱신을 실행하고, 갱신 후의 그 체크 비트를 상기 정보 교환로를 통해 다른 상기 데이터 처리 장치와 교환하는 기능,
개개의 상기 데이터 처리 장치에서 검출된 특정한 에러 패턴을 상기 정보 교환로를 통해 교환하는 기능,
상기 정보 교환로에 에러 정정 부호를 부가하여 그 정보 교환로를 전송하는 정보를 보호함과 동시에, 상기 부분 신드롬에 동기 확인 신호를 부가하고, 상기 부분 신드롬의 사용 타이밍의 오류를 억지하는 기능의 적어도 하나의 기능을 구비한 것을 특징으로 하는 정보 처리 시스템.
(부기 17)
데이터 통신로에 개재되어 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와, 복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로를 포함하는 에러 검출 정정 장치의 제어 프로그램으로서,
개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬 및 개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를 상기 정보 교환로를 통해 다른 상기 데이터 처리 장치와의 사이에서 교환하는 공정을 개개의 상기 데이터 처리 장치에 실행시키는 것을 특징으로 하는 에러 검출 정정 장치의 제어 프로그램.
(부기 18)
부기 17 기재의 에러 검출 정정 장치의 제어 프로그램에 있어서,
상기 재기록 정보의 패턴의 종별에 따라서, 상기 정보 교환로를 통한 상기 재기록 정보의 교환의 유무를 제어하는 기능,
개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 대하여 부분재기록 처리를 실행한 후, 그 데이터의 다른 상기 데이터 처리 장치가 분담하는 부분을 모두 0으로 간주하여 체크 비트의 갱신을 실행하고, 갱신 후의 그 체크 비트를 상기 정보 교환로를 통해 다른 상기 데이터 처리 장치와 교환하는 기능,
개개의 상기 데이터 처리 장치에서 검출된 특정한 에러 패턴을 상기 정보 교환로를 통하여 교환하는 기능,
상기 정보 교환로에 에러 정정 부호를 부가하여 그 정보 교환로를 전송하는 정보를 보호함과 동시에, 상기 부분 신드롬에 동기 확인 신호를 부가하고, 상기부분 신드롬의 사용 타이밍의 오류를 억지하는 기능의 적어도 하나의 기능을, 추가로 상기 데이터 처리 장치에 실현시키는 것을 특징으로 하는 에러 검출 정정 장치의 제어 프로그램.
(부기 19)
데이터 통신로에 개재하는 에러 검출 정정 장치에 포함되고, 에러 정정 부호 단위의 데이터의 송수신을 분담하는 데이터 처리 장치로서,
자신이 분담하는 상기 데이터의 일부에 관한 부분 신드롬 및 자신이 분담한 상기 데이터의 일부에 관한 재기록 정보를 다른 데이터 처리 장치와의 사이에서 교 환하는 정보 교환 수단을 구비한 것을 특징으로 하는 데이터 처리 장치.
본 발명에 따르면, ECC의 에러 체크 단위의 데이터를 복수의 처리 장치로 분담하여 처리하는 에러 검출 정정 기술에 있어서, 개개의 처리 장치에서 데이터의 병합 처리를 필요로 하는 고수준의 데이터 처리를 행할 수 있다.
또한, ECC의 에러 체크 단위의 데이터를 복수의 처리 장치로 분담하여 처리하는 에러 검출 정정 기술에 있어서, 개개의 처리 장치에서 검출된 에러의 종별에 따른 다양한 에러 검출 정정 처리를 할 수 있다.
또한, ECC의 에러 체크 단위의 데이터를 복수의 처리 장치로 분담하여 처리하는 에러 검출 정정 기술에 있어서, ECC의 에러 체크 단위의 데이터를 하나의 데이터 처리 장치로 처리하는 경우와 동등한 에러 검출 정정 능력을 실현할 수 있다.

Claims (10)

  1. 데이터 통신로에 개재되어 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와, 복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로를 포함하고, 상기 정보 교환로를 통해 개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬을 교환함으로써 진정한 신드롬을 생성하는 에러 검출 정정 장치의 제어 방법으로서,
    개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를, 상기 정보 교환로를 통해 다른 데이터 처리 장치와 교환하는 것을 특징으로 하는 에러 검출 정정 장치의 제어 방법.
  2. 제1항에 있어서, 상기 재기록 정보의 패턴의 종별에 따라 상기 정보 교환로를 통한 상기 재기록 정보의 교환의 여부를 제어하는 것을 특징으로 하는 에러 검출 정정 장치의 제어 방법.
  3. 제1항에 있어서, 개개의 상기 데이터 처리 장치에서 검출된 특정한 에러 패턴을 상기 정보 교환로를 통해 교환하는 것을 특징으로 하는 에러 검출 정정 장치의 제어 방법.
  4. 데이터 통신로에 개재되어 에러 정정 부호 단위의 데이터의 송수신을 분담 하는 복수의 데이터 처리 장치와, 복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로를 포함하고, 상기 정보 교환로를 통해 개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬을 교환함으로써 진정한 신드롬을 생성하는 에러 검출 정정 장치로서,
    개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를 상기 정보 교환로를 통해 다른 데이터 처리 장치와 교환하는 정보 교환 수단을 구비한 것을 특징으로 하는 에러 검출 정정 장치.
  5. 제4항에 있어서, 상기 정보 교환 수단은 상기 재기록 정보의 패턴의 종별에 따라 상기 정보 교환로를 통한 상기 재기록 정보의 교환의 여부를 제어하는 것을 특징으로 하는 에러 검출 정정 장치.
  6. 기억 장치와, 상기 기억 장치에 액세스하는 액세스 장치와, 상기 기억 장치와 상기 액세스 장치를 접속하는 데이터 전송로와, 상기 데이터 전송로에 개재되는 에러 검출 정정 장치를 포함하는 정보 처리 시스템으로서,
    상기 에러 검출 정정 장치는,
    데이터 전송로에서의 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와,
    복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로와,
    개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬 및 개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를 상기 정보 교환로를 통해 복수의 상기 데이터 처리 장치와 교환하는 정보 교환 수단을 구비한 것을 특징으로 하는 정보 처리 시스템.
  7. 제6항에 있어서, 상기 정보 교환 수단은, 상기 재기록 정보의 패턴의 종별에 따라 상기 정보 교환로를 통한 상기 재기록 정보의 교환의 여부를 제어하는 기능,
    개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 대하여 부분재기록 처리를 실행한 후, 그 데이터의 다른 데이터 처리 장치가 분담하는 부분을 모두 0으로 간주하여 체크 비트의 갱신을 실행하고, 갱신 후의 그 체크 비트를 상기 정보 교환로를 통해 다른 데이터 처리 장치와 교환하는 기능,
    개개의 상기 데이터 처리 장치에서 검출된 특정한 에러 패턴을 상기 정보 교환로를 통해 교환하는 기능,
    상기 정보 교환로에 에러 정정 부호를 부가하여 그 정보 교환로를 통해 전송되는 정보를 보호함과 동시에, 상기 부분 신드롬에 동기 확인 신호를 부가하고, 상기 부분 신드롬의 사용 타이밍의 오류를 억지하는 기능 중 적어도 하나의 기능을 더 구비한 것을 특징으로 하는 정보 처리 시스템.
  8. 데이터 통신로에 개재되어 에러 정정 부호 단위의 데이터의 송수신을 분담하는 복수의 데이터 처리 장치와, 복수의 상기 데이터 처리 장치 사이에 설치된 정보 교환로를 포함하는 에러 검출 정정 장치의 제어 프로그램을 기록한 기록매체로서,
    개개의 상기 데이터 처리 장치가 분담하는 상기 데이터의 일부에 관한 부분 신드롬 및 개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 관한 재기록 정보를 상기 정보 교환로를 통해 다른 데이터 처리 장치와 교환하는 프로세스를 개개의 상기 데이터 처리 장치에서 실행시키는 것을 특징으로 하는 에러 검출 정정 장치의 제어 프로그램을 기록한 기록매체.
  9. 제8항에 있어서, 상기 재기록 정보의 패턴의 종별에 따라 상기 정보 교환로를 통한 상기 재기록 정보의 교환의 여부를 제어하는 기능,
    개개의 상기 데이터 처리 장치가 분담한 상기 데이터의 일부에 대하여 부분재기록 처리를 실행한 후, 그 데이터의 다른 데이터 처리 장치가 분담하는 부분을 모두 0으로 간주하여 체크 비트의 갱신을 실행하고, 갱신 후의 그 체크 비트를 상기 정보 교환로를 통해 상기 다른 데이터 처리 장치와 교환하는 기능,
    개개의 상기 데이터 처리 장치에서 검출된 특정한 에러 패턴을 상기 정보 교환로를 통하여 교환하는 기능,
    상기 정보 교환로에 에러 정정 부호를 부가하여 상기 정보 교환로를 통해 전송되는 정보를 보호함과 동시에, 상기 부분 신드롬에 동기 확인 신호를 부가하고, 상기 부분 신드롬의 사용 타이밍의 오류를 억지하는 기능 중 적어도 하나의 기능을 추가로 상기 데이터 처리 장치에서 실현시키는 것을 특징으로 하는 에러 검출 정정 장치의 제어 프로그램을 기록한 기록매체.
  10. 데이터 통신로에 개재하는 에러 검출 정정 장치에 포함되고, 에러 정정 부호 단위의 데이터의 송수신을 분담하는 데이터 처리 장치로서,
    자신이 분담하는 상기 데이터의 일부에 관한 부분 신드롬 및 자신이 분담한 상기 데이터의 일부에 관한 재기록 정보를 다른 데이터 처리 장치와 교환하는 정보 교환 수단을 구비한 것을 특징으로 하는 데이터 처리 장치.
KR1020050058650A 2005-03-17 2005-06-30 에러 검출 정정 장치의 제어 방법, 에러 검출 정정 장치,정보 처리 시스템, 에러 검출 정정 장치의 제어 프로그램,데이터 처리 장치 KR100717572B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2005-00076403 2005-03-17
JP2005076403A JP4723265B2 (ja) 2005-03-17 2005-03-17 エラー検出訂正装置の制御方法、エラー検出訂正装置、情報処理システム、エラー検出訂正装置の制御プログラム、データ処理装置

Publications (2)

Publication Number Publication Date
KR20060101140A KR20060101140A (ko) 2006-09-22
KR100717572B1 true KR100717572B1 (ko) 2007-05-15

Family

ID=36636166

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050058650A KR100717572B1 (ko) 2005-03-17 2005-06-30 에러 검출 정정 장치의 제어 방법, 에러 검출 정정 장치,정보 처리 시스템, 에러 검출 정정 장치의 제어 프로그램,데이터 처리 장치

Country Status (5)

Country Link
US (1) US7543220B2 (ko)
EP (1) EP1703396B1 (ko)
JP (1) JP4723265B2 (ko)
KR (1) KR100717572B1 (ko)
CN (1) CN100394390C (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100458718C (zh) * 2006-12-29 2009-02-04 福昭科技(深圳)有限公司 一种闪存存储装置及其数据读取和写入方法
US8438452B2 (en) * 2008-12-29 2013-05-07 Intel Corporation Poison bit error checking code scheme
US8848465B2 (en) 2011-07-06 2014-09-30 Samsung Electronics Co., Ltd. Memory devices including selective RWW and RMW decoding
CN103729523B (zh) * 2014-01-22 2017-01-25 中国人民解放军国防科学技术大学 一种面向参数化系统的自动验证方法
JP6090489B1 (ja) 2016-03-01 2017-03-08 日本電気株式会社 エラー検知装置、記憶装置およびエラー訂正方法
US11334457B1 (en) 2019-06-27 2022-05-17 Samsung Electronics Co., Ltd. Semiconductor memory device and memory system including the same
CN118566890A (zh) * 2024-06-25 2024-08-30 深圳市速腾聚创科技有限公司 数据处理系统与激光雷达芯片、激光雷达

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57152599A (en) 1981-03-17 1982-09-20 Fujitsu Ltd Error correcting device
US4736376A (en) * 1985-10-25 1988-04-05 Sequoia Systems, Inc. Self-checking error correcting encoder/decoder
US5157669A (en) * 1988-10-14 1992-10-20 Advanced Micro Devices, Inc. Comparison of an estimated CRC syndrome to a generated CRC syndrome in an ECC/CRC system to detect uncorrectable errors
US5331645A (en) * 1990-01-17 1994-07-19 Integrated Device Technology, Inc. Expandable digital error detection and correction device
JPH0423048A (ja) * 1990-05-17 1992-01-27 Hitachi Ltd 誤り検出・訂正用集積回路、誤り検出・訂正回路、および、データ処理装置
JPH04312147A (ja) * 1991-04-11 1992-11-04 Nec Gumma Ltd 主記憶装置
JPH07129477A (ja) * 1993-11-05 1995-05-19 Oki Electric Ind Co Ltd エラー検出訂正装置
GB2289779B (en) * 1994-05-24 1999-04-28 Intel Corp Method and apparatus for automatically scrubbing ECC errors in memory via hardware
US5768294A (en) * 1995-12-11 1998-06-16 International Business Machines Corporation Memory implemented error detection and correction code capable of detecting errors in fetching data from a wrong address
US5841795A (en) * 1996-02-12 1998-11-24 Compaq Computer Corporation Error correction codes
JPH10289164A (ja) * 1997-04-16 1998-10-27 Mitsubishi Electric Corp メモリ制御方法およびメモリ制御装置
JP3678574B2 (ja) * 1998-02-09 2005-08-03 日本電気エンジニアリング株式会社 チェックビット生成回路及びエラー訂正回路並びにそれ等を使用したecc制御回路
US7028248B2 (en) * 2001-02-28 2006-04-11 International Business Machines Corporation Multi-cycle symbol level error correction and memory system
US6996766B2 (en) * 2002-06-28 2006-02-07 Sun Microsystems, Inc. Error detection/correction code which detects and corrects a first failing component and optionally a second failing component
US6853602B2 (en) * 2003-05-09 2005-02-08 Taiwan Semiconductor Manufacturing Company, Ltd. Hiding error detecting/correcting latency in dynamic random access memory (DRAM)
TWI227395B (en) * 2003-06-02 2005-02-01 Genesys Logic Inc Method for parallel processing of memory data and error correction code and related device thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
해당없음

Also Published As

Publication number Publication date
KR20060101140A (ko) 2006-09-22
CN100394390C (zh) 2008-06-11
US7543220B2 (en) 2009-06-02
CN1834931A (zh) 2006-09-20
EP1703396A2 (en) 2006-09-20
JP4723265B2 (ja) 2011-07-13
EP1703396A3 (en) 2011-08-10
EP1703396B1 (en) 2018-10-31
US20060236213A1 (en) 2006-10-19
JP2006260139A (ja) 2006-09-28

Similar Documents

Publication Publication Date Title
KR100717572B1 (ko) 에러 검출 정정 장치의 제어 방법, 에러 검출 정정 장치,정보 처리 시스템, 에러 검출 정정 장치의 제어 프로그램,데이터 처리 장치
US8667358B2 (en) Error correction and recovery in chained memory architectures
KR101099471B1 (ko) PCI.Express 통신 시스템, 및 그 통신 방법
US7624324B2 (en) File control system and file control device
US8576707B2 (en) Method and apparatus for bus coupling of safety-relevant processes
US9191030B2 (en) Memory controller, data storage device, and memory controlling method
JP4451837B2 (ja) データ転送装置およびデータ転送方法
JP3757204B2 (ja) エラー検出/訂正方式及び該方式を用いた制御装置
JP2001290710A (ja) データエラー検出装置
JP4563834B2 (ja) データ通信システム
JP5145860B2 (ja) メモリ二重化システム及び情報処理装置
JP4589768B2 (ja) 情報処理装置
WO2010035316A1 (ja) メモリ制御装置およびメモリ制御方法
JP4929602B2 (ja) データ転送装置及び方法
JP2000222294A (ja) 計算機システム及びバス障害回復方法
JP2009116978A (ja) 半導体記憶装置
JP5325032B2 (ja) 多重系システムの高信頼性制御装置
JP4788308B2 (ja) デバイスシステム
JP2000099410A (ja) メモリ制御回路と情報処理装置
KR100292059B1 (ko) 교환기에서의데이터재전송시스템
JP5680434B2 (ja) Pciバス制御システム
JP2009026080A (ja) バスシステム及びバス障害対処方法
JPS61243549A (ja) 誤り検出訂正方式
JP2006065394A (ja) 障害検出装置
JPH05257726A (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

FPAY Annual fee payment

Payment date: 20180417

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190417

Year of fee payment: 13