Patent ID: 7170791

Claim:
A method of verifying programming of a nonvolatile memory cell in a semiconductor memory device to a desired state, the semiconductor memory device including at least one nonvolatile memory cell having n (n>2) possible states, each state corresponding to threshold voltage levels within a predetermined range, the nonvolatile memory cell holding a voltage level indicative of one of the states, the method comprising at least the steps of: selecting first, second, and n-th references respectively corresponding to first, second, and n-th threshold voltages, the first, second, . . . and n-th threshold voltages specifying lower limit values of first, second, . . . and n-th states, respectively; applying a programming voltage to the nonvolatile memory cell; sensing a threshold voltage level of the nonvolatile memory cell; comparing the sensed threshold voltage level of the nonvolatile memory cell with the first reference to output a first result of the comparison between the threshold voltage level of the nonvolatile memory cell and the first reference; comparing the threshold voltage level of the nonvolatile memory cell with one of the second and third references selected according to the first result to output a second result of the comparison between the threshold voltage level of the nonvolatile memory cell and the selected one of the second and third references; and comparing the first and second results with an expectation value indicative of a desired state and, in the case where the first and second results are equal to the expectation value, indicating that the programming has succeeded, wherein the nonvolatile memory cell includes a gate electrode formed on a semiconductor layer via a gate insulating film, a channel region formed below the gate electrode, a source and a drain as diffusion regions formed on both sides of the channel region and having a conductive type opposite to that of the channel region, and memory functional units formed on both sides of the gate electrode and having the function of retaining charges.