Adaptive Verify for Multi-State Flash Memory Programming
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing programming techniques for non-volatile storage elements, particularly in multi-state flash memory devices, face inefficiencies due to unnecessary program verification steps, especially when programming a lower page to an intermediate state before an upper page, leading to increased programming time and power consumption.
Innovation Solution
Adaptive verification techniques are implemented to determine when to initiate verification processes by tracking the transition of non-volatile storage elements from one voltage threshold distribution to another, allowing for reduced unnecessary verification steps and optimizing the programming process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional sequential verify operations are performed for each programming step in multi-state flash memory, then programming verification reliability is improved, but programming time and power consumption increase significantly
Solution Approach 1:
The system performs preliminary actions by pre-establishing verify levels and tracking storage element states before actual verification is needed. The controller maintains information about which storage elements have reached which verify levels, enabling it to skip unnecessary verification steps and initiate verification only when needed, thus reducing programming time while maintaining reliability
Solution Approach 2:
The verification process is made dynamic by adapting the verification strategy based on real-time tracking of storage element transitions. The system dynamically determines which elements need verification and at what levels, rather than performing fixed sequential verification. This dynamic approach allows the system to optimize verification timing and scope, reducing both time and power consumption while ensuring reliable programming
2Reliability
If all storage elements are verified at all verify levels sequentially, then verification completeness is improved, but power consumption increases
Solution Approach 1:
The system applies local quality by tailoring verification actions to individual storage elements based on their specific states and transitions. Rather than uniformly verifying all elements at all levels, the system identifies which elements need verification at which levels based on their individual programming progress. This localized verification approach reduces unnecessary verification operations and associated power consumption while maintaining complete verification where needed
Solution Approach 2:
The system performs partial verification actions only when and where necessary. By tracking which storage elements have reached which verify levels, the system can skip verification for elements that have already been verified or that do not need verification at certain levels. This partial action approach reduces overall verification operations and power consumption while ensuring complete verification for elements that require it
3Device complexity
If fixed verification timing is used for all storage elements, then process simplicity is maintained, but programming efficiency decreases due to unnecessary verification steps
Solution Approach 1:
The system implements feedback mechanisms where the controller continuously tracks the states of storage elements and uses this information to determine when verification should be performed. The feedback from monitoring storage element transitions enables the system to adjust verification timing dynamically, eliminating unnecessary verification steps and improving programming efficiency while maintaining manageable process complexity through automated state tracking
Data Source
AI summary
In a non-volatile memory, the initiation of program verification is adaptively set so that programming time is decreased. In one approach, non-volatile storage elements are programmed based on a lower page of data to have a voltage threshold (VTH) that falls within a first VTH distribution or a higher, intermediate VTH distribution. Subsequently, the non-volatile storage elements with the first VTH distribution either remain there, or are programmed to a second VTH distribution, based on an upper page of data. The non-volatile storage elements with the intermediate VTH distribution are programmed to third and fourth VTH distributions. The non-volatile storage elements being programmed to the third VTH distribution are specially identified and tracked. Verification of the non-volatile storage elements being programmed to the fourth VTH distribution is initiated after one of the identified non-volatile storage elements transitions to the third VTH distribution from the intermediate VTH distribution.


