Flash Memory Multi-Level Cell Programming Method
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional flash memory programming methods require numerous recovery and setup periods, leading to increased programming time and potential voltage overshooting due to alternating programming and program-verifying steps with stepped-up voltages.
Innovation Solution
A method where memory cells are programmed in a first data state, followed by successive programming and verification of cells in lower threshold voltage states, reducing the frequency of recovery and setup operations, and using a controller to regulate programming and verification operations, including a voltage generator and pass/fail check circuit to manage word line and bulk voltages.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional alternating programming and program-verifying steps with stepped-up voltages are used, then programming can be performed with verification at each step, but programming time increases and voltage overshooting occurs due to frequent recovery and setup periods
Solution Approach 1:
The patent merges multiple programming steps into a single continuous programming operation. Instead of alternating between programming and verification steps, the method applies a programmed voltage waveform that continuously programs multiple threshold voltage levels in sequence without intermediate verification steps, eliminating the need for frequent recovery and setup periods between alternating operations
Solution Approach 2:
The patent implements continuous programming action by applying a programmed voltage waveform that maintains continuous voltage application throughout the programming process. The voltage waveform transitions smoothly between different voltage levels corresponding to different threshold voltage targets, ensuring the useful programming action continues without interruption or idle recovery periods
2Reliability
If conventional alternating programming and program-verifying steps with stepped-up voltages are used, then programming can be performed with verification at each step, but voltage overshooting occurs due to frequent recovery and setup periods
Solution Approach 1:
The patent merges multiple programming steps into a single continuous programming operation. Instead of alternating between programming and verification steps, the method applies a programmed voltage waveform that continuously programs multiple threshold voltage levels in sequence without intermediate verification steps, eliminating the need for frequent recovery and setup periods
Solution Approach 2:
The patent inverts the conventional approach by eliminating intermediate verification steps and applying all programming voltages in a single continuous sequence. Rather than verifying after each voltage step, the method applies the complete sequence of programming voltages (Vpgm1, Vpgm2, Vpgm3) in succession without interruption, inverting the traditional verify-after-program rhythm
3Adaptability or versatility
If stepped-up voltages are used in conventional programming, then programming of multiple threshold voltage levels can be achieved, but frequent recovery and setup periods increase programming time
Solution Approach 1:
The patent implements continuous programming action by applying a programmed voltage waveform that maintains continuous voltage application throughout the programming process. The voltage waveform transitions smoothly between different voltage levels corresponding to different threshold voltage targets, ensuring the useful programming action continues without interruption or idle recovery periods
Solution Approach 2:
The patent uses a dynamic programmed voltage waveform that adapts its voltage level in real-time during the programming process. The waveform transitions between different voltage levels (Vpgm1, Vpgm2, Vpgm3) based on the programming progression, allowing the system to dynamically adjust voltage application to match the multi-threshold voltage requirements without static step-by-step interruptions
Data Source
AI summary
A method for programming a flash memory device is provided, where the flash memory device includes a plurality of memory cells, and where a threshold voltage of each of the memory cells is programmable in any one of plural corresponding data states. The method includes programming selected memory cells in a first data state, verifying a result of the programming, successively programming selected memory cells in at least two or more data states corresponding to threshold voltages which are lower than a corresponding threshold voltage of the first data state, and verifying results of the successive programming.


