WO2016057201A1 - Sensing multiple reference levels in non-volatile storage elements - Google Patents

Sensing multiple reference levels in non-volatile storage elements Download PDF

Info

Publication number
WO2016057201A1
WO2016057201A1 PCT/US2015/051270 US2015051270W WO2016057201A1 WO 2016057201 A1 WO2016057201 A1 WO 2016057201A1 US 2015051270 W US2015051270 W US 2015051270W WO 2016057201 A1 WO2016057201 A1 WO 2016057201A1
Authority
WO
WIPO (PCT)
Prior art keywords
voltage
sense
sensing transistor
volatile storage
sensing
Prior art date
Application number
PCT/US2015/051270
Other languages
French (fr)
Inventor
Xiaowei Jiang
Chang SIAU
Siu Lung Chan
Original Assignee
Sandisk 3D Llc
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 Sandisk 3D Llc filed Critical Sandisk 3D Llc
Priority to DE112015003834.5T priority Critical patent/DE112015003834B4/en
Priority to CN201580047840.6A priority patent/CN106688043B/en
Publication of WO2016057201A1 publication Critical patent/WO2016057201A1/en

Links

Classifications

    • 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/26Sensing or reading circuits; Data output circuits
    • G11C16/28Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
    • 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/5642Sensing or reading circuits; Data output circuits
    • 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/0466Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells with charge storage in an insulating layer, e.g. metal-nitride-oxide-silicon [MNOS], silicon-oxide-nitride-oxide-silicon [SONOS]
    • 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
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output 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
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/562Multilevel memory programming aspects
    • G11C2211/5621Multilevel programming verification

Definitions

  • the present disclosure relates to technology for non- volatile storage.
  • Non-volatile semiconductor memory has become more popular for use in various electronic devices.
  • non-volatile semiconductor memory is used in personal navigation devices, cellular telephones, digital cameras, personal digital assistants, mobile computing devices, non-mobile computing devices and other devices.
  • Electrical Erasable Programmable Read Only Memory (EEPROM) and flash memory are among the most popular non-volatile semiconductor memories.
  • Some EEPROMs or flash memory devices have a configuration referred to as a NAND configuration in which memory cells are grouped as NAND strings with each NAND string associated with a bit line.
  • a NAND configuration in which memory cells are grouped as NAND strings with each NAND string associated with a bit line.
  • One type of NAND memory array is a two-dimensional array.
  • Another type of NAND memory array is a three-dimensional array.
  • One 3D NAND stacked memory device is sometimes referred to as a Bit Cost Scalable (BiCS) architecture.
  • BiCS Bit Cost Scalable
  • a 3D NAND stacked memory device can be formed from an array of alternating conductor and insulator layers. A memory hole is drilled in the layers to define many memory layers simultaneously. A NAND string is then formed by filling the memory hole with appropriate materials. A straight NAND string extends in one memory hole, while a pipe- or U-shaped NAND string (P-BiCS) includes a pair of vertical columns of memory cells which extend in two memory holes and which are joined by a pipe connection. The pipe connection may be made of undoped polysilicon. A dielectric and back gate may surround the pipe connection forming a back gate transistor to control conduction of the pipe connection. Control gates of the memory cells are provided by the conductor layers.
  • EEPROM or flash memory device such as a NAND flash memory device
  • a program voltage is applied to the control gate (or selected word line) and the bit line is grounded. Electrons from the channel are injected into the charge storage region. When electrons accumulate in the charge storage region, the charge storage region becomes negatively charged and the threshold voltage of the memory cell is raised so that the memory cell is in a programmed state.
  • the program voltage (Vpgm) is applied to the control gates of the memory cells as a series of pulses.
  • the magnitude of the pulses is increased with each successive pulse by a predetermined step size (e.g. 0.2v, 0.3v, 0.4v, or others).
  • verify operations are carried out. That is, the programming level of each memory cell of a group of memory cells being programmed in parallel is sensed between each programming pulse to determine whether it is equal to or greater than a verify level to which it is being programmed.
  • One means of verifying the programming is to test conduction at a specific compare point.
  • the memory cells that are verified to be sufficiently programmed are locked out, for example, by raising their respective bit line voltage to stop the programming process for those memory cells.
  • Figure 1 is a top view of a NAND string.
  • Figure 2 is an equivalent circuit diagram of the NAND string.
  • FIG. 3 is a perspective view of a 3D stacked non-volatile memory device.
  • FIG. 4A depicts an embodiment of block BLK0 of FIG. 3 which includes U-shaped NAND strings.
  • FIG. 4B depicts a cross-sectional view of a block of the 3D non- volatile memory device of FIG. 4A of SetAO of NAND strings of FIG. 4A.
  • FIG. 5A depicts an embodiment of block BLK0 of FIG. 3 which includes straight NAND strings.
  • FIG. 5B depicts a cross-sectional view of a block of the 3D non-volatile memory device of FIG. 5 A having straight strings.
  • FIG. 6A depicts a close-up view of the region 669 of the column CO of FIG. 4B, showing a drain-side select gate SGD0 and a memory cell MC6,0.
  • FIG. 6B depicts a cross-sectional view of the column CO of FIG. 6A.
  • Figure 7 is a block diagram of a non- volatile memory system.
  • Figure 8 is a block diagram of an individual sense block/
  • Figure 9 A is a flow chart describing one embodiment of a process for programming.
  • Figure 9B shows one example sequence of program pulses and verify pulses.
  • Figures 10A-E illustrates a multi-phase programming approach that may be used during one embodiment of the programming process of Figure 9A.
  • Figures 11 A, 11B, 12A and 12B provide more details of one example of a coarse/fine programming methodology.
  • Figure 13A shows threshold distributions of memory cells just after programming is complete.
  • Figure 13B depicts two neighboring threshold voltage distributions with reference levels for a hard bit (HB) and two associated soft bits (SB', SB).
  • Figure 14 is a diagram of one embodiment of sensing circuit sense circuitry.
  • Figure 15 is a flowchart of one embodiment of a process that is used to determine multiple conditions of a memory cell.
  • Figure 16 is a schematic diagram depicting one embodiment sense circuitry.
  • Figure 17 is a flowchart describing one embodiment sensing a memory cell.
  • Figure 18 contains timing signals for the circuit of Figure 16 for one embodiment of the process of Figure 17.
  • Figure 19 is a diagram to illustrate one embodiment in which the trip point of the sense circuit is changed by increasing the voltage on the source node of the sense transistor.
  • Figure 20 is one embodiment of a process of verifying memory cells during a programming operation.
  • Figure 21 shows a diagram to one embodiment in which the trip point of the sense circuit is changed by increasing the voltage on the bottom plate of a sense capacitor.
  • Figure 22 is a diagram of one embodiment that modifies voltage on a sense node and a source node of a sensing transistor to sense at multiple levels.
  • Figure 23 is a flowchart of one embodiment of a process of reading a hard bit and two soft bits.
  • Figure 24 contains timing signals for the circuit of Figure 16 for one embodiment of the process of Figure 23.
  • Figure 25 is one example of sensing voltage margin when the clock CLK is dropped twice to sense three reference levels.
  • Figure 26 is one example of sensing voltage margin when the clock CLK is dropped once and the source of the sense transistor is raised once to sense three reference levels.
  • One embodiment includes determining a first condition of a selected non-volatile storage element with respect to a first reference level based on whether a sensing transistor conducts in response to a sense voltage on a sense node. Then, a voltage on the source terminal of the sensing transistor is modified after determining the first condition with respect to the first reference level. Then, a second condition of the selected non-volatile storage element is determined with respect to a second reference level based on whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor. This allows two different reference levels to be sensed without changing the voltage on the selected word line. Also, dynamic power consumption is low due to low capacitance of the sensing transistor relative to the sense node. Embodiments can also improve sensing margin.
  • One example of a memory system suitable for implementing embodiments uses a NAND flash memory architecture, which includes connecting multiple transistors in series between two select gates. Note that this could be a 2D NAND architecture or a 3D NAND architecture. Some examples are described herein of a 2D NAND architecture. Other examples described herein are of a 3D NAND architecture. Techniques described herein can be applied to 2D NAND, 3D NAND, but are not limited thereto.
  • the semiconductor memory elements are arranged in a single plane or a single memory device level.
  • memory elements are arranged in a plane (e.g., in an x-z direction plane) which extends substantially parallel to a major surface of a substrate that supports the memory elements.
  • the substrate may be a wafer over or in which the layer of the memory elements are formed or it may be a carrier substrate which is attached to the memory elements after they are formed.
  • the substrate may include a semiconductor such as silicon.
  • the memory elements may be arranged in the single memory device level in an ordered array, such as in a plurality of rows and/or columns. However, the memory elements may be arrayed in non-regular or non-orthogonal configurations.
  • the memory elements may each have two or more electrodes or contact lines, such as bit lines and word lines.
  • Non- volatile storage system that can implement the technology described herein is a flash memory system that uses the NAND structure, which includes arranging multiple transistors in series, sandwiched between two select gates.
  • the transistors in series and the select gates are referred to as a NAND string.
  • Figure 1 is a top view showing one NAND string.
  • Figure 2 is an equivalent circuit thereof.
  • the NAND string depicted in Figures 1 and 2 includes four transistors 100, 102, 104 and 106 in series and sandwiched between (drain side) select gate 120 and (source side) select gate 122.
  • Select gate 120 connects the NAND string to a bit line 111 via bit line contact 126.
  • Select gate 122 connects the NAND string to source line 128.
  • Select gate 120 is controlled by applying the appropriate voltages to select line SGD.
  • Select gate 122 is controlled by applying the appropriate voltages to select line SGS.
  • Each of the transistors 100, 102, 104 and 106 has a control gate and a floating gate.
  • transistor 100 has control gate lOOCG and floating gate 100FG.
  • Transistor 102 includes control gate 102CG and a floating gate 102FG.
  • Transistor 104 includes control gate 104CG and floating gate 104FG.
  • Transistor 106 includes a control gate 106CG and a floating gate 106FG.
  • Control gate lOOCG is connected to word line WL3
  • control gate 102CG is connected to word line WL2
  • control gate 104CG is connected to word line WL1
  • control gate 106CG is connected to word line WL0.
  • Figures 1 and 2 show four memory cells in the NAND string, the use of four memory cells is only provided as an example.
  • a NAND string can have less than four memory cells or more than four memory cells.
  • some NAND strings will have 128 memory cells or more.
  • the discussion herein is not limited to any particular number of memory cells in a NAND string.
  • One embodiment uses NAND strings with 66 memory cells, where 64 memory cells are used to store data and two of the memory cells are referred to as dummy memory cells because they do not store data.
  • a typical architecture for a flash memory system using a NAND structure will include several NAND strings.
  • Each NAND string is connected to the common source line by its source select gate controlled by select line SGS and connected to its associated bit line by its drain select gate controlled by select line SGD.
  • select line SGS Source select gate controlled by select line SGS
  • select line SGD Drain select gate controlled by select line SGD
  • Each bit line and the respective NAND string(s) that are connected to that bit line via a bit line contact comprise the columns of the array of memory cells.
  • Bit lines are shared with multiple NAND strings. Typically, the bit line runs on top of the NAND strings in a direction perpendicular to the word lines and is connected to a sense amplifier.
  • Non-volatile storage devices in addition to NAND flash memory, can also be used to implement the new technology described herein.
  • a TANOS structure consisting of a stacked layer of TaN-Ak03-SiN-Si02 on a silicon substrate
  • a nitride layer instead of a floating gate
  • Another type of memory cell useful in flash EEPROM systems utilizes a non-conductive dielectric material in place of a conductive floating gate to store charge in a non-volatile manner.
  • Such a cell is described in an article by Chan et al., "A True Single-Transistor Oxide-Nitride-Oxide EEPROM Device," IEEE Electron Device Letters, Vol. EDL-8, No. 3, March 1987, pp. 93-95.
  • a triple layer dielectric formed of silicon oxide, silicon nitride and silicon oxide (“ONO") is sandwiched between a conductive control gate and a surface of a semi-conductive substrate above the memory cell channel.
  • the cell is programmed by injecting electrons from the cell channel into the nitride, where they are trapped and stored in a limited region. This stored charge then changes the threshold voltage of a portion of the channel of the cell in a manner that is detectable.
  • the cell is erased by injecting hot holes into the nitride. See also Nozaki et al., "A 1-Mb EEPROM with MONOS Memory Cell for Semiconductor Disk Application," IEEE Journal of Solid-State Circuits, Vol. 26, No. 4, April 1991, pp. 497-501, which describes a similar cell in a split-gate configuration where a doped polysilicon gate extends over a portion of the memory cell channel to form a separate select transistor.
  • 3D memory device includes a 3D NAND memory device. That is, the device includes NAND strings. These strings may be similar to those depicted in Figures 1-2, although note that a floating gate is not necessarily used in a 3D memory device. As will be discussed below, memory cells have a charge trapping region in one embodiment of a 3D NAND memory device.
  • 3D memory device includes NAND strings. These strings may be similar to those depicted in Figures 1-2, although note that a floating gate is not necessarily used in a 3D memory device. As will be discussed below, memory cells have a charge trapping region in one embodiment of a 3D NAND memory device.
  • FIG. 3 is a perspective view of a 3D stacked non-volatile memory device.
  • the 3D memory device 300 includes a substrate 301.
  • the substrate 301 is formed from silicon.
  • On the substrate are example blocks BLK0 and BLK1 of memory cells and a peripheral area 406 with circuitry for use by the blocks.
  • the substrate 301 can also carry circuitry under the blocks, along with one or more lower metal layers which are patterned in conductive paths to carry signals of the circuitry.
  • the blocks are formed in an intermediate region 302 of the memory device.
  • the circuitry associated with operation of the memory cells may be above or within the substrate 301.
  • the non- volatile memory device is monolithically formed in one or more physical levels of arrays of memory cells having an active area disposed above the substrate 301.
  • each block comprises a stacked area of memory cells, where alternating levels of the stack represent word lines.
  • each block has opposing tiered sides from which vertical contacts extend upward to an upper metal layer to form connections to conductive paths. While two blocks are depicted as an example, additional blocks can be used, extending in the x- and/or y-directions.
  • the length of the plane, in the x-direction represents a direction in which signal paths to word lines extend in the one or more upper metal layers
  • the width of the plane, in the y-direction represents a direction in which signal paths to bit lines extend in the one or more upper metal layers.
  • the z-direction represents a height of the memory device.
  • NAND strings have a U-shape. In another embodiment, NAND strings have a straight shape.
  • FIG. 4A depicts an embodiment of block BLK0 of FIG. 3 which includes U-shaped NAND strings.
  • the block BLK0A includes U-shaped NAND strings arranged in sets (SetAO,..., SetAn, where there are n-1 sets of NAND strings in a block).
  • Each set of NAND strings is associated with one bit line (BLA0, BLA1, BLA2, BLA3, ..., BLAn).
  • each NAND string has a drain side select gate that is able to connect/disconnect the NAND string from its bit line.
  • the drain side select gates in a set of NAND strings may be individually selectable, such that one NAND string in the set may be selected at a given time.
  • all NAND strings in a block which are associated with one bit line are in the same set.
  • Each U-shaped NAND string thus has two columns of memory cells - a drain-side column and a source-side column.
  • SetAO includes NAND strings NSA0 (having drain-side column CO and source-side column CI), NSA1 (having drain-side column C3 and source-side column C2), NSA2 (having drain- side column C4 and source-side column C5), NSA3 (having drain-side column C7 and source-side column C6), NSA4 (having drain-side column C8 and source-side column C9) and NSA5 (having drain-side column CI 1 and source-side column CIO).
  • Source lines extend transversely to the bit lines and include SLA0, SLA1 and SLA2. The source lines join the source-side columns of adjacent NAND string in a set.
  • SLAO joins CI and C2
  • SLA1 joins C5 and C6
  • SLA2 joins C9 and CIO.
  • the source lines in a block are joined to one another and driven by one driver.
  • the bit lines and the source lines are above the memory cell array in this example.
  • FIG. 4B depicts a cross-sectional view of a block of the 3D non-volatile memory device of FIG. 4A of SetAO of NAND strings of FIG. 4A.
  • Columns of memory cells CO to Cl l are depicted in the multi-layer stack.
  • the stack 477 includes the substrate 301, an insulating film 409 on the substrate, and a back gate layer BG, which is a conductive layer, on the insulating film.
  • a trench is provided in portions of the back gate below pairs of columns of memory cells of a U-shaped NAND string.
  • NSA0 includes columns CO and CI and connecting portion 463.
  • NSA0 has a drain end 678 and a source end 472.
  • NSAl includes columns C2 and C3 and connecting portion 464.
  • NSAl has a drain end 706 and a source end 474.
  • NSA2 includes columns C4 and C5 and connecting portion 665.
  • NSA3 includes columns C6 and C7 and connecting portion 466.
  • NSA4 includes columns C8 and C9 and connecting portion 467.
  • NSA5 includes columns CIO and Cl l and connecting portion 468.
  • the source line SLAO is connected to the source ends 472 and 474 of two adjacent memory strings NSA0 and NSAl, respectively, in the SetAO of memory strings.
  • the source line SLAO is also connected to other sets of memory strings which are behind NSA0 and NSAl in the x direction.
  • additional U-shaped NAND strings in the stack 477 extend behind the U-shaped NAND strings depicted in the cross-section, e.g., along the x- axis.
  • the U-shaped NAND strings NSA0 to NSA5 are each in a different sub-block, but are in a common set of NAND strings (SetAO).
  • a slit portion 408 is also depicted as an example. In the cross-section, multiple slit portions are seen, where each slit portion is between the drain- and source-side columns of a U-shaped NAND string. Portions of the source lines SLAO, SLA1, SLA2 are also depicted. A portion of the bit line BLA0 is also depicted. [0055] Short dashed lines depict memory cells and select gates, as discussed further below. Thus, Figure 4B shows a strings (e.g., NAND strings) of non-volatile storage elements formed above the substrate 301 in multiple physical levels of a three-dimensional memory array. Each of the strings has an active area comprising a channel that extends vertically through the physical levels. Each string comprises non-volatile storage elements and a drain side select gate in the SG layer.
  • NAND strings non-volatile storage elements
  • FIG. 5A depicts an embodiment of block BLK0 of FIG. 3 which includes straight NAND strings.
  • the block BLK0B includes straight NAND strings arranged in sets (SetBO, SetBl, SetB2, SetB3,..., SetBn, where there are n-1 sets in a block).
  • Each set of NAND strings is associated with one bit line (BLBO, BLB1, BLB2, BLB3, BLBn).
  • All NAND strings in a block which are associated with one bit line are in the same set.
  • Each straight NAND string has one column of memory cells.
  • SetAO includes NAND strings NSB0, NSB1, NSB2, NSB3, NSB4 and NSB5.
  • Source lines extend parallel to the bit line and include SLB0, SLB1, SLB2, SLB3,..., SLBn.
  • the source lines in a block are joined to one another and driven by one driver.
  • the bit lines are above the memory cell array and the source lines are below the memory cell array in this example.
  • FIG. 5B depicts a cross-sectional view of a block of the 3D non-volatile memory device of FIG. 5 A having straight strings.
  • the stack 577 includes a substrate 301, an insulating film 409 on the substrate, and a portion of a source line SLB1.
  • the additional straight NAND strings in a sub-block extend in front of and in back of the NAND strings depicted in the cross-section, e.g., along the x-axis.
  • the NAND strings NSB0 to NSB5 are each in a different sub-block, but are in a common set of NAND strings (SetBO).
  • NSB0 has a source end 503 and a drain end 501.
  • a slit 502 is also depicted with other slits.
  • a portion of the bit line BLBO is also depicted. Dashed lines depict memory cells and select gates, as discussed further below.
  • FIG. 6A depicts a close-up view of the region 669 of the column CO of FIG. 4B, showing a drain-side select gate SGD0 and a memory cell MC6,0.
  • FIG. 6B depicts a cross-sectional view of the column CO of FIG. 6A.
  • Each layer is ring-shaped in one possible approach, except the core filler which is cylindrical.
  • region 669 of the column CO of FIG. 4B is for the U-shaped 3D NAND string example.
  • the diagrams and discussion for FIG. 6A and 6B also apply to a straight 3D NAND string.
  • the region 669 shows portions of the dielectric layers D6 to D8 and the conductive layers WL6 and SG.
  • Each column includes a number of layers which are deposited along the sidewalls of the column. These layers can include oxide-nitride-oxide and polysilicon layers which are deposited, e.g., using atomic layer deposition.
  • a block oxide can be deposited as layer 696
  • a nitride such as SiN as a charge trapping layer
  • a tunnel oxide can be deposited as layer 698
  • a polysilicon body or channel can be deposited as layer 699
  • a core filler dielectric can be deposited as region 695.
  • the polysilicon body or channel 699 may also be referred to as an active area. Additional memory cells are similarly formed throughout the columns.
  • electrons are stored in a portion of the charge trapping layer which is associated with the memory cell.
  • electrons are represented by "-" symbols in the charge trapping layer 697 for MC6,0. These electrons are drawn into the charge trapping layer from the polysilicon body, and through the tunnel oxide.
  • the threshold voltage of a memory cell is increased in proportion to the amount of stored charge.
  • Figure 7 illustrates a memory device 710 having read/write circuits for reading and programming a page of memory cells (e.g., NAND multi-state flash memory) in parallel.
  • Memory device 710 may include one or more memory die or chips 712.
  • Memory die 712 includes an array (two-dimensional or three dimensional) of memory cells 700, control circuitry 720, and read/write circuits 730A and 730B.
  • access to the memory array 700 by the various peripheral circuits is implemented in a symmetric fashion, on opposite sides of the array, so that the densities of access lines and circuitry on each side are reduced by half.
  • the read/write circuits 730A and 730B include multiple sense blocks 702 which allow a page of memory cells to be read or programmed in parallel.
  • the memory array 700 is addressable by word lines via row decoders 740A and 740B and by bit lines via column decoders 742 A and 742B.
  • a controller 744 is included in the same memory device 710 (e.g., a removable storage card or package) as the one or more memory die 712. Commands and data are transferred between the host and controller 744 via lines 732 and between the controller and the one or more memory die 712 via lines 734.
  • Some memory systems may include multiple dies 712 in communication with Controller 744.
  • Control circuitry 720 cooperates with the read/write circuits 73 OA and 730B to perform memory operations on the memory array 700.
  • the control circuitry 720 includes a state machine 722, an on-chip address decoder 724 and a power control module 726.
  • the state machine 722 provides chip-level control of memory operations.
  • the on-chip address decoder 724 provides an address interface between that used by the host or a memory controller to the hardware address used by the decoders 740A, 740B, 742A, and 742B.
  • the power control module 726 controls the power and voltages supplied to the word lines and bit lines during memory operations.
  • power control module 726 includes one or more charge pumps that can create voltages larger than the supply voltage.
  • Control circuitry 720, power control 726, decoder 724, state machine 722, decoders 740 A/B & 742A/B, the read/write circuits 730A/B and the controller 744, collectively or separately, can be referred to as one or more managing circuits (or as "managing circuitry").
  • Figure 8 is a block diagram of an individual sense block 702 partitioned into a core portion, referred to as a sense module 880, and a common portion 890.
  • a sense module 880 for each bit line and one common portion 890 for a set of multiple sense modules 880.
  • a sense block will include one common portion 890 and eight sense modules 880. Each of the sense modules in a group will communicate with the associated common portion via a data bus 872.
  • Sense module 880 comprises sense circuitry 870 that determines whether a conduction current in a connected bit line 111 is above or below a predetermined level.
  • sense module 880 includes a circuit commonly referred to as a sense amplifier.
  • Sense module 880 also includes a bit line latch 882 that is used to set a voltage condition on the connected bit line 111. For example, a predetermined state latched in bit line latch 882 will result in the connected bit line being pulled to a state designating program inhibit (e.g., Vdd).
  • Common portion 890 comprises a processor 892, a set of data latches 894 and an I/O Interface 896 coupled between the set of data latches 894 and data bus 820.
  • Processor 892 performs computations. For example, one of its functions is to determine the data stored in the sensed memory cell and store the determined data in the set of data latches.
  • the set of data latches 894 is used to store data bits determined by processor 892 during a read operation. It is also used to store data bits imported from the data bus 820 during a program operation. The imported data bits represent write data meant to be programmed into the memory.
  • I/O interface 896 provides an interface between data latches 894 and the data bus 820.
  • bit line latch 882 serves double duty, both as a latch for latching the output of the sense module 880 and also as a bit line latch as described above.
  • each processor 892 will include an output line (not depicted in Fig. 8) such that each of the output lines is wired-OR' d together.
  • the output lines are inverted prior to being connected to the wired-OR line. This configuration enables a quick determination during the program verification process of when the programming process has completed because the state machine receiving the wired-OR line can determine when all bits being programmed have reached the desired level. For example, when each bit has reached its desired level, a logic zero for that bit will be sent to the wired-OR line (or a data one is inverted).
  • the state machine When all bits output a data 0 (or a data one inverted), then the state machine knows to terminate the programming process.
  • the state machine may (in some embodiments) need to read the wired-OR line eight times, or logic is added to processor 892 to accumulate the results of the associated bit lines such that the state machine need only read the wired-OR line one time.
  • the wired-OR lines of the many sense modules can be grouped in sets of N sense modules, and the groups can then be grouped to form a binary tree.
  • the data to be programmed is stored in the set of data latches 894 from the data bus 820.
  • the program operation under the control of the state machine, comprises a series of programming voltage pulses (with increasing magnitudes) concurrently applied to the control gates of the addressed memory cells to that the memory cells are programmed at the same time. Each programming pulse is followed by a verify process to determine if the memory cell has been programmed to the desired state.
  • Processor 892 monitors the verified memory state relative to the desired memory state. When the two are in agreement, processor 892 sets the bit line latch 882 so as to cause the bit line to be pulled to a state designating program inhibit. This inhibits the memory cell coupled to the bit line 111 from further programming even if it is subjected to programming pulses on its control gate. In other embodiments the processor initially loads the bit line latch 882 and the sense circuitry sets it to an inhibit value during the verify process.
  • Data latch stack 894 contains a stack of data latches corresponding to the sense module. In one embodiment, there are three (or four or another number) data latches per sense module 880. In some implementations (but not required), the data latches are implemented as a shift register so that the parallel data stored therein is converted to serial data for data bus 820, and vice versa. In one preferred embodiment, all the data latches corresponding to the read/write block of memory cells can be linked together to form a block shift register so that a block of data can be input or output by serial transfer. In particular, the bank of read/write modules is adapted so that each of its set of data latches will shift data into or out of the data bus in sequence as if they are part of a shift register for the entire read/write block.
  • Figure 9A is a flow chart describing one embodiment of a process for performing programming on memory cells connected to a common word line to one or more targets (e.g., data states or threshold voltage ranges).
  • targets e.g., data states or threshold voltage ranges.
  • the program voltage applied to the control gate during a program operation is applied as a series of program pulses. Between programming pulses are a set of verify pulses to perform verification. In many implementations, the magnitude of the program pulses is increased with each successive pulse by a predetermined step size.
  • Figure 9B shows one example sequence of program pulses 964, 965, 966 and verify pulses 967.
  • step 570 of Figure 9A the programming voltage (Vpgm) is initialized to the starting magnitude (e.g., -12-16V or another suitable level) and a program counter PC maintained by state machine 722 is initialized at 1.
  • a program pulse of the program signal Vpgm is applied to the selected word line (the word line selected for programming).
  • the group of memory cells being programmed concurrently are all connected to the same word line (the selected word line).
  • the unselected word lines may receive one or more boosting voltages (e.g., -7-11 volts) to perform boosting schemes known in the art. If a memory cell should be programmed, then the corresponding bit line is grounded, in one embodiment.
  • step 972 the program pulse is concurrently applied to all memory cells connected to the selected word line so that all of the memory cells connected to the selected word line are programmed concurrently. That is, they are programmed at the same time (or during overlapping times). In this manner all of the memory cells connected to the selected word line will concurrently have their threshold voltage change, unless they have been locked out from programming.
  • step 974 the appropriate memory cells are verified using the appropriate set of target levels to perform one or more verify operations.
  • the verification process is performed by testing whether the threshold voltages of the memory cells selected for programming have reached the appropriate verify compare voltage. Referring to FIG. 9B, there may be several verify pulses 967 between each program pulse to test for different program states. This will be discussed further with respect to Figures 10A-E. In some embodiments, multiple verify levels are tested for while applying the same voltage to the selected word line. Further details are discussed below.
  • step 976 it is determined whether all the memory cells have reached their target threshold voltages (pass). If so, the programming process is complete and successful because all selected memory cells were programmed and verified to their target states. A status of "PASS" is reported in step 978. If, in 976, it is determined that not all of the memory cells have reached their target threshold voltages (fail), then the programming process continues to step 980. Note that in some embodiments, there is a verify low reference level and a verify high reference level. This will be discussed below in connection with, for example, the process of Figure 20. [0074] In step 980, the system counts the number of memory cells that have not yet reached their respective target threshold voltage distribution. That is, the system counts the number of cells that have failed the verify process.
  • each of the sense blocks 702 will store the status (pass/fail) of their respective cells. These values can be counted using a digital counter. As described above, many of the sense blocks have an output signal that is wire-OR'd together. Thus, checking one line can indicate that no cells of a large group of cells have failed verify. By appropriately organizing the lines being wired-OR together (e.g., a binary tree-like structure), a binary search method can be used to determine the number of cells that have failed. In such a manner, if a small number of cells failed, the counting is completed rapidly. If a large number of cells failed, the counting takes a longer time. In another alternative, each of the sense amplifiers can output an analog voltage or current if its corresponding memory cell has failed and an analog voltage or current summing circuit can be used to count the number of memory cells that have failed.
  • step 982 it is determined whether the count from step 980 is less than or equal to a predetermined limit.
  • the predetermined limit is the number of bits that can be corrected by ECC during a read process for the page of memory cells. If the number of failed cells is less than or equal to the predetermined limit, than the programming process can stop and a status of "PASS" is reported in step 978. In this situation, enough memory cells programmed correctly such that the few remaining memory cells that have not been completely programmed can be corrected using ECC during the read process.
  • step 980 will count the number of failed cells for each sector, each target data state or other unit, and those counts will individually or collectively be compared to a threshold in step 582.
  • the predetermined limit can be less than the number of bits that can be corrected by ECC during a read process to allow for future errors.
  • the predetermined limit can be a portion (pro-rata or not pro-rata) of the number of bits that can be corrected by ECC during a read process for the page of memory cells.
  • the limit is not predetermined. Instead, it changes based on the number of errors already counted for the page, the number of program- erase cycles performed or other criteria.
  • step 984 the programming process continues at step 984 and the program counter PC is checked against the program limit value (PL). Examples of program limit values include 20 and 30; however, other values can be used. If the program counter PC is not less than the program limit value PL, then the program process is considered to have failed and a status of FAIL is reported in step 988. If the program counter PC is less than the program limit value PL, then the process continues at step 586 during which time the Program Counter PC is incremented by 1 and the program voltage Vpgm is stepped up to the next magnitude.
  • PL program limit value
  • next pulse will have a magnitude greater than the previous pulse by a step size (e.g., a step size of 0.1-0.4 volts).
  • step 986 the process loops back to step 972 and another program pulse is applied to the selected word line.
  • Figures 10A-E illustrate a multi-phase programming approach that may be used during one embodiment of the programming process of Figure 9A.
  • the final program states (S0-S7) are depicted in Figure 10E.
  • These verify levels may correspond to the verify pulses in Figure 9B.
  • the programming process includes three phases. Prior to programming, the memory cells are erased so that all memory cells connected to a common word line are in an erased threshold voltage distribution E, as depicted in Figure 10A.
  • This common word line that is associated with memory cells to be programmed is referred to as a selected word line. Note that memory cells other than those associated with the selected word line may be erased together. For example, all memory cells in a block, or some section of the block, could be erased together.
  • memory cells that are in the erased threshold voltage distribution E are programmed to one of levels Vvl ', Vv2', Vv3' or Vv4'.
  • those memory cells to be programmed to data state S3 are programmed from erased threshold voltage distribution E to foggy state S3'
  • those memory cells to be programmed to data state S2 are programmed from erased threshold voltage distribution E to foggy state S2'
  • those memory cells to be programmed to data state SI are programmed from erase threshold voltage distribution E to foggy state SI '
  • those memory cells to be in data state SO are not programmed during the second phase of the programming process.
  • erased threshold voltage distribution E becomes data state SO.
  • memory cells are programmed from the intermediate state IM to various data states S4-S7.
  • those memory cells to be programmed to data state S7 are programmed from the intermediate state IM to foggy state S7'
  • those memory cells targeted to be in data state S6 are programmed from intermediate state IM to foggy state S6'
  • both memory cells to be programmed to data state S5 are programmed from intermediate state IM to foggy state S5'
  • those memory cells to be programmed to state S4 are programmed from intermediate state IM to foggy state S4'.
  • This second phase of programming is illustrated in Figure IOC.
  • foggy state SI ' overlaps with foggy state S2'
  • foggy state S2' overlaps with foggy states SI ' and S3'
  • foggy state S3' overlaps with foggy states S2' and S4'
  • foggy state S4' overlaps with foggy states S3' and S5'
  • foggy state S5' overlaps with foggy states S4' and S6'
  • foggy state S6' overlaps with foggy states S5' and S7'.
  • all or some of the foggy states do not overlap.
  • the distributions are tightened up from the foggy states SI '-S7' to the final states S1-S7.
  • Figure 10D This is depicted graphically by Figure 10D.
  • some memory cells may be in the third phase while others are the in second phase.
  • a memory cell could skip either the second or third phase.
  • the second phase is not required for all states.
  • a memory cell could have its threshold voltage go past the verify high level in the same programming pulse as it crossed the verify low level, in which case it does not undergo the slow programming associated with the third phase.
  • data state SO is wider than data states S1-S7.
  • one solution for achieving tight threshold voltage distributions includes both low- and high- verify levels for a given state.
  • Programming to the low verify level may be referred to as a coarse programming phase. This includes an attempt to raise a threshold voltage in a faster manner and paying less attention to achieving a tight threshold voltage distribution.
  • Programming to the high verify level may be referred to as a fine programming phase. This attempts to raise the threshold voltage in a slower manner in order to reach the target threshold voltage, while also achieving a tighter threshold voltage distribution.
  • Figures 11 A, 11B, 12A and 12B provide more details of one example of a coarse/fine programming methodology.
  • Figures 11 A and 12A depict the threshold voltage of the memory cells being programmed.
  • Figures 11B and 12B depict the bit line voltages for the memory cells being programmed.
  • This example of Figures 11A, 1 IB, 12A and 12B uses two verify levels, indicated in the Figures as Vv' and Vv. The final target level is Vv.
  • Figures IOC and 10D show examples of such low and high verify levels for several states.
  • the memory cell When a threshold voltage of the memory cell has reached Vv, the memory cell will be inhibited from further programming by applying an inhibit voltage to the bit line corresponding to that memory cell. For example, the bit line voltage can be raised to Vinhibit (See Figure 11B and Figure 12B).
  • the threshold voltage shift for the memory cell during subsequent programming pulses is slowed down by applying a certain bias voltage to the bit line, typically in the order of 0.3v to 0.8v. Because the rate of threshold voltage shift is reduced during the next few programming pulses, the final threshold voltage distribution can be narrower than with other programming methods. To implement this method, a second verify level that is lower than that of Vv is used.
  • This second verify level is depicted in 11A and 12A as Vv', with Vv > Vv'.
  • Vv' When the threshold voltage of the memory cell is larger than Vv', but still lower than Vv, the threshold voltage shift to the memory cell will be reduced for subsequent programming pulses by applying a bit line bias Vs ( Figure 12B). Note that in this case, two verify operations may be used for each state. One verify operation at the corresponding Vv for each state, and one verify operation at the corresponding Vv' for each state. Note that some states, such as the highest state, might not have a low verify level.
  • Figures 11 A and 1 IB show the behavior of a memory cell whose threshold voltage moves past Vv' and Vv in one programming pulse at t2.
  • the threshold voltage is depicted in Figure 11A to pass Vv' and Vv in between t2 and t3.
  • the memory cell prior to t3, the memory cell is in the coarse phase.
  • the memory cell is in the inhibit mode.
  • Figures 12A and 12B depict a memory cell that enters both the coarse and fine programming phases. The threshold voltage of the memory cell crosses Vv' in between time t2 and time t3 (e.g., from a programming pulse applies starting at t2). Prior to t3, the memory cell is in the coarse phase.
  • the threshold voltage of the memory cell crosses Vv; therefore, the memory cell is inhibited from further programming by raising the bit line voltage to Vinhibit at t4. If the coarse/fine programming scheme was not being used, the threshold voltage of the memory cells could exceed Vv by a margin much more than depicted in Figure 12 A.
  • the voltage Vv is greater than the voltage Vv' by a difference referred to as ⁇ (see Fig. 12A).
  • a difference referred to as ⁇ (see Fig. 12A).
  • One possible way to achieve the immediately above-described coarse/fine programming process is two apply consecutive verify operations at two different control gate (Word Line) voltages, for each data state.
  • the wave form of Figure 9B would include fourteen verify pulses rather than seven if memory cells are being programed to states S1-S7.
  • having two consecutive verify operations for each data state slows down the program/verify process because the time needed to change the word line voltage is longer than desired.
  • the RC delays increase and slow the down the process of changing the word line voltage.
  • the RC delay increases.
  • the sense amplifier 870 will test for two different threshold voltages (e.g., Vv' and Vv) by sensing the memory cell for two different currents. In one embodiment, sensing for verify at Vv' and at Vv is performed without changing the voltage on the selected word line. Further details are discussed below.
  • Figure 13A shows threshold distributions of memory cells just after programming is complete with read reference levels Vrl, Vr2, Vr3, Vr4, Vr5, Vr6, and Vr7.
  • Read level Vrl is used to test for whether memory cells have a threshold voltage above or below that level. By testing for all read reference levels, a determination can be made which state each memory cell is in.
  • threshold voltage distributions there may be some overlap between threshold voltage distributions. This is depicted in Figure 13B for two neighboring states. This overlap could happen to some extent at programming due to, for example, some memory cells being over-programmed or under-programmed. Also, the threshold voltage distributions could spread out over time due to, for example, read disturb. Read disturb is a phenomenon in which the threshold voltage of a memory cell changes slightly due to a voltage applied to read the memory cell.
  • soft bits are used to improve the accuracy of read operations.
  • the read levels Vrl, Vr2, Vr3, Vr4, Vr5, Vr6, and Vr7 may be referred to as "hard bits”.
  • error correction can be used to accurately determine the state to which a memory cell was intended to be programmed even if its present threshold voltage is not at the correct range.
  • Figure 13B depicts two neighboring threshold voltage distributions with reference levels for a hard bit (HB) and two associated soft bits (SB', SB).
  • the hard bit is for one of the read levels Vrl-Vr7.
  • the soft bits are at about the center of one of the two threshold voltage distributions. This is just one example. Also, there could be more than two soft bits associated with the hard bit.
  • a memory cell is sensed at the hard bit reference level and the two soft bit reference levels. This information can be fed into an error correction control process. This provides more data that can be used by the correction engine to speed up or otherwise aid convergence in the error correction process. In one embodiment, sensing of the hard bit and two soft bits is performed without changing the voltage on the selected word line.
  • FIG 14 is a diagram of one embodiment of sensing circuit sense circuitry 870 (see Figure 8).
  • the circuit 870 may be used to sense multiple threshold voltage levels while the same voltage is applied to the selected word line.
  • the circuit 870 has a charge storage device 1416 having a node that serves as a sense node (SEN).
  • a second node of the charge storage device 1416 is provided with a clock signal (CLK).
  • CLK clock signal
  • the clock signal CLK may be used to adjust the voltage at the sense node SEN.
  • the charge storage device 1416 is implemented with a capacitor.
  • the sense node is connected to a sensing device 1414.
  • the sensing device 1414 senses the voltage at SEN node and determines whether the voltage is above/below a target level. This may be used to determine whether a memory cell has a threshold voltage above/below a reference level.
  • Node 1411 of the sensing device 1414 is provided with signal SRC.
  • the SRC signal may be used to modify the target level that the sensing device 1414 tests for. This may be referred to as adjusting the trip point of the sensing device 1414.
  • the sensing device 1414 is implemented with a transistor. Thus, the trip point may be defined by whether the transistor turns on or not in response to the voltage at SEN.
  • the data latch 1412 stores a result of the sensing device 1414, which may be provided by the data out line.
  • the data latch 1412 inputs a reset signal RST, which resets the data latch 1412 between sensing operations.
  • the pre-charge circuit 1404 establishes a voltage at the SEN node. This is done to establish an initial reference voltage at the sense node SEN. This is accomplished by charging the charge storage device 1416 in one embodiment.
  • the bit line connection circuit 1402 connects/disconnects the charge storage device 1416 from the bit line.
  • the bit line is associated with the memory cell being sensed. After a reference voltage has been applied to the control gate of the selected memory cell, the charge storage device 1416 is connected to the bit line to allow the conduction current of the selected memory cell to discharge the charge storage device 1416 for a sensing time. Then, the charge storage device 1416 is disconnected from the bit line to stabilize the voltage on the sense node SEN such that the condition of the memory cell may be sensed.
  • Figure 15 is a flowchart of one embodiment of a process that is used to determine multiple reference levels while the same voltage is applied to the selected word line.
  • the process is used to sense a verify low level and a verify high level while the same voltage is applied to the selected word line.
  • the process is used as a part of a process that reads a hard bit and soft bits while the same voltage is applied to the selected word line.
  • Figure 23 shows how the process of Figure 15 can be expanded to read a hard bit and two soft bits. Reference will be made to the circuit 870 of Figure 14 to facilitate explanation of the process of Figure 15. Note that prior to the process of Figure 15 a reference voltage may be applied to the selected word line.
  • a sense voltage is developed on the sense node SEN.
  • the sense node SEN is connected to the gate of a sensing transistor that has a source terminal connected to SRC.
  • the sense node SEN is associated with a selected nonvolatile storage element.
  • a selected non-volatile storage element means one that is selected to be sensed.
  • the selected non-volatile storage element is on a NAND string associated with the sense node SEN.
  • Developing the sense voltage on the sense node may include developing a voltage that is representative of a condition of the selected non- volatile storage element.
  • Step 1502 may include connecting the sense node SEN to the selected non-volatile storage element to allow a conduction current of the selected non-volatile storage element to discharge the sense node to some extent. Further details are discussed below.
  • step 1504 a determination is made whether the sensing device 1414 conducts a current in response to the sense voltage on the sense node SEN. For example, a determination is made whether a sense transistor conducts a significant current or turns on in response to the voltage on the sense node SEN. At this time, the node 1411 of the sensing device 1414 could be grounded, as one possibility.
  • a condition of the selected non- volatile storage element is determined with respect to a first reference level based on whether the sensing device 1414 conducts a current in response to the sense voltage on the sense node SEN.
  • a determination is made whether the memory cell has a threshold voltage above/below a verify low level (e.g., one of the levels Vvl ' - Vv7').
  • a determination is made whether the memory cell has a threshold voltage above/below a soft bit level (e.g., soft bit SB' in FIG. 13B). This determination may be made by circuitry connected to the sense circuit 870.
  • the data from the data latch 1412 may be provided to the processor 892, control circuitry 720, and/or controller 744 to make this determination.
  • step 1508 the voltage on node 1411 of the sensing device 1414 (e.g., a source terminal of the sense transistor) is modified.
  • the signal SRC is used to modify the voltage on the node 1411 of sensing device 1414.
  • the voltage on the node 1411 is increased in step 1508 to allow the sensing device 1414 to test for a different reference level.
  • step 1510 a determination is made whether the sensing device 1414 conducts a current in response to the sense voltage on the sense node SEN, with the present voltage on node 1411. For example, a determination is made whether sensing device 1414 conducts a significant current or turns on in response to the voltage on the sense node SEN given the present voltage on node 1411.
  • a condition of the selected non-volatile storage element is determined with respect to a second reference level based on whether the sensing device 1414 conducts a current in response to the sense voltage on the sense node SEN. As one example, a determination is made whether the memory cell has a threshold voltage above/below a verify high level. As another example, a determination is made whether the memory cell has a threshold voltage above/below a hard bit level or a different soft bit level than step 1506. This determination may be made by circuitry connected to the sense circuit 1400, as discussed in step 1506.
  • Figure 16 is a schematic diagram depicting one embodiment sense circuitry 870 (see Figures 8 and 14).
  • the sense circuitry 870 could be used during the process of Figure 15, as well as other processes described below.
  • the circuit of Figure 16 will pre-charge a capacitor (or other charge storage device) to a pre-charge magnitude, discharge the capacitor through the memory cell for a sensing time, and sense voltage at the capacitor after the sensing time.
  • Figure 16 features one capacitor 1416, in some embodiments, any suitable charge storage device can replace or complement this capacitor 1416.
  • the sense voltage will be indicative of whether the memory cell conducted the current being sensed for, which is indicative of whether the threshold voltage of the memory cell is greater than or less than threshold voltage being tested for.
  • the circuit of Figure 16 can be used for the coarse/fine programming discussed above or for other systems that do not use coarse/fine programming.
  • the circuit of Figure 16 can be used for read operations. For example, hard and soft bits can be read during read operations.
  • FIG. 16 shows transistor 1600 connected to the Bit Line and transistor 1602.
  • Transistor 1600 receives the signal BLS at its gate, and is used to connect to or isolate the Bit Line.
  • Transistor 1602 receives the signal BLC at its gate, and is used as a voltage clamp.
  • the gate voltage BLC is biased at a constant voltage equal to the desired Bit Line voltage plus the threshold voltage of transistor 1602.
  • the function of transistor 1602, therefore, is to maintain a constant Bit Line voltage during a sensing operation (during read or verify), even if the current through the Bit Line changes.
  • Transistor 1602 is connected to transistor 1402.
  • Transistor 1402 is connected to capacitor 1416.
  • the purpose of transistor 1402 is to connect capacitor 1416 to the Bit Line and disconnect capacitor 1416 from the Bit Line so that capacitor 1416 is in selective communication with Bit Line.
  • transistor 1402 regulates the sensing time. That is, while transistor 1402 is turned on capacitor 1416 can discharge through the Bit Line, and when transistor 1402 is turned off capacitor 1416 cannot discharge through the Bit Line.
  • the SEN node at which transistor 1402 connects to capacitor 1416 is also connected to the gate of sensing transistor 1414.
  • the upper plate of capacitor 1416 is connected to the gate of sensing transistor 1414.
  • the lower plate of capacitor 1416 is connected to clock signal CLK.
  • CLK The purpose of clock signal CLK is to raise or lower the voltage on the upper plate of the capacitor 1416, and hence raise or lower the voltage on the sense node SEN.
  • the SEN node is also connected to transistor 1610, which is connected to transistor 1618.
  • the signal HLL is provided to the gate of transistor 1610.
  • the signal LAT is provided to the gate of transistor 1618.
  • a purpose of transistors 1610 and 1618 is to pre- charge the sense node SEN.
  • a voltage e.g. Vdd or other voltage
  • the voltage applied to the source of transistor 1618 can be used to pre-charge capacitor 1416. After pre-charging, capacitor 1416 can discharge through the Bit Line via transistor 1402 (assuming that transistors 160 and 1602 are conducting).
  • the sensing transistor 1414 has a source node 1411 that is provided with a source signal SRC.
  • a purpose of the source signal SRC is to adjust the reference level that the sense transistor 1414 tests for. In other words, the source signal SRC modifies the trip point of sensing transistor 1414.
  • the drain of sense transistor 1414 is connected to a strobe transistor 1612.
  • the gate of the strobe transistor 1612 is provide with a strobe signal STRO.
  • a purpose of the strobe transistor 1612 is to connect the sensing transistor 1414 to the latch circuit 1412.
  • the latch circuit 1412 includes transistors 1640, 1642, 1644, 1650, 1652, and 1654.
  • Transistor 1650 receives the strobe signal STRO at its gate.
  • Transistor 1640 receives a reset signal RST at its gate.
  • the gates of transistors 1652 and 1654 are tied together.
  • the LAT voltage in the data latch 1412 represents a condition of the memory cell. In one embodiment, LAT will be high of the memory cell passes a verify condition and low if the memory cell fails the verify condition. Thus, a high LAT means that the memory cell has a threshold voltage above the reference level, in one embodiment. Thus, a low LAT means that the memory cell has a threshold voltage below the reference level, in one embodiment.
  • a reset transistor 1460 is connected to the gates of transistors 1652 and 1654.
  • the gate of reset transistor 1460 is provided with the reset signal RST.
  • the reset signal RST may be used to reset the latch 1412.
  • capacitor 1416 is pre-charged via transistors 1610 and 1618. This will raise the voltage at the node SEN to a pre-charge voltage level (Vpre).
  • Vpre pre-charge voltage level
  • transistor 1402 turns on, capacitor 1416 can discharge its charge through the Bit Line and the selected memory cell if the threshold voltage of the memory cell is below the voltage level being tested for. If the capacitor 1416 is able to discharge, then the voltage at the capacitor (at the SEN node) will decrease.
  • Vpre The pre-charge voltage (Vpre) at the SEN node is greater than the threshold voltage of transistor 1414; therefore, prior to the sense time, transistor 1414 is on (conducting). Since transistor 1414 is on during the sense time, then transistor 1612 should be off. If the capacitor 1416 does not discharge during the sense time, then the voltage at the SEN node will remain above the threshold voltage of transistor 1414. With the sense transistor 1414 on and transistor 1612 on LAT in the data latch 1412 goes high, in one embodiment. [00125] If the capacitor 1416 discharges sufficiently during the sense time, then the voltage at the SEN node will decrease below the threshold voltage of transistor 1414; thereby, turning off transistor 1414.
  • LAT in the data latch 1412 will be low, in one embodiment.
  • the voltage at LAT in the data latch 1412 may be provided to managing circuitry outside of the sense circuit 870.
  • a compliment of the voltage at LAT in the data latch 1412 is provided to managing circuitry outside of the sense circuit 870.
  • the condition of the memory cell with respect to a reference level e.g., threshold voltage
  • a reference level e.g., threshold voltage
  • Figure 17 is a flowchart describing one embodiment sensing a memory cell.
  • the process includes one example implementation of steps 1502 and 1504 of the process of Figure 15.
  • the process of Fig. 17 can be executed by the circuit of Fig. 16.
  • the embodiment of Figure 17 assumes a structure in which a charge storage device 1416 will discharge its charge through the selected memory cell in order to detect current.
  • a charge storage device 1416 comprises a capacitor.
  • Figure 18 contains timing signals that will be referred to when discussing the process of Figure 17.
  • step 1702 of Figure 17 the capacitor (or other charge storage device) will be pre- charged to a pre-determined voltage level.
  • FILL is high and LAT is low. These conditions turn on both transistors 1618 and 1610, connecting the top plate of the capacitor 1416 to Vdd (or some other voltage).
  • Vpre is not required to be Vdd, as the time for which FILL is high can be adjusted to establish a suitable Vpre.
  • FILL is low, which turns off transistor 1610 to stop the pre-charging.
  • step 1704 the voltage on the capacitor 1416 (or other charge storage device) is increased.
  • the clock signal CLK is raised. This has the effect of raising the voltage at SEN by a similar amount.
  • raising CLK at the bottom plate of capacitor 1416 has the effect of raising the top plate of the capacitor 1416 (or sense node SEN) by a similar amount.
  • the pre-charged capacitor (or other charge storage device) will be connected to the bit line.
  • the signal XXL goes high.
  • BLC may be high at this time.
  • BLS may be high at this time.
  • XXL is provided to the gate of transistor 1402, thus turning on transistor 1402.
  • transistors 1600 and 1602 are on at this time. This connects the sense node SEN to the bit line.
  • step 1708 the capacitor 1416 is allowed to discharge its charge through the bit line and NAND string (including the selected memory cell being sensed).
  • the system will wait for a sense time in step 1708.
  • the signal XXL remains high from time t3 to t4. Note that the entire process only needs one sense time.
  • curve 1802 is associated with a memory cell having a low conduction current
  • curve 1084 is associated with a memory cell having a medium conduction current
  • curve 1806 is associated with a memory cell having a high conduction current.
  • curve 1802 is associated with a memory cell having a threshold voltage above a higher reference level.
  • Curve 1804 is associated with a memory cell having a threshold voltage between a lower reference level and the higher reference level.
  • Curve 1806 is associated with a memory cell having a threshold voltage below the lower reference level.
  • step 1710 the voltage on the capacitor 1416 is decreased.
  • the clock signal CLK is lowered. This has the effect of lowering the voltage at SEN by a similar amount.
  • step 1712 the voltage on the capacitor 1416 is tested.
  • the system will calculate the change in voltage across the capacitor from the pre-charge voltage to the voltage detected in step 1712.
  • the strobe signal STRO goes high.
  • the reset signal RST went low to reset the latch circuit.
  • the sense transistor 1414 will be either on or off in response to the voltage on the sense node SEN.
  • the strobe signal STRO high, transistor 1612 is on, which provides a current path between the sense transistor 1414 and the latch circuit 1412.
  • the value of LAT in the data latch 1412 will be set based on whether the sense transistor 1414 conducts.
  • LAT low
  • LAT medium current conduction curve 1804
  • LAT high
  • the trip point of the sense circuit 870 is changed by increasing the voltage on the source node of the sense transistor 1414.
  • Figure 19 is a diagram to illustrate this embodiment. The diagram shows the voltage on the sense node (SEN) over time. These time frame corresponds to t3-tl l in Figure 18.
  • verify low Vv' is the low reference level
  • verify high Vv is the high reference level.
  • the low and high reference levels do not need to be for verify low and verify high.
  • Curve 1802 is associated with a memory cell having a low conduction current
  • curve 1084 is associated with a memory cell having a medium conduction current
  • curve 1806 is associated with a memory cell having a high conduction current.
  • effective trip points are the voltages at which the sense transistor 1414 will flip from off to on. The effective trip point changes when increasing the voltage on the source node 1411 of the sense transistor 1414. This occurs between the phase for sensing verify low and the phase for sensing verify high.
  • a memory cell having a very low conduction current has a relatively high threshold voltage. Thus, it should pass both the verify low Vv' and verify high Vv tests. This is reflected by curve 1802.
  • a memory cell having a medium conduction current has a threshold voltage between the verify low Vv' and verify high Vv levels and hence should pass verify low, but fail verify high. Thus, it should pass the verify low Vv', but fail the verify high Vv test. This is reflected by curve 1804.
  • a memory cell having a high conduction current has a threshold voltage below the verify low Vv' and verify high Vv levels and hence should fail both verify low and verify high. This is reflected by curve 1806.
  • the trip point is the threshold voltage of the sense transistor 1414 plus the voltage on the source node 1411, in one embodiment. By increasing the voltage on the source node 1411, the trip point increases. The trip point could be decreased by decreasing the voltage on the source node 1411.
  • the capacitance of the sense transistor 1414 can be relatively low. Therefore, changing the voltage on the source node 1411 can be achieved quickly with little current consumption. These are important advantages in that reducing the time to verify and reducing current consumption are significant benefits.
  • Figure 20 is one embodiment of a process of verifying memory cells during a programming operation. In this process, memory cells are verified to a low- and a high- verify level. This may be used for what is referred to a "quick pass write" (QPW).
  • QPW quick pass write
  • step 2002 a voltage is applied to the word line for the selected memory cell being programmed and verified while maintaining the voltage level of the bit line to which the memory cell is connected at a constant value.
  • This word line voltage is applied based on the data state being verified.
  • different control gate voltages are used to verify programming to different data states. As discussed above, for at least some of the data states, there will be two sensing operations, one for the respective Vv' and one for the respective Vv. The same word line voltage will be applied to the word line for both sensing operations for a given data state.
  • step 2004, the system will sense current through the memory cell for the first sensing operation. This is used to determine whether the memory cell is at the low verify level Vv'. If the memory cell has a threshold voltage above the low verify level Vv' it should not conduct a significant current. If the memory cell has a threshold voltage below the low verify level Vv' it should conduct a significant current.
  • this sensing may occur between times t6 and t7.
  • the various steps of pre-charging the sense node SEN and discharging the sense node SEN to the bit line may be performed prior to step 1904. Sensing up to this point was described above with respect to the process of Figure 17.
  • LAT goes high when the memory cell passes the verify low test. Memory cells having low conduction current (curve 1802) or medium conduction current (curve 1804) pass the verify low test, and thus have LAT high.
  • LAT is high between time t6 and t8 for memory cells having a low current or medium current.
  • step 1906 the system will sense current through the memory cell for the second sensing operation. This is used to determine whether the memory cell is at the high verify level Vv. Referring to the timing diagram of Figure 18, this sensing may occur between times tlO and tl 1.
  • the reset signal RST is brought high between times t8 and t9 to reset the latch 1412.
  • the source signal SRC is raised at time t9. This changes the trip point of the sense transistor 1414. Referring to Figure 19, this raises the effect trip point to set up sensing for the high verify level.
  • the strobe signal STRO is raised. This again connects the sense transistor 1414 to the latch 1412. Depending on whether the sense transistor 1414 turns on and conducts a current, the value of LAT in the latch 1412 will be set accordingly.
  • LAT goes high when the memory cell passes the high verify test.
  • Memory cells having low conduction current (curve 1802) pass the verify high test, and thus have LAT high.
  • memory cells having medium or high conduction current curves 1804 and 106, respectively fail the verify high test, and thus have LAT low.
  • LAT is high between after time tlO for memory cells having a low conduction current.
  • LAT is low between after time tlO for other memory cells.
  • steps 2004 and 2006 may both be performed while the voltage that was applied to the word line in step 2002 remains constant.
  • step 2016 If it is determined that the threshold voltage of the memory cell is greater than or equal to Vv (see step 2008), then in step 2016 that memory cell is locked out from further programming for this particular programming process. If, however, it is determined that the threshold voltage of the memory cell is less than Vv, then it is determined whether the threshold voltage in memory cell is greater than or equal to Vv' (step 2010). If the threshold voltage in the memory cell is greater than or equal to Vv', then in step 2014, the bit line voltage is raised to Vs to slow down programming and enter the fine phase. If the threshold voltage is below the Vv', then in step 2012, the bit line voltage is maintained at Vs so that additional coarse programming can be performed.
  • the voltage on the bottom plate of the capacitor 1416 is modified to be able to test for different reference levels with the same voltage applied to the selected word line.
  • Figure 21 shows a diagram to illustrate the foregoing. The diagram shows the voltage on the sense node (SEN) over time. These time frame corresponds to t3- tl l in Figure 18. This is for an example in which verify low and verify high is tested, as indicated by the time axis.
  • SEN sense node
  • Curve 1802 is associated with a memory cell having a low conduction current
  • curve 1084 is associated with a memory cell having a medium conduction current
  • curve 1806 is associated with a memory cell having a high conduction current. Also depicted is "trip point". This is the voltage at which the sense transistor 1414 will flip from off to on.
  • a memory cell having a very low conduction current has a relatively high threshold voltage. Thus, it should pass both the verify low Vv' and verify high Vv tests. This is reflected by curve 1802.
  • a memory cell having a medium conduction current has a threshold voltage between the verify low Vv' and verify high Vv levels and hence should pass verify low, but fail verify high. Thus, it should pass both the verify low Vv', but fail the verify high Vv tests. This is reflected by curve 1804.
  • a memory cell having a high conduction current has a threshold voltage below the verify low Vv' and verify high Vv levels and hence should fail both verify low and verify high. This is reflected by curve 1806.
  • the foregoing technique may be combined with the technique of modifying the voltage on the source node 1411 of the sense transistor 1414.
  • combining these two techniques is used to read a hard bit and two soft bits.
  • Figure 22 shows a diagram to illustrate one embodiment of combining the two techniques to read a hard bit HB and two soft bits SB', SB.
  • the four curves 2202, 2204, 2206, and 2208 in Figure 22 correspond to memory cells that are in one of four different regions with respect to the soft and hard bits.
  • memory cells having a threshold voltage below SB' should have the highest conduction current in response to voltage applied to the selected word line. These memory cells are associated with curve 2208.
  • Memory cells having a threshold voltage between SB' and HB are associated with curve 2206.
  • Memory cells having a threshold voltage between HB and SB are associated with curve 2204.
  • Memory cells having a threshold voltage between above SB should have the lowest conduction current in response to voltage applied to the selected word line.
  • the time axis shows that the first sensing operation is to sense for SB' (the lower soft bit). Then, the voltage on the SEN node is moved down. The next sensing operation is for the hard bit HB. Then, the voltage on the source node 1411 of the sense transistor is moved up. This modifies the effective trip point. The next sensing operation is for the upper soft bit SB.
  • Figure 22 also shows above/below conditions for each curve for each sense operation. These refer to whether the memory cell has a threshold voltage above or below the reference level.
  • the memory cell has a threshold voltage below the reference level for all three cases.
  • the memory cell has a threshold voltage above the SB' reference level, but below for the other two cases.
  • the memory cell has a threshold voltage above both the SB' reference level and the HB reference level, but below for the SB reference level.
  • the memory cell has a threshold voltage above the reference level for all three cases.
  • Figure 23 is a flowchart of one embodiment of a process of reading a hard bit and two soft bits. The technique described in Figure 22 may be used.
  • Figure 24 shows timing signals for one embodiment in which the circuit of Figure 16 is used.
  • the process starts by performing steps 1502-1506 from the process of Figure 15. These steps develop a voltage on the sense node SEN, determine whether the sense transistor 1414 conducts in response to the voltage on the sense node SEN, and determine a condition of the selected memory cell based on whether the sense transistor conducts. These steps may be used to determine whether the threshold voltage of the memory cell is above/below the lower soft bit level SB'.
  • the strobe signal STRO between times t6 and t7 is used to latch the result of the first sense operation.
  • the sense node SEN shows four different curves 2202, 2204, 2206, and 2208, which correspond to four different amounts of conduction current of the selected memory cell. These refer to the curves already discussed in Figure 22.
  • LAT1 corresponds to curve 2202.
  • LAT2 corresponds to curve 2204.
  • LAT3 corresponds to curve 2206.
  • LAT4 corresponds to curve 2208.
  • step 2302 a voltage on the sense node is modified.
  • the clock signal CLK is lowered by some amount. This has the effect of lowering the voltage on the top plate of capacitor 1416.
  • step 2304 the system determines whether the sense transistor 1414 conducts in response to the voltage on the sense node. This may be used to test for the hard bit HB. Referring to Figure 24, between times tlO and tl 1, strobe STRO is brought high. This causes the latch circuit 1412 to store the condition of the memory cell, based on whether or not the sense transistor 1414 conducts a current.
  • step 2306 the system determines a condition of the selected memory cell based on whether the sense transistor conducts.
  • Steps 2302-2306 may be used to determine whether the threshold voltage of the memory cell is above/below the hard bit level HB.
  • the voltage on the node labeled LAT in the data latch 1412 may be used to determine the condition of the selected memory cell.
  • memory cells having threshold voltages below the HB reference level should conduct a relatively high current (corresponding to curves 2206 and 2208). For such cells, LAT will be low, as indicated by LAT3 and LAT4 between times tlO and tl 1.
  • memory cells having threshold voltages above the HB reference level should conduct a relatively low current (corresponding to curves 2202 and 2204).
  • LAT will be high, as indicated by LAT1 and LAT2 between times tlO and ti l .
  • steps 1508-1512 from the process of Figure 15. These steps modify a voltage on the source terminal 1411 of the sense transistor 1414, determine whether the sense transistor 1414 conducts in response to the voltage on the sense node SEN, and determine a condition of the selected memory cell based on whether the sense transistor conducts. These steps may be used to determine whether the threshold voltage of the memory cell is above/below the upper soft bit level SB.
  • the source signal SRC is raised at time tl3.
  • the effect of this on the trip point of the sense transistor 1414 has already been discussed.
  • strobe STRO is brought high. This causes the latch circuit 1412 to store the condition of the memory cell, based on whether or not the sense transistor 1414 conducts a current.
  • memory cells having threshold voltages below the upper soft bit SB reference level should conduct a relatively high current (corresponding to curves 2204, 2206 and 2208). For such cells, LAT will be low, as indicated by LAT2, LAT3 and LAT4 after time tl4. On the other hand, memory cells having threshold voltages above the upper soft bit SB reference level should conduct a relatively low current (corresponding to curve 2202). For such cells, LAT will be high, as indicated by LAT1 after time t 14.
  • Figures 25 and 26 provide an example to help illustrate the foregoing.
  • Figure 25 is one example of sensing voltage margin when the clock CLK is dropped twice to sense three reference levels.
  • Figure 26 is one example of sensing voltage margin when the clock CLK is dropped once and the source of the sense transistor is raised once to sense three reference levels.
  • the sense node SEN starts at Vdd, which is the pre-charge voltage.
  • the clock CLK starts at 0V and increases to 1.5 V, which increases the sense node SEN by a corresponding amount.
  • the sense node SEN is then discharged through the bit line as discussed herein.
  • the three curves refer to three different discharge rates depending on the threshold voltage of the memory cell. At the end of the discharge time, the curves are at 2.0V, 1.5V, and 1.0V respectively.
  • the clock CLK voltage is dropped three times. This is divided evenly in 0.5V steps, in this example. Thus, the clock drops to 1.0V when sensing SB', to 0.5V when sensing HB, and 0V when sensing SB. This causes a corresponding drop in the sense node SEN voltage. Note that the sense node SEN does not drop below 0V in this example.
  • the voltage sense margin is given by the difference between the starting sense node voltages for the two most extreme cases. This is 1.0V in this example.
  • the sense node SEN starts at Vdd, which is the pre-charge voltage.
  • the clock CLK starts at 0V and increases to 1.5 V, which increases the sense node SEN by a corresponding amount.
  • the sense node SEN is then discharged through the bit line as discussed herein.
  • the three curves refer to three different discharge rates depending on the threshold voltage of the memory cell. At the end of the discharge time, the curves are at 2.5V, 2.0V, and 1.3V respectively. Note that the sense time in this example may be different from the example of Figure 25.
  • the clock CLK voltage is dropped twice times. This is divided as a 0.7V drop followed by a 0.8V drop. Thus, the clock drops to 0.8V when sensing SB' and to 0V when sensing HB and also when sensing SB. This causes a corresponding drop in the sense node SEN voltage. Note that the sense node SEN does not drop below 0V in this example.
  • the source signal SRC is raised prior to sensing the upper soft bit SB.
  • SRC is raised by 0.5V.
  • the voltage sense margin is given by the difference between the starting sense node voltages for the two most extreme cases. This is 1.2V in this example. A reason for the additional margin is that the clock CLK signal is dropped one fewer time in the example of Figure 26.
  • the voltage margin gain refers to the voltage margin using the technique from Figure 26 minus the voltage margin using the technique from Figure 25. More generally, the voltage margin gain can be expressed as follows.
  • Vmargin Gain V3 * (II - 13) / 12 (1)
  • Equation 1 11 is the lower soft bit SB' current, 12 is the hard bit HB current, and 13 is the upper soft bit SB current. These currents refer to the conduction current that a memory cell having a threshold voltage equal to the reference level is expected to have given the reference voltage applied to the control gate of the memory cell. V3 is the final drop down in the clock signal CLK in the method that uses the additional drop in CLK. Thus, the technique of Figure 26 may help to improve voltage margin, at least relative to the technique of Figure 25.
  • One embodiment comprises a method of operating non- volatile storage, which comprising the following.
  • a sense voltage is developed on a sense node that is connected to a sensing transistor having a source terminal.
  • the sense node is associated with a selected non-volatile storage element.
  • a determination is made whether the sensing transistor conducts in response to the sense voltage on the sense node.
  • a first condition of the selected non-volatile storage element is determined with respect to a first level based on whether the sensing transistor conducts in response to the sense voltage on the sense node.
  • a voltage on the source terminal of the sensing transistor is modified after determining the first condition with respect to the first reference level.
  • a second condition of the selected non-volatile storage element is determined with respect to a second reference level based on whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor.
  • the modifying a voltage on the source terminal of the sensing transistor comprises increasing a voltage on the source terminal.
  • a condition of the selected non-volatile storage element is determined with respect to a third reference level based on whether the sensing transistor conducts in response to the modified voltage on the sense node. Modifying the voltage on the source terminal of the sensing transistor is performed after determining whether the sensing transistor conducts in response to the modified voltage on the sense node.
  • the third reference level is between the first reference level and the second reference level.
  • One embodiment includes a non-volatile storage device comprising a plurality of non-volatile storage elements, a plurality of bit lines associated with the plurality of nonvolatile storage elements, and managing circuitry coupled to the plurality of non-volatile storage elements and the plurality of bit lines.
  • the managing circuitry comprises a plurality of sensing circuits.
  • a sensing circuit comprises a charge storage device and a sensing transistor connected to the charge storage device.
  • the managing circuitry develops a sense voltage on the charge storage device of a given sensing circuit.
  • the given sensing circuit being associated with a first of the bit lines.
  • the first bit line being associated with a selected non-volatile storage element of the plurality of non-volatile storage elements.
  • the managing circuitry determines whether the sensing transistor in the given sensing circuit conducts in response to the sense voltage on the charge storage device.
  • the managing circuitry determines a condition of the selected non-volatile storage element with respect to a first reference level based on whether the sensing transistor conducts in response to the sense voltage on the charge storage device.
  • the managing circuitry modifies a voltage on the source terminal of the sensing transistor after determining the condition with respect to the first reference level.
  • the managing circuitry determines whether the sensing transistor conducts in response to the sense voltage on the charge storage device after modifying the voltage on the source terminal of the sensing transistor.
  • the managing circuitry determines a condition of the selected non-volatile storage element with respect to a second reference level based on whether the sensing transistor conducts in response to the sense voltage on the charge storage device after modifying the voltage on the source terminal of the sensing transistor.
  • One embodiment comprises method of operating non- volatile storage comprising the following. A sense voltage is developed on a sense capacitor that is coupled to a bit line. The sense capacitor has a bottom plate and a top plate. The sense capacitor is connected to a sensing transistor having a source terminal. A selected non-volatile storage element is associated with the bit line. A determination is made whether the sensing transistor conducts in response to the sense voltage on the top plate of the sense capacitor.
  • a voltage on the bottom plate of the sense capacitor is reduced after determining whether the sensing transistor conducts in response to the sense voltage on the sense capacitor.
  • a determination is made whether the sensing transistor conducts in response to the sense voltage on the top plate of the sense capacitor after boosting the voltage on the bottom plate of the sense capacitor.
  • a voltage on the source terminal of the sensing transistor is increased after determining whether the sensing transistor conducts after boosting the voltage on the bottom plate.
  • a determination is made whether the sensing transistor conducts in response to the sense voltage on the top plate of the sense capacitor after increasing the voltage on the source terminal of the sensing transistor.
  • Conditions of the selected non-volatile storage element are determined with respect to a first reference level, a second reference reveal, and a third reference level based on whether the sensing transistor conducted in the operations above.
  • first reference level in the above paragraph is a first soft bit reference level
  • the second reference reveal is a second soft bit reference level
  • the third reference level is a hard bit reference level
  • One embodiment includes a 3D non-volatile storage device comprising a plurality of word lines layers, a plurality of insulator layers alternating with the word line layers in a stack, a plurality of non-volatile storage element strings, a plurality of bit lines associated with the non-volatile storage element strings, a plurality of sensing circuits each comprising a sense node and a sensing transistor connected to the sense node, and managing circuitry.
  • Each non-volatile storage element string comprises a plurality of non-volatile storage elements. Each of the non- volatile storage elements is associated with one of the plurality of word lines.
  • the managing circuitry is in communication with the plurality of word lines layers, the plurality of bit lines, the plurality of strings, and the plurality of sensing circuits.
  • the managing circuitry develops a sense voltage on the sense node of a given sensing circuit.
  • the given sensing circuit being associated with a first bit line of the bit lines.
  • the first bit line being associated with a selected non-volatile storage element of the plurality of non- volatile storage elements.
  • the managing circuitry determines whether the sensing transistor in the given sensing circuit conducts in response to the sense voltage on the sense node.
  • the managing circuitry determines a condition of the selected non-volatile storage element with respect to a first level based on whether the sensing transistor conducts in response to the sense voltage on the sense node.
  • the managing circuitry modifies a voltage on the source terminal of the sensing transistor after determining the condition with respect to the first level.
  • the managing circuitry determines whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor.
  • the managing circuitry determines a condition of the selected nonvolatile storage element with respect to a second level based on whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor.

Abstract

Disclosed herein are techniques for sensing multiple reference levels in non-volatile storage elements without changing the voltage on the selected word line. One aspect includes determining a first condition of a selected non-volatile storage element with respect to a first reference level based on whether a sensing transistor conducts in response to a sense voltage on a sense node. Then, a voltage on the source terminal of the sensing transistor is modified after determining the first condition with respect to the first reference level. A second condition of the selected non-volatile storage element is then determined with respect to a second reference level based on whether the sensing transistor conducts in response to the sense voltage on the sense node. This allows two different reference levels to be efficiently sensed. Dynamic power is saved due low capacitance of the sensing transistor relative to the sense node.

Description

SENSING MULTIPLE REFERENCE LEVELS IN NON-VOLATILE
STORAGE ELEMENTS
BACKGROUND
[0001] The present disclosure relates to technology for non- volatile storage.
[0002] Semiconductor memory has become more popular for use in various electronic devices. For example, non-volatile semiconductor memory is used in personal navigation devices, cellular telephones, digital cameras, personal digital assistants, mobile computing devices, non-mobile computing devices and other devices. Electrical Erasable Programmable Read Only Memory (EEPROM) and flash memory are among the most popular non-volatile semiconductor memories.
[0003] Some EEPROMs or flash memory devices have a configuration referred to as a NAND configuration in which memory cells are grouped as NAND strings with each NAND string associated with a bit line. One type of NAND memory array is a two-dimensional array. Another type of NAND memory array is a three-dimensional array. One 3D NAND stacked memory device is sometimes referred to as a Bit Cost Scalable (BiCS) architecture.
[0004] In a 3D NAND BiCS architecture, a 3D NAND stacked memory device can be formed from an array of alternating conductor and insulator layers. A memory hole is drilled in the layers to define many memory layers simultaneously. A NAND string is then formed by filling the memory hole with appropriate materials. A straight NAND string extends in one memory hole, while a pipe- or U-shaped NAND string (P-BiCS) includes a pair of vertical columns of memory cells which extend in two memory holes and which are joined by a pipe connection. The pipe connection may be made of undoped polysilicon. A dielectric and back gate may surround the pipe connection forming a back gate transistor to control conduction of the pipe connection. Control gates of the memory cells are provided by the conductor layers.
[0005] When programming an EEPROM or flash memory device, such as a NAND flash memory device, typically a program voltage is applied to the control gate (or selected word line) and the bit line is grounded. Electrons from the channel are injected into the charge storage region. When electrons accumulate in the charge storage region, the charge storage region becomes negatively charged and the threshold voltage of the memory cell is raised so that the memory cell is in a programmed state.
[0006] Typically, the program voltage (Vpgm) is applied to the control gates of the memory cells as a series of pulses. The magnitude of the pulses is increased with each successive pulse by a predetermined step size (e.g. 0.2v, 0.3v, 0.4v, or others). In the periods between the pulses, verify operations are carried out. That is, the programming level of each memory cell of a group of memory cells being programmed in parallel is sensed between each programming pulse to determine whether it is equal to or greater than a verify level to which it is being programmed. One means of verifying the programming is to test conduction at a specific compare point. The memory cells that are verified to be sufficiently programmed are locked out, for example, by raising their respective bit line voltage to stop the programming process for those memory cells.
DESCRIPTION OF THE DRAWINGS
[0007] Figure 1 is a top view of a NAND string.
[0008] Figure 2 is an equivalent circuit diagram of the NAND string.
[0009] FIG. 3 is a perspective view of a 3D stacked non-volatile memory device.
[0010] FIG. 4A depicts an embodiment of block BLK0 of FIG. 3 which includes U-shaped NAND strings.
[0011] FIG. 4B depicts a cross-sectional view of a block of the 3D non- volatile memory device of FIG. 4A of SetAO of NAND strings of FIG. 4A.
[0012] FIG. 5A depicts an embodiment of block BLK0 of FIG. 3 which includes straight NAND strings.
[0013] FIG. 5B depicts a cross-sectional view of a block of the 3D non-volatile memory device of FIG. 5 A having straight strings.
[0014] FIG. 6A depicts a close-up view of the region 669 of the column CO of FIG. 4B, showing a drain-side select gate SGD0 and a memory cell MC6,0. [0015] FIG. 6B depicts a cross-sectional view of the column CO of FIG. 6A.
[0016] Figure 7 is a block diagram of a non- volatile memory system.
[0017] Figure 8 is a block diagram of an individual sense block/
[0018] Figure 9 A is a flow chart describing one embodiment of a process for programming.
[0019] Figure 9B shows one example sequence of program pulses and verify pulses.
[0020] Figures 10A-E illustrates a multi-phase programming approach that may be used during one embodiment of the programming process of Figure 9A.
[0021] Figures 11 A, 11B, 12A and 12B provide more details of one example of a coarse/fine programming methodology.
[0022] Figure 13A shows threshold distributions of memory cells just after programming is complete.
[0023] Figure 13B depicts two neighboring threshold voltage distributions with reference levels for a hard bit (HB) and two associated soft bits (SB', SB).
[0024] Figure 14 is a diagram of one embodiment of sensing circuit sense circuitry.
[0025] Figure 15 is a flowchart of one embodiment of a process that is used to determine multiple conditions of a memory cell.
[0026] Figure 16 is a schematic diagram depicting one embodiment sense circuitry.
[0027] Figure 17 is a flowchart describing one embodiment sensing a memory cell.
[0028] Figure 18 contains timing signals for the circuit of Figure 16 for one embodiment of the process of Figure 17.
[0029] Figure 19 is a diagram to illustrate one embodiment in which the trip point of the sense circuit is changed by increasing the voltage on the source node of the sense transistor.
[0030] Figure 20 is one embodiment of a process of verifying memory cells during a programming operation. [0031] Figure 21 shows a diagram to one embodiment in which the trip point of the sense circuit is changed by increasing the voltage on the bottom plate of a sense capacitor.
[0032] Figure 22 is a diagram of one embodiment that modifies voltage on a sense node and a source node of a sensing transistor to sense at multiple levels.
[0033] Figure 23 is a flowchart of one embodiment of a process of reading a hard bit and two soft bits.
[0034] Figure 24 contains timing signals for the circuit of Figure 16 for one embodiment of the process of Figure 23.
[0035] Figure 25 is one example of sensing voltage margin when the clock CLK is dropped twice to sense three reference levels.
[0036] Figure 26 is one example of sensing voltage margin when the clock CLK is dropped once and the source of the sense transistor is raised once to sense three reference levels.
DETAILED DESCRIPTION
[0037] Disclosed herein are techniques for sensing multiple levels in non-volatile storage elements. Multiple levels can be sensed without changing the voltage on the selected word line. One embodiment includes determining a first condition of a selected non-volatile storage element with respect to a first reference level based on whether a sensing transistor conducts in response to a sense voltage on a sense node. Then, a voltage on the source terminal of the sensing transistor is modified after determining the first condition with respect to the first reference level. Then, a second condition of the selected non-volatile storage element is determined with respect to a second reference level based on whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor. This allows two different reference levels to be sensed without changing the voltage on the selected word line. Also, dynamic power consumption is low due to low capacitance of the sensing transistor relative to the sense node. Embodiments can also improve sensing margin.
[0038] One example of a memory system suitable for implementing embodiments uses a NAND flash memory architecture, which includes connecting multiple transistors in series between two select gates. Note that this could be a 2D NAND architecture or a 3D NAND architecture. Some examples are described herein of a 2D NAND architecture. Other examples described herein are of a 3D NAND architecture. Techniques described herein can be applied to 2D NAND, 3D NAND, but are not limited thereto.
[0039] In a two dimensional memory structure, the semiconductor memory elements are arranged in a single plane or a single memory device level. Typically, in a two dimensional memory structure, memory elements are arranged in a plane (e.g., in an x-z direction plane) which extends substantially parallel to a major surface of a substrate that supports the memory elements. The substrate may be a wafer over or in which the layer of the memory elements are formed or it may be a carrier substrate which is attached to the memory elements after they are formed. As a non-limiting example, the substrate may include a semiconductor such as silicon.
[0040] The memory elements may be arranged in the single memory device level in an ordered array, such as in a plurality of rows and/or columns. However, the memory elements may be arrayed in non-regular or non-orthogonal configurations. The memory elements may each have two or more electrodes or contact lines, such as bit lines and word lines.
[0041] One example of a non- volatile storage system that can implement the technology described herein is a flash memory system that uses the NAND structure, which includes arranging multiple transistors in series, sandwiched between two select gates. The transistors in series and the select gates are referred to as a NAND string. Figure 1 is a top view showing one NAND string. Figure 2 is an equivalent circuit thereof. The NAND string depicted in Figures 1 and 2 includes four transistors 100, 102, 104 and 106 in series and sandwiched between (drain side) select gate 120 and (source side) select gate 122. Select gate 120 connects the NAND string to a bit line 111 via bit line contact 126. Select gate 122 connects the NAND string to source line 128. Select gate 120 is controlled by applying the appropriate voltages to select line SGD. Select gate 122 is controlled by applying the appropriate voltages to select line SGS. Each of the transistors 100, 102, 104 and 106 has a control gate and a floating gate. For example, transistor 100 has control gate lOOCG and floating gate 100FG. Transistor 102 includes control gate 102CG and a floating gate 102FG. Transistor 104 includes control gate 104CG and floating gate 104FG. Transistor 106 includes a control gate 106CG and a floating gate 106FG. Control gate lOOCG is connected to word line WL3, control gate 102CG is connected to word line WL2, control gate 104CG is connected to word line WL1, and control gate 106CG is connected to word line WL0. [0042] Note that although Figures 1 and 2 show four memory cells in the NAND string, the use of four memory cells is only provided as an example. A NAND string can have less than four memory cells or more than four memory cells. For example, some NAND strings will have 128 memory cells or more. The discussion herein is not limited to any particular number of memory cells in a NAND string. One embodiment uses NAND strings with 66 memory cells, where 64 memory cells are used to store data and two of the memory cells are referred to as dummy memory cells because they do not store data.
[0043] A typical architecture for a flash memory system using a NAND structure will include several NAND strings. Each NAND string is connected to the common source line by its source select gate controlled by select line SGS and connected to its associated bit line by its drain select gate controlled by select line SGD. Each bit line and the respective NAND string(s) that are connected to that bit line via a bit line contact comprise the columns of the array of memory cells. Bit lines are shared with multiple NAND strings. Typically, the bit line runs on top of the NAND strings in a direction perpendicular to the word lines and is connected to a sense amplifier.
[0044] Other types of non-volatile storage devices, in addition to NAND flash memory, can also be used to implement the new technology described herein. For example, a TANOS structure (consisting of a stacked layer of TaN-Ak03-SiN-Si02 on a silicon substrate), which is basically a memory cell using trapping of charge in a nitride layer (instead of a floating gate), can also be used with the technology described herein. Another type of memory cell useful in flash EEPROM systems utilizes a non-conductive dielectric material in place of a conductive floating gate to store charge in a non-volatile manner. Such a cell is described in an article by Chan et al., "A True Single-Transistor Oxide-Nitride-Oxide EEPROM Device," IEEE Electron Device Letters, Vol. EDL-8, No. 3, March 1987, pp. 93-95. A triple layer dielectric formed of silicon oxide, silicon nitride and silicon oxide ("ONO") is sandwiched between a conductive control gate and a surface of a semi-conductive substrate above the memory cell channel. The cell is programmed by injecting electrons from the cell channel into the nitride, where they are trapped and stored in a limited region. This stored charge then changes the threshold voltage of a portion of the channel of the cell in a manner that is detectable. The cell is erased by injecting hot holes into the nitride. See also Nozaki et al., "A 1-Mb EEPROM with MONOS Memory Cell for Semiconductor Disk Application," IEEE Journal of Solid-State Circuits, Vol. 26, No. 4, April 1991, pp. 497-501, which describes a similar cell in a split-gate configuration where a doped polysilicon gate extends over a portion of the memory cell channel to form a separate select transistor.
[0045] Another example is described by Eitan et al., "NROM: A Novel Localized Trapping, 2-Bit Nonvolatile Memory Cell," IEEE Electron Device Letters, vol. 21, no. 11, November 2000, pp. 543-545. An ONO dielectric layer extends across the channel between source and drain diffusions. The charge for one data bit is localized in the dielectric layer adjacent to the drain, and the charge for the other data bit is localized in the dielectric layer adjacent to the source. United States patents Nos. 5,768,192 and 6,011,725 disclose a nonvolatile memory cell having a trapping dielectric sandwiched between two silicon dioxide layers. Multi-state data storage is implemented by separately reading the binary states of the spatially separated charge storage regions within the dielectric. Other types of non-volatile memory technologies can also be used.
[0046] The following discussion of an example 3D memory device is presented as one possible architecture in which embodiments may be practiced. These examples include a 3D NAND memory device. That is, the device includes NAND strings. These strings may be similar to those depicted in Figures 1-2, although note that a floating gate is not necessarily used in a 3D memory device. As will be discussed below, memory cells have a charge trapping region in one embodiment of a 3D NAND memory device.
[0047] The following discussion of an example 3D memory device is presented as one possible architecture in which embodiments may be practiced. These examples include a 3D NAND memory device. That is, the device includes NAND strings. These strings may be similar to those depicted in Figures 1-2, although note that a floating gate is not necessarily used in a 3D memory device. As will be discussed below, memory cells have a charge trapping region in one embodiment of a 3D NAND memory device.
[0048] FIG. 3 is a perspective view of a 3D stacked non-volatile memory device. The 3D memory device 300 includes a substrate 301. In one embodiment, the substrate 301 is formed from silicon. On the substrate are example blocks BLK0 and BLK1 of memory cells and a peripheral area 406 with circuitry for use by the blocks. The substrate 301 can also carry circuitry under the blocks, along with one or more lower metal layers which are patterned in conductive paths to carry signals of the circuitry. The blocks are formed in an intermediate region 302 of the memory device. The circuitry associated with operation of the memory cells may be above or within the substrate 301. In one embodiment, the non- volatile memory device is monolithically formed in one or more physical levels of arrays of memory cells having an active area disposed above the substrate 301.
[0049] In an upper region 303 of the memory device, one or more upper metal layers are patterned in conductive paths to carry signals of the circuitry. Each block comprises a stacked area of memory cells, where alternating levels of the stack represent word lines. In one possible approach, each block has opposing tiered sides from which vertical contacts extend upward to an upper metal layer to form connections to conductive paths. While two blocks are depicted as an example, additional blocks can be used, extending in the x- and/or y-directions.
[0050] In one possible approach, the length of the plane, in the x-direction, represents a direction in which signal paths to word lines extend in the one or more upper metal layers, and the width of the plane, in the y-direction, represents a direction in which signal paths to bit lines extend in the one or more upper metal layers. The z-direction represents a height of the memory device.
[0051] In one embodiment, NAND strings have a U-shape. In another embodiment, NAND strings have a straight shape. FIG. 4A depicts an embodiment of block BLK0 of FIG. 3 which includes U-shaped NAND strings. The block BLK0A includes U-shaped NAND strings arranged in sets (SetAO,..., SetAn, where there are n-1 sets of NAND strings in a block). Each set of NAND strings is associated with one bit line (BLA0, BLA1, BLA2, BLA3, ..., BLAn). In one embodiment, each NAND string has a drain side select gate that is able to connect/disconnect the NAND string from its bit line. The drain side select gates in a set of NAND strings may be individually selectable, such that one NAND string in the set may be selected at a given time. In one approach, all NAND strings in a block which are associated with one bit line are in the same set. Each U-shaped NAND string thus has two columns of memory cells - a drain-side column and a source-side column. For example, SetAO includes NAND strings NSA0 (having drain-side column CO and source-side column CI), NSA1 (having drain-side column C3 and source-side column C2), NSA2 (having drain- side column C4 and source-side column C5), NSA3 (having drain-side column C7 and source-side column C6), NSA4 (having drain-side column C8 and source-side column C9) and NSA5 (having drain-side column CI 1 and source-side column CIO). Source lines extend transversely to the bit lines and include SLA0, SLA1 and SLA2. The source lines join the source-side columns of adjacent NAND string in a set. For example, SLAO joins CI and C2, SLA1 joins C5 and C6 and SLA2 joins C9 and CIO. In one approach, the source lines in a block are joined to one another and driven by one driver. The bit lines and the source lines are above the memory cell array in this example.
[0052] FIG. 4B depicts a cross-sectional view of a block of the 3D non-volatile memory device of FIG. 4A of SetAO of NAND strings of FIG. 4A. Columns of memory cells CO to Cl l are depicted in the multi-layer stack. The stack 477 includes the substrate 301, an insulating film 409 on the substrate, and a back gate layer BG, which is a conductive layer, on the insulating film. A trench is provided in portions of the back gate below pairs of columns of memory cells of a U-shaped NAND string. Layers of materials which are provided in the columns to form the memory cells are also provided in the trenches, and the remaining space in the trenches is filled with a semiconductor material to provide connecting portions 463 to 468 which connect the columns. The back gate thus connects the two columns of each U-shaped NAND string. For example, NSA0 includes columns CO and CI and connecting portion 463. NSA0 has a drain end 678 and a source end 472. NSAl includes columns C2 and C3 and connecting portion 464. NSAl has a drain end 706 and a source end 474. NSA2 includes columns C4 and C5 and connecting portion 665. NSA3 includes columns C6 and C7 and connecting portion 466. NSA4 includes columns C8 and C9 and connecting portion 467. NSA5 includes columns CIO and Cl l and connecting portion 468.
[0053] The source line SLAO is connected to the source ends 472 and 474 of two adjacent memory strings NSA0 and NSAl, respectively, in the SetAO of memory strings. The source line SLAO is also connected to other sets of memory strings which are behind NSA0 and NSAl in the x direction. Recall that additional U-shaped NAND strings in the stack 477 extend behind the U-shaped NAND strings depicted in the cross-section, e.g., along the x- axis. The U-shaped NAND strings NSA0 to NSA5 are each in a different sub-block, but are in a common set of NAND strings (SetAO).
[0054] A slit portion 408 is also depicted as an example. In the cross-section, multiple slit portions are seen, where each slit portion is between the drain- and source-side columns of a U-shaped NAND string. Portions of the source lines SLAO, SLA1, SLA2 are also depicted. A portion of the bit line BLA0 is also depicted. [0055] Short dashed lines depict memory cells and select gates, as discussed further below. Thus, Figure 4B shows a strings (e.g., NAND strings) of non-volatile storage elements formed above the substrate 301 in multiple physical levels of a three-dimensional memory array. Each of the strings has an active area comprising a channel that extends vertically through the physical levels. Each string comprises non-volatile storage elements and a drain side select gate in the SG layer.
[0056] FIG. 5A depicts an embodiment of block BLK0 of FIG. 3 which includes straight NAND strings. The block BLK0B includes straight NAND strings arranged in sets (SetBO, SetBl, SetB2, SetB3,..., SetBn, where there are n-1 sets in a block). Each set of NAND strings is associated with one bit line (BLBO, BLB1, BLB2, BLB3, BLBn). In one approach, all NAND strings in a block which are associated with one bit line are in the same set. Each straight NAND string has one column of memory cells. For example, SetAO includes NAND strings NSB0, NSB1, NSB2, NSB3, NSB4 and NSB5. Source lines extend parallel to the bit line and include SLB0, SLB1, SLB2, SLB3,..., SLBn. In one approach, the source lines in a block are joined to one another and driven by one driver. The bit lines are above the memory cell array and the source lines are below the memory cell array in this example.
[0057] FIG. 5B depicts a cross-sectional view of a block of the 3D non-volatile memory device of FIG. 5 A having straight strings. The view of a portion of setBO of NAND strings of FIG. 5 A. Columns of memory cells corresponding to NAND strings NSB0 to NSB5, respectively, are depicted in the multi-layer stack. The stack 577 includes a substrate 301, an insulating film 409 on the substrate, and a portion of a source line SLB1. Recall that the additional straight NAND strings in a sub-block extend in front of and in back of the NAND strings depicted in the cross-section, e.g., along the x-axis. The NAND strings NSB0 to NSB5 are each in a different sub-block, but are in a common set of NAND strings (SetBO). NSB0 has a source end 503 and a drain end 501. A slit 502 is also depicted with other slits. A portion of the bit line BLBO is also depicted. Dashed lines depict memory cells and select gates, as discussed further below.
[0058] A region 669 of the stack is shown in greater detail in FIG. 6A. FIG. 6A depicts a close-up view of the region 669 of the column CO of FIG. 4B, showing a drain-side select gate SGD0 and a memory cell MC6,0. FIG. 6B depicts a cross-sectional view of the column CO of FIG. 6A. Each layer is ring-shaped in one possible approach, except the core filler which is cylindrical. Recall that region 669 of the column CO of FIG. 4B is for the U-shaped 3D NAND string example. However, the diagrams and discussion for FIG. 6A and 6B also apply to a straight 3D NAND string.
[0059] The region 669 shows portions of the dielectric layers D6 to D8 and the conductive layers WL6 and SG. Each column includes a number of layers which are deposited along the sidewalls of the column. These layers can include oxide-nitride-oxide and polysilicon layers which are deposited, e.g., using atomic layer deposition. For example, a block oxide can be deposited as layer 696, a nitride such as SiN as a charge trapping layer can be deposited as layer 697, a tunnel oxide can be deposited as layer 698, a polysilicon body or channel can be deposited as layer 699, and a core filler dielectric can be deposited as region 695. The polysilicon body or channel 699 may also be referred to as an active area. Additional memory cells are similarly formed throughout the columns.
[0060] When such a memory cell is programmed, electrons are stored in a portion of the charge trapping layer which is associated with the memory cell. For example, electrons are represented by "-" symbols in the charge trapping layer 697 for MC6,0. These electrons are drawn into the charge trapping layer from the polysilicon body, and through the tunnel oxide. The threshold voltage of a memory cell is increased in proportion to the amount of stored charge.
[0061] Figure 7 illustrates a memory device 710 having read/write circuits for reading and programming a page of memory cells (e.g., NAND multi-state flash memory) in parallel. Memory device 710 may include one or more memory die or chips 712. Memory die 712 includes an array (two-dimensional or three dimensional) of memory cells 700, control circuitry 720, and read/write circuits 730A and 730B. In one embodiment, access to the memory array 700 by the various peripheral circuits is implemented in a symmetric fashion, on opposite sides of the array, so that the densities of access lines and circuitry on each side are reduced by half. The read/write circuits 730A and 730B include multiple sense blocks 702 which allow a page of memory cells to be read or programmed in parallel. The memory array 700 is addressable by word lines via row decoders 740A and 740B and by bit lines via column decoders 742 A and 742B. In a typical embodiment, a controller 744 is included in the same memory device 710 (e.g., a removable storage card or package) as the one or more memory die 712. Commands and data are transferred between the host and controller 744 via lines 732 and between the controller and the one or more memory die 712 via lines 734. Some memory systems may include multiple dies 712 in communication with Controller 744.
[0062] Control circuitry 720 cooperates with the read/write circuits 73 OA and 730B to perform memory operations on the memory array 700. The control circuitry 720 includes a state machine 722, an on-chip address decoder 724 and a power control module 726. The state machine 722 provides chip-level control of memory operations. The on-chip address decoder 724 provides an address interface between that used by the host or a memory controller to the hardware address used by the decoders 740A, 740B, 742A, and 742B. The power control module 726 controls the power and voltages supplied to the word lines and bit lines during memory operations. In one embodiment, power control module 726 includes one or more charge pumps that can create voltages larger than the supply voltage. Control circuitry 720, power control 726, decoder 724, state machine 722, decoders 740 A/B & 742A/B, the read/write circuits 730A/B and the controller 744, collectively or separately, can be referred to as one or more managing circuits (or as "managing circuitry").
[0063] Figure 8 is a block diagram of an individual sense block 702 partitioned into a core portion, referred to as a sense module 880, and a common portion 890. In one embodiment, there will be a separate sense module 880 for each bit line and one common portion 890 for a set of multiple sense modules 880. In one example, a sense block will include one common portion 890 and eight sense modules 880. Each of the sense modules in a group will communicate with the associated common portion via a data bus 872.
[0064] Sense module 880 comprises sense circuitry 870 that determines whether a conduction current in a connected bit line 111 is above or below a predetermined level. In some embodiments, sense module 880 includes a circuit commonly referred to as a sense amplifier. Sense module 880 also includes a bit line latch 882 that is used to set a voltage condition on the connected bit line 111. For example, a predetermined state latched in bit line latch 882 will result in the connected bit line being pulled to a state designating program inhibit (e.g., Vdd).
[0065] Common portion 890 comprises a processor 892, a set of data latches 894 and an I/O Interface 896 coupled between the set of data latches 894 and data bus 820. Processor 892 performs computations. For example, one of its functions is to determine the data stored in the sensed memory cell and store the determined data in the set of data latches. The set of data latches 894 is used to store data bits determined by processor 892 during a read operation. It is also used to store data bits imported from the data bus 820 during a program operation. The imported data bits represent write data meant to be programmed into the memory. I/O interface 896 provides an interface between data latches 894 and the data bus 820.
[0066] During read or sensing, the operation of the system is under the control of state machine 722 that controls the supply of different control gate voltages to the addressed cell. As it steps through the various predefined control gate voltages (e.g., the read reference voltages or the verify reference voltages) corresponding to the various memory states supported by the memory, the sense module 880 may trip at one of these voltages and an output will be provided from sense module 880 to processor 892 via bus 872. At that point, processor 892 determines the resultant memory state by consideration of the tripping event(s) of the sense module and the information about the applied control gate voltage from the state machine via input lines 893. It then computes a binary encoding for the memory state and stores the resultant data bits into data latches 894. In another embodiment of the core portion, bit line latch 882 serves double duty, both as a latch for latching the output of the sense module 880 and also as a bit line latch as described above.
[0067] It is anticipated that some implementations will include multiple processors 892. In one embodiment, each processor 892 will include an output line (not depicted in Fig. 8) such that each of the output lines is wired-OR' d together. In some embodiments, the output lines are inverted prior to being connected to the wired-OR line. This configuration enables a quick determination during the program verification process of when the programming process has completed because the state machine receiving the wired-OR line can determine when all bits being programmed have reached the desired level. For example, when each bit has reached its desired level, a logic zero for that bit will be sent to the wired-OR line (or a data one is inverted). When all bits output a data 0 (or a data one inverted), then the state machine knows to terminate the programming process. In embodiments where each processor communicates with eight sense modules, the state machine may (in some embodiments) need to read the wired-OR line eight times, or logic is added to processor 892 to accumulate the results of the associated bit lines such that the state machine need only read the wired-OR line one time. In some embodiments that have many sense modules, the wired-OR lines of the many sense modules can be grouped in sets of N sense modules, and the groups can then be grouped to form a binary tree.
[0068] During program or verify, the data to be programmed is stored in the set of data latches 894 from the data bus 820. The program operation, under the control of the state machine, comprises a series of programming voltage pulses (with increasing magnitudes) concurrently applied to the control gates of the addressed memory cells to that the memory cells are programmed at the same time. Each programming pulse is followed by a verify process to determine if the memory cell has been programmed to the desired state. Processor 892 monitors the verified memory state relative to the desired memory state. When the two are in agreement, processor 892 sets the bit line latch 882 so as to cause the bit line to be pulled to a state designating program inhibit. This inhibits the memory cell coupled to the bit line 111 from further programming even if it is subjected to programming pulses on its control gate. In other embodiments the processor initially loads the bit line latch 882 and the sense circuitry sets it to an inhibit value during the verify process.
[0069] Data latch stack 894 contains a stack of data latches corresponding to the sense module. In one embodiment, there are three (or four or another number) data latches per sense module 880. In some implementations (but not required), the data latches are implemented as a shift register so that the parallel data stored therein is converted to serial data for data bus 820, and vice versa. In one preferred embodiment, all the data latches corresponding to the read/write block of memory cells can be linked together to form a block shift register so that a block of data can be input or output by serial transfer. In particular, the bank of read/write modules is adapted so that each of its set of data latches will shift data into or out of the data bus in sequence as if they are part of a shift register for the entire read/write block.
[0070] Figure 9A is a flow chart describing one embodiment of a process for performing programming on memory cells connected to a common word line to one or more targets (e.g., data states or threshold voltage ranges). Typically, the program voltage applied to the control gate during a program operation is applied as a series of program pulses. Between programming pulses are a set of verify pulses to perform verification. In many implementations, the magnitude of the program pulses is increased with each successive pulse by a predetermined step size. Figure 9B shows one example sequence of program pulses 964, 965, 966 and verify pulses 967. [0071] In step 570 of Figure 9A, the programming voltage (Vpgm) is initialized to the starting magnitude (e.g., -12-16V or another suitable level) and a program counter PC maintained by state machine 722 is initialized at 1. In step 972, a program pulse of the program signal Vpgm is applied to the selected word line (the word line selected for programming). In one embodiment, the group of memory cells being programmed concurrently are all connected to the same word line (the selected word line). The unselected word lines may receive one or more boosting voltages (e.g., -7-11 volts) to perform boosting schemes known in the art. If a memory cell should be programmed, then the corresponding bit line is grounded, in one embodiment. On the other hand, if the memory cell should remain at its current threshold voltage, then the corresponding bit line may be connected to Vdd to inhibit programming. In step 972, the program pulse is concurrently applied to all memory cells connected to the selected word line so that all of the memory cells connected to the selected word line are programmed concurrently. That is, they are programmed at the same time (or during overlapping times). In this manner all of the memory cells connected to the selected word line will concurrently have their threshold voltage change, unless they have been locked out from programming.
[0072] In step 974, the appropriate memory cells are verified using the appropriate set of target levels to perform one or more verify operations. In one embodiment, the verification process is performed by testing whether the threshold voltages of the memory cells selected for programming have reached the appropriate verify compare voltage. Referring to FIG. 9B, there may be several verify pulses 967 between each program pulse to test for different program states. This will be discussed further with respect to Figures 10A-E. In some embodiments, multiple verify levels are tested for while applying the same voltage to the selected word line. Further details are discussed below.
[0073] In step 976, it is determined whether all the memory cells have reached their target threshold voltages (pass). If so, the programming process is complete and successful because all selected memory cells were programmed and verified to their target states. A status of "PASS" is reported in step 978. If, in 976, it is determined that not all of the memory cells have reached their target threshold voltages (fail), then the programming process continues to step 980. Note that in some embodiments, there is a verify low reference level and a verify high reference level. This will be discussed below in connection with, for example, the process of Figure 20. [0074] In step 980, the system counts the number of memory cells that have not yet reached their respective target threshold voltage distribution. That is, the system counts the number of cells that have failed the verify process. This counting can be done by the state machine, the controller, or other logic. In one implementation, each of the sense blocks 702 (see Fig. 7) will store the status (pass/fail) of their respective cells. These values can be counted using a digital counter. As described above, many of the sense blocks have an output signal that is wire-OR'd together. Thus, checking one line can indicate that no cells of a large group of cells have failed verify. By appropriately organizing the lines being wired-OR together (e.g., a binary tree-like structure), a binary search method can be used to determine the number of cells that have failed. In such a manner, if a small number of cells failed, the counting is completed rapidly. If a large number of cells failed, the counting takes a longer time. In another alternative, each of the sense amplifiers can output an analog voltage or current if its corresponding memory cell has failed and an analog voltage or current summing circuit can be used to count the number of memory cells that have failed.
[0075] In one embodiment, there is one total count, which reflects the total number of memory cells currently being programmed that have failed the last verify step. In another embodiment, separate counts are kept for each data state.
[0076] In step 982, it is determined whether the count from step 980 is less than or equal to a predetermined limit. In one embodiment, the predetermined limit is the number of bits that can be corrected by ECC during a read process for the page of memory cells. If the number of failed cells is less than or equal to the predetermined limit, than the programming process can stop and a status of "PASS" is reported in step 978. In this situation, enough memory cells programmed correctly such that the few remaining memory cells that have not been completely programmed can be corrected using ECC during the read process. In some embodiments, step 980 will count the number of failed cells for each sector, each target data state or other unit, and those counts will individually or collectively be compared to a threshold in step 582.
[0077] In another embodiment, the predetermined limit can be less than the number of bits that can be corrected by ECC during a read process to allow for future errors. When programming less than all of the memory cells for a page, or comparing a count for only one data state (or less than all states), than the predetermined limit can be a portion (pro-rata or not pro-rata) of the number of bits that can be corrected by ECC during a read process for the page of memory cells. In some embodiments, the limit is not predetermined. Instead, it changes based on the number of errors already counted for the page, the number of program- erase cycles performed or other criteria.
[0078] If number of failed memory cells is not less than the predetermined limit, than the programming process continues at step 984 and the program counter PC is checked against the program limit value (PL). Examples of program limit values include 20 and 30; however, other values can be used. If the program counter PC is not less than the program limit value PL, then the program process is considered to have failed and a status of FAIL is reported in step 988. If the program counter PC is less than the program limit value PL, then the process continues at step 586 during which time the Program Counter PC is incremented by 1 and the program voltage Vpgm is stepped up to the next magnitude. For example, the next pulse will have a magnitude greater than the previous pulse by a step size (e.g., a step size of 0.1-0.4 volts). After step 986, the process loops back to step 972 and another program pulse is applied to the selected word line.
[0079] Figures 10A-E illustrate a multi-phase programming approach that may be used during one embodiment of the programming process of Figure 9A. The final program states (S0-S7) are depicted in Figure 10E. Note that there is a verify level (Vvl, Vv2, Vv3, Vv4, Vv5, Vv6, Vv7) associated with states S1-S7. These verify levels may correspond to the verify pulses in Figure 9B.
[0080] In the embodiment of Figure 10A-E, the programming process includes three phases. Prior to programming, the memory cells are erased so that all memory cells connected to a common word line are in an erased threshold voltage distribution E, as depicted in Figure 10A. This common word line that is associated with memory cells to be programmed is referred to as a selected word line. Note that memory cells other than those associated with the selected word line may be erased together. For example, all memory cells in a block, or some section of the block, could be erased together.
[0081] During the first phase of programming, those memory cells whose targets (due to the data to be stored in those memory cells) are data states S4, S5, S6 or S7 are programmed to an intermediate state IM. Those memory cells are targeted for data states SO, SI, S2 or S3 and remain in the erased threshold voltage distribution E. The first phase is graphically depicted by Figure 10B. Memory cells being programmed to intermediate state IM are programmed to a target threshold voltage of VvIM.
[0082] During the second phase of the programming process of Figures 10A-E, memory cells are programmed to a verify level that is somewhat below their final intended verify level. This is depicted in Figure IOC in which verify levels Vvl ', Vv2', Vv3', Vv4', Vv5', Vv6', Vv7') associated with each state. The distributions are labeled, SI ', S2', S3', S4', S5', S6', and S7' to indicate that these are not the final program states. These may be referred to a "foggy states". Note that, for example, Vvl ' is lower than Vvl . It is not required that there be a lower verify level for each state. For example, there might not be a lower verify level Vv7' for the highest state. Instead memory cells for the highest state might be programmed directed to the higher verify level Vv7. The second phase may be referred to as a course programming phase.
[0083] During the third phase of the programming process of Figures 10A-E, memory cells are programmed to their final program state. This is depicted in Figure 10D in which verify levels Vvl, Vv2, Vv3, Vv4, Vv5, Vv6, Vv7 are associated with each state. During the third phase, the programming speed may be slowed down, which can help to create a tighter threshold voltage distribution. The third phase may be referred to as a fine programming phase. Note that the second phase and third phase may be performed together. Further details are discussed below.
[0084] During the second phase, memory cells that are in the erased threshold voltage distribution E are programmed to one of levels Vvl ', Vv2', Vv3' or Vv4'. For example, those memory cells to be programmed to data state S3 are programmed from erased threshold voltage distribution E to foggy state S3', those memory cells to be programmed to data state S2 are programmed from erased threshold voltage distribution E to foggy state S2', those memory cells to be programmed to data state SI are programmed from erase threshold voltage distribution E to foggy state SI ', and those memory cells to be in data state SO are not programmed during the second phase of the programming process. Thus, erased threshold voltage distribution E becomes data state SO. Also, during the second phase, memory cells are programmed from the intermediate state IM to various data states S4-S7. For example, those memory cells to be programmed to data state S7 are programmed from the intermediate state IM to foggy state S7', those memory cells targeted to be in data state S6 are programmed from intermediate state IM to foggy state S6', both memory cells to be programmed to data state S5 are programmed from intermediate state IM to foggy state S5', and those memory cells to be programmed to state S4 are programmed from intermediate state IM to foggy state S4'. This second phase of programming is illustrated in Figure IOC.
[0085] As can be seen in Figure IOC, at the end of the second phase of programming foggy states Sl '-S7' overlap with neighboring foggy states. For example, foggy state SI ' overlaps with foggy state S2', foggy state S2' overlaps with foggy states SI ' and S3', foggy state S3' overlaps with foggy states S2' and S4', foggy state S4' overlaps with foggy states S3' and S5', foggy state S5' overlaps with foggy states S4' and S6', and foggy state S6' overlaps with foggy states S5' and S7'. In some embodiments, all or some of the foggy states do not overlap.
[0086] In the third phase of programming, the distributions are tightened up from the foggy states SI '-S7' to the final states S1-S7. This is depicted graphically by Figure 10D. As noted above, some memory cells may be in the third phase while others are the in second phase. Also, a memory cell could skip either the second or third phase. As noted, the second phase is not required for all states. Also, a memory cell could have its threshold voltage go past the verify high level in the same programming pulse as it crossed the verify low level, in which case it does not undergo the slow programming associated with the third phase. In some embodiments, data state SO is wider than data states S1-S7.
[0087] Note that many variations of programming are possible. Rather than eight states, there may be two, four, sixteen, or some other number of states. There are also many possible variations to the programming phases. For example, programming to the intermediate state IM is skipped in one embodiment.
[0088] When programming data to multiple states (e.g., rather than binary programming), it is important that the programming process be sufficiently precise so that the read process can unambiguously distinguish between the different threshold voltage distributions. For example, the tighter the threshold voltage distribution, the easier it is to unambiguously read the memory cells.
[0089] As noted above, one solution for achieving tight threshold voltage distributions, without unreasonably slowing down the programming process, includes both low- and high- verify levels for a given state. Programming to the low verify level may be referred to as a coarse programming phase. This includes an attempt to raise a threshold voltage in a faster manner and paying less attention to achieving a tight threshold voltage distribution. Programming to the high verify level may be referred to as a fine programming phase. This attempts to raise the threshold voltage in a slower manner in order to reach the target threshold voltage, while also achieving a tighter threshold voltage distribution.
[0090] Figures 11 A, 11B, 12A and 12B provide more details of one example of a coarse/fine programming methodology. Figures 11 A and 12A depict the threshold voltage of the memory cells being programmed. Figures 11B and 12B depict the bit line voltages for the memory cells being programmed. This example of Figures 11A, 1 IB, 12A and 12B uses two verify levels, indicated in the Figures as Vv' and Vv. The final target level is Vv. Figures IOC and 10D show examples of such low and high verify levels for several states.
[0091] When a threshold voltage of the memory cell has reached Vv, the memory cell will be inhibited from further programming by applying an inhibit voltage to the bit line corresponding to that memory cell. For example, the bit line voltage can be raised to Vinhibit (See Figure 11B and Figure 12B). However, when a memory cell has reached a threshold voltage close to (but lower than) the target value Vv, the threshold voltage shift for the memory cell during subsequent programming pulses is slowed down by applying a certain bias voltage to the bit line, typically in the order of 0.3v to 0.8v. Because the rate of threshold voltage shift is reduced during the next few programming pulses, the final threshold voltage distribution can be narrower than with other programming methods. To implement this method, a second verify level that is lower than that of Vv is used. This second verify level is depicted in 11A and 12A as Vv', with Vv > Vv'. When the threshold voltage of the memory cell is larger than Vv', but still lower than Vv, the threshold voltage shift to the memory cell will be reduced for subsequent programming pulses by applying a bit line bias Vs (Figure 12B). Note that in this case, two verify operations may be used for each state. One verify operation at the corresponding Vv for each state, and one verify operation at the corresponding Vv' for each state. Note that some states, such as the highest state, might not have a low verify level.
[0092] Figures 11 A and 1 IB show the behavior of a memory cell whose threshold voltage moves past Vv' and Vv in one programming pulse at t2. For example, the threshold voltage is depicted in Figure 11A to pass Vv' and Vv in between t2 and t3. Thus, prior to t3, the memory cell is in the coarse phase. After t3, the memory cell is in the inhibit mode. [0093] Figures 12A and 12B depict a memory cell that enters both the coarse and fine programming phases. The threshold voltage of the memory cell crosses Vv' in between time t2 and time t3 (e.g., from a programming pulse applies starting at t2). Prior to t3, the memory cell is in the coarse phase. After t3, the bit line voltage is raised to Vs; therefore, the memory cell is in the fine phase. In between t3 and t4, the threshold voltage of the memory cell crosses Vv; therefore, the memory cell is inhibited from further programming by raising the bit line voltage to Vinhibit at t4. If the coarse/fine programming scheme was not being used, the threshold voltage of the memory cells could exceed Vv by a margin much more than depicted in Figure 12 A.
[0094] The voltage Vv is greater than the voltage Vv' by a difference referred to as Δ (see Fig. 12A). One possible way to achieve the immediately above-described coarse/fine programming process is two apply consecutive verify operations at two different control gate (Word Line) voltages, for each data state. For example, the wave form of Figure 9B would include fourteen verify pulses rather than seven if memory cells are being programed to states S1-S7. However, having two consecutive verify operations for each data state slows down the program/verify process because the time needed to change the word line voltage is longer than desired. For example, as the word lines become longer to connect with more memory cells, the RC delays increase and slow the down the process of changing the word line voltage. Likewise, as parasitic capacitance between word lines becomes greater due to more closely spaced word lines, the RC delay increases.
[0095] To address the decrease in speed of the program/verify process because of the time needed to change the word line voltage, a variation of the above-described coarse/fine programming process can be used where the control gate (word line) voltage is the same for both verify operations (verify at Vv' and at Vv) for each data state. In this scheme, the sense amplifier 870 will test for two different threshold voltages (e.g., Vv' and Vv) by sensing the memory cell for two different currents. In one embodiment, sensing for verify at Vv' and at Vv is performed without changing the voltage on the selected word line. Further details are discussed below.
[0096] Figure 13A shows threshold distributions of memory cells just after programming is complete with read reference levels Vrl, Vr2, Vr3, Vr4, Vr5, Vr6, and Vr7. Read level Vrl is used to test for whether memory cells have a threshold voltage above or below that level. By testing for all read reference levels, a determination can be made which state each memory cell is in.
[0097] However, there may be some overlap between threshold voltage distributions. This is depicted in Figure 13B for two neighboring states. This overlap could happen to some extent at programming due to, for example, some memory cells being over-programmed or under-programmed. Also, the threshold voltage distributions could spread out over time due to, for example, read disturb. Read disturb is a phenomenon in which the threshold voltage of a memory cell changes slightly due to a voltage applied to read the memory cell.
[0098] In one embodiment, soft bits are used to improve the accuracy of read operations. The read levels Vrl, Vr2, Vr3, Vr4, Vr5, Vr6, and Vr7 may be referred to as "hard bits". As noted above, error correction can be used to accurately determine the state to which a memory cell was intended to be programmed even if its present threshold voltage is not at the correct range.
[0099] Figure 13B depicts two neighboring threshold voltage distributions with reference levels for a hard bit (HB) and two associated soft bits (SB', SB). The hard bit is for one of the read levels Vrl-Vr7. In this example, the soft bits are at about the center of one of the two threshold voltage distributions. This is just one example. Also, there could be more than two soft bits associated with the hard bit.
[00100] In one embodiment, a memory cell is sensed at the hard bit reference level and the two soft bit reference levels. This information can be fed into an error correction control process. This provides more data that can be used by the correction engine to speed up or otherwise aid convergence in the error correction process. In one embodiment, sensing of the hard bit and two soft bits is performed without changing the voltage on the selected word line.
[00101] Figure 14 is a diagram of one embodiment of sensing circuit sense circuitry 870 (see Figure 8). The circuit 870 may be used to sense multiple threshold voltage levels while the same voltage is applied to the selected word line. The circuit 870 has a charge storage device 1416 having a node that serves as a sense node (SEN). A second node of the charge storage device 1416 is provided with a clock signal (CLK). The clock signal CLK may be used to adjust the voltage at the sense node SEN. In one embodiment, the charge storage device 1416 is implemented with a capacitor.
[00102] The sense node (SEN) is connected to a sensing device 1414. The sensing device 1414 senses the voltage at SEN node and determines whether the voltage is above/below a target level. This may be used to determine whether a memory cell has a threshold voltage above/below a reference level. Node 1411 of the sensing device 1414 is provided with signal SRC. The SRC signal may be used to modify the target level that the sensing device 1414 tests for. This may be referred to as adjusting the trip point of the sensing device 1414. In one embodiment, the sensing device 1414 is implemented with a transistor. Thus, the trip point may be defined by whether the transistor turns on or not in response to the voltage at SEN.
[00103] The data latch 1412 stores a result of the sensing device 1414, which may be provided by the data out line. The data latch 1412 inputs a reset signal RST, which resets the data latch 1412 between sensing operations.
[00104] The pre-charge circuit 1404 establishes a voltage at the SEN node. This is done to establish an initial reference voltage at the sense node SEN. This is accomplished by charging the charge storage device 1416 in one embodiment.
[00105] The bit line connection circuit 1402 connects/disconnects the charge storage device 1416 from the bit line. The bit line is associated with the memory cell being sensed. After a reference voltage has been applied to the control gate of the selected memory cell, the charge storage device 1416 is connected to the bit line to allow the conduction current of the selected memory cell to discharge the charge storage device 1416 for a sensing time. Then, the charge storage device 1416 is disconnected from the bit line to stabilize the voltage on the sense node SEN such that the condition of the memory cell may be sensed.
[00106] Figure 15 is a flowchart of one embodiment of a process that is used to determine multiple reference levels while the same voltage is applied to the selected word line. In one embodiment, the process is used to sense a verify low level and a verify high level while the same voltage is applied to the selected word line. In one embodiment, the process is used as a part of a process that reads a hard bit and soft bits while the same voltage is applied to the selected word line. Figure 23 shows how the process of Figure 15 can be expanded to read a hard bit and two soft bits. Reference will be made to the circuit 870 of Figure 14 to facilitate explanation of the process of Figure 15. Note that prior to the process of Figure 15 a reference voltage may be applied to the selected word line.
[00107] In step 1502 a sense voltage is developed on the sense node SEN. In one embodiment, the sense node SEN is connected to the gate of a sensing transistor that has a source terminal connected to SRC. The sense node SEN is associated with a selected nonvolatile storage element. A selected non-volatile storage element means one that is selected to be sensed. In one embodiment, the selected non-volatile storage element is on a NAND string associated with the sense node SEN.
[00108] Developing the sense voltage on the sense node may include developing a voltage that is representative of a condition of the selected non- volatile storage element. Step 1502 may include connecting the sense node SEN to the selected non-volatile storage element to allow a conduction current of the selected non-volatile storage element to discharge the sense node to some extent. Further details are discussed below.
[00109] In step 1504, a determination is made whether the sensing device 1414 conducts a current in response to the sense voltage on the sense node SEN. For example, a determination is made whether a sense transistor conducts a significant current or turns on in response to the voltage on the sense node SEN. At this time, the node 1411 of the sensing device 1414 could be grounded, as one possibility.
[00110] In step 1506, a condition of the selected non- volatile storage element is determined with respect to a first reference level based on whether the sensing device 1414 conducts a current in response to the sense voltage on the sense node SEN. As one example, a determination is made whether the memory cell has a threshold voltage above/below a verify low level (e.g., one of the levels Vvl ' - Vv7'). As another example, a determination is made whether the memory cell has a threshold voltage above/below a soft bit level (e.g., soft bit SB' in FIG. 13B). This determination may be made by circuitry connected to the sense circuit 870. For example, the data from the data latch 1412 may be provided to the processor 892, control circuitry 720, and/or controller 744 to make this determination.
[00111] In step 1508, the voltage on node 1411 of the sensing device 1414 (e.g., a source terminal of the sense transistor) is modified. For example, the signal SRC is used to modify the voltage on the node 1411 of sensing device 1414. In one embodiment, the voltage on the node 1411 is increased in step 1508 to allow the sensing device 1414 to test for a different reference level.
[00112] In step 1510, a determination is made whether the sensing device 1414 conducts a current in response to the sense voltage on the sense node SEN, with the present voltage on node 1411. For example, a determination is made whether sensing device 1414 conducts a significant current or turns on in response to the voltage on the sense node SEN given the present voltage on node 1411.
[00113] In step 1512, a condition of the selected non-volatile storage element is determined with respect to a second reference level based on whether the sensing device 1414 conducts a current in response to the sense voltage on the sense node SEN. As one example, a determination is made whether the memory cell has a threshold voltage above/below a verify high level. As another example, a determination is made whether the memory cell has a threshold voltage above/below a hard bit level or a different soft bit level than step 1506. This determination may be made by circuitry connected to the sense circuit 1400, as discussed in step 1506.
[00114] Note that the voltage on the selected word line may remain constant between steps 1504 and 1510.
[00115] Figure 16 is a schematic diagram depicting one embodiment sense circuitry 870 (see Figures 8 and 14). The sense circuitry 870 could be used during the process of Figure 15, as well as other processes described below. As described below, the circuit of Figure 16 will pre-charge a capacitor (or other charge storage device) to a pre-charge magnitude, discharge the capacitor through the memory cell for a sensing time, and sense voltage at the capacitor after the sensing time. Though Figure 16 features one capacitor 1416, in some embodiments, any suitable charge storage device can replace or complement this capacitor 1416. The sense voltage will be indicative of whether the memory cell conducted the current being sensed for, which is indicative of whether the threshold voltage of the memory cell is greater than or less than threshold voltage being tested for. If the threshold voltage of the memory cell is greater than the threshold voltage being tested, then, during a verify operation, the memory cell will enter the fine phase or complete programming, as appropriate based on the processes described above. Thus, the circuit of Figure 16 can be used for the coarse/fine programming discussed above or for other systems that do not use coarse/fine programming. In some embodiments, the circuit of Figure 16 can be used for read operations. For example, hard and soft bits can be read during read operations.
[00116] Figure 16 shows transistor 1600 connected to the Bit Line and transistor 1602. Transistor 1600 receives the signal BLS at its gate, and is used to connect to or isolate the Bit Line. Transistor 1602 receives the signal BLC at its gate, and is used as a voltage clamp. The gate voltage BLC is biased at a constant voltage equal to the desired Bit Line voltage plus the threshold voltage of transistor 1602. The function of transistor 1602, therefore, is to maintain a constant Bit Line voltage during a sensing operation (during read or verify), even if the current through the Bit Line changes.
[00117] Transistor 1602 is connected to transistor 1402. Transistor 1402 is connected to capacitor 1416. The purpose of transistor 1402 is to connect capacitor 1416 to the Bit Line and disconnect capacitor 1416 from the Bit Line so that capacitor 1416 is in selective communication with Bit Line. In other words, transistor 1402 regulates the sensing time. That is, while transistor 1402 is turned on capacitor 1416 can discharge through the Bit Line, and when transistor 1402 is turned off capacitor 1416 cannot discharge through the Bit Line.
[00118] The SEN node at which transistor 1402 connects to capacitor 1416 is also connected to the gate of sensing transistor 1414. Thus, the upper plate of capacitor 1416 is connected to the gate of sensing transistor 1414. The lower plate of capacitor 1416 is connected to clock signal CLK. The purpose of clock signal CLK is to raise or lower the voltage on the upper plate of the capacitor 1416, and hence raise or lower the voltage on the sense node SEN.
[00119] The SEN node is also connected to transistor 1610, which is connected to transistor 1618. The signal HLL is provided to the gate of transistor 1610. The signal LAT is provided to the gate of transistor 1618. A purpose of transistors 1610 and 1618 is to pre- charge the sense node SEN. A voltage (e.g. Vdd or other voltage) is applied to the source of transistor 1618. By appropriately biasing transistors 1618 and 1610, the voltage applied to the source of transistor 1618 can be used to pre-charge capacitor 1416. After pre-charging, capacitor 1416 can discharge through the Bit Line via transistor 1402 (assuming that transistors 160 and 1602 are conducting). [00120] The sensing transistor 1414 has a source node 1411 that is provided with a source signal SRC. A purpose of the source signal SRC is to adjust the reference level that the sense transistor 1414 tests for. In other words, the source signal SRC modifies the trip point of sensing transistor 1414. The drain of sense transistor 1414 is connected to a strobe transistor 1612. The gate of the strobe transistor 1612 is provide with a strobe signal STRO. A purpose of the strobe transistor 1612 is to connect the sensing transistor 1414 to the latch circuit 1412.
[00121] The latch circuit 1412 includes transistors 1640, 1642, 1644, 1650, 1652, and 1654. Transistor 1650 receives the strobe signal STRO at its gate. Transistor 1640 receives a reset signal RST at its gate. The gates of transistors 1652 and 1654 are tied together. The LAT voltage in the data latch 1412 represents a condition of the memory cell. In one embodiment, LAT will be high of the memory cell passes a verify condition and low if the memory cell fails the verify condition. Thus, a high LAT means that the memory cell has a threshold voltage above the reference level, in one embodiment. Thus, a low LAT means that the memory cell has a threshold voltage below the reference level, in one embodiment.
[00122] A reset transistor 1460 is connected to the gates of transistors 1652 and 1654. The gate of reset transistor 1460 is provided with the reset signal RST. Thus, the reset signal RST may be used to reset the latch 1412.
[00123] As discussed above, capacitor 1416 is pre-charged via transistors 1610 and 1618. This will raise the voltage at the node SEN to a pre-charge voltage level (Vpre). When transistor 1402 turns on, capacitor 1416 can discharge its charge through the Bit Line and the selected memory cell if the threshold voltage of the memory cell is below the voltage level being tested for. If the capacitor 1416 is able to discharge, then the voltage at the capacitor (at the SEN node) will decrease.
[00124] The pre-charge voltage (Vpre) at the SEN node is greater than the threshold voltage of transistor 1414; therefore, prior to the sense time, transistor 1414 is on (conducting). Since transistor 1414 is on during the sense time, then transistor 1612 should be off. If the capacitor 1416 does not discharge during the sense time, then the voltage at the SEN node will remain above the threshold voltage of transistor 1414. With the sense transistor 1414 on and transistor 1612 on LAT in the data latch 1412 goes high, in one embodiment. [00125] If the capacitor 1416 discharges sufficiently during the sense time, then the voltage at the SEN node will decrease below the threshold voltage of transistor 1414; thereby, turning off transistor 1414. In this case, LAT in the data latch 1412 will be low, in one embodiment. The voltage at LAT in the data latch 1412 may be provided to managing circuitry outside of the sense circuit 870. In one embodiment, a compliment of the voltage at LAT in the data latch 1412 is provided to managing circuitry outside of the sense circuit 870. Thus, the condition of the memory cell with respect to a reference level (e.g., threshold voltage) may be determined by the sense circuit 870 and/or by managing circuitry outside of the sense circuit 870.
[00126] Figure 17 is a flowchart describing one embodiment sensing a memory cell. The process includes one example implementation of steps 1502 and 1504 of the process of Figure 15. The process of Fig. 17 can be executed by the circuit of Fig. 16. The embodiment of Figure 17 assumes a structure in which a charge storage device 1416 will discharge its charge through the selected memory cell in order to detect current. One example of such a structure is depicted at least in part by Fig. 16, as described above. In the example of Figure 16, the charge storage device 1416 comprises a capacitor. However, in other embodiments, other types of charge storage devices can also be used. Figure 18 contains timing signals that will be referred to when discussing the process of Figure 17.
[00127] In step 1702 of Figure 17, the capacitor (or other charge storage device) will be pre- charged to a pre-determined voltage level. Referring to Figure 18, between time tO and tl, FILL is high and LAT is low. These conditions turn on both transistors 1618 and 1610, connecting the top plate of the capacitor 1416 to Vdd (or some other voltage). At time tl, the voltage at SEN is at the pre-charge voltage Vpre. Note that Vpre is not required to be Vdd, as the time for which FILL is high can be adjusted to establish a suitable Vpre. At time tl, FILL is low, which turns off transistor 1610 to stop the pre-charging.
[00128] In step 1704, the voltage on the capacitor 1416 (or other charge storage device) is increased. Referring to Figure 18, at time t2 the clock signal CLK is raised. This has the effect of raising the voltage at SEN by a similar amount. Referring to Figure 16, raising CLK at the bottom plate of capacitor 1416 has the effect of raising the top plate of the capacitor 1416 (or sense node SEN) by a similar amount. [00129] In step 1706, the pre-charged capacitor (or other charge storage device) will be connected to the bit line. Referring to Figure 18, at time t3, the signal XXL goes high. Also note that BLC may be high at this time. Likewise, BLS may be high at this time. Referring now to Figure 16, XXL is provided to the gate of transistor 1402, thus turning on transistor 1402. Also, transistors 1600 and 1602 are on at this time. This connects the sense node SEN to the bit line.
[00130] In step 1708, the capacitor 1416 is allowed to discharge its charge through the bit line and NAND string (including the selected memory cell being sensed). The system will wait for a sense time in step 1708. Referring to Figure 18, the signal XXL remains high from time t3 to t4. Note that the entire process only needs one sense time.
[00131] Also referring to Figure 18, between t3 and t4, the sense node SEN discharges. Three different discharge rates are depicted. These rates will be discussed more fully below. Briefly, curve 1802 is associated with a memory cell having a low conduction current, curve 1084 is associated with a memory cell having a medium conduction current, and curve 1806 is associated with a memory cell having a high conduction current. Stated another way, curve 1802 is associated with a memory cell having a threshold voltage above a higher reference level. Curve 1804 is associated with a memory cell having a threshold voltage between a lower reference level and the higher reference level. Curve 1806 is associated with a memory cell having a threshold voltage below the lower reference level.
[00132] In step 1710, the voltage on the capacitor 1416 is decreased. Referring to Figure 18, at time t5 the clock signal CLK is lowered. This has the effect of lowering the voltage at SEN by a similar amount.
[00133] In step 1712, the voltage on the capacitor 1416 is tested. The system will calculate the change in voltage across the capacitor from the pre-charge voltage to the voltage detected in step 1712. Referring to Figure 18, at time t6, the strobe signal STRO goes high. Also note that prior to this at time t5, the reset signal RST went low to reset the latch circuit. Referring to Figure 16, the sense transistor 1414 will be either on or off in response to the voltage on the sense node SEN. With the strobe signal STRO high, transistor 1612 is on, which provides a current path between the sense transistor 1414 and the latch circuit 1412. The value of LAT in the data latch 1412 will be set based on whether the sense transistor 1414 conducts. There are three LAT conditions depicted in Figure 18. LAT (low) corresponds to the low current conduction curve 1802, LAT (medium) corresponds to the medium current conduction curve 1804, LAT (high) corresponds to the high current conduction curve 1806. These three LAT conditions will be discussed more fully below.
[00134] In one embodiment, the trip point of the sense circuit 870 is changed by increasing the voltage on the source node of the sense transistor 1414. Figure 19 is a diagram to illustrate this embodiment. The diagram shows the voltage on the sense node (SEN) over time. These time frame corresponds to t3-tl l in Figure 18. The following discussion will use an example in which verify low Vv' is the low reference level and verify high Vv is the high reference level. However, the low and high reference levels do not need to be for verify low and verify high.
[00135] Curve 1802 is associated with a memory cell having a low conduction current, curve 1084 is associated with a memory cell having a medium conduction current, and curve 1806 is associated with a memory cell having a high conduction current. Also depicted are "effective trip points". These are the voltages at which the sense transistor 1414 will flip from off to on. The effective trip point changes when increasing the voltage on the source node 1411 of the sense transistor 1414. This occurs between the phase for sensing verify low and the phase for sensing verify high.
[00136] A memory cell having a very low conduction current has a relatively high threshold voltage. Thus, it should pass both the verify low Vv' and verify high Vv tests. This is reflected by curve 1802.
[00137] A memory cell having a medium conduction current has a threshold voltage between the verify low Vv' and verify high Vv levels and hence should pass verify low, but fail verify high. Thus, it should pass the verify low Vv', but fail the verify high Vv test. This is reflected by curve 1804.
[00138] A memory cell having a high conduction current has a threshold voltage below the verify low Vv' and verify high Vv levels and hence should fail both verify low and verify high. This is reflected by curve 1806.
[00139] Reference will be made again to Figure 16 to explain how increasing the voltage on the source node 1411 of the sense transistor 1414 changes the trip point. The trip point is the threshold voltage of the sense transistor 1414 plus the voltage on the source node 1411, in one embodiment. By increasing the voltage on the source node 1411, the trip point increases. The trip point could be decreased by decreasing the voltage on the source node 1411.
[00140] Note that the capacitance of the sense transistor 1414 can be relatively low. Therefore, changing the voltage on the source node 1411 can be achieved quickly with little current consumption. These are important advantages in that reducing the time to verify and reducing current consumption are significant benefits.
[00141] Figure 20 is one embodiment of a process of verifying memory cells during a programming operation. In this process, memory cells are verified to a low- and a high- verify level. This may be used for what is referred to a "quick pass write" (QPW). Reference will be made to the example circuit of Figure 16 and the example timing diagram of Figure 18. The process of Figure 20 uses the technique described in Figure 19 of raising the voltage on the source node 1411 of the sense transistor 1414.
[00142] In step 2002, a voltage is applied to the word line for the selected memory cell being programmed and verified while maintaining the voltage level of the bit line to which the memory cell is connected at a constant value. This word line voltage is applied based on the data state being verified. As explained above, different control gate voltages are used to verify programming to different data states. As discussed above, for at least some of the data states, there will be two sensing operations, one for the respective Vv' and one for the respective Vv. The same word line voltage will be applied to the word line for both sensing operations for a given data state.
[00143] In step 2004, the system will sense current through the memory cell for the first sensing operation. This is used to determine whether the memory cell is at the low verify level Vv'. If the memory cell has a threshold voltage above the low verify level Vv' it should not conduct a significant current. If the memory cell has a threshold voltage below the low verify level Vv' it should conduct a significant current.
[00144] Referring to the timing diagram of Figure 18, this sensing may occur between times t6 and t7. Thus, note that the various steps of pre-charging the sense node SEN and discharging the sense node SEN to the bit line may be performed prior to step 1904. Sensing up to this point was described above with respect to the process of Figure 17. In one embodiment, LAT goes high when the memory cell passes the verify low test. Memory cells having low conduction current (curve 1802) or medium conduction current (curve 1804) pass the verify low test, and thus have LAT high. Referring to Figure 18, LAT is high between time t6 and t8 for memory cells having a low current or medium current.
[00145] In step 1906, the system will sense current through the memory cell for the second sensing operation. This is used to determine whether the memory cell is at the high verify level Vv. Referring to the timing diagram of Figure 18, this sensing may occur between times tlO and tl 1.
[00146] Referring to Figure 18, after the first sensing operation is over at time tl, the following may be performed. The reset signal RST is brought high between times t8 and t9 to reset the latch 1412. The source signal SRC is raised at time t9. This changes the trip point of the sense transistor 1414. Referring to Figure 19, this raises the effect trip point to set up sensing for the high verify level.
[00147] At time tlO, the strobe signal STRO is raised. This again connects the sense transistor 1414 to the latch 1412. Depending on whether the sense transistor 1414 turns on and conducts a current, the value of LAT in the latch 1412 will be set accordingly.
[00148] In one embodiment, LAT goes high when the memory cell passes the high verify test. Memory cells having low conduction current (curve 1802) pass the verify high test, and thus have LAT high. However, memory cells having medium or high conduction current (curves 1804 and 106, respectively) fail the verify high test, and thus have LAT low. Referring to Figure 18, LAT is high between after time tlO for memory cells having a low conduction current. LAT is low between after time tlO for other memory cells.
[00149] Note that steps 2004 and 2006 may both be performed while the voltage that was applied to the word line in step 2002 remains constant.
[00150] If it is determined that the threshold voltage of the memory cell is greater than or equal to Vv (see step 2008), then in step 2016 that memory cell is locked out from further programming for this particular programming process. If, however, it is determined that the threshold voltage of the memory cell is less than Vv, then it is determined whether the threshold voltage in memory cell is greater than or equal to Vv' (step 2010). If the threshold voltage in the memory cell is greater than or equal to Vv', then in step 2014, the bit line voltage is raised to Vs to slow down programming and enter the fine phase. If the threshold voltage is below the Vv', then in step 2012, the bit line voltage is maintained at Vs so that additional coarse programming can be performed.
[00151] In one embodiment, the voltage on the bottom plate of the capacitor 1416 is modified to be able to test for different reference levels with the same voltage applied to the selected word line. Figure 21 shows a diagram to illustrate the foregoing. The diagram shows the voltage on the sense node (SEN) over time. These time frame corresponds to t3- tl l in Figure 18. This is for an example in which verify low and verify high is tested, as indicated by the time axis.
[00152] Curve 1802 is associated with a memory cell having a low conduction current, curve 1084 is associated with a memory cell having a medium conduction current, and curve 1806 is associated with a memory cell having a high conduction current. Also depicted is "trip point". This is the voltage at which the sense transistor 1414 will flip from off to on.
[00153] A memory cell having a very low conduction current has a relatively high threshold voltage. Thus, it should pass both the verify low Vv' and verify high Vv tests. This is reflected by curve 1802.
[00154] A memory cell having a medium conduction current has a threshold voltage between the verify low Vv' and verify high Vv levels and hence should pass verify low, but fail verify high. Thus, it should pass both the verify low Vv', but fail the verify high Vv tests. This is reflected by curve 1804.
[00155] A memory cell having a high conduction current has a threshold voltage below the verify low Vv' and verify high Vv levels and hence should fail both verify low and verify high. This is reflected by curve 1806.
[00156] Reference will be made again to Figure 16 to explain how decreasing the voltage on the bottom plate of the capacitor 1416 allows multiple reference levels to be tested. By increasing the voltage on the bottom plate of the capacitor 1416, the voltage on the sense node SEN increases. This changes the voltage at the gate of the sense transistor 1414.
[00157] The foregoing technique may be combined with the technique of modifying the voltage on the source node 1411 of the sense transistor 1414. In one embodiment, combining these two techniques is used to read a hard bit and two soft bits. Figure 22 shows a diagram to illustrate one embodiment of combining the two techniques to read a hard bit HB and two soft bits SB', SB.
[00158] The four curves 2202, 2204, 2206, and 2208 in Figure 22 correspond to memory cells that are in one of four different regions with respect to the soft and hard bits. Referring to Figure 13B, memory cells having a threshold voltage below SB' should have the highest conduction current in response to voltage applied to the selected word line. These memory cells are associated with curve 2208. Memory cells having a threshold voltage between SB' and HB are associated with curve 2206. Memory cells having a threshold voltage between HB and SB are associated with curve 2204. Memory cells having a threshold voltage between above SB should have the lowest conduction current in response to voltage applied to the selected word line. These memory cells are associated with curve 2202.
[00159] The time axis shows that the first sensing operation is to sense for SB' (the lower soft bit). Then, the voltage on the SEN node is moved down. The next sensing operation is for the hard bit HB. Then, the voltage on the source node 1411 of the sense transistor is moved up. This modifies the effective trip point. The next sensing operation is for the upper soft bit SB.
[00160] Figure 22 also shows above/below conditions for each curve for each sense operation. These refer to whether the memory cell has a threshold voltage above or below the reference level. For curve 2208, the memory cell has a threshold voltage below the reference level for all three cases. For curve 2206, the memory cell has a threshold voltage above the SB' reference level, but below for the other two cases. For curve 2204, the memory cell has a threshold voltage above both the SB' reference level and the HB reference level, but below for the SB reference level. For curve 2202, the memory cell has a threshold voltage above the reference level for all three cases.
[00161] Figure 23 is a flowchart of one embodiment of a process of reading a hard bit and two soft bits. The technique described in Figure 22 may be used. Figure 24 shows timing signals for one embodiment in which the circuit of Figure 16 is used.
[00162] The process starts by performing steps 1502-1506 from the process of Figure 15. These steps develop a voltage on the sense node SEN, determine whether the sense transistor 1414 conducts in response to the voltage on the sense node SEN, and determine a condition of the selected memory cell based on whether the sense transistor conducts. These steps may be used to determine whether the threshold voltage of the memory cell is above/below the lower soft bit level SB'.
[00163] Referring to Figure 24, the strobe signal STRO between times t6 and t7 is used to latch the result of the first sense operation. The sense node SEN shows four different curves 2202, 2204, 2206, and 2208, which correspond to four different amounts of conduction current of the selected memory cell. These refer to the curves already discussed in Figure 22. There are four different latch conditions LAT1, LAT2, LAT3 and LAT4. These refer to the voltage at the node labeled LAT in the data latch 1412. LAT1 corresponds to curve 2202. LAT2 corresponds to curve 2204. LAT3 corresponds to curve 2206. LAT4 corresponds to curve 2208. For the first sense operation, only the highest current case (curve 2208) has a memory cell with its threshold voltage below the reference level. The low condition of LAT4 indicates this situation. The high condition of LAT 1 - LAT3 indicates that the memory cell has its threshold voltage above the reference level.
[00164] In step 2302 a voltage on the sense node is modified. Referring to Figure 24, at time t9, the clock signal CLK is lowered by some amount. This has the effect of lowering the voltage on the top plate of capacitor 1416.
[00165] In step 2304, the system determines whether the sense transistor 1414 conducts in response to the voltage on the sense node. This may be used to test for the hard bit HB. Referring to Figure 24, between times tlO and tl 1, strobe STRO is brought high. This causes the latch circuit 1412 to store the condition of the memory cell, based on whether or not the sense transistor 1414 conducts a current.
[00166] In step 2306, the system determines a condition of the selected memory cell based on whether the sense transistor conducts. Steps 2302-2306 may be used to determine whether the threshold voltage of the memory cell is above/below the hard bit level HB. The voltage on the node labeled LAT in the data latch 1412 may be used to determine the condition of the selected memory cell. When testing for the hard bit HB, memory cells having threshold voltages below the HB reference level should conduct a relatively high current (corresponding to curves 2206 and 2208). For such cells, LAT will be low, as indicated by LAT3 and LAT4 between times tlO and tl 1. On the other hand, memory cells having threshold voltages above the HB reference level should conduct a relatively low current (corresponding to curves 2202 and 2204). For such cells, LAT will be high, as indicated by LAT1 and LAT2 between times tlO and ti l .
[00167] The process then performs steps 1508-1512 from the process of Figure 15. These steps modify a voltage on the source terminal 1411 of the sense transistor 1414, determine whether the sense transistor 1414 conducts in response to the voltage on the sense node SEN, and determine a condition of the selected memory cell based on whether the sense transistor conducts. These steps may be used to determine whether the threshold voltage of the memory cell is above/below the upper soft bit level SB.
[00168] Referring to Figure 24, the source signal SRC is raised at time tl3. The effect of this on the trip point of the sense transistor 1414 has already been discussed. Between times tl4 and tl5, strobe STRO is brought high. This causes the latch circuit 1412 to store the condition of the memory cell, based on whether or not the sense transistor 1414 conducts a current.
[00169] When testing for the upper soft bit SB, memory cells having threshold voltages below the upper soft bit SB reference level should conduct a relatively high current (corresponding to curves 2204, 2206 and 2208). For such cells, LAT will be low, as indicated by LAT2, LAT3 and LAT4 after time tl4. On the other hand, memory cells having threshold voltages above the upper soft bit SB reference level should conduct a relatively low current (corresponding to curve 2202). For such cells, LAT will be high, as indicated by LAT1 after time t 14.
[00170] The technique used in the process of Figure 23 of both modifying the voltage on the SEN node (e.g., step 2302) combined with modifying the voltage on the source node of the sense transistor can provide a better sensing margin compared with modifying the voltage on the SEN node an additional time without modifying the voltage on the source node of the sense transistor.
[00171] Figures 25 and 26 provide an example to help illustrate the foregoing. Figure 25 is one example of sensing voltage margin when the clock CLK is dropped twice to sense three reference levels. Figure 26 is one example of sensing voltage margin when the clock CLK is dropped once and the source of the sense transistor is raised once to sense three reference levels. [00172] Referring now to Figure 25, the clock signal and the voltage on the sense node SEN versus time are depicted. The sense node SEN starts at Vdd, which is the pre-charge voltage. The clock CLK starts at 0V and increases to 1.5 V, which increases the sense node SEN by a corresponding amount. The sense node SEN is then discharged through the bit line as discussed herein. The three curves refer to three different discharge rates depending on the threshold voltage of the memory cell. At the end of the discharge time, the curves are at 2.0V, 1.5V, and 1.0V respectively.
[00173] The clock CLK voltage is dropped three times. This is divided evenly in 0.5V steps, in this example. Thus, the clock drops to 1.0V when sensing SB', to 0.5V when sensing HB, and 0V when sensing SB. This causes a corresponding drop in the sense node SEN voltage. Note that the sense node SEN does not drop below 0V in this example.
[00174] The voltage sense margin is given by the difference between the starting sense node voltages for the two most extreme cases. This is 1.0V in this example.
[00175] Referring now to Figure 26, the clock signal CLK, the source signal SRC, and the voltage on the sense node SEN versus time are depicted. The sense node SEN starts at Vdd, which is the pre-charge voltage. The clock CLK starts at 0V and increases to 1.5 V, which increases the sense node SEN by a corresponding amount. The sense node SEN is then discharged through the bit line as discussed herein. The three curves refer to three different discharge rates depending on the threshold voltage of the memory cell. At the end of the discharge time, the curves are at 2.5V, 2.0V, and 1.3V respectively. Note that the sense time in this example may be different from the example of Figure 25.
[00176] The clock CLK voltage is dropped twice times. This is divided as a 0.7V drop followed by a 0.8V drop. Thus, the clock drops to 0.8V when sensing SB' and to 0V when sensing HB and also when sensing SB. This causes a corresponding drop in the sense node SEN voltage. Note that the sense node SEN does not drop below 0V in this example.
[00177] In this example, the source signal SRC is raised prior to sensing the upper soft bit SB. In this example, SRC is raised by 0.5V.
[00178] The voltage sense margin is given by the difference between the starting sense node voltages for the two most extreme cases. This is 1.2V in this example. A reason for the additional margin is that the clock CLK signal is dropped one fewer time in the example of Figure 26.
[00179] The voltage margin gain refers to the voltage margin using the technique from Figure 26 minus the voltage margin using the technique from Figure 25. More generally, the voltage margin gain can be expressed as follows.
Vmargin Gain = V3 * (II - 13) / 12 (1)
[00180] In Equation 1, 11 is the lower soft bit SB' current, 12 is the hard bit HB current, and 13 is the upper soft bit SB current. These currents refer to the conduction current that a memory cell having a threshold voltage equal to the reference level is expected to have given the reference voltage applied to the control gate of the memory cell. V3 is the final drop down in the clock signal CLK in the method that uses the additional drop in CLK. Thus, the technique of Figure 26 may help to improve voltage margin, at least relative to the technique of Figure 25.
[00181] One embodiment comprises a method of operating non- volatile storage, which comprising the following. A sense voltage is developed on a sense node that is connected to a sensing transistor having a source terminal. The sense node is associated with a selected non-volatile storage element. A determination is made whether the sensing transistor conducts in response to the sense voltage on the sense node. A first condition of the selected non-volatile storage element is determined with respect to a first level based on whether the sensing transistor conducts in response to the sense voltage on the sense node. A voltage on the source terminal of the sensing transistor is modified after determining the first condition with respect to the first reference level. A determination is made whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor. A second condition of the selected non-volatile storage element is determined with respect to a second reference level based on whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor. In one embodiment, the modifying a voltage on the source terminal of the sensing transistor comprises increasing a voltage on the source terminal. [00182] In one embodiment, in addition to the foregoing paragraph the following is performed. A voltage on the sense node is modified after determining a condition of the selected non-volatile storage element with respect to the first level. A determination is made whether the sensing transistor conducts in response to the modified voltage on the sense node. A condition of the selected non-volatile storage element is determined with respect to a third reference level based on whether the sensing transistor conducts in response to the modified voltage on the sense node. Modifying the voltage on the source terminal of the sensing transistor is performed after determining whether the sensing transistor conducts in response to the modified voltage on the sense node. The third reference level is between the first reference level and the second reference level.
[00183] One embodiment includes a non-volatile storage device comprising a plurality of non-volatile storage elements, a plurality of bit lines associated with the plurality of nonvolatile storage elements, and managing circuitry coupled to the plurality of non-volatile storage elements and the plurality of bit lines. The managing circuitry comprises a plurality of sensing circuits. A sensing circuit comprises a charge storage device and a sensing transistor connected to the charge storage device. The managing circuitry develops a sense voltage on the charge storage device of a given sensing circuit. The given sensing circuit being associated with a first of the bit lines. The first bit line being associated with a selected non-volatile storage element of the plurality of non-volatile storage elements. The managing circuitry determines whether the sensing transistor in the given sensing circuit conducts in response to the sense voltage on the charge storage device. The managing circuitry determines a condition of the selected non-volatile storage element with respect to a first reference level based on whether the sensing transistor conducts in response to the sense voltage on the charge storage device. The managing circuitry modifies a voltage on the source terminal of the sensing transistor after determining the condition with respect to the first reference level. The managing circuitry determines whether the sensing transistor conducts in response to the sense voltage on the charge storage device after modifying the voltage on the source terminal of the sensing transistor. The managing circuitry determines a condition of the selected non-volatile storage element with respect to a second reference level based on whether the sensing transistor conducts in response to the sense voltage on the charge storage device after modifying the voltage on the source terminal of the sensing transistor. [00184] One embodiment comprises method of operating non- volatile storage comprising the following. A sense voltage is developed on a sense capacitor that is coupled to a bit line. The sense capacitor has a bottom plate and a top plate. The sense capacitor is connected to a sensing transistor having a source terminal. A selected non-volatile storage element is associated with the bit line. A determination is made whether the sensing transistor conducts in response to the sense voltage on the top plate of the sense capacitor. A voltage on the bottom plate of the sense capacitor is reduced after determining whether the sensing transistor conducts in response to the sense voltage on the sense capacitor. A determination is made whether the sensing transistor conducts in response to the sense voltage on the top plate of the sense capacitor after boosting the voltage on the bottom plate of the sense capacitor. A voltage on the source terminal of the sensing transistor is increased after determining whether the sensing transistor conducts after boosting the voltage on the bottom plate. A determination is made whether the sensing transistor conducts in response to the sense voltage on the top plate of the sense capacitor after increasing the voltage on the source terminal of the sensing transistor. Conditions of the selected non-volatile storage element are determined with respect to a first reference level, a second reference revel, and a third reference level based on whether the sensing transistor conducted in the operations above.
[00185] In one embodiment first reference level in the above paragraph is a first soft bit reference level, the second reference revel is a second soft bit reference level, and the third reference level is a hard bit reference level.
[00186] One embodiment includes a 3D non-volatile storage device comprising a plurality of word lines layers, a plurality of insulator layers alternating with the word line layers in a stack, a plurality of non-volatile storage element strings, a plurality of bit lines associated with the non-volatile storage element strings, a plurality of sensing circuits each comprising a sense node and a sensing transistor connected to the sense node, and managing circuitry. Each non-volatile storage element string comprises a plurality of non-volatile storage elements. Each of the non- volatile storage elements is associated with one of the plurality of word lines. The managing circuitry is in communication with the plurality of word lines layers, the plurality of bit lines, the plurality of strings, and the plurality of sensing circuits. The managing circuitry develops a sense voltage on the sense node of a given sensing circuit. The given sensing circuit being associated with a first bit line of the bit lines. The first bit line being associated with a selected non-volatile storage element of the plurality of non- volatile storage elements. The managing circuitry determines whether the sensing transistor in the given sensing circuit conducts in response to the sense voltage on the sense node. The managing circuitry determines a condition of the selected non-volatile storage element with respect to a first level based on whether the sensing transistor conducts in response to the sense voltage on the sense node. The managing circuitry modifies a voltage on the source terminal of the sensing transistor after determining the condition with respect to the first level. The managing circuitry determines whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor. The managing circuitry determines a condition of the selected nonvolatile storage element with respect to a second level based on whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor.
[00187] The foregoing detailed description of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. The described embodiments were chosen in order to best explain the principles of the invention and its practical application, to thereby enable others skilled in the art to best utilize the invention in various embodiments and with various modifications as are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the claims appended hereto.

Claims

CLAIMS We claim:
1. A method of operating non- volatile storage, the method comprising:
developing a sense voltage on a sense node that is connected to a sensing transistor having a source terminal, the sense node is associated with a selected non-volatile storage element (1502);
determining whether the sensing transistor conducts in response to the sense voltage on the sense node (1504);
determining a first condition of the selected non- volatile storage element with respect to a first reference level based on whether the sensing transistor conducts in response to the sense voltage on the sense node (1506);
modifying a voltage on the source terminal of the sensing transistor after determining the first condition with respect to the first reference level (1508);
determining whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor (1510); and
determining a second condition of the selected non-volatile storage element with respect to a second reference level based on whether the sensing transistor conducts in response to the sense voltage on the sense node after modifying the voltage on the source terminal of the sensing transistor (1512).
2. The method of claim 1, wherein the developing a sense voltage on a sense node comprises:
charging the sense node (1702);
connecting the sense node to a bit line that is associated with the selected non- volatile storage element (1706); and
allowing a current from the bit line to discharge the sense node (1708).
3. The method of claim 1 or 2, wherein the modifying a voltage on the source terminal of the sensing transistor comprises:
increasing a voltage on the source terminal.
4. The method of any of claims 1 to 3, further comprising:
modifying a voltage on the sense node after determining a condition of the selected non-volatile storage element with respect to the first level (2302);
determining whether the sensing transistor conducts in response to the modified voltage on the sense node (2304); and
determining a condition of the selected non-volatile storage element with respect to a third reference level based on whether the sensing transistor conducts in response to the modified voltage on the sense node, wherein the modifying a voltage on a source terminal of the sensing transistor is performed after determining whether the sensing transistor conducts in response to the modified voltage on the sense node, the third reference level being between the first reference level and the second reference level (2306).
5. The method of any of claims 1 to 4, wherein the first reference level is whether the selected non-volatile storage element has a threshold voltage above or below a first threshold voltage, wherein the second reference level is whether the selected non-volatile storage element has a threshold voltage above or below a second threshold voltage.
6. The method of any of claims 1 to 5, wherein the developing the sense voltage on the sense node comprises:
applying a voltage to a word line associated with the selected non-volatile storage element; and
allowing current from a bit line associated with the selected non- volatile storage element that results from applying the voltage to the word line to discharge the sense node.
7. The method of any of claims 1 to 3 or 5 to 6, wherein the first level is a low verify level for a state and the second level is a high verify level for the same state.
8. The method of claim 1, wherein the sense node comprises a sense capacitor having a bottom plate and a top plate, the top plate is connected to a gate of the sensing transistor.
9. A non- volatile storage device, comprising:
a plurality of non-volatile storage elements;
a plurality of bit lines (111, BLAO-BLAn, BLBO-BLBn) associated with the plurality of non-volatile storage elements; and
managing circuitry (720, 730, 740, 742, 744) coupled to the plurality of non-volatile storage elements and the plurality of bit lines, the managing circuitry comprising a plurality of sensing circuits (870) comprising: a charge storage device (1416) and a sensing transistor (1414) connected to the charge storage device, the managing circuitry develops a sense voltage on the charge storage device of a given sensing circuit, the given sensing circuit being associated with a first of the bit lines, the first bit line being associated with a selected nonvolatile storage element of the plurality of non-volatile storage elements, the managing circuitry determines whether the sensing transistor in the given sensing circuit conducts in response to the sense voltage on the charge storage device, the managing circuitry determines a condition of the selected non- volatile storage element with respect to a first reference level based on whether the sensing transistor conducts in response to the sense voltage on the charge storage device, the managing circuitry modifies a voltage on the source terminal of the sensing transistor after determining the condition with respect to the first reference level, the managing circuitry determines whether the sensing transistor conducts in response to the sense voltage on the charge storage device after modifying the voltage on the source terminal of the sensing transistor, the managing circuitry determines a condition of the selected nonvolatile storage element with respect to a second reference level based on whether the sensing transistor conducts in response to the sense voltage on the charge storage device after modifying the voltage on the source terminal of the sensing transistor.
10. The device of claim 9, wherein the managing circuitry charging the charge storage device, connects the charge storage device to the associated bit line, and allows a current from the associated bit line to discharge the charge storage device when developing the sense voltage on the charge storage device.
11. The device of claim 9 or 10, wherein the managing circuitry increasing a voltage on the source terminal in order to modify the voltage on the source terminal.
12. The device of any of claims 9 to 11, wherein the managing circuitry modifies a voltage on the charge storage device after determining a condition of the selected non- volatile storage element with respect to the first reference level, the managing circuitry determining whether the sensing transistor conducts in response to the modified voltage on the charge storage device, the managing circuitry determines a condition of the selected non-volatile storage element with respect to a third reference level based on whether the sensing transistor conducts in response to the modified voltage on the charge storage device, the managing circuitry modifies the voltage on the source terminal of the sensing transistor after determining whether the sensing transistor conducts in response to the modified voltage on the charge storage device, the third reference level being between the first reference level and the second reference level.
13. The device of any of claims 9 to 12, wherein the managing circuitry stores a first result in response to whether the sensing transistor conducts in response to the sense voltage on the charge storage device, the first result indicates whether the selected non- volatile storage element associated with the bit line has a threshold voltage above or below a first target threshold voltage, the managing circuitry stores a second result in response to whether the sensing transistor conducts in response to the sense voltage on the charge storage device, the second result indicates whether the selected non- volatile storage element associated with the bit line has a threshold voltage above or below a second target threshold voltage.
14. The device of any of claims 9 to 13, wherein when the managing circuitry develops the sense voltage on the charge storage device the managing circuitry applies a voltage to a word line associated with the selected non- volatile storage element, and the managing circuitry allows current from the bit line that results from applying the voltage to the word line to discharge the charge storage device.
15. The device of any of claims 9 to 14, wherein the plurality of non- volatile storage elements are part of a 3D memory array.
PCT/US2015/051270 2014-10-07 2015-09-21 Sensing multiple reference levels in non-volatile storage elements WO2016057201A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE112015003834.5T DE112015003834B4 (en) 2014-10-07 2015-09-21 SAMPLE OF SEVERAL REFERENCE LEVELS IN NON-VOLATILE MEMORY ELEMENTS
CN201580047840.6A CN106688043B (en) 2014-10-07 2015-09-21 Sensing multiple reference levels in a non-volatile storage element

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/508,615 US9576673B2 (en) 2014-10-07 2014-10-07 Sensing multiple reference levels in non-volatile storage elements
US14/508,615 2014-10-07

Publications (1)

Publication Number Publication Date
WO2016057201A1 true WO2016057201A1 (en) 2016-04-14

Family

ID=54200131

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2015/051270 WO2016057201A1 (en) 2014-10-07 2015-09-21 Sensing multiple reference levels in non-volatile storage elements

Country Status (4)

Country Link
US (1) US9576673B2 (en)
CN (1) CN106688043B (en)
DE (1) DE112015003834B4 (en)
WO (1) WO2016057201A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022535519A (en) * 2019-12-09 2022-08-09 長江存儲科技有限責任公司 SENSING CIRCUIT AND METHOD OF SENSING OPERATION IN FLASH MEMORY DEVICES

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10381094B2 (en) 2016-10-11 2019-08-13 Macronix International Co., Ltd. 3D memory with staged-level multibit programming
US9792984B1 (en) * 2016-10-27 2017-10-17 Arm Ltd. Method, system and device for non-volatile memory device operation
US10038005B1 (en) 2017-06-12 2018-07-31 Sandisk Technologies Llc Sense circuit having bit line clamp transistors with different threshold voltages for selectively boosting current in NAND strings
US10908986B2 (en) 2018-04-02 2021-02-02 Sandisk Technologies Llc Multi-level recovery reads for memory
CN112041825A (en) 2018-05-02 2020-12-04 株式会社半导体能源研究所 Semiconductor device with a plurality of semiconductor chips
CN108683423B (en) * 2018-05-16 2022-04-19 广东工业大学 LDPC code dynamic serial scheduling decoding algorithm and device under multistage flash memory channel
US10748622B2 (en) * 2019-01-21 2020-08-18 Sandisk Technologies Llc State adaptive predictive programming
CN112530497B (en) * 2019-05-22 2022-08-12 长江存储科技有限责任公司 Method of programming multi-level cell NAND flash memory device and MLC NAND flash memory device
JP7360478B2 (en) 2019-10-18 2023-10-12 長江存儲科技有限責任公司 Memory device and method
JP7025472B2 (en) * 2020-04-20 2022-02-24 ウィンボンド エレクトロニクス コーポレーション Semiconductor device
US11081167B1 (en) * 2020-06-26 2021-08-03 Sandisk Technologies Llc Sense amplifier architecture for low supply voltage operations
US11600337B2 (en) 2021-03-17 2023-03-07 Micron Technology, Inc. Memory device read operations
US11901019B2 (en) 2021-09-16 2024-02-13 Sandisk Technologies Llc Use of data latches for compression of soft bit data in non-volatile memories
US11907545B2 (en) 2021-09-16 2024-02-20 Sandisk Technologies Llc On-the-fly multiplexing scheme for compressed soft bit data in non-volatile memories
US11894068B2 (en) * 2021-09-16 2024-02-06 Sandisk Technologies Llc Efficient sensing of soft bit data for non-volatile memory

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5768192A (en) 1996-07-23 1998-06-16 Saifun Semiconductors, Ltd. Non-volatile semiconductor memory cell utilizing asymmetrical charge trapping
US6011725A (en) 1997-08-01 2000-01-04 Saifun Semiconductors, Ltd. Two bit non-volatile electrically erasable and programmable semiconductor memory cell utilizing asymmetrical charge trapping
US20060158935A1 (en) * 2002-09-24 2006-07-20 Chan Siu L Method for compensated sensing in non-volatile memory
US20110235420A1 (en) * 2010-03-25 2011-09-29 Eran Sharon Simultaneous multi-state read or verify in non-volatile storage
US20130100744A1 (en) * 2011-10-20 2013-04-25 Min She Compact Sense Amplifier for Non-Volatile Memory
US20140071761A1 (en) * 2012-09-10 2014-03-13 Sandisk Technologies Inc. Non-volatile storage with joint hard bit and soft bit reading
US20140211568A1 (en) * 2013-01-30 2014-07-31 Sandisk Technologies Inc. Bit line current trip point modulation for reading nonvolatile storage elements

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6987693B2 (en) * 2002-09-24 2006-01-17 Sandisk Corporation Non-volatile memory and method with reduced neighboring field errors
US7885119B2 (en) * 2006-07-20 2011-02-08 Sandisk Corporation Compensating for coupling during programming
ITRM20070273A1 (en) * 2007-05-16 2008-11-17 Micron Technology Inc READING OF NON-VOLATILE MEMORY CELLS AT MUTIPLE LEVEL.
JP2009043358A (en) * 2007-08-10 2009-02-26 Toshiba Corp Semiconductor memory device
US7782674B2 (en) * 2007-10-18 2010-08-24 Micron Technology, Inc. Sensing of memory cells in NAND flash
US8208310B2 (en) * 2010-05-04 2012-06-26 Sandisk Technologies Inc. Mitigating channel coupling effects during sensing of non-volatile storage elements
KR101775660B1 (en) 2011-09-29 2017-09-07 삼성전자주식회사 Method of reading memory cells with different threshold voltages without variation of word line voltage and nonvolatile memory device using the same
US9165664B2 (en) * 2013-07-05 2015-10-20 Micron Technology, Inc. Sensing operations in a memory device
TWI559320B (en) * 2014-09-10 2016-11-21 東芝股份有限公司 Semiconductor storage device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5768192A (en) 1996-07-23 1998-06-16 Saifun Semiconductors, Ltd. Non-volatile semiconductor memory cell utilizing asymmetrical charge trapping
US6011725A (en) 1997-08-01 2000-01-04 Saifun Semiconductors, Ltd. Two bit non-volatile electrically erasable and programmable semiconductor memory cell utilizing asymmetrical charge trapping
US20060158935A1 (en) * 2002-09-24 2006-07-20 Chan Siu L Method for compensated sensing in non-volatile memory
US20110235420A1 (en) * 2010-03-25 2011-09-29 Eran Sharon Simultaneous multi-state read or verify in non-volatile storage
US20130100744A1 (en) * 2011-10-20 2013-04-25 Min She Compact Sense Amplifier for Non-Volatile Memory
US20140071761A1 (en) * 2012-09-10 2014-03-13 Sandisk Technologies Inc. Non-volatile storage with joint hard bit and soft bit reading
US20140211568A1 (en) * 2013-01-30 2014-07-31 Sandisk Technologies Inc. Bit line current trip point modulation for reading nonvolatile storage elements

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHAN ET AL.: "A True Single-Transistor Oxide-Nitride-Oxide EEPROM Device", IEEE ELECTRON DEVICE LETTERS, vol. EDL-8, no. 3, March 1987 (1987-03-01), pages 93 - 95
EITAN ET AL.: "NROM: A Novel Localized Trapping, 2-Bit Nonvolatile Memory Cell", IEEE ELECTRON DEVICE LETTERS, vol. 21, no. 11, November 2000 (2000-11-01), pages 543 - 545
NOZAKI ET AL.: "A 1-Mb EEPROM with MONOS Memory Cell for Semiconductor Disk Application", IEEE JOURNAL OF SOLID-STATE CIRCUITS, vol. 26, no. 4, April 1991 (1991-04-01), pages 497 - 501

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022535519A (en) * 2019-12-09 2022-08-09 長江存儲科技有限責任公司 SENSING CIRCUIT AND METHOD OF SENSING OPERATION IN FLASH MEMORY DEVICES
JP7309923B2 (en) 2019-12-09 2023-07-18 長江存儲科技有限責任公司 SENSING CIRCUIT AND METHOD OF SENSING OPERATION IN FLASH MEMORY DEVICES

Also Published As

Publication number Publication date
CN106688043B (en) 2020-07-17
US9576673B2 (en) 2017-02-21
US20160099070A1 (en) 2016-04-07
CN106688043A (en) 2017-05-17
DE112015003834T5 (en) 2017-05-04
DE112015003834B4 (en) 2021-08-12

Similar Documents

Publication Publication Date Title
US9576673B2 (en) Sensing multiple reference levels in non-volatile storage elements
CN111108562B (en) Reducing interference by delayed ramping of dummy word lines
CN108292519B (en) Subblock modes for non-volatile memories
US9082502B2 (en) Bit line and compare voltage modulation for sensing nonvolatile storage elements
US8582381B2 (en) Temperature based compensation during verify operations for non-volatile storage
US9496040B2 (en) Adaptive multi-page programming methods and apparatus for non-volatile memory
US8942047B2 (en) Bit line current trip point modulation for reading nonvolatile storage elements
CN105960679B (en) Compensating source side resistance with respect to word line
US8942043B2 (en) Non-volatile storage with process that reduces read disturb on end wordlines
US20190147955A1 (en) Reducing disturbs with delayed ramp up of selected word line voltage after pre-charge during programming
US9875805B2 (en) Double lockout in non-volatile memory
EP3213325B1 (en) Word line dependent two strobe sensing mode for nonvolatile storage elements
US9830994B1 (en) Sequential deselection of word lines for suppressing first read issue
US20160118135A1 (en) Two-strobe sensing for nonvolatile storage
WO2013138199A1 (en) Non-volatile storage with read process that reduces disturb
US20200312415A1 (en) Programming process which compensates for data state of adjacent memory cell in a memory device
US8937837B2 (en) Bit line BL isolation scheme during erase operation for non-volatile storage

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: 15771476

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 112015003834

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15771476

Country of ref document: EP

Kind code of ref document: A1