US9053819B2ActiveUtilityA1

Programming method to tighten threshold voltage width with avoiding program disturb

65
Assignee: KAMEI TERUHIKOPriority: Jul 11, 2012Filed: Jul 11, 2012Granted: Jun 9, 2015
Est. expiryJul 11, 2032(~6 yrs left)· nominal 20-yr term from priority
G11C 16/3427G11C 11/5628G11C 16/3418
65
PatentIndex Score
4
Cited by
11
References
23
Claims

Abstract

A non-volatile storage system that performs a multi-stage programming process to program non-volatile storage to a set of data threshold voltage distributions. The multi-stage programming process includes performing a first stage of the multi-stage programming process to change threshold voltages of at least a subset of the non-volatile storage elements from an erased distribution to one or more intermediate distributions, performing an intermediate stage of the multi-stage programming process to change threshold voltages of at least some of the non-volatile storage elements to appropriate distributions of the data threshold voltage distributions, and performing a later stage of the multi-stage programming process, after performing the intermediate stage of the multi-stage programming process, to tighten only a subset of the data threshold voltage distributions.

Claims

exact text as granted — not AI-modified
We claim: 
     
       1. A method for programming non-volatile storage to a set of data threshold voltage distributions, comprising:
 performing a first stage of a multi-stage programming process for a set of non-volatile storage elements connected to a common word line to change threshold voltages of at least a subset of the non-volatile storage elements from an erased distribution to one or more intermediate distributions; 
 performing an intermediate stage of the multi-stage programming process to change threshold voltages of at least some of the non-volatile storage elements to appropriate distributions of the data threshold voltage distributions; and 
 performing a later stage of the multi-stage programming process, after the intermediate stage, that tightens only lower state data threshold voltage distributions without tightening upper state data threshold voltage distributions. 
 
     
     
       2. The method of  claim 1 , wherein:
 the performing the intermediate stage comprises programming non-volatile storage elements to all distributions of the data threshold voltage distributions. 
 
     
     
       3. The method of  claim 1 , wherein:
 the performing the intermediate stage comprises first programming a first subset of the non-volatile storage elements to upper state data threshold voltage distributions and subsequently programming a second subset of the non-volatile storage elements to lower state data threshold voltage distributions. 
 
     
     
       4. The method of  claim 3 , wherein:
 the upper state data threshold voltage distributions are not tightened after the programming of the second subset of the non-volatile storage elements to the lower state data threshold voltage distributions. 
 
     
     
       5. A method for programming non-volatile storage to a set of data threshold voltage distributions, comprising:
 performing a first stage of a multi-stage programming process for a set of non-volatile storage elements connected to a common word line to change threshold voltages of at least a subset of the non-volatile storage elements from an erased distribution to one or more intermediate distributions; 
 performing an intermediate stage of the multi-stage programming process to change threshold voltages of at least some of the non-volatile storage elements to appropriate distributions of the data threshold voltage distributions; and 
 performing a later stage of the multi-stage programming process, after the intermediate stage, that tightens only a subset of the data threshold voltage distributions, 
 
       wherein:
 the performing the intermediate stage comprises programming non-volatile storage elements to upper state data threshold voltage distributions and a first set of lower state data threshold voltage distributions without programming non-volatile storage elements to a second set of the lower state data threshold voltage distributions; and 
 the performing the later stage of the multi-stage programming process comprises:
 tightening the upper state data threshold voltage distributions, 
 tightening the first set of the lower state data threshold voltage distributions after tightening the upper state data threshold voltage distributions, and 
 programming non-volatile storage elements into the second set of the lower state data threshold voltage distributions. 
 
 
     
     
       6. A method for programming non-volatile storage to a set of data threshold voltage distributions, comprising:
 performing a first stage of a multi-stage programming process for a set of non-volatile storage elements connected to a common word line to change threshold voltages of at least a subset of the non-volatile storage elements from an erased distribution to one or more intermediate distributions; 
 performing an intermediate stage of the multi-stage programming process to change threshold voltages of at least some of the non-volatile storage elements to appropriate distributions of the data threshold voltage distributions; and 
 performing a later stage of the multi-stage programming process, after the intermediate stage, that tightens only a subset of the data threshold voltage distributions, 
 wherein: 
 the performing the intermediate stage comprises programming non-volatile storage elements to multiple distributions of the data threshold voltage distributions; 
 the performing the later stage of the multi-stage programming process comprises first tightening upper state data threshold voltage distributions and subsequently tightening lower state data threshold voltage distributions; 
 programming non-volatile storage elements to multiple distributions of the data threshold voltage distributions comprises programming non-volatile storage elements to the upper state data threshold voltage distributions and a first set of the lower state data threshold voltage distributions; and 
 the performing the later stage of the multi-stage programming process comprises subsequently programming non-volatile storage elements into a second set of the lower state data threshold voltage distributions after the tightening of the upper state data threshold voltage distributions. 
 
     
     
       7. The method of  claim 6 , wherein:
 the performing the intermediate stage comprises programming non-volatile storage elements to upper state data threshold voltage distributions without programming non-volatile storage elements to lower state data threshold voltage distributions; and 
 the performing the later stage of the multi-stage programming process comprises tightening the upper state data threshold voltage distributions and subsequently programming non-volatile storage elements into the lower state data threshold voltage distributions. 
 
     
     
       8. The method of  claim 7 , wherein:
 non-volatile storage elements are not programmed to the upper state data threshold voltage distributions and the upper state data threshold voltage distributions are not tightened after the programming of the non-volatile storage elements to the lower state data threshold voltage distributions. 
 
     
     
       9. A non-volatile storage system, comprising:
 a plurality of non-volatile storage elements; and 
 one or more managing circuits in communication with the non-volatile storage elements, said one or more managing circuits program the non-volatile storage elements to a set of data threshold voltage distributions by performing a multi-stage programming process including performing a first stage of the multi-stage programming process to change threshold voltages of at least a subset of the non-volatile storage elements from an erased distribution to one or more intermediate distributions, performing an intermediate stage of the multi-stage programming process to change threshold voltages of at least some of the non-volatile storage elements to appropriate distributions of the data threshold voltage distributions, and performing a later stage of the multi-stage programming process, after performing the intermediate stage of the multi-stage programming process, by tightening only lower state data threshold voltage distributions without tightening upper state data threshold voltage distributions. 
 
     
     
       10. The non-volatile storage system of  claim 9 , wherein:
 the one or more managing circuits perform the intermediate stage of the multi-stage programming process by programming non-volatile storage elements to all distributions of the data threshold voltage distributions. 
 
     
     
       11. The non-volatile storage system of  claim 9 , wherein:
 the one or more managing circuits perform the intermediate stage of the multi-stage programming process by first programming a first subset of the non-volatile storage elements to upper state data threshold voltage distributions and subsequently programming a second subset of the non-volatile storage elements to lower state data threshold voltage distributions. 
 
     
     
       12. The non-volatile storage system of  claim 11 , wherein:
 the upper state data threshold voltage distributions are not tightened after the programming of the second subset of the non-volatile storage elements to the lower state data threshold voltage distributions. 
 
     
     
       13. The non-volatile storage system of  claim 9 , wherein:
 the one or more managing circuits perform the intermediate stage by programming non-volatile storage elements to upper state data threshold voltage distributions without programming non-volatile storage elements to lower state data threshold voltage distributions; and 
 the one or more managing circuits perform the later stage of the multi-stage programming process by tightening the upper state data threshold voltage distributions and subsequently programming non-volatile storage elements into the lower state data threshold voltage distributions. 
 
     
     
       14. The non-volatile storage system according to  claim 9 , wherein:
 the plurality of non-volatile storage elements are flash memory devices. 
 
     
     
       15. The non-volatile storage system according to  claim 9 , wherein:
 the plurality of non-volatile storage elements are multi-state flash memory devices. 
 
     
     
       16. The non-volatile storage system according to  claim 9 , wherein:
 the plurality of non-volatile storage elements are NAND multi-state flash memory devices. 
 
     
     
       17. The non-volatile storage system according to  claim 9 , wherein:
 the one or more managing circuits include any one or a combination of a controller, a state machine, a power control circuit, a command circuit, a control circuit and a decoder circuit. 
 
     
     
       18. A non-volatile storage system, comprising:
 a plurality of non-volatile storage elements; and 
 one or more managing circuits in communication with the non-volatile storage elements, said one or more managing circuits program the non-volatile storage elements to a set of data threshold voltage distributions by performing a multi-stage programming process including performing a first stage of the multi-stage programming process to change threshold voltages of at least a subset of the non-volatile storage elements from an erased distribution to one or more intermediate distributions, performing an intermediate stage of the multi-stage programming process to change threshold voltages of at least some of the non-volatile storage elements to appropriate distributions of the data threshold voltage distributions, and performing a later stage of the multi-stage programming process, after performing the intermediate stage of the multi-stage programming process, to tighten only a subset of the data threshold voltage distributions, 
 
       wherein:
 the one or more managing circuits perform the intermediate stage by programming non-volatile storage elements to upper state data threshold voltage distributions and a first set of lower state data threshold voltage distributions without programming non-volatile storage elements to a second set of the lower state data threshold voltage distributions; and 
 the one or more managing circuits perform the later stage of the multi-stage programming process by first tightening the upper state data threshold voltage distributions, and subsequently tightening the first set of the lower state data threshold voltage distributions and programming non-volatile storage elements into the second set of the lower state data threshold voltage distributions after tightening the upper state data threshold voltage distributions. 
 
     
     
       19. A non-volatile storage system, comprising:
 a plurality of non-volatile storage elements; and 
 one or more managing circuits in communication with the non-volatile storage elements, said one or more managing circuits program the non-volatile storage elements to a set of data threshold voltage distributions by performing a multi-stage programming process including performing a first stage of the multi-stage programming process to change threshold voltages of at least a subset of the non-volatile storage elements from an erased distribution to one or more intermediate distributions, performing an intermediate stage of the multi-stage programming process to change threshold voltages of at least some of the non-volatile storage elements to appropriate distributions of the data threshold voltage distributions, and performing a later stage of the multi-stage programming process, after performing the intermediate stage of the multi-stage programming process, to tighten only a subset of the data threshold voltage distributions, 
 
       wherein:
 the one or more managing circuits program non-volatile storage elements to multiple distributions of the data threshold voltage distributions by programming non-volatile storage elements to upper state data threshold voltage distributions and the first set of the lower state data threshold voltage distributions; 
 the one or more managing circuits perform the later stage of the multi-stage programming process by subsequently programming non-volatile storage elements into a second set of the lower state data threshold voltage distributions after the tightening of the upper state data threshold voltage distributions; 
 the one or more managing circuits perform the intermediate stage by programming non-volatile storage elements to multiple distributions of the data threshold voltage distributions; and 
 the one or more managing circuits perform the later stage of the multi-stage programming process by first tightening upper state data threshold voltage distributions and subsequently tightening a first set of lower state data threshold voltage distributions. 
 
     
     
       20. A method for programming non-volatile storage to a set of data threshold voltage distributions, comprising:
 performing a first stage of a multi-stage programming process for a set of non-volatile storage elements connected to a common word line to change threshold voltages of at least a subset of the non-volatile storage elements from an erased distribution to multiple intermediate distributions; 
 performing an intermediate stage of the multi-stage programming process to change threshold voltages of the non-volatile storage elements to lower state data threshold voltage distributions and upper state data threshold voltage distributions; and 
 performing a later stage of the multi-stage programming process, after the intermediate stage, that tightens only the lower state data threshold voltage distributions without tightening the upper state data threshold voltage distributions. 
 
     
     
       21. The method of  claim 20 , wherein:
 performing the intermediate stage of the multi-stage programming process comprises:
 programming a first subset of the non-volatile storage elements to the upper state data threshold voltage distributions, and 
 subsequently programming a second subset of the non-volatile storage elements to the lower state data threshold voltage distributions after the programming of the first subset of the non-volatile storage elements to the upper state data threshold voltage distributions; 
 
 performing the later stage of the multi-stage programming process comprises tightening the lower state data threshold voltage distributions without tightening the upper state data threshold voltage distributions. 
 
     
     
       22. The method of  claim 21 , wherein:
 the upper state data threshold voltage distributions are not tightened after the programming of the second subset of the non-volatile storage elements to the lower state data threshold voltage distributions. 
 
     
     
       23. A method for programming a set of non-volatile storage elements, comprising:
 performing a first stage of a multi-stage programming process to program non-volatile storage elements from an erased distribution to multiple intermediate distributions; 
 performing an intermediate stage of the multi-stage programming process to program non-volatile storage elements to multiple distributions of a set of data threshold voltage distributions; and 
 performing a later stage of the multi-stage programming process, after the intermediate stage, by first tightening upper state data threshold voltage distributions and subsequently tightening lower state data threshold voltage distributions.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.