Non-Volatile Memory Program Verification Using ECC Thresholds
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Non-volatile memory devices with varying memory cell characteristics lead to increased programming time due to slow program speeds, as they require continuous program pulses until all cells reach the desired threshold voltage, inefficiently utilizing time and resources.
Innovation Solution
A method to verify program operation in non-volatile memory devices by setting data in page buffers to output pass signals only when memory cells reach specific verifying voltages, allowing for early completion of programming for cells with slow speeds and reducing overall operation time by comparing fail status bits to ECC processing bits.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If continuous program pulses are applied until all memory cells reach the desired threshold voltage, then programming reliability is improved, but programming time is increased due to slow program speed cells
Solution Approach 1:
The patent applies partial action by verifying only a subset of memory cells (sample cells) rather than all cells, and by allowing early termination of the program operation when the number of fail status bits is within the ECC correction capability. This partial verification approach reduces programming time while maintaining reliability through ECC error correction.
Solution Approach 2:
The patent implements feedback by continuously verifying the program status of sample cells during the program operation, counting fail status bits, and using this information to dynamically control the continuation or termination of the program operation. The verification result feeds back to the control logic to make real-time decisions about program completion.
2Measurement precision
If verification is performed on all memory cells, then programming accuracy is improved, but operation complexity is increased
Solution Approach 1:
The patent segments the memory cell array into multiple regions and selects specific sample cells from different regions for verification. This segmentation approach reduces the number of cells that need to be verified while maintaining representativeness, thereby reducing operation complexity without significantly compromising programming accuracy.
Solution Approach 2:
The patent uses sample cells as copies or representatives of the entire memory cell array. By verifying the program status of these sample cells rather than all cells, the system achieves a simplified verification process that maintains adequate programming accuracy through statistical representation.
3Productivity
If the program operation is terminated early for slow program speed cells, then productivity is improved, but programming precision may be compromised
Solution Approach 1:
The patent changes the verification parameter from checking all cells to checking only sample cells, and changes the termination criterion from requiring all cells to be programmed to requiring the number of fail status bits to be within ECC correction capability. These parameter changes enable early termination while maintaining acceptable precision through error correction.
Solution Approach 2:
The patent introduces ECC (Error Correction Code) as an intermediary mechanism that compensates for the reduced verification coverage. The ECC system acts as a mediator that allows early program termination by correcting errors in non-verified cells, thus maintaining programming precision without requiring complete verification of all cells.
Applied Scientific Principles
This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.
Function Achieved in This Case
This approach reduces programming time by ensuring memory cells with slow speeds are programmed at specific time points and optimizing the use of resources, enhancing the efficiency of the programming process in non-volatile memory devices.
Implementation Method 1
The non-volatile memory device performs a program operation and an erase operation by changing a threshold voltage of a memory cell through moving of electrons by high electric field applied to a thin oxide film
Implementation Method 2
a sensing node for sensing voltage level of a specific bit line or a certain register
Data Source
AI summary
A method of verifying a program operation in a non-volatile memory device includes performing a program operation, verifying whether or not each of a plurality of program target memory cells is programmed to a voltage higher than a verifying voltage, counting a number of fail status bits in response to determining that a fail status memory cell is not programmed with a voltage higher than the verifying voltage based on the verified result, and setting data so that a plurality of page buffers each output a pass signal when the number of the fail status bits is smaller than a number of error correction code (ECC) processing bits.


