Patent ID: 8879318

Claim:
A method of storing data in a nonvolatile memory device, the method comprising: performing in succession a plurality of program loops which each include a program operation followed by a verification operation, each program operation including applying a program voltage to a same set of target memory cells among a plurality of memory cells, and each; a verification operation including applying a verification voltage to the same set of target memory cells to determine whether all of the target memory cells are completely programmed; wherein, for each program loop in which it is determined that less than all the target memory cells are completely programmed, the method further comprises adjusting the verification voltage to be used in the verification operation of a next program loop, wherein, for any program loop in which it is determined that all the target memory cells are completely programmed, the method further comprising terminating the performing of the plurality of program loops, and wherein adjusting the verification voltage includes decreasing a level of the verification voltage.