Patent ID: 6992933

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 two 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 two states, the method comprising the steps of: selecting first and second references respectively corresponding to first and second voltages, the first and second voltages specifying a lower limit and an upper limit, respectively, of a voltage level within a predetermined range, the voltage level indicative of the desired state; applying a programming voltage to the nonvolatile memory cell; sensing a threshold voltage level of the nonvolatile memory cell; and comparing the sensed threshold voltage level of the nonvolatile memory cell with the first and second references and, in the case where the threshold voltage level of the nonvolatile memory cell is higher than the first reference and lower than the second reference, indicating that the nonvolatile memory cell is programmed into the desired state, 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.