IP Library Granted Patent US 10,621,023
Granted Patent B2
US 10,621,023 · App. 16/120,819 · Granted Apr 14, 2020

Memory controller with error detection and retry modes of operation

Inventors: Ely K. Tsern (Los Altos, CA); Mark A. Horowitz (Menlo Park, CA); Frederick A. Ware (Los Altos Hills, CA)
Assignee: Rambus Inc.
G06F11/073G06F3/064G06F3/0619G06F3/0673G06F11/006G06F11/0745G06F11/0766G06F11/0793G06F11/10G06F11/1008G06F11/1068G06F11/1076G06F11/141G06F11/1402G06F11/1443G06F11/20G11C29/52H03M13/03H04L1/004H04L1/0057H04L1/0061H04L1/0072H04L1/08H04L1/1809
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,621,023
App. No.
16/120,819
Granted
Apr 14, 2020
Kind
B2
Abstract

A memory system includes a link having at least one signal line and a controller. The controller includes at least one transmitter coupled to the link to transmit first data, and a first error protection generator coupled to the transmitter. The first error protection generator dynamically adds an error detection code to at least a portion of the first data. At least one receiver is coupled to the link to receive second data. A first error detection logic determines if the second data received by the controller contains at least one error and, if an error is detected, asserts a first error condition. The system includes a memory device having at least one memory device transmitter coupled to the link to transmit the second data. A second error protection generator coupled to the memory device transmitter dynamically adds an error detection code to at least a portion of the second data.

Claims (47)

1. A memory device, comprising:

at least one memory array;

a link interface to receive commands from a memory controller;

error information generation circuitry to generate error information in connection with a data packet, the data packet accessed from the at least one memory array of the memory device in response to a first command received at the link interface;

transmitter circuitry to transmit to the memory controller the data packet along with the error information;

receiver circuitry to receive write data from the memory controller in association with a write command; and

error detection circuitry to detect an error in the write command and to responsively mask the write command from accessing the at least one memory array.

2. The memory device of claim 1 , wherein the at least one memory array comprises one or more arrays of dynamic random access memory (DRAM) cells.

3. The memory device of claim 1 , wherein the memory device further comprises circuitry to signal an error condition to the memory controller responsive to detection of the error in the write command.

4. The memory device of claim 3 , wherein the circuitry to signal is to signal the error condition to the memory controller via a link not used for exchange of write data or read data with the memory controller.

5. The memory device of claim 1 , wherein the error information comprises a cyclic code.

6. The memory device of claim 1 , further comprising a buffer to store a first instance of the data packet until a retry remedial event is executed in the event that the memory controller detects, dependent on the error information, at least one error in the first instance of the data packet.

7. The memory device of claim 6 , wherein the retry remedial action is to include transmission by the memory device to the memory controller of the second instance of the data packet at a different data rate than the data rate than used by the memory device in the transmission of the first instance of the data packet to the memory controller.

8. The memory device of claim 6 , wherein the first instance of the data packet is to be transmitted by the memory device to the memory controller using symbols respectively transmitted on rising and falling edges of the clock signal, and wherein the memory device comprises circuitry to, in the event that the memory controller the at least one error in the first instance of the data packet, receive from the memory controller an indication that a retry is to be attempted, and responsively transmit a second instance of the data packet to the memory controller using one symbol per cycle of the clock signal.

9. The memory device of claim 8 , wherein the memory device comprises circuitry to transmit the second instance of the data packet using at least one of:

blanks attached relative to the first instance of the data packet; or

a larger voltage swing than a voltage swing used in transmission of the first instance of the data packet.

10. The memory device of claim 1 , wherein the memory device comprises circuitry to detect an error in the write data, and in response to detection of an error in the write data, to transmit an indication of error to the memory controller.

11. The memory device of claim 10 , wherein the memory device is to permit storage of the write data in the at least one memory array, notwithstanding error in the write data, in absence of detected error in the write command.

12. A memory device, comprising:

at least one memory array;

a link interface to receive commands from a memory controller;

error information generation circuitry to generate error information, comprising a cyclic code, in connection with a data packet, the data packet accessed from the at least one memory array of the memory device in response to a first command received at the link interface;

transmitter circuitry to transmit to the memory controller the data packet along with the error information;

receiver circuitry to receive write data from the memory controller in association with a write command; and

error detection circuitry to detect an error in the write command and to responsively mask the write command from accessing the at least one memory array;

wherein the memory device further comprises circuitry to signal an error condition to the memory controller responsive to detection of the error in the write command.

13. The memory device of claim 12 , wherein the at least one memory array comprises one or more arrays of dynamic random access memory (DRAM) cells.

14. The memory device of claim 12 , wherein the circuitry to signal is to signal the error condition to the memory controller via a link not used for exchange of write data or read data with the memory controller.

15. The memory device of claim 12 , further comprising a buffer to store a first instance of the data packet until a retry remedial event is executed in the event that the memory controller detects, dependent on the error information, at least one error in the first instance of the data packet.

16. The memory device of claim 15 , wherein the retry remedial action is to include transmission by the memory device to the memory controller of the second instance of the data packet at a different data rate than the data rate than used by the memory device in the transmission of the first instance of the data packet to the memory controller.

17. The memory device of claim 15 , wherein the first instance of the data packet is to be transmitted by the memory device to the memory controller using symbols respectively transmitted on rising and falling edges of the clock signal, and wherein the memory device comprises circuitry to, in the event that the memory controller the at least one error in the first instance of the data packet, receive from the memory controller an indication that a retry is to be attempted, and responsively transmit a second instance of the data packet to the memory controller using one symbol per cycle of the clock signal.

18. The memory device of claim 17 , wherein the memory device comprises circuitry to transmit the second instance of the data packet using at least one of:

blanks attached relative to the first instance of the data packet; or

a larger voltage swing than a voltage swing used in transmission of the first instance of the data packet.

19. The memory device of claim 12 , wherein the memory device comprises circuitry to detect an error in the write data, and in response to detection of an error in the write data, to transmit an indication of error to the memory controller.

20. The memory device of claim 19 , wherein the memory device is to permit storage of the write data in the at least one memory array, notwithstanding error in the write data, in absence of detected error in the write command.

21. A memory device, comprising:

at least one memory array;

a link interface to receive commands from a memory controller;

error information generation circuitry to generate error information in connection with a data packet, the data packet accessed from the at least one memory array of the memory device in response to a first command received at the link interface;

transmitter circuitry to transmit to the memory controller the data packet along with the error information;

receiver circuitry to receive write data from the memory controller in association with a write command; and

error detection circuitry to detect an error in the write command and to responsively mask the write command from accessing the at least one memory array;

wherein

the memory device further comprises circuitry to signal an error condition to the memory controller responsive to detection of the error in the write command, and

the memory device comprises circuitry to detect an error in the write data, and to permit storage of the write data in the at least one memory array, notwithstanding error in the write data, in absence of detected error in the write command.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2025
From: RAMBUS INC.
To: SIGNAL LLP
Reel/Frame 073085/0650 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2019
From: HOROWITZ, MARK A.; WARE, FREDERICK A.; TSERN, ELY K.
To: RAMBUS INC
Reel/Frame 051041/0193 →
Continuity (5)
Continuation 14855271 · Sep 15, 2015
Continuation 14827978 · Aug 17, 2015
Continuation 12940942 · Nov 5, 2010
Continuation 11145429 · Jun 3, 2005
Related Publication 20190095264A1 · Mar 28, 2019