Correlated Multi-Pass Programming for EEPROM Memory Cells
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional programming techniques for multi-state EEPROM memory cells require numerous verify operations, leading to increased programming time and reduced performance, especially as the number of distinguishable state levels increases, due to the need for multiple sensing operations across multiple states.
Innovation Solution
Implementing a multi-pass programming approach where memory cells are programmed in parallel with correlated programming voltages, using a staircase pulse train with a common step size and offsetting each pass by a predetermined level, reduces the number of programming pulses and verify operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional programming techniques are used for multi-state EEPROM memory cells, then the memory cells can be programmed to multiple states, but the number of verify operations increases significantly, leading to increased programming time and reduced performance
Solution Approach 1:
The programming process is divided into multiple passes, with each pass responsible for programming a specific range of threshold voltage states. The first pass programs cells to intermediate states, and subsequent passes refine the programming to achieve final multi-state distribution. This segmentation reduces the number of verify operations needed in each pass compared to conventional single-pass multi-state programming.
Solution Approach 2:
The first programming pass performs preliminary programming of memory cells to intermediate threshold voltage states before the final multi-state programming is completed. This preliminary action establishes a foundation that reduces the complexity and verify operation count for subsequent passes, ultimately reducing total programming time despite multiple passes.
2Quantity of substance
If the number of distinguishable state levels is increased to improve storage capacity, then more data can be stored per cell, but the number of sensing operations and verify steps increases, reducing programming performance
Solution Approach 1:
Multi-state programming is segmented into multiple passes, where each pass handles a subset of the total state levels. The first pass programs to lower state levels, and subsequent passes program to higher state levels. This segmentation allows the system to achieve high storage capacity without requiring all verify operations to occur simultaneously, thus maintaining programming performance.
Solution Approach 2:
The programming process uses periodic action by alternating between programming pulses and verify operations in a structured multi-pass sequence. Each pass follows a program-verify cycle, but the total number of verify operations is reduced compared to conventional methods because each pass handles fewer state levels. This periodic structure enables high storage capacity while controlling programming time.
3Measurement precision
If multiple sensing operations are performed across multiple states to ensure accurate programming, then programming accuracy is improved, but the complexity and time of the programming process increases
Solution Approach 1:
The sensing and verify operations are segmented across multiple passes, with each pass focusing on verifying a specific range of threshold voltage states. This segmentation reduces the number of sensing operations that must be performed in each individual pass, thereby reducing the apparent complexity of the programming process while maintaining overall programming accuracy through cumulative verification across all passes.
Data Source
Figure 1
Figure 2~3
Figure 4
AI summary
A group of memory cells is programmed respectively to their target states in parallel using a multiple-pass programming method in which the programming voltages in the multiple passes are correlated. Each programming pass employs a programming voltage in the form of a staircase pulse train with a common step size, and each successive pass has the staircase pulse train offset from that of the previous pass by a predetermined offset level. The predetermined offset level is less than the common step size and may be less than or equal to the predetermined offset level of the previous pass. Thus, the same programming resolution can be achieved over multiple passes using fewer programming pulses than conventional method where each successive pass uses a programming staircase pulse train with a finer step size. The multiple pass programming serves to tighten the distribution of the programmed thresholds while reducing the overall number of programming pulses.