Non-real time reprogramming of non-volatile memory to achieve tighter distribution of threshold voltages
First Claim
1. A method for operating non-volatile storage, comprising:
- programming a block of non-volatile storage elements via a plurality of word lines in an initial programming, the initial programming is performed in a word line order staffing from a first word line of the block and proceeding successively to each next word line until a last word line of the block is reached; and
after the initial programming of the block is completed, performing further programming of at least some of the non-volatile storage elements, the further programming is performed in the word line order of the initial programming, staffing from the first word line of the block and proceeding successively to each next word line until the last word line of the block is reached;
where;
the first word line is a source side word line of the block;
the last word line is a drain side word line of the block;
the initial programming proceeds one word line at a time from the source side word line to the drain side word line; and
the further programming proceeds one word line at a time from the source side word line to the drain side word line.
3 Assignments
0 Petitions
Accused Products
Abstract
A set of non-volatile storage elements undergoes initial programming, after which a reprogramming, with higher verify levels, is performed in non-real time, such as when a control enters a standby mode, when no other read or write tasks are pending. The reprogramming can program pages in the set one at a time, stopping at a page boundary when another read or write task is pending, and restarting when the control become available again. Status flags can be provided to identify whether a page and/or the set has completed the reprogramming. In another aspect, a higher pass voltage is applied to unselected word lines during the reprogramming. In another aspect, an error count is determined using a default set of read voltages, and an alternative set of read voltages is selected if the count exceeds a threshold.
176 Citations
16 Claims
-
1. A method for operating non-volatile storage, comprising:
-
programming a block of non-volatile storage elements via a plurality of word lines in an initial programming, the initial programming is performed in a word line order staffing from a first word line of the block and proceeding successively to each next word line until a last word line of the block is reached; and after the initial programming of the block is completed, performing further programming of at least some of the non-volatile storage elements, the further programming is performed in the word line order of the initial programming, staffing from the first word line of the block and proceeding successively to each next word line until the last word line of the block is reached;
where;the first word line is a source side word line of the block; the last word line is a drain side word line of the block; the initial programming proceeds one word line at a time from the source side word line to the drain side word line; and the further programming proceeds one word line at a time from the source side word line to the drain side word line. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for operating non-volatile storage, comprising:
-
programming a block of non-volatile storage elements via a plurality of word lines in an initial programming, including;
selecting one word line at a time, applying program voltages to the selected word line during the initial programming, applying a first set of verifying voltages to the selected word line during the initial programming, and applying pass voltages to unselected word lines while applying the program voltages during the initial programming; andafter the initial programming of the block is completed, performing further programming of at least some of the non-volatile storage elements, including;
selecting one word line at a time, applying program voltages to the selected word line during the further programming, applying a second set of verifying voltages to the selected word line during the further programming, and applying pass voltages to unselected word lines while applying the program voltages during the further programming, a level of the pass voltages differs between the initial programming and the further programming. - View Dependent Claims (9)
-
-
10. A non-volatile storage system, comprising:
-
a block of non-volatile storage elements; one or more circuits for programming the block of non-volatile storage elements via a plurality of word lines in an initial programming, the initial programming is performed in a word line order starting from a first word line of the block and proceeding successively to each next word line until a last word line of the block is reached, and after the initial programming of the block is completed, the one or more circuits perform further programming of at least some of the non-volatile storage elements, the further programming is performed in the word line order of the initial programming, starting from the first word line of the block and proceeding successively to each next word line until the last word line of the block is reached, the initial programming uses a first set of different threshold voltage verify levels, and the further programming uses a second set of different threshold voltage verify levels, each threshold voltage verify level in the second set is higher than a corresponding voltage verify level in the first set. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
Specification