Patent Publication Number: US-6707713-B1

Title: Interlaced multi-level memory

Description:
BACKGROUND 
     A flash memory cell can be a field effect transistor (FET) that includes a select gate, a floating gate, a drain, and a source. A cell can be read by grounding the source, and applying a voltage to a bitline connected with the drain. By applying a voltage to the wordline connected to the select gate, the cell can be switched on and off. 
     Flash memory cells include NAND type and NOR type circuits. NAND flash memory cells have “n” cell transistors connected in series and are connected in parallel between bit lines and ground lines. NAND flash memory cells are useful in large scale integration. NOR flash memory cells include cell transistors that are connected in parallel between bit lines and ground lines. NOR flash memory cells provide high-speed operation. 
     Programming a cell includes trapping excess electrons in the floating gate to increase voltage. This reduces the current conducted by the memory cell when the select voltage is applied to the select gate. The cell is programmed when the cell current is less than a reference current when the select voltage is applied. The cell is erased when the cell current is greater than the reference current and the select voltage is applied. 
     Memory cells with only two programmable states contain only a single bit of information, such as a “0” or a “1”. A multi-level cell (“MLC”) is a cell that can be programmed with more than one voltage level. Each voltage level is mapped to corresponding bits of information. For example, a single multilevel cell can be programmed with one of four voltage levels, e.g. −2.5V, 0.0V, +1.0V, +2.0V that correspond to binary bits “00”, “01”, “10”, and “11”, respectively. A cell that is programmable at more voltage levels can store more bits of data based on Eqn. 1. 
     
       
           N= 2 B   Eqn.1 
       
     
     B is the number of bits of data stored 
     N is the number of voltage levels. 
     The amount of data stored in a cell can be increased by using more programming states. Thus, two or more bits of data are stored in each cell. A cell with four states requires three threshold levels. U.S. Pat. Nos. 5,043,940 and 5,172,338 describe such cells and are incorporated herein by reference. More time is required to program a cell with more states to avoid overshooting a desired smaller programming range. 
     FIG. 1 shows a diagram of a multi-level cell&#39;s programming voltage levels  100  with four voltage distributions (“programming voltage levels”)  102 ,  104 , 106 , and  108 . For illustration purposes, the voltage distributions  102   104 , 106 , and  108  are referred to as “state A” “state B” “state C” and “state D”, respectively. They correspond to the two-bit binary values “00” “01” “10” and “11”, respectively. 
     BRIEF SUMMARY OF THE PREFERRED EMBODIMENTS 
     A memory device having a plurality of multi-bit cells that are programmed with interlaced data provide superior read access time. The multi-bit cells are read by reading the first bit of each of the plurality of cells sequentially using a first reference voltage then reading the second bit of a first subset of the plurality of cells sequentially using a second reference voltage then reading the second bit of a second subset of the plurality of cells sequentially using a third reference voltage. The second reference voltage being higher and the third reference voltage being lower than the first reference voltage. 
    
    
     BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS 
     The present invention is described with reference to the accompanying figures. In the figures, like reference numbers indicate identical or functionally similar elements. Additionally, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. 
     FIG. 1 is a diagram of a multi-level cell&#39;s programming voltage levels; 
     FIG. 2 is a diagram of a multi-level cell&#39;s sense current levels, states, and stored data; 
     FIG. 3 is a diagram of a multi-level cell&#39;s sense current levels during the first read; 
     FIG. 4 is a diagram of a multi-level cell&#39;s sense current levels during the second read; 
     FIG. 5 is a diagram of a multi-level cell&#39;s sense current levels during the third read; 
     FIG. 6 is a flow diagram of an embodiment of the read process; and 
     FIG. 7 is a representation of an embodiment of a memory device. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     To improve read access time, data is stored in multi-bit memory cells in an interlaced format. The interlaced format allows a first bit to be read from each multi-bit memory cell using a first reference voltage and reference current. The second bit (and any subsequent bit(s)) is then read from each multi-bit cell with either a second or third reference voltage depending on the value of the first bit of interlaced data from that cell. Optionally, the same reference current can be used for all reads, thus reducing the read circuit complexity. 
     Multilevel memory cells can be read by a series of consecutive reads. FIG. 1 shows a four level multi-level cell with four programming levels  102 ,  104 ,  106 , and  108 . The reference voltages  110 ,  112 , and  114  can be used during the reading of the cell to determine the stored value in the cell. For example a two pass read would use reference voltage  112 . If the first read detected the stored voltage level was above the reference voltage  112 , then the second read would use the higher reference voltage  114 . The read would then be able to detect if the stored voltage level was above or below the reference voltage  114 . Alternatively, if the first read using the reference voltage  112  detected that the stored voltage level was below the reference level  112 , then a lower reference level  110 . The second read then can detect if the stored voltage level is above or below the reference level  110 . Thus, two reads, similar to two single bit reads, can determine which of the four voltage levels is stored in the cell. The voltage level of each cell is determined then the value of the next cell is determined. This requires applying two reference voltages to read the two bits stored in each cell. 
     The terms “multi-bit cell” and “multi-bit cell” are used interchangeably. The term “two-bit cell” is a type of multi-bit cell that can be programmed with at least two bits of information. 
     Multi-bit memory cells are commonly grouped together in pages, subpages, or arrays. Once the memory cells are grouped, the data is divided. In the case of two-bit cells, the data will be divided in half into two equal subsets. If the cells contain more than two bits, the data is divided by the number of bits each cell can store. The data is interlaced such that the first subset of data is stored in the first bit of each cell and the second subset of data is stored in the second bit of each cell and so forth. 
     For example, assuming the memory includes one hundred two-bit cells and can therefore store 200 bits of data. The 200 bits of data are divided into two subsets. The first subset includes the first 100 bits of data and the second subset includes the last 100 bits of data. The first subset of data is stored in the first bit, that is the most significant bit (“MSB”), of each of the one hundred two-bit cells and the second subset of data is stored in the second bit, that is the least significant bit (“LSB”), of each of the one hundred two-bit cells. Thus, the first two-bit cell will contain the data from the first bit of the one hundred bits in the first subset and the first bit of the one hundred bits in the second subset, which is the bit  101  of the original two hundred bits. This is contrasted to conventional two-bit cell systems where the first two-bit cell contains the first two bits of the two hundred bits. 
     It is advantageous to read the MSB of all the cells first because the speed comparable to single bit can be achieved for the MSB. 
     FIG. 2 shows a diagram illustrating one possible relationship between the four program voltage level, the four state labels and the stored data. Continuing the example from above, if the first bit of the first subset is a “1” and the first bit of the second subset is a “0” then binary “10” is the value stored in the first multi-bit cell, which corresponds to state C and program voltage level 1.0V. 
     FIG. 3 shows a diagram of a multi-level cell&#39;s sense current levels  300  during the first read of the cells. Sense current (Ids) distributions  302 ,  304 ,  306 , and  308  correspond to states A, B, C, and D, respectively. During the first read of the cells, the wordline voltage(Vg) is 1.0V. If the cell conducts, the MSB must be a “1” which corresponds to either state C or D. The cell will conduct if the current is greater than the reference current  310 . At this point, in accordance to FIG. 2, the MSB of all the cells can be read without changing the reference voltage. 
     The first read is repeated for all cells in the group using the same reference voltage. This allows the first half of the data to be read without changing the wordline voltage and avoids the delays associated with changing the voltage such as rise time delay. 
     FIG. 4 shows a diagram  400  of a multi-level cell&#39;s sense current during the second read. Sense current distributions  402  corresponds to states A and B. Sense current levels  404  and  406  correspond to states C and D, respectively. If the first read of this cell conducted, meaning that the first bit (bit  0 , MSB) was “1”, then the wordline voltage (Vg) of 2.0V is used for the second read because the cell must be programmed with state C or D. If the cell conducts during the second read, then the second bit (bit  1 , LSB) is “1” and that cell is in state D. If the cell did not conduct during the second read, then the second bit is “0” and that cell is in state C. The cell will conduct if the current is greater than the reference current  410 . 
     FIG. 5 shows a diagram  500  of a multi-level cell&#39;s sense current levels during the second read when the first read was “0”. Sense current distributions  502 ,  504 ,  506  and  508  correspond to states A, B, C and D, respectively. If the first read of this cell did not conduct meaning that the first bit (bit  0 , MSB) was “0”, then the wordline voltage (Vg) of 0.0V is used because the cell must be programmed with state A or B. If the cell conducts during the second read, then the second bit (bit  1 ) is “1” and that cell is in state B. If the cell did not conduct then the second bit is “0” and that cell is in state A. The cell will conduct if the current is greater than the reference current  510 . 
     The reference currents  310  (FIG.  3 ),  410  (FIG.  4 ), and  510  (FIG. 5) used for the current threshold can be the same current level. For example, 3 micro amps (3 μA ). By maintaining the same current threshold, the multi-bit cell sensing is greatly simplified. The sensing design can be fine tuned for a single current threshold in a lower bit-wise resistance through the NAND chain. The reduces resistance generates larger program distributions and greater reliability. 
     Interlacing the data allows for a single pass read to access all of the MSBs. This can make the read access speed of the multi-level cell compatible and comparable with existing single-bit devices. 
     FIG. 6 is a flow diagram of an embodiment of the read process  600 . In  602 , a first value is read from the first bit of the plurality of multi-bit cells using a first reference voltage. In  604 , a first and second subset of multi-bit cells is determined from the plurality of multi-bit cells based on the first value of each multi-bit cell. In  606 , a second value from the second bit of the multibit cells in the first subset is read using a second reference voltage. In  608 , a second value from the second bit of the multi-bit cells in the second subset is read using a third reference voltage. 
     FIG. 7 is a representation of an embodiment of a memory device  700 . The memory device  700  includes memory cells  702  and a read/write circuit  704 . The memory cells  702  include one or more multi-bit cells each cell storing at least a first and second bit. The read/write circuit  704  can be an integrated unit or two separate units. The read/write circuit  704  writes interlaced data to the plurality of multi-bit cells. The read/write circuit  704  reads interlaced data from the plurality of multi-bit cells. 
     The term “circuit” includes devices that are solely hardware or software, or a combination of hardware and software. Circuit is not limited to logic circuits or electrical circuit. 
     While preferred embodiments have been shown and described, it will be understood that they are not intended to limit the disclosure, but rather it is intended to cover all modifications and alternative methods and apparatuses falling within the spirit and scope of the invention as defined in the appended claims or their equivalents.