In a nonvolatile memory having an array of memory cells, wherein the
memory cells are individually programmable to one of a range of threshold
voltage levels, there is provided a predictive programming mode in which
a predetermined function predicts what programming voltage level needs to
be applied in order to program a given memory cell to a given target
threshold voltage level. In this way, no verify operation needs to be
performed, thereby greatly improving the performance of the programming
operation. In a preferred embodiment, the predetermined function is
linear and is calibrated for each memory cell under programming by one or
more checkpoints. The checkpoint is an actual programming voltage that
programs the memory cell in question to a verified designated threshold
voltage level.