KR101141437B1 - 에러 응답확인 커맨드 프로토콜의 순방향 에러 보정 - Google Patents

에러 응답확인 커맨드 프로토콜의 순방향 에러 보정 Download PDF

Info

Publication number
KR101141437B1
KR101141437B1 KR1020107012897A KR20107012897A KR101141437B1 KR 101141437 B1 KR101141437 B1 KR 101141437B1 KR 1020107012897 A KR1020107012897 A KR 1020107012897A KR 20107012897 A KR20107012897 A KR 20107012897A KR 101141437 B1 KR101141437 B1 KR 101141437B1
Authority
KR
South Korea
Prior art keywords
memory device
command
parity
acknowledgment
commands
Prior art date
Application number
KR1020107012897A
Other languages
English (en)
Other versions
KR20100084572A (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 KR20100084572A publication Critical patent/KR20100084572A/ko
Application granted granted Critical
Publication of KR101141437B1 publication Critical patent/KR101141437B1/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

Landscapes

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

Abstract

본 발명의 실시예들은 일반적으로 에러 응답확인 커맨드 프로토콜의 순방향 에러 보정 코딩을 위한 시스템, 방법 및 장치에 관한 것이다. 일부 실시예들에서, 호스트는 메모리 장치에 커맨드들을 보내고 메모리 장치가 에러 없이 커맨드들을 수신했는지의 여부를 결정하기 위해 에러 신호를 모니터링한다. 일부 실시예들에서, 호스트가 에러를 검출하고 나서 에러 응답확인 커맨드에 대한 순방향 에러 보정 코드를 제공한다. 다른 실시예들이 기재되고 청구된다.

Description

에러 응답확인 커맨드 프로토콜의 순방향 에러 보정{FORWARD ERROR CORRECTION OF AN ERROR ACKNOWLEDGEMENT COMMAND PROTOCOL}
본 발명의 실시예들은 일반적으로 집적 회로 분야에 관한 것이며, 보다 구체적으로는, 에러 응답확인 커맨드 프로토콜(error acknowledgement command protocol)의 순방향 에러 보정(forward error correction)에 관한 시스템들, 방법들 및 장치들에 관한 것이다.
메모리 서브시스템들은 시간에 따라 불가피하게 증가하는 전송 레이트로 정보를 서로 전송하는 2개 이상의 집적 회로들을 통상적으로 포함한다. 예를 들어, (메모리 컨트롤러와 같은) 호스트는 커맨드 인터커넥트를 통해 커맨드들을 메모리 장치에 전송할 수 있다. 메모리 장치에 대한 커맨드들의 전송 신뢰성은, 만약 에러가 발생하는 경우, 메모리에 저장된 데이터가 훼손될 수 있기 때문에 특히 중요하다.
본 발명의 실시예들은, 한정적인 방식이 아닌 예시적인 방식으로써 도시되며, 첨부하는 도면들의 그림들에서 유사한 참조 번호들은 유사한 구성요소들을 지칭한다.
도 1은 본 발명의 실시예에 따라 구현된 컴퓨팅 시스템의 선별된 양태들을 도시하는 블록도이다.
도 2는 본 발명의 실시예에 따른 순방향 에러 보정 로직의 선별된 양태들을 도시하는 블록도이다.
도 3은 본 발명의 실시예에 따라 구현된 고성능 컴퓨팅 시스템의 선별된 양태들을 도시하는 블록도이다.
도 4는 본 발명의 실시예에 따른, 에러 응답확인 커맨드의 순방향 에러 보정 방법의 선별된 양태들을 도시하는 블록도이다.
본 발명의 실시예들은 일반적으로 에러 응답확인 커맨드 프로토콜의 순방향 에러 보정 시스템들, 방법들, 및 장치들에 관한 것이다. 일부 실시예들에서, 호스트는 메모리 장치에 커맨드들을 전송하고, 전송 에러가 발생하였는지의 여부를 판정하기 위해 커맨드 ERROR 신호를 모니터링한다. 커맨드 ERROR 신호가 어서트(assert)되면, 호스트는 에러 응답확인 커맨드에 대한 순방향 에러 보정 프로토콜을 수행할 수 있다. 에러 응답확인 커맨드가 에러 없이 수신되었음을 가정할 수 있으므로 호스트는 잘못된 커맨드들을 지연 없이 재전송할 수 있기 때문에 주어진 프로토콜은 종래의 접근법들보다 더 효율적이다. 또한, 호스트의 하드웨어 구현은, 반복될 필요가 있을 수 있는 커맨드들을 저장하는데 더 작은 버퍼들이 이용될 수 있으므로, 더 간단할 수 있다(및/또는 더 작을 수 있다).
도 1은 본 발명의 실시예에 따라 구현된 컴퓨팅 시스템의 선별된 양태들을 도시하는 고레벨 블록도이다. 도시된 실시예에서, 시스템(100)은 호스트(110)(예를 들어, 메모리 컨트롤러), 메모리 장치(120)(예를 들어, 동적 랜덤 액세스 메모리 장치 또는 "DRAM"), 및 N 비트 와이드 커맨드(CMD) 인터커넥트(130)를 포함한다. 설명의 용이함을 위해, 도 1은 오직 단일의 호스트와 단일의 메모리 장치만을 도시한다. 그러나, 시스템(100)은 거의 임의의 수의 호스트들 및/또는 메모리 장치들을 가질 수 있음이 이해될 것이다. 예를 들어, 시스템(100)은 고성능 컴퓨팅 애플리케이션을 지원하기 위해 많은 수의 호스트들 및/또는 메모리 장치들을 가질 수 있다. 대안의 실시예들에서, 시스템(100)은 더 많은 요소들, 더 적은 요소들, 및/또는 상이한 요소들을 포함할 수 있다.
CMD 인터커넥트(130)는 커맨드들, 어드레스들 등을 전달하기 위한 다수의 신호 라인들을 포함할 수 있다. 일부 실시예들에서, CMD 인터커넥트(130)는 단방향성(unidirectional)이다. CMD 인터커넥트(130)는, 점-대-점(point-to-point), 멀티 드롭(multi-drop) 등을 포함하는 임의의 다수의 토폴로지들을 가질 수 있다.
호스트(110)는 메모리 장치(120)에 대한 데이터의 전송을 제어한다. 일부 실시예들에서, 호스트(110)는 하나 이상의 프로세서들과 동일한 다이 상에 집적된다. 대안의 실시예들에서, 호스트(110)는 하나 이상의 프로세서들과 패키징되는 다이 상에 존재할 수 있다. 또 다른 대안의 실시예들에서, 호스트(110)는 시스템(100)을 위한 칩셋의 일부이다.
호스트(110)는 코어 로직(112), 입력/출력(IO) 회로(114) 및 순방향 에러 보정 로직(FEC)(116)을 포함한다. 코어 로직(112)은, 거의, 예를 들어, 하나 이상의 메모리 컨트롤러 기능들을 구현하는 코어 로직을 포함하는 집적 회로를 위한 임의의 코어 로직일 수 있다. IO 회로(114)는 드라이버들, 버퍼들, 지연 고정 루프들, 위상 고정 루프들 등을 포함하여, 인터커넥트(130)를 통해 커맨드들을 메모리 장치(120)에 송신할 수 있다.
총체적으로, 패리티 라인(132), CMD 인터커넥트(130), 및 CMD 패리티 ERROR 신호 라인(134)은 (어느 정도까지는) 에러를 유발하기 쉬운 고속 디지털 인터페이스를 제공한다. CMD 인터커넥트(130)는 커맨드들을 전송하기 위한 단방향성의 N 비트(예를 들어, 1, 2, 3, ..., N) 와이드 인터커넥트를 제공한다. 호스트(110)는 (예를 들어, 패리티 로직(118)을 이용하여) 커맨드들을 커버하기 위한 하나 이상의 패리티 비트들을 생성한다. 패리티 비트들은 라인(132)을 통해 전달될 수 있다. 이하에 더 자세히 논의되듯이, 메모리 장치(120)는, 패리티 에러를 검출하는 경우, 라인(134) 상에 CMD 패리티 ERROR 신호를 어서트할 수 있다.
일부 실시예들에서, 메모리 장치(120)는 (적어도 부분적으로) 시스템(100)을 위한 메인 시스템 메모리를 제공한다. 대안의 실시예들에서, 메모리 장치(120)는 (적어도 부분적으로) 시스템(100)을 위한 메모리 캐시를 제공한다. 메모리 장치(120)는 메모리 어레이(122), IO 회로(124), 디코드 로직(126), 및 패리티 로직(128)을 포함한다. IO 회로(124)는 래치들, 버퍼들, 지연 고정 루프들, 위상 고정 루프들 등을 포함하여, 호스트(110)로부터 하나 이상의 신호들을 수신할 수 있다. 대안의 실시예들에서, 메모리 장치(120)는 더 많은 요소들, 더 적은 요소들, 및/또는 상이한 요소들을 포함할 수 있다.
메모리 장치(120)는, 인터커넥트(130)를 통해 전송된 커맨드에 대해 패리티 에러가 존재하는지의 여부를 판정하기 위해 패리티 로직(128)을 이용한다. 메모리 장치(120)가 패리티 에러를 검출하면, 메모리 장치는 CMD 패리티 ERROR 신호를 어서트한다. 호스트(110)는, CMD 패리티 ERROR 신호(또는, 간단히 ERROR 신호)가 어서트되는지의 여부를 검출하기 위해 인터페이스를 모니터링한다.
일부 실시예들에서, 호스트가 ERROR 신호의 어서션(assertion)을 검출하면, 에러 응답확인 커맨드(CMD)를 전송할 때 순방향 에러 보정 프로토콜을 이용한다. 예를 들어, 일부 실시예들에서, 순방향 에러 보정 로직(116)은 에러 보정 코드를 이용하여 에러 응답확인 CMD를 인코딩한다. 인코딩된 에러 응답확인 CMD는 CMD 인터커넥트(130)를 통해 메모리 장치(120)로 "대역내(in-band)"에 전달될 수 있다.
예시된 실시예에서, 메모리 장치(120)는 인코딩된 에러 응답확인 CMD를 디코딩하기 위한 디코드 로직(126)을 포함한다. FEC 로직(116) 및 디코드 로직(126)은 도 2를 참조하여 이하에 더 논의된다.
도 2는 본 발명의 실시예에 따른 순방향 에러 보정 로직의 선별된 양태들을 예시하는 블록도이다. 순방향 에러 보정 로직(116)은, 입력으로서, 에러 응답확인 커맨드를 수신하고, 출력으로서, 에러 보정 코드를 이용하여 인코딩된 에러 응답확인 커맨드를 제공한다. 일부 실시예들에서, 에러 보정 코드는 해밍 코드(Hamming code)이다. 대안의 실시예들에서, 상이한 에러 보정 코드가 이용될 수 있다. 예시된 실시예에서, 에러 응답확인(error acknowledge)는 단일 비트이고, 인코딩된 응답확인은 M 비트(예를 들어, 2, 3, 4, 5, ..., M)이다. 에러 응답확인 CMD를 인코딩하는 데 이용된 비트의 수는 구현에 따라 달라질 것임을 알 것이다. 일부 실시예들에서, 로직(116)은 3비트 해밍 코드를 구현한다. 대안적인 실시예들에서, 에러 응답확인 커맨드는 3개 이상의 비트로 이루어질 수 있다.
디코드 로직(116)은 입력으로서 인코딩된 에러 응답확인 커맨드(encoded error acknowledge command)를 수신하고, 출력으로서 디코딩된 에러 응답확인 커맨드를 제공한다. 일부 실시예들에서, 디코드 로직(116)은 로직(116)과 상대되는(opposite) 기능을 제공한다. 예를 들어, 로직(116)이 그의 입력을 인코딩하기 위해 3비트 해밍 코드를 제공한다면, 로직(126)은 그의 입력을 디코딩하기 위해 3비트 해밍 코드를 제공할 수 있다.
도 3은 본 발명의 실시예에 따라 구현되는 고성능 컴퓨팅 시스템의 선별된 양태들을 예시하는 블록도이다. 시스템(300)은 예를 들어 수천 테라플롭(thousands of teraflops)(또는 초당 수 조(1000s of billions)의 부동 소수점 연산)을 수행하는 데 적합한 고성능 컴퓨팅 플랫폼이다. 시스템(300)은 병렬로 작동하는 다수의 프로세서(302)를 포함한다. 일부 실시예들에서, 각각의 프로세서는 에러가 발생하기 쉬운 인터커넥트(130)에 의해 접속되는 하나 이상의 DRAM(120)과 호스트(110)를 포함할 수 있다. 시스템(300)에 의해 수행되는 다수의 병렬 연산은 인터커넥트(130) 상에서 에러가 발생할 가능성을 크게 증가시킨다. 예를 들어, 통상의 애플리케이션(예를 들어, PC)에서는 단지 수년 후에 발생할 수 있을 연산 에러가 시스템(300)에서 수시간(또는 수일) 내에 발생할 수 있다. 에러 응답확인 커맨드에 대해 순방향 에러 보정을 이용함으로써 제공되는 강화된 신뢰성이 시스템(300)에 대한 비트 에러 레이트(bit error rate; BER)를 향상시킨다.
도 4는 본 발명의 실시예에 따른 에러 응답확인 커맨드의 순방향 에러 보정 방법의 선별된 양태들을 예시하는 흐름도이다. 프로세스 블록(402)을 참조하면, 호스트(예를 들어, 도 1에 도시된 호스트(110))가 메모리 장치(예를 들어, 도 1에 도시된 메모리 장치(120))에 하나 이상의 커맨드를 전송한다. 일부 실시예들에서, 메모리 장치는 메모리 장치가 하나 이상의 잘못된 커맨드(406, 408)를 검출한 경우 커맨드 패리티 ERROR 신호(또는, 간단히, ERROR 신호)를 어서트(assert)한다.
404에서 호스트는 인터페이스를 모니터링하여 ERROR 신호가 어서트되는지를 판정한다. 프로세스 블록(408)을 참조하면, 메모리 장치는 에러를 검출하고, ERROR 신호를 어서트한다. 호스트는 ERROR 신호를 검출하고 410에서 에러 보정 코드에 의해 ERROR 응답확인 커맨드(또는, 간단히, 응답확인)를 인코딩한다. 일부 실시예들에서, 에러 보정 코드는 해밍 코드이다.
프로세스 블록(412)을 참조하면, 호스트는 인코딩된 응답확인을 메모리 장치로 전달한다. 일부 실시예들에서, 응답확인은 커맨드 인터커넥트를 통해 전달된다. 대안적인 실시예들에서, 응답확인은 전용 핀(및 신호 라인)을 통해 전달된다. 또 다른 대안적인 실시예들에서, 응답확인은 다른 도전체를 통해 멀티플렉싱된다.
프로세스 블록(414)을 참조하면, 호스트는 메모리 장치가 인코딩된 응답확인을 수신한 것을 확인하지 않고 잘못된 커맨드들을 반복한다. 예를 들어, 호스트는 인코딩된 응답확인을 전송한 후에 다음 클록 사이클에서 잘못된 커맨드들을 반복하기 시작할 수 있는데, 인코딩된 응답확인이 전송 에러 없이 또는 (에러 보정 코드에 의해) 보정될 수 있는 에러를 가지고 메모리 장치에 도달할 것임이 당연히 확실하기 때문이다. 일부 경우들에서, 호스트가 인코딩된 응답확인을 전송한 후에 기다릴 필요가 없기 때문에 시스템의 성능은 향상된다.
본 발명의 실시예들의 요소들은 또한 머신 실행가능한 명령어들을 저장하는 머신 판독가능한 매체로서 제공될 수 있다. 머신 판독가능한 매체는 플래시 메모리, 광 디스크, CD-ROM(compact disks-read only memory), DVD(digital versatile/video disks) ROM, RAM(random access memory), EPROM(erasable programmable read-only memory), EEPROM(electrically erasable programmable read-only memory), 자기 또는 광 카드, 전파 매체(propagation media) 또는 전자 명령어들을 저장하는 데 적합한 다른 유형의 머신 판독가능한 매체를 포함할 수 있으며, 이것들로 한정되지 않는다. 예를 들어, 본 발명의 실시예들은, 반송파에 구현된 데이터 신호들 또는 통신 링크(예를 들어, 모뎀 또는 네트워크 커넥션)를 통한 다른 전파 매체에 의해 원격 컴퓨터(예를 들어, 서버)로부터 요청 컴퓨터(예를 들어, 클라이언트)에 전달될 수 있는 컴퓨터 프로그램으로서 다운로드될 수 있다.
위의 설명에서는 본 발명의 실시예들을 설명하기 위해 특정 용어가 이용된다. 예를 들어, "로직"이라는 용어는 하나 이상의 기능을 수행하는 하드웨어, 펌웨어, 소프트웨어(또는 이들의 임의의 조합)를 나타낸다. 예컨대, "하드웨어"의 예들은 집적 회로, 유한 상태 머신(finite state machine), 또는 심지어 결합 로직을 포함하지만, 이것들로 한정되지 않는다. 집적 회로는 마이크로프로세서, 애플리케이션 특정 집적 회로, 디지털 신호 프로세서, 마이크로 컨트롤러 등과 같은 프로세서의 형태를 취할 수 있다.
본 명세서의 전체에 걸쳐서, "일 실시예" 또는 "실시예"에 대한 언급은 그 실시예와 관련하여 설명된 특정 특징, 구조 또는 특성이 본 발명의 적어도 하나의 실시예에 포함된다는 것을 의미한다는 것을 알아야 한다. 따라서, 본 명세서의 여러 부분에서의 "실시예" 또는 "일 실시예" 또는 "대안적인 실시예"라는 2개 이상의 언급이 반드시 모두 동일한 실시예를 가리키는 것은 아님에 주목하고 이해해야 한다. 또한, 그러한 특정 특징들, 구조들 또는 특성들은 본 발명의 하나 이상의 실시예에 적합하게 조합될 수 있다.
마찬가지로, 본 발명의 실시예들에 대한 전술한 설명에서, 다양한 특징들은 때때로 다양한 발명의 양태 중 하나 이상의 이해에 도움을 주는 개시를 능률적으로 하기 위한 목적으로 그의 단일 실시예, 도면, 또는 설명에서 함께 그룹화된다는 것을 알아야 한다. 그러나, 이러한 개시의 방법은 청구된 요지가 각각의 청구항에 명시적으로 기재된 것보다 더 많은 특징들을 필요로 한다는 의도를 반영하는 것으로서 해석되어서는 안된다. 오히려, 다음의 청구항들이 반영하는 바와 같이, 발명 양태들이 단일의 전술한 실시예의 모든 특징보다 적은 특징에 있다. 그러므로, 상세한 설명에 뒤따르는 청구항들은 이로써 본 상세한 설명 내로 명백히 통합된다.

Claims (20)

  1. 순방향 에러 보정을 위한 집적 회로로서,
    코어 로직;
    상기 코어 로직에 연결되고, N 비트 와이드 커맨드 인터커넥트(N bit wide command interconnect)(N은 정수)를 통해 메모리 장치에 커맨드들을 제공하며 전송 에러가 발생하였는지의 여부를 판정하기 위해 커맨드 패리티 ERROR 신호를 모니터링하는 IO(input/output) 회로;
    상기 N 비트 와이드 커맨드 인터커넥트에 제공되는 상기 커맨드들을 커버하도록 하나 이상의 패리티 비트들을 제공하는 패리티 로직 - 상기 메모리 장치는 상기 커맨드들 중 하나에서 패리티 에러를 검출하면 상기 커맨드 패리티 ERROR 신호를 상기 패리티 로직에 제공함 - ; 및
    상기 메모리 장치로의 응답확인(acknowledge) 메시지를 인코딩하고 상기 커맨드 패리티 ERROR 신호를 수신하는 것에 응답하여 상기 메모리 장치로 상기 응답확인 메시지를 제공하는 순방향 에러 보정 로직 - 상기 커맨드 패리티 ERROR 신호에 응답하여 상기 인코드된 응답확인 메시지는 상기 패리티 에러를 보정하도록 적어도 에러 보정 코드를 갖고 상기 커맨드 패리티 ERROR 신호를 응답확인하는 하나 이상의 비트들을 더 포함함 -
    을 포함하고,
    상기 코어 로직은 상기 메모리 장치가 상기 응답확인을 수신했는지의 여부를 결정하지 않고 상기 메모리 장치에 하나 이상의 커맨드들을 재전송하는 순방향 에러 보정을 위한 집적 회로.
  2. 제1항에 있어서,
    상기 응답확인은 상기 N 비트 와이드 커맨드 인터커넥트를 통해 상기 메모리 장치에 제공되는 순방향 에러 보정을 위한 집적 회로.
  3. 삭제
  4. 삭제
  5. 삭제
  6. 제1항에 있어서,
    상기 에러 보정 코드는 해밍 코드를 포함하는 순방향 에러 보정을 위한 집적 회로.
  7. 제1항에 있어서,
    상기 메모리 장치는 DRAM(dynamic random access memory device)인 순방향 에러 보정을 위한 집적 회로.
  8. 호스트로부터 메모리 장치로 커맨드 인터커넥트를 통해 하나 이상의 커맨드들을 전송하는 단계 - 상기 하나 이상의 커맨드들 중 적어도 일부는 하나 이상의 패리티 비트들에 의해 커버됨 - ;
    상기 메모리 장치로부터 상기 하나 이상의 커맨드들 중 하나에서의 에러를 가리키는 커맨드 패리티 ERROR 신호에 대한 입력을 모니터링 하는 단계;
    상기 메모리 장치가 패리티 에러를 검출하면, 상기 메모리 장치로부터 상기 커맨드 패리티 ERROR 신호를 수신하는 단계;
    에러 보정 코드를 갖는 응답확인을 인코딩하는 단계 - 상기 응답확인은 상기 커맨드 패리티 ERROR 신호를 응답확인하는 하나 이상의 비트들임 - ;
    상기 응답확인을 상기 메모리 장치로 보내는 단계; 및
    상기 메모리 장치가 상기 응답확인을 수신했는지를 결정하지 않고 상기 메모리 장치에 하나 이상의 커맨드들을 재전송하는 단계
    를 포함하는 순방향 에러 보정을 위한 방법.
  9. 제8항에 있어서,
    상기 에러 보정 코드를 갖는 상기 응답확인을 인코딩하는 단계는,
    해밍 코드를 갖는 상기 응답확인을 인코딩하는 단계를 포함하는 순방향 에러 보정을 위한 방법.
  10. 제8항에 있어서,
    상기 응답확인을 상기 메모리 장치로 보내는 단계는,
    상기 응답확인을 상기 커맨드 인터커넥트를 통해 상기 메모리 장치로 보내는 단계를 포함하는 순방향 에러 보정을 위한 방법.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 순방향 에러 보정을 위한 시스템으로서,
    제2 집적 회로로부터 하나 이상의 커맨드들을 수신하는 제1 집적 회로; 및
    N 비트 와이드 커맨드 인터커넥트(N은 정수)를 통해 상기 제1 집적 회로와 연결된 상기 제2 집적 회로
    를 포함하고, 상기 제2 집적 회로는,
    코어 로직;
    상기 코어 로직에 연결되고, 상기 N 비트 와이드 커맨드 인터커넥트를 통해 상기 제1 집적 회로에 상기 하나 이상의 커맨드들을 제공하고 전송 에러가 발생하였는지의 여부를 판정하기 위해 커맨드 패리티 ERROR 신호를 모니터링하는 IO(input/output) 회로;
    상기 N 비트 와이드 커맨드 인터커넥트에 제공되는 상기 커맨드들을 커버하도록 하나 이상의 패리티 비트들을 제공하는 패리티 로직 - 상기 제1 집적 회로는 상기 커맨드들 중 하나에서 패리티 에러를 검출하면 상기 커맨드 패리티 ERROR 신호를 상기 패리티 로직에 제공함 - ; 및
    상기 제1 집적 회로로의 응답확인 메시지를 인코딩하고 상기 커맨드 패리티 ERROR 신호를 수신하는 것에 응답하여 상기 제1 집적 회로로 상기 응답확인 메시지를 제공하는 순방향 에러 보정 로직 - 상기 커맨드 패리티 ERROR 신호에 응답하여 상기 인코드된 응답확인 메시지는 상기 패리티 에러를 보정하도록 적어도 에러 보정 코드를 갖고 상기 커맨드 패리티 ERROR 신호를 응답확인하는 하나 이상의 비트들을 더 포함함 -
    을 포함하고,
    상기 코어 로직은 상기 제1 집적 회로가 상기 응답확인을 수신했는지의 여부를 결정하지 않고 상기 제1 집적 회로에 하나 이상의 커맨드들을 재전송하는 순방향 에러 보정을 위한 시스템.
  15. 제14항에 있어서,
    상기 제1 집적 회로는 메모리 장치인 순방향 에러 보정을 위한 시스템.
  16. 삭제
  17. 삭제
  18. 제14항에 있어서,
    상기 코어 로직은 메모리 컨트롤러를 포함하는 순방향 에러 보정을 위한 시스템.
  19. 제15항에 있어서,
    상기 메모리 장치는 DRAM을 포함하는 순방향 에러 보정을 위한 시스템.
  20. 제19항에 있어서,
    상기 DRAM은 상기 응답확인을 디코딩하는 로직을 포함하는 순방향 에러 보정을 위한 시스템.
KR1020107012897A 2007-12-12 2008-11-19 에러 응답확인 커맨드 프로토콜의 순방향 에러 보정 KR101141437B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/954,776 US20090158122A1 (en) 2007-12-12 2007-12-12 Forward error correction of an error acknowledgement command protocol
US11/954,776 2007-12-12
PCT/US2008/084071 WO2009076023A2 (en) 2007-12-12 2008-11-19 Forward error correction of an error acknowledgement command protocol

Publications (2)

Publication Number Publication Date
KR20100084572A KR20100084572A (ko) 2010-07-26
KR101141437B1 true KR101141437B1 (ko) 2012-05-04

Family

ID=40754910

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107012897A KR101141437B1 (ko) 2007-12-12 2008-11-19 에러 응답확인 커맨드 프로토콜의 순방향 에러 보정

Country Status (5)

Country Link
US (1) US20090158122A1 (ko)
KR (1) KR101141437B1 (ko)
CN (1) CN101896978B (ko)
TW (1) TWI398873B (ko)
WO (1) WO2009076023A2 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8862973B2 (en) * 2009-12-09 2014-10-14 Intel Corporation Method and system for error management in a memory device
US9158616B2 (en) 2009-12-09 2015-10-13 Intel Corporation Method and system for error management in a memory device
US9569308B1 (en) 2013-07-15 2017-02-14 Rambus Inc. Reduced-overhead error detection and correction
KR20150064452A (ko) 2013-12-03 2015-06-11 에스케이하이닉스 주식회사 내장형 셀프 테스트 회로 및 이를 포함한 반도체 장치
US9912355B2 (en) 2015-09-25 2018-03-06 Intel Corporation Distributed concatenated error correction
US9979566B2 (en) * 2016-09-27 2018-05-22 Intel Corporation Hybrid forward error correction and replay technique for low latency
KR20210157863A (ko) 2020-06-22 2021-12-29 에스케이하이닉스 주식회사 메모리, 메모리 시스템 및 메모리의 동작 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050087287A (ko) * 2004-02-26 2005-08-31 삼성전자주식회사 어드레스 버스 라인 상에 동시 양방향 입출력(sbdi/o)회로를 채용하는 메모리 시스템
KR20060101172A (ko) * 2005-03-17 2006-09-22 후지쯔 가부시끼가이샤 소프트 에러 정정 방법, 메모리 제어 장치 및 메모리시스템

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4672613A (en) * 1985-11-01 1987-06-09 Cipher Data Products, Inc. System for transferring digital data between a host device and a recording medium
EP0813324A1 (de) * 1996-06-13 1997-12-17 Cerberus Ag Serieller Datenbus und dessen Verwendung
US20020184208A1 (en) * 2001-04-24 2002-12-05 Saul Kato System and method for dynamically generating content on a portable computing device
US7389465B2 (en) * 2004-01-30 2008-06-17 Micron Technology, Inc. Error detection and correction scheme for a memory device
US7203890B1 (en) * 2004-06-16 2007-04-10 Azul Systems, Inc. Address error detection by merging a polynomial-based CRC code of address bits with two nibbles of data or data ECC bits
EP1657845A3 (en) * 2004-11-10 2012-03-07 Alcatel Lucent Dynamic retransmission mode selector
JP2006222908A (ja) * 2005-02-14 2006-08-24 Canon Inc 再送方式
JP4941954B2 (ja) * 2005-07-25 2012-05-30 ルネサスエレクトロニクス株式会社 データエラー検出装置およびデータエラー検出方法
JP4547313B2 (ja) * 2005-08-01 2010-09-22 株式会社日立製作所 半導体記憶装置
US7227797B2 (en) * 2005-08-30 2007-06-05 Hewlett-Packard Development Company, L.P. Hierarchical memory correction system and method
TWI420851B (zh) * 2006-10-27 2013-12-21 Lg Electronics Inc 用於控制通道和廣播多播信號之輔助確認通道回饋
US7937641B2 (en) * 2006-12-21 2011-05-03 Smart Modular Technologies, Inc. Memory modules with error detection and correction
US20080259891A1 (en) * 2007-04-17 2008-10-23 Telefonaktiebolaget Lm Ericsson (Publ) Multiple packet source acknowledgement

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050087287A (ko) * 2004-02-26 2005-08-31 삼성전자주식회사 어드레스 버스 라인 상에 동시 양방향 입출력(sbdi/o)회로를 채용하는 메모리 시스템
KR20060101172A (ko) * 2005-03-17 2006-09-22 후지쯔 가부시끼가이샤 소프트 에러 정정 방법, 메모리 제어 장치 및 메모리시스템

Also Published As

Publication number Publication date
CN101896978B (zh) 2013-03-06
KR20100084572A (ko) 2010-07-26
US20090158122A1 (en) 2009-06-18
TWI398873B (zh) 2013-06-11
TW200935434A (en) 2009-08-16
WO2009076023A2 (en) 2009-06-18
WO2009076023A3 (en) 2009-08-06
CN101896978A (zh) 2010-11-24

Similar Documents

Publication Publication Date Title
KR101141437B1 (ko) 에러 응답확인 커맨드 프로토콜의 순방향 에러 보정
US11340973B2 (en) Controller that receives a cyclic redundancy check (CRC) code for both read and write data transmitted via bidirectional data link
US20040117722A1 (en) Performance of communication systems using forward error correction
US7644347B2 (en) Silent data corruption mitigation using error correction code with embedded signaling fault detection
US9218240B2 (en) Error detection and isolation
KR100618475B1 (ko) 손실된 패킷들을 검출하는 방법
KR20090015927A (ko) 멀티플 에러 보정 방식에 의한 손상 방지 데이터 포팅
CN102084343A (zh) 一种用于确保数据存储过程中数据有效性的装置、系统和方法
EP2297641A2 (en) Efficient in-band reliability with separate cyclic redundancy code frames
US20090106636A1 (en) Method and architecture to prevent corrupt data propagation from a pci express retry buffer
US9571231B2 (en) In-band status encoding and decoding using error correction symbols
JP2016521064A (ja) 10gbase−tシステムにおけるldpcエンコーダの方法および装置
KR100954734B1 (ko) 에러 검출을 위한 장치, 물품, 시스템 및 방법
CN116633487A (zh) 一种基于纠错技术的数据链路传输系统及方法
Hugo et al. Hamming code to data protection in a modbus industrial communication: Experimental results
CN115706661A (zh) 同步高速信令互连
JP7394889B2 (ja) 送信装置、受信装置及び通信方法
CN105634652A (zh) 数据链路层高性能容错的方法
CN1595376A (zh) 在接口上传输信息的方法
CN108616324A (zh) 数据链路层高性能容错的方法
CN105634653A (zh) 数据链路层高性能容错的方法
TW201707410A (zh) 資料傳送系統及方法

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
J501 Disposition of invalidation of trial
B701 Decision to grant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee