Multi-Level Cell Programming via Pre-Programming and Incremental Pulses
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Newer flash memory devices face challenges in maintaining accurate threshold voltage distributions due to electrical coupling between memory cells, leading to widened distributions and increased programming time.
Innovation Solution
A method of programming nonvolatile memory devices with multi-level cells involves a pre-programming operation that sets intermediate states with overlapping threshold voltage distributions, followed by a main programming operation using incremental step pulses, to reduce the increase in threshold voltage distribution width and programming overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If multi-level cells are programmed using conventional methods, then data storage capacity is improved, but threshold voltage distribution widens due to electrical coupling between adjacent memory cells
Solution Approach 1:
The programming operation is divided into multiple sequential steps (first programming step, second programming step, third programming step) where each step programs a portion of the memory cells to a specific intermediate state. This segmentation allows controlled progression through threshold voltage distributions, preventing excessive widening while achieving multi-bit storage capability.
Solution Approach 2:
The method performs preliminary programming operations to establish intermediate states before final programming. By pre-programming cells to intermediate threshold voltage distributions and verifying them beforehand, the system prepares cells in a controlled manner that prevents subsequent threshold voltage widening during the main programming operation.
2Speed
If conventional programming methods are used for multi-level cells, then programming speed is maintained, but programming time increases due to widened threshold voltage distributions requiring rework
Solution Approach 1:
The programming process uses periodic verification steps interspersed with programming steps. After each programming step, verification operations are performed to check the threshold voltage distributions. This periodic verification allows immediate detection and correction of programming errors, reducing the need for time-consuming rework and actually improving overall programming efficiency despite the additional verification steps.
3Measurement precision
If threshold voltage distributions are separated by adequate sensing margins, then data accuracy is improved, but integration density decreases due to increased spacing requirements
Solution Approach 1:
The method dynamically adjusts programming parameters including pulse width, pulse amplitude, and step sizes based on the current threshold voltage distribution state. By making these parameters variable rather than fixed, the system can achieve adequate sensing margins for data accuracy while minimizing the physical spacing requirements, thereby maintaining high integration density.
Solution Approach 2:
The programming process changes multiple parameters simultaneously including pulse width, pulse amplitude, and the number of programming steps. By coordinating these parameter changes, the system achieves both adequate threshold voltage separation for accuracy and efficient use of physical space for high integration density.
Data Source
AI summary
A method of programming a nonvolatile memory device including multi-level cells that store multi-bit data, includes performing a pre-programming operation that programs at least some of the multi-level cells to a plurality of intermediate states which are different from an erased state, and performing a main programming operation that programs the multi-level cells to a plurality of target states corresponding to the multi-bit data. At least some of the intermediate program states have threshold voltage distributions that partially overlap each other.


