IP Library Granted Patent US 9,558,066
Granted Patent B2
US 9,558,066 · App. 14/498,657 · Granted Jan 31, 2017

Exchanging ECC metadata between memory and host system

Inventors: Nadav Bonen (Ofer, IS); Kuljit S Bains (Olympia, WA); John B Halbert (Beaverton, OR)
Assignee: INTEL CORPORATION
G06F11/1076G06F11/1004
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 9,558,066
App. No.
14/498,657
Granted
Jan 31, 2017
Kind
B2
Abstract

Providing access to an external memory controller to internal error correction bits from a memory device for use as metadata bits by the memory controller. In a first mode the memory device applies internal error correction bits for internal error correction at the memory device. In a second mode the memory device provides access to the internal error correction bits to the memory controller to allow the memory controller to use the data.

Claims (37)

1. A method for interfacing a memory device and a memory controller, comprising:

determining if a memory device is in a first mode or a second mode; and

in the first mode, applying internal error correction bits only internally at the memory device to perform error correction prior to sending read data to the memory controller, where the error correction bits and error correction are transparent to the memory controller; and

in the second mode, providing access to the internal error correction bits by the memory controller as metadata bits for use by the memory controller to perform error correction external to the memory device.

2. The method of claim 1 , wherein providing access to the internal error correction bits comprises providing access to the internal error correction bits by the memory controller to enable the memory controller to improve error correction for data exchanged with the memory device.

3. The method of claim 1 , wherein providing access to the internal error correction bits comprises providing access to the internal error correction bits by the memory controller to enable the memory controller to correct errors instead of the memory device correcting errors internally.

4. The method of claim 3 , wherein providing access to the internal error correction bits by the memory controller to enable the memory controller to correct errors further comprises, in the second mode:

generating internal error correction bits internally at the memory device in response to a read request; and

sending the internal error correction bits to the memory controller for the memory controller to apply error correction to data bits based on the internal error correction bits.

5. The method of claim 3 , wherein providing access to the internal error correction bits by the memory controller to enable the memory controller to correct errors further comprises, in the second mode:

receiving error correction bits computed by the memory controller in conjunction with a write request; and

storing the error correction bits internally at the memory device.

6. The method of claim 1 , wherein providing access to the internal error correction bits by the memory controller comprises the memory device transferring the internal error correction bits to the memory controller on signal lines that are otherwise inactive for read and write.

7. The method of claim 1 , wherein providing access to the internal error correction bits by the memory controller further comprises:

the memory device providing access to the internal error correction bits as one of multiple different memory devices that provide access to internal error correction bits to the memory controller to increase a number of metadata bits available to the memory controller.

8. A memory device to interface with a memory controller in a memory subsystem, comprising:

multiple memory cells to store data;

internal error correction hardware including storage separate from the memory cells to store internal error correction bits; and

logic to determine if the memory device is in a first mode or a second mode, wherein in the first mode the logic is to apply the internal error correction bits only internally with the internal error correction hardware to perform error correction prior to transmission of read data to the memory controller, and wherein in the second mode the logic is to provide access to the internal error correction bits by the memory controller as metadata bits for use by the memory controller to perform error correction external to the memory device.

9. The memory device of claim 8 , wherein the logic is to provide access to the internal error correction bits by the memory controller as metadata bits to enable the memory controller to improve error correction for data exchanged with the memory device.

10. The memory device of claim 8 , wherein the logic is to provide access to the internal error correction bits by the memory controller to enable the memory controller to correct errors instead of the memory device correcting errors internally.

11. The memory device of claim 10 , wherein the logic is to provide access to the internal error correction bits by the memory controller to enable the memory controller to correct errors including the error correction logic to generate the internal error correction bits in response to a read request and the logic send the internal error correction bits to cause the memory controller to apply error correction to data bits based on the internal error correction bits.

12. The memory device of claim 10 , wherein the logic is to provide access to the internal error correction bits by the memory controller to correct errors including the logic to receive error correction bits computed by the memory controller in conjunction with a write request and store the error correction bits internally in the storage separate from the memory cells.

13. The memory device of claim 8 , wherein the logic is to exchange the internal error correction bits with the memory controller on signal lines that are otherwise inactive for read and write.

14. An electronic device with a memory subsystem, comprising:

a memory controller;

a memory device to interface with the memory controller, the memory device including

multiple memory cells to store data;

internal error correction hardware including storage separate from the memory cells to store internal error correction bits; and

logic to determine if the memory device is in a first mode or a second mode, wherein in the first mode the logic is to apply the error correction bits only internally with the internal error correction hardware to perform error correction prior to transmission of read data to the memory controller, and wherein in the second mode the logic is to provide access to the internal error correction bits by the memory controller as metadata bits for use by the memory controller to perform error correction external to the memory device; and

a touchscreen display coupled to the memory device to generate a display based on data accessed from the memory devices.

15. The electronic device of claim 14 , wherein the logic is to provide access to the internal error correction bits by the memory controller as metadata bits to enable the memory controller to improve error correction for data exchanged with the memory device.

16. The electronic device of claim 14 , wherein the logic is to provide access to the internal error correction bits by the memory controller to enable the memory controller to correct errors instead of the memory device correcting errors internally.

17. The electronic device of claim 16 , wherein the logic is to provide access to the internal error correction bits by the memory controller to enable the memory controller to correct errors including the error correction logic to generate the internal error correction bits in response to a read request and the logic send the internal error correction bits to cause the memory controller to apply error correction to data bits based on the internal error correction bits.

18. The electronic device of claim 16 , wherein the logic is to provide access to the internal error correction bits by the memory controller to correct errors including the logic to receive error correction bits computed by the memory controller in conjunction with a write request and store the error correction bits internally in the storage separate from the memory cells.

19. The electronic device of claim 14 , wherein the logic is to exchange the internal error correction bits with the memory controller on signal lines that are otherwise inactive for read and write.

20. The electronic device of claim 14 , wherein the memory device is one of multiple memory devices to interface with the memory controller, and further comprising the memory controller to include logic to exchange the internal error correction bits with the memory device and to exchange internal error correction bits with multiple different memory devices to increase a number of metadata bits available to the memory controller.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2025
From: INTEL CORPORATION
To: SK HYNIX NAND PRODU CT SOLUTIONS CORP. (DBA SOLIDIGM)
Reel/Frame 072915/0674 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2017
From: BONEN, NADAV; BAINS, KULJIT S.; HALBERT, JOHN B.
To: INTEL CORPORATION
Reel/Frame 042644/0126 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 20, 2015
From: BONEN, NADAV; BAINS, KULJIT S; HALBERT, JOHN B
To: INTEL CORPORATION
Reel/Frame 036838/0050 →
Continuity (1)
Related Publication 20160092307A1 · Mar 31, 2016