IP Library Granted Patent US 8,036,044
Granted Patent B2
US 8,036,044 · App. 12/504,576 · Granted Oct 11, 2011

Dynamically adjustable erase and program levels for non-volatile memory

Assignee: SanDisk Technologies Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,036,044
App. No.
12/504,576
Granted
Oct 11, 2011
Kind
B2
Abstract

Degradation of non-volatile storage elements is reduced by adaptively adjusting erase-verify levels and program-verify levels. The number of erase pulses, or the highest erase pulse amplitude, needed to complete an erase operation is determined. When the number, or amplitude, reaches a limit, the erase-verify level is increased. As the erase-verify level is increased, the number of required erase pulses decreases since the erase operation can be completed more easily. An accelerating increase in the degradation is thus avoided. One or more program-verify levels can also be increased in concert with changes in the erase-verify level. The one or more program-verify levels can increase by the same increment as the erase-verify level to maintain a constant threshold voltage window between the erased state and a programmed state, or by a different increment. Implementations with binary or multi-level storage elements are provided.

Claims (47)

1. A method for operating a non-volatile storage system, comprising:

applying voltage pulses to a substrate of a set of non-volatile storage elements in each erase operation of a plurality of erase operations over a first portion of a lifetime of the set of non-volatile storage elements, each erase operation over the first portion of the lifetime uses a first value for an erase-verify level;

based on the applying, determining when a condition is met for adjusting the erase-verify level, the condition is met when an amplitude of voltage pulses which are applied in at least one of the erase operations over the first portion of the lifetime exceeds a limit; and

when the condition is met for adjusting the erase-verify level, using a second value, higher than the first value, for the erase-verify level in place of the first value in each erase operation of a plurality of erase operations over a second portion of the lifetime;

the set of non-volatile storage elements include multi-level storage elements which are programmed to at least first, second and third programmed states using respective program-verify levels; and

in the second portion of the lifetime: at least two of the respective program-verify levels are incremented, by different amounts, relative to the first portion of the lifetime.

2. The method of claim 1 , wherein:

the condition is met when a number of voltage pulses which are applied in at least one of the erase operations over the first portion of the lifetime exceeds a limit.

3. The method of claim 1 , wherein:

a difference between the first and second values is equal to a step size of the voltage pulses.

4. The method of claim 1 , wherein the set of non-volatile storage elements is in communication with a set of word lines, the method further comprising:

applying a first pass voltage to one or more unselected word lines in the set of word lines in an associated programming operation which occurs after each erase operation of the plurality of erase operations over the first portion of the lifetime; and

applying a second pass voltage, higher than the first pass voltage, to the one or more unselected word lines in the set of word lines in place of the first pass voltage in an associated programming operation which occurs after each erase operation of the plurality of erase operations over the second portion of the lifetime.

5. The method of claim 1 , wherein:

in the second portion of the lifetime: each of the respective program-verify levels is incremented by a different amount, relative to the first portion of the lifetime.

6. The method of claim 1 , wherein:

in the second portion of the lifetime: at least two of the respective program-verify levels are grouped and incremented by one amount, and at least two others of the respective program-verify levels are grouped and incremented by another amount.

7. A non-volatile storage system which performs the method of claim 1 .

8. A non-volatile storage system, comprising:

a set of storage elements on a substrate; and

at least one control circuit in communication with the set of storage elements and the substrate, the at least one control circuit applies voltage pulses to the substrate in each erase operation of a plurality of erase operations over a first portion of a lifetime of the set of non-volatile storage elements, each erase operation over the first portion of the lifetime uses a first value for an erase-verify level, the at least one control circuit determines, based on the applied voltage pulses, when a condition is met for adjusting the erase-verify level, the condition is met when an amplitude of voltage pulses which are applied in at least one of the erase operations over the first portion of the lifetime exceeds a limit, and when the condition is met for adjusting the erase-verify level, the at least one control circuit uses a second value for the erase-verify level in place of the first value in each erase operation of a plurality of erase operations over a second portion of the lifetime, a difference between the first and second values is equal to a step size of the voltage pulses.

9. The non-volatile storage system of claim 8 , wherein:

the condition is met when a number of voltage pulses which are applied in at least one of the erase operations over the first portion of the lifetime exceeds a limit.

10. A method for operating a non-volatile storage system, comprising:

applying voltage pulses to a substrate of a set of non-volatile storage elements in at least one erase operation of the set of non-volatile storage elements, the voltage pulses are applied to the substrate until threshold voltages of the non-volatile storage elements move below a first erase-verify level, the set of non-volatile storage elements is in communication with a set of word lines;

subsequently programming at least one non-volatile storage element in the set of non-volatile storage elements to represent a data state by applying program pulses to the at least one non-volatile storage element until a threshold voltage of the at least one non-volatile storage element exceeds a first program-verify level;

applying a first pass voltage to unselected word lines in the set of word lines during the programming which uses the first program-verify level;

subsequently performing at least one additional erase operation by applying voltage pulses to the substrate until threshold voltages of the non-volatile storage elements move below a second erase-verify level which exceeds the first erase-verify level;

subsequently programming the at least one non-volatile storage element to represent the data state by applying additional program pulses to the at least one non-volatile storage element until the threshold voltage of the at least one non-volatile storage element exceeds a second program-verify level which exceeds the first program-verify level; and

applying a second pass voltage to unselected word lines in the set of word lines during the programming which uses the second program-verify level, the second pass voltage exceeds the first pass voltage by an amount which is based on a difference between the second program- verify level and the first program-verify level.

11. The method of claim 10 , wherein:

the voltage pulses applied in the at least one erase operation and the at least one additional erase operation increase by a step size; and

the second erase-verify level exceeds the first erase-verify level by the step size.

12. A method for operating a non-volatile storage system, comprising:

applying voltage pulses to a substrate of a set of non-volatile storage elements in each erase operation of a plurality of erase operations over a first portion of a lifetime of the set of non-volatile storage elements, each erase operation over the first portion of the lifetime uses a first value for an erase-verify level;

based on the applying, determining when a condition is met for adjusting the erase-verify level; and

when the condition is met for adjusting the erase-verify level, using a second value, higher than the first value, for the erase-verify level in place of the first value in each erase operation of a plurality of erase operations over a second portion of the lifetime;

the set of non-volatile storage elements include multi-level storage elements which are programmed to at least first, second and third programmed states using respective program-verify levels;

in the second portion of the lifetime: at least two of the respective program-verify levels are incremented, by different amounts, relative to the first portion of the lifetime, and at least one of the respective program-verify levels is incremented by an amount which is equal to a difference between the first and second values of the erase-verify level.

13. A method for operating a non-volatile storage system, comprising:

applying voltage pulses to a substrate of a set of non-volatile storage elements in each erase operation of a plurality of erase operations over a first portion of a lifetime of the set of non-volatile storage elements, each erase operation over the first portion of the lifetime uses a first value for an erase-verify level;

based on the applying, determining when a condition is met for adjusting the erase-verify level; and

when the condition is met for adjusting the erase-verify level, using a second value, higher than the first value, for the erase-verify level in place of the first value in each erase operation of a plurality of erase operations over a second portion of the lifetime;

the set of non-volatile storage elements include multi-level storage elements which are programmed to at least first, second and third programmed states using respective program-verify levels;

in the second portion of the lifetime: at least two of the respective program-verify levels are incremented, by different amounts, relative to the first portion of the lifetime, and a highest program-verify level of the respective program-verify levels is not incremented.

14. The method of claim 13 , wherein:

in the second portion of the lifetime: the respective program-verify level of the first programmed state is greater than, and is incremented by a greater amount than, the respective program-verify level of the second programmed state.

Assignments (3)
CHANGE OF NAME Recorded May 25, 2016
From: SANDISK TECHNOLOGIES INC
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 038807/0850 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2011
From: SANDISK CORPORATION
To: SANDISK TECHNOLOGIES INC.
Reel/Frame 026285/0946 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2009
From: DONG, YINGDA; WAN, JUN
To: SANDISK CORPORATION
Reel/Frame 022968/0024 →
Continuity (1)
Related Publication 20110013460A1 · Jan 20, 2011