Managed NAND Memory Controller Local CRC Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional data verification methods in memory devices, such as loading data from the memory device to the host device for CRC calculations, are time-consuming and consume bus resources, posing challenges in ensuring data integrity, especially during communication and manufacturing processes.
Innovation Solution
A memory device with a memory controller that performs data verification by generating and comparing calculated check values locally, allowing the host device or programming appliance to receive only the verification result, reducing the need for data transfer and minimizing resource consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is loaded from the memory device to the host device for CRC calculations, then data verification can be performed, but it consumes bus resources and increases time consumption
Solution Approach 1:
The patent extracts the CRC calculation function from the host device and relocates it to the memory device. The memory controller generates CRC check values locally for stored data and provides only these compact verification values to the host, rather than transferring the entire data payload. This extraction of the verification function to the storage device eliminates the need for large data transfers while maintaining verification capability.
Solution Approach 2:
The patent introduces an intermediary mechanism where the memory controller acts as a verification agent. Instead of the host directly verifying data after retrieval, the memory controller pre-calculates and provides CRC check values as intermediaries. The host then uses these intermediaries to verify data integrity locally, reducing the burden on the bus and host processing resources.
2Reliability
If data is loaded from the memory device to the host device for CRC calculations, then data verification can be performed, but bus resources are consumed
Solution Approach 1:
The patent extracts the CRC calculation function from the host device and relocates it to the memory device. The memory controller generates CRC check values locally for stored data and provides only these compact verification values to the host, rather than transferring the entire data payload. This extraction of the verification function to the storage device eliminates the need for large data transfers while maintaining verification capability.
Solution Approach 2:
The patent changes the parameter being transferred from the full data payload to a compact CRC check value. Instead of transferring N bytes of actual data for verification, only a small fixed-size CRC value (e.g., 32 bits) is transferred. This parameter change dramatically reduces bus resource consumption while preserving the ability to verify data integrity.
3Reliability
If traditional data verification methods are used, then data integrity can be checked, but extensive data transfer is required
Solution Approach 1:
The patent extracts the CRC calculation function from the host device and relocates it to the memory device. The memory controller generates CRC check values locally for stored data and provides only these compact verification values to the host, rather than transferring the entire data payload. This extraction of the verification function to the storage device eliminates the need for large data transfers while maintaining verification capability.
Solution Approach 2:
The patent applies partial action by transferring only the essential verification information (CRC check value) rather than the complete data set. This partial transfer approach provides sufficient information for integrity verification without the excessive action of moving the entire data payload, thereby improving verification efficiency.
Data Source
AI summary
Various examples are directed to systems and methods involving a managed NAND non-volatile memory device comprising a memory array and a memory controller. The memory controller may receive a verification request from a requesting device, the verification request comprising an indication of a first portion of the memory array, and a first known check value. The memory controller may apply an operation based at least in part on first data from the first portion of the memory array to generate a calculated check value and determine verification result data based at least in part on the first known check value and the calculated check value.


