Erase verify for non-volatile memory
A memory device verify system determines a state of memory cells in a memory. The memory includes a memory array having a plurality of memory cells coupled to bit lines. A verify circuit is coupled to the bit lines to determine if memory cells have a erase level that is within predetermined upper and lower limits. The verify circuit can include first and second comparators. In one embodiment, the first comparator is used to compare a bit line current with an upper first reference current. The second comparator is used to compare a bit line current with a lower second reference current. The comparator circuit is not limited to reference currents, but can use reference voltages to compare to a bit line voltage. The verify circuit, therefore, eliminates the need for separate bit line leakage testing to identify over-erased memory cells.
Latest Patents:
CROSS-REFERENCE TO RELATED APPLICATION
This application is a Divisional of U.S. patent application Ser. No. 11/198,196, filed Aug. 5, 2005, and titled, “ERASE VERIFY FOR NON-VOLATILE MEMORY,” which is a Divisional of U.S. patent application Ser. No. 09/943,479, filed Aug. 30, 2001, now U.S. Pat. No. 7,057,935, issued Jun. 6, 2006, and titled, “ERASE VERIFY FOR NON-VOLATILE MEMORY,” which is commonly assigned and incorporated by reference in its entirety herein.
TECHNICAL FIELD OF THE INVENTIONThe present invention relates generally to memory devices and in particular the present invention relates to determining erase levels of memory cells in non-volatile memory devices.
BACKGROUND OF THE INVENTIONThe use of non-volatile memory systems that maintain data integrity when a power supply is removed are expanding rapidly in integrated circuit technology. A class of non-volatile memory systems having memory cells which has a source, a drain, a channel, a floating gate over the channel and a control gate are widely used. Two popular types of non-volatile memory designs in this class is the electronically erasable and programmable read only memories (EEPROM) and the FLASH erasable-programmable read only memory (EPROM). The FLASH EPROM or flash memory system allows the simultaneous erasure of multiple memory cells.
The floating gate of the memory cell stores data and the control gate of the memory cell controls the floating gate. The floating gates are generally formed from polysilicon members completely surrounded by an insulator. A memory cell is programmed when a charge is stored on the floating gate. Moreover, a memory cell is unprogrammed, or erased, when the charge is removed from the floating gate.
One method of programming a memory cell is accomplished by applying a potential (e.g., 4-7 V) to its drain and a potential (e.g., 10-15 V) to its control gate programs. This causes electrons to be transferred from the source to the floating gate of the memory cell. One method of erasing a memory cell is accomplished by applying a positive potential (e.g., 10-15 V) to its source while grounding the control gate and letting the drain float. This action removes electrons from the floating gate.
A problem that may be encountered in erasing a memory cell is over-erasure. This occurs when too many electrons are removed from the floating gate during an erase operation. A memory cell whose floating gate has too many electrons removed is called an over-erased cell. An over-erased cell has a slight positive charge that biases the memory cell thereby causing a small current leak. This current leak can cause a false reading. Moreover, during the read mode, an over-erased memory cell may disable a whole column of memory cells in a memory array. Therefore, it is important to locate over-erased cells and correct them. One method of correcting an over-erased cell is accomplished by applying a soft program that applies a predetermined voltage pulse to the control gate of the cell while the bit line is biased. This action eliminates the slight positive charge on the floating gate.
Another problem that may be encountered is under-erased memory cells. Under-erased memory cells occur when not enough electrons are removed from the floating gate during an erase procedure. An under-erased memory cell is corrected by performing another erase procedure.
Currently two separate steps are taken to determine if a memory cell is over-erased or under-erased. First the memory cells are individually checked to determine if they are all erased. Once that step is completed, the memory cells are then checked to see if any cells have been over-erased by checking bit line leakage current. The completion of both steps takes a significant amount of time.
For the reasons stated above, and for other reasons stated below which will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for a system to determine over-erased and under erased cells using less processing time.
BRIEF DESCRIPTION OF THE DRAWINGS
In the following detailed description of the preferred embodiments, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration specific preferred embodiments in which the inventions may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that logical, mechanical and electrical changes may be made without departing from the spirit and scope of the present invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the claims.
focus on features of the memory that are helpful in understanding the present invention. The memory device 100 includes an array 116 of memory cells. The memory cells are preferably floating gate memory cells, and the array 116 is arranged blocks of rows and columns. The blocks allow the memory cells to be erased in large groups. Data, however, is stored in the memory array 116 in small data groups (byte or group of bytes) and separate from the block structure. Erase operations are usually performed on a large number of cells in parallel.
Address decode circuitry 112 is provided to decode address signals provided on address lines A0-Ax 114. Address signals are received and decoded to access the memory array 116. Data input and output buffer circuits 122 are included for bi-directional data communication over a plurality of data (DQ) lines 124 with the external processor 102. Control circuit 130 decodes signals provided on control lines 126 from the external processor 102. These signals are used to control the operations of the memory, including data read, date write, and erase operations, as known to those skilled in the art. Verify circuits 128 are included for verifying the state of a memory cell, as described in detail below.
In addition, state machine(s) can be provided as part of the control circuitry to perform read, write and erase operations. The flash memory may also include a charge pump (not shown) that generates an elevated voltage, Vpp, used during programming of the memory cells and other internal operations. During write operations, Vpp is coupled to the memory cells for providing appropriate write operation programming power. Charge pump designs are known to those skilled in the art, and provide power which is dependent upon an externally provided supply of voltage Vcc.
As stated above, the flash memory of
A more detailed illustration of a flash memory array 130 is provided in
During an erase verify operation, a voltage is applied to word line 144 of a memory cell 110. In response to the word line voltage, the memory cell conducts a current through bit line 140. That is, the memory cell responds to the word line voltage based on a charge of floating gate 146. The level of current in the bit line indicates a state of the memory cell. That is, the memory cell may have an erase state that is either erased, over-erased or under-erased. An erase verify circuit 128, of one embodiment of the present invention, uses the bit line current to determine if memory cells are erased, over-erase or under-erased in a single step. As explained above, prior methods required a first erase verify operation to determine if memory cells are erased. A second operation is then performed to determine if memory cells were over-erased.
The verify circuit 128 can includes a comparator circuit 150, as illustrated in
For example, the first reference current (Ir1) may be set at 50 μA and the second reference current (Ir2) may be set at 90 μA. A 40 μA window, therefore, is defined by these references. It should be noted that these current levels are only used as an example. The reference current levels may vary depending on defined specifications of the memory device being used. According to this example, any current over 90 μA indicates that the bit line 140 is coupled to an over-erased cell and any current under 50 μA indicates a current that would be found in a bit line 140 that was coupled to a memory cell 110 that was under-erased. Referring to Table 2, three possible bit line current (Ib1) levels and the two output signals are illustrated when the reference currents are set at 90 μA and 50 μA.
Current comparators and current references of
The first comparator 155 of the comparator circuit 150 compares the bit line voltage Vb1 with the first reference voltage Vr1 and produces a first output signal (Os1). The second comparator 157 of the comparator circuit 150 compares the bit line voltage Vb1 with the second reference voltage Vr2 and produces a second output signal (Os2). An optional logic circuit 151 can be provided to process the output signals, Os1 and Os2, and provide a single output to indicate if the bit line has a voltage level within a window defined by Vr1 and Vr1. The logic circuit 151 can be included with verify circuit 128. That is, the embodiments of
One embodiment of bit line current-to-voltage converter 160 is illustrated in
Referring to
Referring to
As explained above, the memory includes control circuitry 130 to perform read, program and erase operations on the memory array. The control circuit uses the output(s) of the verify circuit to determine a state of memory cells being erased in one operation step. Thus, if an over-erased cell is detected the control circuitry performs a soft program, or heal operation, to correct over-erased cells. Moreover, if an under-erased cell is detected the control circuitry performs an additional erase procedure.
A typical erase algorithm for a standard stacked one transistor flash cell includes three main phases: 1) pre-program to program all cells; 2) erase to apply erase pulses to the cells and verify until cells are erased; and 3) heal to detect cell leakage and apply a program scheme to over-erased cells. The present invention, the leakage detection step is merged with the verify portion of phase 2. As erase verification is performed, the system determines if the cell is over-erased. The cell address and status information can be latched for use in phase 3, or can be used immediately by applying the heal programming scheme to that cell, column or array.
ConclusionAn erase verify system has been described that determines a state of memory cells in a non-volatile memory. The memory includes a non-volatile memory array having a plurality of memory cells coupled to bit lines. A verify circuit is coupled to the bit lines to determine if memory cells have a erase level that is within predetermined upper and lower limits. The verify circuit can include first and second comparators. The first comparator is used to compare a bit line current with an upper first reference current. The second comparator is used to compare a bit line current with a lower second reference current. The comparator circuit is not limited to reference current, but can use reference voltages and a bit line voltage. The verify circuit, therefore, eliminates the need for separate bit line leakage testing to identify over-erased memory cells. Methods of detecting a bit line current have also been described.
Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that any arrangement, which is calculated to achieve the same purpose, may be substituted for the specific embodiment shown. This application is intended to cover any adaptations or variations of the present invention. Therefore, it is manifestly intended that this invention be limited only by the claims and the equivalents thereof.
Claims
1. A method for erasing a flash memory device, the method comprising:
- pre-programming flash memory cells;
- applying erase pulses to the flash memory cells and performing an erase verification of the flash memory cells; and
- healing over-erased ones of the flash memory cells without performing a separate leakage detection operation.
2. The method of claim 1 wherein over-erased flash memory cell addresses are latched during the erase verification of the flash memory cells.
3. The method of claim 1 wherein healing over-erased flash memory cells is embedded within performing the erase verification of the flash memory cells.
4. The method of claim 1 wherein the flash memory device comprises a bit line coupled to each column of flash memory cells.
5. The method of claim 4 wherein over-erased ones of the flash memory cells are cells having a bit line current of 100 μA or greater, erase verified flash memory cells are cells having a bit line current of at least 70 μA and less than 100 μA, and under erased flash memory cells are cells having a bit line current of 40 μA or less.
6. The method of claim 4 wherein erase status information and cell addresses of the over-erased ones of the flash memory cells are stored prior to healing the over-erased flash memory cells.
7. The method of claim 4 wherein status information and cell addresses of the over-erased ones of the flash memory cells are used during the healing of the over-erased flash memory cells.
8. The method of claim 4 wherein a voltage applied to each flash memory cell causes a bit line current indicating an erased state of the flash memory cell.
9. A method for erasing a flash memory device, the method comprising:
- pre-programming flash memory cells;
- applying erase pulses to the flash memory cells; and performing an erase verification of the flash memory cells that includes healing of over-erased ones of the flash memory cells.
10. The method of claim 9 wherein the erase verification comprises determining a bit line current of a bit line coupled to a column of flash memory cells of the flash memory device.
11. The method of claim 10 wherein the bit line current is determined by a comparator circuit coupled to the bit line.
12. The method of claim 11 wherein the comparator circuit compares the bit line current to a reference current.
13. The method of claim 10 and further including:
- converting the bit line current to a bit line voltage; and
- comparing the bit line voltage to a reference voltage.
14. The method of claim 10 and further including:
- converting the bit line current to a bit line voltage; and
- comparing the bit line voltage to a plurality of reference voltages.
15. A method for erasing a non-volatile memory, the method comprising:
- pre-programming a plurality of non-volatile memory cells;
- performing an erase operation on the plurality of non-volatile memory cells including an erase verification during which an address and erase status of each non-volatile memory cell is determined;
- storing the address and erase status of the over-erased non-volatile memory cells; and if the erase verification determines that any of the plurality of non-volatile memory cells is over-erased, soft programming the over-erased non-volatile memory cells, without performing a separate leakage detection operation, in response to the stored address and erase status.
16. The method of claim 15 wherein the leakage detection operation is performed substantially simultaneously with the erase verification.
17. The method of claim 15 and further including if the erase verification determines that at least one of the plurality of non-volatile cells is under-erased, performing an additional erase operation on the at least one cell.
18. A method for erasing a non-volatile memory comprising a plurality of bit lines coupled to columns of non-volatile memory cells, each cell having an address and an erase status, the method comprising: pre-programming a plurality of non-volatile memory cells;
- performing an erase operation on the plurality of non-volatile memory cells including an erase verification during which an address and erase status of each non-volatile memory cell is determined; and if the erase verification determines that any of the plurality of non-volatile memory cells is over-erased, soft programming the over-erased non-volatile memory cells, without performing a separate leakage detection operation, in response to the address and erase status.
19. The method of claim 18 wherein the erase verification is performed by a verify circuit that is coupled to the bit lines wherein the verify circuit comprises first and second comparators, the first comparator generating an upper reference current and the second comparator generating a lower reference current.
20. The method of claim 19 wherein the erase verification comprises:
- comparing a first bit line current with the upper and lower reference currents;
- if the first bit line current of a first memory cell is less than the lower reference current, storing the address and the under-erased status indication; and
- if the first bit line current of the first memory cell is greater than the upper reference current, storing the address and the over-erased status indication.
Type: Application
Filed: Sep 12, 2006
Publication Date: Jan 11, 2007
Applicant:
Inventor: Christophe Chevallier (Palo Alto, CA)
Application Number: 11/519,679
International Classification: G11C 11/34 (20060101); G11C 16/04 (20060101);