Patent ID: 7126854

Claim:
A method of programming a floating-gate field-effect transistor (“FET”) in which first and second source/drain regions are separated from each other by a channel portion of a body region that forms a pn junction with each source/drain region, a floating-gate electrode laterally adjacent to the first source/drain region overlies a first part of the channel portion, and a select-gate electrode laterally adjacent to the second source/drain region and spaced apart from the floating-gate electrode overlies a second part of the channel portion lateral to the first part of the channel portion, the FET initially being in an erased condition with a programmable threshold voltage (a) less than a first transition value V T1 if the FET is of n-channel type and (b) greater than −V T1 if the FET is of p-channel type, the FET being selectively placable in a programmed condition with the programmable threshold voltage (a) greater than a second transition value V T2 if the FET is of n-channel type and (b) less than −V T2 if the FET is of p-channel type where V T2 exceeds or equals V T1 , the method comprising: changing a first voltage applied to the first source/drain region from a nominal first value to a programming first value; controlling a second voltage applied to the second source/drain region so as to (a) change from a nominal second value to a programming-inhibit second value if the FET is to remain in its erased condition and (b) stay largely at the nominal second value if the FET is to be placed in its programmed condition; and changing a select voltage applied to the select-gate electrode from a nominal select value to a programming-enable select value such that the FET (a) remains in the erased condition if the second voltage goes to its programming-inhibit value or (b) enters the programmed condition if the second voltage stays largely at its nominal value and such that, in an instance where the FET is to remain in its erased condition, the select voltage starts to change from its nominal value to the programming-enable value after the second voltage starts to change from its nominal value to the programming-inhibit value.