Iterative DRAM ECC Decoding for Device Failure Correction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing ECC techniques for memory devices are costly in terms of parity bit requirements and fail to efficiently detect and correct errors due to single device failures or single row failures, leading to uncorrectable errors and silent data corruption.

Innovation Solution

The implementation of an iterative ECC decoding system that leverages knowledge of erasure locations to identify faulty DRAM components, reducing the search space and decoding delays, and using Reed-Solomon codes to correct more erasures than random errors, thereby addressing the limitations of conventional ECC schemes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If chipkill ECC techniques are used to detect and correct entire device failures, then reliability is improved, but parity bit requirements increase significantly

Engineering Contradiction:
Improvedevice failure detection and correctionVSAvoidparity bit requirements
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the error correction approach by distinguishing between different failure modes (access-corrupting failures vs. complete device failures) and applying different correction strategies. Instead of using comprehensive chipkill ECC for all scenarios, the system uses iterative decoding that targets specific failure patterns, reducing the need for excessive parity bits while maintaining reliability for the most common failure modes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter of error correction by shifting from traditional ECC that corrects random bit errors to iterative decoding that handles erasures (known error locations). This parameter change allows the system to achieve better correction capability with fewer parity bits, as erasure correction is more efficient than general error correction.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If conventional ECC techniques are used that cannot detect and correct entire device failures, then parity bit overhead is reduced, but uncorrectable errors increase

Engineering Contradiction:
Improveparity bit overheadVSAvoiduncorrectable error rate
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent introduces dynamics into the error correction process through iterative decoding. The system dynamically adapts its correction strategy by attempting to decode with different assumptions about which device caused the failure. This dynamic approach allows the system to handle access-corrupting failures effectively with reduced parity overhead, as the iterative process can identify and correct errors even when the initial decoding assumption is incorrect.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The iterative decoding mechanism incorporates feedback by using the results of each decoding attempt to inform subsequent attempts. When a decoding attempt fails, the system uses syndrome information and failure mode analysis to guide the next decoding attempt, creating a feedback loop that improves correction success rates without requiring additional parity bits.

Inventive Principle:
Principle #23Feedback

3Reliability

If ECC techniques are designed to correct access-corrupting failures, then reliability for common failure modes is improved, but decoding complexity increases

Engineering Contradiction:
Improveaccess-corrupting failure correctionVSAvoiddecoding complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-characterizing the failure modes (access-corrupting vs. complete device failures) and pre-computing syndromes that help identify the failure type. This preliminary analysis allows the iterative decoding process to start with informed assumptions, reducing the overall decoding complexity compared to attempting to correct all possible error patterns without prior classification.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system applies local quality by tailoring the decoding strategy to the specific failure mode detected. Instead of using a uniform complex decoding approach for all errors, the system adapts its decoding complexity based on the local characteristics of the failure (e.g., which device is suspected, whether it's an access-corrupting or complete failure), optimizing the balance between reliability and complexity for each case.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12170531B2Iterative decoder for correcting dram device failures
Publication Date: 2024.12.17 MICRON TECHNOLOGY INC
  • US12170531B2 patent drawing
  • US12170531B2 patent drawing
  • US12170531B2 patent drawing

AI summary

Provided is a memory system comprising an error correction code (ECC) decoder configured to receive data from a memory. The ECC decoder includes a syndrome generator configured to calculate at least one of syndrome vector and an erasure value, the calculation being devoid of erasure location information and an error-location polynomial generator configured to determine error location and error/erasure value polynomials responsive to syndrome and erasure calculation values output from the syndrome generator. An error value generator confirms error values at one or more known error locations based upon the determined error/erasure value polynomials, and an error location generator search for an error evaluation value to confirm the known error locations based upon the determined error location polynomials. Outputs of the error value generator and the error location generator are combined to produce corrected data.