Reducing the impact of interference during programming
First Claim
1. A method for programming non-volatile storage, comprising:
- performing programming on a first group of non-volatile storage elements at a first time;
performing programming on a second group of non-volatile storage elements at a second time different from said first time;
said performing programming on said first group of non-volatile storage elements at said first time and said performing programming on said second group of non-volatile storage elements at said second time are performed after and in response to a first trigger; and
said method further comprises performing one or more program cycles prior to said first trigger, each of said one or more program cycles includes programming said first group of non-volatile storage elements and said second group of non-volatile storage elements together.
3 Assignments
0 Petitions
Accused Products
Abstract
A system for programming non-volatile storage is proposed that reduces the impact of interference from the boosting of neighbors. Memory cells are divided into two or more groups. In one example, the memory cells are divided into odd and even memory cells; however, other groupings can also be used. Prior to a first trigger, a first group of memory cells are programmed together with a second group of memory cells. Subsequent to the first trigger and prior to a second trigger, the first group of memory cells are programmed separately from the second group of memory cells. Subsequent to the second trigger, the first group of memory cells are programmed together with the second group of memory cells. Before and after both triggers, the first group of memory cells are verified together with the second group of memory cells.
458 Citations
49 Claims
-
1. A method for programming non-volatile storage, comprising:
-
performing programming on a first group of non-volatile storage elements at a first time; performing programming on a second group of non-volatile storage elements at a second time different from said first time; said performing programming on said first group of non-volatile storage elements at said first time and said performing programming on said second group of non-volatile storage elements at said second time are performed after and in response to a first trigger; and said method further comprises performing one or more program cycles prior to said first trigger, each of said one or more program cycles includes programming said first group of non-volatile storage elements and said second group of non-volatile storage elements together. - View Dependent Claims (2, 3, 4, 5, 6, 7, 21, 22)
-
-
8. A method for programming non-volatile storage, comprising:
-
performing programming on a first group of non-volatile storage elements at a first time performing programming on a second group of non-volatile storage elements at a second time different from said first time verifying said first group of non-volatile storage elements and said second group of non-volatile storage elements together; said performing programming on said first group of non-volatile storage elements at said first time and said performing programming on said second group of non-volatile storage elements at said second time are performed after and in response to a first trigger; and said method further comprises performing one or more program cycles prior to said first trigger, each of said one or more program cycles includes programming said first group of non-volatile storage elements and said second group of non-volatile storage elements together. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for programming non-volatile storage, comprising:
-
performing programming on a first group of non-volatile storage elements at a first time; performing programming on a second group of non-volatile storage elements at a second time different from said first time; verifying said first group of non-volatile storage elements and said second group of non-volatile storage elements together; said performing programming on said first group of non-volatile storage elements at said first time and said performing programming on said second group of non-volatile storage elements at said second time are performed prior to and until a condition is detected; and said method further comprises performing one or more additional cycles subsequent to said condition being detected, each of said one or more additional cycles includes programming said first group of non-volatile storage elements and said second group of non-volatile storage elements together. - View Dependent Claims (18, 19, 20)
-
-
23. A non-volatile storage apparatus, comprising:
-
a plurality of non-volatile storage elements including a first group of non-volatile storage elements and a second group of non-volatile storage elements; and one or more managing circuits in communication with said non-volatile storage elements, said one or more managing circuits program said first group of non-volatile storage elements separately from programming said second group of non-volatile storage elements after and in response to a first trigger, said one or more managing circuits program said first group of non-volatile storage elements together with said second group of non-volatile storage elements prior to said first trigger. - View Dependent Claims (24, 25, 26, 27, 28, 29, 39, 40)
-
-
30. A non-volatile storage apparatus, comprising:
-
a plurality of non-volatile storage elements including a first group of non-volatile storage elements and a second group of non-volatile storage elements; and one or more managing circuits in communication with said non-volatile storage elements, said one or more managing circuits program said first group of non-volatile storage elements separately from programming said second group of non-volatile storage elements, said one or more managing circuits verify said first group of non-volatile storage elements together with verifying said second group of non-volatile storage elements, said one or more managing circuits program said first group of non-volatile storage elements separately from programming said second group of non-volatile storage elements after and in response to a first trigger, said one or more managing circuits program said first group of non-volatile storage elements together with said second group of non-volatile storage elements prior to said first trigger. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37)
-
-
38. A non-volatile storage apparatus, comprising:
-
a plurality of non-volatile storage elements including a first group of non-volatile storage elements and a second group of non-volatile storage elements; and one or more managing circuits in communication with said non-volatile storage elements, said one or more managing circuits program said first group of non-volatile storage elements separately from programming said second group of non-volatile storage elements, said one or more managing circuits verify said first group of non-volatile storage elements together with verifying said second group of non-volatile storage elements, said one or more managing circuits program said first group of non-volatile storage elements separately from programming said second group of non-volatile storage elements prior to detecting a condition, said one or more managing circuits program said first group of non-volatile storage elements together with said second group of non-volatile storage elements together subsequent to and in response to detecting said condition.
-
-
41. A non-volatile storage apparatus, comprising:
-
a plurality of non-volatile storage elements; means for performing programming on a first group of said non-volatile storage elements at a first time and for performing programming on a second group of said non-volatile storage elements at a second time different from said first time, said performing programming on said first group of non-volatile storage elements at said first time and said performing programming on said second group of non-volatile storage elements at said second time are performed after and in response to a first trigger; means for performing one or more program cycles prior to said first trigger, each of said one or more program cycles includes programming said first group of non-volatile storage elements and said second group of non-volatile storage elements together; and means for verifying said first group of said non-volatile storage elements and said second group of said non-volatile storage elements together. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48, 49)
-
Specification