CRC Comparison for Memory Error Cause Identification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems struggle to accurately determine the cause of cyclic redundancy check (CRC) errors, which can lead to inefficient and ineffective error correction techniques.

Innovation Solution

The implementation of a system where both the host system and the memory system compare CRC values associated with data to determine the cause of CRC errors, allowing for more granular error detection and efficient corrective actions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the memory system transmits additional CRC values to the host system for error cause determination, then the error detection precision is improved, but the communication overhead and transmission time increase

Engineering Contradiction:
Improveerror detection precisionVSAvoidcommunication overhead
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The error detection process is segmented into multiple stages: the memory system performs initial CRC verification and identifies error causes, then transmits only relevant diagnostic information (such as error cause indicators or differential CRC values) to the host system. This segmentation allows precise error detection at the memory system level while minimizing communication overhead to the host system.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the system implements granular error cause determination through CRC comparison, then the reliability of error correction is improved, but the device complexity increases

Engineering Contradiction:
Improveerror correction reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The memory system autonomously performs CRC value comparison and error cause determination without requiring complex host system intervention. The memory system self-diagnoses error causes by comparing transmitted CRC values with recalculated values, and self-determines whether errors occurred during data transmission, storage, or retrieval. This self-service approach improves error correction reliability while avoiding the need for complex distributed verification systems.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If the memory system recalculates and compares CRC values internally, then the error cause identification accuracy is improved, but the processing time and energy consumption increase

Engineering Contradiction:
Improveerror cause identification accuracyVSAvoidprocessing energy
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The memory system performs CRC value recalculation and comparison during the data write or read operations, before error conditions manifest or require host system intervention. By preliminarily determining error causes during normal operational cycles, the system achieves high error identification accuracy without requiring separate energy-intensive diagnostic operations when errors occur.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250103425A1Cyclic redundancy check comparison for error detection
Publication Date: 2025.03.27 MICRON TECHNOLOGY INC
  • US20250103425A1 patent drawing
  • US20250103425A1 patent drawing
  • US20250103425A1 patent drawing

AI summary

Methods, systems, and devices for cyclic redundancy check (CRC) comparison for error detection are described. A host system may determine an error cause associated with writing data to or reading data from a memory system. For writing data, the host system may transmit data and a CRC value to the memory system. The memory system may calculate another CRC value and indicate an error and the calculated CRC value based on the received and calculated CRC values being different. The host system may compare the calculated CRC value and the originally transmitted CRC value to determine an error cause. For reading data, the host system may receive data and an associated CRC value from the memory system, calculate a CRC value using the received data, and determine an error cause based on a comparison of the received CRC value, the calculated CRC, and an expected CRC value.