Internal data load for non-volatile storage
First Claim
1. A method of operating non-volatile storage, comprising:
- starting to program a first upper page into a first group of non-volatile storage elements associated with a first word line, the first group of non-volatile storage elements are to be programmed to a plurality of data states;
pausing programming of the first upper page when programming of a first data state of the plurality of data states is complete;
reading a lower page of data from a second group of non-volatile storage elements associated with a second word line while programming of the first upper page is paused, the second word line is adjacent to the first word line;
storing the lower page of data in a set of latches;
completing the programming of the first upper page into the first group non-volatile storage elements after storing the lower page; and
programming a second upper page of data into the second group non-volatile storage elements based on the lower page of data stored in the set of latches, the programming of the second upper page occurs after completing the programming of the first upper page into the first group of non-volatile storage elements.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques are disclosed herein for performing an Internal Data Load (IDL) to sense non-volatile storage elements. Read pass voltages that are applied to the two neighbor word lines to a selected word line may be adjusted to result in a more accurate IDL. The read pass voltage for one neighbor may be increased by some delta voltage, whereas the read pass voltage for the other neighbor may be decreased by the same delta voltage. In one aspect, programming of an upper page of data into a word line that neighbors a target word line is halted to allow lower page data in the target memory cells to be read using an IDL and preserved in data latches while programming the upper page in the neighbor word completes. Preservation of the lower page data provides for a cleaner lower page when later programming the upper page into the target memory cells.
-
Citations
20 Claims
-
1. A method of operating non-volatile storage, comprising:
-
starting to program a first upper page into a first group of non-volatile storage elements associated with a first word line, the first group of non-volatile storage elements are to be programmed to a plurality of data states; pausing programming of the first upper page when programming of a first data state of the plurality of data states is complete; reading a lower page of data from a second group of non-volatile storage elements associated with a second word line while programming of the first upper page is paused, the second word line is adjacent to the first word line; storing the lower page of data in a set of latches; completing the programming of the first upper page into the first group non-volatile storage elements after storing the lower page; and programming a second upper page of data into the second group non-volatile storage elements based on the lower page of data stored in the set of latches, the programming of the second upper page occurs after completing the programming of the first upper page into the first group of non-volatile storage elements. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-volatile storage device, comprising:
-
a plurality of non-volatile storage elements; a set of latches associated with the plurality of non-volatile storage elements; a plurality of word lines associated with the plurality non-volatile storage elements, the word lines include a target word line, a first neighbor word line on one side of the target word line and a second neighbor word line on the other side of the target word line; and one or more managing circuits in communication with the plurality non-volatile storage elements, the set of latches, and the plurality of word lines, the one or more managing circuits start to program a first upper page into a first group of the plurality of non-volatile storage elements associated with the first neighbor word line, the first group of non-volatile storage elements are to be programmed to a plurality of data states, the one or more managing circuits determine when programming of a first data state of the plurality of data states is complete, the one or more managing circuits pause programming of the first upper page into the first group of non-volatile storage elements in response to the first data state programming being complete, the one or more managing circuits read a lower page of data from a second group of the plurality of non-volatile storage elements associated with the target word line while the programming is paused, the one or more managing circuits store the lower page of data in the set of latches, the one or more managing circuits complete the programming of the first upper page into the first group non-volatile storage elements after storing the lower page of data in the set of latches, the one or more managing circuits program a second upper page of data into the second group non-volatile storage elements based on the lower page of data stored in the set of latches, the one or more managing circuits program the second upper page after the one or more managing circuits complete the programming of the first upper page into the first group of non-volatile storage elements. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-volatile storage device, comprising:
-
a three-dimensional memory array comprising a plurality of non-volatile storage elements. a set of latches associated with the plurality of non-volatile storage elements; a plurality of word lines associated with the plurality of non-volatile storage elements, the plurality of word lines including a selected word line, a first neighbor word adjacent to the selected word line and a second neighbor word line adjacent to the selected word line; and managing circuitry in communication with the plurality of non-volatile storage elements, the set of latches, and the plurality of word lines, the managing circuitry programs a first lower page of data into a first group of the non-volatile storage elements associated with the first neighbor word line, the managing circuitry starts to program a first upper page into the first group of the non-volatile storage elements after programming the first lower page, the first group of non-volatile storage elements are to be programmed to a plurality of data states, the managing circuitry determines when programming of a first data state of the plurality of data states is complete, the managing circuitry pauses programming of the first upper page into the first group of non-volatile storage elements in response to the first data state programming being complete, the managing circuitry reads a second lower page of data from a second group of the non-volatile storage elements associated with the selected word line while the programming is paused, the managing circuitry stores the second lower page of data in the set of latches, the managing circuitry completes the programming of the first upper page into the first group non-volatile storage elements after storing the second lower page of data in the set of latches, the managing circuitry programs a second upper page of data into the second group non-volatile storage elements based on the second lower page of data stored in the set of latches, the managing circuitry programs the second upper page after the managing circuitry completes the programming of the first upper page into the first group of non-volatile storage elements. - View Dependent Claims (18, 19, 20)
-
Specification