This application is based on and claims the benefit of priority from the prior Japanese Patent Application No. 2006-221195, filed on Aug. 14, 2006, the entire contents of which are incorporated herein by reference.
1. Field of the Invention
This invention relates to a semiconductor memory device with a current-sensing type of sense amplifier.
2. Description of the Related Art
EEPROM flash memories are classified in general into NAND-type and NOR-type ones. A NAND-type flash memory is formed of NAND strings (i.e., NAND cell units) each having plural memory cells connected in series in such a way that adjacent cells share a source/drain diffusion layer. Therefore, the cell density is made higher than that of a NOR-type one. Besides the NAND-type flash memory has a feature with low power consumption because plural memory cells may be written in a lump by use of FN tunnel current. Considering these features, the NAND-type flash memory is mainly applied to a file memory with a large capacity.
By contrast, since a NOR-type flash memory has, in spite of the large power consumption, a possibility of high speed access, it is mainly applied to mobile apparatuses.
Recently, however, a mobile apparatus tends to deal with an image data and the like with a large quantity of data. Therefore it is required of the mobile apparatus to contain a flash memory which has a high-speed performance and a large capacity with the same level as a file memory. Accordingly, to adapt a NAND-type flash memory to a high-speed system with a buffer memory such as DRAMs, there has been provided a method of improving the data transmission rate, in which, for example, cell data is read out to a page buffer and then serially transferred and output.
Even the above-described method is used, there is a limit for improving the speed of the NAND-type flash memory because cell current thereof is one several tenth of that of a NOR-type flash memory, so that it is difficult to sense data at a high rate as in the NOR-type flash memory with a reference level. The sense amplifier used in a NAND-type flash memory sensing cell data with detecting whether the bit line voltage is discharged or not in accordance with cell data, it takes a time by the micro second for data-sensing.
For the purpose of making possible to store a large quantity of data, there has been provided a flash memory with a multi-value data storage scheme. Further, there has been provided a method of reducing the read time by reducing the read number in the multi-value data storage scheme (for example, refer to JP-P2001-93288A).
Further, there has been provided a memory device with a multi-level data storage scheme, in which two memory cells connected to a pair of bit lines constitute a pair cell, and multi-level data is stored as been defined by a combination of different threshold voltages in the pair cell (for example, refer to JP-P2003-111960A).
According to an aspect of the present invention, there is provided a semiconductor memory device including: a memory cell array with electrically rewritable memory cells arranged therein, the memory cells being defined as information cells and reference cells in which a data level and a reference level are set, respectively; and a sense amplifier configured to sense data stored in the memory cell array, wherein
the sense amplifier includes:
a latch-type of differential amplifier configured to detect a current difference between a selected information cell and a selected reference cell in the memory cell array;
a pair of transistors attached to the differential amplifier, the pair of transistors being on-driven to keep the differential amplifier inactive in a stationary state and off-driven to make the differential amplifier active at a sensing time, whereby the current difference is amplified as a drain voltage difference of the pair of transistors; and
a pair of capacitors coupled to the pair of transistors to hold voltages corresponding to the respective currents of two current paths of the differential amplifier prior to inputting the current difference, and apply a certain offset voltage to the pair of transistors at the sensing time.
According to another aspect of the present invention, there is provided a semiconductor memory device including: a first and second cell arrays with electrically rewritable memory cells arranged therein, main parts of each cell array being defined as information cells and others as reference cells; a sense amplifier disposed for plural bit line pairs of first and second bit lines in the first and second cell arrays to sequentially sense data of the bit line pairs; first and second data registers configured to store write data to be written into the first and second cell array; and first and second data relaying nodes disposed for serially transferring write data to the first or second data registers from the external, and for serially transferring data sequentially read in the sense amplifier from the bit line pairs to the external, wherein
the sense amplifier includes:
a latch-type of differential amplifier configured to detect a current difference between a selected information cell and a selected reference cell in the memory cell array;
a pair of transistors attached to the differential amplifier, the pair of transistors being on-driven to keep the differential amplifier inactive in a stationary state and off-driven to make the differential amplifier active at a sensing time, whereby the current difference is amplified as a drain voltage difference of the pair of transistors; and
a pair of capacitors coupled to the pair of transistors to hold voltages corresponding to the respective currents of two current paths of the differential amplifier prior to inputting the current difference, and apply a certain offset voltage to the pair of transistors at the sensing time.
FIG. 1 shows a flash memory chip configuration in accordance with an embodiment of the present invention.
FIG. 2 shows the memory cell array of the flash memory.
FIG. 3 shows one cell array (T-cell array) of the memory cell array.
FIG. 4 shows the other cell array (C-cell array) of the memory cell array.
FIG. 5 shows the cell array block (T-cell, C-cell, R-cell block).
FIG. 6 shows the I-cell block.
FIG. 7 shows the bit line reset/precharge circuit (BRP).
FIG. 8 shows a relationship between four data levels and reference data level, and a data bit assignment.
FIG. 9 shows the procedure of the write preceding process.
FIG. 10 shows the erase-verify operation at step vp 00 in the write preceding process.
FIG. 11 shows the write-verify operation at step vpr in the write preceding process.
FIG. 12 shows the erase-verify operation at step vp 0 in the write preceding process.
FIG. 13 shows the write procedure of four data levels.
FIG. 14 shows the write-verify operation at each write step.
FIG. 15 shows the read procedure of four data levels.
FIG. 16 shows read data at each read step.
FIG. 17 shows the bias condition at a read time.
FIG. 18 shows one cell array bank and a sense unit thereof.
FIG. 19 shows a detailed configuration of the sense unit.
FIG. 20 shows a detailed configuration of a sense amplifier in the sense unit.
FIG. 21 shows operation waveforms of the sense amplifier.
FIG. 22 shows data I/O circuit 24 in the sense unit.
FIG. 23 shows data register XL in the sense unit.
FIG. 24 shows data register 26 t , 26 c in the sense unit.
FIG. 25 shows write completion judgment circuit 25 in the sense unit.
FIG. 26 shows a simulation result for teaching the asymmetric property of data register 26 t , 26 c
FIG. 27 shows an erase sequence.
FIG. 28 shows a reference cell write sequence.
FIG. 29 shows an HB data write sequence.
FIG. 30 shows an LB data write sequence.
FIG. 31 shows verify-read operation waveforms at erase and reference cell write times.
FIG. 32 shows operation waveforms of transferring/loading HB data write data.
FIG. 33 shows operation waveforms of verify-reading at the HB data write time.
FIG. 34 shows a data storing state of data latches DLl and DLr at an LB data write time.
FIG. 35 shows operation waveforms of HB data reading to data latch DLr at an LB data write time.
FIG. 36 shows operation waveforms of HB data transferring from data latch DLr to data latch XL.
FIG. 37 shows operation waveforms of verify-read data transferring to data latch XL.
FIG. 38 shows operation waveforms of verify-read data transferring to data latch XL under the control of HB data.
FIG. 39 shows a sense data transferring state at an LB data write verify-read time.
FIG. 40 shows data states of data latches DLl and DLr when LB data write is performed by A-QPW.
FIG. 41 shows data states of data latches DLl and DLr when LB data write is performed by C-QPW.
FIG. 42 shows an LB data write sequence with A-QPW.
FIGS. 43A to 43H show a data state transition at an LB data write with A-QPW.
FIG. 44 shows operation waveforms at the first and third verify-read steps of the LB data write sequence with A-QPW.
FIG. 45 shows operation waveforms at the second verify-read step under the control of data latch DLr.
FIG. 46 shows operation waveforms of selectively Vdd charging bit lines BL set at Vdd*.
FIG. 47 shows an LB data write sequence with C-QPW.
FIG. 48 shows operation waveforms of HB data reading to data latch DLr for C-QPW.
FIG. 49 shows operation waveforms of LB data transferring to data latch DLr under the control of HB data.
FIG. 50 shows operation waveforms of over-writing “0” data of data latch DLl to data latch DLr.
FIGS. 51A to 51H show a data state transition at an LB data write time with C-QPW.
FIG. 52 shows operation waveforms of verify-read data transferring to data latch DLl or DLr.
FIG. 53 shows feedback operation waveforms of feedback transferring data to data latch DLl under the control of data latch DLr at the verify-read step.
FIG. 54 shows operation waveforms of selectively Vdd charging bit lines BL set at Vdd*.
FIG. 55 shows operation waveforms of HB data reading to data latch DLl.
FIG. 56 shows operation waveforms of transferring LB data read in data latch DLl to data line DQ.
FIG. 57 shows operation waveforms of transferring LB data to data latch DLr.
FIG. 58 shows operation waveforms of the second step for taking XOR operation and transferring the result to data latch DLl.
FIG. 59 shows a data transition state of the read LB data in case the read voltages are R 2 and R 3 at the first and second read steps.
FIG. 60 shows a data transition state of the read LB data in case the read voltages are R 3 and R 2 at the first and second read steps.
FIG. 61 shows an HB data copy sequence in case of page copy.
FIG. 62 shows operation waveforms of reading copy source page for HB data copying.
FIG. 63 shows an LB data copy sequence in case of page copy.
FIG. 64 shows operation waveforms of reading copy source LB data to data latch DLl at the first read step.
FIG. 65 shows operation waveforms of taking XOR operation and transferring the result to data latch DLr at the second read step.
FIG. 66 shows operation waveforms of transferring copy-write data to data latch DLl under the control of HB data.
FIG. 67 shows operation waveforms of transferring HB data to data latch DLr.
FIG. 68 shows a situation where copy source LB data are inverted in part and written in data latch DLl as write data.
FIG. 69 shows another embodiment applied to a digital still camera.
FIG. 70 shows the internal configuration of the digital still camera.
FIGS. 71A to 71J show other electric devices to which the embodiment is applied.
Illustrative embodiments of this invention will be explained with reference to the accompanying drawings below.
In a semiconductor memory device in accordance with this embodiment, the main portion of the memory cell array is set as an area of “information cells”, into each of which one of plural physical quantity levels (i.e., data levels) is written while the remaining portion is set as an area of “reference cell(s)”, into which a fixed physical quantity level (i.e., reference level) is written for serving for detecting the data levels. In detail, there are provided first and second cell arrays, in each of which plural information cells and at least one reference cell are prepared. At a read time, an information cell is selected from one of the first and second cell arrays while a reference cell is selected from the other.
A sense amplifier, which detects a data level of an information cell with reference to the reference level of a reference cell, is formed as a current-sensing type one. That is, it is a latch type of differential amplifier configured to amplify an unbalance of two current paths thereof due to a current difference between a selected information cell and a selected reference cell in such a way that the unbalance is amplified as a drain voltage difference of a pair of transistors disposed for shutting the two current paths. In the sense amplifier in accordance with the present invention, there are so provided a pair of capacitors coupled to the pair of transistors as to hold voltages corresponding to the respective currents of the two current paths prior to inputting cell currents of the selected information cell and the selected reference cell to the transistors, and apply such an offset voltage to the transistors at a sensing time as to reduce the influence of a current unbalance due to device characteristics in the current paths.
In this embodiment, multiple bit line pairs share one sense amplifier, and there are prepared data registers corresponding to the bit lines, respectively, on which data write operations are performed simultaneously. In detail, first and second data latches are disposed for storing write data on the first and second bit lines of the first and second cell array, respectively, and share a sense amplifier. Further disposed with respect to a sense amplifier are first and second data relaying nodes, which constitute a pair.
At a read time, bit lines are sequentially selected and coupled to the sense amplifier, so that the bit line data are sequentially sensed. The sensed data are sequentially stored in the first, multiple data latches (or the second, multiple data latches) via the first data relaying node (or the second data relaying node), and then serially transferred and output to a data line via the first data relaying node (or the second data relaying node).
At a write time, write data serially supplied from the data line are sequentially loaded in the first, multiple data registers (or the second, multiple data registers) via the first data relaying node (or the second data relaying node). These write data stored in the first data registers (or the second data registers) are collectively written into multiple memory cells via the first, multiple bit lines (or the second, multiple bit lines).
While in the embodiment described below, a four-level data storage scheme is used, the present invention is not limited to it. In case of a four-value data storage scheme, an information cell is set to have a data level selected in L 0 , L 1 , L 2 and L 3 (where L 0 <L 1 <L 2 <L 3 ) while reference level Lr of a reference cell is set preferably as follows: L 0 <Lr<L 1 .
In the embodiment described below, cell's threshold voltage levels are used as the physical quantity levels (data levels).
[Flash Memory Configuration]
FIG. 1 shows a NAND-type flash memory configuration in accordance with an embodiment. A memory cell array 1 is divided into two cell arrays 1 t and 1 c , which share a sense amplifier circuit 3 . In this cell array configuration, it is used such an open bit line scheme that bit lines BL and /BL are simultaneously selected in the cell arrays 1 t and 1 c , and constitute a pair.
Main memory cells arranged in each cell array 1 t , 1 c are used as “information cells” for storing a data level; and the remaining cell(s) as “reference cell(s)” for storing a reference level used for data-reading. Data in the cell arrays 1 t and 1 c are reversed in logic. In the below-description, an information cell in the cell array 1 t is referred to as “T-cell”while one in the cell array 1 c is referred to as “C-cell”. There is prepared at least one reference cell, “R-cell”, in each cell array 1 t , 1 c.
At a data read time, when an information cell T-cell is selected in one cell array 1 t with a word line TWL and the bit line BL in a pair of bit lines BL and /BL, a reference cell R-cell is selected in the other cell array 1 c with a reference word line RWL, which is selected simultaneously with the word line TWL, and the bit line /BL, and these T-cell and R-cell constitute a pair.
Similarly, when an information cell C-cell is selected in one cell array 1 c with a word line CWL and the bit line /BL in a pair of bit lines BL and /BL, a reference cell R-cell is selected in the other cell array 1 t with a reference word line RWL, which is selected simultaneously with the word line CWL, and the bit line BL, and these C-cell and R-cell constitute a pair.
There is no difference in structure between the information cells T-cell, C-cell and the reference cell R-cell. One reference cell R-cell is fixedly selected in the cell array 1 c in correspondence with plural information cells T-cell in the cell array 1 t ; and one reference cell R-cell is fixedly selected in the cell array 1 t in correspondence with plural information cells C-cell in the cell array 1 c.
A pair of bit lines BL and /BL in the cell arrays 1 t and 1 c are selected with column gates 2 t and 2 c to be coupled to the sense amplifier circuit 3 . Data transferring between the sense amplifier circuit 3 and external input/output terminals is performed via a data bus DQ disposed on the area of the sense amplifier circuit 3 and a data buffer 11 .
The column gates 2 t and 2 c are controlled with column decoders 5 t and 5 c , respectively. There are prepared word line select/drive circuits (row decoders) 4 t and 4 c for selectively driving word lines in the cell arrays 1 t and 1 c , respectively.
Address, Add, is supplied to the row decoders 4 t , 4 c and column decoders 5 t , 5 c via address buffer 6 and address register 7 .
Command, CMD, supplied from the outside of the chip for defining an operation mode, is decoded in a command decoder 8 and supplied to a controller 9 , which controls write and erase sequences and a data read operation.
It is required of the cell arrays 1 t , 1 c and row decoders 4 t , 4 c and so on to be applied with various high voltages Vpp serving as write voltage, verify voltage, pass voltages and the like used in accordance with operation modes. To generate such the high voltages Vpp, there is prepared a high voltage generation circuit 10 , which is also controlled with the controller 9 .
FIGS. 2 to 7 show the internal configuration of the cell arrays 1 t , 1 c . FIG. 2 shows that each of the two cell arrays 1 t and 1 c disposed to sandwich the sense amplifier circuit 3 are divided into two areas ( 1 t - 1 , 1 t - 2 ) and ( 1 c - 1 , 1 c - 2 ) in the bit line direction.
While a plurality of bit line pairs BL, /BL are disposed in the cell arrays 1 t and 1 c , only one pair is shown in the drawing. The sense unit 20 in the sense amplifier circuit 3 is, as described in detail later, includes sense amplifier SA and latch LAT. Multiple bit line pairs are selectively coupled to a sense unit 20 . This will be explained later.
As shown in FIGS. 3 and 4, in each of areas 1 t - 1 , 1 t - 2 , 1 c - 1 and 1 c - 2 , many information cell blocks T-BLK, C-BLK and a reference cell block R-BLK are disposed. In the information cell blocks T-BLK and C-BLK, NAND strings including information cells T-cell and c-cell (refer to as information cell NAND strings T-NAND and C-NAND, hereinafter) are arranged while in the reference cell block R-BLK, NAND strings including reference cells R-cell (refer to as reference cell NAND strings R-NAND, hereinafter) are arranged. In detail in this example, each reference cell block R-BLK is disposed at the end far from the sense amplifier SA in each of the areas 1 t - 1 , 1 t - 2 , 1 c - 1 and 1 c - 2 .
Note here that the number of reference cell blocks is not limited to the above-described example. For example, the cell array has a smaller scale than the above-described example, it is permissible to dispose one reference cell block R-BLK in each cell array. By contrast, if the cell array scale is larger than the above-described example, more reference cell blocks may be disposed.
Row decoders 4 t and 4 c , which are used for selectively driving word lines in the cell arrays 1 t and 1 c , include NAND string decoders (i.e., block decoders) 4 ta and 4 ca disposed in the respective blocks for block-selecting, and string select circuits (i.e., word line drivers) 4 tb and 4 cb disposed to be shared by blocks in the cell arrays 1 t and 1 c and drive word lines and select gate lines in a block.
At a normal data read time and write-verify time of verifying data levels L 0 -L 3 , while one of the plural information cell blocks T-BLK is selected in the cell array 1 t - 1 (or 1 t - 2 ), reference cell block R-BLK is simultaneously selected in the cell array 1 c - 1 (or 1 c - 2 ). Similarly, while one of the plural information cell blocks C-BLK is selected in the cell array 1 c - 1 (or 1 c - 2 ), reference cell block R-BLK is simultaneously selected in the cell array 1 t - 1 (or 1 t - 2 ).
In each of cell arrays 1 t - 1 , 1 t - 2 , 1 c - 1 and 1 c - 2 , another reference cell block I-BLK, in which NAND strings (second reference cell NAND strings) I-NAND formed of second reference cells I-cell are arranged, is disposed in addition to the reference cell block R-BLK. This second reference cell block I-BLK is disposed at the end far from the sense amplifier SA in each of areas 1 t - 1 , 1 t - 2 , 1 c - 1 and 1 c - 2 . This reference cell block I-BLK is used for generating a reference current when the first reference cell R-cell is written into the reference level Lr or the lowest level L 0 of the multi-levels is written into the information cell.
When the reference data is written into the first reference cell R-BLK in the cell array 1 t - 1 (or 1 c - 1 ), the second reference cell block I-BLK in the cell array 1 c - 1 (or 1 t - 1 ) is used. When the reference data is written into the first reference cell R-BLK in the cell array 1 t - 2 (or 1 c - 2 ), the second reference cell block I-BLK in the cell array 1 c - 2 (or 1 t - 2 ) is used.
Further disposed in the cell arrays 1 t - 1 , 1 t - 2 , 1 c - 1 and 1 c - 2 are bit line reset/precharge circuits BRP with the same configuration as memory cells. These are prepared for resetting the bit line history or setting non-selected bit lines at the power supply voltage Vdd or at more higher voltage of Vdd+α at a write time and disposed at the end farthest from the sense amplifier SA in each area 1 t - 1 , 1 t - 2 , 1 c - 1 , 1 c - 2 . The detail will be explained later. All bit line reset/precharge circuits BRP operate at a time on the both sides of the sense amplifier SA.
FIG. 5 shows a configuration of one NAND string block in detail. The same configuration is used for the information cell T-cell, C-cell and the first reference cell R-cell. That is, plural NAND cell units (i.e., NAND strings, T-NAND, C-NAND or R-NAND) are arranged in a matrix manner.
Each NAND string has a plurality of, thirty two in the example shown in the drawing, electrically rewritable and non-volatile semiconductor memory cells, MC 0 -MC 31 , connected in series. Each memory cell is a MOS transistor with a stacked gate structure of a floating gate and a control gate, which stores data in accordance with the carrier storage state of the floating gate in a non-volatile manner.
One end of the NAND string is coupled to a bit line BL (/BL) via a select gate transistor S 1 ; and the other end to a common source line CELSRC via another select transistor S 2 .
Control gates of the memory cells MC 0 -MC 31 are coupled to different word lines WL 0 -WL 31 , respectively. Gates of the select gate transistors S 1 and S 2 are coupled to select gate lines SGD and SGS, respectively, which are disposed in parallel with the word lines. A set of NAND strings sharing the word lines WL 0 -WL 31 constitutes a “block” serving as a unit of data erase. Usually, there are prepared plural NAND string blocks in the direction of the bit line.
As shown in FIGS. 3 and 4, each two selected in blocks arranged in each of cell arrays 1 t and 1 c are set as first reference cell (R-cell) NAND string blocks R-BLK. While it is optional which NAND blocks are used as the first reference cell blocks R-BLK, once the first reference cell blocks R-BLK are selected, it should be used fixedly as the first reference cell blocks hereinafter, and others are used as information NAND strings blocks T-BLK and C-BLK.
Further, in each cell array 1 t , 1 c , two blocks are selected as second reference cell (I-cell) NAND string blocks I-BLK. The second reference cell block I-BLK is basically the same as the information cell block T-BLK, C-BLK and the first reference cell block R-BLK, but the gate connection is modified and different from that in others. The detail will be explained below.
FIG. 6 shows the configuration of the second reference cell (I-cell) block I-BLK. This is formed of NAND string I-NAND, which is basically the same as T-cell, C-cell and R-cell blocks. However, in this NAND string I-NAND, the control gates and floating gates of all memory cells MC 0 -MC 31 are coupled to a common gate line, to which reference voltage Vref is applied. That is, the entire memory cells connected in series are operable as a reference current transistor in such a manner that the floating gates are applied with the reference voltage Vref.
The reference current source circuit used for detecting a cell current may be formed and disposed at the input node of the sense amplifier as being separated from the cell array. By contrast, according to this embodiment, in which all reference current sources are formed in the cell array with the same configuration as the cell array, it is unnecessary for using extra transistor areas and possible to obtain a current source with a small variation.
FIG. 7 shows the detailed configuration of the bit line reset/precharge circuit BRP. This is formed of bit line reset circuit BLrs and bit line precharge circuit BLpr disposed in parallel with the same configuration as memory cells in the cell array.
The bit line reset circuit BLrs is formed as follows: the control gates of memory cells MC 0 -MC 31 and select gate transistors S 1 and S 2 are coupled to floating gates thereof like the select gate transistors S 1 and S 2 , and these are coupled to a common control node Brs. The drain of select gate transistor S 1 is coupled to bit line; and the source of select gate transistor S 2 to a reset-use voltage node, for example, Vss node.
The bit line precharge circuit BLpr is formed as follows: the control gates of memory cells MC 0 -MC 31 and select gate transistors S 1 and S 2 are coupled to floating gates thereof like the select gate transistors S 1 and S 2 , and these are coupled to a common control node Bpr. The drain of select gate transistor S 1 is coupled to bit line; and the source of select gate transistor S 2 to a precharge-use voltage node, for example, a boost voltage node of Vdd+α. Applying a control voltage corresponding to the read pass voltage Vread to the precharge node Bpr, the bit line will be precharged to Vdd+α.
[Principle of Four-Level Data Storage]
FIG. 8 show data levels, i.e., threshold distributions of the four-level data, and data bit assignment thereof in accordance with this embodiment.
An information cell T-cell or C-cell is set at one of four data levels (i.e., threshold levels) L 0 , L 1 , L 2 and L 3 (where, L 0 <L 1 <L 2 <L 3 ).
The lowest level L 0 is a negative and erased threshold level defined by erase-verify voltage P 0 (=0V). An erase level obtained by a block erase performed for a block in a lump may be basically used as this level L 0 . However, the erase level usually has a wide threshold distribution. Therefore, in this embodiment, to narrow the threshold distribution of the lowest level L 0 , a preliminary write step is used as explained later.
Data levels L 1 , L 2 and L 3 are positive and written threshold levels defined by verify voltages P 3 (=P 0 +Δ), P 1 (=P 0 +2Δ) and P 2 (=P 0 +3.5Δ), which are applied to a selected word line at write-verify times, respectively.
With the above-described verify voltages P 3 , P 1 and P 2 , the write data levels L 1 , L 2 and L 3 are set to satisfy the relationship of: L 1 =L 2 −L 1 <L 3 −L 2 . In other words, the gap between the uppermost data level L 3 and the following level L 2 is set to be larger than others.
Reference level Lr, that is a data level of the reference cell R-cell, is set at about 0V lower than the secondary data level L 1 of the information cell T-cell or C-cell as defined by write-verify voltage Pr (=P 0 ).
As the reference level Lr, it is permissible in principle to use whichever voltage. However, in consideration of the reference word line level setting and write time of the reference cell, it is desirable to set the reference level Lr to be low. The reason is as follows: as the cell array becomes large in capacity and the time constant of the word line becomes large, it takes a long time for setting the word line to be high in its entirety. The reference level Lr being set to be near the lower one of data levels, it is able to make the write time of the reference cell short.
Considering the above-described situation, as shown in FIG. 8, the reference level Lr is set to satisfy the relationship of: L 0 <Lr<L 1 , and in detail, for example, set at about 0V or near it.
Supposing that the four-level data is defined as (HB,LB) (where, HB and LB are a higher (or upper) bit and a lower bit, respectively), as shown in FIG. 8, (1,0), (1,1), (0,1) and (0,0) are assigned to the data levels L 0 , L 1 , L 2 and L 3 of the information cell T-cell, respectively.
This four-level data may be judged in such a way as to detect cell current difference between an information cell T-cell (or C-cell) and a reference cell R-cell on a certain bias condition with a sense amplifier. That is, when the information cell T-cell is selected from the cell array 1 t at a read time, the reference cell R-cell is selected from the cell array 1 c at the same time, and these are coupled to the input nodes of the sense amplifier via a bit line pair to be subjected to current difference detecting. Similarly, when the information cell C-cell is selected from the cell array 1 c , the reference cell R-cell is selected from the cell array 1 t , and these are coupled to the input nodes of the sense amplifier.
In FIG. 8, voltages (read voltages) R 1 , R 2 , R 3 and Rr applied to a selected word line TWL (or CWL) and a reference word line RWL are shown. These read voltages are set at the same values as the verify voltages P 1 , P 2 , P 3 and Pr, respectively.
As described above, levels L 1 , L 2 , L 3 and Lr are defined by the verify voltages P 3 , P 1 , P 2 and Pr, respectively, and threshold distributions thereof have the lowest values, as shown by dotted lines. The reason is, as described in detail later, as follows: a selected information cell's current, which flows when the verify voltage is applied, is compared with a reference cell current, and “write” completion is judged based on that the information cell's current has been detected to be smaller than the reference cell current.
By contrast, the lowest data level L 0 has the upper limit value as shown by a dotted line. The reason is as follows: at an erase-verify time, with applying P 0 =0V to the entire word lines in a NAND cell unit, which has been erased in a lump, the cell unit's current is compared with a reference current, and “erase” completion is judged based on that the cell unit's current has been detected to be larger than the reference current.
[Write Preceding Process]
FIG. 9 shows a write preceding process for four-level data write (or program), in which data erase is performed in a lump, and reference cells and information cells are written into the reference level Lr and the lowest level L 0 , respectively, from the erase state.
The initial step “vp 00 ” in FIG. 9 is an erase step “ERASE”. It is shown here such a state that erase-verify has been completed. Erase operation is usually performed by a block with respect to information cell blocks T-BLK and C-BLK with information cells T-cell and C-cell, and reference cell block R-BLK with reference cells R-cell. In detail, the erase operation is performed in such a way as to apply 0V to the entire word lines and erase voltage Vera to the p-type well, on which the cell array is formed, thereby discharging electrons in the floating gates. Note here that it is possible to erase multiple blocks at a time.
Erase-verify is, as shown in FIG. 10, performed by comparing the cell current Ic of information cell NAND string T-NAND (or C-NAND) or reference cell NAND string R-NAND, the entire word lines of which are applied with 0V, with the reference current Ir of the second reference cell NAND string I-NAND with a sense amplifier SA. Detecting data “1” (i.e., Ic>Ir), the erase-verify will be passed.
The information cell T-cell or C-cell is subjected to the ease-verify after having erased from various data threshold levels, so that the threshold distribution is wide. By contrast, the reference cell R-cell is lowered in threshold level from a constant level Lr, the threshold distribution is narrower than that of the information cell. However, even if a part of NAND strings have been erased, the erase operation is continued until the entire NAND strings have been erased. Therefore, the threshold distribution becomes wide.
Step “vpr” is a preliminary write step “ND&RW”, in which data write of the reference level Lr of the reference cell R-cell and data write of the information cells T-cell and C-cell are performed. The data write of T-cell and C-cell is performed for the purpose of narrowing down the threshold distribution (i.e., narrowing down, “ND”) under the same condition as the reference cell write. In the drawing, the write completion states are shown.
The preliminary write operation is performed in such a manner that write voltage Vpgm is applied to a sequentially selected word line to cause electron injection into the floating gate like in the normal data write operation.
Write-verify is, as shown in FIG. 11, performed by comparing the cell current Ic of information cell NAND string T-NAND (or C-NAND) or reference cell NAND string R-NAND, the selected word line and non-selected word lines of which are applied with verify voltage P 0 (=Pr, e.g., 0V) and pass voltage Vread 0 (e.g., 0.5V), respectively, with the reference current Ir of the second reference cell NAND string I-NAND with a sense amplifier SA. Detecting data “0” (i.e., Ic<Ir), the write-verify will be passed. Therefore, the lowest value of the threshold distribution is defined.
As described above, all information cells and first reference cells are set at the reference level Lr. Since the verify-write is performed cell by cell in the NAND string, the threshold distribution becomes narrow after verify completion.
Step “vp 0 ” is a data level L 0 setting step “L 0 W” with respect to the information cells in within the information cells and reference cells, which have been set at the reference level Lr. In detail, except the reference cells R-cell, the information cells T-cell and C-cell are subjected to verify-erase again.
The erase-verify is the same as in the erase step “vp 00 ”. That is, as shown in FIG. 12, compare the cell current Ic of the information cell NAND string T-NAND (or C-NAND), the entire word lines of which are applied with 0V, with the reference current Ir of the second reference cell NAND with the sense amplifier. When data “1” (i.e., Ic>Ir) is detected, the erase-verify will be passed.
As a result, the lowest level L 0 of the information cells T-cell and C-cell is decided. Although the threshold distribution is slightly widened at this step, the level L 0 is defined to be narrower than that of the initial erase state because the distribution is narrowed via the preliminary write step “vpr”. The lowest data level L 0 is defined by the upper limit of the threshold distribution.
Performing the above-described write preceding processes, “vp 00 ”, “vpr” and “vp 0 ”, the reference level Lr of the reference cell R-cell and the lowest level L 0 of the information cells T-cell and C-cell are set.
[Data Write]
After having performed the above-described write preceding processes, levels L 1 , L 2 and L 3 in four levels are written. The write procedure will be explained with reference to FIG. 13 below.
“vp 0 ” in FIG. 13 is the final step in the preceding processes for data write as shown in FIG. 9. In the verify-write steps “vp 1 ”, in accordance with the higher bit HB supplied, the cell threshold voltage(s) of a part of the information cells in a state of level L 0 (i.e., cells, to which HB=“0” is applied) are increased to the third write level L 2 .
In the following verify-write step “vp 2 ”, in accordance with the higher bit HB, which has been written, and the lower bit LB supplied from the external, the cell threshold voltage(s) of a part of the information cells in a state of level L 2 (i.e., cells of LB=“0”), is increased to the highest write level L 3 .
Note here that it is able to interpose a read mode between the write steps “vp 1 ” and “vp 2 ”. To restart the suspended write operation, it is necessary for reading out the written HB data in the cell array and externally loading the LB data into the data latch of the sense amplifier.
In the next verify-write step “vp 3 ”, in accordance with the higher bit HB, which has been written, and the lower bit LB supplied from the external, the cell threshold voltage(s) of a part of the information cells (i.e., cells of LB=“1”), which are in the erase level L 0 , is increased to the second write level L 1 .
It is also able to interpose a read mode between the write steps “vp 2 ” and “vp 3 ”. To restart the suspended write operation, it is necessary for reading out the higher bit data HB of to-be-written cells and externally loading the lower bit data in the data latch of the sense amplifier.
FIG. 14 shows the write-verify operation in the above-described write steps “vp 1 ”, “vp 2 ” and “vp 3 ”. At the write-verify operation, the reference cell NAND string R-NAND, in which the reference level Lr has already been written, is used for cell current comparing.
That is, an information cell NAND string T-NAND (or C-NAND) with the information cells T-cell (or C-cell) selected from one cell array, and a reference cell NAND string R-NAND selected from the other cell array are coupled to the sense amplifier SA. The selected word line on the information cell side, which corresponds to a selected cell surrounded by a circle in FIG. 14, is applied with verify voltage P 1 (e.g., 2V) at step “vp 1 ”; and the remaining non-selected word lines with pass voltage Vread 1 (e.g., 5V). On the reference cell side, the selected word line is applied with Vss=0V; and the remaining non-selected word lines with pass voltage Vreadref (e.g., 0.5V).
At the steps “vp 2 and “vp 3 ”, the verify voltage applied to the selected word line is set at P 2 (e.g., 3.5V) and P 3 (e.g., 1V), respectively.
Under the above-described conditions, the sense amplifier SA compares the cell current Ic flowing in the information cell NAND string with the reference current Ir flowing in the reference cell NAND string. If data “0” (i.e., Ic<Ir) is detected, the data write will be completed. In practice, write and write-verify are repeated until the write completion is judged in the entire amplifiers arranged in a range where data write operations are performed at a time.
[Data Read]
FIG. 15 shows the level relationships between information cells T-cell, C-cell and reference cell R-cell for three read steps T 1 , T 2 and T 3 used in a data read cycle, which are shown in comparison with a basic level defined by the ground potential Vss. Data levels in the information cell are set to satisfy the following relationships: the difference between Vss and L 1 and that between L 1 and L 2 are substantially equal to each other, and set to be about Δ; the difference between L 2 and L 3 is set at 1.5×Δ.
At step T 1 , to read data level L 2 or higher levels as data “0” (i.e., information cell current is smaller than reference cell current), the read voltage (word line level) R 1 is set to be slightly higher than the data level L 2 . At step T 2 , to read only data level L 3 as data “0”, the word line level R 2 is set to be slightly higher than the data level L 3 . At step T 3 , to read data level L 1 or higher levels than it as data “0”, the word line level R 3 is set to be slightly higher than data level L 1 .
Word line level Rr of the reference cell is set at the same as verify voltage P 0 at level Lr write time, i.e., at Vss or near it. This read voltage Rr of the reference cell is kept constant through the read steps.
As described above, data read is performed with three read steps T 1 , T 2 and T 3 , in which word line level is set at R 1 , R 2 and R 3 , respectively. FIG. 16 shows the sense results of the information cells T-cell with the respective data levels at the respective read steps. The sense result at step T 1 shows the upper bit HB while the lower bit LB is read out through steps T 2 and T 3 .
FIG. 17 shows the detailed word line setting examples at the read steps. In the higher bit (HB) read cycle T 1 , in the information cell NAND string T-NAND (or C-NAND), a selected word line is set at R 1 (e.g., 1.5V); and non-selected word lines at pass voltage Vread 2 (e.g., 5.5V). In the reference cell NAND string R-cell NAND, a selected word line is set at Vss; and non-selected word lines at pass voltage Vreadref (e.g., 0.5V).
The lower bit (LB) read is performed with two cycles of T 2 and T 3 . In the information cell NAND string T-NAND (or C-NAND), a selected word line is set at R 2 (read voltage, e.g., 2.5V) at step T 2 , and at R 3 (e.g., 0.5V) at step T 3 ; and non-selected word lines at pass voltage Vread 2 (e.g., 5.5V). In the reference cell NAND string R-cell NAND, a selected word line is set at Vss; and non-selected word lines at pass voltage Vreadref (e.g., 0.5V).
[Sense-Latch System]
So far, the brief of the flash memory in accordance with this embodiment has been explained. Next, it will be explained a sense-latch system, i.e., sense unit 20 , used for data reading and writing.
FIG. 18 shows one page bank BNKi and one of sense units 20 prepared therein. The page bank BNKi is formed of cell arrays 1 t and 1 c , each of which has 512 information NAND string blocks (T-BLK, C-BLK) and 4 k bit lines are arranged (where, one NAND string contains 32 cells).
Supposing that one sense unit 20 is, for example, shared by 16 bit line pairs, 256 (=4 k/16) sense units are disposed in one page bank BNK as being simultaneously activated.
Which bit line pair is selected in 16 pairs to be coupled to the sense amplifier is selected by multiplexers MUX, selection signals of which are bp 0 -bp 15 . The sense unit has a sense amplifier-latch system and a verify result judge system as described in detail later.
In correspondence with the respective bit lines BL, /BL, data registers DL are disposed for storing write data. Although data registers are disposed one by one for every bit line in this example shown in FIG. 18, it is permissible in general to dispose data resisters each shared by plural bit lines. For example, in such a scheme that simultaneously selected bit lines are only even numbered ones or odd numbered ones, each data resister is disposed for two bit lines.
The number of cells to be simultaneously written is defined by the number of data registers disposed on the bit line BL side or on the bit line /BL side defines. That is, write data are sequentially loaded in the data latches disposed on the bit line BL or /BL side, and then written in cells in a lump.
Signal PROK is used for judging the verify result. The sense-latch systems are formed to be selectively coupled to global data lines DQ, /DQ.
FIG. 19 shows a detailed configuration of the sense unit 20 , which covers a range of bit line pairs BL 0 , /BL 0 to BLi, /BLi. That is, to hold write data, data registers (data latches DLl) 26 t ( 0 - i ) are disposed for the respective bit lines BL( 0 - i ); and data registers (data latches DLr) 26 c ( 0 - i ) for the respective bit lines /BL( 0 - i ).
At a read time, data on the bit line pairs are sequentially selected to be input to a current-detecting type of sense amplifier 21 . The connection between the bit lines and sense amplifier is selected with selection transistors N 3 t ( 0 - i ) and N 3 c ( 0 - i ), and selected pair of bit lines BL, /BL are coupled to input nodes IN, /IN of the sense amplifier 21 . Transistors Qt, Qc driven by gate signal Vtg are high-voltage ones for preventing the sense amplifier 21 from being applied with a high voltage generated on the bit lines BL, /BL side.
Disposed at the input nodes IN and /IN are NMOS transistors N 1 t and N 1 c , which supply cell currents on the bit lines to the sense amplifier 21 only at an activation time. Output nodes OUT and /OUT are coupled to data relaying nodes B and /B via data transfer circuit 22 . The relaying nodes B and /B serve for relaying data between sense amplifier 21 and data line DQ, and between data registers 26 t , 26 c and data line DQ.
Data transfer between sense amplifier 21 and relaying nodes B and /B is controlled with data register 23 (data latch XL). That is, data transfer circuit 22 and data register 23 constitute a transfer control circuit.
Sense amplifier output nodes OUT and /OUT are coupled to data relaying nodes B and /B via NMOS transistors N 11 and N 12 driven by clock signal CLK. Output nodes OUT and /OUT are also coupled respectively to relaying nodes B and /B via NMOS transistors N 13 and N 15 driven by one node signal /X of the data register 23 , and coupled respectively to relaying nodes /B and B via NMOS transistors N 14 and N 16 driven by the other node signal X. In other words, the sense amplifier data may be transferred to data relaying node B and /B as it is or as being inverted in accordance with data stored in data register 23 .
Nodes X and /X of data latch XL are coupled respectively to relaying nodes B and /B via NMOS transistors N 17 and N 18 driven by pulse signal RH. That is, in response to signal RH, data of the relaying nodes B and /B may be input to data nodes X and /X, respectively, as it is. Further, data nodes X and /X are coupled respectively to relaying nodes /B and B via NMOS transistors N 19 and N 20 driven by signals RHRl and RHRr, respectively. Therefore, in response to these signals RHRl and RHRr, data of relaying nodes B and /B may be input to data nodes /X and X, respectively.
When relaying nodes B or /B is in a state of “1”, it will be discharged with a “0” node of data latch XL, and set at “0”. The initial state of data latch XL is set with signal XRSl or XRSr.
Relaying nodes B and /B are coupled to data bus DQ via data bus I/O circuit 24 . That is, at a read/write time, data transfer between data bus DQ and relaying nodes B, /B is controlled via data bus I/O circuit 24 . In detail, at a read time, bit line data are sequentially sensed by sense amplifier 21 , and sequentially stored in data latches 26 t or 26 c via relaying nodes B, /B, and these stored data are sequentially output to data bus DQ via relaying nodes B, /B again.
Data bus I/O circuit 24 sets the data state of relaying nodes B and /B in accordance with data state of nodes X, /X of data latch XL and signals RWl, RWr, BRSl and BRSr, and selectively couples data bus DQ to relaying node B or /B in accordance with signals CSL, xi and xj.
One data node V of data latch DLl or DLr is coupled to relaying node B or /B under the control of clock CKl or CKr. That is, data latches DLl or DLr store write data in data nodes V, which are sequentially transferred via I/O circuit 24 and via relaying node B or /B at a write time, and store sensed data in data nodes V, which are sequentially transferred via transfer circuit 22 and via relaying node B or /B at a read time. Data on the other data nodes /V of data latches DLl or DLr are supplied to bit lines BL or /BL simultaneously via NMOS transistors N 20 t ( 0 - i ) or N 20 c ( 0 - i ) driven by signal PRGl or PRGr.
Data nodes V are coupled to gates of verify-judge NMOS transistors N 6 t ( 0 - i ) and N 6 c ( 0 - i ). The drains of transistors N 6 t and N 6 c are coupled in common to judge-use signal lines /DLl and /DLr, respectively. Write completion judgment circuit 25 judges write completion based on data on the judge-use signal lines /DLl and /DLr.
Further disposed at input nodes IN and /IN of the sense amplifier 21 are first bit lie charging circuits 27 t and 27 c , in which PMOS transistors P 1 driven by charging control signal /ACCpr and NMOS transistors driven by adjusting signal VRR are connected in series between Vdd node and input nodes IN and /IN.
Still further disposed at input nodes IN and /IN are second bit line charging circuit 28 t and 28 c , which serve for charge-up a write completed bit line to Vdd in a quick pass write (QPW) mode described later. In the second bit line charging circuits 28 t and 28 c , PMOS transistors P 2 driven by data relaying node /B and B and PMOS transistors P 3 driven by control signal /QWl and /QWr are connected in series between Vdd node and input nodes IN and /IN.
FIG. 20 shows the detailed configuration of sense amplifier 21 . This is a current-detecting type of sense amplifier for detecting the cell current in comparison with the reference cell current, and a latch type of CMOS differential amplifier. To construct such a sense amplifier that certainly detects a cell current under 1 μA, it is required of the amplifier to sense data with a sufficient margin without regard to variations of the device characteristics.
This sense amplifier 21 is formed under such a concept that even if there are variations for breaking the symmetrical characteristic, the sense amplifier takes in the variations as an offset, thereby making itself possible to sense only data.
Explaining in detail, the sense amplifier 21 has two current paths 210 and 211 formed between Vdd node and Vss node. The first current path 210 has PMOS transistors M 0 and M 8 , NMOS transistor M 12 , PMOS transistor M 2 and NMOS transistor M 4 connected in series. The second current path 211 has PMOS transistors M 1 and M 9 , NMOS transistor M 13 , PMOS transistor M 3 and NMOS transistor M 5 connected in series.
The source of PMOS transistor M 2 serves as one cell current input node, which is coupled to input node IN via NMOS transistor N 1 t while the source of PMOS transistor M 3 serves as the other cell current input node, which is coupled to another input node /IN via NMOS transistor N 1 c.
A connection node between PMOS transistor M 2 and NMOS transistor M 4 in the first current path 210 serves as one output node OUT while another connection node between PMOS transistor M 3 and NMOS transistor M 5 in the second current path 211 serves as the other output node /OUT.
The gates of PMOS transistors M 0 and M 2 and NMOS transistor M 4 are coupled in common to the output node /OUT; and the gates of PMOS transistors M 1 and M 3 and NMOS transistor M 5 to the output node OUT, whereby a CMOS latch is formed. In other words, a CMOS inverter constituting the first current path 210 and another CMOS inverter constituting the second current path 211 have cross-coupled input/output nodes to constitute a latch.
PMOS transistors M 8 and M 9 serve as activation ones, the gates of which are driven by activation signal /ACT. NMOS transistors M 12 and M 13 serve as current limiting devices of the current paths 210 and 211 . These transistors are driven by signal vLTC to define the sense amplifier current.
The gates of NMOS transistors M 4 and M 5 in the CMOS latch are coupled to drains of NMOS transistors M 6 and M 7 , respectively, which are driven by sense signal /SE. The pair of transistors M 6 and M 7 are on-driven by sense signal /SE=“H” in a stationary state to make NMOS transistors M 4 and M 5 in the CMOS latch off, i.e., keep the differential amplifier inactive.
That is, current flowing in the current paths 210 and 211 with the activation signal /ACT=“L” will be carried to Vss node via NMOS transistors M 6 and M 7 until the sense signal /SE becomes “L”. After the cell current difference is input to the amplifier, NMOS transistors M 6 and M 7 are turned off with /SE=“L” and pass currents thereof are shut off at a sensing time, thereby resulting in that the CMOS latch is made active, and the current difference in the current paths 210 and 211 is amplified as a drain voltage difference between NMOS transistors M 6 and M 7 with a positive feedback.
In this embodiment, NMOS transistors M 10 and M 11 , the gates of which are driven by /SE, are disposed between the sources of NMOS transistors M 6 and M 7 and Vss node, respectively, and capacitors C 16 and C 17 are disposed between the sources of NMOS transistors M 6 and M 7 and /SE node, respectively.
The circuit portion of NMOS transistors M 10 , M 11 and capacitors C 16 and C 17 constitutes an offset circuit for generating an offset voltage, which serves for reducing the influences of current unbalance due to device characteristics on the current paths 210 , 211 .
The basic operation of this sense amplifier is as follows. While the sense signal /SE is in an “H” state, NMOS transistors M 6 , M 7 , M 10 and M 11 are kept on, and output nodes OUT and /OUT are kept in an “L” level. When the activation signal /ACT becomes “L”, current flows in the current paths 210 , 211 . When cell current and reference cell current are input to the current paths from input nodes IN and /IN in response to a cell current introducing signal ACC, there is generated a small voltage difference between the respective drains of NMOS transistors M 6 and M 7 in accordance with the cell current difference.
When sensing signal /SE becomes “L”, NMOS transistors M 6 and M 7 are turned off, and drain voltage difference thereof is amplified in accordance with a positive feedback operation of the latch circuit, thereby resulting in that one of NMOS transistors M 6 and M 7 becomes on; and the other off. That is, when one of NMOS transistors M 6 and M 7 is changed from on to off, the timing difference of the level-shifts in these NMOS transistors is converted to the drain voltage difference, and it is amplified together with the positive feedback.
In addition to the above-described basic operation, it is used in this embodiment some ideas for effectively preventing the amplifier from erroneously sensing due to variations of device characteristics. One of these ideas is that a large number of devices are used in the current paths 210 , 211 . In detail, there are disposed NMOS transistors M 12 and M 13 in the current paths 210 and 211 for controlling their conductance. These NMOS transistors M 12 and M 13 serve for reducing the influence of characteristic variations between PMOS transistor pairs of M 0 and M 1 , and between PMOS transistor pairs of M 8 and M 9 .
The function for preventing the erroneous sensing of sense amplifier 21 will be explained in detail with reference to FIG. 21 below. Prior to inputting the cell current to the sense amplifier with cell current catching signal ACC raised, the nodes “vsl” and “vsr” of capacitors C 16 and C 17 are set at voltage levels, which are boosted from Vss level as being influenced with the variations of device characteristics on the current paths 210 and 211 .
When sensing signal /SE is set at “low” (Vss), NMOS transistors M 6 , M 7 , M 10 and M 11 are tuned off. At this time, the sources of NMOS transistors M 6 and M 7 are set at imaginary Vss, which are lower than Vss and reflected by the voltage difference previously set at nodes “vsl” and “vsr”. As a result, an offset voltage is applied to the sources of NMOS transistors M 6 and M 7 , which are going to be off, such as to reduce the influence of device characteristic variations on the current paths 210 and 211 .
Further, NMOS transistors M 12 and M 13 are kept in a low conductance state with the gate control signal vLTC set to be low before stepping-down the sense signal /SE. As a result, the influences of variations between PMOS transistors M 0 and M 1 , and between PMOS transistors M 8 and M 9 , which constitute a feedback loop in the sense amplifier operation, are also reduced. In other words, PMOS transistors disposed on the power supply (Vdd) side in the current paths are set to relatively highly conductive. As a result, the variations of device characteristics on the current paths may be reduced.
Boosting the gate voltage vLTC at the sensing time, NMOS transistors M 12 and M 13 are made to have a sufficiently high conductance, so that detected data may be latched at a high rate after determining data.
As described above, the sense amplifier in accordance with this embodiment is a current detecting type of one, and has an offset voltage generating circuit for reducing the influences of device characteristic variations. As a result, it becomes possible to sense data at a high speed with a high performance.
FIG. 22 shows the data bus IO circuit 24 , in which NMOS transistors N 31 , N 32 and N 33 driven by signals CSL, xi and xj, respectively, constitute a selection gate circuit 241 for selecting sense-latch systems to be coupled to data bus DQ.
It is a switch circuit 242 to select which of data relaying nodes B and /B is to be coupled to data bus DQ. In detail, the switch circuit 242 has: NMOS transistors N 34 and N 35 selectively driven by signals RWl and RWr, respectively; NMOS transistors N 37 and N 38 driven by data at node X to couple NMOS transistors N 34 and N 35 to relaying nodes /B and B, respectively; and NMOS transistors N 36 and N 39 driven by data at node /X to couple NMOS transistors N 34 and N 35 to relaying nodes B and /B, respectively.
Latch 243 is a normal CMOS latch, which is constituted by PMOS transistors P 21 , P 22 and NMOS transistors N 41 , N 42 to be coupled to relaying bodes B and /B.
Reset circuits 244 and 245 have NMOS transistors N 47 and N 48 selectively driven by reset signals BRSl and BRSr, respectively. To selectively couple NMOS transistor N 47 to relaying node B, there are provided NMOS transistors N 51 and N 52 taking AND logic between data at node X and signal RWl; and NMOS transistors N 43 and N 44 taking AND logic between data at node /X and signal RWr. Similarly, to selectively couple NMOS transistor N 48 to relaying node /B, there are provided NMOS transistors N 45 and N 46 taking AND logic between data at node /X and signal RWl; and NMOS transistors N 53 and N 54 taking AND logic between data at node X and signal RWr.
With the IO circuit 24 , data line DQ and relaying node B or /B are coupled to each other in accordance with a data state of nodes X and /X, and a selection state of signals RWl and RWr. Applying pulse signal BRSl or BRSr, relaying node B or /B may be discharged. Note here that data transfer between data line DQ and relaying node B or /B is performed as “L” level data transfer. Therefore, it is required of the node receiving data to be previously set at Vdd.
FIG. 23 shows data register 23 (i.e., data latch XL), which is a CMOS latch with PMOS transistors P 31 , P 32 and NMOS transistors N 61 , N 62 . Connected to data nodes X and /X thereof are reset-use NMOS transistors N 63 and N 64 , which are driven by signals XRSl and XRSr, respectively.
Therefore, the data register 23 is set to be: in a state of /X=“H” in response to signal XRSl=“H”; and in another state of X=“H” in response to signal XRSr=“H”. As far as data receiving/transmitting is performed with the transfer gate formed of NMOS transistors N 17 and N 18 as shown in FIG. 19, this type of data register is able to transfer only “0” data (=“L” data) while it is impossible to sufficiently transfer “1” data (=“H” data) because there is a voltage drop corresponding the threshold voltage at the transfer gate.
FIG. 24 shows the configuration of data register 26 t , 26 c (i.e., data latch DLl, DLr). This data register is a CMOS latch with PMOS transistors P 41 , P 42 and NMOS transistors N 71 , N 72 . One data node V is coupled to relaying node B or /B via NMOS transistor N 73 driven by clock CK; and the other node /V has a reset NMOS transistor N 74 driven by reset signal RSV.
This data register 26 t or 26 c is formed as an extremely asymmetric latch for data under the condition that PMOS transistor P 41 surrounded by a dotted line is made smaller than PMOS transistor P 42 (i.e., the ratio of channel width W to channel length L of P 41 is made smaller that that of P 42 ). That is, from relaying node B (or /B) to data register node V, only “0” data is writable while from node V to relaying node B (or /B), only “0” data is transferable. From node /V to bit line BL (or /BL), both of “0” and “1” are transferable.
Explaining in detail, the data register is set at a state of V=“H” with signal RSV=“H”. In case signal CK is “H” and relaying node B or /B is “L”, node V is discharged to be “L”. That is, “L” data (=“0” data) is writable. In case data node V is “L” and relaying node B (or /B) is “H”, data node V does not become “H” because the current drivability of PMOS transistor P 41 is set to be sufficiently smaller than that of PMOS transistor P 42 . Therefore, “1” data is not writable. By contrast, “H” data at node /V may be transferred to a destination (i.e., a bit line) without being influenced with “L” data thereof.
Data transfer from relaying node B or /B to plural data latches 26 t or 26 c is performed in such a manner as follows: data nodes V are set at “H” with pulse signal RSVl or RSVr; pulse signals CKL 0 -CKLi or CKr 0 -CKri corresponding to selected bit lines are applied, whereby “L” level data at relaying node B or /B are sequentially transferred to nodes V.
Voltage control of bit line BL or/BL with plural data latches 26 t or 26 c is performed for all corresponding bit lines at a time. That is, signal PRGl or PRGr being kept at an “H” level state for a certain long time, bit line levels “H” and “L” may be set in accordance with “1” (=“H”) and “0” (=“L”) at data node /V. Explaining in detail, if data node /V is “1”, the bit line will be set at such an “H” level that is about transistor's threshold voltage lower than the level applied to PRGl or PRGr, while if “0”, the bit line will be discharged to be Vss.
At a verify-write time, verify control is performed in such a way that when all data writes have been completed, data registers 26 t or 26 c become all “L” (=all “1”) states at data nodes V thereof. Therefore, in case the judging signal line /DLl or /DLr is kept at the precharged “H” state, it will be judged as write completion.
FIG. 25 shows the configuration of the write judgment circuit 25 . Judging signal line PROK is precharged at “H”. Transistors N 81 and N 82 are disposed to be selected by signals “sell” and “selr” between signal line PROK and signal lines /DLl and /DLr, respectively. Write completion will be detected in accordance with whether signal line PROK is discharged or not with selection signal “sell” or “selr”.
In other word, the write judgment circuit 25 serves for transferring data at signal /DLl or /DLr, which is a verify result of data register 26 t or 26 c , to the signal line PROK in accordance with signal “sell” or “selr”, thereby noticing it to the external of the sense-latch system.
In this embodiment, the bit assignment for cell levels on the bit line BL side (i.e., T-cell array side) is the same as that on the bit line /BL side (C-cell array side). In this sense system, information cell levels L 0 -L 3 and reference cell level (reference level) Lr are converted to a cell current difference in accordance with word line potential setting, and it will be sensed with the sense amplifier.
FIG. 26 shows a simulation result of the asymmetric data register 26 t , 26 c (data latch DLl, DLr). The ratio of channel width W to cannel length L, W/L, of PMOS transistors P 41 and P 41 are set to be 1/0.5 and 3/0.325, respectively. With respect to NMOS transistors N 71 , N 72 and N 73 , W/L is set at 1/0.25.
The simulation result has been obtained on the assumption that the power supply voltage is Vdd=1.7V and under the condition of room temperature. It teaches that both of “0” data write from node B and “0” data transfer to node B are possible, and one directional data transfer to the bit line is possible without regard to data stored in the data register.
The initial state is v=“H” (=“1”); and /v=“L” (=“0”) due to reset signal RSV=“H”. The level at node B is applied by a clock pulse that shows “1” during ions in 20 ns cycle. CK is applies as a clock pulse that shows “1” during 20 ns in 40 ns cycle.
While CLK=“H”, even if “H” is applied to the relaying node B, data node “v” is not set at “H”. That is, it will be confirmed that when data node “v” is written once at a “0” data state, it is never rewritten to a data “1” state again.
Data transfer to the bit line BL is performed by applying 3V to as signal PRG. When the signal PRG is applied after the node “/v” becoming “H” (=Vdd), the node “/v” is temporally dropped down in potential in response to the bit line potential Vss, but it will be gradually boosted and restored to Vdd, so that the bit line is gradually charged-up from Vss to Vdd. Thereafter, even if node B is set at “H”, the data state of the data register is not inverted, and the bit line state also is not changed. The simulation result teaches it.
Next, the procedures of the respective operations will be explained in detail. Although the following description is for such a case that bit line BL side is selected, the access of the bit line /BL is performed as similar to that of the bit line BL together with the following changes: change between DQ and /DQ; change between data register 26 t (DLl) and 26 c (DLr); and change between suffix “1” and “r” attached to various signals and nodes:
(Verify-Erase)
FIG. 27 shows a verify-erase sequence. As an initial state, data registers 26 t (data latches DLl) on the bit line BL side are reset at an all “1” state (step S 1 ). In the following description, it should be noted that “H” and “L” states at the node “v” are defined as data “1” and “0” respectively, in data latches DLi and DLr.
Further, to set data mode between sense amplifier 21 and relaying nodes B, /B, data register 23 (i.e., data latch XL) is set in a state of X=“1” (step S 1 ). This is such a condition that OUT and /OUT are coupled to /B and B, respectively. In detail, this is for verifying erase under the condition that cell threshold voltage decreases as a result of erase, and cell current Ic becomes larger than the reference current Ir of second NAND string I-NAND on the side of the bit line /BL. In other words, this is for the purpose of that when the erase has been sufficiently performed, “0” is written in data latch DLl as a result of verify-reading.
Next, after transferring all data in data latches DLl to bit lines, and setting all bit lines to be Vss, a selected block is erased in a lump (step S 2 ). The selected block is an information cell (T-cell) block or a reference cell (R-cell) block.
In detail, erase is performed in such a way that data (i.e., Vss) in data latches DLl are transferred to bit lines by raising signal PRGl, and then all word lines are set at 0V; and the cell well is applied with the erase voltage.
Then, select a bit line pair BL and /BL (step S 3 ), and activate the sense amplifier 21 to read the erased cell data (step S 4 ). This verify-read is for detecting that the cell current Ic of each NAND cell unit has become larger than the reference current Ir of the reference NAND cell unit under the condition of: all word lines in the selected block are applied with 0V as shown in FIG. 10. If there is at least one cell that is insufficiently erased in a NAND cell unit, Ic<Ir.
The read data in the sense amplifier 21 is transferred to data relaying nodes B and /B (step S 5 ). Further, data in the nodes B and /B will be transferred to data latch DLl with CKl=“1” (step S 6 ). If B=“0” (erase is insufficient), data latch DLl becomes to have “0”.
Alter the bit line number to select the following bit line pair (step S 3 ). Similarly, the same read and transfer operations are repeated for all bit line pairs.
At step S 7 , it is detected with signal PROK whether data latches DLl have be set in an all “0” state or not. If all “0” is detected, this erase sequence ends. If there is at least one “1” data, return to the initial step, and repeat the same erase and verify as described above.
FIG. 31 shows operation waveforms in the case that read data in the sense amplifier SA are sequentially transferred to data latch DLl under the condition that DLl=“1” and /X=“1” are set. In this case, as the connection state between the outputs of the sense amplifier and relaying nodes B and /B, OUT-B and /OUT-/B are selected. With the signal CLK, the sense data are sequentially transferred to relaying nodes B and /B, and then loaded in data latches DLl (DLl 0 , DLl 1 , . . . ). In case one sense amplifier is disposed for 8 bit line pairs, data transfer operations will be repeated 8 cycles.
(Reference Cell Verify-Write)
FIG. 28 shows a verify-write sequence of the reference cell (R-cell), which is similar to the erase flow. What is different from the erase sequence is as follows: since it is in need of increasing the cell threshold to the reference level Lr, cell current Ic is compared with reference current of the reference cell I-cell for judging Ic<Ir at a verify-read time.
As an initial state, all data registers 26 t (data latches DLl) on the bit line BL side are set to be in a “1” state. Further, to set data transfer mode between sense amplifier 21 and relaying nodes B and /B, data register 23 (data latch XL) is set at /X=“1” (step S 11 ). This is such a condition that OUT and B, and /OUT and /B are coupled to each other as different from the above-described erase.
At the reference cell writing time, the reference cell threshold increases. Therefore, data write will be verified under the condition that cell current Ic becomes smaller than the reference current Ir of the second reference cell NAND string I-NAND on the bit line /BL side. In other words, if it has been sufficiently written, “0” data is written in data latch DLl at a verify-read time.
After transferring data in the entire data latches DLl to bit lines, and setting all bit lines to be Vss, a reference cell selected by a selected reference word line is written (step S 12 ). In detail, data (i.e., Vss) in the data latches DLl are transferred to bit lines with signal PRGl, and then data write is performed by applying write voltage Vpgm to the selected reference word line.
Then select bit line pairs BL and /BL (step S 13 ), and activate the sense amplifier 21 for reading the reference cell data (step S 14 ). This verify-read is for detecting that the cell current Ic has become smaller than the reference current Ir with the selected reference word line set at Pr as shown in FIG. 11.
The read data in the sense amplifier 21 is transferred to data relaying nodes B and /B (step S 15 ). Further, data in the node B will be transferred to data latch DLl with CKl=“1” (step S 16 ). If B=“0” (write is sufficient), data latch DLl becomes to have “0”.
Alter the bit line number to select the following bit line pair (step S 13 ). Similarly, the same read and transfer operations are repeated for all bit line pairs.
At step S 17 , it is detected with signal PROK whether data latches DLl have become in an all “0” state or not. If all “0” is detected, this write sequence ends. If there is at least one “1” data, return to the step S 12 , and repeat the same write and verify as described above. In this case, a cell corresponding to DLl=“0” is set in a write inhibit state with the corresponding bit line set at Vdd. Therefore, only an insufficiently written cell(s) will be written again.
Data transfer waveforms from the sense amplifier to data latch DLl are basically the same as those shown in FIG. 31, but it is used such a connection of OUT-/B and /OUT-B with X=“1” in this case.
(HB Data Write)
Next, referring to FIG. 29, the upper (or higher) bit (HB) data write will be explained below. At the HB data write time, write HB data is loaded in data register 26 t (data latch DLl) via data line DQ. At this time, it is necessary to invert the data in data latch DLl to that on the data line DQ. The reason is as follows; although write data for increasing cell threshold voltage is “0”, data “1” in data latch DLl supplies Vss to bit line BL, and this results in “0” data write.
Initially, reset the data latches DLl to be an all “1” state, and set data register 23 (data latch XL) to be in X=“1” state (step S 21 ). This is such a condition that data line DQ is coupled to node /B.
To transfer write data to relaying node /B, it is set at “1” (step S 22 ). For the purpose of this, apply signal RWl=“1” to make a path between data line DQ and node /B, and apply BRSl=“1”. As a result, relaying bode B is discharged while relaying node /B is set at “1”, and write data for the respective bit lines are sequentially transferred to node /B via data line DQ with CSL, xi and xj. In case DQ=“0”, node /B is discharged while in case DQ=“1”, node /B is not discharged and node B is set at “0”.
With this sequence, write data transferred to data node /B are sequentially loaded in data latches DLl (step S 23 ). That is, sequentially setting signal CKl to be “1”, data latches DLl store write data inverted to those at data line DQ, and HB data write becomes ready.
Data of data latches DLl are transferred to bit lines, so that bit lines are set at Vss and Vdd in accordance with “0” and “1” write data, respectively. Then write voltage is applied to the selected word line, data write is performed (step S 24 ).
Following it, verify-read is performed by use of data in data latches DLl as it is. First, data latch XL is set at /X=“1” (step S 25 ). This is such a condition that OUT is coupled to node B while /OUT is coupled to node /B.
Then, select bit line (step S 26 ); perform verify-read with verify-voltage P 1 (step S 27 ) as shown in FIG. 14; transfer the sense data to nodes B and /B (step S 28 ); and write data at node B into data latch DLl with clock CKl=“1” (step S 29 ).
If a selected cell is sufficiently increased in threshold voltage, the corresponding data in data latch DLl becomes “0” while data latch DLl is kept as it is for an insufficiently written cell because of B=“1”. Bit lines are sequentially selected, and the same verify-read operations are performed for all bit lines as described above.
It is detected whether data latches DLl become an all “0” state or not (step S 30 ). If YES, write sequence ends while if NO, return to step S 24 , and repeat the same write operations. With respect to “0” written cells, a write-inhibit state will be set, and only an insufficiently written cell(s) will be written again.
FIG. 32 shows operation waveforms, in which write data on data line DQ are transferred to relaying node /B, and then transferred to data latches DLl. With signal RWl=“1”, data line DQ is coupled to the relaying node /B. At each cycle, CSL=“1” is applied, and then pulse signal BRSl=“1” is applied, data on the data line DQ is transferred to the relaying node /B.
Transferred Data at relaying node /B are sequentially transferred to data latches DLl with signal CKl=“1”. As a result, each write data on the data line DQ is inverted and latched in data latch DLl.
FIG. 33 shows operation waveforms for transferring the sense data to data latches DLl. In this operation, it is selected such a connection of OUT-B and /OUT-/B. The sensed data are sequentially transferred to the relaying nodes B and /B with signal CLK, and the data on node B are sequentially transferred to data latches DLl with signal CKl.
As described above, according to this embodiment, write data are serially transferred to and loaded in first and second data registers sharing a sense amplifier, and then collective data write is performed. Further, serially performing verify-read for plural bit lines with a sense amplifier, and the results are subjected to feedback to the first and second data latches. With the above-described procedure, it becomes possible to do high-speed data write.
The above-described feature will be obtained in the following LB data write sequence.
(LB Data Write)
FIG. 30 shows a lower bit (LB) data write sequence. In case of LB data writing, bit-assigned data and write data are not identical with each other, and LB data writing is over-writing for HB data. Therefore, it is in need of making assigned data for each threshold level based on the HB data of the write destination and write data. For this purpose, even if data write is for a bit line BL side, both data latches DLl and DLr are used.
Initially, for write preparation, data latches DLl and DLr are set to be in an all “1” state while data latch XL is set at X=“1” (step S 31 ). X=“1” is a condition that when read data in the sense amplifier are transferred, connections of OUT-/B and /OUT-B are selected.
Then, HB data of the write destination is read out the cell array and stored in the right side data latch DLr (step S 32 ). Read out HB data in the sense amplifier with bit line selection is inverted and loaded in the corresponding data latch DLr with signal CKr. This operation is repeated together with sequential bit line selections, read HB data on all selected bit lines are stored in data latches DLr.
Following it, HB data in data latch DLr is transferred to data latch XL, and write LB data is transferred from the data line DQ and loaded in data latch DLr under the condition of data in data latch XL (step S 33 ).
As shown in FIG. 34, LB data assigned to four data levels are reverse to each other between a case of HB data=“1” and another case of HB data=“0”. Therefore, to load write data in such a way that write data “0” is used for increasing the threshold voltage, it is in need of inverting LB data transferred from data line DQ in accordance with HB data. That is, as shown in FIG. 34, LB data to be loaded in data latch DLl is inverted when HB data stored in data latch DLr is “0”.
As explained previously, data in data latch DLl is shown as that at node “v”. Therefore, “0” and “1” data in data latch DLl serve as “1” write (write-inhibit) data and “0” write data, which supply Vdd and Vss to bit lines, respectively.
Explaining in detail with respect to the step S 33 , to set HB data in the data latch DLr to data latch XL, data latch XL is reset at /X=“1”. Then, applying RWr=“1”, and BRSl=“1” to data bus 10 circuit 24 , relaying node B is discharged, whereby /B=“1” is set. Following it, data in data latch DLr is transferred to node /B with CKr=“1”.
Then, data at node B, /B is transferred to data latch XL with RH=“1”. Data in data latch XL is set as the state of /X being the same as data latch DLr, i.e., it is inverted to that of data latch DLr.
Next, to load LB data in data latch DLl from data line DQ, it will be inverted in accordance with HB data, or written as it is. Therefore, in accordance with the data state of data latch XL, data line DQ is selectively coupled to node B or /B.
Setting RWl=“1”, and simultaneously setting BRSl and BRSr to be “1”, node B is discharged to making a path connecting DQ to node /B in the case /X=“0” while node /B is discharged to making a path connecting DQ to node B in the case /X=“1”.
Next, in accordance with LB write data loaded in data latch DLl, bit line voltage control is performed, and then write operation is performed with the write voltage application (step S 34 ).
After writing, verify-read operations are performed with verify voltages P 2 and P 3 . Although which verify-read is to be advanced is not problem, it is shown here that verify-read with verify voltage P 2 for verifying the uppermost level L 3 is advanced.
That is, performing data read with verify voltage P 2 applied to a selected word line, read data is written in data latch DLl (step S 35 ). Since the uppermost data level L 3 is verified at this verify step, other data levels are sensed as data “1”. Therefore, other data in data latches DLl excluding the verify target will not be destroyed.
Explaining in detail this verify-read step, data latch XL is initially set at /X=“1”, thereby letting the sense data be transferred to data node B, /B as it is. If write is sufficient, the threshold level distribution will be set at data level L 3 , and sensed as “0” data, so that relaying node B becomes “0”.
Then, setting signal CKl to be “1” for data latch DLl corresponding to a selected bit line, data in data latch DLl changes from “1” to “0” only when data latch DLl stores “1” and the relaying node B is “0”. This is such a condition that the corresponding bit line (i.e., cell) is set in a write-inhibit state. As verify-read for data level L 3 , the above-described procedure will be repeated for all data latches DLl.
Next, verify-read is performed with verify voltage P 3 for write-verifying data level L 1 . At this time, since data levels L 2 and L 3 are sensed as “0”, it is in need of preventing data of data latch DLl excluding verify target from being destroyed.
To do data transfer control for this purpose, HB data in data latch DLr is transferred to data latch XL (step S 36 ). Explaining in detail, set data latch XL to be /X=“1”. In addition, apply pulse BRSl with RWl=“1” to discharge relaying node B, thereby setting /B=“1”. Then, applying CKr=“1”, “0” in data latch DLr may be transferred to node /B, and data at node /B will be latched at node /X with RH pulse.
If HB data is “0”, /X=“0”. At this time, sense amplifier output is inverted to be coupled to node B. By contrast, if HB data is “1”, /X=“1”. Therefore, sense amplifier output is coupled to node B as it is. In case HB data is “0”, data level is L 2 or L 3 . This is sensed as “0”, and transferred to node B as data “1”, so that data latch DLl is kept as it is. As a result, verify will be performed for only cell(s) with HB data is “1”.
That is, verify-read with verify voltage P 3 is performed under the transferring control of data latch XL (step S 37 ). The sensed data is transferred to node B, and only “0” data at node B is latched in data latch DLl. As a result, data “1” stored in data latch DLl is changed to data “0” only in case node B is “0”, and it becomes a write-inhibiting state hereinafter.
The procedure described above will be performed for all data latches DLl, and write completion is judged by detecting whether data latches DLl have become an all “1” state or not (step S 38 ). If write is insufficient, write and write-verify described above will be repeated.
FIG. 35 shows operation waveforms at the step S 32 , in which HB data are read out and transferred to data latches DLr. Data latch DLr is reset with signal RSVr, and data latch XL is set as X=“1”, whereby the following connection is achieved: OUT-/B and /OUT-B. The sensed data may be sequentially transferred to and latched in data latches DLr via node B, /B.
FIG. 36 shows operation waveforms at the step S 33 , in which write LB data on data line DQ are transferred as it is or inverted to be transferred to data latches DLl under the control of HB data in data latches DLr. Data latches DLl are reset to be an all “1” state with reset signal RSVl. In addition, data latch XL is set at /X=“1”; and nodes B and /B at /B=“1”.
With signals RWr/l, BRSl/r, XRSl and CKr, and based on HB data in data latch DLr, DQ-/B connection is formed in case of /X=“0” while DQ-B connection is formed in case of /X=“1”. As a result, LB data supplied from the data line DQ are sequentially transferred as it is or inverted to be transferred in accordance with HB data, and latched in data latches DLl with signal CKl.
FIG. 37 shows operation waveforms at verify-read step S 35 . Similar to the upper bit (HB) write-verify time, OUT-B connection and /OUT-/B connection are set with /X=“1”. Repeatedly sensing bit line data, the sensed data are sequentially transferred to and latched in data latches DLl via nodes B, /B with clocks CLK and CKl.
FIG. 38 shows operation waveforms at verify-read step S 37 . /X=“1” and /B=“1” are initially set, and HB data in data latches DLr are sequentially transferred to node /B, and then stored at node /X with clock CKr. As a result, OUT-B connection is selected in case of X=“0” whine OUT-/B connection is selected in case of X=“1”. Therefore, sensed data are transferred under the control of HB data and sequentially written into data latches DLl.
Sensed data corresponding to data levels L 2 or L 3 is defined as OUT=“0”. In this case, X=“1” is obtained based on HB data in data latch DLr, so that OUT-/B connection is obtained. This results in B=“1”, and data latch DLl is not rewritten.
FIG. 39 shows a data transition state of data latch DLl and node B at the verify times with verify voltages P 2 and P 3 in the LB data write sequence. Data preset in data latch DLl for “0” writing of data level L 3 or L 1 is “1”. At the verify-read time with verify voltage P 2 , node B becomes “0” in case of level L 3 writing while at the verify-read time with verify voltage P 3 , node B becomes “0” in case of level L 1 writing. Based on these data, data latch DLl is rewritten to have “0”.
(QPW-Quick Pass Write)
So far, a normal LB data write has been explained. Next, LB data write with a quick pass write (QPW) scheme will be explained below. QPW is defied as a write scheme for achieving a high-speed performance and a narrow data threshold distribution as a whole in such a way that high-speed write is performed until the cell threshold level becomes near the target level; and the write condition is relaxed hereinafter (for example, under the condition of the bit line voltage).
With respect to the LB data write for 4-level data storage scheme in accordance with this embodiment, there are the following two cases: (a) QPW is adapted to data level L 1 , and data level L 3 is subjected to a normal write (refer to as A-QPW, hereinafter), (b) QPW is adapted to data level L 3 , and data level L 1 is subjected to a normal write (refer to as C-QPW, hereinafter).
Note here that A-QPW and C-QPW are based on the assumption that when data levels L 0 , L 1 , L 2 and L 3 are defined as levels A, B, C and D, respectively, (a) A-QPW means QPW for level L 1 (i.e., A); and (b) C-QPW means QPW for level 3 (i.e., C).
To adapt QPW to both data levels L 1 (=A) and L 3 (=C), the number of data latches in the sense unit 20 shown in FIG. 20 is insufficient. Therefore, here is explained such a case that A-QPW and C-QPW may be achieved with different sequences each other with the sense unit 20 shown in FIG. 19.
In the QPW-LB data write sequence on the bit line BL side, write data is held in data latch DLl on the bit line BL side; and discrimination data for designating a data level as a QPW target is held in data latch DLr. The discrimination data is obtained by reading out HB data from the cell array to data latch DLr, and over-writing “0” data in data latch DLl to it.
FIGS. 40 and 41 show data states of data latches DLl and DLr in case of A-QPW and C-QPW, respectively. In data latches DLl, LB data are inverted in part and loaded as similar to the normal LB data write.
In case of A-QPW, as shown in FIG. 40, HB data read out the cell array is stored in data latch DLr as it is, to which “0” data in data latch DLl is over-written. As a result, in data latches DLr, only data corresponding to data level A, which is subjected to A-QPW, becomes “1”.
In the sequence of writing data level A, verify voltage P 3 *(slightly lower than P 3 ) is used until the data level becomes near the target value; and verify-write is performed hereinafter with the verify voltage P 3 together with bit line voltage control for making the write speed reduced.
Next, LB data write with A-QPW and C-QPW will be explained in detail. In the following explanation, there is explained such a case that write data are held in data latches DLl, and cells on the bit line BL side are written.
(LB Data Write Based on A-QPW)
FIG. 42 shows an LB data write sequence based on A-QPW.
In preparation for write, data latches DLl and DLr are reset to be an all “1” state; and data latch XL is set at X=“1” (step S 41 ). X=“1” designates such a condition that connections of OUT-/B and /OUT-B are selected during sensed data transferring.
Then, write destination HB data are read out the cell array to be stored in data latches DLr on the bit line /BL side (step S 42 ). HB data in the sense amplifier sensed by selecting a bit line is inverted and stored in a corresponding data latch DLr with signal CKr. This operation will be repeated by sequentially