NAND Flash Memory Data Flush Reliability via Upper Unit Redundancy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In NAND-type flash memory systems, data written during the flush operation can be lost due to programming failures on upper physical programming units, leading to reliability issues as data stored in lower physical pages is erased and cannot be recovered.
Innovation Solution
A data storing method and memory control circuit unit that temporarily store data in a buffer memory and initiate a flush operation, determining if the physical programming unit is a lower unit; if so, it writes data into a corresponding upper physical programming unit, formed by memory cells on the same word line, to prevent data loss.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is written from buffer memory to lower physical programming units during flush operation, then writing speed is improved, but data reliability deteriorates due to programming failures on upper physical programming units
Solution Approach 1:
The patent applies preliminary action by writing data to both lower and upper physical programming units simultaneously during the flush operation, before the buffer memory is erased. This ensures that even if programming fails occur on either unit, the data remains protected through redundancy, resolving the reliability issue while maintaining high writing speed.
Solution Approach 2:
The patent applies local quality by differentiating the treatment of lower and upper physical programming units. Specifically, when writing to lower physical programming units (which have faster writing speed), the system simultaneously writes to corresponding upper physical programming units to create local redundancy. This targeted approach protects critical data paths while maintaining overall system performance.
2Productivity
If data is stored only in lower physical programming units, then writing efficiency is improved, but data loss risk increases due to programming failures
Solution Approach 1:
The patent applies copying by creating redundant copies of data in both lower and upper physical programming units during the flush operation. This duplication strategy ensures that if one copy is lost due to programming failure, the other copy remains intact, preventing data loss while maintaining writing efficiency through parallel operation.
Solution Approach 2:
The patent applies beforehand cushioning by establishing data redundancy through simultaneous writing to multiple physical programming units before the buffer memory is erased. This preemptive measure creates a safety buffer against potential programming failures, ensuring data protection is in place before any loss can occur.
3Productivity
If buffer memory is erased after flush operation, then memory management efficiency is improved, but data recovery capability is lost upon programming failures
Solution Approach 1:
The patent applies preliminary action by completing all data writing operations to both lower and upper physical programming units before erasing the buffer memory. This sequencing ensures that data is securely stored in non-volatile memory with redundancy established, and only then is the buffer erased, maintaining both management efficiency and recovery capability.
Solution Approach 2:
The patent applies discarding and recovering by strategically erasing buffer memory content after successful redundant writing, while the redundant copies in physical programming units remain preserved. This allows efficient buffer reuse while maintaining data recovery capability through the persistent redundant copies in non-volatile storage.
Data Source
AI summary
A data storing method for storing data in a rewritable non-volatile memory module is provided. The method includes temporarily storing first data into a buffer memory; and starting a flush operation to write the first data from the buffer memory into a first physical programming unit. The method further includes determining whether the first physical programming unit is a lower physical programming unit; and if yes, writing second data into a second physical programming unit, wherein the second physical programming unit belongs to an upper physical programming unit, and the second physical programming unit and the first physical programming unit are formed by the same memory cells disposed on the same word line. Accordingly, the method can effectively prevent the data written during the flush operation from losing due to the programming fail occurred on other physical programming units.


