CXL Memory Module ECC Poison Flag Handling via Error Injection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Semiconductor memory devices face challenges in efficiently managing poison flags due to unreliable data transmission from host devices, leading to potential mis-correction during error correction processes.

Innovation Solution

The implementation of a controller with an error correction code (ECC) circuit and an error injecting circuit that generates and injects variable error symbols into codewords to manage poison flags efficiently, using Reed-Solomon encoding and error-and-erasure decoding to exceed the error correction capability of the ECC circuit.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a volatile memory device manages poison flags together with data, then poison flag management is achieved, but device complexity increases due to additional management requirements

Engineering Contradiction:
Improvepoison flag managementVSAvoidmanagement complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the poison flag management function with the existing ECC (error correction code) structure. The controller determines whether to inject error symbols based on poison flag information, and the memory device stores codewords that may contain injected error symbols. This integration allows the system to manage poison flags without adding separate dedicated storage structures, thereby reducing overall device complexity while maintaining reliability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces error symbols as an intermediary mechanism between the poison flag and the stored data. Instead of directly storing poison flags in memory, the system uses error symbols injected into codewords as a mediator to encode poison flag information. This intermediary approach allows the memory device to indirectly manage poison flags through the existing ECC framework, avoiding the need for additional management overhead.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If error correction capability is increased to handle poisoned data, then data reliability improves, but the risk of mis-correction increases when poison flags are not properly managed

Engineering Contradiction:
Improvedata reliabilityVSAvoidmis-correction risk
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary anti-action by injecting error symbols into codewords before storage when poison flags are detected. This pre-injection of error symbols creates a deliberate error pattern that prevents the ECC circuit from performing incorrect corrections. When the memory device reads the data, the injected error symbols ensure that the ECC decoder identifies the poisoned state and avoids attempting correction, thereby preventing mis-correction while maintaining data reliability.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The patent converts the harmful effect of poison flags into a beneficial error correction mechanism. Instead of treating poison flags as mere data corruption markers, the system uses injected error symbols to actively prevent mis-correction. The error symbols that would normally be seen as harmful are instead utilized as a protective mechanism that guides the ECC decoder to correctly identify and handle poisoned data, transforming the potential harm into a protective benefit.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

3Reliability

If additional storage space is allocated for poison flags, then poison flag management becomes more reliable, but storage capacity is reduced

Engineering Contradiction:
Improvepoison flag management reliabilityVSAvoidstorage capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges the poison flag storage function with the existing ECC codeword structure. The controller integrates poison flag information into the error correction code processing flow, determining whether to inject error symbols based on poison flag status. This merging allows the system to store and manage poison flag information within the existing storage framework without allocating additional dedicated space, thereby maintaining storage capacity while ensuring reliable poison flag management.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent makes the ECC codeword structure multi-functional by using it for both error correction and poison flag management. The same codeword that stores data and parity information for error correction also encodes poison flag status through injected error symbols. This universal approach allows the system to perform multiple functions (error correction and poison flag management) within the existing storage capacity, eliminating the need for separate dedicated storage for poison flags.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS12524302B2Semiconductor memory device and operating method thereof
Publication Date: 2026.01.13 SAMSUNG ELECTRONICS CO LTD
  • US12524302B2 patent drawing
  • US12524302B2 patent drawing
  • US12524302B2 patent drawing

AI summary

An example CXL (Compute eXpress Link)-based memory module includes a memory device and a controller. The memory device includes a plurality of volatile memory cells and stores data or reads the stored data. The controller communicates with a host device through a CXL interface and controls the memory device. The controller includes an error correction code (ECC) circuit that generates a first codeword by adding a parity vector generated based on Reed-Solomon encoding to data received from the host device, an error injecting circuit that generates an error symbol and generates a second codeword by injecting the error symbol into at least a portion of the first codeword, and a memory device interface that controls the memory device such that the second codeword where the error symbol is injected is stored in the memory device. The controller determines a number of error symbols to be injected into the second codeword.