Patent ID: 7139192

Claim:
A write operation for a non-volatile memory, comprising: (a) applying a first programming voltage to a word line that is connected to multiple selected memory cells that are being simultaneously programmed to respective target threshold voltages that represent respective values being written; (b) applying a second programming voltage to a set of column lines that are connected to the selected memory cells, wherein application of the first programming voltage and the second programming voltage change threshold voltages of the selected memory cells; and (c) determining which of the selected memory cells have reached the respective target threshold voltages that represent the respective values; (d) removing from the set of column lines any column lines connected to the selected memory cells determined to have reached the respective target threshold voltages; (e) changing the first programming voltage; and (f) repeating steps (a) to (e) until the set of column lines is empty, wherein for a series of repetitions of step (e) an amount of change in the first programming voltage differs from amounts of change in preceding executions of step (e).