Memory Controller Poison Propagation Without Spare Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory controller systems face challenges in differentiating between errors caused by memory faults and poisoned write data, especially when spare storage is not available, leading to difficulties in invalidating memory content and accurately reporting errors to the host.
Innovation Solution
The method involves converting write data with a poison flag into a pre-fixed data pattern, generating a parity code, injecting a correctable error, and writing it into memory, allowing for error correction and differentiation between memory faults and poisoned data during read operations by comparing the data and parity code with a known pattern.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If poison information is stored in spare storage, then error differentiation is improved, but storage resource consumption increases
Solution Approach 1:
The patent extracts the poison information indication from separate spare storage and embeds it within the data structure itself by using a specific data pattern (e.g., all zeros or all ones) to represent poisoned data, thereby eliminating the need for additional storage resources while maintaining error differentiation capability
Solution Approach 2:
The data pattern serves multiple functions: it acts as both the stored data representation and the poison information indicator. By using a predetermined recognizable pattern to signify poisoned data, the system achieves multi-functionality without requiring dedicated storage space for poison flags
2Reliability
If data is invalidated to prevent poison propagation, then error containment is improved, but data accessibility deteriorates
Solution Approach 1:
The system performs preliminary detection during the write operation by recognizing the predetermined data pattern and setting the poison flag before the data is actually read. This allows the system to prepare error handling in advance, enabling selective invalidation only when needed rather than universally invalidating all data
Solution Approach 2:
The poison flag provides feedback information that travels with the data through the storage system. This feedback mechanism allows downstream components to make informed decisions about data validity and accessibility, enabling selective handling rather than blanket invalidation
3Reliability
If poison flag is added to track erroneous data, then error tracking is improved, but device complexity increases
Solution Approach 1:
The patent merges the poison information indicator with the existing data structure by using a predetermined data pattern that is inherently part of the data representation. This integration approach combines error tracking functionality with the data storage structure itself, avoiding the need for separate parallel tracking structures and reducing overall system complexity
Data Source
AI summary
Systems and methods for propagating poison information are provided. Embodiments include receiving write data having a poison flag asserted indicating the data to be written to a memory device is erroneous. Embodiments further include converting the write data to a pre-fixed data pattern and generating a parity code, based upon, at least in part, the pre-fixed data pattern. Embodiments may also include injecting a correctable error into the write-data or parity code and writing the write data and parity code into the memory device. The correctable error injection may occur in the data or in the parity code and during the read the comparison may occur accordingly.


