Incremental CRC Generation for Memory Sub-System Data Integrity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional memory sub-systems cannot effectively detect errors introduced during data modification operations such as encryption, compression, or metadata appending, as they lack the necessary error-checking data to validate the integrity of modified data.
Innovation Solution
The memory sub-system generates error-checking data at each modification stage, using both the original and modified data to create incremental error-checking codes, allowing for error detection and corrective actions during data storage and retrieval.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the memory sub-system performs data modification operations (encryption, compression, metadata appending), then data security and efficiency are improved, but error detection capability deteriorates due to lack of error-checking data
Solution Approach 1:
The patent applies preliminary action by generating error-checking data (CRC codes) at each modification stage before the final data is stored. The system calculates incremental CRC values during encryption, compression, and metadata appending operations, so that error-checking data is already prepared and available when needed for validation, eliminating the need for complex post-modification error detection mechanisms
Solution Approach 2:
The patent segments the error-checking process into multiple incremental stages corresponding to each data modification operation. Instead of performing a single comprehensive error check after all modifications, the system divides error-checking into separate incremental CRC calculations for each modification step (encryption, compression, metadata appending), making the error-detection mechanism more manageable and integrated with the modification process
2Reliability
If error-checking data is generated at each modification stage, then error detection capability is improved, but computational overhead increases
Solution Approach 1:
The patent implements continuity of useful action by performing error-checking calculations continuously during data modification operations rather than as separate batch processes. The incremental CRC generation occurs in parallel with or during the modification operations themselves, ensuring that error-checking is an ongoing integrated process that leverages the computational work already being performed on the data
Solution Approach 2:
The patent changes the parameter of error-checking from a final comprehensive check to incremental checks with changing parameters at each modification stage. The CRC calculation parameters are updated incrementally to match the state of data at each modification point, allowing error-checking to adapt to the evolving data state without requiring full recalculation, thus reducing computational overhead
Data Source
AI summary
First and second data are identified, such that the second data is based on a modification operation performed on the first data. First error-checking data comprising a Cyclic Redundancy Check (CRC) value of the first data is identified. Incremental error-checking data is generated based on a difference between the first data and the second data. Updated first error-checking data is generated based on a combination of the first error-checking data and the incremental error-checking data. The updated first error-checking data is compared to second error-checking data generated from a CRC value of the second data to determine whether the second data contains an error.


