WO2015033417A1 - Semiconductor storage device and data writing method - Google Patents

Semiconductor storage device and data writing method Download PDF

Info

Publication number
WO2015033417A1
WO2015033417A1 PCT/JP2013/073917 JP2013073917W WO2015033417A1 WO 2015033417 A1 WO2015033417 A1 WO 2015033417A1 JP 2013073917 W JP2013073917 W JP 2013073917W WO 2015033417 A1 WO2015033417 A1 WO 2015033417A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
voltage
word line
memory cell
selected word
Prior art date
Application number
PCT/JP2013/073917
Other languages
French (fr)
Japanese (ja)
Inventor
白川 政信
Original Assignee
株式会社 東芝
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社 東芝 filed Critical 株式会社 東芝
Priority to CN201380079357.7A priority Critical patent/CN105518794A/en
Priority to JP2015535215A priority patent/JPWO2015033417A1/en
Priority to PCT/JP2013/073917 priority patent/WO2015033417A1/en
Publication of WO2015033417A1 publication Critical patent/WO2015033417A1/en

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells

Definitions

  • Embodiments described herein relate generally to a semiconductor memory device and a data writing method.
  • a NAND flash memory in which memory cells are arranged three-dimensionally is known.
  • the semiconductor memory device includes a plurality of memory cells, a word line, a bit line, and a row decoder.
  • Memory cells are stacked on a semiconductor substrate.
  • the word line is connected to the gate of the memory cell.
  • the bit line is electrically connected to the current path of the memory cell and can transfer data.
  • the row decoder applies a voltage to the word line.
  • Data writing to the memory cell is executed by repeating a program loop including a program operation and a verify operation a plurality of times. In one program loop, the row decoder sequentially applies a first program voltage and a second program voltage different from the first program voltage to the selected word line.
  • FIG. 1 is a block diagram of the semiconductor memory device according to the first embodiment.
  • FIG. 2 is a circuit diagram of the memory cell array according to the first embodiment.
  • FIG. 3 is a perspective view of the memory cell array according to the first embodiment.
  • FIG. 4 is a plan view of the memory cell array according to the first embodiment.
  • FIG. 5 is a cross-sectional view taken along line 5-5 in FIG.
  • FIG. 6 is a cross-sectional view taken along line 6-6 in FIG.
  • FIG. 7 is a cross-sectional view taken along line 7-7 in FIG.
  • FIG. 8 is a graph showing the threshold distribution of the memory cell according to the first embodiment.
  • FIG. 9 is a circuit diagram of the memory cell array according to the first embodiment.
  • FIG. 10 is a flowchart showing a data writing method according to the first embodiment.
  • FIG. 11 is a timing chart of word line potentials at the time of data writing according to the first embodiment.
  • FIG. 12 is a timing chart showing changes in the word line potential during data writing.
  • FIG. 13 is a flowchart showing a data writing method according to the second embodiment.
  • FIG. 14 is a timing chart showing changes in the word line potential when data is written according to the second embodiment.
  • FIG. 15 is a flowchart showing a data writing method according to the third embodiment.
  • FIG. 16 is a timing chart showing changes in the word line potential at the time of data writing according to the third embodiment.
  • FIG. 17 is a flowchart showing a data writing method according to the fourth embodiment.
  • FIG. 11 is a timing chart of word line potentials at the time of data writing according to the first embodiment.
  • FIG. 12 is a timing chart showing changes in the word line potential during data writing.
  • FIG. 13 is a flowchart showing
  • FIG. 18 is a timing chart showing changes in the word line and bit line potentials when writing data according to the fourth embodiment.
  • FIG. 19 is a circuit diagram of a memory cell array according to the fourth embodiment.
  • FIG. 20 is a graph showing a threshold value change of the memory cell according to the fourth embodiment.
  • FIG. 21 is a block diagram of a sense amplifier module, an arithmetic module, and a data latch module according to the fifth embodiment.
  • FIG. 22 is a graph showing changes in the word line potential during data writing according to the fifth embodiment.
  • FIG. 23 is a graph showing changes in word line and bit line potentials during data writing according to the fifth embodiment.
  • FIG. 24 is a block diagram of a memory system according to the sixth embodiment.
  • FIG. 25 is a timing chart of various signals during the write operation in the first mode according to the sixth embodiment.
  • FIG. 26 is a timing chart of various signals during the write operation in the second mode according to the sixth embodiment.
  • First embodiment A semiconductor memory device according to the first embodiment will be described.
  • a semiconductor memory device a three-dimensional stacked NAND flash memory in which memory cells are stacked on a semiconductor substrate will be described as an example.
  • FIG. 1 is a block diagram of the semiconductor memory device according to the present embodiment.
  • the NAND flash memory 1 includes a memory cell array 10, a row decoder 11, a sense amplifier module 12, an arithmetic module 13, a data latch module 14, and a control unit 17.
  • the memory cell array 10 includes a plurality of nonvolatile memory cells.
  • the memory cell is, for example, a MOS transistor having a stacked gate including a charge storage layer and a control gate, and each is associated with a row and a column.
  • the control gates of the memory cells located in the same row are connected to the same word line WL
  • the drains of the memory cells located in the same column are connected to the same bit line BL
  • the sources are connected to the source line SL. Details of the memory cell array 10 will be described later.
  • the row decoder 11 selects the row direction of the memory cell array 10. That is, the row decoder 11 selects the word line WL at the time of data writing, reading, and erasing, and applies an appropriate voltage to the selected word line and the non-selected word line.
  • the sense amplifier module 12 includes a sense circuit provided for each bit line. Each of the sense circuits senses and amplifies data read from the memory cell to the bit line BL when reading data. The sense circuit transfers data to be written in the memory cell to the bit line BL when data is written.
  • the arithmetic module 13 includes an arithmetic circuit provided for each bit line. Each of the arithmetic circuits performs an operation using data sensed and amplified by the sense circuit when reading data. Further, the arithmetic circuit performs an operation using the write data at the time of data writing, and transfers the operation result to the sense circuit.
  • the data latch module 14 includes a latch circuit provided for each bit line. Each of the latch circuits holds read data transferred from the sense circuit via the arithmetic circuit when reading data. The latch circuit outputs read data to the outside. The latch circuit temporarily holds write data received from the outside during data writing. The latch circuit transfers write data to the sense circuit via the arithmetic circuit.
  • the control unit 15 controls the operation of the entire flash memory 1.
  • FIG. 2 is a circuit diagram of the memory cell array 10 according to the present embodiment. As shown in the drawing, the memory cell array 10 includes a plurality of memory units MU (MU1, MU2). Although only two memory units MU are illustrated in FIG. 2, the number may be three or more, and the number is not limited.
  • MU1, MU2 memory units
  • Each of the memory units MU includes, for example, four string loops GR (GR1 to GR4).
  • the string groups GR of the memory unit MU1 are referred to as GR1-1 to GR4-1, respectively, and the string groups GR of the memory unit MU2 are respectively referred to as GR1-2 to GR4-2. Call it.
  • Each of the string groups GR includes, for example, three NAND strings SR (SR1 to SR3).
  • the number of NAND strings SR is not limited to three and may be four or more.
  • Each of the NAND strings SR includes select transistors ST1 and ST2 and four memory cell transistors MT (MT1 to MT4).
  • the number of memory cell transistors MT is not limited to four, but may be five or more, or may be three or less.
  • the memory cell transistor MT includes a stacked gate including a control gate and a charge storage layer, and holds data in a nonvolatile manner.
  • the memory cell transistor MT is connected in series between the source of the selection transistor ST1 and the drain of the selection transistor ST2.
  • the three NAND strings SR1 to SR3 are sequentially stacked on the semiconductor substrate, the NAND string SR1 is formed in the lowermost layer, and the NAND string SR3 is formed in the uppermost layer.
  • the select transistors ST1 and ST2 included in the same string group GR are connected to the same select gate lines GSL1 and GSL2, respectively, and the control gates of the memory cell transistors MT located in the same column are connected to the same word line WL. Is done.
  • the drains of the three selection transistors ST1 in a certain string group GR are connected to different bit lines BL, and the sources of the selection transistors ST2 are connected to the same source line SL.
  • the selection transistors ST1 and ST2 are arranged so that their positional relationships are reversed. That is, in the example of FIG. 2, the select transistors ST1 of the string groups GR1 and GR3 are arranged at the left end of the NAND string SR, and the select transistors ST2 are arranged at the right end of the NAND string SR. On the other hand, the select transistors ST1 of the string groups GR2 and GR4 are arranged at the right end of the NAND string SR, and the select transistors ST2 are arranged at the left end of the NAND string SR.
  • the gates of the select transistors ST1 in the string groups GR1 and GR3 are connected to the same select gate line GSL1, and the gates of the select transistors ST2 are connected to the same select gate line GSL2.
  • the gates of the select transistors ST1 of the string groups GR2 and GR4 are connected to the same select gate line GSL2, and the gates of the select transistors ST2 are connected to the same select gate line GSL1.
  • each string group GR1 and GR2 included in a certain memory unit MU are connected to the same bit line BL, and different memory units MU are connected to different bit lines BL. More specifically, in the memory unit MU1, the drains of the selection transistors ST1 of the NAND strings SR1 to SR3 in the string groups GR1 to GR4 are connected to the bit lines BL1 to BL3 via the column selection gates CGS (CGS1 to CGS4), respectively. Is done.
  • the column selection gate CGS has, for example, the same configuration as the memory cell transistor MT, the selection transistors ST1 and ST2, and the like, and selects one string group GR selected for the bit line BL in each memory unit MU. Accordingly, the gates of the column selection gates CGS1 to CSG4 associated with each string group GR are controlled by different control signal lines SSL1 to SSL4, respectively.
  • a plurality of memory units MU having the above-described configuration are arranged in the vertical direction on the paper surface illustrated in FIG.
  • the plurality of memory units MU share the memory unit MU1 with the word line WL and the select gate lines GSL1 and GSL2.
  • the bit lines BL are independent, and for example, three bit lines BL4 to BL6 different from the memory unit MU1 are associated with the memory unit MU2.
  • the number of bit lines BL associated with each memory unit MU corresponds to the total number of NAND strings SR included in one string group GR. Therefore, if there are four layers of NAND strings, four bit lines BL are provided, and the same applies to other numbers.
  • the control signals SSL1 to SSL4 may be shared between the memory units MU, or may be controlled independently.
  • a set of a plurality of memory cell transistors MT connected to the same word line WL in the string group GR selected one by one from each memory unit MU is a unit called “page”. Data writing and reading are performed in units of pages.
  • FIG. 3 is a perspective view of the memory cell array 10
  • FIG. 4 is a plan view of the memory cell array 10
  • FIG. 5 is a cross-sectional view taken along line 5-5 in FIG. 4
  • FIG. 7 is a cross-sectional view taken along line 6
  • FIG. 7 is a cross-sectional view taken along line 7-7 in FIG. 3,
  • FIG. 5, and FIG. 7 show one memory unit MU
  • FIG. 4 and FIG. 6 show two memory units MU1 and MU2.
  • an insulating film 21 is formed on the semiconductor substrate 20, and the memory cell array 10 is formed on the insulating film 21.
  • each of the fin-type structures 24 includes insulating films 22 (22-1 to 22-4) and semiconductor layers 23 (23-1 to 23-3) that are alternately stacked.
  • Each of the fin-type structures 24 corresponds to the string group GR described with reference to FIG.
  • the lowermost semiconductor layer 23-1 corresponds to the current path (region where a channel is formed) of the NAND string SR1
  • the uppermost semiconductor layer 23-3 corresponds to the current path of the NAND string SR3.
  • the located semiconductor layer 23-2 corresponds to the current path of the NAND string SR2.
  • a gate insulating film 25, a charge storage layer 26, a block insulating film 27, and a control gate 28 are sequentially formed on the upper surface and side surfaces of the fin structure 24 (see FIG. 5).
  • the charge storage layer 26 is formed of an insulating film, for example.
  • the control gate 28 is formed of a conductive film and functions as the word line WL or select gate lines GSL1 and GSL2.
  • the word lines WL and select gate lines GSL1 and GSL2 are formed so as to straddle the plurality of fin-type structures 24 between the plurality of memory units MU.
  • the control signal lines SSL 1 to SSL 4 are independent for each fin-type structure 24.
  • One end of the fin-type structure 24 is drawn to the end of the memory cell array 10 and connected to the bit line BL in the drawn region. That is, focusing on the memory unit MU1 as an example, one end portions of the odd-numbered fin-type structures 24-1 and 24-3 are drawn out to a certain region along the second direction, and are connected to this region.
  • Plugs BC1 to BC3 are formed.
  • the contact plug BC1 formed in this region connects the semiconductor layer 23-1 and the bit line BL1 of the string groups GR1 and GR3, and is insulated from the semiconductor layers 23-2 and 23-3.
  • the contact plug BC2 connects the semiconductor layer 23-2 of the string groups GR1 and GR3 and the bit line BL2, and is insulated from the semiconductor layers 23-1 and 23-3.
  • the contact plug BC3 connects the semiconductor layer 23-3 and the bit line BL3 of the string groups GR1 and GR3, and is insulated from the semiconductor layers 23-1 and 23-2.
  • one end of the even-numbered fin structures 24-2 and 24-4 is drawn out to a region facing the one end of the fin structures 24-1 and 24-3 in the second direction and connected in common.
  • contact plugs BC1 to BC3 are formed.
  • the contact plug BC1 formed in this region connects the semiconductor layer 23-1 and the bit line BL1 of the string groups GR2 and GR4, and is insulated from the semiconductor layers 23-2 and 23-3.
  • the contact plug BC2 connects the semiconductor layer 23-2 of the string groups GR2 and GR4 and the bit line BL2, and is insulated from the semiconductor layers 23-1 and 23-3.
  • the contact plug BC3 connects the semiconductor layer 23-3 and the bit line BL3 of the string groups GR2 and GR4, and is insulated from the semiconductor layers 23-1 and 23-2.
  • contact plugs BC4 to BC6 are formed, which are connected to the bit lines BL4 and the semiconductor layers 23-1 to 23-3, respectively. To BL6 (see FIG. 6).
  • a contact plug SC is formed on the other end of the fin structure 24.
  • the contact plug SC connects the semiconductor layers 23-1 to 23-3 to the source line SL.
  • the memory cell transistors included in the NAND strings SR1 to SR3 have different sizes. More specifically, as shown in FIG. 5, in each fin-type structure 24, the width of the semiconductor layer 23 along the third direction is larger as it is located in the lower layer and smaller as it is located in the higher layer. That is, the width of the semiconductor layer 23-1 is the widest, the width of the semiconductor layer 23-3 is the narrowest, and the width of the semiconductor layer 23-2 is intermediate. That is, one page includes a plurality of memory cell transistors MT having different characteristics due to manufacturing variations.
  • FIG. 8 shows a possible threshold distribution of the memory cell transistor MT according to the present embodiment.
  • the memory cell transistor MT can hold, for example, 2-bit data according to the threshold value.
  • the 2-bit data is, for example, “Ep” level, “A” level, “B” level, and “C” level in order from the lowest threshold value.
  • the “EP” level is a threshold value when data is erased, and has a positive value, for example, and is lower than the verify voltage Vfy_A.
  • the “A” to “C” levels are threshold values in a state where charges are injected into the charge storage layer.
  • the “A” level has a threshold value higher than the verify voltage Vfy_A and lower than the verify voltage Vfy_B.
  • the “B” level has a threshold value higher than the verify voltage Vfy_B and lower than the verify voltage Vfy_C
  • the “C” level has a threshold value higher than the verify voltage Vfy_C.
  • each memory cell transistor MT can store 2-bit data (4-level data).
  • FIG. 9 is a circuit diagram of the memory cell array 10.
  • FIG. 9 shows a case where only two memory units MU1 and MU2 are included in the memory cell array 10, and the control signal lines SSL1 and SSL5 are selected.
  • the case where the string group GR1-1 in the memory unit MU1 and the string group GR1-2 in the memory unit MU2 are selected is shown.
  • a page is formed by the six memory cell transistors MT connected to the same word line WL in the string groups GR1-1 and GR1-2.
  • the selected string groups GR1-1 and GR1-2 are shown, and the column selection gate CGS is not shown. The following description is the same when other combinations of string groups are selected.
  • the memory cell transistor MT (NAND string SR1) located in the lowermost layer has the largest width of the semiconductor layer 23. Therefore, the data writing speed is the highest.
  • the width of the semiconductor layer 23 of the memory cell transistor MT (NAND string SR3) located in the uppermost layer is the smallest. Therefore, the data writing speed is the lowest.
  • the memory cell transistor in which writing is completed earliest is located in the lowermost layer in the fin-type structure 24 and the memory cell transistor MT in which “A” level is written. It is.
  • Such a memory cell transistor MT will be referred to as a first cell in the following description.
  • the memory cell transistor in which writing ends most slowly is the memory cell transistor MT in which the “C” level is written while being positioned in the uppermost layer in the fin-type structure 24.
  • Such a memory cell transistor MT is referred to as a third cell.
  • the other memory cell transistor MT is called a second cell.
  • FIG. 10 is a flowchart of the writing method
  • FIG. 11 is a timing chart of voltages applied to the selected word line WL during writing.
  • the row decoder 11 selects one of the word lines WL and applies a program voltage VPGM to the selected word line WL to program data.
  • the word line WL1 is selected, and data is programmed in the six memory cell transistors MT connected to the word line WL1 in the string groups GR1-1 and GR1-2 (step S10).
  • the row decoder 11 sequentially applies the program voltages VPGM1, VPGM2, and VPGM3 to the selected word line WL1 as shown in FIG.
  • the voltages VPGM1 to VPGM3 are programming voltages for the first to third cells, respectively, and have a relationship of VPGM1 ⁇ VPGM2 ⁇ VPGM3.
  • the row decoder 11 applies the voltage VPASS to the unselected word lines WL2 to WL4.
  • the voltage VPASS is a voltage for turning on the memory cell transistor MT regardless of the retained data, and is a voltage lower than the program voltages VPGM1 to VPGM3.
  • the row decoder 11 applies the voltage VSG to the select gate line GSL1, and applies 0 V, for example, to the select gate line GSL2.
  • the voltage VSG is a voltage that turns on the selection transistor ST1 of the NAND string SR to be programmed and turns off the selection transistor ST1 of the NAND string SR that is not to be programmed. Note that the “low” level is given to the control signal lines SSL2 to SSL4, whereby the non-selected string groups GR2 to GR4 are electrically separated from the bit line BL.
  • the sense amplifier module 12 applies 0 V to the bit line BL (BL1 in the example of FIG. 9) to which the first cell is connected.
  • the selection transistor ST1 is turned on, and data is programmed in the first cell.
  • the row decoder 11 applies a voltage V1 (> 0 V) to the bit line BL (BL2 to BL6 in the example of FIG. 9) to which the second cell and the third cell are connected.
  • the selection transistor ST1 is cut off, and the programming to the second cell and the third cell is prohibited.
  • the sense amplifier module 12 applies 0V to the bit lines BL (BL2 to BL5 in the example of FIG. 9) to which the second cell is connected. Apply.
  • the selection transistor ST1 is turned on, and data is programmed in the second cell.
  • the row decoder 11 applies the voltage V1 to the bit line BL (BL1 and BL6 in the example of FIG. 9) to which the first cell and the third cell are connected. Thereby, the programming to the first cell and the third cell is prohibited.
  • the sense amplifier module 12 applies 0 V to the bit line BL (BL6 in the example of FIG. 9) to which the third cell is connected.
  • the row decoder 11 applies the voltage V1 to the bit line BL (BL1 to BL5 in the example of FIG. 9) to which the first cell and the second cell are connected. Thereby, the programming to the first cell and the second cell is prohibited.
  • data is sequentially programmed in the first to third cells connected to the word line WL1.
  • Whether the memory cell transistor MT corresponds to the first to third cells can be determined according to the address of the memory cell transistor MT. That is, the control unit 15 and the row decoder 11 determine which of the first to third program voltages is applied according to the address of the memory cell transistor MT to be written and the data to be written to the memory cell transistor MT. I can decide.
  • control unit 15 verifies the data programmed in the memory cell transistor MT as a result of the programming in step S10 (step S11).
  • the row decoder 11 sequentially applies the verify voltages Vfy_A, Vfy_B, and Vfy_C to the selected word line WL1 as shown in FIG. 11 in response to an instruction from the control unit 15.
  • the row decoder 11 applies the voltage VREAD to the unselected word lines WL2 to WL4.
  • the voltage VREAD is a voltage that turns on the memory cell transistor MT regardless of retained data.
  • the row decoder 11 applies a high level to the select gate lines GSL1 and GSL2 to turn on the select transistors ST1 and ST2. Note that the “low” level is given to the control signal lines SSL2 to SSL4, whereby the non-selected string groups GR2 to GR4 are electrically separated from the bit line BL.
  • the sense amplifier module 12 applies a precharge voltage to the bit lines BL1 to BL6 to sense and amplify the current flowing through the bit lines BL1 to BL6. Thereby, the data programmed in the memory cell transistor MT is determined.
  • step S11 the program to the first cell is completed (step S12, YES), the program to the third cell is completed (step S13, YES), and the program to the second cell is completed (step S14). , YES), the control unit 15 determines that the program of desired data for the selected page has been normally completed, and ends the write operation.
  • step S11 the program to the first cell is completed (step S12, YES), and if the program to the third cell is not completed (step S13, NO), the control unit 15 applies the voltage VPGM1.
  • step S10 is repeated while omitting and stepping up the voltages VPGM2 and VPGM3 (step S15).
  • step S11 if the programming to the first cell has not been completed (step S12, NO), and the programming to the third cell has not been completed (step S16, NO), the control unit 15 causes the voltage VPGM1 ⁇ While stepping up VPGM3 (step S17), the process of step S10 is repeated. If the programming to the third cell is completed (step S16, YES), the control unit 15 omits the application of the voltage VPGM3 and steps up the voltages VPGM1 and VPGM2 (step S18), and the process of step S10 repeat.
  • step S11 the program to the first and third cells is completed (step S12, YES, step S13, YES), and if the program to the second cell is not completed (step S14, NO), the control unit 15 omits application of the voltages VPGM1 and VPGM3 and steps up the voltage VPGM2 (step S19), and repeats the process of step S10.
  • the control unit 15 omits application of the voltage VPGM1 in the third program.
  • the third cell passes verification (time t6). Therefore, the control unit 15 further omits application of the voltage VPGM3 in the fourth program.
  • FIG. 12 is a timing chart of the word line voltage in the normal writing method of the NAND flash memory.
  • a program voltage VPGM is applied to the selected word line, and data is programmed to the memory cell transistors MT to be written with the “A” to “C” levels.
  • the verify operation is executed. That is, one program loop is formed by one application of the program voltage VPGM and the verify operation, and this program loop is repeated while the program voltage is stepped up.
  • the time required for writing may be very long.
  • FIGS. 2 to 6 when memory cell transistors MT connected in series in the NAND string SR are arranged in parallel to the semiconductor substrate surface, and the NAND string SR is stacked in a direction perpendicular to the semiconductor substrate surface, one page
  • the memory cell transistors MT included in the memory cell transistors MT have different current path widths, resulting in variations in writing speed. That is, in the same page, a fast write memory cell transistor MT and a slow write memory cell transistor MT are mixed. This reason is due to the manufacturing process of the memory cell array 10.
  • the voltage VPGM used in the first program loop of FIG. 12 is set to a sufficiently low value so that the memory cell transistor MT in which the “A” level is written is positioned in the lowermost layer and is not overprogrammed. Is set.
  • the first half program operation in the write operation contributes only to the memory cell transistor MT (ie, the first cell) having a substantially high write speed, and the program pulse in this period is the write pulse. It hardly affects the threshold voltage of the third cell having a low speed. Only after the program operation in the latter half of the write operation, the substantial program for the third cell is started.
  • the data program is collectively executed in units of pages, but the first to third cells in the page are actually programmed in order. Therefore, the number of program loops becomes very large, and a long time is required for writing.
  • the program voltage VPGM is separated into the following three pulses.
  • the pulses (1) to (3) are sequentially applied in one program loop.
  • the initial values of these pulses are optimum values according to the write speed and write data of the memory cell transistor MT programmed by these pulses. That is, the initial value of the voltage VPGM3 may be a value that overprograms the first cell and the second cell as long as the third cell is not overprogrammed. Of course, the initial value of the voltage VPGM1 is set to a value that does not overprogram the first cell in one program operation.
  • a substantial program can be executed for all of the first to third cells from the first program loop.
  • the threshold voltage of the third cell can be effectively increased even in the first program loop.
  • the number of program loops can be greatly reduced and the writing speed can be improved.
  • FIG. 11 shows an example in which VPGM1 is omitted first, and then VPGM3 is omitted, the reverse case may be possible, or VPGM1 and VPGM3 may be omitted at the same time.
  • the row decoder 11 sequentially applies the program voltage to the selected word line WL M times (M is a natural number of 1 or more) (t5 in FIG. 11). T6, t7 to t8), and subsequently, the verify voltage Vfy is sequentially applied to the selected word line WL N times (N is greater than M and a natural number of 3 or more) (from t6 to t7, t7 in FIG. 11).
  • the number of application times of the program voltage does not exceed the number of application times of the verify voltage, and is equal to or less than the number of application times of the verify voltage.
  • data is written into the memory cell by repeating a program loop including a program operation for applying a program voltage to the selected word line WL and a verify operation for applying a verify voltage to the selected word line a plurality of times. Is done.
  • the row decoder 11 does not change the number of times of application of the verify voltage Vfy between two consecutive program loops (t3 to t5 and t5 to t6 in FIG. 11).
  • the number of program voltage applications (3 times: VPGM1-VPGM3) in the program loop (t5 to t6 in Fig. 11) is reduced from the first program loop (t3 to t5 in Fig. 11) (2 times: VPGM2, VPGM3) ).
  • the row decoder 11 sequentially applies a program voltage to the selected word line M times in a certain program loop.
  • the first memory cell located in the lowermost layer is set as a program target, and at least in the uppermost layer.
  • the third memory cell located is not targeted for programming.
  • the row decoder 11 omits application of any one of the program voltages (VPGM1 in FIGS. 11 and 16) to the selected word line (t5-t6 in FIG. 11 and t5 in FIG. 16). Or later).
  • the application of VPGM1 is stopped before VPGM3.
  • the third memory cell located in the uppermost layer is set as a program target, and at least in the lowermost layer.
  • the first memory cell located is not programmed.
  • the row decoder 11 omits application of any of the program voltages (VPGM3 in FIGS. 11 and 14) (after t5 in FIG. 14). In this example, the application of VPGM3 is stopped before VPGM1.
  • the program voltage may be applied multiple times in one program loop.
  • the program voltage and the write level are associated with each other. Therefore, the reduction in the application of the program voltage completely coincides with the completion of writing to a certain level. In other words, when the application of a certain program voltage is stopped, the application of a certain verify voltage is also stopped at the same time.
  • FIG. 13 is a flowchart of the writing method
  • FIG. 14 is a timing chart of voltages applied to the selected word line WL at the time of writing.
  • the row decoder 11 selects any one of the word lines WL, applies a program voltage VPGM to the selected word line WL, and programs data (step S20).
  • the row decoder 11 sequentially applies the program voltages VPGM2a and VPGM3 to the selected word line WL.
  • the voltage VPGM2a is a program voltage for the first and second cells, and has a relationship of VPGM2a ⁇ VPGM3. Further, for example, VPGM1 ⁇ VPGM2a ⁇ VPGM2, but VPGM2a is a value that does not cause an overprogram to the first cell in one program, for example.
  • the sense amplifier module 12 applies 0V to the bit lines BL (BL1 to BL5 in the example of FIG. 9) to which the first and second cells are connected. Is applied.
  • the selection transistor ST1 is turned on, and data is programmed in the first and second cells.
  • the row decoder 11 applies the voltage V1 to the bit line BL (BL6 in the example of FIG. 9) to which the third cell is connected. As a result, programming to the third cell is prohibited.
  • data is sequentially programmed in the first and second cells and the third cell connected to the selected word line WL.
  • Step S21 is the same as step S11 described in the first embodiment.
  • step S21 if the programming to the first and second cells is completed (step S22, YES), and the programming to the third cell is also completed (step S23, YES), the control unit 15 selects the desired page for the selected page. It is determined that the data program has been completed normally, and the write operation is terminated.
  • step S21 the program to the first and second cells is completed (step S22, YES), and if the program to the third cell is not completed (step S23, NO), the control unit 15 controls the voltage VPGM2a. Is omitted and the voltage VPGM3 is stepped up (step S24), and the process of step S20 is repeated.
  • step S21 programming to at least one of the first and second cells has not been completed (step S22, NO), and programming to the third cell has not been completed (step S25, NO).
  • the controller 15 repeats the process of step S20 while stepping up the voltages VPGM2a and VPGM3 (step S26). If the programming to the third cell is completed (step S25, YES), the control unit 15 repeats the process of step S20 while omitting the application of the voltage VPGM3 and stepping up the voltage VPGM2a (step S27). .
  • the first and second cells are simultaneously programmed using the program voltage VPGM2a. Therefore, as in the first embodiment, the number of program loops can be reduced, the types of program voltages can be reduced, and the circuit configuration can be simplified.
  • FIG. 15 is a flowchart of the writing method
  • FIG. 16 is a timing chart of voltages applied to the selected word line WL at the time of writing.
  • the row decoder 11 selects any one of the word lines WL. Then, the row decoder 11 applies the program voltage VPGM to the selected word line WL to program data (step S30).
  • the row decoder 11 sequentially applies the program voltages VPGM1 and VPGM2b to the selected word line WL.
  • the voltage VPGM2b is a program voltage for the second and third cells, and has a relationship of VPGM2b> VPGM1. Also, for example, VPGM2 ⁇ VPGM2b ⁇ VPGM3.
  • VPGM2b is a value that does not cause an overprogram to the second cell in one program.
  • the sense amplifier module 12 applies 0V to the bit lines BL (BL2 to BL6 in the example of FIG. 9) to which the second and third cells are connected. Is applied.
  • the selection transistor ST1 is turned on, and data is programmed in the second and third cells.
  • the row decoder 11 applies the voltage V1 to the bit line BL (BL1 in the example of FIG. 9) to which the first cell is connected. As a result, programming to the first cell is prohibited.
  • data is sequentially programmed in the first cell connected to the selected word line WL, and the second and third cells.
  • Step S31 is the same as step S11 described in the first embodiment.
  • step S31 when the program to the first cell is completed (step S32, YES) and the program to the second and third cells is also completed (step S33, YES), the control unit 15 selects the desired page for the selected page. It is determined that the data program has been completed normally, and the write operation is terminated.
  • step S31 the program to the first cell is completed (step S32, YES), and if the program to at least one of the second and third cells is not completed (step S33, NO), the control unit 15 Omits the application of the voltage VPGM1, and repeats the process of step S30 while stepping up the voltage VPGM2b (step S34).
  • step S31 the program to the first cell is not completed (step S32, NO), and the program to at least one of the second and third cells is not completed (step S35, NO).
  • the controller 15 repeats the process of step S30 while stepping up the voltages VPGM1 and VPGM2b (step S36). If the programming to the second and third cells is completed (step S35, YES), the control unit 15 omits the application of the voltage VPGM2b and steps up the voltage VPGM1 (step S37). Repeat the process.
  • this embodiment increases the channel potential of the first cell when the program voltage VPGM2 is applied, thereby omitting the application of VPGM1 and using it in one program loop.
  • the number of program pulses to be reduced is two. Below, only a different point from 1st Embodiment is demonstrated.
  • FIG. 17 is a flowchart of the writing method
  • FIG. 18 is a timing chart of voltages applied to the selected word line WL and the bit line BL during programming.
  • the row decoder 11 selects one of the word lines WL, applies a program voltage VPGM to the selected word line WL, and programs data (step S40).
  • the row decoder 11 sequentially applies the program voltages VPGM2 and VPGM3 to the selected word line WL.
  • the voltage VPGM2 is a voltage optimized for programming the second cell.
  • the voltage VPGM1 is not applied.
  • FIG. 19 is a circuit diagram of the memory cell array 10 when the voltage VPGM2 is applied.
  • the sense amplifier module 12 applies the voltage V QPW to the bit line BL (BL1 in the example of FIG. 19) to which the first cell is connected.
  • the voltage V QPW is higher than the voltage applied to the bit line BL (BL2 to BL5 in the example of FIG. 19) to which the second cell is connected, and for example, V QPW > 0V.
  • V QPW is also a voltage that can be transferred by the select transistor ST1 having the gate applied with the voltage VSG.
  • the first and second cells are programmed with V QPW and 0 V applied to each channel, respectively.
  • Steps S41 to S47 in FIG. 17 correspond to steps S21 to S27 in FIG.
  • FIG. 20 is a graph showing changes in threshold voltages of the first cell and the second cell during programming.
  • the threshold value of the second cell increases in a desired step ( ⁇ Vth1).
  • VPGM2 is a voltage that is too large for the first cell. Therefore, when VPGM2 is applied to the first cell as it is, the threshold value increases in a step ( ⁇ Vth2) larger than the desired step. Depending on the case, there is a possibility that the threshold value increases too much in one program.
  • the voltage V QPW is applied to the bit line BL to which the first cell is connected. That is, the potential difference between the control gate and the channel is reduced by applying the voltage V QPW .
  • the threshold fluctuation width of the first cell is controlled (the fluctuation width is reduced), and is raised by an optimum step ( ⁇ Vth3).
  • the present embodiment relates to the configuration and operation of the column peripheral circuit in the first embodiment.
  • FIG. 21 is a block diagram of the sense amplifier module 12, the arithmetic module 13, and the data latch module 14 according to the present embodiment.
  • the sense amplifier module 12 includes a latch circuit SDL associated with each bit line BL.
  • “_B”, “_M”, and “_T” added after “SDL” indicate that the latch circuit SDL has the bottom layer cell, the middle layer cell, and the bottom layer cell of the fin-type structure 24, respectively. It corresponds to the upper cell.
  • Signals SEL_BOT, SEL_MID, and SEL_TOP indicating which cell corresponds to each latch circuit SDL are given by, for example, the control unit 15.
  • SEL_BOT “H” is given to the latch circuit SDL_B
  • SEL_MID “H” is given to the latch circuit SDL_M
  • SEL_TOP “H” is given to the latch circuit SDL_T.
  • the latch circuit SDL holds the write data transferred from the arithmetic module 13 when writing data.
  • the latch circuit SDL applies a predetermined voltage to the corresponding bit line BL according to the write data.
  • the latch circuit SDL precharges the bit line BL to a voltage corresponding to the signals CLAMP_BOT, CLAMP_MID, and CLAMP_TOP when reading data. That is, when reading data, the latch circuit SDL controls the precharge potential applied to the bit line BL according to which layer the read target cell is located.
  • the arithmetic module 13 includes an arithmetic circuit 40 associated with each bit line BL.
  • the arithmetic circuit 40 also receives any of the corresponding signals SEL (SEL_TOP, SEL_MID, and SEL_BOT).
  • SEL_TOP SEL_TOP
  • SEL_MID SEL_MID
  • SEL_BOT SEL_BOT
  • Each of the arithmetic circuits 40 generates write data by an operation using the data supplied from the data latch module 14 and the corresponding signal SEL when writing data. Then, the generated write data is transferred to the corresponding latch circuit SDL.
  • the data latch module 14 includes a set of latch circuits DL0 and DL1, and this set is associated with each bit line BL.
  • each bit of 2-bit data given from an external device such as a host device via the data line DAT is held in the latch circuits DL0 and DL1. These data are transferred to the arithmetic circuit 13.
  • each bit of the 2-bit data read from the memory cell transistor MT is held in the latch circuits DL0 and DL1.
  • the latch circuits DL0 and DL1 output each bit of 2-bit data to the external device via the data line DAT.
  • FIG. 22 is a timing chart showing changes in the word line voltage during writing
  • FIG. 23 is a timing chart showing changes in the word line and bit line voltages during programming.
  • write data is transferred to the latch circuits DL0 and DL1.
  • the relationship between the write data and the data in the latch circuits DL0 and DL1 is as follows.
  • the data in the latch circuit SDL has the following relationship.
  • Step 1 When data is transferred to the latch circuits DL0 and DL1, each of the arithmetic circuits 40 executes a data set for the first program.
  • the first program is a program performed only on the first cell.
  • the arithmetic circuit 40 executes the following logical operation. That is, / (DL0 & / DL1 & SEL_BOT) ⁇ SDL
  • “/” indicates inversion and “&” indicates logical product.
  • 0 V is applied only to the bit line BL to which the first cell that has not passed verification is connected, and the other second and third cells, and the bit to which the non-write target cell and the write completion cell are connected.
  • a voltage V1 is applied to the line BL.
  • the voltage VPGM1 is applied to the selected word line WL, and the “A” level data is programmed only in the first cell.
  • each of the arithmetic circuits 40 executes a data set for the second program.
  • the second program is a program performed only on the second cell.
  • the arithmetic circuit 40 executes the following logical operation. That is, (DL0 & DL1)
  • represents a logical sum.
  • “1” is set in the latch circuit SDL corresponding to the first cell, the third cell, and the non-write target cell. In other words, “0” is set only in the latch circuit SDL corresponding to the second cell.
  • each of the arithmetic circuits 40 executes a data set for the third program.
  • the third program is a program performed only for the third cell.
  • the arithmetic circuit 40 executes the following logical operation. That is, / (/ DL0 & DL1 & SEL_TOP) ⁇ SDL
  • “1” is set in the other latch circuits SDL.
  • 0 V is applied only to the bit line BL to which the third cell that has not passed verification is connected, and the other first cell and second cell, and the bit to which the non-write target cell and the write completion cell are connected.
  • a voltage V1 is applied to the line BL.
  • the voltage VPGM3 is applied to the selected word line WL, and the “C” level data is programmed only in the third cell.
  • Step 4 a verify operation for the “A” level is executed. That is, data is read from the memory cell transistor MT with the verify level Vfy_A applied to the selected word line WL. If the memory cell transistor MT is turned off, that is, if the threshold value has reached the “A” level, “1” is stored in the latch circuit SDL. On the other hand, if the memory cell transistor MT is turned on, that is, if the threshold value has not reached the “A” level, “0” is stored in the latch circuit SDL.
  • the arithmetic circuit 40 performs the following logical operation. That is, (SDL & DL0 & / DL1)
  • the arithmetic circuit 40 executes the logical operation of the following equation (1). That is, (DL0 & / DL1 & SEL_BOT) (1) As a result, a verify result of the memory cell transistor MT corresponding to the “A” level and located in the lowermost layer is obtained. That is, if the calculation result is “0”, it can be seen that the first cell corresponding to the column has passed verification. On the other hand, only the operation result corresponding to the column corresponding to the first cell and failing to verify becomes “1”.
  • a certain reference value for example, determined by the number of error correctable bits in the ECC circuit
  • the arithmetic circuit 40 executes the logical operation of the following equation (2). That is, (DL0 & / DL1 & (SEL_MID
  • a verify result of the memory cell transistor MT corresponding to the “A” level and located in a layer other than the lowest layer is obtained. That is, when the calculation result is “0”, it is understood that the memory cell transistor corresponding to the column has passed verification.
  • only the operation result corresponding to the verify failure among the memory cell transistors MT corresponding to the “A” level and located in a layer other than the lowest layer is “1”.
  • control unit 15 counts the number of bits for which the calculation result is “1”, and if the number is equal to or less than a certain reference value, the control unit 15 should be located in a layer other than the lowest layer and write the “A” level. It is determined that the memory cell transistor MT has passed verification.
  • Step 5 a verify operation for the “B” level is executed. That is, data is read from the memory cell transistor MT in a state where the verify level Vfy_B is applied to the selected word line WL. If the memory cell transistor MT is turned off, that is, if the threshold value has reached the “B” level, “1” is stored in the latch circuit SDL. On the other hand, if the memory cell transistor MT is turned on, that is, if the threshold value has not reached the “B” level, “0” is stored in the latch circuit SDL.
  • the arithmetic circuit 40 executes the following logical operations simultaneously. That is, (SDL & / DL0 & / DL1)
  • (/ DL0 & / DL1) is “1” only in the bit line BL to which the “B” level is written. Therefore, (SDL & / DL0 & / DL1) becomes "1” only for the bit line BL whose write data is at the "B” level and has passed verification.
  • the data in the latch circuits DL0 and DL1 are as follows. “Ep” level (non-write): (1, 1) “A” level: (1, 0/1) “B” level: (0, 0/1) “C” level: (0, 1) Note that the value of the latch circuit DL0 corresponding to the “A” level is reset to “0” or “1” in step (4).
  • the arithmetic circuit 40 executes the logical operation of the following equation (3). That is, (/ DL0 & / DL1) (3) It can be seen that if the calculation result is “0”, the memory cell transistor MT to which the “B” level is to be written passes verification, and if it is “1”, the verification fails.
  • Step 6 a verify operation for the “C” level is executed. That is, data is read from the memory cell transistor MT in a state where the verify level Vfy_C is applied to the selected word line WL. If the memory cell transistor MT is turned off, that is, if the threshold value has reached the “C” level, “1” is stored in the latch circuit SDL. On the other hand, if the memory cell transistor MT is turned on, that is, if the threshold value has not reached the “C” level, “0” is stored in the latch circuit SDL. The operation of step 6 is basically the same as that of step 4 except that the data to be read is different.
  • the arithmetic circuit 40 executes the following logical operation. That is, (SDL & / DL0 & DL1)
  • the arithmetic circuit 40 performs a logical operation of the following equation (4). That is, (/ DL0 & DL1 & SEL_TOP) (4) As a result, a verify result of the memory cell transistor MT (third cell) corresponding to the “C” level and located in the uppermost layer is obtained. That is, if the calculation result is “0”, it can be seen that the third cell corresponding to the column has passed verification. On the other hand, only the operation result corresponding to the third cell and corresponding to the column failed in the verification is “1”.
  • the arithmetic circuit 40 executes the logical operation of the following equation (5). That is, (/ DL0 & DL1 & (SEL_MID
  • a verify result of the memory cell transistor MT corresponding to the “C” level and located in a layer other than the uppermost layer is obtained. That is, when the calculation result is “0”, it is understood that the memory cell transistor corresponding to the column has passed verification.
  • only the operation result corresponding to the verify failure among the memory cell transistors MT corresponding to the “C” level and located in a layer other than the uppermost layer is “1”.
  • control unit 15 counts the number of bits whose operation result is “1”, and if the number is equal to or less than a certain reference value, the memory cell transistor MT located in a layer other than the uppermost layer has passed verification. Judge.
  • COMP_C_MIDBOT “H”.
  • Step 7 The control unit 15 repeats the above operation, and when all of the five control signals COMP_A_BOT, COMP_A_MIDTOP, COMP_B, COMP_C_TOP, and COMP_C_MIDTOP become “H” level, it is assumed that the program is normally completed (program pass), and the write operation is performed. To complete. If the number of program loops reaches the maximum value while any of the control signals remains at “L” level, the control unit 15 assumes that the program has not been completed normally (program fail) and completes the write operation.
  • the writing method described in the first embodiment can be realized by the configuration according to the present embodiment, for example.
  • the present embodiment relates to a memory system including the semiconductor memory device 1 according to any one of the first to fifth embodiments.
  • FIG. 24 is a block diagram of the memory system according to the present embodiment. As illustrated, the memory system includes the semiconductor memory device 1 described in the first to fifth embodiments, and a controller 2 that controls the semiconductor memory device 1.
  • the controller 2 commands the NAND flash memory 1 to read, write, erase, and the like.
  • the memory space of the NAND flash memory 1 is managed.
  • the controller 2 and the NAND flash memory 1 may constitute the same semiconductor device.
  • the memory system 1 may be a single device, and examples thereof include a memory card such as an SD TM card, an SSD (solid state drive), and the like.
  • the memory system 1 may have a configuration in which the NAND flash memory 1 and the controller 2 are built in a personal computer, and is not limited as long as it is an application in which the NAND flash memory 1 is mounted.
  • the controller 2 includes a host interface circuit 210, a built-in memory (RAM) 220, a processor (CPU) 230, a buffer memory 240, a NAND interface circuit 250, and an ECC circuit 260.
  • the host interface circuit 210 is connected to the host device via the controller bus and manages communication with the host device. Then, the command and data received from the host device are transferred to the CPU 230 and the buffer memory 240, respectively. In response to a command from the CPU 230, the data in the buffer memory 240 is transferred to the host device.
  • the NAND interface circuit 250 is connected to the NAND flash memory 1 via the NAND bus and manages communication with the NAND flash memory 1. Then, the command received from the CPU 230 is transferred to the NAND flash memory 1, and the write data in the buffer memory 240 is transferred to the NAND flash memory 1 at the time of writing. Further, at the time of reading, the data read from the NAND flash memory 1 is transferred to the buffer memory 240.
  • the CPU 230 controls the entire operation of the controller 2. For example, when a write / read command is received from the host device, a write command based on the NAND interface is issued in response thereto. The same applies to reading and erasing.
  • the CPU 230 executes various processes for managing the NAND flash memory 1 such as wear leveling. Further, the CPU 230 executes various calculations. For example, data encryption processing, randomization processing, and the like are executed.
  • the ECC circuit 260 executes a data error correction (ECC: Error Checking andrectCorrecting) process. That is, the ECC circuit 260 generates a parity based on the write data at the time of data writing, generates a syndrome from the parity at the time of reading, detects an error, and corrects this error. Note that the CPU 230 may have the function of the ECC circuit 260.
  • the built-in memory 220 is a semiconductor memory such as a DRAM, and is used as a work area for the CPU 230.
  • the built-in memory 220 holds firmware for managing the NAND flash memory 1 and various management tables.
  • the controller 2 can write data into the NAND flash memory 1 in two write modes, ie, the first mode and the second mode.
  • FIG. 25 is a timing chart of signals transmitted and received between the NAND flash memory 1 and the controller 2 when writing data in the first mode.
  • the controller 2 transmits a chip enable signal / CE, an address latch enable signal ALE, a command latch enable signal CLE, a write enable signal / WE, and a read enable signal / RE to the NAND flash memory 1.
  • the NAND flash memory 1 transmits a ready / busy signal / R / B to the controller 2.
  • the input / output signals I / O1 to I / O8 are, for example, 8-bit data transmitted / received between the controller 1 and the NAND flash memory.
  • the chip enable signal / CE is a signal for enabling the NAND flash memory 1 and is asserted at a low level.
  • the address latch enable signal ALE is a signal indicating that the input / output signals I / O1 to I / O8 are addresses, and is asserted at a high level.
  • the command latch enable signal CLE is a signal indicating that the input / output signals I / O1 to I / O8 are commands, and is asserted at a high level.
  • the write enable signal / WE is a signal for writing each data in the NAND flash memory 1, and is asserted at a low level.
  • the read enable signal / RE is a signal for reading each data from the NAND flash memory 1 and is asserted at a low level.
  • the ready / busy signal / R / B is a signal indicating whether or not the NAND flash memory 1 is in a busy state (whether or not a signal can be received), and becomes a low level in the busy state.
  • the controller 1 when writing data in the first mode, issues a first write command 80H and writes it in a command register (not shown) of the NAND flash memory 1.
  • the command 80H is a command for notifying that a writing operation will be executed from now on.
  • the column address (address specifying the bit line) and the row address (address specifying the word line (page)) are written in the address register.
  • data D0 to D527 to be programmed are transferred.
  • the controller 2 writes the command 10H into the command register.
  • the control unit 15 of the NAND flash memory 1 writes data by the method described in the first to fifth embodiments.
  • FIG. 26 is a timing chart of signals transmitted and received between the NAND flash memory 1 and the controller 2 when writing data in the second mode.
  • the difference from the first mode is that the controller 2 issues a prefix command and writes it to the command register before the first write command 80H.
  • the NAND flash memory writes data in the second mode.
  • Data writing in the second mode is executed by the method of FIG. 12 described in the first embodiment.
  • the program voltage VPGM is not classified according to the first to third cells, and the program is executed for all the memory cells to be written at the “A” to “C” level in the page. . That is, the VPGM is simply stepped up as shown in FIG.
  • a case where VPGM is applied only once in one program loop is shown as an example, but it may be applied continuously twice or more. However, the VPGM applied twice or more does not correspond to the position (address) of the memory cell or the write data, and is used for programming data in all the write target cells. That is, in the second mode, the number of VPGM applications in one program loop is the same as or less than the number of verify voltage applications.
  • the booster circuit in the NAND flash memory 1 generates the low voltage VPGM1 after generating the high voltage VPGM3. Accordingly, the booster circuit needs to be discharged during the verify operation, and after the discharge, the boost operation from the low voltage VPGM1 is required again. That is, current consumption increases because charging and discharging are repeated in the booster circuit. Instead, a high-speed write operation is possible as described in the first to fifth embodiments.
  • the boosted voltage simply needs to step up VPGM, discharge at the boosted voltage is unnecessary, and the voltage wiring may be left floating during the verify operation. Therefore, although the writing speed is inferior to that in the first mode, the current consumption can be reduced.
  • the first mode and the second mode can be switched by a command from the controller 2.
  • MLC multi-level cell
  • SLC single-level cell: 1 memory cell is 1
  • the second mode is preferably employed when it is desired to operate (holding bit data) or when it is desired to perform SLC operation for writing important data with high reliability.
  • the NAND flash memory 1 can be used by switching between a mode in which high-speed operation is possible but relatively high power consumption and a mode in which low-speed operation is low but low power consumption. .
  • the semiconductor memory device 1 includes the plurality of memory cells MT, the word lines WL, the bit lines BL, and the row decoder 11.
  • Memory cells are stacked on a semiconductor substrate.
  • the word line WL is connected to the gate of the memory cell.
  • the bit line BL is electrically connected to the current path of the memory cell and can transfer data.
  • the row decoder 11 applies a voltage to the word line.
  • Data writing to the memory cell MT is executed by repeating a program loop including a program operation and a verify operation a plurality of times (FIG. 11).
  • the row decoder applies the program voltage M times (M is a natural number of 1 or more), sequentially applies the selected word line (t5 to t6, t7 to t8 in FIG. 11), and then continues the verify voltage.
  • M is a natural number of 1 or more
  • N is larger than M and is a natural number of 2 or more
  • data writing to the memory cell is executed by repeating a program loop including a program operation for applying a program voltage to a selected word line and a verify operation for applying a verify voltage a plurality of times.
  • the row decoder 11 performs the second program loop (t5 to t6 in FIG. 11) while keeping the number of application of the verify voltage unchanged between two consecutive program loops (t3 to t5 and t5 to t6 in FIG. 11).
  • the number of application of the program voltage at (3 times: VPGM1-VPGM3) is decreased from the first program loop (t3 to t5 in FIG. 11) (2 times: VPGM2, VPGM3).
  • This configuration can reduce the number of program loops and improve the data writing speed.
  • the embodiment is not limited to the embodiment described above, and various modifications are possible.
  • the case where the application of VPGM1 and VPGM3 ends before the application of VPGM2 has been described as an example, but the application of VPGM2 may end before the application of VPGM1 and / or VPGM3. May be.
  • the first cell is defined as a cell that is located in the lowest layer and is programmed to the “A” level.
  • the first cell may be a cell located from the first layer to the Nth layer (N is a natural number of 2 or more). If the memory cell can hold data of 4 bits or more (“Ep”, “A”, “B”, “C”, “D”,..., “16” levels), the first cell is , A cell programmed in a range from “A” level to “C” level, for example.
  • the third cell may be a cell located from the (N + M) th layer (M is a natural number of 4 or more) to the Lth layer (L is a natural number of 6 or more). It may be a cell programmed in the range of “O” level.
  • the program pulses are classified into three types has been described as an example (VPGM1 to VPGM3). However, it may be classified into four or more types, and these four or more types of pulses may be sequentially applied in one program loop.
  • V QPW may be applied to the bit line connected to the second cell while applying VPGM3 instead of the voltage VPGM2b.
  • the structure of the memory cell array 10 is not limited to the configuration described with reference to FIGS.
  • the bit line contacts BC of the odd-numbered string groups GR1 are collected on the left side of the memory cell array 10
  • the bit line contacts BC of the even-numbered string groups GR2 are on the right side of the memory cell array 10.
  • these bit line contacts BC may be arranged together on the right side or the left side.
  • the above-described embodiment can be applied to a configuration in which data writing speed varies within a page, which is a set of memory cells that are simultaneously selected at the time of data writing, and is applicable not only to NAND flash memories but also to storage devices in general. I can do it.
  • SYMBOLS 10 Memory cell array, 11 ... Row decoder, 12 ... Sense amplifier module, 13 ... Arithmetic module, 14 ... Data latch module, 15 ... Control part, 20 ... Semiconductor substrate, 21, 22-1 to 22-4, 25-27 ... Insulating film, 23-1 to 23-3, 28 ... Semiconductor layer, 24 ... Fin type laminated structure

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)

Abstract

A semiconductor storage device according to one embodiment is equipped with multiple memory cells, word lines, bit lines, and a row decoder. The memory cells are stacked on a semiconductor substrate. The word lines are connected to the gates of the memory cells. The bit lines are electrically connected to the current paths of the memory cells, and are capable of transmitting data. The row decoder applies a voltage to the word lines. Data is written to a memory cell by multiple repetitions of a program loop that includes a program operation and a verification operation. In one program loop the row decoder sequentially applies the program voltage M times (where M is a natural number of 1 or greater) to a selected word line, and then sequentially applies a verification voltage N times (where N is larger than M and is a natural number of 3 or greater) to the selected word line.

Description

半導体記憶装置及びデータ書き込み方法Semiconductor memory device and data writing method
 本発明の実施形態は、半導体記憶装置及びデータ書き込み方法に関する。 Embodiments described herein relate generally to a semiconductor memory device and a data writing method.
 メモリセルが三次元に配列されたNAND型フラッシュメモリが知られている。 A NAND flash memory in which memory cells are arranged three-dimensionally is known.
 データの書き込み速度を向上できる半導体記憶装置及びデータ書き込み方法を提供する。 Provide a semiconductor memory device and a data writing method capable of improving the data writing speed.
 実施形態の半導体記憶装置は、実施形態に係る半導体記憶装置は、複数のメモリセルと、ワード線と、ビット線と、ロウデコーダとを備える。メモリセルは、半導体基板上に積層される。ワード線は、メモリセルのゲートに接続される。ビット線は、メモリセルの電流経路に電気的に接続され、データを転送可能である。ロウデコーダは、ワード線に電圧を印加する。メモリセルへのデータの書き込みは、プログラム動作とベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行される。1回のプログラムループにおいてロウデコーダは、選択ワード線に対して、第1プログラム電圧と、該第1プログラム電圧と異なる第2プログラム電圧を順次印加する。 The semiconductor memory device according to the embodiment includes a plurality of memory cells, a word line, a bit line, and a row decoder. Memory cells are stacked on a semiconductor substrate. The word line is connected to the gate of the memory cell. The bit line is electrically connected to the current path of the memory cell and can transfer data. The row decoder applies a voltage to the word line. Data writing to the memory cell is executed by repeating a program loop including a program operation and a verify operation a plurality of times. In one program loop, the row decoder sequentially applies a first program voltage and a second program voltage different from the first program voltage to the selected word line.
図1は、第1実施形態に係る半導体記憶装置のブロック図である。FIG. 1 is a block diagram of the semiconductor memory device according to the first embodiment. 図2は、第1実施形態に係るメモリセルアレイの回路図である。FIG. 2 is a circuit diagram of the memory cell array according to the first embodiment. 図3は、第1実施形態に係るメモリセルアレイの斜視図である。FIG. 3 is a perspective view of the memory cell array according to the first embodiment. 図4は、第1実施形態に係るメモリセルアレイの平面図である。FIG. 4 is a plan view of the memory cell array according to the first embodiment. 図5は、図4における5-5線に沿った断面図である。FIG. 5 is a cross-sectional view taken along line 5-5 in FIG. 図6は、図4における6-6線に沿った断面図である。FIG. 6 is a cross-sectional view taken along line 6-6 in FIG. 図7は、図4における7-7線に沿った断面図である。FIG. 7 is a cross-sectional view taken along line 7-7 in FIG. 図8は、第1実施形態に係るメモリセルの閾値分布を示すグラフである。FIG. 8 is a graph showing the threshold distribution of the memory cell according to the first embodiment. 図9は、第1実施形態に係るメモリセルアレイの回路図である。FIG. 9 is a circuit diagram of the memory cell array according to the first embodiment. 図10は、第1実施形態に係るデータの書き込み方法を示すフローチャートである。FIG. 10 is a flowchart showing a data writing method according to the first embodiment. 図11は、第1実施形態に係るデータの書き込み時におけるワード線電位のタイミングチャートである。FIG. 11 is a timing chart of word line potentials at the time of data writing according to the first embodiment. 図12は、データの書き込み時におけるワード線電位の変化を示すタイミングチャートである。FIG. 12 is a timing chart showing changes in the word line potential during data writing. 図13は、第2実施形態に係るデータの書き込み方法を示すフローチャートである。FIG. 13 is a flowchart showing a data writing method according to the second embodiment. 図14は、第2実施形態に係るデータの書き込み時におけるワード線電位の変化を示すタイミングチャートである。FIG. 14 is a timing chart showing changes in the word line potential when data is written according to the second embodiment. 図15は、第3実施形態に係るデータの書き込み方法を示すフローチャートである。FIG. 15 is a flowchart showing a data writing method according to the third embodiment. 図16は、第3実施形態に係るデータの書き込み時におけるワード線電位の変化を示すタイミングチャートである。FIG. 16 is a timing chart showing changes in the word line potential at the time of data writing according to the third embodiment. 図17は、第4実施形態に係るデータの書き込み方法を示すフローチャートである。FIG. 17 is a flowchart showing a data writing method according to the fourth embodiment. 図18は、第4実施形態に係るデータの書き込み時におけるワード線及びビット線電位の変化を示すタイミングチャートである。FIG. 18 is a timing chart showing changes in the word line and bit line potentials when writing data according to the fourth embodiment. 図19は、第4実施形態に係るメモリセルアレイの回路図である。FIG. 19 is a circuit diagram of a memory cell array according to the fourth embodiment. 図20は、第4実施形態に係るメモリセルの閾値変化を示すグラフである。FIG. 20 is a graph showing a threshold value change of the memory cell according to the fourth embodiment. 図21は、第5実施形態に係るセンスアンプモジュール、演算モジュール、及びデータラッチモジュールのブロック図である。FIG. 21 is a block diagram of a sense amplifier module, an arithmetic module, and a data latch module according to the fifth embodiment. 図22は、第5実施形態に係るデータの書き込み時におけるワード線電位の変化を示すグラフである。FIG. 22 is a graph showing changes in the word line potential during data writing according to the fifth embodiment. 図23は、第5実施形態に係るデータの書き込み時におけるワード線及びビット線電位の変化を示すグラフである。FIG. 23 is a graph showing changes in word line and bit line potentials during data writing according to the fifth embodiment. 図24は、第6実施形態に係るメモリシステムのブロック図である。FIG. 24 is a block diagram of a memory system according to the sixth embodiment. 図25は、第6実施形態に係る第1モードによる書き込み動作時の各種信号のタイミングチャートである。FIG. 25 is a timing chart of various signals during the write operation in the first mode according to the sixth embodiment. 図26は、第6実施形態に係る第2モードによる書き込み動作時の各種信号のタイミングチャートである。FIG. 26 is a timing chart of various signals during the write operation in the second mode according to the sixth embodiment.
 以下、実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。 Hereinafter, embodiments will be described with reference to the drawings. In the description, common parts are denoted by common reference symbols throughout the drawings.
 1.第1実施形態 
 第1実施形態に係る半導体記憶装置について説明する。以下では半導体記憶装置として、メモリセルが半導体基板上に積層された三次元積層型NAND型フラッシュメモリを例に挙げて説明する。
1. First embodiment
A semiconductor memory device according to the first embodiment will be described. Hereinafter, as a semiconductor memory device, a three-dimensional stacked NAND flash memory in which memory cells are stacked on a semiconductor substrate will be described as an example.
 1.1 半導体記憶装置の構成について 
 まず、本実施形態に係る半導体記憶装置の構成について説明する。
1.1 Configuration of semiconductor memory device
First, the configuration of the semiconductor memory device according to this embodiment will be described.
 1.1.1 半導体記憶装置の全体構成について 
 図1は、本実施形態に係る半導体記憶装置のブロック図である。図示するようにNAND型フラッシュメモリ1は、メモリセルアレイ10、ロウデコーダ11、センスアンプモジュール12、演算モジュール13、データラッチモジュール14、及び制御部17を備えている。
1.1.1 Overall configuration of semiconductor memory device
FIG. 1 is a block diagram of the semiconductor memory device according to the present embodiment. As illustrated, the NAND flash memory 1 includes a memory cell array 10, a row decoder 11, a sense amplifier module 12, an arithmetic module 13, a data latch module 14, and a control unit 17.
 メモリセルアレイ10は、複数の不揮発性メモリセルを備えている。メモリセルは、例えば電荷蓄積層と制御ゲートとを含む積層ゲートを備えたMOSトランジスタであり、それぞれがロウ及びカラムに関連付けられている。そして、同一ロウに位置するメモリセルの制御ゲートは同一のワード線WLに接続され、同一カラムに位置するメモリセルのドレインは同一のビット線BLに接続され、ソースはソース線SLに接続される。メモリセルアレイ10の詳細については後述する。 The memory cell array 10 includes a plurality of nonvolatile memory cells. The memory cell is, for example, a MOS transistor having a stacked gate including a charge storage layer and a control gate, and each is associated with a row and a column. The control gates of the memory cells located in the same row are connected to the same word line WL, the drains of the memory cells located in the same column are connected to the same bit line BL, and the sources are connected to the source line SL. . Details of the memory cell array 10 will be described later.
 ロウデコーダ11は、メモリセルアレイ10のロウ方向を選択する。すなわちロウデコーダ11は、データの書き込み、読み出し、及び消去時においてワード線WLを選択し、選択ワード線及び非選択ワード線に適切な電圧を印加する。 The row decoder 11 selects the row direction of the memory cell array 10. That is, the row decoder 11 selects the word line WL at the time of data writing, reading, and erasing, and applies an appropriate voltage to the selected word line and the non-selected word line.
 センスアンプモジュール12は、ビット線毎に設けられたセンス回路を備える。センス回路の各々は、データの読み出し時において、メモリセルからビット線BLに読み出されたデータをセンス・増幅する。またセンス回路はデータの書き込み時において、メモリセルに書き込むべきデータをビット線BLに転送する。 The sense amplifier module 12 includes a sense circuit provided for each bit line. Each of the sense circuits senses and amplifies data read from the memory cell to the bit line BL when reading data. The sense circuit transfers data to be written in the memory cell to the bit line BL when data is written.
 演算モジュール13は、ビット線毎に設けられた演算回路を備える。演算回路の各々は、データの読み出し時において、センス回路でセンス・増幅されたデータを用いて演算を行う。また演算回路はデータの書き込み時において、書き込みデータを用いた演算を行い、演算結果をセンス回路に転送する。 The arithmetic module 13 includes an arithmetic circuit provided for each bit line. Each of the arithmetic circuits performs an operation using data sensed and amplified by the sense circuit when reading data. Further, the arithmetic circuit performs an operation using the write data at the time of data writing, and transfers the operation result to the sense circuit.
 データラッチモジュール14は、ビット線毎に設けられたラッチ回路を備える。ラッチ回路の各々は、データの読み出し時において、演算回路を介してセンス回路から転送された読み出しデータを保持する。そしてラッチ回路は、読み出しデータを外部に出力する。またラッチ回路はデータの書き込み時において、外部から受信した書き込みデータを一時的に保持する。そしてラッチ回路は、演算回路を介して書き込みデータをセンス回路に転送する。 The data latch module 14 includes a latch circuit provided for each bit line. Each of the latch circuits holds read data transferred from the sense circuit via the arithmetic circuit when reading data. The latch circuit outputs read data to the outside. The latch circuit temporarily holds write data received from the outside during data writing. The latch circuit transfers write data to the sense circuit via the arithmetic circuit.
 制御部15は、フラッシュメモリ1全体の動作を制御する。 The control unit 15 controls the operation of the entire flash memory 1.
 1.1.2 メモリセルアレイの構成について 
 図2は、本実施形態に係るメモリセルアレイ10の回路図である。図示するようにメモリセルアレイ10は、複数のメモリユニットMU(MU1、MU2)を備えている。図2では2つのメモリユニットMUのみが図示されているが、3つ以上であっても良く、その数は限定されるものではない。
1.1.2 Configuration of memory cell array
FIG. 2 is a circuit diagram of the memory cell array 10 according to the present embodiment. As shown in the drawing, the memory cell array 10 includes a plurality of memory units MU (MU1, MU2). Although only two memory units MU are illustrated in FIG. 2, the number may be three or more, and the number is not limited.
 メモリユニットMUの各々は、例えば4つのストリングループGR(GR1~GR4)を備えている。なお、メモリユニットMU1及びMU2間で区別する際には、メモリユニットMU1のストリンググループGRをそれぞれGR1-1~GR4-1と呼び、メモリユニットMU2のストリンググループGRをそれぞれGR1-2~GR4-2と呼ぶ。 Each of the memory units MU includes, for example, four string loops GR (GR1 to GR4). When distinguishing between the memory units MU1 and MU2, the string groups GR of the memory unit MU1 are referred to as GR1-1 to GR4-1, respectively, and the string groups GR of the memory unit MU2 are respectively referred to as GR1-2 to GR4-2. Call it.
 ストリンググループGRの各々は、例えば3つのNANDストリングSR(SR1~SR3)を備えている。もちろん、NANDストリングSRの数は3つに限らず、4つ以上であっても良い。NANDストリングSRの各々は、選択トランジスタST1及びST2、並びに4つのメモリセルトランジスタMT(MT1~MT4)を備えている。メモリセルトランジスタMTの数は4つに限らず、5つ以上であっても良いし、3つ以下であっても良い。メモリセルトランジスタMTは、制御ゲートと電荷蓄積層とを含む積層ゲートを備え、データを不揮発に保持する。そしてメモリセルトランジスタMTは、選択トランジスタST1のソースと選択トランジスタST2のドレインとの間に直列接続されている。 Each of the string groups GR includes, for example, three NAND strings SR (SR1 to SR3). Of course, the number of NAND strings SR is not limited to three and may be four or more. Each of the NAND strings SR includes select transistors ST1 and ST2 and four memory cell transistors MT (MT1 to MT4). The number of memory cell transistors MT is not limited to four, but may be five or more, or may be three or less. The memory cell transistor MT includes a stacked gate including a control gate and a charge storage layer, and holds data in a nonvolatile manner. The memory cell transistor MT is connected in series between the source of the selection transistor ST1 and the drain of the selection transistor ST2.
 ストリンググループGR内において、3つのNANDストリングSR1~SR3は、半導体基板上に順次積層されており、NANDストリングSR1が最下層に形成され、NANDストリングSR3が最上層に形成される。そして、同一のストリンググループGRに含まれる選択トランジスタST1及びST2は、それぞれ同一のセレクトゲート線GSL1及びGSL2に接続され、同一列に位置するメモリセルトランジスタMTの制御ゲートは同一のワード線WLに接続される。更に、あるストリンググループGR内の3つの選択トランジスタST1のドレインは、互いに異なるビット線BLに接続され、選択トランジスタST2のソースは同一のソース線SLに接続される。 In the string group GR, the three NAND strings SR1 to SR3 are sequentially stacked on the semiconductor substrate, the NAND string SR1 is formed in the lowermost layer, and the NAND string SR3 is formed in the uppermost layer. The select transistors ST1 and ST2 included in the same string group GR are connected to the same select gate lines GSL1 and GSL2, respectively, and the control gates of the memory cell transistors MT located in the same column are connected to the same word line WL. Is done. Further, the drains of the three selection transistors ST1 in a certain string group GR are connected to different bit lines BL, and the sources of the selection transistors ST2 are connected to the same source line SL.
 奇数番目のストリンググループGR1及びGR3と、偶数番目のストリンググループGR2及びGR4とでは、選択トランジスタST1及びST2は、その位置関係が逆になるように配置される。すなわち図2の例であると、ストリンググループGR1及びGR3の選択トランジスタST1はNANDストリングSRの左端に配置され、選択トランジスタST2はNANDストリングSRの右端に配置される。これに対して、ストリンググループGR2及びGR4の選択トランジスタST1はNANDストリングSRの右端に配置され、選択トランジスタST2はNANDストリングSRの左端に配置される。 In the odd-numbered string groups GR1 and GR3 and the even-numbered string groups GR2 and GR4, the selection transistors ST1 and ST2 are arranged so that their positional relationships are reversed. That is, in the example of FIG. 2, the select transistors ST1 of the string groups GR1 and GR3 are arranged at the left end of the NAND string SR, and the select transistors ST2 are arranged at the right end of the NAND string SR. On the other hand, the select transistors ST1 of the string groups GR2 and GR4 are arranged at the right end of the NAND string SR, and the select transistors ST2 are arranged at the left end of the NAND string SR.
 そして、ストリンググループGR1及びGR3の選択トランジスタST1のゲートは、同一のセレクトゲート線GSL1に接続され、選択トランジスタST2のゲートは、同一のセレクトゲート線GSL2に接続される。他方、ストリンググループGR2及びGR4の選択トランジスタST1のゲートは、同一のセレクトゲート線GSL2に接続され、選択トランジスタST2のゲートは、同一のセレクトゲート線GSL1に接続される。 The gates of the select transistors ST1 in the string groups GR1 and GR3 are connected to the same select gate line GSL1, and the gates of the select transistors ST2 are connected to the same select gate line GSL2. On the other hand, the gates of the select transistors ST1 of the string groups GR2 and GR4 are connected to the same select gate line GSL2, and the gates of the select transistors ST2 are connected to the same select gate line GSL1.
 また、あるメモリユニットMUに含まれる4つのストリンググループGR1及びGR2は互いに同一のビット線BLに接続され、異なるメモリユニットMUは互いに異なるビット線BLに接続される。より具体的には、メモリユニットMU1において、ストリンググループGR1~GR4におけるNANDストリングSR1~SR3の選択トランジスタST1のドレインはそれぞれ、カラム選択ゲートCGS(CGS1~CGS4)を介してビット線BL1~BL3に接続される。カラム選択ゲートCGSは、例えばメモリセルトランジスタMTや選択トランジスタST1及びST2等と同様の構成を有しており、各メモリユニットMUにおいて、ビット線BLに選択する1つのストリンググループGRを選択する。従って、各ストリンググループGRに対応付けられたカラム選択ゲートCGS1~CSG4のゲートは、それぞれ異なる制御信号線SSL1~SSL4によって制御される。 Further, four string groups GR1 and GR2 included in a certain memory unit MU are connected to the same bit line BL, and different memory units MU are connected to different bit lines BL. More specifically, in the memory unit MU1, the drains of the selection transistors ST1 of the NAND strings SR1 to SR3 in the string groups GR1 to GR4 are connected to the bit lines BL1 to BL3 via the column selection gates CGS (CGS1 to CGS4), respectively. Is done. The column selection gate CGS has, for example, the same configuration as the memory cell transistor MT, the selection transistors ST1 and ST2, and the like, and selects one string group GR selected for the bit line BL in each memory unit MU. Accordingly, the gates of the column selection gates CGS1 to CSG4 associated with each string group GR are controlled by different control signal lines SSL1 to SSL4, respectively.
 以上説明した構成を有するメモリユニットMUが、図2を記載した紙面において上下方向に複数配列される。これらの複数のメモリユニットMUは、メモリユニットMU1とワード線WL及びセレクトゲート線GSL1及びGSL2を共有する。他方で、ビット線BLは独立しており、例えばメモリユニットMU2に対しては、メモリユニットMU1と異なる3本のビット線BL4~BL6が対応付けられる。各メモリユニットMUに対応付けられるビット線BLの本数は、1つのストリンググループGRに含まれるNANDストリングSRの総数に対応する。従って、NANDストリングが4層あればビット線BLも4本設けられ、その他の数の場合も同様である。また、制御信号SSL1~SSL4は、メモリユニットMU間で共通にされていても良いし、あるいは独立して制御されても良い。 A plurality of memory units MU having the above-described configuration are arranged in the vertical direction on the paper surface illustrated in FIG. The plurality of memory units MU share the memory unit MU1 with the word line WL and the select gate lines GSL1 and GSL2. On the other hand, the bit lines BL are independent, and for example, three bit lines BL4 to BL6 different from the memory unit MU1 are associated with the memory unit MU2. The number of bit lines BL associated with each memory unit MU corresponds to the total number of NAND strings SR included in one string group GR. Therefore, if there are four layers of NAND strings, four bit lines BL are provided, and the same applies to other numbers. The control signals SSL1 to SSL4 may be shared between the memory units MU, or may be controlled independently.
 上記構成において、各メモリユニットMUから1つずつ選択されたストリンググループGRにおける同一ワード線WLに接続された複数のメモリセルトランジスタMTの集合が、「ページ」と呼ばれる単位となる。そして、データの書き込み及び読み出しはページ単位で行われる。 In the above configuration, a set of a plurality of memory cell transistors MT connected to the same word line WL in the string group GR selected one by one from each memory unit MU is a unit called “page”. Data writing and reading are performed in units of pages.
 図3はメモリセルアレイ10の斜視図であり、図4はメモリセルアレイ10の平面図であり、図5は図4における5-5線に沿った断面図であり、図6は図4における6-6線に沿った断面図であり、図7は図4における7-7線に沿った断面図である。図3、図5、及び図7では1つのメモリユニットMUを図示しており、図4及び図6は2つのメモリユニットMU1及びMU2を図示している。 3 is a perspective view of the memory cell array 10, FIG. 4 is a plan view of the memory cell array 10, FIG. 5 is a cross-sectional view taken along line 5-5 in FIG. 4, and FIG. FIG. 7 is a cross-sectional view taken along line 6 and FIG. 7 is a cross-sectional view taken along line 7-7 in FIG. 3, FIG. 5, and FIG. 7 show one memory unit MU, and FIG. 4 and FIG. 6 show two memory units MU1 and MU2.
 図示するように、半導体基板20上には絶縁膜21が形成され、絶縁膜21上にメモリセルアレイ10が形成される。 As illustrated, an insulating film 21 is formed on the semiconductor substrate 20, and the memory cell array 10 is formed on the insulating film 21.
 絶縁膜21上には、半導体基板20表面に対する垂直方向である第1方向に直交する第2方向に沿ったストライプ形状の、例えば4つのフィン型構造24(24-1~24-4)が形成されることで、1つのメモリユニットMUが形成されている。フィン型構造24の各々は、交互に積層された絶縁膜22(22-1~22-4)及び半導体層23(23-1~23-3)を含む。このフィン型構造24の各々が、図2で説明したストリンググループGRに相当する。そして、最下層の半導体層23-1がNANDストリングSR1の電流経路(チャネルが形成される領域)に相当し、最上層の半導体層23-3がNANDストリングSR3の電流経路に相当し、その間に位置する半導体層23-2がNANDストリングSR2の電流経路に相当する。 On the insulating film 21, for example, four fin-type structures 24 (24-1 to 24-4) having a stripe shape along a second direction perpendicular to the first direction that is perpendicular to the surface of the semiconductor substrate 20 are formed. As a result, one memory unit MU is formed. Each of the fin-type structures 24 includes insulating films 22 (22-1 to 22-4) and semiconductor layers 23 (23-1 to 23-3) that are alternately stacked. Each of the fin-type structures 24 corresponds to the string group GR described with reference to FIG. The lowermost semiconductor layer 23-1 corresponds to the current path (region where a channel is formed) of the NAND string SR1, and the uppermost semiconductor layer 23-3 corresponds to the current path of the NAND string SR3. The located semiconductor layer 23-2 corresponds to the current path of the NAND string SR2.
 フィン型構造24の上面及び側面には、ゲート絶縁膜25、電荷蓄積層26、ブロック絶縁膜27、及び制御ゲート28が順次形成されている(図5参照)。電荷蓄積層26は例えば絶縁膜により形成される。また制御ゲート28は導電膜で形成され、ワード線WLまたはセレクトゲート線GSL1及びGSL2として機能する。ワード線WL及びセレクトゲート線GSL1及びGSL2は、複数のメモリユニットMU間で、複数のフィン型構造24を跨ぐようにして形成される。他方で制御信号線SSL1~SSL4は、個々のフィン型構造24毎に独立している。 A gate insulating film 25, a charge storage layer 26, a block insulating film 27, and a control gate 28 are sequentially formed on the upper surface and side surfaces of the fin structure 24 (see FIG. 5). The charge storage layer 26 is formed of an insulating film, for example. The control gate 28 is formed of a conductive film and functions as the word line WL or select gate lines GSL1 and GSL2. The word lines WL and select gate lines GSL1 and GSL2 are formed so as to straddle the plurality of fin-type structures 24 between the plurality of memory units MU. On the other hand, the control signal lines SSL 1 to SSL 4 are independent for each fin-type structure 24.
 フィン型構造24は、その一端部がメモリセルアレイ10の端部に引き出されて、引き出された領域においてビット線BLと接続される。すなわち、一例としてメモリユニットMU1に着目すると、奇数番目のフィン型構造24-1及び24-3の一端部は、第2方向に沿ってある領域まで引き出されて共通に接続され、この領域にコンタクトプラグBC1~BC3が形成される。この領域に形成されたコンタクトプラグBC1は、ストリンググループGR1及びGR3の半導体層23-1とビット線BL1とを接続し、半導体層23-2及び23-3とは絶縁されている。コンタクトプラグBC2は、ストリンググループGR1及びGR3の半導体層23-2とビット線BL2とを接続し、半導体層23-1及び23-3とは絶縁されている。コンタクトプラグBC3は、ストリンググループGR1及びGR3の半導体層23-3とビット線BL3とを接続し、半導体層23-1及び23-2とは絶縁されている。 One end of the fin-type structure 24 is drawn to the end of the memory cell array 10 and connected to the bit line BL in the drawn region. That is, focusing on the memory unit MU1 as an example, one end portions of the odd-numbered fin-type structures 24-1 and 24-3 are drawn out to a certain region along the second direction, and are connected to this region. Plugs BC1 to BC3 are formed. The contact plug BC1 formed in this region connects the semiconductor layer 23-1 and the bit line BL1 of the string groups GR1 and GR3, and is insulated from the semiconductor layers 23-2 and 23-3. The contact plug BC2 connects the semiconductor layer 23-2 of the string groups GR1 and GR3 and the bit line BL2, and is insulated from the semiconductor layers 23-1 and 23-3. The contact plug BC3 connects the semiconductor layer 23-3 and the bit line BL3 of the string groups GR1 and GR3, and is insulated from the semiconductor layers 23-1 and 23-2.
 他方で、偶数番目のフィン型構造24-2及び24-4の一端部は、フィン型構造24-1及び24-3の一端部と第2方向で対向する領域まで引き出されて共通に接続され、この領域にコンタクトプラグBC1~BC3が形成される。この領域に形成されたコンタクトプラグBC1は、ストリンググループGR2及びGR4の半導体層23-1とビット線BL1とを接続し、半導体層23-2及び23-3とは絶縁されている。コンタクトプラグBC2は、ストリンググループGR2及びGR4の半導体層23-2とビット線BL2とを接続し、半導体層23-1及び23-3とは絶縁されている。コンタクトプラグBC3は、ストリンググループGR2及びGR4の半導体層23-3とビット線BL3とを接続し、半導体層23-1及び23-2とは絶縁されている。 On the other hand, one end of the even-numbered fin structures 24-2 and 24-4 is drawn out to a region facing the one end of the fin structures 24-1 and 24-3 in the second direction and connected in common. In this region, contact plugs BC1 to BC3 are formed. The contact plug BC1 formed in this region connects the semiconductor layer 23-1 and the bit line BL1 of the string groups GR2 and GR4, and is insulated from the semiconductor layers 23-2 and 23-3. The contact plug BC2 connects the semiconductor layer 23-2 of the string groups GR2 and GR4 and the bit line BL2, and is insulated from the semiconductor layers 23-1 and 23-3. The contact plug BC3 connects the semiconductor layer 23-3 and the bit line BL3 of the string groups GR2 and GR4, and is insulated from the semiconductor layers 23-1 and 23-2.
 もちろん、上記の説明はメモリユニットMU1の場合のものであり、例えばメモリユニットMU2の場合には、コンタクトプラグBC4~BC6が形成され、これらが半導体層23-1~23-3をそれぞれビット線BL4~BL6に接続する(図6参照)。 Of course, the above description is for the memory unit MU1. For example, in the case of the memory unit MU2, contact plugs BC4 to BC6 are formed, which are connected to the bit lines BL4 and the semiconductor layers 23-1 to 23-3, respectively. To BL6 (see FIG. 6).
 また、フィン型構造24の他端上にはコンタクトプラグSCが形成される。コンタクトプラグSCは、半導体層23-1~23-3をソース線SLに接続する。 Further, a contact plug SC is formed on the other end of the fin structure 24. The contact plug SC connects the semiconductor layers 23-1 to 23-3 to the source line SL.
 上記構成において、NANDストリングSR1~SR3に含まれるメモリセルトランジスタは、そのサイズが互いに異なる。より具体的には、図5に示すように各フィン型構造24において、半導体層23の第3方向に沿った幅は、低いレイヤに位置するもの程大きく、高いレイヤに位置するもの程小さい。すなわち、半導体層23-1の幅が最も広く、半導体層23-3の幅が最も狭く、半導体層23-2の幅はその中間である。つまり、製造ばらつきによって互いに特性の異なる複数のメモリセルトランジスタMTが1ページに含まれる。 In the above configuration, the memory cell transistors included in the NAND strings SR1 to SR3 have different sizes. More specifically, as shown in FIG. 5, in each fin-type structure 24, the width of the semiconductor layer 23 along the third direction is larger as it is located in the lower layer and smaller as it is located in the higher layer. That is, the width of the semiconductor layer 23-1 is the widest, the width of the semiconductor layer 23-3 is the narrowest, and the width of the semiconductor layer 23-2 is intermediate. That is, one page includes a plurality of memory cell transistors MT having different characteristics due to manufacturing variations.
 1.1.3 メモリセルトランジスタの閾値分布について
 図8は、本実施形態に係るメモリセルトランジスタMTの取りうる閾値分布を示す。図示するようにメモリセルトランジスタMTは、その閾値に応じて例えば2ビットのデータを保持可能である。この2ビットデータは、閾値の低いものから順番に、例えば“Ep”レベル、“A”レベル、“B”レベル、及び“C”レベルである。
1.1.3 Regarding Threshold Distribution of Memory Cell Transistor FIG. 8 shows a possible threshold distribution of the memory cell transistor MT according to the present embodiment. As shown in the drawing, the memory cell transistor MT can hold, for example, 2-bit data according to the threshold value. The 2-bit data is, for example, “Ep” level, “A” level, “B” level, and “C” level in order from the lowest threshold value.
 “EP”レベルは、データが消去された状態における閾値であり、例えば正の値を有し、ベリファイ電圧Vfy_Aよりも低い。“A”~“C”レベルは、電荷蓄積層内に電荷が注入された状態の閾値であり、“A”レベルはベリファイ電圧Vfy_Aよりも高く、且つベリファイ電圧Vfy_Bより低い閾値を有し、“B”レベルはベリファイ電圧Vfy_Bよりも高く、且つベリファイ電圧Vfy_Cより低い閾値を有し、“C”レベルはベリファイ電圧Vfy_Cよりも高い閾値を有する。 The “EP” level is a threshold value when data is erased, and has a positive value, for example, and is lower than the verify voltage Vfy_A. The “A” to “C” levels are threshold values in a state where charges are injected into the charge storage layer. The “A” level has a threshold value higher than the verify voltage Vfy_A and lower than the verify voltage Vfy_B. The “B” level has a threshold value higher than the verify voltage Vfy_B and lower than the verify voltage Vfy_C, and the “C” level has a threshold value higher than the verify voltage Vfy_C.
 このように、4つの閾値レベルを取り得ることにより、個々のメモリセルトランジスタMTは2ビットのデータ(4-level data)を記憶出来る。 Thus, by taking four threshold levels, each memory cell transistor MT can store 2-bit data (4-level data).
 1.2 データの書き込み動作について 
 次に、本実施形態に係るデータの書き込み動作について説明する。書き込み動作の説明にあたって、その位置(レイヤ)と書き込みデータとに基づいてメモリセルトランジスタMTを定義するために図9を用いて説明する。図9は、メモリセルアレイ10の回路図であり、説明の簡単化のため、2つのメモリユニットMU1及びMU2のみがメモリセルアレイ10に含まれる場合を示し、また制御信号線SSL1及びSSL5が選択されることにより、メモリユニットMU1におけるストリンググループGR1-1とメモリユニットMU2におけるストリンググループGR1-2が選択された場合について示している。従って、ストリンググループGR1-1及びGR1-2において同一ワード線WLに接続される6つのメモリセルトランジスタMTによってページが形成される。なお、紙面の都合上、選択されたストリンググループGR1-1及びGR1-2のみを図示し、またカラム選択ゲートCGSの図示を省略している。以下でする説明は、その他のストリンググループの組み合わせが選択された場合も同様である。
1.2 Data write operation
Next, a data write operation according to the present embodiment will be described. In the description of the write operation, a description will be given with reference to FIG. 9 in order to define the memory cell transistor MT based on the position (layer) and write data. FIG. 9 is a circuit diagram of the memory cell array 10. For the sake of simplicity, FIG. 9 shows a case where only two memory units MU1 and MU2 are included in the memory cell array 10, and the control signal lines SSL1 and SSL5 are selected. Thus, the case where the string group GR1-1 in the memory unit MU1 and the string group GR1-2 in the memory unit MU2 are selected is shown. Accordingly, a page is formed by the six memory cell transistors MT connected to the same word line WL in the string groups GR1-1 and GR1-2. For the sake of space, only the selected string groups GR1-1 and GR1-2 are shown, and the column selection gate CGS is not shown. The following description is the same when other combinations of string groups are selected.
 前述の通り、あるストリンググループGRにおいて、最下層に位置するメモリセルトランジスタMT(NANDストリングSR1)は、その半導体層23の幅が最も大きい。従って、データの書き込み速度が最も高い。他方、最上層に位置するメモリセルトランジスタMT(NANDストリングSR3)は、その半導体層23の幅が最も小さい。従って、データの書き込み速度が最も低い。 As described above, in a certain string group GR, the memory cell transistor MT (NAND string SR1) located in the lowermost layer has the largest width of the semiconductor layer 23. Therefore, the data writing speed is the highest. On the other hand, the width of the semiconductor layer 23 of the memory cell transistor MT (NAND string SR3) located in the uppermost layer is the smallest. Therefore, the data writing speed is the lowest.
 従って、ページ単位でデータを書き込むにあたって、書き込みが最も早く終了する(書き込み速度の高い)メモリセルトランジスタは、フィン型構造24における最下層に位置すると共に、“A”レベルが書き込まれるメモリセルトランジスタMTである。このようなメモリセルトランジスタMTを、以下の説明では第1セルと呼ぶことにする。これに対して、書き込みが最も遅く終了する(書き込み速度の低い)メモリセルトランジスタは、フィン型構造24における最上層に位置すると共に、“C”レベルが書き込まれるメモリセルトランジスタMTである。このようなメモリセルトランジスタMTを、第3セルと呼ぶ。そしてその他のメモリセルトランジスタMTを第2セルと呼ぶ。 Therefore, when writing data in units of pages, the memory cell transistor in which writing is completed earliest (high writing speed) is located in the lowermost layer in the fin-type structure 24 and the memory cell transistor MT in which “A” level is written. It is. Such a memory cell transistor MT will be referred to as a first cell in the following description. On the other hand, the memory cell transistor in which writing ends most slowly (low writing speed) is the memory cell transistor MT in which the “C” level is written while being positioned in the uppermost layer in the fin-type structure 24. Such a memory cell transistor MT is referred to as a third cell. The other memory cell transistor MT is called a second cell.
 次に、図9乃至図11を用いてデータの書き込み方法について説明する。図10は書き込み方法のフローチャートであり、図11は書き込み時における選択ワード線WLに印加される電圧のタイミングチャートである。 Next, a data writing method will be described with reference to FIGS. FIG. 10 is a flowchart of the writing method, and FIG. 11 is a timing chart of voltages applied to the selected word line WL during writing.
 まず、制御部15の命令に応答してロウデコーダ11はいずれかのワード線WLを選択して、選択ワード線WLにプログラム電圧VPGMを印加して、データをプログラムする。図9の例では、ワード線WL1が選択され、ストリンググループGR1-1及びGR1-2においてワード線WL1に接続された6つのメモリセルトランジスタMTにデータがプログラムされる(ステップS10)。 First, in response to an instruction from the control unit 15, the row decoder 11 selects one of the word lines WL and applies a program voltage VPGM to the selected word line WL to program data. In the example of FIG. 9, the word line WL1 is selected, and data is programmed in the six memory cell transistors MT connected to the word line WL1 in the string groups GR1-1 and GR1-2 (step S10).
 この際ロウデコーダ11は、図11に示すようにプログラム電圧VPGM1、VPGM2、及びVPGM3を順次、選択ワード線WL1に印加する。電圧VPGM1~VPGM3はそれぞれ、第1~第3セルのためのプログラム用電圧であり、VPGM1<VPGM2<VPGM3の関係がある。またロウデコーダ11は、非選択ワード線WL2~WL4に電圧VPASSを印加する。電圧VPASSは、保持データに関わらずメモリセルトランジスタMTをオンさせる電圧であり、プログラム電圧VPGM1~VPGM3よりも低い電圧である。またロウデコーダ11は、セレクトゲート線GSL1に電圧VSGを印加し、セレクトゲート線GSL2に例えば0Vを印加する。電圧VSGは、プログラム対象となるNANDストリングSRの選択トランジスタST1をオンさせ、プログラム非対象となるNANDストリングSRの選択トランジスタST1をオフさせる電圧である。なお、制御信号線SSL2~SSL4に“low”レベルが与えられることで、非選択のストリンググループGR2~GR4はビット線BLと電気的に分離される。 At this time, the row decoder 11 sequentially applies the program voltages VPGM1, VPGM2, and VPGM3 to the selected word line WL1 as shown in FIG. The voltages VPGM1 to VPGM3 are programming voltages for the first to third cells, respectively, and have a relationship of VPGM1 <VPGM2 <VPGM3. The row decoder 11 applies the voltage VPASS to the unselected word lines WL2 to WL4. The voltage VPASS is a voltage for turning on the memory cell transistor MT regardless of the retained data, and is a voltage lower than the program voltages VPGM1 to VPGM3. The row decoder 11 applies the voltage VSG to the select gate line GSL1, and applies 0 V, for example, to the select gate line GSL2. The voltage VSG is a voltage that turns on the selection transistor ST1 of the NAND string SR to be programmed and turns off the selection transistor ST1 of the NAND string SR that is not to be programmed. Note that the “low” level is given to the control signal lines SSL2 to SSL4, whereby the non-selected string groups GR2 to GR4 are electrically separated from the bit line BL.
 ロウデコーダ11が電圧VPGM1を選択ワード線WL1に印加している間、センスアンプモジュール12は、第1セルが接続されているビット線BL(図9の例ではBL1)に0Vを印加する。これにより、第1セルを含むNANDストリングSR1では選択トランジスタST1がオンされ、第1セルにデータがプログラムされる。またロウデコーダ11は、第2セル及び第3セルが接続されているビット線BL(図9の例ではBL2~BL6)に電圧V1(>0V)を印加する。これにより、第2セル及び第3セルを含むNANDストリングSRでは選択トランジスタST1がカットオフされ、第2セル及び第3セルへのプログラムが禁止される。 While the row decoder 11 applies the voltage VPGM1 to the selected word line WL1, the sense amplifier module 12 applies 0 V to the bit line BL (BL1 in the example of FIG. 9) to which the first cell is connected. As a result, in the NAND string SR1 including the first cell, the selection transistor ST1 is turned on, and data is programmed in the first cell. The row decoder 11 applies a voltage V1 (> 0 V) to the bit line BL (BL2 to BL6 in the example of FIG. 9) to which the second cell and the third cell are connected. Thereby, in the NAND string SR including the second cell and the third cell, the selection transistor ST1 is cut off, and the programming to the second cell and the third cell is prohibited.
 次にロウデコーダ11が電圧VPGM2を選択ワード線WL1に印加している間、センスアンプモジュール12は、第2セルが接続されているビット線BL(図9の例ではBL2~BL5)に0Vを印加する。これにより、第2セルを含むNANDストリングSRでは選択トランジスタST1がオンされ、第2セルにデータがプログラムされる。またロウデコーダ11は、第1セル及び第3セルが接続されているビット線BL(図9の例ではBL1及びBL6)に電圧V1を印加する。これにより、第1セル及び第3セルへのプログラムが禁止される。 Next, while the row decoder 11 applies the voltage VPGM2 to the selected word line WL1, the sense amplifier module 12 applies 0V to the bit lines BL (BL2 to BL5 in the example of FIG. 9) to which the second cell is connected. Apply. As a result, in the NAND string SR including the second cell, the selection transistor ST1 is turned on, and data is programmed in the second cell. The row decoder 11 applies the voltage V1 to the bit line BL (BL1 and BL6 in the example of FIG. 9) to which the first cell and the third cell are connected. Thereby, the programming to the first cell and the third cell is prohibited.
 引き続きロウデコーダ11が電圧VPGM3を選択ワード線WL1に印加している間、センスアンプモジュール12は、第3セルが接続されているビット線BL(図9の例ではBL6)に0Vを印加する。これにより、第3セルにデータがプログラムされる。またロウデコーダ11は、第1セル及び第2セルが接続されているビット線BL(図9の例ではBL1~BL5)に電圧V1を印加する。これにより、第1セル及び第2セルへのプログラムが禁止される。 Subsequently, while the row decoder 11 applies the voltage VPGM3 to the selected word line WL1, the sense amplifier module 12 applies 0 V to the bit line BL (BL6 in the example of FIG. 9) to which the third cell is connected. As a result, data is programmed in the third cell. The row decoder 11 applies the voltage V1 to the bit line BL (BL1 to BL5 in the example of FIG. 9) to which the first cell and the second cell are connected. Thereby, the programming to the first cell and the second cell is prohibited.
 以上の3ステップにより、ワード線WL1に接続された第1~第3セルにデータが順次プログラムされる。メモリセルトランジスタMTが第1~第3セルのいずれに相当するかは、メモリセルトランジスタMTのアドレスに応じて判断出来る。つまり、制御部15及びロウデコーダ11は、書き込み対象となるメモリセルトランジスタMTのアドレスと、そのメモリセルトランジスタMTへ書き込むべきデータに応じて、第1乃至第3プログラム電圧のいずれを印加するかを決定出来る。 Through the above three steps, data is sequentially programmed in the first to third cells connected to the word line WL1. Whether the memory cell transistor MT corresponds to the first to third cells can be determined according to the address of the memory cell transistor MT. That is, the control unit 15 and the row decoder 11 determine which of the first to third program voltages is applied according to the address of the memory cell transistor MT to be written and the data to be written to the memory cell transistor MT. I can decide.
 次に制御部15は、ステップS10でのプログラムの結果メモリセルトランジスタMTにプログラムされたデータをベリファイする(ステップS11)。 Next, the control unit 15 verifies the data programmed in the memory cell transistor MT as a result of the programming in step S10 (step S11).
 この際ロウデコーダ11は、制御部15の命令に応答して、図11に示すようにベリファイ電圧Vfy_A、Vfy_B、及びVfy_Cを順次、選択ワード線WL1に印加する。またロウデコーダ11は、非選択ワード線WL2~WL4に電圧VREADを印加する。電圧VREADは、保持データに関わらずメモリセルトランジスタMTをオンさせる電圧である。またロウデコーダ11は、セレクトゲート線GSL1及びGSL2にhighレベルを印加し、選択トランジスタST1及びST2をオンさせる。なお、制御信号線SSL2~SSL4に“low”レベルが与えられることで、非選択のストリンググループGR2~GR4はビット線BLと電気的に分離される。 At this time, the row decoder 11 sequentially applies the verify voltages Vfy_A, Vfy_B, and Vfy_C to the selected word line WL1 as shown in FIG. 11 in response to an instruction from the control unit 15. The row decoder 11 applies the voltage VREAD to the unselected word lines WL2 to WL4. The voltage VREAD is a voltage that turns on the memory cell transistor MT regardless of retained data. The row decoder 11 applies a high level to the select gate lines GSL1 and GSL2 to turn on the select transistors ST1 and ST2. Note that the “low” level is given to the control signal lines SSL2 to SSL4, whereby the non-selected string groups GR2 to GR4 are electrically separated from the bit line BL.
 ベリファイ動作の期間、センスアンプモジュール12は、ビット線BL1~BL6にプリチャージ電圧を印加して、ビット線BL1~BL6に流れる電流をセンス・増幅する。これにより、メモリセルトランジスタMTにプログラムされたデータを判別する。 During the verify operation, the sense amplifier module 12 applies a precharge voltage to the bit lines BL1 to BL6 to sense and amplify the current flowing through the bit lines BL1 to BL6. Thereby, the data programmed in the memory cell transistor MT is determined.
 ベリファイ電圧Vfy_Aを印加した際に、“A”レベルが書き込まれるべきメモリセルトランジスタMTの接続されたビット線BLに電流が流れれば、当該メモリセルトランジスタMTの閾値は“A”レベルまで上昇していないことになるので、当該メモリセルトランジスタMTへのプログラムは未完了であることが分かる(これをベリファイフェイルと呼ぶ)。他方、電流が流れれば、当該メモリセルトランジスタMTの閾値は“A”レベルまで上昇したことになるので、当該メモリセルトランジスタMTへのプログラムは完了したことが分かる(これをベリファイパスと呼ぶ)。“B”レベル及び“C”レベルへのプログラムも同様である。 When a verify voltage Vfy_A is applied, if a current flows through the bit line BL connected to the memory cell transistor MT to which the “A” level is to be written, the threshold value of the memory cell transistor MT rises to the “A” level. Therefore, it can be seen that the program to the memory cell transistor MT has not been completed (this is called a verify failure). On the other hand, if a current flows, the threshold value of the memory cell transistor MT has risen to the “A” level, so that it can be seen that the programming of the memory cell transistor MT has been completed (this is called a verify path). . The program for the “B” level and the “C” level is the same.
 ステップS11の結果、第1セルへのプログラムが完了し(ステップS12、YES)、第3セルへのプログラムが完了し(ステップS13、YES)、第2セルへのプログラムが完了すれば(ステップS14、YES)、制御部15は、選択ページに対する所望のデータのプログラムが正常に完了したものと判断し、書き込み動作を終了する。 As a result of step S11, the program to the first cell is completed (step S12, YES), the program to the third cell is completed (step S13, YES), and the program to the second cell is completed (step S14). , YES), the control unit 15 determines that the program of desired data for the selected page has been normally completed, and ends the write operation.
 ステップS11の結果、第1セルへのプログラムが完了し(ステップS12、YES)、第3セルへのプログラムが完了していなければ(ステップS13、NO)、制御部15は、電圧VPGM1の印加を省略し、且つ電圧VPGM2及びVPGM3をステップアップしつつ(ステップS15)、ステップS10の処理を繰り返す。 As a result of step S11, the program to the first cell is completed (step S12, YES), and if the program to the third cell is not completed (step S13, NO), the control unit 15 applies the voltage VPGM1. The process of step S10 is repeated while omitting and stepping up the voltages VPGM2 and VPGM3 (step S15).
 ステップS11の結果、第1セルへのプログラムが完了しておらず(ステップS12、NO)、第3セルへのプログラムも完了していなければ(ステップS16、NO)、制御部15は電圧VPGM1~VPGM3をステップアップしつつ(ステップS17)、ステップS10の処理を繰り返す。第3セルへのプログラムが完了していれば(ステップS16、YES)、制御部15は、電圧VPGM3の印加を省略し且つ電圧VPGM1及びVPGM2をステップアップしつつ(ステップS18)、ステップS10の処理を繰り返す。 As a result of step S11, if the programming to the first cell has not been completed (step S12, NO), and the programming to the third cell has not been completed (step S16, NO), the control unit 15 causes the voltage VPGM1˜ While stepping up VPGM3 (step S17), the process of step S10 is repeated. If the programming to the third cell is completed (step S16, YES), the control unit 15 omits the application of the voltage VPGM3 and steps up the voltages VPGM1 and VPGM2 (step S18), and the process of step S10 repeat.
 ステップS11の結果、第1及び第3セルへのプログラムが完了し(ステップS12、YES、ステップS13、YES)、第2セルへのプログラムが完了していなければ(ステップS14、NO)、制御部15は、電圧VPGM1及びVPGM3の印加を省略し且つ電圧VPGM2をステップアップしつつ(ステップS19)、ステップS10の処理を繰り返す。 As a result of step S11, the program to the first and third cells is completed (step S12, YES, step S13, YES), and if the program to the second cell is not completed (step S14, NO), the control unit 15 omits application of the voltages VPGM1 and VPGM3 and steps up the voltage VPGM2 (step S19), and repeats the process of step S10.
 図11の例では、2回目のプログラムの結果、第1セルがベリファイにパスしている(時刻t4)。従って制御部15は、3回目のプログラムにおいて電圧VPGM1の印加を省略している。また3回目のプログラムの結果、第3セルがベリファイにパスしている(時刻t6)。従って制御部15は、4回目のプログラムにおいて電圧VPGM3の印加を更に省略している。 In the example of FIG. 11, as a result of the second program, the first cell has passed verification (time t4). Therefore, the control unit 15 omits application of the voltage VPGM1 in the third program. As a result of the third program, the third cell passes verification (time t6). Therefore, the control unit 15 further omits application of the voltage VPGM3 in the fourth program.
 1.3 本実施形態に係る効果について 
 本実施形態に係る構成であると、データの書き込み速度を向上出来る。本効果につき、以下説明する。
1.3 Effects of this embodiment
With the configuration according to the present embodiment, the data writing speed can be improved. This effect will be described below.
 図12は、NAND型フラッシュメモリの通常の書き込み方法におけるワード線電圧のタイミングチャートである。図示するように、データのプログラム時には、プログラム電圧VPGMが選択ワード線に印加されて、“A”~“C”レベルが書き込まれるべきメモリセルトランジスタMTに対して一括してデータがプログラムされ、その後、ベリファイ動作が実行される。つまり、1回のプログラム電圧VPGMの印加とベリファイ動作とにより1回のプログラムループが構成され、このプログラムループが、プログラム電圧がステップアップされつつ繰り返される。 FIG. 12 is a timing chart of the word line voltage in the normal writing method of the NAND flash memory. As shown in the figure, at the time of data programming, a program voltage VPGM is applied to the selected word line, and data is programmed to the memory cell transistors MT to be written with the “A” to “C” levels. The verify operation is executed. That is, one program loop is formed by one application of the program voltage VPGM and the verify operation, and this program loop is repeated while the program voltage is stepped up.
 しかしながら、このような書き込み方法を、図2乃至図6を用いて説明したフラッシュメモリに適用した場合、書き込みに要する時間が非常に長くなるおそれがある。図2乃至図6のように、NANDストリングSRにおいて直列接続されたメモリセルトランジスタMTが半導体基板面に平行に配置され、更にNANDストリングSRが半導体基板面に対する垂直方向に積層される場合、1ページに含まれるメモリセルトランジスタMTの電流経路の幅が異なり、書き込み速度にばらつきが生じる。つまり、同一ページの中に、書き込みの速いメモリセルトランジスタMTと遅いメモリセルトランジスタMTとが混在する。この理由は、メモリセルアレイ10の製造プロセスに起因する。すなわち、メモリセルアレイ10は、半導体基板20上に絶縁膜22-1~22-4及び半導体層23-1~23-4を積層した後、これらの層22-1~22-4及び23-1~23-4を一括してパターニングすることによって形成される。その結果、図5に示すようにフィン型構造24にはテーパー角が生じてしまう。 However, when such a writing method is applied to the flash memory described with reference to FIGS. 2 to 6, the time required for writing may be very long. As shown in FIGS. 2 to 6, when memory cell transistors MT connected in series in the NAND string SR are arranged in parallel to the semiconductor substrate surface, and the NAND string SR is stacked in a direction perpendicular to the semiconductor substrate surface, one page The memory cell transistors MT included in the memory cell transistors MT have different current path widths, resulting in variations in writing speed. That is, in the same page, a fast write memory cell transistor MT and a slow write memory cell transistor MT are mixed. This reason is due to the manufacturing process of the memory cell array 10. That is, in the memory cell array 10, after the insulating films 22-1 to 22-4 and the semiconductor layers 23-1 to 23-4 are stacked on the semiconductor substrate 20, these layers 22-1 to 22-4 and 23-1 are stacked. 23-4 are formed by patterning all at once. As a result, a taper angle is generated in the fin-type structure 24 as shown in FIG.
 そのため、データを書き込む際には、最もデータの書き込み速度が高いメモリセルトランジスタMTに対してオーバープログラムとならないようなケアが必要である。つまり、図12の最初のプログラムループで使用される電圧VPGMは、最下層のレイヤに位置し且つ“A”レベルが書き込まれるメモリセルトランジスタMTに対してオーバープログラムとならないよう、十分に低い値に設定される。 Therefore, when data is written, care must be taken not to overprogram the memory cell transistor MT having the highest data writing speed. That is, the voltage VPGM used in the first program loop of FIG. 12 is set to a sufficiently low value so that the memory cell transistor MT in which the “A” level is written is positioned in the lowermost layer and is not overprogrammed. Is set.
 すると、図12に示すように、書き込み動作における前半のプログラム動作は、実質的に書き込み速度の高いメモリセルトランジスタMT(すなわち第1セル)に対してのみ寄与し、この期間のプログラムパルスは、書き込み速度の低い第3セルの閾値電圧に対してほとんど影響を与えない。そして、書き込み動作における後半のプログラム動作になってようやく、第3セルに対する実質的なプログラムが開始される。 Then, as shown in FIG. 12, the first half program operation in the write operation contributes only to the memory cell transistor MT (ie, the first cell) having a substantially high write speed, and the program pulse in this period is the write pulse. It hardly affects the threshold voltage of the third cell having a low speed. Only after the program operation in the latter half of the write operation, the substantial program for the third cell is started.
 つまり、データプログラムはページ単位で一括して実行されるが、実質的にはページ内における第1乃至第3セルが順番にプログラムされることになる。従って、プログラムループ回数が非常に多くなり、書き込み時間に長時間を要してしまう。 That is, the data program is collectively executed in units of pages, but the first to third cells in the page are actually programmed in order. Therefore, the number of program loops becomes very large, and a long time is required for writing.
 これに対して本実施形態であると、1回のプログラムループにおいて複数種類のプログラム電圧を用意することにより、最初のプログラムループにおいても第3セルへの実質的なプログラムを可能とし、書き込み時間を短縮出来る。 On the other hand, in the present embodiment, by preparing a plurality of types of program voltages in one program loop, it is possible to substantially program the third cell even in the first program loop, and to reduce the write time. Can be shortened.
 すなわち本実施形態では、プログラム電圧VPGMを、以下の3つのパルスに分離する。 
 (1)書き込みが速いレイヤに位置し、“A”レベル書き込みセル(第1セル)に印加するパルス:VPGM1 
 (2)書き込みが遅いレイヤに位置し、“C”レベル書き込みセル(第3セル)に印加するパルス:VPGM3 
 (3)上記(1)及び(2)以外のセル(第2セル)に印加するパルス:VPGM2。
That is, in the present embodiment, the program voltage VPGM is separated into the following three pulses.
(1) A pulse applied to the “A” level write cell (first cell) located in a fast write layer: VPGM1
(2) A pulse applied to the “C” level write cell (third cell) located in the slow write layer: VPGM3
(3) Pulse applied to cells (second cell) other than (1) and (2) above: VPGM2.
 そして、1回のプログラムループにおいて、上記(1)乃至(3)のパルスを順次印加する。これらのパルスの初期値は、これらのパルスによってプログラムされるメモリセルトランジスタMTの書き込み速度及び書き込みデータに応じて最適な値とされる。つまり、電圧VPGM3の初期値は、第3セルをオーバープログラムしない値であれば、第1セルや第2セルをオーバープログラムする値であっても良い。もちろん、電圧VPGM1の初期値は、1回のプログラム動作で第1セルをオーバープログラムしない値に設定される。 Then, the pulses (1) to (3) are sequentially applied in one program loop. The initial values of these pulses are optimum values according to the write speed and write data of the memory cell transistor MT programmed by these pulses. That is, the initial value of the voltage VPGM3 may be a value that overprograms the first cell and the second cell as long as the third cell is not overprogrammed. Of course, the initial value of the voltage VPGM1 is set to a value that does not overprogram the first cell in one program operation.
 これにより、最初のプログラムループから、第1セル乃至第3セルの全てに対して、実質的なプログラムを実行出来る。言い換えれば、最初のプログラムループにおいても、第3セルの閾値電圧を有効に上昇させることが出来る。その結果、プログラムループ回数を大幅に削減し、書き込み速度を向上出来る。 Thus, a substantial program can be executed for all of the first to third cells from the first program loop. In other words, the threshold voltage of the third cell can be effectively increased even in the first program loop. As a result, the number of program loops can be greatly reduced and the writing speed can be improved.
 なお、図11では初めにVPGM1が省略され、次にVPGM3が省略される例を示したが、逆の場合もあり得るし、あるいはVPGM1及びVPGM3が同時に省略される場合もあり得る。 Although FIG. 11 shows an example in which VPGM1 is omitted first, and then VPGM3 is omitted, the reverse case may be possible, or VPGM1 and VPGM3 may be omitted at the same time.
 上記書き込み方法を採用した結果として、いずれかのプログラムループにおいて、ロウデコーダ11は、プログラム電圧をM回(Mは1以上の自然数)、選択ワード線WLに対して順次印加し(図11のt5~t6, t7~t8)、引き続きベリファイ電圧VfyをN回(NはMより大きく、3以上の自然数)、選択ワード線WLに対して順次印加する(図11のt6~t7, t7以降)。そして、いずれのプログラムループにおいても、プログラム電圧の印加回数は、ベリファイ電圧の印加回数を上回ることは無く、ベリファイ電圧の印加回数と同じか、それ未満である。 As a result of employing the above write method, in any program loop, the row decoder 11 sequentially applies the program voltage to the selected word line WL M times (M is a natural number of 1 or more) (t5 in FIG. 11). T6, t7 to t8), and subsequently, the verify voltage Vfy is sequentially applied to the selected word line WL N times (N is greater than M and a natural number of 3 or more) (from t6 to t7, t7 in FIG. 11). In any program loop, the number of application times of the program voltage does not exceed the number of application times of the verify voltage, and is equal to or less than the number of application times of the verify voltage.
 更に言い換えれば、メモリセルへのデータの書き込みは、選択ワード線WLにプログラム電圧を印加するプログラム動作と、選択ワード線にベリファイ電圧を印加するベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行される。この複数回繰り返されるプログラムループのうち、連続する2回のプログラムループ(図11のt3~t5とt5~t6)間においてロウデコーダ11は、ベリファイ電圧Vfyの印加回数は不変としつつ、2回目のプログラムループ(図11のt5~t6)におけるプログラム電圧の印加回数(3回: VPGM1-VPGM3)を、1回目のプログラムループ(図11のt3~t5)よりも減少させる(2回: VPGM2,VPGM3)。 In other words, data is written into the memory cell by repeating a program loop including a program operation for applying a program voltage to the selected word line WL and a verify operation for applying a verify voltage to the selected word line a plurality of times. Is done. Among the program loops that are repeated a plurality of times, the row decoder 11 does not change the number of times of application of the verify voltage Vfy between two consecutive program loops (t3 to t5 and t5 to t6 in FIG. 11). The number of program voltage applications (3 times: VPGM1-VPGM3) in the program loop (t5 to t6 in Fig. 11) is reduced from the first program loop (t3 to t5 in Fig. 11) (2 times: VPGM2, VPGM3) ).
 例えば、ロウデコーダ11は、あるプログラムループにおいてプログラム電圧をM回、前記選択ワード線に順次印加する。このM回のうちのいずれかのプログラム電圧(図11及び図16のVPGM1)が選択ワード線WLに印加される際、最下層に位置する第1メモリセルがプログラム対象とされ、少なくとも最上層に位置する第3メモリセルはプログラム非対象とされる。そしてロウデコーダ11は、次のプログラムループにおいて、前記選択ワード線への前記いずれかのプログラム電圧(図11及び図16のVPGM1)の印加を省略する(図11のt5-t6及び図16のt5以降)。この例は、VPGM3よりも先にVPGM1の印加をやめる場合である。 For example, the row decoder 11 sequentially applies a program voltage to the selected word line M times in a certain program loop. When any one of the M times of the program voltage (VPGM1 in FIGS. 11 and 16) is applied to the selected word line WL, the first memory cell located in the lowermost layer is set as a program target, and at least in the uppermost layer. The third memory cell located is not targeted for programming. In the next program loop, the row decoder 11 omits application of any one of the program voltages (VPGM1 in FIGS. 11 and 16) to the selected word line (t5-t6 in FIG. 11 and t5 in FIG. 16). Or later). In this example, the application of VPGM1 is stopped before VPGM3.
 他方、M回のうちの別のプログラム電圧(図11及び図14のVPGM3)が選択ワード線WLに印加される際、最上層に位置する第3メモリセルがプログラム対象とされ、少なくとも最下層に位置する第1メモリセルはプログラム非対象とされる。そしてロウデコーダ11は、次のプログラムループにおいて、前記いずれかのプログラム電圧(図11及び図14のVPGM3)の印加を省略する(図14のt5以降)。この例は、VPGM1よりも先にVPGM3の印加をやめる場合である。 On the other hand, when another program voltage (VPGM3 in FIGS. 11 and 14) of M times is applied to the selected word line WL, the third memory cell located in the uppermost layer is set as a program target, and at least in the lowermost layer. The first memory cell located is not programmed. Then, in the next program loop, the row decoder 11 omits application of any of the program voltages (VPGM3 in FIGS. 11 and 14) (after t5 in FIG. 14). In this example, the application of VPGM3 is stopped before VPGM1.
 もちろん、次のプログラムループにおいて、複数のプログラム電圧の印加を同時にやめる場合であっても良い。 Of course, in the next program loop, the application of a plurality of program voltages may be stopped simultaneously.
 図12の例においても、1回のプログラムループにおいて複数回にわたってプログラム電圧が印加されても良い。しかし図12の場合、これらのプログラム電圧と書き込みレベルとが関連付けられている。従って、プログラム電圧の印加の削減と、あるレベルへの書き込みの完了とが、完全に一致する。言い換えれば、あるプログラム電圧の印加が停止されると、同時にあるベリファイ電圧の印加も停止される。 Also in the example of FIG. 12, the program voltage may be applied multiple times in one program loop. However, in the case of FIG. 12, the program voltage and the write level are associated with each other. Therefore, the reduction in the application of the program voltage completely coincides with the completion of writing to a certain level. In other words, when the application of a certain program voltage is stopped, the application of a certain verify voltage is also stopped at the same time.
 これに対して本実施形態によれば、プログラム電圧には、書き込みレベルだけでなくメモリセルの位置も関連付けられている。従って、例えあるプログラム電圧の印加が停止されたとしても、ベリファイ電圧の印加が停止されるとは限らない。 On the other hand, according to the present embodiment, not only the write level but also the position of the memory cell is associated with the program voltage. Therefore, even if application of a certain program voltage is stopped, application of the verify voltage is not necessarily stopped.
 2.第2実施形態 
 次に、第2実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第1実施形態で説明したデータ書き込み方法において、プログラム電圧VPGM1をVPGM2に包含することにより、1回のプログラムループで使用するプログラムパルス数を2つに減らしたものである。以下では、第1実施形態と異なる点についてのみ説明する。
2. Second embodiment
Next, a semiconductor memory device according to the second embodiment will be described. In this embodiment, the number of program pulses used in one program loop is reduced to two by including the program voltage VPGM1 in the VPGM2 in the data writing method described in the first embodiment. Below, only a different point from 1st Embodiment is demonstrated.
 2.1 データの書き込み動作について 
 本実施形態に係るデータの書き込み動作につき、図13及び図14を用いて説明する。図13は書き込み方法のフローチャートであり、図14は書き込み時における選択ワード線WLに印加される電圧のタイミングチャートである。
2.1 Data write operation
A data write operation according to the present embodiment will be described with reference to FIGS. FIG. 13 is a flowchart of the writing method, and FIG. 14 is a timing chart of voltages applied to the selected word line WL at the time of writing.
 まず、制御部15の命令に応答してロウデコーダ11はいずれかのワード線WLを選択して、選択ワード線WLにプログラム電圧VPGMを印加して、データをプログラムする(ステップS20)。 First, in response to a command from the control unit 15, the row decoder 11 selects any one of the word lines WL, applies a program voltage VPGM to the selected word line WL, and programs data (step S20).
 この際ロウデコーダ11は、プログラム電圧VPGM2a及びVPGM3を順次、選択ワード線WLに印加する。電圧VPGM2aは、第1及び第2セルのためのプログラム電圧であり、VPGM2a<VPGM3の関係がある。また、例えばVPGM1≦VPGM2a≦VPGM2であるが、VPGM2aは例えば、1回のプログラムで第1セルに対してオーバープログラムとならないような値である。 At this time, the row decoder 11 sequentially applies the program voltages VPGM2a and VPGM3 to the selected word line WL. The voltage VPGM2a is a program voltage for the first and second cells, and has a relationship of VPGM2a <VPGM3. Further, for example, VPGM1 ≦ VPGM2a ≦ VPGM2, but VPGM2a is a value that does not cause an overprogram to the first cell in one program, for example.
 ロウデコーダ11が電圧VPGM2aを選択ワード線WLに印加している間、センスアンプモジュール12は、第1及び第2セルが接続されているビット線BL(図9の例ではBL1~BL5)に0Vを印加する。これにより、第1及び第2セルを含むNANDストリングSRでは選択トランジスタST1がオンされ、第1及び第2セルにデータがプログラムされる。またロウデコーダ11は、第3セルが接続されているビット線BL(図9の例ではBL6)に電圧V1を印加する。これにより、第3セルへのプログラムが禁止される。 While the row decoder 11 applies the voltage VPGM2a to the selected word line WL, the sense amplifier module 12 applies 0V to the bit lines BL (BL1 to BL5 in the example of FIG. 9) to which the first and second cells are connected. Is applied. As a result, in the NAND string SR including the first and second cells, the selection transistor ST1 is turned on, and data is programmed in the first and second cells. The row decoder 11 applies the voltage V1 to the bit line BL (BL6 in the example of FIG. 9) to which the third cell is connected. As a result, programming to the third cell is prohibited.
 以上の2ステップにより、選択ワード線WLに接続された第1及び第2セル、並びに第3セルにデータが順次プログラムされる。 Through the above two steps, data is sequentially programmed in the first and second cells and the third cell connected to the selected word line WL.
 次に制御部15は、メモリセルトランジスタMTにプログラムされたデータをベリファイする(ステップS21)。ステップS21は、第1実施形態で説明したステップS11と同様である。 Next, the control unit 15 verifies the data programmed in the memory cell transistor MT (step S21). Step S21 is the same as step S11 described in the first embodiment.
 ステップS21の結果、第1及び第2セルへのプログラムが完了し(ステップS22、YES)、第3セルへのプログラムも完了すれば(ステップS23、YES)、制御部15は、選択ページに対する所望のデータのプログラムが正常に完了したものと判断し、書き込み動作を終了する。 As a result of step S21, if the programming to the first and second cells is completed (step S22, YES), and the programming to the third cell is also completed (step S23, YES), the control unit 15 selects the desired page for the selected page. It is determined that the data program has been completed normally, and the write operation is terminated.
 ステップS21の結果、第1及び第2セルへのプログラムが完了し(ステップS22、YES)、第3セルへのプログラムが完了していなければ(ステップS23、NO)、制御部15は、電圧VPGM2aの印加を省略し、且つ電圧VPGM3をステップアップしつつ(ステップS24)、ステップS20の処理を繰り返す。 As a result of step S21, the program to the first and second cells is completed (step S22, YES), and if the program to the third cell is not completed (step S23, NO), the control unit 15 controls the voltage VPGM2a. Is omitted and the voltage VPGM3 is stepped up (step S24), and the process of step S20 is repeated.
 ステップS21の結果、第1及び第2セルの少なくともいずれかへのプログラムが完了しておらず(ステップS22、NO)、第3セルへのプログラムも完了していなければ(ステップS25、NO)、制御部15は電圧VPGM2a及びVPGM3をステップアップしつつ(ステップS26)、ステップS20の処理を繰り返す。第3セルへのプログラムが完了していれば(ステップS25、YES)、制御部15は、電圧VPGM3の印加を省略し且つ電圧VPGM2aをステップアップしつつ(ステップS27)、ステップS20の処理を繰り返す。 As a result of step S21, programming to at least one of the first and second cells has not been completed (step S22, NO), and programming to the third cell has not been completed (step S25, NO). The controller 15 repeats the process of step S20 while stepping up the voltages VPGM2a and VPGM3 (step S26). If the programming to the third cell is completed (step S25, YES), the control unit 15 repeats the process of step S20 while omitting the application of the voltage VPGM3 and stepping up the voltage VPGM2a (step S27). .
 2.2 本実施形態に係る効果 
 本実施形態によれば、プログラム電圧VPGM2aを用いて、第1及び第2セルに対するプログラムを同時に行っている。従って、第1実施形態と同様にプログラムループ回数を削減しつつ、プログラム電圧の種類を削減し、回路構成を簡略化出来る。
2.2 Effects of this embodiment
According to the present embodiment, the first and second cells are simultaneously programmed using the program voltage VPGM2a. Therefore, as in the first embodiment, the number of program loops can be reduced, the types of program voltages can be reduced, and the circuit configuration can be simplified.
 3.第3実施形態 
 次に、第3実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第1実施形態で説明したデータ書き込み方法において、プログラム電圧VPGM3をVPGM2に包含することにより、1回のプログラムループで使用するプログラムパルス数を2つに減らしたものである。以下では、第1実施形態と異なる点についてのみ説明する。
3. Third embodiment
Next, a semiconductor memory device according to a third embodiment will be described. In this embodiment, the number of program pulses used in one program loop is reduced to two by including the program voltage VPGM3 in the VPGM2 in the data writing method described in the first embodiment. Below, only a different point from 1st Embodiment is demonstrated.
 3.1 データの書き込み動作について 
 本実施形態に係るデータの書き込み動作につき、図15及び図16を用いて説明する。図15は書き込み方法のフローチャートであり、図16は書き込み時における選択ワード線WLに印加される電圧のタイミングチャートである。
3.1 Data write operation
A data write operation according to the present embodiment will be described with reference to FIGS. 15 and 16. FIG. 15 is a flowchart of the writing method, and FIG. 16 is a timing chart of voltages applied to the selected word line WL at the time of writing.
 まず、制御部15の命令に応答してロウデコーダ11は、いずれかのワード線WLを選択する。そしてロウデコーダ11は、選択ワード線WLにプログラム電圧VPGMを印加して、データをプログラムする(ステップS30)。 First, in response to an instruction from the control unit 15, the row decoder 11 selects any one of the word lines WL. Then, the row decoder 11 applies the program voltage VPGM to the selected word line WL to program data (step S30).
 この際ロウデコーダ11は、プログラム電圧VPGM1及びVPGM2bを順次、選択ワード線WLに印加する。電圧VPGM2bは、第2及び第3セルのためのプログラム電圧であり、VPGM2b>VPGM1の関係がある。また、例えばVPGM2≦VPGM2b≦VPGM3である。VPGM2bは例えば、1回のプログラムで第2セルに対してオーバープログラムとならないような値である。ロウデコーダ11が電圧VPGM2bを選択ワード線WLに印加している間、センスアンプモジュール12は、第2及び第3セルが接続されているビット線BL(図9の例ではBL2~BL6)に0Vを印加する。これにより、第2及び第3セルを含むNANDストリングSRでは、選択トランジスタST1がオンされ、第2及び第3セルにデータがプログラムされる。またロウデコーダ11は、第1セルが接続されているビット線BL(図9の例ではBL1)に電圧V1を印加する。これにより、第1セルへのプログラムが禁止される。 At this time, the row decoder 11 sequentially applies the program voltages VPGM1 and VPGM2b to the selected word line WL. The voltage VPGM2b is a program voltage for the second and third cells, and has a relationship of VPGM2b> VPGM1. Also, for example, VPGM2 ≦ VPGM2b ≦ VPGM3. For example, VPGM2b is a value that does not cause an overprogram to the second cell in one program. While the row decoder 11 applies the voltage VPGM2b to the selected word line WL, the sense amplifier module 12 applies 0V to the bit lines BL (BL2 to BL6 in the example of FIG. 9) to which the second and third cells are connected. Is applied. As a result, in the NAND string SR including the second and third cells, the selection transistor ST1 is turned on, and data is programmed in the second and third cells. The row decoder 11 applies the voltage V1 to the bit line BL (BL1 in the example of FIG. 9) to which the first cell is connected. As a result, programming to the first cell is prohibited.
 以上の2ステップにより、選択ワード線WLに接続された第1セル、並びに第2及び第3セルにデータが順次プログラムされる。 Through the above two steps, data is sequentially programmed in the first cell connected to the selected word line WL, and the second and third cells.
 次に制御部15は、メモリセルトランジスタMTにプログラムされたデータをベリファイする(ステップS31)。ステップS31は、第1実施形態で説明したステップS11と同様である。 Next, the control unit 15 verifies the data programmed in the memory cell transistor MT (step S31). Step S31 is the same as step S11 described in the first embodiment.
 ステップS31の結果、第1セルへのプログラムが完了し(ステップS32、YES)、第2及び第3セルへのプログラムも完了すれば(ステップS33、YES)、制御部15は、選択ページに対する所望のデータのプログラムが正常に完了したものと判断し、書き込み動作を終了する。 As a result of step S31, when the program to the first cell is completed (step S32, YES) and the program to the second and third cells is also completed (step S33, YES), the control unit 15 selects the desired page for the selected page. It is determined that the data program has been completed normally, and the write operation is terminated.
 ステップS31の結果、第1セルへのプログラムが完了し(ステップS32、YES)、第2及び第3セルの少なくともいずれかへのプログラムが完了していなければ(ステップS33、NO)、制御部15は、電圧VPGM1の印加を省略し、且つ電圧VPGM2bをステップアップしつつ(ステップS34)、ステップS30の処理を繰り返す。 As a result of step S31, the program to the first cell is completed (step S32, YES), and if the program to at least one of the second and third cells is not completed (step S33, NO), the control unit 15 Omits the application of the voltage VPGM1, and repeats the process of step S30 while stepping up the voltage VPGM2b (step S34).
 ステップS31の結果、第1セルへのプログラムが完了しておらず(ステップS32、NO)、第2及び第3セルの少なくともいずれかへのプログラムも完了していなければ(ステップS35、NO)、制御部15は電圧VPGM1及びVPGM2bをステップアップしつつ(ステップS36)、ステップS30の処理を繰り返す。第2及び第3セルへのプログラムが完了していれば(ステップS35、YES)、制御部15は、電圧VPGM2bの印加を省略し且つ電圧VPGM1をステップアップしつつ(ステップS37)、ステップS30の処理を繰り返す。 As a result of step S31, the program to the first cell is not completed (step S32, NO), and the program to at least one of the second and third cells is not completed (step S35, NO). The controller 15 repeats the process of step S30 while stepping up the voltages VPGM1 and VPGM2b (step S36). If the programming to the second and third cells is completed (step S35, YES), the control unit 15 omits the application of the voltage VPGM2b and steps up the voltage VPGM1 (step S37). Repeat the process.
 3.2 本実施形態に係る効果 
 本実施形態によれば、プログラム電圧VPGM2bを用いて、第2及び第3セルに対するプログラムを同時に行っている。従って、第2実施形態と同様の効果が得られる。
3.2 Effects of this embodiment
According to this embodiment, the program for the second and third cells is simultaneously performed using the program voltage VPGM2b. Therefore, the same effect as the second embodiment can be obtained.
 4.第4実施形態 
 次に、第4実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第1実施形態で説明したデータ書き込み方法において、プログラム電圧VPGM2の印加時に第1セルのチャネル電位を上昇させることで、VPGM1の印加を省略し、1回のプログラムループで使用するプログラムパルス数を2つに減らしたものである。以下では、第1実施形態と異なる点についてのみ説明する。
4). Fourth embodiment
Next, a semiconductor memory device according to the fourth embodiment will be described. In the data write method described in the first embodiment, this embodiment increases the channel potential of the first cell when the program voltage VPGM2 is applied, thereby omitting the application of VPGM1 and using it in one program loop. The number of program pulses to be reduced is two. Below, only a different point from 1st Embodiment is demonstrated.
 4.1 データの書き込み動作について 
 本実施形態に係るデータの書き込み動作につき、図17及び図18を用いて説明する。図17は書き込み方法のフローチャートであり、図18はプログラム時において選択ワード線WL及びビット線BLに印加される電圧のタイミングチャートである。
4.1 Data write operation
A data write operation according to the present embodiment will be described with reference to FIGS. FIG. 17 is a flowchart of the writing method, and FIG. 18 is a timing chart of voltages applied to the selected word line WL and the bit line BL during programming.
 まず、制御部15の命令に応答してロウデコーダ11はいずれかのワード線WLを選択して、選択ワード線WLにプログラム電圧VPGMを印加して、データをプログラムする(ステップS40)。 First, in response to an instruction from the control unit 15, the row decoder 11 selects one of the word lines WL, applies a program voltage VPGM to the selected word line WL, and programs data (step S40).
 この際ロウデコーダ11は、プログラム電圧VPGM2及びVPGM3を順次、選択ワード線WLに印加する。第1実施形態で説明した通り、電圧VPGM2は第2セルへのプログラムに最適化された電圧である。電圧VPGM1は印加されない。 At this time, the row decoder 11 sequentially applies the program voltages VPGM2 and VPGM3 to the selected word line WL. As described in the first embodiment, the voltage VPGM2 is a voltage optimized for programming the second cell. The voltage VPGM1 is not applied.
 図19は、電圧VPGM2印加時におけるメモリセルアレイ10の回路図である。本実施形態では、電圧VPGM2印加時に、第2セルだけでなく第1セルへのプログラムも実行する。その際、センスアンプモジュール12は、第1セルが接続されたビット線BL(図19の例ではBL1)に対して電圧VQPWを印加する。電圧VQPWは、第2セルが接続されたビット線BL(図19の例ではBL2~BL5)に印加される電圧よりも大きな電圧であり、例えばVQPW>0Vである。またVQPWは、ゲートに電圧VSGが印加された選択トランジスタST1によって転送可能な電圧でもある。 FIG. 19 is a circuit diagram of the memory cell array 10 when the voltage VPGM2 is applied. In the present embodiment, when the voltage VPGM2 is applied, not only the second cell but also the program to the first cell is executed. At that time, the sense amplifier module 12 applies the voltage V QPW to the bit line BL (BL1 in the example of FIG. 19) to which the first cell is connected. The voltage V QPW is higher than the voltage applied to the bit line BL (BL2 to BL5 in the example of FIG. 19) to which the second cell is connected, and for example, V QPW > 0V. V QPW is also a voltage that can be transferred by the select transistor ST1 having the gate applied with the voltage VSG.
 従って、電圧VPGM2が印加されている期間、第1及び第2セルは、各チャネルにVQPW及び0Vがそれぞれ印加された状態でプログラムされる。 Accordingly, during the period when the voltage VPGM2 is applied, the first and second cells are programmed with V QPW and 0 V applied to each channel, respectively.
 その後の処理は、第2実施形態の図13を用いて行った説明においてVPGM2aをVPGM2に読み替えたものと同様である。そして図17のステップS41~S47は、図13のステップS21~S27に対応する。 The subsequent processing is the same as that obtained by replacing VPGM2a with VPGM2 in the description made with reference to FIG. 13 of the second embodiment. Steps S41 to S47 in FIG. 17 correspond to steps S21 to S27 in FIG.
 4.2 本実施形態に係る効果 
 本実施形態によれば、第2実施形態と同様にプログラムループ回数を削減しつつ、プログラム電圧の種類を削減し、回路構成を簡略化出来る。また、プログラム電圧VPGM2の初期値を第2セルに最適化できるため、第2実施形態よりも書き込みを高速化出来る。本効果につき、図20を用いて説明する。図20は、プログラム時における第1セル及び第2セルの閾値電圧の変化を示すグラフである。
4.2 Effects of this embodiment
According to the present embodiment, the number of program loops can be reduced while the number of program voltages can be reduced and the circuit configuration can be simplified as in the second embodiment. In addition, since the initial value of the program voltage VPGM2 can be optimized for the second cell, writing can be performed faster than in the second embodiment. This effect will be described with reference to FIG. FIG. 20 is a graph showing changes in threshold voltages of the first cell and the second cell during programming.
 図示するように、プログラム電圧VPGM2は、第2セルのプログラムに最適化されているため、第2セルの閾値は、所望のステップ(ΔVth1)で上昇していく。しかし、VPGM2は、第1セルにとっては大きすぎる電圧である。そのため、VPGM2をそのまま第1セルに適用すると、その閾値は所望のステップよりも大きなステップ(ΔVth2)で上昇していく。場合によっては、1回のプログラムで閾値が上がりすぎてしまうおそれがある。 As shown in the figure, since the program voltage VPGM2 is optimized for the programming of the second cell, the threshold value of the second cell increases in a desired step (ΔVth1). However, VPGM2 is a voltage that is too large for the first cell. Therefore, when VPGM2 is applied to the first cell as it is, the threshold value increases in a step (ΔVth2) larger than the desired step. Depending on the case, there is a possibility that the threshold value increases too much in one program.
 そこで本実施形態では、第1セルが接続されたビット線BLに電圧VQPWを印加する。すなわち、電圧VQPWを印加することで、制御ゲートとチャネルとの間の電位差を小さくする。これにより、第1セルの閾値変動幅を制御し(変動幅を小さくする)、最適なステップ(ΔVth3)で上昇させる。 Therefore, in this embodiment, the voltage V QPW is applied to the bit line BL to which the first cell is connected. That is, the potential difference between the control gate and the channel is reduced by applying the voltage V QPW . As a result, the threshold fluctuation width of the first cell is controlled (the fluctuation width is reduced), and is raised by an optimum step (ΔVth3).
 すなわち、VPGM1の印加を省略しつつも、第2セルだけでなく第1セルに対しても最適なプログラムを実行でき、これらのセルへの高速な書き込みを可能とする。 That is, while omitting the application of VPGM1, an optimal program can be executed not only for the second cell but also for the first cell, and high-speed writing to these cells is possible.
 5.第5実施形態 
 次に、第5実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第1実施形態におけるカラム系周辺回路の構成及び動作に関するものである。
5. Fifth embodiment
Next, a semiconductor memory device according to a fifth embodiment will be described. The present embodiment relates to the configuration and operation of the column peripheral circuit in the first embodiment.
 5.1 カラム系周辺回路の構成について 
 図21は、本実施形態に係るセンスアンプモジュール12、演算モジュール13、及びデータラッチモジュール14のブロック図である。
5.1 Configuration of column peripheral circuit
FIG. 21 is a block diagram of the sense amplifier module 12, the arithmetic module 13, and the data latch module 14 according to the present embodiment.
 図示するようにセンスアンプモジュール12は、各ビット線BLに対応付けられたラッチ回路SDLを備えている。図中において、“SDL”の後ろに付記した“_B”、“_M”、及び“_T”はそれぞれ、各ラッチ回路SDLが、フィン型構造24の最下層のセル、中間層のセル、及び最上層のセルに対応することを示している。各ラッチ回路SDLには、いずれのセルに対応しているかを示す信号SEL_BOT、SEL_MID、及びSEL_TOPが、例えば制御部15によって与えられる。すなわち、ラッチ回路SDL_BにはSEL_BOT=“H”が与えられ、ラッチ回路SDL_MにはSEL_MID=“H”が与えられ、ラッチ回路SDL_TにはSEL_TOP=“H”が与えられる。また同様にして、読み出し時にレイヤ毎にビット線プリチャージ電圧を制御するための信号CLAMP_BOT、CLAMP_MID、及びCLAMP_TOPが、各ラッチ回路SDLに与えられる。すなわち、ラッチ回路SDL_BにはCLAMP_BOT=“H”が与えられ、ラッチ回路SDL_MにはCLAMP_MID=“H”が与えられ、ラッチ回路SDL_TにはCLAMP_TOP=“H”が与えられる。 As shown in the figure, the sense amplifier module 12 includes a latch circuit SDL associated with each bit line BL. In the drawing, “_B”, “_M”, and “_T” added after “SDL” indicate that the latch circuit SDL has the bottom layer cell, the middle layer cell, and the bottom layer cell of the fin-type structure 24, respectively. It corresponds to the upper cell. Signals SEL_BOT, SEL_MID, and SEL_TOP indicating which cell corresponds to each latch circuit SDL are given by, for example, the control unit 15. That is, SEL_BOT = “H” is given to the latch circuit SDL_B, SEL_MID = “H” is given to the latch circuit SDL_M, and SEL_TOP = “H” is given to the latch circuit SDL_T. Similarly, signals CLAMP_BOT, CLAMP_MID, and CLAMP_TOP for controlling the bit line precharge voltage for each layer at the time of reading are supplied to each latch circuit SDL. That is, CLAMP_BOT = “H” is given to the latch circuit SDL_B, CLAMP_MID = “H” is given to the latch circuit SDL_M, and CLAMP_TOP = “H” is given to the latch circuit SDL_T.
 ラッチ回路SDLは、データの書き込み時には、演算モジュール13から転送される書き込みデータを保持する。そしてラッチ回路SDLは、書き込みデータに応じて、所定の電圧を、対応するビット線BLに印加する。またラッチ回路SDLは、データの読み出し時には、信号CLAMP_BOT、CLAMP_MID、及びCLAMP_TOPに応じた電圧にビット線BLをプリチャージする。すなわちラッチ回路SDLは、データの読み出し時には、読み出し対象セルがどのレイヤに位置するかに応じて、ビット線BLに印加するプリチャージ電位を制御する。 The latch circuit SDL holds the write data transferred from the arithmetic module 13 when writing data. The latch circuit SDL applies a predetermined voltage to the corresponding bit line BL according to the write data. The latch circuit SDL precharges the bit line BL to a voltage corresponding to the signals CLAMP_BOT, CLAMP_MID, and CLAMP_TOP when reading data. That is, when reading data, the latch circuit SDL controls the precharge potential applied to the bit line BL according to which layer the read target cell is located.
 演算モジュール13は、各ビット線BLに対応付けられた演算回路40を備えている。演算回路40もまた、対応する信号SEL(SEL_TOP、SEL_MID、及びSEL_BOT)のいずれかを受信する。そして演算回路40の各々は、データの書き込み時には、データラッチモジュール14から与えられるデータと、対応する信号SELとを用いた演算により書き込みデータを生成する。そして生成した書き込みデータを、対応するラッチ回路SDLに転送する。 The arithmetic module 13 includes an arithmetic circuit 40 associated with each bit line BL. The arithmetic circuit 40 also receives any of the corresponding signals SEL (SEL_TOP, SEL_MID, and SEL_BOT). Each of the arithmetic circuits 40 generates write data by an operation using the data supplied from the data latch module 14 and the corresponding signal SEL when writing data. Then, the generated write data is transferred to the corresponding latch circuit SDL.
 データラッチモジュール14は、ラッチ回路DL0及びDL1のセットを備え、このセットは各ビット線BLに対応付けられている。データの書き込み時には、例えばホスト機器等の外部装置からデータ線DATを介して与えられた2ビットデータの各ビットがラッチ回路DL0及びDL1に保持される。そして、これらのデータが演算回路13に転送される。読み出し時には、メモリセルトランジスタMTから読み出された2ビットデータの各ビットが、ラッチ回路DL0及びDL1に保持される。そしてラッチ回路DL0及びDL1は、データ線DATを介して、2ビットデータの各ビットを、外部装置に出力する。 The data latch module 14 includes a set of latch circuits DL0 and DL1, and this set is associated with each bit line BL. When writing data, each bit of 2-bit data given from an external device such as a host device via the data line DAT is held in the latch circuits DL0 and DL1. These data are transferred to the arithmetic circuit 13. At the time of reading, each bit of the 2-bit data read from the memory cell transistor MT is held in the latch circuits DL0 and DL1. The latch circuits DL0 and DL1 output each bit of 2-bit data to the external device via the data line DAT.
 5.2 書き込み時の動作について 
 次に、データ書き込み時における上記カラム系周辺回路の動作について、図22及び図23を用いて説明する。図22は、書き込み時におけるワード線電圧の変化を示すタイミングチャートであり、図23は、プログラム時におけるワード線及びビット線電圧の変化を示すタイミングチャートである。
5.2 Operation during writing
Next, the operation of the column peripheral circuit at the time of data writing will be described with reference to FIGS. FIG. 22 is a timing chart showing changes in the word line voltage during writing, and FIG. 23 is a timing chart showing changes in the word line and bit line voltages during programming.
 書き込みにあたって、まず書き込みデータがラッチ回路DL0及びDL1に転送される。書き込みデータと、ラッチ回路DL0及びDL1内のデータとの関係は次の通りである。 
    データ:(DL0、DL1) 
    “Ep”レベル(非書き込み):(1、1) 
    “A”レベル:(1、0) 
    “B”レベル:(0、0) 
    “C”レベル:(0、1) 
また、ラッチ回路SDL内のデータには次の関係がある。 
    SDL=1:非書き込みセル(BL=V1) 
    SDL=0:書き込みセル(BL=0V) 
 以下、書き込み時の処理ステップにつき順を追って説明する。
In writing, first, write data is transferred to the latch circuits DL0 and DL1. The relationship between the write data and the data in the latch circuits DL0 and DL1 is as follows.
Data: (DL0, DL1)
“Ep” level (non-write): (1, 1)
“A” level: (1, 0)
“B” level: (0, 0)
“C” level: (0, 1)
The data in the latch circuit SDL has the following relationship.
SDL = 1: Non-write cell (BL = V1)
SDL = 0: Write cell (BL = 0V)
Hereinafter, the processing steps at the time of writing will be described in order.
 (1)ステップ1 
 ラッチ回路DL0及びDL1にデータが転送されると、演算回路40の各々は、第1プログラムのためのデータセットを実行する。第1プログラムは、第1セルに対してのみ行われるプログラムである。データセットにあたって演算回路40は、以下の論理演算を実行する。すなわち、 
 /(DL0 & /DL1 & SEL_BOT) → SDL 
演算式において、“/”は反転を示し、“&”は論理積を示す。この演算により、DL0=1でDL=0で、且つ最下層のメモリセルに対応するラッチ回路SDLにのみ“0”がセットされる。その他のラッチ回路SDLには“1”がセットされる。この結果、ベリファイにパスしていない第1セルが接続されたビット線BLにのみ0Vが印加され、その他の第2セル及び第3セル、並びに非書き込み対象セル及び書き込み完了セルが接続されたビット線BLには電圧V1が印加される。そして、選択ワード線WLに電圧VPGM1が印加されて、第1セルにのみ“A”レベルデータがプログラムされる。
(1) Step 1
When data is transferred to the latch circuits DL0 and DL1, each of the arithmetic circuits 40 executes a data set for the first program. The first program is a program performed only on the first cell. In the data set, the arithmetic circuit 40 executes the following logical operation. That is,
/ (DL0 & / DL1 & SEL_BOT) → SDL
In the arithmetic expression, “/” indicates inversion and “&” indicates logical product. By this calculation, DL0 = 1 and DL = 0, and “0” is set only to the latch circuit SDL corresponding to the lowermost memory cell. “1” is set in the other latch circuits SDL. As a result, 0 V is applied only to the bit line BL to which the first cell that has not passed verification is connected, and the other second and third cells, and the bit to which the non-write target cell and the write completion cell are connected. A voltage V1 is applied to the line BL. Then, the voltage VPGM1 is applied to the selected word line WL, and the “A” level data is programmed only in the first cell.
 (2)ステップ2
 次に演算回路40の各々は、第2プログラムのためのデータセットを実行する。第2プログラムは、第2セルに対してのみ行われるプログラムである。データセットにあたって演算回路40は、以下の論理演算を実行する。すなわち、 
 (DL0 & DL1) | (DL0 & /DL1 & SEL_BOT) | (/DL0 & DL1 & SEL_TOP) → SDL 
演算式において、“|”は論理和を示す。この演算により、第1セル、第3セル、及び非書き込み対象セルに対応するラッチ回路SDLに“1”がセットされる。換言すれば、第2セルに対応するラッチ回路SDLにのみ“0”がセットされる。この結果、ベリファイにパスしていない第2セルが接続されたビット線BLにのみ0Vが印加され、その他のビット線BLには電圧V1が印加される。そして、選択ワード線WLに電圧VPGM2が印加されて、第2セルにのみデータがプログラムされる。
(2) Step 2
Next, each of the arithmetic circuits 40 executes a data set for the second program. The second program is a program performed only on the second cell. In the data set, the arithmetic circuit 40 executes the following logical operation. That is,
(DL0 & DL1) | (DL0 & / DL1 & SEL_BOT) | (/ DL0 & DL1 & SEL_TOP) → SDL
In the arithmetic expression, “|” represents a logical sum. By this calculation, “1” is set in the latch circuit SDL corresponding to the first cell, the third cell, and the non-write target cell. In other words, “0” is set only in the latch circuit SDL corresponding to the second cell. As a result, 0 V is applied only to the bit line BL to which the second cell that has not passed verification is connected, and the voltage V1 is applied to the other bit lines BL. Then, the voltage VPGM2 is applied to the selected word line WL, and data is programmed only in the second cell.
 (3)ステップ3 
 次に演算回路40の各々は、第3プログラムのためのデータセットを実行する。第3プログラムは、第3セルに対してのみ行われるプログラムである。データセットにあたって演算回路40は、以下の論理演算を実行する。すなわち、 
 /(/DL0 & DL1 & SEL_TOP) → SDL 
この演算により、DL0=0でDL=1で、且つ最上層のメモリセルに対応するラッチ回路SDLにのみ“0”がセットされる。その他のラッチ回路SDLには“1”がセットされる。この結果、ベリファイにパスしていない第3セルが接続されたビット線BLにのみ0Vが印加され、その他の第1セル及び第2セル、並びに非書き込み対象セル及び書き込み完了セルが接続されたビット線BLには電圧V1が印加される。そして、選択ワード線WLに電圧VPGM3が印加されて、第3セルにのみ“C”レベルデータがプログラムされる。
(3) Step 3
Next, each of the arithmetic circuits 40 executes a data set for the third program. The third program is a program performed only for the third cell. In the data set, the arithmetic circuit 40 executes the following logical operation. That is,
/ (/ DL0 & DL1 & SEL_TOP) → SDL
As a result of this calculation, “0” is set only in the latch circuit SDL corresponding to the memory cell in the uppermost layer with DL0 = 0 and DL = 1. “1” is set in the other latch circuits SDL. As a result, 0 V is applied only to the bit line BL to which the third cell that has not passed verification is connected, and the other first cell and second cell, and the bit to which the non-write target cell and the write completion cell are connected. A voltage V1 is applied to the line BL. Then, the voltage VPGM3 is applied to the selected word line WL, and the “C” level data is programmed only in the third cell.
 (4)ステップ4 
 次に“A”レベルについてのベリファイ動作が実行される。すなわち、選択ワード線WLにベリファイレベルVfy_Aが印加された状態で、メモリセルトランジスタMTからデータが読み出される。そして、メモリセルトランジスタMTがオフすれば、すなわち閾値が“A”レベルに達していれば、ラッチ回路SDLには“1”が格納される。他方で、メモリセルトランジスタMTがオンすれば、すなわち閾値が“A”レベルに達していなければ、ラッチ回路SDLには“0”が格納される。
(4) Step 4
Next, a verify operation for the “A” level is executed. That is, data is read from the memory cell transistor MT with the verify level Vfy_A applied to the selected word line WL. If the memory cell transistor MT is turned off, that is, if the threshold value has reached the “A” level, “1” is stored in the latch circuit SDL. On the other hand, if the memory cell transistor MT is turned on, that is, if the threshold value has not reached the “A” level, “0” is stored in the latch circuit SDL.
 そして演算回路40は、以下の論理演算を実行する。すなわち、 
 (SDL & DL0 & /DL1) | DL1 → DL1 
上式において(DL0 & /DL1)は、“A”レベルが書き込まれるビット線BLにおいてのみ“1”となる。従って、(SDL & DL0 & /DL1)は、書き込みデータが“A”レベルであって、且つベリファイにパスしたビット線BLについてのみ“1”となる。その後、この演算結果と、もともとのDL1との論理和演算を行い、これをDL1にセットし直す。この結果、ラッチ回路DL0及びDL1のデータは以下のようになる。 
    “Ep”レベル(非書き込み):(1、1) 
    “A”レベル:(1、0/1) 
    “B”レベル:(0、0) 
    “C”レベル:(0、1) 
すなわち、最後の論理和演算により、“A”レベルに対応しないラッチ回路DL0及びDL1のデータは、オリジナルの値にセットされる。
The arithmetic circuit 40 performs the following logical operation. That is,
(SDL & DL0 & / DL1) | DL1 → DL1
In the above equation, (DL0 & / DL1) is “1” only in the bit line BL to which the “A” level is written. Therefore, (SDL & DL0 & / DL1) becomes "1" only for the bit line BL whose write data is at the "A" level and has passed verification. Thereafter, a logical sum operation is performed on the calculation result and the original DL1, and the result is set again in DL1. As a result, the data in the latch circuits DL0 and DL1 are as follows.
“Ep” level (non-write): (1, 1)
“A” level: (1, 0/1)
“B” level: (0, 0)
“C” level: (0, 1)
That is, the data of the latch circuits DL0 and DL1 that do not correspond to the “A” level is set to the original value by the final OR operation.
 次に演算回路40は、下記(1)式の論理演算を実行する。すなわち、 
 (DL0 & /DL1 & SEL_BOT)   (1) 
これにより、“A”レベルに対応し、且つ最下層に位置するメモリセルトランジスタMTのベリファイ結果が得られる。つまり、この演算結果が“0”になれば、当該カラムに対応する第1セルはベリファイにパスしていることが分かる。他方で、第1セルに対応し、ベリファイにフェイルしたカラムに対応する演算結果のみが“1”となる。
Next, the arithmetic circuit 40 executes the logical operation of the following equation (1). That is,
(DL0 & / DL1 & SEL_BOT) (1)
As a result, a verify result of the memory cell transistor MT corresponding to the “A” level and located in the lowermost layer is obtained. That is, if the calculation result is “0”, it can be seen that the first cell corresponding to the column has passed verification. On the other hand, only the operation result corresponding to the column corresponding to the first cell and failing to verify becomes “1”.
 よって、例えば制御部15は、演算結果が“1”となるビット数をカウントし、その数がある基準値以下(例えばECC回路におけるエラー訂正可能ビット数によって決まる)であれば、第1セルはベリファイパスしたと判断する。この場合、制御部15は信号COMP_A_BOTを発行し(COMP_A_BOT=“H”)、次のプログラムループから電圧VPGM1を印加しない。 Therefore, for example, the control unit 15 counts the number of bits for which the operation result is “1”, and if the number is equal to or less than a certain reference value (for example, determined by the number of error correctable bits in the ECC circuit), the first cell is Judge that the verification pass. In this case, the control unit 15 issues the signal COMP_A_BOT (COMP_A_BOT = “H”) and does not apply the voltage VPGM1 from the next program loop.
 引き続き演算回路40は、下記(2)式の論理演算を実行する。すなわち、
 (DL0 & /DL1 & (SEL_MID | SEL_TOP)) (2) 
これにより、“A”レベルに対応し、且つ最下層以外のレイヤに位置するメモリセルトランジスタMTのベリファイ結果が得られる。つまり、この演算結果が“0”になれば、当該カラムに対応するメモリセルトランジスタはベリファイにパスしていることが分かる。他方で、“A”レベルに対応し、且つ最下層以外のレイヤに位置するメモリセルトランジスタMTのうちでベリファイにフェイルしたものに対応する演算結果のみが“1”となる。
Subsequently, the arithmetic circuit 40 executes the logical operation of the following equation (2). That is,
(DL0 & / DL1 & (SEL_MID | SEL_TOP)) (2)
As a result, a verify result of the memory cell transistor MT corresponding to the “A” level and located in a layer other than the lowest layer is obtained. That is, when the calculation result is “0”, it is understood that the memory cell transistor corresponding to the column has passed verification. On the other hand, only the operation result corresponding to the verify failure among the memory cell transistors MT corresponding to the “A” level and located in a layer other than the lowest layer is “1”.
 よって、例えば制御部15は、演算結果が“1”となるビット数をカウントし、その数がある基準値以下であれば、最下層以外のレイヤに位置し、且つ“A”レベルを書き込むべきメモリセルトランジスタMTはベリファイにパスしたと判断する。 Thus, for example, the control unit 15 counts the number of bits for which the calculation result is “1”, and if the number is equal to or less than a certain reference value, the control unit 15 should be located in a layer other than the lowest layer and write the “A” level. It is determined that the memory cell transistor MT has passed verification.
 上記(1)式及び(2)式に基づくベリファイ結果が共にパスとなれば、“A”レベルを書き込むべき全てのメモリセルトランジスタMTへのプログラムが完了したことになる。よって制御部15は、信号COMP_A_MIDTOPを発行する(COMP_A_MIDTOP=“H”)。そして制御部15は、信号COMP_A_BOT及びCOMP_A_MIDTOPの両方が発行されると、次のプログラムループから“A”レベルのベリファイ動作を行わない。 If the verify results based on the above formulas (1) and (2) both pass, programming to all the memory cell transistors MT to which the “A” level is to be written is completed. Therefore, the control unit 15 issues the signal COMP_A_MIDTOP (COMP_A_MIDTOP = “H”). Then, when both the signals COMP_A_BOT and COMP_A_MIDTOP are issued, the control unit 15 does not perform the “A” level verify operation from the next program loop.
 (5)ステップ5 
 次に“B”レベルについてのベリファイ動作が実行される。すなわち、選択ワード線WLにベリファイレベルVfy_Bが印加された状態で、メモリセルトランジスタMTからデータが読み出される。そして、メモリセルトランジスタMTがオフすれば、すなわち閾値が“B”レベルに達していれば、ラッチ回路SDLには“1”が格納される。他方で、メモリセルトランジスタMTがオンすれば、すなわち閾値が“B”レベルに達していなければ、ラッチ回路SDLには“0”が格納される。
(5) Step 5
Next, a verify operation for the “B” level is executed. That is, data is read from the memory cell transistor MT in a state where the verify level Vfy_B is applied to the selected word line WL. If the memory cell transistor MT is turned off, that is, if the threshold value has reached the “B” level, “1” is stored in the latch circuit SDL. On the other hand, if the memory cell transistor MT is turned on, that is, if the threshold value has not reached the “B” level, “0” is stored in the latch circuit SDL.
 そして演算回路40は、以下の論理演算を同時に実行する。すなわち、 
 (SDL & /DL0 & /DL1) | DL0 → DL0 
 (SDL & /DL0 & /DL1) | DL1 → DL1 
上式において(/DL0 & /DL1)は、“B”レベルが書き込まれるビット線BLにおいてのみ“1”となる。従って、(SDL & /DL0 & /DL1)は、書き込みデータが“B”レベルであって、且つベリファイにパスしたビット線BLについてのみ“1”となる。その後、これらの演算結果と、もともとのDL0及びDL1との論理和演算を行い、これをDL0及びDL1にセットし直す。この結果、ラッチ回路DL0及びDL1のデータは以下のようになる。 
    “Ep”レベル(非書き込み):(1、1) 
    “A”レベル:(1、0/1) 
    “B”レベル:(0、0/1) 
    “C”レベル:(0、1) 
なお、“A”レベルに対応するラッチ回路DL0の値は、上記ステップ(4)において“0”または“1”にセットされ直している。
The arithmetic circuit 40 executes the following logical operations simultaneously. That is,
(SDL & / DL0 & / DL1) | DL0 → DL0
(SDL & / DL0 & / DL1) | DL1 → DL1
In the above equation, (/ DL0 & / DL1) is “1” only in the bit line BL to which the “B” level is written. Therefore, (SDL & / DL0 & / DL1) becomes "1" only for the bit line BL whose write data is at the "B" level and has passed verification. Thereafter, a logical sum operation between these calculation results and the original DL0 and DL1 is performed, and these are set in DL0 and DL1 again. As a result, the data in the latch circuits DL0 and DL1 are as follows.
“Ep” level (non-write): (1, 1)
“A” level: (1, 0/1)
“B” level: (0, 0/1)
“C” level: (0, 1)
Note that the value of the latch circuit DL0 corresponding to the “A” level is reset to “0” or “1” in step (4).
 次に演算回路40は、下記(3)式の論理演算を実行する。すなわち、 
 (/DL0 & /DL1)    (3) 
この演算結果が“0”になれば、“B”レベルが書き込まれるべきメモリセルトランジスタMTはベリファイにパスし、“1”になればベリファイにフェイルしていることが分かる。
Next, the arithmetic circuit 40 executes the logical operation of the following equation (3). That is,
(/ DL0 & / DL1) (3)
It can be seen that if the calculation result is “0”, the memory cell transistor MT to which the “B” level is to be written passes verification, and if it is “1”, the verification fails.
 よって、例えば制御部15は、演算結果が“1”となるビット数をカウントし、その数がある基準値以下であれば、“B”レベルプログラムはベリファイパスしたと判断する。この場合、制御回路は信号COMP_Bを発行し(COMP_B=“H”)、次のプログラムループから“B”レベルのベリファイ動作を行わない。 Therefore, for example, the control unit 15 counts the number of bits for which the calculation result is “1”, and determines that the “B” level program has passed the verify if the number is equal to or less than a certain reference value. In this case, the control circuit issues a signal COMP_B (COMP_B = “H”) and does not perform the “B” level verify operation from the next program loop.
 (6)ステップ6 
 次に“C”レベルについてのベリファイ動作が実行される。すなわち、選択ワード線WLにベリファイレベルVfy_Cが印加された状態で、メモリセルトランジスタMTからデータが読み出される。そして、メモリセルトランジスタMTがオフすれば、すなわち閾値が“C”レベルに達していれば、ラッチ回路SDLには“1”が格納される。他方で、メモリセルトランジスタMTがオンすれば、すなわち閾値が“C”レベルに達していなければ、ラッチ回路SDLには“0”が格納される。ステップ6の動作は、基本的には読み出し対象データが異なるだけで、ステップ4と同様である。
(6) Step 6
Next, a verify operation for the “C” level is executed. That is, data is read from the memory cell transistor MT in a state where the verify level Vfy_C is applied to the selected word line WL. If the memory cell transistor MT is turned off, that is, if the threshold value has reached the “C” level, “1” is stored in the latch circuit SDL. On the other hand, if the memory cell transistor MT is turned on, that is, if the threshold value has not reached the “C” level, “0” is stored in the latch circuit SDL. The operation of step 6 is basically the same as that of step 4 except that the data to be read is different.
 まず演算回路40は、以下の論理演算を実行する。すなわち、 
 (SDL & /DL0 & DL1) | DL0 → DL0 
上式において(/DL0 & DL1)は、“C”レベルが書き込まれるビット線BLにおいてのみ“1”となる。従って、(SDL & /DL0 & DL1)は、書き込みデータが“C”レベルであって、且つベリファイにパスしたビット線BLについてのみ“1”となる。その後、この演算結果と、もともとのDL0との論理和演算を行い、これをDL0にセットし直す。この結果、ラッチ回路DL0及びDL1のデータは以下のようになる。 
    “Ep”レベル(非書き込み):(1、1) 
    “A”レベル:(1、0/1) 
    “B”レベル:(0/1、0/1) 
    “C”レベル:(0/1、1)。
First, the arithmetic circuit 40 executes the following logical operation. That is,
(SDL & / DL0 & DL1) | DL0 → DL0
In the above equation, (/ DL0 & DL1) becomes “1” only in the bit line BL to which the “C” level is written. Therefore, (SDL & / DL0 & DL1) becomes "1" only for the bit line BL whose write data is at the "C" level and has passed verification. Thereafter, a logical sum operation is performed between the operation result and the original DL0, and the result is reset to DL0. As a result, the data in the latch circuits DL0 and DL1 are as follows.
“Ep” level (non-write): (1, 1)
“A” level: (1, 0/1)
“B” level: (0/1, 0/1)
“C” level: (0/1, 1).
 次に演算回路40は、下記(4)式の論理演算を実行する。すなわち、 
 (/DL0 & DL1 & SEL_TOP)   (4) 
これにより、“C”レベルに対応し、且つ最上層に位置するメモリセルトランジスタMT(第3セル)のベリファイ結果が得られる。つまり、この演算結果が“0”になれば、当該カラムに対応する第3セルはベリファイにパスしていることが分かる。他方で、第3セルに対応し、ベリファイにフェイルしたカラムに対応する演算結果のみが“1”となる。
Next, the arithmetic circuit 40 performs a logical operation of the following equation (4). That is,
(/ DL0 & DL1 & SEL_TOP) (4)
As a result, a verify result of the memory cell transistor MT (third cell) corresponding to the “C” level and located in the uppermost layer is obtained. That is, if the calculation result is “0”, it can be seen that the third cell corresponding to the column has passed verification. On the other hand, only the operation result corresponding to the third cell and corresponding to the column failed in the verification is “1”.
 よって、例えば制御部15は、演算結果が“1”となるビット数をカウントし、その数がある基準値以下であれば、第3セルはベリファイパスしたと判断する。この場合、制御回路は信号COMP_C_TOPを発行し(COMP_C_TOP=“H”)、次のプログラムループから電圧VPGM3を印加しない。 Thus, for example, the control unit 15 counts the number of bits for which the calculation result is “1”, and determines that the third cell has passed the verification if the number is equal to or less than a certain reference value. In this case, the control circuit issues a signal COMP_C_TOP (COMP_C_TOP = “H”) and does not apply the voltage VPGM3 from the next program loop.
 引き続き演算回路40は、下記(5)式の論理演算を実行する。すなわち、
 (/DL0 & DL1 & (SEL_MID | SEL_BOT)) (5) 
これにより、“C”レベルに対応し、且つ最上層以外のレイヤに位置するメモリセルトランジスタMTのベリファイ結果が得られる。つまり、この演算結果が“0”になれば、当該カラムに対応するメモリセルトランジスタはベリファイにパスしていることが分かる。他方で、“C”レベルに対応し、且つ最上層以外のレイヤに位置するメモリセルトランジスタMTのうちでベリファイにフェイルしたものに対応する演算結果のみが“1”となる。
Subsequently, the arithmetic circuit 40 executes the logical operation of the following equation (5). That is,
(/ DL0 & DL1 & (SEL_MID | SEL_BOT)) (5)
As a result, a verify result of the memory cell transistor MT corresponding to the “C” level and located in a layer other than the uppermost layer is obtained. That is, when the calculation result is “0”, it is understood that the memory cell transistor corresponding to the column has passed verification. On the other hand, only the operation result corresponding to the verify failure among the memory cell transistors MT corresponding to the “C” level and located in a layer other than the uppermost layer is “1”.
 よって、例えば制御部15は、演算結果が“1”となるビット数をカウントし、その数がある基準値以下であれば、最上層以外のレイヤに位置するメモリセルトランジスタMTはベリファイにパスしたと判断する。 Therefore, for example, the control unit 15 counts the number of bits whose operation result is “1”, and if the number is equal to or less than a certain reference value, the memory cell transistor MT located in a layer other than the uppermost layer has passed verification. Judge.
 上記(4)式及び(5)式に基づくベリファイ結果がパスとなれば、“C”レベルを書き込むべき全てのメモリセルトランジスタMTへのプログラムが完了したことになる。よって制御部15は、信号COMP_C_MIDBOTを発行する(COMP_C_MIDBOT=“H”)。そして制御部15は、信号COMP_C_TOP及びCOMP_C_MIDBOTの両方が発行されると、次のプログラムループから“C”レベルのベリファイ動作を行わない。 If the verify result based on the above formulas (4) and (5) is a pass, programming to all the memory cell transistors MT to which the “C” level is to be written is completed. Therefore, the control unit 15 issues the signal COMP_C_MIDBOT (COMP_C_MIDBOT = “H”). When both signals COMP_C_TOP and COMP_C_MIDBOT are issued, the control unit 15 does not perform the “C” level verify operation from the next program loop.
 (7)ステップ7 
 制御部15は、以上の動作を繰り返し、5つの制御信号COMP_A_BOT、COMP_A_MIDTOP、COMP_B、COMP_C_TOP、及びCOMP_C_MIDTOPの全てが“H”レベルになると、プログラムは正常に完了(プログラムパス)したものとして、書き込み動作を完了させる。いずれかの制御信号が“L”レベルのまま、プログラムループ数が最大値に達すると、制御部15は、プログラムは正常に完了出来なかった(プログラムフェイル)ものとして、書き込み動作を完了する。
(7) Step 7
The control unit 15 repeats the above operation, and when all of the five control signals COMP_A_BOT, COMP_A_MIDTOP, COMP_B, COMP_C_TOP, and COMP_C_MIDTOP become “H” level, it is assumed that the program is normally completed (program pass), and the write operation is performed. To complete. If the number of program loops reaches the maximum value while any of the control signals remains at “L” level, the control unit 15 assumes that the program has not been completed normally (program fail) and completes the write operation.
 5.3 本実施形態に係る効果 
 上記第1実施形態で説明した書き込み方法は、例えば本実施形態に係る構成によって実現出来る。なお、第2乃至第4実施形態も同様であり、制御信号SEL_BOT、SEL_MID、SEL_TOP、DL0、及びDL1を用いた演算により、ビット線BLの電位を適切に制御出来る。
5.3 Effects of the present embodiment
The writing method described in the first embodiment can be realized by the configuration according to the present embodiment, for example. The same applies to the second to fourth embodiments, and the potential of the bit line BL can be appropriately controlled by calculation using the control signals SEL_BOT, SEL_MID, SEL_TOP, DL0, and DL1.
 6.第6実施形態 
 次に、第6実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第1乃至第5実施形態のいずれかに係る半導体記憶装置1を備えたメモリシステムに関するものである。
6). Sixth embodiment
Next, a semiconductor memory device according to a sixth embodiment will be described. The present embodiment relates to a memory system including the semiconductor memory device 1 according to any one of the first to fifth embodiments.
 6.1 メモリシステムの構成について 
 図24は、本実施形態に係るメモリシステムのブロック図である。図示するようにメモリシステムは、第1乃至第5実施形態で説明した半導体記憶装置1と、半導体記憶装置1を制御するコントローラ2とを備えている。
6.1 Memory system configuration
FIG. 24 is a block diagram of the memory system according to the present embodiment. As illustrated, the memory system includes the semiconductor memory device 1 described in the first to fifth embodiments, and a controller 2 that controls the semiconductor memory device 1.
 コントローラ2は、図示せぬホスト機器からの命令に応答して、NAND型フラッシュメモリ1に対して読み出し、書き込み、消去等を命令する。また、NAND型フラッシュメモリ1のメモリ空間を管理する。コントローラ2とNAND型フラッシュメモリ1は、例えば同一の半導体装置を構成しても良い。またメモリシステム1が1つの装置であっても良く、その例としてはSDTMカードのようなメモリカードや、SSD(solid state drive)等が挙げられる。またメモリシステム1は、NAND型フラッシュメモリ1及びコントローラ2がパーソナルコンピュータに内蔵された構成であっても良いし、NAND型フラッシュメモリ1が搭載されているアプリケーションであれば限定されるものではない。 In response to a command from a host device (not shown), the controller 2 commands the NAND flash memory 1 to read, write, erase, and the like. The memory space of the NAND flash memory 1 is managed. For example, the controller 2 and the NAND flash memory 1 may constitute the same semiconductor device. The memory system 1 may be a single device, and examples thereof include a memory card such as an SD TM card, an SSD (solid state drive), and the like. The memory system 1 may have a configuration in which the NAND flash memory 1 and the controller 2 are built in a personal computer, and is not limited as long as it is an application in which the NAND flash memory 1 is mounted.
 コントローラ2は、ホストインターフェイス回路210、内蔵メモリ(RAM)220、プロセッサ(CPU)230、バッファメモリ240、NANDインターフェイス回路250、及びECC回路260を備えている。 The controller 2 includes a host interface circuit 210, a built-in memory (RAM) 220, a processor (CPU) 230, a buffer memory 240, a NAND interface circuit 250, and an ECC circuit 260.
 ホストインターフェイス回路210は、コントローラバスを介してホスト機器と接続され、ホスト機器との通信を司る。そして、ホスト機器から受信した命令及びデータを、それぞれCPU230及びバッファメモリ240に転送する。またCPU230の命令に応答して、バッファメモリ240内のデータをホスト機器へ転送する。 The host interface circuit 210 is connected to the host device via the controller bus and manages communication with the host device. Then, the command and data received from the host device are transferred to the CPU 230 and the buffer memory 240, respectively. In response to a command from the CPU 230, the data in the buffer memory 240 is transferred to the host device.
 NANDインターフェイス回路250は、NANDバスを介してNAND型フラッシュメモリ1と接続され、NAND型フラッシュメモリ1との通信を司る。そして、CPU230から受信した命令をNAND型フラッシュメモリ1に転送し、また書き込み時にはバッファメモリ240内の書き込みデータをNAND型フラッシュメモリ1へ転送する。更に読み出し時には、NAND型フラッシュメモリ1から読み出されたデータをバッファメモリ240へ転送する。 The NAND interface circuit 250 is connected to the NAND flash memory 1 via the NAND bus and manages communication with the NAND flash memory 1. Then, the command received from the CPU 230 is transferred to the NAND flash memory 1, and the write data in the buffer memory 240 is transferred to the NAND flash memory 1 at the time of writing. Further, at the time of reading, the data read from the NAND flash memory 1 is transferred to the buffer memory 240.
 CPU230は、コントローラ2全体の動作を制御する。例えば、ホスト機器から書き込み読み出し命令を受信した際には、それに応答して、NANDインターフェイスに基づく書き込み命令を発行する。読み出し及び消去の際も同様である。またCPU230は、ウェアレベリング等、NAND型フラッシュメモリ1を管理するための様々な処理を実行する。更にCPU230は、各種の演算を実行する。例えば、データの暗号化処理やランダマイズ処理等を実行する。ECC回路260は、データの誤り訂正(ECC:Error Checking and Correcting)処理を実行する。すなわちECC回路260は、データの書き込み時には書き込みデータに基づいてパリティを生成し、読み出し時にはパリティからシンドロームを生成して誤りを検出し、この誤りを訂正する。なお、CPU230がECC回路260の機能を有していても良い。 CPU 230 controls the entire operation of the controller 2. For example, when a write / read command is received from the host device, a write command based on the NAND interface is issued in response thereto. The same applies to reading and erasing. The CPU 230 executes various processes for managing the NAND flash memory 1 such as wear leveling. Further, the CPU 230 executes various calculations. For example, data encryption processing, randomization processing, and the like are executed. The ECC circuit 260 executes a data error correction (ECC: Error Checking andrectCorrecting) process. That is, the ECC circuit 260 generates a parity based on the write data at the time of data writing, generates a syndrome from the parity at the time of reading, detects an error, and corrects this error. Note that the CPU 230 may have the function of the ECC circuit 260.
 内蔵メモリ220は、例えばDRAM等の半導体メモリであり、CPU230の作業領域として使用される。そして内蔵メモリ220は、NAND型フラッシュメモリ1を管理するためのファームウェアや、各種の管理テーブル等を保持する。 The built-in memory 220 is a semiconductor memory such as a DRAM, and is used as a work area for the CPU 230. The built-in memory 220 holds firmware for managing the NAND flash memory 1 and various management tables.
 6.2 コントローラの動作について 
 次に、本実施形態に係るコントローラ2の動作について、特に書き込み動作について説明する。コントローラ2は、NAND型フラッシュメモリ1を、第1モード及び第2モードの2つのモードの2つの書き込みモードでデータを書き込むことが出来る。
6.2 Controller operation
Next, the operation of the controller 2 according to the present embodiment, particularly the write operation will be described. The controller 2 can write data into the NAND flash memory 1 in two write modes, ie, the first mode and the second mode.
 図25は、第1モードでデータを書き込む際の、NAND型フラッシュメモリ1とコントローラ2との間で送受信される信号のタイミングチャートである。コントローラ2は、チップイネーブル信号/CE、アドレスラッチイネーブル信号ALE、コマンドラッチイネーブル信号CLE、ライトイネーブル信号/WE、リードイネーブル信号/REをNAND型フラッシュメモリ1へ送信する。またNAND型フラッシュメモリ1は、レディ/ビジー信号/R/Bをコントローラ2へ送信する。入出力信号I/O1~I/O8は、コントローラ1とNAND型フラッシュメモリとの間で送受信される例えば8ビットのデータである。 FIG. 25 is a timing chart of signals transmitted and received between the NAND flash memory 1 and the controller 2 when writing data in the first mode. The controller 2 transmits a chip enable signal / CE, an address latch enable signal ALE, a command latch enable signal CLE, a write enable signal / WE, and a read enable signal / RE to the NAND flash memory 1. The NAND flash memory 1 transmits a ready / busy signal / R / B to the controller 2. The input / output signals I / O1 to I / O8 are, for example, 8-bit data transmitted / received between the controller 1 and the NAND flash memory.
 チップイネーブル信号/CEは、NAND型フラッシュメモリ1をイネーブルにするための信号であり、lowレベルでアサートされる。アドレスラッチイネーブル信号ALEは、入出力信号I/O1~I/O8がアドレスであることを示す信号であり、highレベルでアサートされる。コマンドラッチイネーブル信号CLEは、入出力信号I/O1~I/O8がコマンドであることを示す信号であり、highレベルでアサートされる。ライトイネーブル信号/WEは、NAND型フラッシュメモリ1に各データを書き込むための信号であり、lowレベルでアサートされる。リードイネーブル信号/REは、NAND型フラッシュメモリ1から各データを読み出すための信号であり、lowレベルでアサートされる。レディ/ビジー信号/R/Bは、NAND型フラッシュメモリ1がビジー状態であるか否か(信号を受信可能な状態か否か)を示す信号であり、ビジー状態の際にlowレベルとなる。 The chip enable signal / CE is a signal for enabling the NAND flash memory 1 and is asserted at a low level. The address latch enable signal ALE is a signal indicating that the input / output signals I / O1 to I / O8 are addresses, and is asserted at a high level. The command latch enable signal CLE is a signal indicating that the input / output signals I / O1 to I / O8 are commands, and is asserted at a high level. The write enable signal / WE is a signal for writing each data in the NAND flash memory 1, and is asserted at a low level. The read enable signal / RE is a signal for reading each data from the NAND flash memory 1 and is asserted at a low level. The ready / busy signal / R / B is a signal indicating whether or not the NAND flash memory 1 is in a busy state (whether or not a signal can be received), and becomes a low level in the busy state.
 図示するようにコントローラ1は、第1モードでデータを書き込む際には、第1書き込みコマンド80Hを発行し、これをNAND型フラッシュメモリ1の図示せぬコマンドレジスタに書き込む。コマンド80Hは、これから書き込み動作を実行することを通知するためのコマンドである。その後、カラムアドレス(ビット線を指定するアドレス)及びロウアドレス(ワード線(ページ)を指定するアドレス)をアドレスレジスタに書き込む。その後、プログラムすべきデータD0~D527を転送する。最後にコントローラ2は、コマンド10Hをコマンドレジスタに書き込む。このコマンドに応答してNAND型フラッシュメモリ1の制御部15は、第1乃至第5実施形態で説明した方法により、データを書き込む。 As shown in the figure, when writing data in the first mode, the controller 1 issues a first write command 80H and writes it in a command register (not shown) of the NAND flash memory 1. The command 80H is a command for notifying that a writing operation will be executed from now on. After that, the column address (address specifying the bit line) and the row address (address specifying the word line (page)) are written in the address register. Thereafter, data D0 to D527 to be programmed are transferred. Finally, the controller 2 writes the command 10H into the command register. In response to this command, the control unit 15 of the NAND flash memory 1 writes data by the method described in the first to fifth embodiments.
 図26は、第2モードでデータを書き込む際の、NAND型フラッシュメモリ1とコントローラ2との間で送受信される信号のタイミングチャートである。第1モードと異なる点は、第1書き込みコマンド80Hの前に、コントローラ2がプリフィックスコマンドを発行して、これをコマンドレジスタに書き込むことである。プリフィックスコマンドを受信することでNAND型フラッシュメモリは、第2モードでデータを書き込む。第2モードでのデータの書き込みは、第1実施形態で説明した図12の方法によって実行される。 FIG. 26 is a timing chart of signals transmitted and received between the NAND flash memory 1 and the controller 2 when writing data in the second mode. The difference from the first mode is that the controller 2 issues a prefix command and writes it to the command register before the first write command 80H. By receiving the prefix command, the NAND flash memory writes data in the second mode. Data writing in the second mode is executed by the method of FIG. 12 described in the first embodiment.
 第2モードでは、プログラム電圧VPGMは第1~第3セルに応じて分類されることなく、ページ内において“A”~“C”レベルに書き込むべきメモリセルの全てに対してプログラムが実行される。すなわち、VPGMは図12に示すように、単純にステップアップされるのみである。図12の場合には、1回のプログラムループにおいてVPGMは1回だけ印加される場合を例に示しているが、2回以上連続して印加されても良い。但し、この2回以上印加されるVPGMは、メモリセルの位置(アドレス)や書き込みデータに応じたものでは無く、書き込み対象セルの全てにデータをプログラムするために使用される。すなわち第2モードであると、1回のプログラムループにおけるVPGMの印加回数は、ベリファイ電圧の印加回数と同じ、またはそれ未満である。 In the second mode, the program voltage VPGM is not classified according to the first to third cells, and the program is executed for all the memory cells to be written at the “A” to “C” level in the page. . That is, the VPGM is simply stepped up as shown in FIG. In the case of FIG. 12, a case where VPGM is applied only once in one program loop is shown as an example, but it may be applied continuously twice or more. However, the VPGM applied twice or more does not correspond to the position (address) of the memory cell or the write data, and is used for programming data in all the write target cells. That is, in the second mode, the number of VPGM applications in one program loop is the same as or less than the number of verify voltage applications.
 すなわち、第1実施形態で説明したように、あるプログラム電圧の印加が停止された際には、同時にそれに対応したベリファイ電圧の印加も停止される。 That is, as described in the first embodiment, when the application of a certain program voltage is stopped, the application of the verify voltage corresponding to it is also stopped.
 6.3 本実施形態に係る効果 
 本実施形態に係る構成であると、書き込み速度及び消費電力を、ユーザにニーズに応じて変えることが出来る。
6.3 Effects of this embodiment
With the configuration according to the present embodiment, the writing speed and power consumption can be changed according to the user's needs.
 すなわち、第1モードであると、NAND型フラッシュメモリ1内の昇圧回路は、高電圧VPGM3を生成した後に低電圧VPGM1を発生する。従って、ベリファイ動作中に昇圧回路の放電が必要になり、放電の後に再び低い電圧VPGM1からの昇圧動作が必要となる。すなわち、昇圧回路において充放電を繰り返すため、消費電流が増加する。その代わり、第1乃至第5実施形態で説明したように高速な書き込み動作が可能となる。 That is, in the first mode, the booster circuit in the NAND flash memory 1 generates the low voltage VPGM1 after generating the high voltage VPGM3. Accordingly, the booster circuit needs to be discharged during the verify operation, and after the discharge, the boost operation from the low voltage VPGM1 is required again. That is, current consumption increases because charging and discharging are repeated in the booster circuit. Instead, a high-speed write operation is possible as described in the first to fifth embodiments.
 他方で第2モードであると、昇圧電圧は単純にVPGMをステップアップすれば良く、昇圧電圧における放電が不要であり、ベリファイ動作中には電圧配線をフローティングにしておけば良い。従って、第1モードに比べて書き込み速度は劣るが、消費電流を低減出来る。 On the other hand, in the second mode, the boosted voltage simply needs to step up VPGM, discharge at the boosted voltage is unnecessary, and the voltage wiring may be left floating during the verify operation. Therefore, although the writing speed is inferior to that in the first mode, the current consumption can be reduced.
 そして本実施形態では、コントローラ2からのコマンドによって、第1モードと第2モードとを切り替えることが出来る。例えば、メモリセルが2ビット以上のデータを保持する(MLC:multi-level cell)製品として出荷されているNAND型フラッシュメモリ1に対して、一時バッファとしてSLC(single-level cell: メモリセルが1ビットデータを保持する)動作させたい場合や、あるいは重要なデータを高信頼に書き込むためにSLC動作させたい場合等には、第2モードを採用することが好ましい。 In the present embodiment, the first mode and the second mode can be switched by a command from the controller 2. For example, in contrast to the NAND flash memory 1 that is shipped as a product (MLC: multi-level cell) in which the memory cell holds data of 2 bits or more, SLC (single-level cell: 1 memory cell is 1 The second mode is preferably employed when it is desired to operate (holding bit data) or when it is desired to perform SLC operation for writing important data with high reliability.
 このように本実施形態であると、高速動作可能であるが消費電力が比較的高いモードと、低速動作であるが低消費電力のモードとを切り替えてNAND型フラッシュメモリ1を使用することが出来る。 As described above, according to the present embodiment, the NAND flash memory 1 can be used by switching between a mode in which high-speed operation is possible but relatively high power consumption and a mode in which low-speed operation is low but low power consumption. .
 7.変形例等 
 上記のように、実施形態に係る半導体記憶装置1は、複数のメモリセルMTと、ワード線WLと、ビット線BLと、ロウデコーダ11とを備える。メモリセルは、半導体基板上に積層される。ワード線WLは、メモリセルのゲートに接続される。ビット線BLは、メモリセルの電流経路に電気的に接続され、データを転送可能である。ロウデコーダ11は、ワード線に電圧を印加する。メモリセルMTへのデータの書き込みは、プログラム動作とベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行される(図11)。1回のプログラムループにおいて前記ロウデコーダは、プログラム電圧をM回(Mは1以上の自然数)、選択ワード線に対して順次印加し(図11のt5~t6, t7~t8)、引き続きベリファイ電圧をN回(NはMより大きく、2以上の自然数)、前記選択ワード線に対して順次印加する(図11のt6~t7, t7以降)。
7). Modifications etc.
As described above, the semiconductor memory device 1 according to the embodiment includes the plurality of memory cells MT, the word lines WL, the bit lines BL, and the row decoder 11. Memory cells are stacked on a semiconductor substrate. The word line WL is connected to the gate of the memory cell. The bit line BL is electrically connected to the current path of the memory cell and can transfer data. The row decoder 11 applies a voltage to the word line. Data writing to the memory cell MT is executed by repeating a program loop including a program operation and a verify operation a plurality of times (FIG. 11). In one program loop, the row decoder applies the program voltage M times (M is a natural number of 1 or more), sequentially applies the selected word line (t5 to t6, t7 to t8 in FIG. 11), and then continues the verify voltage. Are applied sequentially to the selected word line N times (N is larger than M and is a natural number of 2 or more) (t6 to t7, t7 and after in FIG. 11).
 言い換えるならば、メモリセルへのデータの書き込みは、選択ワード線にプログラム電圧を印加するプログラム動作と、ベリファイ電圧を印加するベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行される。ロウデコーダ11は、連続する2回のプログラムループ(図11のt3~t5とt5~t6)間において、ベリファイ電圧の印加回数は不変としつつ、2回目のプログラムループ(図11のt5~t6)におけるプログラム電圧の印加回数(3回: VPGM1-VPGM3)を、1回目のプログラムループ(図11のt3~t5)よりも減少させる(2回: VPGM2,VPGM3)。 In other words, data writing to the memory cell is executed by repeating a program loop including a program operation for applying a program voltage to a selected word line and a verify operation for applying a verify voltage a plurality of times. The row decoder 11 performs the second program loop (t5 to t6 in FIG. 11) while keeping the number of application of the verify voltage unchanged between two consecutive program loops (t3 to t5 and t5 to t6 in FIG. 11). The number of application of the program voltage at (3 times: VPGM1-VPGM3) is decreased from the first program loop (t3 to t5 in FIG. 11) (2 times: VPGM2, VPGM3).
 本構成により、プログラムループ回数を削減し、データの書き込み速度を向上出来る。但し、実施形態は上記説明した形態に限定されるものではなく、種々の変形が可能である。例えば、上記実施形態では、VPGM1及びVPGM3の印加がVPGM2の印加よりも先に終了する場合を例に説明したが、VPGM2の印加がVPGM1及び/またはVPGM3の印加よりも先に終了する場合があっても良い。 This configuration can reduce the number of program loops and improve the data writing speed. However, the embodiment is not limited to the embodiment described above, and various modifications are possible. For example, in the above-described embodiment, the case where the application of VPGM1 and VPGM3 ends before the application of VPGM2 has been described as an example, but the application of VPGM2 may end before the application of VPGM1 and / or VPGM3. May be.
 また上記実施形態では、第1セルを、最下層のレイヤに位置し、且つ“A”レベルにプログラムされるセルと定義した。しかし第1セルは、第1層目のレイヤから第N層目(Nは2以上の自然数)に位置するセルであっても良い。また、メモリセルが4ビット以上のデータ(“Ep”、“A”、“B”、“C”、“D”、…“O”レベルの16値)を保持可能な場合、第1セルは、“A”レベルから例えば“C”レベルの範囲にプログラムされるセルであっても良い。第3セルについても同様である。すなわち第3セルは、第N+M層目(Mは4以上の自然数)のレイヤから第L層目(Lは6以上の自然数)に位置するセルであっても良く、また例えば“L”レベルから“O”レベルの範囲にプログラムされるセルであっても良い。 In the above embodiment, the first cell is defined as a cell that is located in the lowest layer and is programmed to the “A” level. However, the first cell may be a cell located from the first layer to the Nth layer (N is a natural number of 2 or more). If the memory cell can hold data of 4 bits or more (“Ep”, “A”, “B”, “C”, “D”,..., “16” levels), the first cell is , A cell programmed in a range from “A” level to “C” level, for example. The same applies to the third cell. That is, the third cell may be a cell located from the (N + M) th layer (M is a natural number of 4 or more) to the Lth layer (L is a natural number of 6 or more). It may be a cell programmed in the range of “O” level.
 更には、上記第1実施形態では、プログラムパルスを3種類に分類する場合を例に説明した(VPGM1~VPGM3)。しかし、4種類以上に分類して、この4種類以上のパルスを1回のプログラムループで順次印加するようにしても良い。 Furthermore, in the first embodiment, the case where the program pulses are classified into three types has been described as an example (VPGM1 to VPGM3). However, it may be classified into four or more types, and these four or more types of pulses may be sequentially applied in one program loop.
 更に、上記第4実施形態のコンセプトは、第3実施形態に適用することも出来る。すなわち第3実施形態で説明した図16において、電圧VPGM2bの代わりにVPGM3を印加しつつ、第2セルが接続されたビット線にVQPWを印加しても良い。 Furthermore, the concept of the fourth embodiment can be applied to the third embodiment. That is, in FIG. 16 described in the third embodiment, V QPW may be applied to the bit line connected to the second cell while applying VPGM3 instead of the voltage VPGM2b.
 更に、メモリセルアレイ10の構造は、図2乃至図6で説明した構成に限らない。上記実施形態では、図4に示すように、奇数番目のストリンググループGR1のビット線コンタクトBCがメモリセルアレイ10の左側に集められ、偶数番目のストリンググループGR2のビット線コンタクトBCがメモリセルアレイ10の右側に集められて配置される場合を例に説明した。しかし、これらのビット線コンタクトBCが共に右側、または左側に集められて配置されても良い。 Furthermore, the structure of the memory cell array 10 is not limited to the configuration described with reference to FIGS. In the above embodiment, as shown in FIG. 4, the bit line contacts BC of the odd-numbered string groups GR1 are collected on the left side of the memory cell array 10, and the bit line contacts BC of the even-numbered string groups GR2 are on the right side of the memory cell array 10. The case where they are collected and arranged is described as an example. However, these bit line contacts BC may be arranged together on the right side or the left side.
 更に上記実施形態は、データの書き込み時に同時に選択されるメモリセルの集合であるページ内において、データの書き込み速度にばらつきを有する構成に適用出来、NAND型フラッシュメモリに限らず、記憶装置全般に適用出来る。 Furthermore, the above-described embodiment can be applied to a configuration in which data writing speed varies within a page, which is a set of memory cells that are simultaneously selected at the time of data writing, and is applicable not only to NAND flash memories but also to storage devices in general. I can do it.
 本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。 Although several embodiments of the present invention have been described, these embodiments are presented as examples and are not intended to limit the scope of the invention. These embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the spirit of the invention. These embodiments and their modifications are included in the scope and gist of the invention, and are also included in the invention described in the claims and the equivalents thereof.
 10…メモリセルアレイ、11…ロウデコーダ、12…センスアンプモジュール、13…演算モジュール、14…データラッチモジュール、15…制御部、20…半導体基板、21、22-1~22-4、25~27…絶縁膜、23-1~23-3、28…半導体層、24…フィン型積層構造 DESCRIPTION OF SYMBOLS 10 ... Memory cell array, 11 ... Row decoder, 12 ... Sense amplifier module, 13 ... Arithmetic module, 14 ... Data latch module, 15 ... Control part, 20 ... Semiconductor substrate, 21, 22-1 to 22-4, 25-27 ... Insulating film, 23-1 to 23-3, 28 ... Semiconductor layer, 24 ... Fin type laminated structure

Claims (24)

  1.  半導体基板上に積層された複数のメモリセルと、
     前記メモリセルのゲートに接続されたワード線と、
     前記メモリセルの電流経路に電気的に接続され、データを転送可能なビット線と、
     前記ワード線に電圧を印加するロウデコーダと
     を具備し、前記メモリセルへのデータの書き込みは、プログラム動作とベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行され、
     1回のプログラムループにおいて前記ロウデコーダは、プログラム電圧をM回(Mは1以上の自然数)、選択ワード線に対して順次印加し、引き続きベリファイ電圧をN回(NはMより大きく、2以上の自然数)、前記選択ワード線に対して順次印加する
     ことを特徴とする半導体記憶装置。
    A plurality of memory cells stacked on a semiconductor substrate;
    A word line connected to the gate of the memory cell;
    A bit line electrically connected to the current path of the memory cell and capable of transferring data;
    A row decoder for applying a voltage to the word line, and data writing to the memory cell is executed by repeating a program loop including a program operation and a verify operation a plurality of times,
    In one program loop, the row decoder sequentially applies a program voltage to the selected word line M times (M is a natural number of 1 or more), and subsequently applies a verify voltage N times (N is greater than M and 2 or more). The natural number) is sequentially applied to the selected word line.
  2.  前記データは、1回の前記プログラムループにおいて、半導体基板上に積層された複数のメモリセルに対して一括してプログラムされる
     ことを特徴とする請求項1記載の半導体記憶装置。
    The semiconductor memory device according to claim 1, wherein the data is programmed to a plurality of memory cells stacked on a semiconductor substrate in one program loop.
  3.  前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最下層に位置するメモリセルがプログラム対象とされ、少なくとも最上層に位置するメモリセルはプログラム非対象とされる
     ことを特徴とする請求項2記載の半導体記憶装置。
    When any one of the M times of the program voltage is applied to the selected word line, a memory cell located in the lowest layer among the plurality of stacked memory cells is set as a program target, and at least in the uppermost layer. The semiconductor memory device according to claim 2, wherein the memory cell located is not programmed.
  4.  前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最上層に位置するメモリセルがプログラム対象とされ、少なくとも最下層に位置するメモリセルはプログラム非対象とされる
     ことを特徴とする請求項2記載の半導体記憶装置。
    When any one of the M times of the program voltage is applied to the selected word line, a memory cell located in the uppermost layer among the plurality of stacked memory cells is set as a program target, and at least in the lowermost layer. The semiconductor memory device according to claim 2, wherein the memory cell located is not programmed.
  5.  前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、第1メモリセル及び第2メモリセルの両方がプログラム対象とされ、
     前記第1、第2メモリセルのチャネルには、互いに異なる第1及び第2電圧がそれぞれ与えられる
     ことを特徴とする請求項2記載の半導体記憶装置。
    When one of the M program voltages is applied to the selected word line, both the first memory cell and the second memory cell are targeted for programming,
    The semiconductor memory device according to claim 2, wherein first and second voltages different from each other are respectively applied to channels of the first and second memory cells.
  6.  請求項1記載の半導体記憶装置と、
     前記半導体記憶装置を制御するコントローラと
     を具備し、前記半導体記憶装置は、第1書き込みモードと第2書き込みモードとを備え、
     前記第1書き込みモードでは、いずれかのプログラムループにおいて前記ロウデコーダが、プログラム電圧をM回、選択ワード線に対して順次印加し、引き続きベリファイ電圧をN回、前記選択ワード線に対して順次印加し、
     前記第2書き込みモードでは、いずれのプログラムループにおいても、ベリファイ電圧の印加回数は前記プログラム電圧の印加回数と同じか、それ未満の回数である
     ことを特徴とするメモリシステム。
    A semiconductor memory device according to claim 1;
    A controller for controlling the semiconductor memory device, the semiconductor memory device comprising a first write mode and a second write mode,
    In the first write mode, in any program loop, the row decoder sequentially applies a program voltage to the selected word line M times, and then sequentially applies a verify voltage to the selected word line N times. And
    In the second write mode, the number of times that the verify voltage is applied is equal to or less than the number of times that the program voltage is applied in any program loop.
  7.  半導体基板上に複数のメモリセルが積層された半導体記憶装置のデータ書き込み方法であって、
     選択ワード線にプログラム電圧をM回(Mは1以上の自然数)、順次印加することと、
     前記プログラム電圧を印加することに引き続き、前記選択ワード線にベリファイ電圧をN回(NはMより大きく、2以上の自然数)、順次印加することと、
     を具備することを特徴とするデータ書き込み方法。
    A method of writing data in a semiconductor memory device in which a plurality of memory cells are stacked on a semiconductor substrate,
    Sequentially applying a program voltage to the selected word line M times (M is a natural number of 1 or more);
    Subsequent to applying the program voltage, sequentially applying a verify voltage to the selected word line N times (N is greater than M and a natural number of 2 or more),
    A data writing method comprising:
  8.  前記プログラム電圧をM回印加すること及び前記ベリファイ電圧をN回印加することにより、半導体基板上に積層された複数のメモリセルに対してデータが一括して書き込まれる
     ことを特徴とする請求項7記載のデータ書き込み方法。
    The data is collectively written in a plurality of memory cells stacked on a semiconductor substrate by applying the program voltage M times and applying the verify voltage N times. The data writing method described.
  9.  前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最下層に位置するメモリセルがプログラム対象とされ、少なくとも最上層に位置するメモリセルはプログラム非対象とされる
     ことを特徴とする請求項8記載のデータ書き込み方法。
    When any one of the M times of the program voltage is applied to the selected word line, a memory cell located in the lowest layer among the plurality of stacked memory cells is set as a program target, and at least in the uppermost layer. 9. The data writing method according to claim 8, wherein the memory cell located is not targeted for programming.
  10.  前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最上層に位置するメモリセルがプログラム対象とされ、少なくとも最下層に位置するメモリセルはプログラム非対象とされる
     ことを特徴とする請求項8記載のデータ書き込み方法。
    When any one of the M times of the program voltage is applied to the selected word line, a memory cell located in the uppermost layer among the plurality of stacked memory cells is set as a program target, and at least in the lowermost layer. 9. The data writing method according to claim 8, wherein the memory cell located is not targeted for programming.
  11.  半導体基板上に積層された複数のメモリセルと、
     前記メモリセルのゲートに接続されたワード線と、
     前記メモリセルの電流経路に電気的に接続され、データを転送可能なビット線と、
     前記ワード線に電圧を印加するロウデコーダと
     を具備し、前記メモリセルへのデータの書き込みは、選択ワード線にプログラム電圧を印加するプログラム動作と、前記選択ワード線にベリファイ電圧を印加するベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行され、
     前記ロウデコーダは、連続する2回のプログラムループ間において、前記ベリファイ電圧の印加回数は不変としつつ、2回目のプログラムループにおける前記プログラム電圧の印加回数を、1回目のプログラムループよりも減少させる
     ことを特徴とする半導体記憶装置。
    A plurality of memory cells stacked on a semiconductor substrate;
    A word line connected to the gate of the memory cell;
    A bit line electrically connected to the current path of the memory cell and capable of transferring data;
    A row decoder for applying a voltage to the word line, and for writing data to the memory cell, a program operation for applying a program voltage to the selected word line and a verify operation for applying a verify voltage to the selected word line Is executed by repeating a program loop including
    The row decoder reduces the number of application times of the program voltage in the second program loop from that of the first program loop while keeping the number of application of the verify voltage unchanged between two consecutive program loops. A semiconductor memory device.
  12.  前記データは、1回のプログラムループにおいて、前記半導体基板上に積層された複数のメモリセルに対して一括してプログラムされる
     ことを特徴とする請求項11記載の半導体記憶装置。
    The semiconductor memory device according to claim 11, wherein the data is programmed to a plurality of memory cells stacked on the semiconductor substrate in one program loop.
  13.  前記ロウデコーダは、前記1回目のプログラムループにおいて前記プログラム電圧をM回、前記選択ワード線に順次印加し、
     前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最下層に位置するメモリセルがプログラム対象とされ、少なくとも最上層に位置するメモリセルはプログラム非対象とされ、
     前記いずれかのプログラム電圧は、前記2回目のプログラムループにおいて前記選択ワード線への印加を省略される
     ことを特徴とする請求項12記載の半導体記憶装置。
    The row decoder sequentially applies the program voltage to the selected word line M times in the first program loop,
    When any one of the M times of the program voltage is applied to the selected word line, a memory cell located in the lowest layer among the plurality of stacked memory cells is set as a program target, and at least in the uppermost layer. The memory cell located is not subject to programming,
    The semiconductor memory device according to claim 12, wherein the application of any one of the program voltages to the selected word line is omitted in the second program loop.
  14.  前記ロウデコーダは、前記1回目のプログラムループにおいて前記プログラム電圧をM回、前記選択ワード線に順次印加し、
     前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最上層に位置するメモリセルがプログラム対象とされ、少なくとも最下層に位置するメモリセルはプログラム非対象とされ、
     前記いずれかのプログラム電圧は、前記2回目のプログラムループにおいて前記選択ワード線への印加を省略される
     ことを特徴とする請求項12記載の半導体記憶装置。
    The row decoder sequentially applies the program voltage to the selected word line M times in the first program loop,
    When any one of the M times of the program voltage is applied to the selected word line, a memory cell located in the uppermost layer among the plurality of stacked memory cells is set as a program target, and at least in the lowermost layer. The memory cell located is not subject to programming,
    The semiconductor memory device according to claim 12, wherein the application of any one of the program voltages to the selected word line is omitted in the second program loop.
  15.  前記ロウデコーダは、前記1回目のプログラムループにおいて前記プログラム電圧をM回、前記選択ワード線に順次印加し、
     前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、第1メモリセル及び第2メモリセルの両方がプログラム対象とされ、
     前記第1、第2メモリセルのチャネルには、互いに異なる第1及び第2電圧がそれぞれ与えられる
     ことを特徴とする請求項12記載の半導体記憶装置。
    The row decoder sequentially applies the program voltage to the selected word line M times in the first program loop,
    When one of the M program voltages is applied to the selected word line, both the first memory cell and the second memory cell are targeted for programming,
    The semiconductor memory device according to claim 12, wherein different first and second voltages are respectively applied to the channels of the first and second memory cells.
  16.  前記第1メモリセルは、最下層に位置するメモリセルであり、
     前記第1電圧は前記第2電圧よりも高い
     ことを特徴とする請求項5または15記載の半導体記憶装置。
    The first memory cell is a memory cell located in a lowermost layer,
    The semiconductor memory device according to claim 5, wherein the first voltage is higher than the second voltage.
  17.  請求項11記載の半導体記憶装置と、
     前記半導体記憶装置を制御するコントローラと
     を具備し、前記半導体記憶装置は、第1書き込みモードと第2書き込みモードとを備え、
     前記第1書き込みモードでは、前記ロウデコーダは、連続する2回のプログラムループ間において、前記ベリファイ電圧の印加回数は不変としつつ、2回目のプログラムループにおける前記プログラム電圧の印加回数を、1回目のプログラムループよりも減少させ、
     前記第2書き込みモードでは、前記ロウデコーダは、連続する2回のプログラムループにおいて、前記プログラム電圧の印加回数を減少させた際には、前記ベリファイ電圧の印加回数も減少させる
     ことを特徴とするメモリシステム。
    A semiconductor memory device according to claim 11;
    A controller for controlling the semiconductor memory device, the semiconductor memory device comprising a first write mode and a second write mode,
    In the first write mode, the row decoder sets the number of times of application of the program voltage in the second program loop while the number of times of application of the verify voltage remains unchanged between two successive program loops. Less than the program loop,
    In the second write mode, the row decoder decreases the number of times of application of the verify voltage when the number of times of application of the program voltage is decreased in two consecutive program loops. system.
  18.  前記半導体記憶装置は、前記コントローラから与えられるコマンドに応じて、前記第1、第2書き込みモードのいずれかで動作する
     ことを特徴とする請求項6または17記載のメモリシステム。
    18. The memory system according to claim 6, wherein the semiconductor memory device operates in one of the first and second write modes according to a command given from the controller.
  19.  半導体基板上に複数のメモリセルが積層された半導体記憶装置のデータ書き込み方法であって、
     選択ワード線にプログラム電圧をM回(Mは2以上の自然数)、順次印加し、次に前記選択ワード線にベリファイ電圧をN回(Nは2以上の自然数)、順次印加することにより、第1プログラムループを実行することと、
     前記選択ワード線にプログラム電圧をL回(Lは1以上の自然数であり、L<M)、順次印加し、次に前記選択ワード線にベリファイ電圧をN回、順次印加することにより、第2プログラムループを実行することと
     を具備することを特徴とするデータ書き込み方法。
    A method of writing data in a semiconductor memory device in which a plurality of memory cells are stacked on a semiconductor substrate,
    By sequentially applying the program voltage to the selected word line M times (M is a natural number of 2 or more) and then sequentially applying the verify voltage to the selected word line N times (N is a natural number of 2 or more), Executing one program loop;
    A program voltage is sequentially applied to the selected word line L times (L is a natural number of 1 or more, L <M), and then a verify voltage is sequentially applied to the selected word line N times. A data writing method comprising: executing a program loop.
  20.  前記第1プログラムループ及び前記第2プログラムループにより、前記半導体基板上に積層された複数のメモリセルに対してデータが一括して書き込まれる
     ことを特徴とする請求項19記載のデータ書き込み方法。
    The data writing method according to claim 19, wherein data is collectively written into a plurality of memory cells stacked on the semiconductor substrate by the first program loop and the second program loop.
  21.  前記第1プログラムループにおける前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最下層に位置するメモリセルがプログラム対象とされ、少なくとも最上層に位置するメモリセルはプログラム非対象とされ、
     前記第2プログラムループにおいて前記いずれかのプログラム電圧の前記選択ワード線への印加が省略される
     ことを特徴とする請求項20記載のデータ書き込み方法。
    When any one of the M program voltages in the first program loop is applied to the selected word line, a memory cell located in the lowest layer among the plurality of stacked memory cells is set as a program target. And at least the memory cells located in the uppermost layer are not programmed.
    The data write method according to claim 20, wherein the application of any one of the program voltages to the selected word line is omitted in the second program loop.
  22.  前記第1プログラムループにおける前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最上層に位置するメモリセルがプログラム対象とされ、少なくとも最下層に位置するメモリセルはプログラム非対象とされ、
     前記第2プログラムループにおいて前記いずれかのプログラム電圧の前記選択ワード線への印加が省略される
     ことを特徴とする請求項20記載のデータ書き込み方法。
    When any one of the M times of the program voltage in the first program loop is applied to the selected word line, a memory cell located in the uppermost layer among the plurality of stacked memory cells is set as a program target. And at least memory cells located in the lowermost layer are not targeted for programming,
    The data write method according to claim 20, wherein the application of any one of the program voltages to the selected word line is omitted in the second program loop.
  23.  前記M回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、第1メモリセル及び第2メモリセルの両方がプログラム対象とされ、
     前記第1、第2メモリセルのチャネルには、互いに異なる第1及び第2電圧がそれぞれ与えられる
     ことを特徴とする請求項7または20記載のデータ書き込み方法。
    When one of the M program voltages is applied to the selected word line, both the first memory cell and the second memory cell are targeted for programming,
    21. The data writing method according to claim 7, wherein different first and second voltages are respectively applied to the channels of the first and second memory cells.
  24.  前記第1メモリセルは、最下層に位置するメモリセルであり、
     前記第1電圧は前記第2電圧よりも高い
     ことを特徴とする請求項23記載のデータ書き込み方法。
    The first memory cell is a memory cell located in a lowermost layer,
    The data write method according to claim 23, wherein the first voltage is higher than the second voltage.
PCT/JP2013/073917 2013-09-05 2013-09-05 Semiconductor storage device and data writing method WO2015033417A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201380079357.7A CN105518794A (en) 2013-09-05 2013-09-05 Semiconductor storage device and data writing method
JP2015535215A JPWO2015033417A1 (en) 2013-09-05 2013-09-05 Semiconductor memory device and data writing method
PCT/JP2013/073917 WO2015033417A1 (en) 2013-09-05 2013-09-05 Semiconductor storage device and data writing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/073917 WO2015033417A1 (en) 2013-09-05 2013-09-05 Semiconductor storage device and data writing method

Publications (1)

Publication Number Publication Date
WO2015033417A1 true WO2015033417A1 (en) 2015-03-12

Family

ID=52627924

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/073917 WO2015033417A1 (en) 2013-09-05 2013-09-05 Semiconductor storage device and data writing method

Country Status (3)

Country Link
JP (1) JPWO2015033417A1 (en)
CN (1) CN105518794A (en)
WO (1) WO2015033417A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109411003A (en) * 2017-08-17 2019-03-01 东芝存储器株式会社 Semiconductor storage
US10360974B2 (en) 2017-09-21 2019-07-23 Toshiba Memory Corporation Non-volatile semiconductor memory in which data writing to cell groups is controlled using plural program pulses
CN111081302A (en) * 2018-10-22 2020-04-28 东芝存储器株式会社 Semiconductor memory device with a plurality of memory cells
CN112259149A (en) * 2015-12-17 2021-01-22 东芝存储器株式会社 Semiconductor memory device with a plurality of memory cells
TWI736394B (en) * 2019-12-24 2021-08-11 日商鎧俠股份有限公司 Semiconductor memory device

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018055736A (en) * 2016-09-26 2018-04-05 東芝メモリ株式会社 Semiconductor memory
CN109524047B (en) * 2018-10-15 2021-04-16 上海华虹宏力半导体制造有限公司 Byte programming retry method of flash memory

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004023044A (en) * 2002-06-20 2004-01-22 Toshiba Corp Nonvolatile semiconductor memory device
JP2009124107A (en) * 2007-11-12 2009-06-04 Samsung Electronics Co Ltd Non-volatile memory device and method of operating the same
JP2009266944A (en) * 2008-04-23 2009-11-12 Toshiba Corp Three-dimensional stacked nonvolatile semiconductor memory
JP2010067291A (en) * 2008-09-08 2010-03-25 Toshiba Corp Semiconductor memory device and data write method thereof
WO2010143306A1 (en) * 2009-06-12 2010-12-16 株式会社 東芝 Nonvolatile semiconductor storage device
JP2011253608A (en) * 2010-05-31 2011-12-15 Samsung Electronics Co Ltd Nonvolatile memory device having dynamic verification mode selection and operating method, driving method, and programming method thereof, memory system, memory card, and solid-state driver
JP2012084207A (en) * 2010-10-13 2012-04-26 Toshiba Corp Nonvolatile semiconductor memory device
JP2012119019A (en) * 2010-11-30 2012-06-21 Toshiba Corp Nonvolatile semiconductor memory device
JP2013073643A (en) * 2011-09-27 2013-04-22 Toshiba Corp Nonvolatile semiconductor memory device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6894931B2 (en) * 2002-06-20 2005-05-17 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device
KR101448851B1 (en) * 2008-02-26 2014-10-13 삼성전자주식회사 Programming method of Non-volatile memory device
US8116140B2 (en) * 2010-04-09 2012-02-14 Sandisk Technologies Inc. Saw-shaped multi-pulse programming for program noise reduction in memory

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004023044A (en) * 2002-06-20 2004-01-22 Toshiba Corp Nonvolatile semiconductor memory device
JP2009124107A (en) * 2007-11-12 2009-06-04 Samsung Electronics Co Ltd Non-volatile memory device and method of operating the same
JP2009266944A (en) * 2008-04-23 2009-11-12 Toshiba Corp Three-dimensional stacked nonvolatile semiconductor memory
JP2010067291A (en) * 2008-09-08 2010-03-25 Toshiba Corp Semiconductor memory device and data write method thereof
WO2010143306A1 (en) * 2009-06-12 2010-12-16 株式会社 東芝 Nonvolatile semiconductor storage device
JP2011253608A (en) * 2010-05-31 2011-12-15 Samsung Electronics Co Ltd Nonvolatile memory device having dynamic verification mode selection and operating method, driving method, and programming method thereof, memory system, memory card, and solid-state driver
JP2012084207A (en) * 2010-10-13 2012-04-26 Toshiba Corp Nonvolatile semiconductor memory device
JP2012119019A (en) * 2010-11-30 2012-06-21 Toshiba Corp Nonvolatile semiconductor memory device
JP2013073643A (en) * 2011-09-27 2013-04-22 Toshiba Corp Nonvolatile semiconductor memory device

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112259149A (en) * 2015-12-17 2021-01-22 东芝存储器株式会社 Semiconductor memory device with a plurality of memory cells
CN112259149B (en) * 2015-12-17 2024-02-09 铠侠股份有限公司 Semiconductor memory device with a memory cell having a memory cell with a memory cell having a memory cell
CN109411003A (en) * 2017-08-17 2019-03-01 东芝存储器株式会社 Semiconductor storage
TWI658461B (en) * 2017-08-17 2019-05-01 日商東芝記憶體股份有限公司 Semiconductor memory device
CN109411003B (en) * 2017-08-17 2022-11-11 铠侠股份有限公司 Semiconductor memory device with a plurality of memory cells
US10360974B2 (en) 2017-09-21 2019-07-23 Toshiba Memory Corporation Non-volatile semiconductor memory in which data writing to cell groups is controlled using plural program pulses
CN111081302A (en) * 2018-10-22 2020-04-28 东芝存储器株式会社 Semiconductor memory device with a plurality of memory cells
CN111081302B (en) * 2018-10-22 2023-04-11 铠侠股份有限公司 Semiconductor memory device with a plurality of memory cells
TWI736394B (en) * 2019-12-24 2021-08-11 日商鎧俠股份有限公司 Semiconductor memory device

Also Published As

Publication number Publication date
CN105518794A (en) 2016-04-20
JPWO2015033417A1 (en) 2017-03-02

Similar Documents

Publication Publication Date Title
JP6856400B2 (en) Semiconductor storage device and memory system
US11170857B2 (en) Semiconductor memory device that performs successive tracking reads during an operation to read one page
US10026491B2 (en) Semiconductor memory device and memory system
WO2015033417A1 (en) Semiconductor storage device and data writing method
US9478304B2 (en) Semiconductor memory device and operating method thereof
US20210373813A1 (en) Semiconductor memory device
US9466381B2 (en) Semiconductor device
KR101891164B1 (en) Flash memory device including program scheduler
JP5911834B2 (en) Nonvolatile semiconductor memory device
US9202574B2 (en) Memory device having a different source line coupled to each of a plurality of layers of memory cell arrays
US9007841B1 (en) Programming scheme for improved voltage distribution in solid-state memory
US10553283B2 (en) Semiconductor storage device
US10210936B2 (en) Nonvolatile memory device and a method of reading the same
JP2008090997A (en) Flash memory element and programming method thereof
JP5204069B2 (en) Nonvolatile semiconductor memory device
JP6293692B2 (en) Memory system
US9305637B2 (en) Nonvolatile semiconductor memory device
US20230138601A1 (en) Memory device and operation method thereof
TWI537957B (en) A semiconductor memory device, a memory system, and a data writing method
TW201603027A (en) Semiconductor memory device, memory system, and data writing method
EP3937176B1 (en) Memory device with conditional skip of verify operation during write and operating method thereof
US10346068B2 (en) Memory system and method of performing a read operation on a memory cell of a non-volatile semiconductor storage device including a plurality of blocks of memory
US20230207019A1 (en) Multi-level cell and multi-sub-block programming in a memory device
US20140258614A1 (en) Semiconductor memory device
JP2014154191A (en) Semiconductor memory device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13892935

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015535215

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13892935

Country of ref document: EP

Kind code of ref document: A1