Patent ID: 7522449

Claim:
A method of performing a program operation in a phase change memory device comprising a plurality of phase change memory cells, the method comprising: (a) selecting multiple memory cells among the plurality of phase change memory cells; (b) programming a bit of program data to each of the selected memory cells, wherein each bit of program data comprises a bit of set data or a bit of reset data; (c) performing a verification read operation on the selected memory cells, the verification read operation comprising comparing a bit of read data stored in each of the selected memory cells with a corresponding bit among the program data; (d) identifying any failed cells, for which the read data is detected to be different from the corresponding program data, among the selected memory cells by determining whether each bit of read data stored in the selected memory cells is the same as the corresponding bit among the program data; (e) upon identifying at least one failed cell among the selected memory cells, determining whether a corresponding bit of program data for any of the failed cells comprises a bit of set data, and determining whether a corresponding bit of program data for any of the failed cells comprises a bit of reset data; (f) upon determining that a corresponding bit of program data for any of the failed cells comprises a bit of set data, re-programming all of the selected memory cells for which the corresponding bit of program data comprises a bit of set data; and (g) upon determining that a corresponding bit of program data for any of the failed cells comprises a bit of reset data, re-programming each of the failed cells for which the corresponding bit of program data comprises a bit of reset data, and not re-programming selected memory cells that have been successfully programmed with a bit of reset data.