P
USRE43870EActiveUtilityPatentIndex 62

Reducing the impact of interference during programming

Assignee: LEE DANAPriority: Sep 4, 2007Filed: Nov 4, 2011Granted: Dec 25, 2012
Est. expirySep 4, 2027(~1.2 yrs left)· nominal 20-yr term from priority
Inventors:LEE DANAYERO EMILIO
G11C 16/3418G11C 16/0483G11C 2211/5621G11C 11/5628
62
PatentIndex Score
3
Cited by
51
References
49
Claims

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.

Claims

exact text as granted — not AI-modified
1. A method for programming non-volatile storage, comprising:
 determining a first trigger voltage; 
 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 first group of non-volatile storage elements is different from said second group of non-volatile storage elements; 
 adjusting said first trigger voltage; 
 detecting said first trigger voltage subsequent to said adjusting said first trigger voltage; 
 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 said detecting said first trigger voltage; and 
 said method further comprises performing one or more program cycles prior to said detecting said first trigger voltage, 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, said performing one or more program cycles includes applying a programming pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements, said first trigger voltage is associated with a magnitude of said programming pulse. 
 
     
     
       2. A method according to  claim 1 , wherein:
 said first group of non-volatile storage elements are is connected to a first control line; and 
 said second group of non-volatile storage elements are is connected to said first control line. 
 
     
     
       3. A method according to  claim 1 , wherein:
 said first group of non-volatile storage elements are connected to a word line; 
 said second group of non-volatile storage elements are connected to said word line; and 
 each non-volatile storage element of said first group of non-volatile storage elements and said second group of non-volatile storage elements are connected to different bit lines in an interleaving manner. 
 
     
     
       4. A method according to  claim 1 , wherein:
 said performing programming on said first group of non-volatile storage elements includes applying a first program pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements, inhibiting said second group of non-volatile storage elements from programming in response to said first program pulse, and allowing said first group of non-volatile storage elements to program in response to said first program pulse; and 
 said performing programming on said second group of non-volatile storage elements includes applying a second program pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements, inhibiting said first group of non-volatile storage elements from programming in response to said second program pulse, and allowing said second group of non-volatile storage elements to program in response to said second program pulse. 
 
     
     
       5. A method according to claim  4  1, wherein:
 each non-volatile storage element of said first group of non-volatile storage elements and said second group of non-volatile storage elements are connected to different control lines; 
 said control lines include even control lines and odd control lines; and 
 said first group of non-volatile storage elements are connected to said even control lines; and 
 said second group of non-volatile storage elements are connected to said odd control lines 
 said adjusting said first trigger voltage includes increasing said first trigger voltage based on a number of program-erase cycles. 
 
     
     
       6. A method according to claim  5  1, wherein:
 said first group of non-volatile storage elements is arranged in an interleaving manner with said second group of non-volatile storage elements; and 
 said adjusting said first trigger voltage includes reducing said first trigger voltage based on a temperature associated with said first group of non-volatile storage elements and said second group of non-volatile storage elements. 
 
     
     
       7. A method according to  claim 1 , wherein:
 said first group of non-volatile storage elements and said second group of non-volatile storage elements do not have any non-volatile storage elements in common. 
 
     
     
       8. A method for programming non-volatile storage, comprising:
 determining a first trigger voltage; 
 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 first group of non-volatile storage elements is different from said second group of non-volatile storage elements; 
 verifying said first group of non-volatile storage elements and said second group of non-volatile storage elements together; 
 detecting said first trigger voltage; 
 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 said detecting said first trigger voltage; and 
 said method further comprises performing one or more program cycles prior to said detecting said first trigger voltage, 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, said performing one or more program cycles includes applying a programming pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements, said first trigger voltage is associated with a magnitude of said programming pulse. 
 
     
     
       9. A method according to  claim 8 , wherein:
 said detecting said first trigger voltage includes a detecting that said magnitude of said programming pulse magnitude reaching a has reached said first trigger voltage. 
 
     
     
       10. A method according to  claim 9 , further comprising wherein:
 said first group of non-volatile storage elements is connected to a first word line; 
 said second group of non-volatile storage elements is connected to said first word line; and 
 said determining said first trigger voltage for said first group of non-volatile storage elements and said second group of non-volatile storage elements subsequent to manufacture of said first group of non-volatile storage elements and said second group of non-volatile storage elements includes determining a word line voltage at which a polysilicon word line layer associated with said first word line becomes depleted. 
 
     
     
       11. A method according to  claim 8 , wherein:
 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 a second trigger; and 
 said method further comprises performing one or more additional cycles subsequent to said second trigger, 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. 
 
     
     
       12. A method according to  claim 8 , wherein:
 said first group of non-volatile storage elements are is connected to a first word line; 
 said second group of non-volatile storage elements are is connected to said first word line; and 
 each non-volatile storage element of said first group of non-volatile storage elements and said second group of non-volatile storage elements are is connected to a different bit lines line in an interleaving manner. 
 
     
     
       13. A method according to  claim 12 , further comprising:
 said performing programming on said first group of non-volatile storage elements includes applying a first program pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements, inhibiting said second group of non-volatile storage elements from programming in response to said first program pulse, and allowing said first group of non-volatile storage elements to program in response to said first program pulse; and 
 said performing programming on said second group of non-volatile storage elements includes applying a second program pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements, inhibiting said first group of non-volatile storage elements from programming in response to said second program pulse, and allowing said second group of non-volatile storage elements to program in response to said second program pulse. 
 
     
     
       14. A method according to  claim 8 , further comprising:
 adjusting said first trigger voltage prior to said detecting said first trigger voltage, said adjusting said first trigger voltage includes dynamically adjusting said first trigger voltage during operation ofan iterative programming process for programming said first group of non-volatile storage elements and said second group of non-volatile storage elements. 
 
     
     
       15. A method according to  claim 8 , further comprising:
 adjusting said first trigger voltage prior to said detecting said first trigger voltage, said adjusting said first trigger voltage includes adjusting said first trigger voltage based on a number of program-erase cycles. 
 
     
     
       16. A method according to  claim 8 , further comprising:
 adjusting said first trigger voltage prior to said detecting said first trigger voltage, said adjusting said first trigger voltage includes adjusting said first trigger voltage based on a temperature. 
 
     
     
       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. 
 
     
     
       18. A method according to  claim 17 , further comprising:
 determining how many of said first group of non-volatile storage elements and said second group of non-volatile storage elements are still being programmed and have a neighbor that is selected for programming; and 
 detecting said condition based on how many of said first group of non-volatile storage elements and said second group of non-volatile storage elements are still being programmed and have a neighbor that is selected for programming. 
 
     
     
       19. A method according to  claim 17 , further comprising:
 determining how many of said first group of non-volatile storage elements and said second group of non-volatile storage elements are still being programmed and have a neighbor that is selected for programming using extrapolation; and 
 detecting said condition based on how many of said first group of non-volatile storage elements and said second group of non-volatile storage elements are still being programmed and have a neighbor that is selected for programming. 
 
     
     
       20. A method according to  claim 17 , further comprising:
 determining how many of said first group of non-volatile storage elements and said second group of non-volatile storage elements are still being programmed; and 
 detecting said condition based on how many of said first group of non-volatile storage elements and said second group of non-volatile storage elements are still being programmed 
 
     
     
       21. A method according to  claim 1 , wherein:
 said first group of non-volatile storage elements and said second group of non-volatile storage elements are flash memory devices. 
 
     
     
       22. A method according to  claim 1 , wherein:
 said first group of non-volatile storage elements and said second group of non-volatile storage elements are NAND flash memory devices. 
 
     
     
       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 plurality of non-volatile storage elements, said one or more managing circuits program perform a first phase of a programming process and a second phase of said programming process, said second phase includes programming said first group of non-volatile storage elements separately from programming said second group of non-volatile storage elements, said second phase is performed in said one or more managing circuits after and in response to detecting a first trigger voltage, said one or more managing circuits program first phase includes programming said first group of non-volatile storage elements together with said second group of non-volatile storage elements, said first phase is performed by said one or more managing circuits prior to detecting said first trigger voltage, said first phase includes applying a programming pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements, said first trigger voltage is associated with a magnitude of said programming pulse. 
 
     
     
       24. A non-volatile storage apparatus according to  claim 23 , further comprising:
 a control line, said first group of non-volatile storage elements are connected to said control line and said second group of non-volatile storage elements are connected to said control line. 
 
     
     
       25. A non-volatile storage apparatus according to  claim 23 , further comprising:
 a word line, said first group of non-volatile storage elements are connected to said word line and said second group of non-volatile storage elements are connected to said word line; and 
 bit lines, each non-volatile storage element of said first group of non-volatile storage elements and said second group of non-volatile storage elements are connected to different bit lines in an interleaving manner. 
 
     
     
       26. A non-volatile storage apparatus according to  claim 23 , wherein:
 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 by applying a first program pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements while inhibiting said second group of non-volatile storage elements from programming and applying a second program pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements while inhibiting said first group of non-volatile storage elements from programming adjust said first trigger voltage prior to detecting said first trigger voltage. 
 
     
     
       27. A non-volatile storage apparatus according to  claim 23 , wherein:
 said first group of non-volatile storage elements and said second group of non-volatile storage elements do not have any non-volatile storage elements in common. 
 
     
     
       28. A non-volatile storage apparatus according to  claim 23 , further comprising wherein:
 control lines, each non-volatile storage element of said first group of non-volatile storage elements and said second group of non-volatile storage elements are connected to different control lines, said control lines include even control lines and odd control lines, said first group of non-volatile storage elements are connected to said even control lines, said second group of non-volatile storage elements are connected to said odd control lines 
 said one or more managing circuits adjust said first trigger voltage based on a number of program-erase cycles. 
 
     
     
       29. A non-volatile storage apparatus according to  claim 23 , wherein:
 said first group of non-volatile storage elements is arranged in an interleaving manner with respect to said second group of non-volatile storage elements. 
 
     
     
       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 plurality of non-volatile storage elements, said one or more managing circuits program perform a first phase of a programming process and a second phase of said programming process, said second phase includes programming said 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 first phase includes programming 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, said second phase is performed by said one or more managing circuits after and in response to detecting a first trigger voltage, said first phase is performed by said one or more managing circuits prior to detecting said first trigger voltage, said first phase includes applying a programming pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements, said first trigger voltage is associated with a magnitude of said programming pulse. 
 
     
     
       31. A non-volatile storage apparatus according to  claim 30 , wherein:
 said first trigger includes a voltage level for a program pulse concurrently applied to said first group of non-volatile storage elements and said second group of non-volatile storage elements 
 said one or more managing circuits adjust said first trigger voltage prior to detecting said first trigger voltage. 
 
     
     
       32. A non-volatile storage apparatus according to claim  30  31, wherein:
 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 a second trigger; and 
 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 said second trigger 
 said one or more managing circuits adjust said first trigger voltage based on a number of program-erase cycles. 
 
     
     
       33. A non-volatile storage apparatus according to  claim 30 , further comprising:
 a word line, said first group of non-volatile storage elements are connected to said word line and said second group of non-volatile storage elements are connected to said word line; and 
 bit lines, each non-volatile storage element of said first group of non-volatile storage elements and said second group of non-volatile storage elements are connected to different bit lines. 
 
     
     
       34. A non-volatile storage apparatus according to  claim 33 , wherein:
 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 by applying a first program pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements while inhibiting said second group of non-volatile storage elements from programming and applying a second program pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements while inhibiting said first group of non-volatile storage elements from programming. 
 
     
     
       35. A non-volatile storage apparatus according to  claim 30 , wherein:
 said one or more managing circuits dynamically adjust said first trigger voltage. 
 
     
     
       36. A non-volatile storage apparatus according to  claim 30 , wherein:
 said one or more managing circuits adjust said first trigger voltage based on a temperature. 
 
     
     
       37. A non-volatile storage apparatus according to  claim 30 , wherein:
 said one or more managing circuits adjust said first trigger voltage based on a number of program cycles. 
 
     
     
       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. 
 
     
     
       39. A non-volatile storage apparatus according to  claim 23 , wherein:
 said first group of non-volatile storage elements and said second group of non-volatile storage elements are flash memory devices. 
 
     
     
       40. A non-volatile storage apparatus according to  claim 23 , wherein:
 said first group of non-volatile storage elements and said second group of non-volatile storage elements are NAND flash memory devices. 
 
     
     
       41. 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, each non-volatile storage element of the first group of non-volatile storage elements is in communication with a different even control line of one or more even control lines, each non-volatile storage element of the second group of non-volatile storage elements is in communication with a different odd control line of one or more odd control lines, the one or more even control lines and the one or more odd control lines are arranged in an interleaving manner; 
 means for performing programming on a first group of said non-volatile storage elements at a first time and for performing programming on a said 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 detecting a first trigger voltage; 
 means for performing one or more program cycles prior to said detecting said first trigger voltage, 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, said performing one or more program cycles includes applying a programming pulse to said first group of non-volatile storage elements and said second group of non-volatile storage elements, said first trigger voltage is associated with a magnitude of said programming pulse; 
 means for adjusting said first trigger voltage prior to said detecting said first trigger voltage; and 
 means for verifying said first group of said non-volatile storage elements and said second group of said non-volatile storage elements together. 
 
     
     
       42. An apparatus according to  claim 41 , further comprising:
 a first control line, said first group of said non-volatile storage elements are connected to said first control line, said second group of said non-volatile storage elements are connected to said first control line. 
 
     
     
       43. An apparatus according to  claim 41 , further comprising:
 a word line, said first group of said non-volatile storage elements are connected to the said word line, said second group of said non-volatile storage elements are connected to said word line, each non-volatile storage element of said first group of said non-volatile storage elements and said second group of said non-volatile storage elements are connected to different bit lines in an interleaving manner. 
 
     
     
       44. An apparatus according to  claim 41 , wherein said means for performing programming comprises:
 means for applying a first program pulse to said first group of said non-volatile storage elements and said second group of non-volatile storage elements, inhibiting said second group of said non-volatile storage elements from programming in response to said first program pulse, and allowing said first group of said non-volatile storage elements to program in response to said first program pulse; and 
 means for applying a second program pulse to said first group of said non-volatile storage elements and said second group of said non-volatile storage elements, inhibiting said first group of said non-volatile storage elements from programming in response to said second program pulse, and allowing said second group of said non-volatile storage elements to program in response to said second program pulse. 
 
     
     
       45. An apparatus according to  claim 44 , further comprising wherein:
 word lines and bit lines, each non-volatile storage element of said first group of said non-volatile storage elements and said second group of said non-volatile storage elements are connected to different bit lines, said bit lines include even bit lines and odd bit lines, said first group of said non-volatile storage elements are connected to said even bit lines and said second group of said non-volatile storage elements are connected to said odd bit lines, said first group of said non-volatile storage elements is arranged in an interleaving manner with said second group of said non-volatile storage elements 
 said means for adjusting said first trigger voltage include means for adjusting said first trigger voltage based on a number of program-erase cycles. 
 
     
     
       46. An apparatus according to  claim 41 , wherein said means for verifying said first group of non-volatile storage elements and said second group of non-volatile storage elements together includes:
 means for applying one or more verify signals to a word line connected to said first group of said non-volatile storage elements and said second group of said non-volatile storage elements, and simultaneously sensing said first group of said non-volatile storage elements and said second group of said non-volatile storage elements. 
 
     
     
       47. An apparatus according to  claim 41 , wherein:
 said first group of non-volatile storage elements and said second group of non-volatile storage elements do not have any non-volatile storage elements in common; 
 said verifying is performed at a third time that is subsequent to said second time; 
 said second time is subsequent to said first time; and 
 no verification of said first group of non-volatile storage elements and said second group of non-volatile storage elements is performed between said first time and said second time. 
 
     
     
       48. An apparatus according to  claim 41 , wherein:
 said first group of non-volatile storage elements and said second group of non-volatile storage elements are flash memory devices. 
 
     
     
       49. An apparatus according to  claim 41 , wherein:
 said first group of non-volatile storage elements and said second group of non-volatile storage elements are NAND flash memory devices.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.