A method of programming a memory cell is disclosed. The memory cell comprises
a
select transistor and a data storage element. The method comprises allowing current
to flow through the data storage element until a predetermined current or voltage
is detected. If the current or voltage exceeds a threshold, then the programming
is deemed complete.