Non-Volatile Memory Latch Data Preservation Mechanism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional non-volatile memory programming techniques often result in data loss during the programming process, making it difficult to recover original program data in case of errors, as data stored in latches is overwritten or lost, leading to challenges in error recovery and performance penalties.
Innovation Solution
A method is introduced where data is stored in multiple latches, with specific latches used for programming and verify status, allowing for the preservation and recovery of program data through logical operations in case of errors, ensuring data integrity and reducing performance penalties.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is stored in data latches during programming, then programming operation can proceed, but the original program data is lost when latches are used for verify status
Solution Approach 1:
The patent divides the latch system into multiple groups: first latches for storing program data, and second latches for storing verify status. This segmentation allows simultaneous use of latches for both programming and verification without data loss, resolving the contradiction between programming productivity and data preservation.
Solution Approach 2:
The patent implements a recovery mechanism where a copy of the program data is preserved in first latches even after the second latches are used for verify status. If programming fails, the original data can be recovered from the first latches, eliminating the information loss while maintaining programming efficiency.
2Reliability
If controller storage is occupied to save program data for recovery, then data can be recovered after program failure, but controller cannot release storage before programming finishes
Solution Approach 1:
The patent extracts the data preservation function from the controller storage to the memory device's first latches. By storing program data directly in the memory device during the programming operation, the controller storage is freed up while maintaining full recovery capability through the preserved latch data.
3Reliability
If program data is buffered in cache area on memory die, then data recovery is possible, but performance penalty occurs due to additional read and ECC operations
Solution Approach 1:
The patent performs preliminary action by preserving the program data in first latches during the programming operation itself, rather than requiring a separate cache buffer and subsequent read operations. This eliminates the need for additional ECC operations and cache management, maintaining high programming performance while ensuring data recovery capability.
Data Source
AI summary
Methods and non-volatile storage systems are provided for recovering data during a programming of non-volatile storage. Program data that was originally stored in one set of latches may be preserved with a combination of two sets of latches. These two sets of latches may also be used to store verify status during programming of that program data. The original program data may be recovered by performing a logical operation on the data in the two sets of latches. For example, upper page data could be initially stored in one set of latches. While the upper page data is being programmed, that set of latches and another set of latches are used to store verify status with respect to the upper page data. If a program error occurs while the upper page data is being preserved, it may be recovered by performing a logical operation on the two sets of latches.


