A memory comprises a plurality of digital multilevel memory cells. A
window of valid data voltages for accessing the said plurality of digital
multilevel memory cells is detected. The window may be detected by
incrementing a first programming voltage to program data in the plurality
of memory cells and verifying whether the data in at least one of said
plurality of memory cells is properly programmed. The incrementing and
verifying may be repeated until data is verified to be properly
programmed in one of said plurality of memory cells. The data in each
memory cell of said plurality of memory cells is verified. The
verification may be by incrementing a second programming voltage, and
verifying whether data in each memory cell is properly programmed within
a margin. The incrementing and verifying is repeated for each memory cell
outside of the margin.