Patent ID: 7450426

Claim:
A non-volatile memory system, comprising: a set of multi-state non-volatile storage elements; managing circuitry in communication with said set of non-volatile storage elements, said managing circuitry includes a digital to analog converter for providing a program voltage signal to said set of non-volatile storage elements, said managing circuitry programs said set of non-volatile storage elements by: receiving a request to program data to said set of multi-state non-volatile storage elements, applying by said program voltage signal a predetermined number of program voltage pulses to said set to program said data to said non-volatile storage elements, said applying includes increasing a size of each of said program voltage pulses by a first increment value until said predetermined number is reached, resetting said program voltage signal, and after resetting said program voltage signal, applying by said program voltage signal one or more additional program voltage pulses to said set to complete programming of said data, said applying one or more additional program voltage pulses includes increasing a size of each of said one or more additional program voltages by a second increment value.