Patent ID: 8094492

Claim:
A method for programming non-volatile storage, comprising: performing a first phase of an iterative programming process, the first phase includes programming a first group of non-volatile storage elements together with a second group of non-volatile storage elements, the iterative programming process includes alternately applying programming and verify pulses to at least a portion of the first group of non-volatile storage elements and the 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; detecting a first condition; and performing a second phase of the iterative programming process, the second phase includes programming the first group of non-volatile storage elements separate from the second group of non-volatile storage elements, the second phase is performed subsequent to the first phase, the second phase is performed in response to the detecting a first condition.