IP Library › Granted Patent US 12,126,361
Granted Patent B2
US 12,126,361 · App. 17/700,022 · Granted Oct 22, 2024

Techniques to improve latency of retry flow in memory controllers

Inventors: Poovaiah M. Palangappa (San Jose, CA); Zion S. Kwok (Burnaby, CA); Ravi H. Motwani (Fremont, CA)
Assignee: Intel Corporation
H03M13/159G06F3/0619G06F3/0644G06F3/0659G06F3/0679H03M13/1105H03M13/1177
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 12,126,361
App. No.
17/700,022
Granted
Oct 22, 2024
Kind
B2
Abstract

A memory controller system includes error correction circuitry and erasure decoder circuitry. A retry flow is triggered when the memory controller's error checking and correction (ECC) detects an uncorrectable codeword. Error correction circuitry generates erasure codewords from the codeword with uncorrectable errors. The memory controller computes the syndrome weight of the erasure codewords. For example, the erasure decoder circuitry receives the erasure codewords and computes the syndrome weights. Error correction circuitry orders the erasure codewords based on their corresponding syndrome weights. Then error correction circuitry selects a subset of the codewords, and sends them to erasure decoder circuitry. Erasure decoder circuitry receives the selected codewords and decodes them.

Claims (56)

1. A memory controller comprising:

error correction circuitry

to generate a plurality of erasure codewords from a codeword in response to detection of an uncorrectable error, the uncorrectable error being an error in the codeword that is uncorrectable with an error checking and correction (ECC) code, and

to select a subset of the plurality of erasure codewords based on syndrome weights of the erasure codewords; and

erasure decoder circuitry

to compute the syndrome weights of the plurality of erasure codewords, and

to perform erasure decoding with the subset of the plurality of erasure codewords in response to detection of the uncorrectable error.

2. The memory controller of claim 1 , wherein the codeword comprises a group of elements obtained from a given memory partition, and wherein:

the error correction circuitry is to replace elements of the group of elements with erasures to generate an erasure codeword of the plurality of erasure codewords corresponding to the given memory partition.

3. The memory controller of claim 1 , wherein the codeword comprises a group of elements obtained from a given memory die, and wherein:

the error correction circuitry is to replace elements of the group of elements with erasures to generate an erasure codeword of the plurality of erasure codewords corresponding to the given memory die.

4. The memory controller of claim 1 , wherein:

the error correction circuitry is to identify erasure codewords with smallest syndrome weights, and select the erasure codewords with the smallest syndrome weights as the subset of the plurality of erasure codewords to be decoded.

5. The memory controller of claim 1 , wherein

the erasure decoder circuitry comprises a low-density parity-check (LDPC) decoder.

6. The memory controller of claim 5 , wherein:

the erasure decoder circuitry is to compute the syndrome weight from the plurality of the erasure codewords and a low-density parity-check (LDPC) parity check matrix.

7. The memory controller of claim 1 , comprising:

storage circuitry to store the syndrome weights of the plurality of erasure codewords.

8. The memory controller of claim 1 , wherein:

a first erasure codeword of the subset of the plurality of erasure codewords is decoded before a second erasure codeword of the subset of the plurality of erasure codewords when the syndrome weight of the first erasure codeword is less than the syndrome weight of the second erasure codeword.

9. A computer system comprising:

a processor; and

a memory controller including:

error correction circuitry

to generate a plurality of erasure codewords from a codeword in response to detection of an uncorrectable error, the uncorrectable error being an error in the codeword that is uncorrectable with an error checking and correction (ECC) code, and

to select a subset of the plurality of erasure codewords based on syndrome weights of the erasure codewords and erasure decoder circuitry

to compute the syndrome weights of the plurality of erasure codewords, and

to perform erasure decoding with the subset of the plurality of erasure codewords in response to detection of the uncorrectable error.

10. The computer system of claim 9 , wherein the codeword comprises a group of elements obtained from a given memory partition, and wherein:

the error correction circuitry is to replace elements of the group of elements with erasures to generate an erasure codeword of the plurality of erasure codewords corresponding to the given memory partition.

11. The computer system of claim 9 , wherein the codeword comprises a group of elements obtained from a given memory die, and wherein:

the error correction circuitry is to replace elements of the group of elements with erasures to generate an erasure codeword of the plurality of erasure codewords corresponding to the given memory die.

12. The computer system of claim 9 , wherein:

the error correction circuitry is to identify erasure codewords with smallest syndrome weights, and select the erasure codewords with the smallest syndrome weights as the subset of the plurality of erasure codewords to be decoded.

13. The computer system of claim 9 , wherein

the erasure decoder circuitry comprises a low-density parity-check (LDPC) decoder.

14. The computer system of claim 13 , wherein:

the erasure decoder circuitry is to compute the syndrome weight from the plurality of the erasure codewords and a low-density parity-check (LDPC) parity check matrix.

15. The computer system of claim 9 , comprising:

storage circuitry to store the syndrome weights of the erasure codewords.

16. The computer system of claim 9 , wherein:

a first erasure codeword of the subset of the plurality of erasure codewords is decoded before a second erasure codeword of the subset of the plurality of erasure codewords when the syndrome weight of the first erasure codeword is less than the syndrome weight of the second erasure codeword.

17. A method comprising:

detecting an uncorrectable error, wherein the uncorrectable error being an error in a codeword that is uncorrectable with an error checking and correction (ECC) code;

receiving an indication that the uncorrectable error is detected;

generating a plurality of erasure codewords from the codeword;

generating syndrome weights of the plurality of erasure codewords;

selecting a subset of the plurality of erasure codewords based on syndrome weights of the plurality of erasure codewords; and

decoding the erasure codewords of the subset of the plurality of erasure codewords.

18. The method of claim 17 , wherein:

generating an erasure codeword of the plurality of erasure codewords corresponding to a given memory partition to include replacing elements of the codeword obtained from the given memory partition with erasures.

19. The method of claim 17 , wherein:

generating an erasure codeword of the plurality of erasure codewords corresponding to a given memory die to include replacing elements of the codeword obtained from the given memory die with erasures.

20. The method of claim 17 , wherein

decoding includes execution of an implementation of a low-density parity-check (LDPC) decoder.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2025
From: INTEL CORPORATION
To: SK HYNIX NAND PRODUCT SOLUTIONS CORP. (DBA SOLIDIGM)
Reel/Frame 072792/0266 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2022
From: PALANGAPPA, POOVAIAH M.; KWOK, ZION S.; MOTWANI, RAVI H.
To: INTEL CORPORATION
Reel/Frame 059372/0800 →
Continuity (1)
Related Publication 20220209794A1 · Jun 30, 2022
Cited By (1)
US 12,536,065