Rank-Specific CRC Control for DDDC Memory Error Protection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Dual device data correction (DDDC) memory modules face weakened error correction code (ECC) protection and increased risk of silent data corruption (SDC) when a second device fails, and cyclic redundancy check (CRC) codes, while reducing SDC, can cause performance degradation.
Innovation Solution
Implementing rank-specific dynamic memory bus controls through a micro-architectural solution that enables CRC on a specific rank by changing command blackout timer thresholds and using a CRC enabler coupled with timing components to accommodate CRC-enabled ranks, allowing for dynamic activation of CRC based on device failure conditions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If cyclic redundancy check (CRC) codes are used to reduce silent data corruption (SDC), then data integrity is improved, but system performance degrades
Solution Approach 1:
The patent implements dynamic CRC activation where the CRC function is enabled or disabled based on real-time detection of device failures. When a device failure is detected in a rank, CRC is automatically activated for that rank to protect against SDC. When no failures are detected, CRC remains disabled to maintain optimal performance. This dynamic adaptation resolves the contradiction by making CRC protection conditional rather than constant.
Solution Approach 2:
The system changes the operational parameter of CRC activation status based on the detected condition of memory devices. The CRC function transitions between active and inactive states depending on whether device failures have been detected. This parameter change allows the system to optimize between performance (CRC inactive) and reliability (CRC active) based on actual runtime conditions.
2Reliability
If CRC is activated for a rank with device failure, then protection against silent data corruption is improved, but command processing time increases due to extended blackout periods
Solution Approach 1:
The patent applies CRC protection locally only to specific ranks that have experienced device failures, rather than enabling CRC system-wide. Each rank can independently have CRC enabled or disabled based on its specific condition. This local application of CRC ensures that only affected ranks incur the performance penalty of extended command blackout periods, while unaffected ranks maintain normal processing speeds.
Solution Approach 2:
The memory system is segmented into multiple independent ranks, each with its own failure status and CRC activation state. This segmentation allows the system to apply CRC protection selectively to individual ranks rather than forcing all ranks to use CRC. The timing components are also segmented to track and manage command blackout periods for each rank independently.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Embodiments of the present disclosure describe methods, apparatus, and system configurations for providing rank-specific cyclic redundancy checks in memory systems.