Dynamic application of error correction code (ECC) based on error type

US9691505B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9691505-B2
Application numberUS-201514670412-A
CountryUS
Kind codeB2
Filing dateMar 27, 2015
Priority dateMar 27, 2015
Publication dateJun 27, 2017
Grant dateJun 27, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Error correction in a memory subsystem includes determining whether an error is a transient error or a persistent error, and adjusting an approach to ECC (error checking and correction) based on error type. The type of error can be determined by a built in self-test. If the error is a persistent error, the memory controller can perform in erasure mode, including correcting an erasure for an identified error location prior to applying an ECC correction algorithm. Otherwise, if the error is transient, the memory controller can perform standard full ECC correction by applying the ECC correction algorithm.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for error correction in a memory subsystem, comprising: detecting, with ECC (error checking and correction) logic, an error in read data from a memory device during an access operation to a memory address of the memory device; in response to detecting the error, executing a built in self-test (BIST) to determine if the error is a transient error at the memory address or a persistent error at the memory address; and if the error is a persistent error, performing ECC in erasure mode, including correcting an erasure for the memory address prior to applying an ECC correction algorithm; otherwise, performing full ECC correction, including applying the ECC correction algorithm without erasures, treating the error as a random bit error. 2. The method of claim 1 , wherein the memory device comprises a volatile memory device. 3. The method of claim 1 , wherein the memory device comprises an in-package memory device. 4. The method of claim 1 , wherein the memory device comprises a x4 DIMM (dual inline memory module). 5. The method of claim 1 , wherein the memory device comprises a x8 DIMM (dual inline memory module). 6. The method of claim 1 , wherein executing the BIST further comprises performing a loopback write test to the memory address. 7. The method of claim 6 , wherein executing the BIST further comprises performing a single pattern write test. 8. The method of claim 6 , wherein executing the BIST further comprises performing a single write test of a pattern that is an inverse of data that resulted in a non-zero syndrome. 9. The method of claim 1 , wherein applying the ECC correction algorithm comprises performing a single device data correction (SDDC) routine. 10. A memory controller that performs error correction in a memory subsystem, comprising: error checking and correction (ECC) logic to detect an error in data received from a memory device in response to a request to read a memory address of the memory device; and I/O (input/output) hardware coupled to the memory device to send a signal to cause the memory device to perform a built in self-test (BIST) of the memory address to determine if the error is a transient error or a persistent error; wherein the ECC logic is to perform ECC in erasure mode if the error is a persistent error, including to correct an erasure for the memory address prior to application of an ECC correction algorithm; otherwise, the ECC logic is to perform full ECC correction, including application of the ECC correction algorithm without erasures, to treat the error as a random bit error. 11. The memory controller of claim 10 , wherein the memory device is an in-package memory device packaged with the memory controller and a host processor in a system on a chip. 12. The memory controller of claim 10 , wherein the memory device comprises a x8 DIMM (dual inline memory module). 13. The memory controller of claim 10 , wherein the I/O hardware is to send a command to the memory device to cause the memory device to perform a loopback write test to the memory address. 14. The memory controller of claim 13 , wherein the loopback write test comprises a single pattern write test. 15. The memory controller of claim 13 , wherein the loopback write test comprises a single write test of a pattern that is an inverse of data that resulted in a non-zero syndrome. 16. The memory controller of claim 10 , wherein the ECC logic is to perform single device data correction (SDDC) level correction. 17. An electronic device with a memory subsystem, comprising: multiple DRAMs (dynamic random access memory devices) each including a memory array of separately addressable memory locations; a memory controller including error checking and correction (ECC) logic to detect an error in data received from a memory device in response to a request to read a memory address of the memory device; and I/O (input/output) hardware coupled to the memory device to send a signal to cause the memory device to perform a built in self-test (BIST) of the memory address to determine if the error is a transient error or a persistent error; wherein the ECC logic is to perform ECC in erasure mode if the error is a persistent error, including to correct an erasure for the memory address prior to application of an ECC correction algorithm; otherwise, the ECC logic is to perform full ECC correction, including application of the ECC correction algorithm without erasures, to treat the error as a random bit error; and a chassis system to couple the memory subsystem to a blade server. 18. The electronic device of claim 17 , wherein the memory device comprises a x8 DIMM (dual inline memory module). 19. The electronic device of claim 17 , wherein the memory controller I/O hardware is to send a command to the memory device to cause the memory device to perform a loopback write test to the memory address. 20. The electronic device of claim 17 , wherein the ECC logic is to perform single device data correction (SDDC) level correction.

Assignees

Inventors

Classifications

  • Online error correction · CPC title

  • Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title

  • Indication or identification of errors, e.g. for repair · CPC title

  • Protection of memory contents; Detection of errors in memory contents · CPC title

  • using arrangements adapted for a specific error detection or correction feature · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9691505B2 cover?
Error correction in a memory subsystem includes determining whether an error is a transient error or a persistent error, and adjusting an approach to ECC (error checking and correction) based on error type. The type of error can be determined by a built in self-test. If the error is a persistent error, the memory controller can perform in erasure mode, including correcting an erasure for an ide…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F11/1048. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 27 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).