Flash Memory Metadata Encoding for End-to-End Integrity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Metadata errors occur when flash memory controllers temporarily store data from host devices in SRAM or DRAM during writing, leading to incorrect content and reading issues.
Innovation Solution
A method involving cyclic redundancy check (CRC) operations and encoding metadata with CRC codes to generate adjusted parity codes, combined with error correction codes, ensures accurate data and metadata storage in flash memory modules, eliminating the need for additional metadata storage and reducing errors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If metadata is temporarily stored in SRAM or DRAM during writing, then the flash memory controller can process data efficiently, but metadata errors occur leading to incorrect content being written
Solution Approach 1:
The patent applies preliminary action by performing CRC calculation on metadata before it is stored in SRAM/DRAM buffers. The CRC code is calculated in advance and stored alongside the metadata, so that when data is written, the integrity of metadata can be verified without re-calculating during the writing process. This resolves the contradiction by maintaining reliability through pre-verification while preserving processing efficiency.
Solution Approach 2:
The patent implements feedback by using the calculated CRC code to verify metadata integrity during and after the writing process. The system continuously monitors whether the metadata remains unchanged from its initial state, and can trigger error handling if discrepancies are detected. This feedback mechanism ensures metadata reliability while allowing efficient buffer-based processing to continue.
2Reliability
If additional CRC operations are performed on metadata to protect against errors, then data integrity improves, but storage space and processing overhead increase
Solution Approach 1:
The patent merges the CRC protection mechanism with the existing metadata structure by integrating the CRC code directly into the metadata field in the flash memory page. Instead of treating metadata and CRC as separate entities requiring separate storage and processing, the system combines them into a unified structure. This reduces storage overhead and simplifies the processing workflow while maintaining comprehensive data integrity protection.
Solution Approach 2:
The patent applies self-service by enabling the metadata to carry its own integrity verification information (CRC code) within its structured data format. The metadata structure includes fields that automatically contain the necessary verification data, allowing the system to verify metadata integrity without requiring external verification structures or additional processing steps. This self-contained approach reduces overall system complexity.
Data Source
AI summary
The present invention provides a method for accessing a flash memory module, wherein the method comprises: receiving data and a corresponding metadata from a host device; performing a CRC operation upon the data to generate a CRC code; encoding the metadata and the CRC code to generate an adjusted parity code; encoding the data and the adjusted parity code to generate encoded data, wherein the encoded data comprises the data, the adjusted parity code and an error correction code corresponding to the data and the adjusted parity code; and writing the encoded data and the metadata to a page of a block of a flash memory module.


