Patent ID: 8842476

Claim:
A method for operating non-volatile storage, comprising: receiving program data for a plurality of non-volatile storage elements that are associated with a word line at a plurality of first latches in a memory array, there being a first latch associated with each non-volatile storage element; transferring the program data from the first latches to respective sets of data latches for each of the non-volatile storage elements, there being one data latch in each respective set for each of a plurality of bits to be programmed into each non-volatile storage element; programming the non-volatile storage elements to a plurality of data states, including storing a plurality of bits per non-volatile storage element based on the program data in the respective sets of data latches; storing lockout data in the plurality of first latches during the programming; maintaining the program data in the sets of data latches after the programming is complete; sensing the non-volatile storage elements after the programming is complete; storing erratic program status in the first latches based on results of the sensing; and determining whether non-volatile storage elements were erratically programmed based on the program data maintained in the sets of data latches after the programming is complete and the erratic program status stored in the first latches, including determining whether the total number of erratically programmed non-volatile storage elements for a plurality of the data states is greater than a threshold amount based on the erratic program status in the first latches.