NAND Flash Programming With Grouped Pass Voltage Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Program disturb and degradation occur during program-erase cycles in non-volatile storage systems, particularly in NAND flash memory, due to shifts in threshold voltage of unselected storage elements during programming of other elements, leading to reduced operating window and data integrity issues.
Innovation Solution
Optimally setting pass voltages on unselected word lines by programming storage elements in separate groups based on the state of their neighbor storage elements, applying a group-specific optimal pass voltage to reduce program disturb and degradation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a pass voltage is applied to unselected word lines during programming, then programming operation can proceed, but program disturb occurs causing threshold voltage shifts in unselected storage elements
Solution Approach 1:
The patent applies different pass voltage levels to different unselected word lines based on their specific position and state. Storage elements are divided into groups (e.g., first group with lower threshold voltage, second group with higher threshold voltage), and each group receives a tailored pass voltage. This local differentiation allows the system to maintain programming productivity while minimizing program disturb in specific unselected regions.
Solution Approach 2:
The patent dynamically adjusts the pass voltage parameter based on the state of unselected storage elements. By reading the state of storage elements on unselected word lines and comparing threshold voltages, the system selects appropriate pass voltage levels from a set of predefined voltages. This parameter adaptation resolves the contradiction by optimizing the pass voltage for each specific programming context.
2Reliability
If higher pass voltage is applied to reduce program disturb, then threshold voltage stability improves, but floating gate to control gate leakage increases
Solution Approach 1:
The patent applies different pass voltage levels to different unselected word lines based on their specific position and state. Storage elements are divided into groups (e.g., first group with lower threshold voltage, second group with higher threshold voltage), and each group receives a tailored pass voltage. This local differentiation allows the system to maintain programming productivity while minimizing program disturb in specific unselected regions.
Solution Approach 2:
The patent dynamically adjusts the pass voltage parameter based on the state of unselected storage elements. By reading the state of storage elements on unselected word lines and comparing threshold voltages, the system selects appropriate pass voltage levels from a set of predefined voltages. This parameter adaptation resolves the contradiction by optimizing the pass voltage for each specific programming context.
3Productivity
If storage elements are programmed in parallel, then programming efficiency increases, but program disturb affects more unselected elements
Solution Approach 1:
The patent applies different pass voltage levels to different unselected word lines based on their specific position and state. Storage elements are divided into groups (e.g., first group with lower threshold voltage, second group with higher threshold voltage), and each group receives a tailored pass voltage. This local differentiation allows the system to maintain programming productivity while minimizing program disturb in specific unselected regions.
Solution Approach 2:
The patent dynamically adjusts the pass voltage parameter based on the state of unselected storage elements. By reading the state of storage elements on unselected word lines and comparing threshold voltages, the system selects appropriate pass voltage levels from a set of predefined voltages. This parameter adaptation resolves the contradiction by optimizing the pass voltage for each specific programming context.
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 effectively minimizes program disturb and degradation by tailoring pass voltages to the state of adjacent storage elements, thereby expanding the threshold voltage window and improving data retention and programming efficiency.
Implementation Method 1
Vpgm can be applied to the control gates of flash memory elements. In the periods between the program pulses, verify operations are carried out. That is, the programming level of each element of a group of storage elements being programmed in parallel is read between successive program pulses to determine whether it is equal to or greater than a verify level to which the element is being programmed.
Implementation Method 2
When electrons accumulate in the floating gate, the floating gate becomes negatively charged and the threshold voltage of the storage element is raised so that it is considered to be in a programmed state.
Data Source
Figure 1a~2
Figure 3
Figure 4
AI summary
Program disturb is reduced in a non-volatile storage system by programming storage elements on a selected word line WLn in separate groups, according to the state of their WLn-I neighbor storage element, and applying an optimal pass voltage to WLn-I for each group. Initially, the states of the storage elements on WLn-I are read. A program iteration includes multiple program pulses. A first program pulse (1402) is applied to WLn while a first pass voltage (1425) is applied to WLn-1, a first group (1480, 1482, 1488) of WLn storage elements is selected for programming, and a second group (1484, 1486) of WLn storage elements is inhibited. Next, a second program pulse (1404) is applied to WLn while a second pass voltage (1426) is applied to WLn-I, the second first group of WLn storage elements is selected for programming, and the first group of WLn storage elements is inhibited. A group can include one or more data states (A, B, C, E).