Multi-pass Programming for Non-volatile Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As the number of bits of data per memory cell increases in non-volatile semiconductor memory devices, such as EEPROM and flash memory, the programming time also increases due to the need for more verify operations between programming pulses, leading to slower data storage speeds in devices like digital cameras and mobile devices.

Innovation Solution

A method is introduced that limits the number of verify operations between program pulses by performing a first programming process and a subsequent programming process, where the second process includes verify operations based on the results of the first process, to improve programming speed in non-volatile storage systems.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If the number of bits of data per memory cell is increased, then the data capacity of the memory device is improved, but the programming time increases

Engineering Contradiction:
Improvedata capacityVSAvoidprogramming time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The programming process is divided into multiple passes, with each pass targeting specific memory cells that have not yet reached their target threshold voltage. This segmentation allows the system to efficiently manage the programming of multiple bits per cell without requiring exhaustive verify operations after every pulse, thereby reducing total programming time while maintaining high data capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary programming passes that partially program memory cells before final verification. By pre-positioning charge in the floating gate through initial passes and then completing the programming in subsequent passes with targeted verify operations, the system reduces the total number of verify operations needed while achieving the desired multi-bit storage capacity.

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If the number of verify operations between program pulses is increased, then the programming precision is improved, but the programming speed deteriorates

Engineering Contradiction:
Improveprogramming precisionVSAvoidprogramming speed
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent applies partial verify operations rather than exhaustive verification after every programming pulse. By performing verify operations only on selected memory cells that are likely to need programming based on previous pass results, the system maintains adequate programming precision while significantly reducing the total number of verify operations performed, thus improving programming speed.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent implements a continuous multi-pass programming approach where programming and verification activities are interleaved across multiple passes. Instead of completing all programming pulses followed by comprehensive verification, the system continuously alternates between programming selected cells and verifying their status, maintaining productive momentum while ensuring precision through targeted verification at appropriate intervals.

Inventive Principle:
Principle #20Continuity of useful action

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 enhances programming speed by reducing the number of verify operations, thereby increasing the data storage capacity and reducing the time required to program multiple bits of data per memory cell, addressing the issue of slower data storage speeds in electronic devices.

Implementation Method 1

Electrons from the channel are injected into the floating gate. When electrons accumulate in the floating gate, the floating gate becomes negatively charged and the threshold voltage of the memory cell is raised

Methodology Applied
Scientific EffectQuantum tunneling:

Data Source

PatentEP2348511B1Variable program for non-volatile storage
Publication Date: 2014.08.13 SANDISK TECHNOLOGIES LLC
  • EP2348511B1 patent drawingFigure 1~2
  • EP2348511B1 patent drawingFigure 3
  • EP2348511B1 patent drawingFigure 4

AI summary

After erasing a plurality of non-volatile storage elements, a soft programming process is performed by a system to tighten the erase threshold distribution for the non-volatile storage elements, During the soft programming process, the system identifies a programming pulse needed to achieve a particular result. The identified pulse is used to determine the magnitude of the first program pulse used during subsequent programming.