The present invention relates to a method for programming a non-volatile memory cell having a floating gate to store charges, and wherein the programming method is self limiting and is useful for MLC programming.
Floating gate based non-volatile memory cells are well known in the art. Typically, they have been of two types, split gate or stacked gate, both of which are well known in the art. With respect to split gate, see for example, U.S. Pat. Nos. 6,747,310 and 7,046,552.
Methods to program a floating gate based non-volatile memory cell are well known in the art. See for example U.S. Pat. No. 5,029,130 assigned to the present assignee, describing a programming method to program a floating gate to a single state (programmed state), using hot electrons to be injected from a channel region into the floating gate. The electrons injected onto the floating gate continue until the charged floating gate can no longer sustain a high surface potential underneath, to generate the hot electrons. At that point, the electrons in the floating gate will “turn off” the electrons from flowing from the source onto the floating gate (see col. 4, lines 62-68). Thus, as described, the process is a self-limiting one in that voltages are applied uninterrupted until the electrons can no longer be injected onto the floating gate.
For MLC, or multi-Level Cell programming in which a floating gate can be programmed into a plurality of states, the prior art teaches a different method. In U.S. Pat. No. 7,254,071, a method is described wherein a selected number of pulses are applied. Afterwards, the state of the floating gate is “read’ or “verified”. If the verified state matches the intended state, then the programming sequence stops. If however, programming had not reached the desired state, then usually, the voltage is increased and a number of additional pulses are applied (see col. 8, lines 3-20).
The problem with a program and verify sequence is that it takes time to read or verify the state. Thus, it is desired to decrease the programming time requited to program a floating gate based non-volatile cell into one of a plurality of states.
Accordingly, in the present invention, a method is disclosed to program a non-volatile memory cell to one of a plurality of states, representing multi-level bits. The non-volatile memory cell is of the type that has a substrate of a first conductivity type having a first region of a second conductivity type at a first end, and a second region of the second conductivity type at a second end, spaced apart from the first end, with a channel region between the first end and the second end. A floating gate is insulated from a first portion of the channel region and is adjacent to the second region. A first control gate is adjacent to the floating gate and is insulated therefrom, and is also insulated from a second portion of the channel region, and is adjacent to the first region. A second control gate is capacitively coupled to the floating gate, and is positioned over the floating gate. The method of the present invention involves the application of a current source to the first region. A first voltage is applied to the first control gate sufficient to turn on the second portion of the channel region. A second voltage is applied to the second region, sufficient to cause electrons to flow from the first region towards the second region. A third voltage is applied to the second control gate sufficient to cause electrons in the channel region to be injected onto the floating gate. The third voltage is applied uninterrupted until the floating gate is programmed to the one state.
Referring to
The method of the present invention may be used with the non-volatile cell 10 shown and described in
In the method of the present invention, to program the cell 10 to a state, which is one of a plurality of states (i.e. to program the cell 10 to an MLC level), the following electrical parameters are applied to the various components of the cell 10. A current source is applied to the first region 16. A first voltage is applied to the first control gate 22 sufficient to turn on the first portion of the channel region 20. A second voltage is applied to the second region 18 sufficient to attract electrons from the first region 16 to traverse the channel region 20 in the direction of the second region 18. A third voltage is applied to the second control gate 26 sufficient to cause the electrons in the channel region 20 to be injected onto the floating gate 24. The third voltage is applied continuously and uninterruptedly until the floating gate 24 is programmed to the one state. When the one state is reached the electrons injected on the floating gate 24 can no longer sustain a high surface potential underneath, in the channel region 20, to generate the hot electrons. Thus, the method of the present invention is a self limiting process in that the voltage applied on the various terminals and components of the cell 10 until the floating gate is programmed to the one state at which one the process of electron injection ceases automatically.
The theory of the method of programming of the present invention is as follows. When a current is applied to the first region 16, it traverses the channel region 20 in the direction of the second region 18. With a first voltage applied to the first control gate 22, the portion of the channel region 20 directly underneath the first control gate 22 is in an inversion state or weak inversion state, permitting the electrons to traverse that region. However, because the third voltage applied to the second control gate 26 is substantially greater than the first voltage, and because the second control gate is highly capacitively coupled to the floating gate 24, there is a high lateral electric field in a gap in the channel region 20 that is between the region directly underneath the first control gate 22 and underneath the floating gate 24. Electrons from the first region 16 are accelerated in this gap by the high electric field and become hot. Some of the electrons tunnel through the insulator (typically silicon oxide) between the floating gate 24 and the substrate 12 and are injected onto the floating gate 24. The vertical electric filed caused by the high third voltage applied to the second control gate 26 assist in the electrons tunneling through the floating gate oxide onto the floating gate 24. As more electrons are injected onto the floating gate 24 however, the floating gate 24 potential becomes lower. As a result the vertical electric potential between the channel region 20 and the floating gate 24 is lowered. Eventually the decrease in vertical electric potential between the channel region 20 and the floating gate is not longer sufficient to sustain the electrons being injected onto the floating gate 24. At that point the programming of the floating gate 24 ceases.
The potential on the floating gate 24 at program saturation may be expressed mathematically as follows:
VFGP=VCGPa+VWLPb+VSPPg+VSLPm+QP/Ctot=VSAT
To program the cell 10 to a different state, the third voltage applied to the second control gate 26 is changed to a fourth voltage, different from the third voltage. All the other electrical parameters applied to the other components of the cell 10 remain the same.
An example of programming parameters for a MCL method of the present invention is as follows:
In this example, different third voltages applied to the second control gate 26 is used to program the memory cell 10 to two bits per cell. Although in the example shown above, the same voltage is applied to the first control gate 22, the second region 18 and the erase gate 28, and the same current is applied to the first region 16 with only the third voltage applied to the second control gate 26 changed, the method of the present invention may also be used with different voltages applied to the first control gate 22, second region 18 and erase gate 28.
Furthermore, all of the values may be modified depending upon the cell size, and design and performance requirements.
Referring to
Referring to
Referring to
Referring to
As seen from the above discussion, the voltage range applied to the second control gate 26 determines the state of the cell 10 to which it can be programmed. The voltage range, however, for a cell 10 in a die may vary from die to die even on the same wafer. Referring to
Referring to
Referring to
From the foregoing it can be seen that a simplified method of programming a non-volatile memory cell to one of a plurality of states in a plurality bits is shown, with attending beneficial results.