US20140198576A1 - Programming technique for reducing program disturb in stacked memory structures - Google Patents
Programming technique for reducing program disturb in stacked memory structures Download PDFInfo
- Publication number
- US20140198576A1 US20140198576A1 US13/827,475 US201313827475A US2014198576A1 US 20140198576 A1 US20140198576 A1 US 20140198576A1 US 201313827475 A US201313827475 A US 201313827475A US 2014198576 A1 US2014198576 A1 US 2014198576A1
- Authority
- US
- United States
- Prior art keywords
- layers
- cells
- memory cells
- memory
- pair
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital 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/5621—Digital 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/5628—Programming or writing circuits; Data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/562—Multilevel memory programming aspects
- G11C2211/5621—Multilevel programming verification
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2216/00—Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
- G11C2216/12—Reading and writing aspects of erasable programmable read-only memories
- G11C2216/14—Circuits or methods to write a page or sector of information simultaneously into a nonvolatile memory, typically a complete row or word line in flash memory
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10B—ELECTRONIC MEMORY DEVICES
- H10B41/00—Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates
- H10B41/20—Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates characterised by three-dimensional arrangements, e.g. with cells on different height levels
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10B—ELECTRONIC MEMORY DEVICES
- H10B43/00—EEPROM devices comprising charge-trapping gate insulators
- H10B43/20—EEPROM devices comprising charge-trapping gate insulators characterised by three-dimensional arrangements, e.g. with cells on different height levels
Definitions
- the present invention relates to high density memory devices, and particularly the operation of devices using stacked memory structures.
- thin film transistor techniques are applied to charge trapping memory technologies in Lai, et al., “A Multi-Layer Stackable Thin-Film Transistor (TFT) NAND-Type Flash Memory,” IEEE Int'l Electron Devices Meeting, 11-13 Dec. 2006; and in Jung et al., “Three Dimensionally Stacked NAND Flash Memory Technology Using Stacking Single Crystal Si Layers on ILD and TANOS Structure for Beyond 30 nm Node,” IEEE Int'l Electron Devices Meeting, 11-13 Dec. 2006.
- TFT Thin-Film Transistor
- Tanaka et al. Another structure that provides vertical NAND cells in a charge trapping memory technology is described in Tanaka et al., “Bit Cost Scalable Technology with Punch and Plug Process for Ultra High Density Flash Memory,” 2007 Symposium on VLSI Technology Digest of Technical Papers; 12-14 Jun. 2007, pages: 14-15.
- the structure described in Tanaka et al. includes a multi-gate field effect transistor structure having a vertical channel which operates like a NAND gate, using silicon-oxide-nitride-oxide-silicon SONOS charge trapping technology to create a storage site at each gate/vertical channel interface.
- 3D memory structures are very dense, but the density can lead to problems with data retention. For example, a programming operation for a selected cell can disturb the data stored in other cells. Thus, it is desirable to provide for a technology for programming 3D memories with improved data retention.
- a program operation is initiated when a memory device receives a program instruction to program data to a particular multibit address which is mapped to a set of memory cells in a plurality of layers of the stacked memory structure.
- the set of memory cells, to which the multibit address is mapped are organized for the purposes of the programming into those in a first set of layers and those in a second set of layers.
- the layers are organized so that no two layers in the first set are separated by only one layer in the second set.
- the layers in the first set can be separated by two or more layers in the second set, or can be adjacent only layers in the first set (i.e. not separated by a layer in the second set).
- the layers are assigned so that the first set includes a plurality of subsets of one or more layers, where each of the subsets is separated from other subsets of the first set by at least two layers.
- a program operation is executed that is limited to memory cells in a first set of subsets of layers in the plurality of layers, where the subsets of layers in the first set are separated from other subsets in the first set by at least two layers, and then completing programming if necessary of remaining memory cells for the multibit address.
- the first program operation one or more of the memory cells in the first subset for the corresponding multibit address are programmed.
- a second program operation can be applied that includes applying program voltage to one or more of the corresponding memory cells in the second set and an inhibit voltage to the memory cells in the first set.
- a set of memory cells corresponding to the multibit address can include some cells that do not need to be changed and some that do need to be changed to a programmed state, as can be identified based upon the data to be programmed and upon which of the corresponding memory cells are already in a programmed state.
- the first set of layers can be selected when possible for each program instruction, so that the first programming operation is able to complete the programming operations in some instances, so that the second programming operation is not needed.
- the second program operation can be applied only if the state of at least one memory cell in the second set needs to be changed to a programmed state.
- the technology described herein provides a memory device including stacked memory cells which is configured to use an assignment of cells in the stack of cells to a plurality of sets of cells, and to iteratively execute a group program operation selecting each of the plurality of sets in sequence.
- the group program operation includes applying program voltages to target cells in a selected one of the plurality of sets, inhibit voltages to remaining cells in said selected one of the plurality of sets, and inhibit voltages to all of the cells in others of the plurality of sets.
- FIG. 1 is a perspective illustration of a 3D NAND-flash memory array structure.
- FIG. 2 is a layout view of the 3D NAND-flash memory array structure of FIG. 1 showing an example of a programming bias arrangement.
- FIGS. 3A-3C show a stacked memory structure made up of three bit lines and the various voltage levels that can exist on the bit lines during a program operation.
- FIG. 3D is a graph of voltage levels shown in FIGS. 3A-3C .
- FIG. 4 shows voltages on the bit lines in a stacked memory structure during a programming technique.
- FIG. 5 is a flowchart of steps executed by a controller in an alternate programming technique.
- FIG. 6 shows an example organization of memory cells in the stacked memory structure.
- FIGS. 7 and 8 show the stacked memory structure with the organization of FIG. 6 with voltage levels in bit lines during the performance of corresponding first and second programming operations of the programming technique shown in FIG. 5 .
- FIG. 9 is a flowchart of steps executed by a controller in another alternate programming technique.
- FIGS. 10A-10C show a stacked memory structure made up of two bit lines and the various voltage levels that can exist on the bit lines during a program operation.
- FIG. 11 is a graph of the threshold voltage (Vt) of the memory cells formed with the structure and applied voltages of FIG. 10A as a function of an increasing voltage level of the voltage applied to the word line through ISPP.
- FIG. 12 shows another example organization of memory cells in the stacked memory structure during programming.
- FIG. 13 is a flowchart of steps executed by a controller in yet another programming technique.
- FIG. 14 is a block diagram of an integrated circuit memory employing memory cells and bias circuitry according to embodiments of the present invention with a stacked memory structure having modified programming logic as described herein.
- FIGS. 1-14 A detailed description of embodiments is provided with reference to the FIGS. 1-14 .
- FIG. 1 is a perspective illustration of a 3D NAND-flash memory array structure.
- the 3D NAND-flash memory array structure is described in commonly owned U.S. patent application Ser. No. 13/078,311 filed 1 Apr. 2011, entitled “Memory Architecture of 3D Array With Alternating Memory String Orientation and String Select Structures,” now Publication No. US-2012-0182806, (MXIC 1960-2) which is hereby incorporated by reference as if fully set forth herein. It is appreciated that alternative 3D NAND-flash memory array structures exist as are described in Chen et al. Insulating material is removed from the drawing to expose additional structure.
- the 3D NAND-flash memory array structure includes stacked memory structures resulting in the array having a plurality of memory cells disposed in a dense configuration. As a result of the plurality of memory cells being disposed in a dense configuration, problems with data retention are observed in the 3D-NAND flash memory array shown in FIG. 1 .
- the multilayer array is formed on an insulating layer, and includes a plurality of word lines 125 - 1 , . . . , 125 -N.
- the plurality of ridge-shaped stacks includes semiconductor strips 112 , 113 , 114 , 115 . Semiconductor strips in the same plane are electrically coupled together by pads 102 B, 103 B, 104 B, 105 B, which are connected to overlying metal lines in ML3 using stairstep structures.
- the shown word line numbering ascending from 1 to N going from the back to the front of the overall structure, applies to even memory pages. For odd memory pages, the word line numbering descends from N to 1 going from the back to the front of the overall structure.
- Stairstep pads 112 A, 113 A, 114 A, 115 A terminate semiconductor strips, such as semiconductor strips 112 , 113 , 114 , 115 . As illustrated, these stairstep pads 112 A, 113 A, 114 A, 115 A are electrically connected to different bit lines for connection to decoding circuitry to select planes within the array. These stairstep pads 112 A, 113 A, 114 A, 115 A can be patterned at the same time that the plurality of ridge-shaped stacks are defined.
- Stairstep pads 102 B, 103 B, 104 B, 105 B terminate semiconductor strips, such as semiconductor strips 102 , 103 , 104 , 105 .
- these stairstep pads 102 B, 103 B, 104 B, 105 B are electrically connected to different bit lines for connection to decoding circuitry to select planes within the array.
- These stairstep pads 102 B, 103 B, 104 B, 105 B can be patterned at the same time that the plurality of ridge-shaped stacks are defined.
- any given stack of semiconductor strips is coupled to either the stairstep pads 112 A, 113 A, 114 A, 115 A, or the stairstep pads 102 B, 103 B, 104 B, 105 B, but not both.
- a stack of semiconductor strips has one of the two opposite orientations of bit line end-to-source line end orientation, or source line end-to-bit line end orientation.
- the stack of semiconductor strips 112 , 113 , 114 , 115 has bit line end-to-source line end orientation
- the stack of semiconductor strips 102 , 103 , 104 , 105 has source line end-to-bit line end orientation.
- the stack of semiconductor strips 112 , 113 , 114 , 115 is terminated at one end by the stairstep pads 112 A, 113 A, 114 A, 115 A, and passes through SSL gate structure 119 , gate select line GSL 126 , word lines 125 - 1 WL through 125 -N WL, gate select line GSL 127 , and terminates at the other end by source line 128 .
- the stack of semiconductor strips 112 , 113 , 114 , 115 does not reach the stairstep pads 102 B, 103 B, 104 B, 105 B.
- the stack of semiconductor strips 102 , 103 , 104 , 105 is terminated at one end by the stairstep pads 102 B, 103 B, 104 B, 105 B, and passes through SSL gate structure 109 , gate select line GSL 127 , word lines 125 -N WL through 125 - 1 WL, gate select line GSL 126 , and terminates at the other end by a source line (obscured by other parts of the figure).
- the stack of semiconductor strips 102 , 103 , 104 , 105 does not reach the stairstep pads 112 A, 113 A, 114 A, 115 A.
- a layer of memory material separates the word lines 125 - 1 through 125 - n , from the semiconductor strips 112 - 115 and 102 - 105 .
- Ground select lines GSL 126 and GSL 127 are conformal with the plurality of ridge-shaped stacks, similar to the word lines.
- Every stack of semiconductor strips is terminated at one end by a set of stairstep pads, and at the other end by a source line.
- the stack of semiconductor strips 112 , 113 , 114 , 115 is terminated at one end by stairstep pads 112 A, 113 A, 114 A, 115 A, and terminated on the other end by source line 128 .
- every other stack of semiconductor strips is terminated by the stairstep pads 102 B, 103 B, 104 B, 105 B, and every other stack of semiconductor strips is terminated by a separate source line.
- every other stack of semiconductor strips is terminated by the stairstep pads 112 A, 113 A, 114 A, 115 A, and every other stack of semiconductor strips is terminated by a separate source line.
- Bit lines and string select lines are formed at the metals layers ML1, ML2, and ML3. Local bit lines for each string of memory cells are formed by the semiconductor strips.
- Transistors are formed between the stairstep pads 112 A, 113 A, 114 A and the word line 125 - 1 .
- the semiconductor strip e.g. 113
- SSL gate structures e.g. 119 , 109
- a layer of silicide can be formed along the top surface of the word lines, the ground select lines, and over the gate structures.
- a layer of memory material can act as the gate dielectric for the transistors.
- FIG. 2 is a layout view of the 3D NAND-flash memory array structure of FIG. 1 showing an example of a programming bias arrangement.
- the stacks of semiconductor strips are shown as vertical strips with dot-dash borders. Adjacent stacks of semiconductor strips alternate between the opposite orientations, of bit line end-to-source line end orientation, and source line end-to-bit line end orientation. Every other stack of semiconductor strips runs from the bit line structure at the top to the source line at the bottom. Every other stack of semiconductor strips runs from the source line at the top to the bit line structure at the bottom.
- the SSL gate structures overlie every other stack of semiconductor strips at the top end of the semiconductor strips, and overlie every other stack of semiconductor strips at the bottom end of the semiconductor strips. In either case, the SSL gate structures control electrical connection between any stack of semiconductor strips and the stack's corresponding bit line contact pads.
- the shown word line numbering ascending from 1 to N going from the top of the figure to the bottom of the figure, applies to even memory pages. For odd memory pages, the word line numbering descends from N to 1 going from the top of the figure to the bottom of the figure.
- the ML1 SSL string select lines Overlying the word lines, ground select lines, and SSL gate structures, are the ML1 SSL string select lines running vertically. Overlying the ML1 SSL string select lines are the ML2 SSL string select lines running horizontally. Although the ML2 SSL string select lines are shown as terminating at corresponding ML1 SSL string select lines for ease of viewing the structure, the ML2 SSL string select lines may run longer horizontally.
- the ML2 SSL string select lines carry signals from the decoder, and the ML1 SSL string select lines couple these decoder signals to particular SSL gate structures to select particular stacks of semiconductor strips.
- the ML2 SSL string select lines are the ML3 bit lines (not shown) which connect to the stepped contact structures at the top and the bottom. Through the stepped contact structures, the bit lines select particular planes of semiconductor strips.
- Particular bit lines are electrically connected to different planes of semiconductor strips that form local bit lines. Under the programming bias arrangement shown, the particular bit lines, are biased at either Vcc (inhibit) or 0V (program), which voltage levels are representative of inhibit set up and program voltages that can have other values.
- the SSL of the selected stack of semiconductor strips is at Vcc, and all other SSLs are 0V.
- the GSL (even) is turned on at Vcc to allow the bit line bias to pass, and the GSL (odd) is turned off at 0V to disconnect the source line (odd).
- Source line (even) is at Vcc for self-boosting to avoid disturb of adjacent even pages.
- the word lines are at Vpass voltages, except for the selected word line which undergoes incremental step pulsed programming ISPP in which pulses are applied having stepped voltages, which can include pulses having voltage levels on the order of 21V for example.
- the shown memory unit is repeated above and below, sharing the same bit lines. These repeated units can also be programmed at the same time.
- FIGS. 3A-3C show a stacked memory structure made up of three bit lines and the various voltage levels that can exist on the bit lines during a program operation.
- the stacked memory structure 300 includes first bit line 302 , a second bit line 304 and a third bit line 306 .
- Insulating layers 308 and 310 are disposed between the first, second and third bit lines 302 , 304 and 306 .
- the bit lines are electrically coupled to corresponding memory cells in first, second and third layers of memory cells in the stacked memory structure 300 .
- the first, second and third layers of memory cells correspond to the first, second and third bit lines.
- the memory material layers and the surrounding word line are not shown.
- the various voltage levels in the bit lines that are shown in FIGS. 3A-3C are the voltage levels that occur as a result of the unselected bit line being connected to a positive voltage like Vcc to set up for inhibit voltages, and the selected bit line being coupled to a lower voltage line OV.
- the unselected bit lines are boosted by coupling to the word line.
- FIG. 3D is a graph of voltage levels shown in FIGS. 3A-3C .
- a voltage at an inhibit set up voltage level is set up on the first, second and third bit lines 302 , 304 and 306 .
- the inhibit set up voltage level can be, for example, Vcc between 2.5 and 3.6V.
- the string select switches and ground select switches that are coupled to the first, second and third bit lines are opened.
- the first, second and third bit lines 302 , 304 and 306 are left floating with a voltage at the inhibit set upvoltage level.
- a voltage is set up through ISPP on the word line (not shown) that is electrically coupled to corresponding memory cells in the first, second and third layers of memory cells of the stacked memory structure 300 .
- the setting up of the voltage through ISPP on the word line causes boosting of the voltages on all three of the first, second and third bit lines 302 , 304 and 306 to a Vinhibit1 voltage level.
- This boosting is caused by capacitive coupling between the word lines and the bit lines.
- the Vinhibit1 voltage level is roughly equal to the sum of the inhibit set up voltage level and the amount that the voltage on the bit lines is increased as a result of the boosting, depending on the coupling efficiency.
- a voltage with the inhibit set upvoltage level isset up on the second and third bit lines 304 and 306 .
- a voltage with a programming (Vpgm) voltage level is set up on the first bit line 302 .
- the Vpgm voltage level is less than the inhibit set up voltage level.
- the Vpgm voltage level can be 0V.
- the string select switches and ground select switches that are coupled to the second and third bit lines 304 and 406 are open.
- the second and third bit lines are left floating with a voltage at the inhibit set up voltage level.
- the string select switch and the ground select switch that are coupled to the first bit line 302 remain closed during the second interval.
- the first bit line is not left floating and remains at a voltage at the Vpgm voltage level during the second interval.
- a word line voltage pulse with a voltage level up to 21V is set up, for example using ISPP techniques, on the word line that is electrically coupled to the corresponding memory cells in the first, second and third layers of the stacked memory structure 300 .
- the word line voltage pulse causes boosting of the voltage on the third bit line 306 up to the Vinhibit1 voltage level, in the same manner as was discussed with respect to FIG. 3A .
- the second bit line 304 is capacitively coupled to both the word line and the first bit line 302 .
- the word line voltage pulse causes the voltage on the second bit line to be boosted up as a result of capacitive coupling with the word line.
- the amount the voltage on the second bit line is boosted is reduced as a result of the voltage on the first bit line 302 at a Vpgm voltage level.
- the voltage on the second bit line is boosted to a Vinhibit2 voltage level that is different than the Vinhibit1 voltage level.
- the Vinhibit2 voltage level is less than the Vinhibit1 voltage level.
- the lower Vinhibit2 can increase the likelihood that a memory cell will be disturbed on the unselected line.
- the programming bias arrangement can be configured to account for this voltage shift, so that program disturb in this situation can be suppressed.
- a voltage with an inhibit set up voltage level is set up on the second bit line 304 .
- a voltage with a Vpgm voltage level is set up on the first and third bit lines 302 and 306 .
- the string select switch and the ground select switch that are coupled to the second bit line 304 are open.
- the second bit line 304 is left floating with a voltage at the inhibit set up voltage level (e.g. Vcc).
- word line voltage pulse is applied to the word line that is electrically coupled to the corresponding memory cells in the first, second and third layers of memory cells of the stacked memory structure 300 .
- the string select and ground select switches that are coupled to the first and third bit lines 302 and 306 remain closed.
- the first and third bit lines are left non-floating with a voltage at the Vpgm voltage level during the second interval.
- the second bit line 304 is capacitively coupled to both the word line and the first and third bit lines 302 and 306 .
- the voltage on the second bit line is boosted upward as a result of capacitive coupling with the word line.
- the amount the voltage is boosted is reduced as a result of the voltages on both the first and third bit lines.
- the voltage on the second bit line is boosted to a Vinhibit3 voltage level, which can be lower than Vinhibit1 and Vinhibit2.
- the Vinhibit3 voltage level is less than both the Vinhibit1 and Vinhibit2 voltage levels.
- the decreased voltage level of Vinhibit3 increases the chances that unwanted charge tunneling will occur in unselected memory cells of the stacked memory structure 300 . Specifically, such unwanted charge tunneling will occur in unselected memory cells that have a voltage at the Vinhibit3 voltage level on them during a performed programming operation.
- the programming bias arrangement can be configured to reduce or prevent this voltage shift to a level of Vinhibit3, so that program disturb in this situation can be suppressed.
- the memory structure can be configured so that Vinhibit1 and Vinhibit2 can be encountered while data retention performance remains within operating specifications. Vinhibit3 on the other hand may cause too much program disturbance in unselected cells, leading to poor data retention performance.
- FIG. 4 shows voltages on the bit lines in a stacked memory structure during a programming technique.
- the stacked memory structure 400 includes eight bit lines 402 , 404 , 406 , 408 , 410 , 412 , 414 and 416 separated by insulating layers 418 between the bit lines.
- the eight bit lines 402 , 404 , 406 , 408 , 410 , 412 , 414 and 416 are electrically coupled to memory cells in the corresponding eight layers, and share a common word line structure (not shown). Then, if any memory cell in the stack is selected for programming, all of them are exposed to the high voltage in the common word line.
- the stacked memory structure can include any number of layers containing corresponding memory cells. While FIG.
- the stacked memory structure includes multiple vertical columns of cells that are formed by the eight bit lines and can simultaneously have the same or different voltages on them during performance of a programming operation according to the programming technique.
- the layers that include memory cells target of a change of state in a single program command that is the layers at which there are selected memory cells to be programmed, are marked as target layers “TGT” for an example.
- the programming technique used to program the stacked memory structure shown in FIG. 4 includes programming all of the selected memory cells through a single programming bias arrangement, regardless of where the selected memory cells are disposed in the stacked structure.
- the third bit line 406 , fourth bit line 408 , sixth bit line 412 and eighth bit line 416 have voltages at the Vpgm voltage level, while the others have voltage variously at the Vinhibit1, Vinhibit2 and Vinhibit3 voltage levels.
- the programming technique includes, during a first interval, setting up a voltage with a Vpgm voltage level on the third, fourth, sixth and eighth bit lines 406 , 408 , 412 and 416 . Also, during the first interval, an inhibit set up voltage is set up on the first, second, fifth and seventh bit lines 402 , 404 , 410 and 414 .
- the string select switches and the ground select switches that are coupled to the first, second, fifth and seventh bit lines 402 , 404 , 410 and 414 are open.
- the first, second, fifth and seventh bit lines 402 , 404 , 410 and 414 are left floating with a voltage at the inhibit set up voltage level during the second interval.
- the string select switches and ground select switches that are coupled to the third, fourth, sixth and eighth bit lines 406 , 408 , 412 and 416 remain closed (on).
- the third, fourth, sixth and eighth bit lines are left non-floating and remain with a voltage at the Vpgm voltage level throughout the second interval.
- a voltage is set up through ISPP on the word line that is electrically coupled to the memory cells in the stacked memory structure 400 .
- the first bit line 402 is capacitively coupled to the word line. Therefore, the charging of the word line through ISPP causes the voltage on the first bit line to transition to the Vinhibit1 voltage level.
- the second bit line 404 is adjacent the third bit line 406 which is at target level. Therefore, both the charging of the word line and the non-floating voltage at the Vpgm voltage level on the third bit line 406 cause the voltage on the second bit line 404 to transition to the Vinhibit2 voltage level.
- the fifth bit line 410 is capacitively coupled to the word line and between the fourth bit line 408 and the sixth bit line 412 . Therefore, the charging of the word line and the continued application of non-floating voltages at the Vpgm voltage level on the fourth bit line 408 and the sixth bit line 412 causes the voltage on the fifth bit line to transition to the Vinhibit3 voltage level.
- the seventh bit line 414 is capacitively coupled to the word line and between the sixth bit line 412 and the eighth bit line 416 . Therefore, the charging of the word line and the non-floating voltages at the Vpgm voltage level on both the sixth bit line and the eighth bit line causes the voltage on the seventh bit line 414 to transition to the Vinhibit3 voltage level.
- the Vinhibit3 level can lead to program disturb conditions.
- FIG. 5 is a flowchart of the steps executed by the controller in performing a programming technique that includes iteratively performing group programming operations over cells disposed in first and second sets of the layers. Specifically, at step 510 , the controller receives a program instruction to program data to memory cells corresponding to a particular multibit address in a stacked memory structure having a plurality of layers. At step 512 , the controller executes a first program operation on the corresponding memory cells.
- the first programming operation includes applying program voltages via bit lines to cells to be changed to a programmed state in a first set of the layers, inhibit voltages to remaining cells in the first set, and inhibit voltages via bit lines to all of the cells in a second set of the layers, even if some of the cells in the second set are target of programming by the program instruction being executed.
- the layers are assigned to the first and second sets of the layers so that no two layers in the first set are separated by only one layer in the second set.
- the first and second sets of the layers are assigned so that not only is the above true, but also so that no two layers in the second set are separated by only one layer in the first set. As a result, no cells in the first or second sets can be exposed to conditions like those of layer 410 in FIG. 4 , which causes a Vinhibit3 level.
- the controller executes a second programming operation.
- the second programming operation includes applying program voltages to the cells to be changed to the programmed state in the second set of the layers, inhibit voltages to remaining cells in the second set, and inhibit voltages to all the cells in the first set of the layers.
- FIG. 6 shows an example organization of memory cells in the stacked memory structure.
- the organization is based on the physical locations of the memory cells in the layers of the stacked memory structure 600 .
- the stacked memory structure 600 includes a first, second, third, fourth, fifth, sixth, seventh and eighth bit line 602 , 604 , 606 , 608 , 610 , 612 , 614 and 616 .
- the bit lines are separated by insulating layers (e.g., 618 , 628 ).
- the bit lines correspond to first, second, third, fourth, fifth, sixth, seventh and eighth layers in the stacked memory structure, with each layer including memory cells.
- the organization includes a set of memory cells for a particular multibit address disposed in a first set of layers 630 and a second set of layers 632 .
- the first set of layers 630 includes the layers in a first subset including a pair of layers 620 and a third subset including a pair of layers 624 .
- the second set of layers 632 includes layers that are in a second subset including a pair of layers 622 and a fourth subset including a pair of layers 626 .
- the first pair of layers 620 includes the first and second layers that correspond to the first and second bit lines 602 and 604 .
- the second pair of layers 622 includes the third and fourth layers that correspond to the third and fourth bit lines 606 and 608 .
- the third pair of layers 624 includes the fifth and sixth layers that correspond to the fifth and sixth bit lines 610 and 612 .
- the fourth pair of layers 626 includes the seventh and eighth layers that correspond to the seventh and eighth bit lines 614 and 616 . It is appreciated that the stack of memory cells can include any number of levels so that each set can include any number of pairs of layers. As a result of this organization, no layer receiving the inhibit condition can be between two adjacent layers receiving the programming condition on the bit line. Also, every layer receiving an inhibit condition, even if it is in the set being programmed, will have at least one adjacent layer that is also in the inhibit condition.
- FIGS. 7 and 8 show the stacked memory structure with the organization of FIG. 7 with voltage levels in the bit lines during the performing of corresponding first and second programming operations of the programming technique shown in FIG. 5 .
- the device receives the same multibit address and maps the address to the same corresponding cells as was illustrated for the stacked memory structure shown in FIG. 4 .
- the selected cells of the corresponding memory cells target of programming are in the third 606 , fourth 608 , sixth 612 and eighth 616 layers of the stacked memory structure, the same as in FIG. 4 .
- the controller applies a first program bias arrangement to the corresponding memory cells in a first set of the stacked memory structure.
- a voltage at the Vpgm level is applied to the selected memory cell in the first set of layers.
- the memory cells in the first set of layers include the memory cells in the first pair of layers 620 and the third pair of layers 624 .
- a voltage at the Vpgm voltage level is set up only on the sixth bit line 612 that is part of the third pair of layers 624 .
- Other target cells in layers 606 , 608 and 161 are in the second set.
- the first program bias arrangement in response to different multibit addresses, can include applying voltages at the Vpgm level to any combination of the corresponding memory cells in the first set of layers. Specifically, this can include applying voltages at the Vpgm voltage level to one memory cell or both memory cells in the first pair of layers 620 and one memory cell or both memory cells in the third pair of layers 624 .
- voltages at the Vcc voltage level are applied to the unselected memory cells in the first set of layers.
- the unselected memory cells in the first set of layers include the corresponding memory cells in the first, second and fifth layers of the stacked memory structure 600 .
- voltages at the Vcc level are set up on the first bit line 602 , the second bit line 604 and the sixth bit line 610 .
- inhibit voltages are applied to the memory cells in the second set of layers.
- the memory cells in the second set of layers include the memory cells in the corresponding second and fourth pairs of layers 622 and 626 .
- voltages at the Vcc voltage level are set up on the third bit line 606 , the fourth bit line 608 , the seventh bit line 614 and the eighth bit line 616 .
- the string select switches and the ground select switches that are coupled to the bit lines upon which voltages at the Vcc voltage level were set up on during the first interval are opened (off).
- the first bit line 602 , the second bit line 604 , the third bit line 606 , the fourth bit line 608 , the fifth bit line 610 , the seventh bit line 614 and the eighth bit line 616 are all left floating with a voltage at the Vcc voltage level.
- the sixth bit line 612 is non-floating with a voltage at the Vpgm voltage level.
- a voltage is set up through ISPP on the word line that is electrically coupled to the corresponding memory cells in the stacked memory structure 600 .
- the first bit line 602 , the second bit line 604 , the third bit line 606 , the fourth bit line 608 and the eighth bit line 616 are adjacent only other bit lines set up for inhibit.
- the voltages on such bit lines transition to a voltage at the Vinhibit1 voltage level.
- the fifth bit line 610 and the seventh bit line 614 are adjacent to one bit line ( 608 and 616 , respectively) set up for inhibit, and to the selected bit line 612
- the selected bit line 612 that has a non-floating voltage at the Vpgm voltage level set up on it.
- the voltages on the fifth bit line and the seventh bit line transition to the Vinhibit2 voltage level during the second interval. None of the voltages on the bit lines transition to the Vinhibit3 voltage level throughout the application of the first programming bias arrangement.
- the controller applies a second program bias arrangement to the corresponding memory cells in the stacked memory structure to program cells in layers 606 and 608 .
- a voltage at the Vpgm level is applied to the selected memory cells in the second set of layers.
- the selected memory cells in the second set of layers include the corresponding memory cells in the third, fourth, and eighth layers of the stacked memory structure 600 .
- a voltage at the Vpgm voltage level is set up on the third bit line 606 and the fourth bit line 608 , that are part of the second pair of layers 622 , and the eighth bit line 616 that is part of the fourth pair of layers 626 .
- the second program bias arrangement in response to different multibit addresses, can include applying voltages at the Vpgm level to any combination of the corresponding memory cells in the second set of layers. Specifically, this can include applying voltages at the Vpgm voltage level to one memory cell in the second pair of layers 622 and one memory cell in the fourth pair of layers 626 .
- voltages at the Vcc voltage level are applied to the unselected memory cells in the second set of layers.
- the unselected memory cell in the second set of layers includes the corresponding memory cell in the seventh layer of the stacked memory structure.
- a voltage at the Vcc level is set up on the seventh bit line 614 .
- inhibit voltages are applied to the memory cells in the first set of layers. Specifically, voltages at the Vcc voltage level are set up on the first bit line 602 , the second bit line 604 , the fifth bit line 610 and the sixth bit line 612 .
- the string select switches and the ground select switches that are coupled to the bit lines upon which voltages at the Vcc voltage level were set upon during the first interval are opened.
- the first bit line 602 , the second bit line 604 , the fifth bit line 610 , the sixth bit line 612 and the seventh bit line 614 are all left floating with an inhibit set up voltage at for example the Vcc voltage level.
- the string select switches and the ground select switches that are coupled to the bit lines upon which voltages at the Vpgm voltage level were set upon during the first interval remain closed (on) during the second interval.
- the third bit line 606 , the fourth bit line 608 and the eighth bit line 616 are left non-floating with voltages at the Vpgm voltage level.
- a voltage is set up through ISPP on the word line that is electrically coupled to the corresponding memory cells of the stacked memory structure 600 .
- the first bit line 602 and the sixth bit line 612 are adjacent only layers receiving the inhibit bias.
- the voltages on the first bit line and the sixth bit line transition to a voltage at the Vinhibit1 voltage level.
- the second bit line 604 , the fifth bit line 610 and the seventh bit line 614 are adjacent one of the bit lines that have voltages at the Vpgm voltage level set upon them, and to one bit line set up for inhibit.
- the voltages on the second bit line, the fifth bit line and the seventh bit line transition to the Vinhibit2 voltage level during the second interval. None of the voltages on the semiconductor layers in the stack of memory cells transition to the Vinhibit3 voltage level.
- the sets of layers are statically assigned. So the controller automatically performs the first and second program operation in response to the single program command, skipping one or the other only when a pre-verify step for example, determines that there are no cells that need to be changed in the corresponding set of layers.
- the control logic is altered so that the sets are not statically assigned, but rather can be assigned for each program command in an attempt to include all target cells in the first set, so that no programming operation would be required for the second set. This can could be used for example referring to FIG.
- the controller can determine that there are no layers which would be subject of the inhibit set up adjacent to two layers that would be subject of the program bias, even if cells in both target layers are programmed in one operation. So, the controller can assign layer 3 and 8 to the first set for the current program command. Also, it is noted that the Figures show that the cells in the set of cells that maps to the multibit address are aligned in a vertical stack. In other alternatives, the cells in the set of cells may be disposed in other configurations, such as disposed in the plurality of layers but not vertically aligned.
- FIG. 9 is a flowchart of the steps executed by the controller in performing an alternate programming technique that includes iteratively performing group programming operations over first and second sets of the cells.
- the controller receives a program instruction to program data to memory cells corresponding to a particular multibit address in a stacked memory structure having a plurality of layers.
- the controller determines which of the corresponding memory cells are to be changed to the programmed state. The controller determines which of the corresponding memory cells to change based on the received programming instructions and optionally whether or not the corresponding memory cells are already in the programmed state, such as can be determined by a pre-verify step.
- the controller if possible, defines a first set of the layers to include all of the corresponding memory cells to be changed to a programmed state.
- the first set of the layers includes corresponding layers of the plurality of layers so that no two layers in the first set are separated by only one layer in a second set of the layers.
- the first and second sets of layers includes corresponding layers of the plurality of layers so that not only is the above true, but also so that no two layers in the second set are separated by only one layer in the first set.
- the controller executes a first program operation on the corresponding memory cells.
- the first programming operation includes applying program voltages to cells to be changed to a programmed state in the first set of the layers, inhibit voltages to remaining cells in the first set, and inhibit voltages to all cells in the second set of the layers.
- the controller executes a second program operation on the corresponding memory cells.
- the second programming operation includes applying program voltages to the cells to be changed to the programmed state in the second set of the layers, inhibit voltages to remaining cells in the second set, and inhibit voltages to all cells in the first set of the layers. Because of the selection of a first set based on the cells to be programmed, the second program operation may be required less often.
- FIGS. 10A-10C show a stacked memory structure made up of two bit lines and various voltage levels that can exist on the bit lines during a program operation for the purposes of illustrating a program disturb phenomenon that can occur in stacked memory structures.
- the stacked memory structure 700 includes first bit line 702 and a second bit line 704 .
- An insulating layer 706 is disposed between the first and second bit lines 702 and 704 .
- the bit lines are electrically coupled to corresponding memory cells in first and second layers of memory cells in the stacked memory structure 700 .
- the first and second layers of memory cells correspond to the first and second bit lines. For purposes of illustration, the memory material layers and the surrounding word line are not shown.
- a voltage at the Vpgm voltage level is set up on the first and second bit lines 702 and 704 .
- the string select switches and the ground select switches that are coupled to the bit lines upon which a voltage at the Vpgm voltage level are set upon remain closed as long as a voltage at the Vpgm voltage level remains on the bit lines.
- the voltages on the first and second bit lines, for the stacked memory structure shown in FIG. 10A remain at the Vpgm voltage level during the programming operation.
- Such voltage levels on the bit lines of the stacked memory structure are in a “00” programming pattern.
- the “00” programming pattern is a programming biasing arrangement in which a memory cell formed with the first bit line and a memory cell formed with the second bit line are programmed during the programming operation.
- a voltage at the Vpgm voltage level is set up on the first bit line 702 .
- a voltage at the Vcc voltage level is set up on the second bit line 704 .
- Such voltage levels on the bit lines of the stacked memory structure are in a “01” programming pattern.
- the “01” programming pattern is a programming biasing arrangement in which one memory cell coupled to the first bit line is programmed and one memory cell coupled to the second bit line is not programmed during the programming operation.
- the string select switches and the source select switches that are coupled to the bit lines upon which a voltage at the Vpgm voltage level are set upon remain closed.
- the string select switches and the source select switches that are coupled to the bit lines upon which a voltage at the Vcc voltage level are set upon are opened.
- the voltage on the first bit line is non-floating at the Vpgm voltage level, while the voltage on the second bit line is floating.
- the voltage on a word line coupled to corresponding memory cells that are coupled to the first bit line and the second bit line is increased through ISPP to a voltage with a voltage level up to 21V.
- the voltage level on the second bit line increases through capacitive coupling with the word line.
- the voltage level of the voltage on the second bit line is boosted up to Vinhibit2.
- a voltage at the Vpgm voltage level is set up on the second bit line 704 .
- a voltage at the Vcc voltage level is set up on the first bit line 702 .
- Such voltage levels on the bit lines of the stacked memory structure are in a “10” programming pattern.
- the “10” programming pattern is a programming biasing arrangement in which at least one memory cell coupled to the second bit line is programmed, and at least one memory cell coupled to the first bit line is not programmed during the programming operation.
- the string select switches and ground select switches are closed and open based upon the voltage level that is set up on each bit line as for the programming operation performed on the stacked memory structure shown in FIG. 10C .
- the voltage on the second bit line is non-floating at the Vpgm voltage level, while the voltage on the first bit line is floating.
- the voltage on a word line that is coupled to corresponding memory cells that are coupled to the first bit line and the second bit line is increased through ISPP to a voltage with a voltage level up to 21V.
- the voltage level on the first bit line increases through capacitive coupling with the word line.
- the voltage level of the voltage on the first bit line is boosted up to Vinhibit2.
- Memory cells in a stacked memory structure that are programmed according to either the “10” or “01” programming patterns are programmed faster than memory cells in a stack of memory cells that are programmed according to the “00” programming pattern.
- This increase in programming speed in either the “10” or “01” programming pattern can be understood because the bit lines upon which the voltage is boosted up can act as a “back gate” for the memory cells formed with an adjacent bit line upon which a voltage at the Vpgm level is maintained during the programming process.
- the voltage on the boosted bit lines can act like a gate voltage on a field effect transistor, in which the bit lines selected for programming can act like the field effect transistor channel in which the carrier concentrations are boosted by a gate voltage.
- the bit lines selected for programming can act like the field effect transistor channel in which the carrier concentrations are boosted by a gate voltage.
- the second bit line 704 serves as the back gate for the memory cells formed with the adjacent first bit line 702 .
- the first bit line 702 serves as the back gate for the memory cells formed with the adjacent second bit line 704 .
- the increase in the voltage level of the voltage on the bit lines that serve as the back gate causes an increase, during programming, of the carrier concentration within the inversion layers of the memory cells that are formed with an adjacent bit line.
- Such increase of the charge density in the inversion layers can cause charge to tunnel from the inversion layer at a lower word line voltage than memory cells with inversion layers that have a lower charge density.
- FIG. 11 is a graph of the threshold voltage (Vt) of the memory cells formed with the structure and applied voltages of FIG. 10A as a function of an increasing voltage level of the voltage applied to the word line through ISPP. Specifically, FIG. 11 illustrates over-programming that can occur in the stacked memory structure that are programmed in the “00” programming pattern.
- Line 710 is the threshold voltage in the memory cells formed with the first, upper bit line 702 shown in FIG. 10A .
- Line 708 is the threshold voltage in the memory cells formed with the second, lower bit line 704 shown in FIG. 10A .
- the threshold voltage of the memory cells in the first bit line and the second bit line increase roughly linearly with each pulse until the memory cell in the second bit line passes program verify, shown at point 712 .
- the threshold voltage on trace 710 for the memory cells on upper bit line 702 levels off in region 714 because the bit line is set to the inhibit condition
- the stacked memory structure transitions from being programmed in a “00” programming pattern to being programmed in a “01” programming pattern, such as is applied to the memory structure shown in FIG. 10B .
- the programming rate is faster for memory cells in a stacked memory structure that are programmed according to the “01” programming pattern.
- Vt changes in the bottom layer as indicated by the arrow 716 by a larger amount in the next ISPP pulse after point 712 .
- the increase in the amount that Vt changes after point 712 can lead to over-programming of the memory cells in the bottom layer in this example.
- FIG. 12 shows another example organization of memory cells in the stacked memory structure during programming, which can suppress disturb and prevent over-programming.
- the stacked memory structure 720 includes first, second, third, fourth, fifth, sixth, seventh and eighth stacked bit lines 722 , 724 , 726 , 728 , 730 , 732 , 734 and 736 .
- the stacked bit lines are separated by insulating layers 738 .
- the stacked bit lines correspond to first, second, third, fourth, fifth, sixth, seventh and eighth layers in the stacked memory structure, with each layer including memory cells.
- the organization can be characterized as including three sets of layers.
- the first set of layers 740 includes the memory cells formed with the first, fourth and seventh bit lines 722 , 728 and 734 .
- the second set of layers 742 includes the memory cells formed with the second, fifth and eighth bit lines 724 , 730 and 736 .
- the third set of layers 744 includes the memory cells formed with the third and sixth bit lines 726 and 732 .
- the bit lines in each set of layers are separated by at least two other bit lines in two different sets of layers.
- the sets in FIG. 12 include subsets of only one layer.
- the organization can be applied to a stacked memory structure that includes three or more bit lines, so that each group of layers includes any number of bit lines.
- FIG. 12 The organization of FIG. 12 is applied during a programming operation to prevent over-programming while decreasing the amount of disturbing that occurs in unselected memory cells in the stacked memory structure 720 .
- a first program operation is executed.
- the first programming operation includes applying a first programming bias to a first set (any one of the three sets) in a stacked memory structure.
- the first programming bias also includes applying voltages to the stacked memory structure to inhibit changes in the state of memory cells in the corresponding memory cells in the second and third sets of layers.
- a second program operation is executed. If one or more cells in the second set of layers requires a change to a programmed state, the second programming operation includes applying a bias to cause such cells to change state. The bias also includes applying voltages to the stacked memory structure to inhibit changes in the state of memory cells in the set of corresponding memory cells in the first set and the third set of layers. Then, if one or more cells in the third set of layers requires a change in state, then a third programming operation is applied that includes applying a bias to cause such cells to change state.
- the bias also includes applying voltages to the stacked memory structure to inhibit changes in the state of memory cells in the set of corresponding memory cells in the first set and the second set of layers.
- no layer set up for inhibit is between two layers set up for programming.
- no layer set up for programming is adjacent any layer that is also set up for programming. This prevents the over-programming that can occur in the “01” and “10” program conditions shown in FIG. 10A .
- the grouping can be static, applied for every program command, or dynamic so that the grouping is selected each time to reduce the need for second and third programming operations.
- FIG. 13 is a flowchart of the steps executed by the controller in performing an alternate programming technique that can prevent program disturb and over programming, that includes iteratively performing group programming operations over first, second and third sets of the cells.
- the controller receives a program instruction to program data to memory cells corresponding to a particular multibit address in a stacked memory structure having a plurality of layers.
- the controller executes a first program operation on the corresponding memory cells.
- the first programming operation includes applying program voltages via bit lines to cells to be changed to a programmed state disposed in a first set of the layers, inhibit voltages to remaining cells disposed in the first set, and inhibit voltages to all of the cells disposed in a second set and a third set.
- the cells are assigned to the sets so that there are no adjacent layers in any one set, and the layers in any one set are separated by two layers, including one layer in each of the other two sets.
- no cells in the first set can be exposed to conditions like those of layer 410 in FIG. 4 , which causes a Vinhibit3 level.
- the controller executes a second programming operation.
- the second programming operation includes applying program voltages to the cells to be changed to the programmed state in the second set of the layers, inhibit voltages to remaining cells in the second set, and inhibit set up voltages to all the cells in the first and third sets.
- the controller executes a third programming operation.
- the third programming operation includes applying program voltages to the cells to be changed to the programmed state in the third set of the layers, inhibit voltages to remaining cells in the third set, and inhibit set up voltages to all the cells in the first and second sets.
- FIG. 14 is a block diagram of an integrated circuit memory 900 employing memory cells and bias circuitry according to embodiments of the present invention with a stacked memory structure 902 having modified programming logic as described herein.
- the stacked memory structure 902 includes multiple levels of cells arranged in multiple NAND strings.
- a row decoder (block 904 ) is coupled to a plurality of word lines 906 arranged along rows in the stacked memory structure 902 .
- Column decoders in block 908 are coupled to a set of page buffers 910 , in this example via data bus 912 .
- the global bit lines 914 are coupled to local bit lines (not shown) arranged along columns in the stacked memory structure 902 .
- Addresses are supplied on bus 916 to column decoders (block 908 ) and row and level decoder (block 904 ).
- Data is supplied via the data-in line 918 from other circuitry 920 (including for example input/output ports) on the integrated circuit, such as a general purpose processor or special purpose application circuitry, or a combination of modules providing system-on-a-chip functionality supported by the stacked memory structure 902 .
- Data is supplied via the line 918 to input/output ports or to other data destinations internal or external to the integrated circuit memory 900 .
- a controller 922 implemented for example as a state machine, provides signals to control the application of bias arrangement supply voltages generated or provided through the voltage supply or supplies in block 924 to carry out the various operations described herein.
- the controller can use programming techniques like those shown in FIGS. 6 , and 9 , where the controller includes logic for first and second program sequences to the stacked memory structure 902 to suppress disturb. Also, the controller can include logic for first, second and third program sequences to prevent over-programming like those shown in FIG. 13 .
- the controller can be implemented using special-purpose logic circuitry as known in the art.
- the controller comprises a general purpose processor, which may be implemented on the same integrated circuit, which executes a computer program to control the operations of the device.
- a combination of special purpose logic circuitry and a general purpose processor may be utilized for implementation of the controller.
- a memory device including a stacked memory structure with layers of memory cells.
- the device includes circuitry coupled to the stacked memory structure, responsive to a program instruction to program data in target cells in a stack of cells at a particular multibit address.
- the circuitry is configured to use an assignment of cells in the stack of cells to a plurality of sets of cells, and to iteratively execute a group program operation selecting each of the plurality of sets in sequence.
- the group program operation includes applying program voltages to target cells in a selected one of the plurality of sets, inhibit voltages to remaining cells in said selected one of the plurality of sets, and inhibit voltages to all of the cells in others of the plurality of sets.
- the plurality of sets includes a first set and a second set, where assignment of cells to the first and second sets insures that no cells in the first set are disposed in layers separated by only one layer from layers including cells in the second set.
- the assignment groups cells so no cell having inhibit voltages applied is in a layer of the stack between two layers in which cells are having programming voltages applied.
- the assignment groups cells so no cell having programming voltages applied is in a layer of the stack adjacent any layer including a cell that is also having programming voltages applied.
- the assignment groups cells so no cell having inhibit voltages applied is in a layer of the stack between two layers in which cells are having programming applied.
- the device is configured in one example, so that the group program operation includes logic to skip a selected set if there are no target cells in the set.
Abstract
A programming bias technique is described for programming a stacked memory structure with a plurality of layers of memory cells. The technique includes the controller circuitry responsive to a program instruction to program data in target cells in a stack of cells at a particular multibit address. The circuitry is configured to use an assignment of cells in the stack of cells to a plurality of sets of cells, and to iteratively execute a set program operation selecting each of the plurality of sets in sequence. Each iteration includes applying inhibit voltages to all of the cells in others of the plurality of sets. Also, each set of layers includes subsets of one or two, and there are at least two layers from other sets separating each of the subsets in one set.
Description
- This application claims the benefit of U.S. Provisional Patent Application No. 61/752,985 filed on 16 Jan. 2013, which application is incorporated by reference as if fully set forth herein.
- 1. Field of the Invention
- The present invention relates to high density memory devices, and particularly the operation of devices using stacked memory structures.
- 2. Description of Related Art
- As critical dimensions of devices in integrated circuits shrink, designers have been looking to techniques for stacking multiple planes of memory cells to achieve greater storage capacity, and to achieve lower costs per bit. For example, thin film transistor techniques are applied to charge trapping memory technologies in Lai, et al., “A Multi-Layer Stackable Thin-Film Transistor (TFT) NAND-Type Flash Memory,” IEEE Int'l Electron Devices Meeting, 11-13 Dec. 2006; and in Jung et al., “Three Dimensionally Stacked NAND Flash Memory Technology Using Stacking Single Crystal Si Layers on ILD and TANOS Structure for Beyond 30 nm Node,” IEEE Int'l Electron Devices Meeting, 11-13 Dec. 2006.
- Also, cross-point array techniques have been applied for anti-fuse memory in Johnson et al., “512-Mb PROM With a Three-Dimensional Array of Diode/Anti-fuse Memory Cells,” IEEE J. of Solid-State Circuits, vol. 38, no. 11, November 2003. In the design described in Johnson et al., multiple layers of word lines and bit lines are provided, with memory elements at the cross-points.
- Another structure that provides vertical NAND cells in a charge trapping memory technology is described in Tanaka et al., “Bit Cost Scalable Technology with Punch and Plug Process for Ultra High Density Flash Memory,” 2007 Symposium on VLSI Technology Digest of Technical Papers; 12-14 Jun. 2007, pages: 14-15. The structure described in Tanaka et al. includes a multi-gate field effect transistor structure having a vertical channel which operates like a NAND gate, using silicon-oxide-nitride-oxide-silicon SONOS charge trapping technology to create a storage site at each gate/vertical channel interface.
- 3D memory structures are very dense, but the density can lead to problems with data retention. For example, a programming operation for a selected cell can disturb the data stored in other cells. Thus, it is desirable to provide for a technology for programming 3D memories with improved data retention.
- Technology for programming data in a stacked memory structure is described. The technology can mitigate program disturb conditions, and thereby improve endurance of memory devices. A program operation is initiated when a memory device receives a program instruction to program data to a particular multibit address which is mapped to a set of memory cells in a plurality of layers of the stacked memory structure. The set of memory cells, to which the multibit address is mapped, are organized for the purposes of the programming into those in a first set of layers and those in a second set of layers. The layers are organized so that no two layers in the first set are separated by only one layer in the second set. Thus, for example, the layers in the first set can be separated by two or more layers in the second set, or can be adjacent only layers in the first set (i.e. not separated by a layer in the second set). Also, the layers are assigned so that the first set includes a plurality of subsets of one or more layers, where each of the subsets is separated from other subsets of the first set by at least two layers.
- According to this technique, responsive to a program instruction to store data at the particular multibit address, a program operation is executed that is limited to memory cells in a first set of subsets of layers in the plurality of layers, where the subsets of layers in the first set are separated from other subsets in the first set by at least two layers, and then completing programming if necessary of remaining memory cells for the multibit address. As a result of the first program operation, one or more of the memory cells in the first subset for the corresponding multibit address are programmed.
- According to this technique a second program operation can be applied that includes applying program voltage to one or more of the corresponding memory cells in the second set and an inhibit voltage to the memory cells in the first set.
- In one alternative, a set of memory cells corresponding to the multibit address can include some cells that do not need to be changed and some that do need to be changed to a programmed state, as can be identified based upon the data to be programmed and upon which of the corresponding memory cells are already in a programmed state. The first set of layers can be selected when possible for each program instruction, so that the first programming operation is able to complete the programming operations in some instances, so that the second programming operation is not needed. In this case, and also when the first and second sets are statically configured, the second program operation can be applied only if the state of at least one memory cell in the second set needs to be changed to a programmed state.
- In another aspect, the technology described herein provides a memory device including stacked memory cells which is configured to use an assignment of cells in the stack of cells to a plurality of sets of cells, and to iteratively execute a group program operation selecting each of the plurality of sets in sequence. In each iteration, the group program operation includes applying program voltages to target cells in a selected one of the plurality of sets, inhibit voltages to remaining cells in said selected one of the plurality of sets, and inhibit voltages to all of the cells in others of the plurality of sets.
- Other aspects and advantages of the present invention can be seen on review of the drawings, the detailed description and the claims, which follow.
-
FIG. 1 is a perspective illustration of a 3D NAND-flash memory array structure. -
FIG. 2 is a layout view of the 3D NAND-flash memory array structure ofFIG. 1 showing an example of a programming bias arrangement. -
FIGS. 3A-3C show a stacked memory structure made up of three bit lines and the various voltage levels that can exist on the bit lines during a program operation. -
FIG. 3D is a graph of voltage levels shown inFIGS. 3A-3C . -
FIG. 4 shows voltages on the bit lines in a stacked memory structure during a programming technique. -
FIG. 5 is a flowchart of steps executed by a controller in an alternate programming technique. -
FIG. 6 shows an example organization of memory cells in the stacked memory structure. -
FIGS. 7 and 8 show the stacked memory structure with the organization ofFIG. 6 with voltage levels in bit lines during the performance of corresponding first and second programming operations of the programming technique shown inFIG. 5 . -
FIG. 9 is a flowchart of steps executed by a controller in another alternate programming technique. -
FIGS. 10A-10C show a stacked memory structure made up of two bit lines and the various voltage levels that can exist on the bit lines during a program operation. -
FIG. 11 is a graph of the threshold voltage (Vt) of the memory cells formed with the structure and applied voltages ofFIG. 10A as a function of an increasing voltage level of the voltage applied to the word line through ISPP. -
FIG. 12 shows another example organization of memory cells in the stacked memory structure during programming. -
FIG. 13 is a flowchart of steps executed by a controller in yet another programming technique. -
FIG. 14 is a block diagram of an integrated circuit memory employing memory cells and bias circuitry according to embodiments of the present invention with a stacked memory structure having modified programming logic as described herein. - A detailed description of embodiments is provided with reference to the
FIGS. 1-14 . -
FIG. 1 is a perspective illustration of a 3D NAND-flash memory array structure. The 3D NAND-flash memory array structure is described in commonly owned U.S. patent application Ser. No. 13/078,311 filed 1 Apr. 2011, entitled “Memory Architecture of 3D Array With Alternating Memory String Orientation and String Select Structures,” now Publication No. US-2012-0182806, (MXIC 1960-2) which is hereby incorporated by reference as if fully set forth herein. It is appreciated that alternative 3D NAND-flash memory array structures exist as are described in Chen et al. Insulating material is removed from the drawing to expose additional structure. For example, insulating layers are removed between the semiconductor strips, in the ridge-shaped stacks, and are removed between the ridge-shaped stacks of semiconductor strips. The 3D NAND-flash memory array structure includes stacked memory structures resulting in the array having a plurality of memory cells disposed in a dense configuration. As a result of the plurality of memory cells being disposed in a dense configuration, problems with data retention are observed in the 3D-NAND flash memory array shown inFIG. 1 . - The multilayer array is formed on an insulating layer, and includes a plurality of word lines 125-1, . . . , 125-N. The plurality of ridge-shaped stacks includes semiconductor strips 112, 113, 114, 115. Semiconductor strips in the same plane are electrically coupled together by
pads - The shown word line numbering, ascending from 1 to N going from the back to the front of the overall structure, applies to even memory pages. For odd memory pages, the word line numbering descends from N to 1 going from the back to the front of the overall structure.
-
Stairstep pads stairstep pads stairstep pads -
Stairstep pads stairstep pads stairstep pads - Any given stack of semiconductor strips is coupled to either the
stairstep pads stairstep pads - The stack of semiconductor strips 112, 113, 114, 115 is terminated at one end by the
stairstep pads SSL gate structure 119, gateselect line GSL 126, word lines 125-1 WL through 125-N WL, gateselect line GSL 127, and terminates at the other end bysource line 128. The stack of semiconductor strips 112, 113, 114, 115 does not reach thestairstep pads - The stack of semiconductor strips 102, 103, 104, 105 is terminated at one end by the
stairstep pads SSL gate structure 109, gateselect line GSL 127, word lines 125-N WL through 125-1 WL, gateselect line GSL 126, and terminates at the other end by a source line (obscured by other parts of the figure). The stack of semiconductor strips 102, 103, 104, 105 does not reach thestairstep pads - A layer of memory material separates the word lines 125-1 through 125-n, from the semiconductor strips 112-115 and 102-105. Ground
select lines GSL 126 andGSL 127 are conformal with the plurality of ridge-shaped stacks, similar to the word lines. - Every stack of semiconductor strips is terminated at one end by a set of stairstep pads, and at the other end by a source line. For example, the stack of semiconductor strips 112, 113, 114, 115 is terminated at one end by
stairstep pads source line 128. At the near end of the figure, every other stack of semiconductor strips is terminated by thestairstep pads stairstep pads - Bit lines and string select lines are formed at the metals layers ML1, ML2, and ML3. Local bit lines for each string of memory cells are formed by the semiconductor strips.
- Transistors are formed between the
stairstep pads -
FIG. 2 is a layout view of the 3D NAND-flash memory array structure ofFIG. 1 showing an example of a programming bias arrangement. - In the layout view of
FIG. 2 , the stacks of semiconductor strips are shown as vertical strips with dot-dash borders. Adjacent stacks of semiconductor strips alternate between the opposite orientations, of bit line end-to-source line end orientation, and source line end-to-bit line end orientation. Every other stack of semiconductor strips runs from the bit line structure at the top to the source line at the bottom. Every other stack of semiconductor strips runs from the source line at the top to the bit line structure at the bottom. - Overlying the stacks of semiconductor strips, are the horizontal word lines and the horizontal ground select lines GSL (even) and GSL (odd). Also overlying the stacks of semiconductor strips, are the SSL gate structures. The SSL gate structures overlie every other stack of semiconductor strips at the top end of the semiconductor strips, and overlie every other stack of semiconductor strips at the bottom end of the semiconductor strips. In either case, the SSL gate structures control electrical connection between any stack of semiconductor strips and the stack's corresponding bit line contact pads.
- The shown word line numbering, ascending from 1 to N going from the top of the figure to the bottom of the figure, applies to even memory pages. For odd memory pages, the word line numbering descends from N to 1 going from the top of the figure to the bottom of the figure.
- Overlying the word lines, ground select lines, and SSL gate structures, are the ML1 SSL string select lines running vertically. Overlying the ML1 SSL string select lines are the ML2 SSL string select lines running horizontally. Although the ML2 SSL string select lines are shown as terminating at corresponding ML1 SSL string select lines for ease of viewing the structure, the ML2 SSL string select lines may run longer horizontally. The ML2 SSL string select lines carry signals from the decoder, and the ML1 SSL string select lines couple these decoder signals to particular SSL gate structures to select particular stacks of semiconductor strips.
- Also overlying the ML1 SSL string select lines are the source lines, even and odd.
- Further, overlying the ML2 SSL string select lines are the ML3 bit lines (not shown) which connect to the stepped contact structures at the top and the bottom. Through the stepped contact structures, the bit lines select particular planes of semiconductor strips.
- Particular bit lines are electrically connected to different planes of semiconductor strips that form local bit lines. Under the programming bias arrangement shown, the particular bit lines, are biased at either Vcc (inhibit) or 0V (program), which voltage levels are representative of inhibit set up and program voltages that can have other values. The SSL of the selected stack of semiconductor strips is at Vcc, and all other SSLs are 0V. For this semiconductor strip in an “odd” stack being programmed, the GSL (even) is turned on at Vcc to allow the bit line bias to pass, and the GSL (odd) is turned off at 0V to disconnect the source line (odd). Source line (even) is at Vcc for self-boosting to avoid disturb of adjacent even pages. The word lines are at Vpass voltages, except for the selected word line which undergoes incremental step pulsed programming ISPP in which pulses are applied having stepped voltages, which can include pulses having voltage levels on the order of 21V for example.
- The shown memory unit is repeated above and below, sharing the same bit lines. These repeated units can also be programmed at the same time.
- If, instead, a semiconductor strip in an “even” stack is being programmed, then the odd and even signals are switched.
-
FIGS. 3A-3C show a stacked memory structure made up of three bit lines and the various voltage levels that can exist on the bit lines during a program operation. Thestacked memory structure 300 includesfirst bit line 302, asecond bit line 304 and athird bit line 306. Insulatinglayers third bit lines memory structure 300. The first, second and third layers of memory cells correspond to the first, second and third bit lines. For purposes of illustration, the memory material layers and the surrounding word line are not shown. - The various voltage levels in the bit lines that are shown in
FIGS. 3A-3C are the voltage levels that occur as a result of the unselected bit line being connected to a positive voltage like Vcc to set up for inhibit voltages, and the selected bit line being coupled to a lower voltage line OV. During a program pulse on a word line targeting a selected bit line, the unselected bit lines are boosted by coupling to the word line.FIG. 3D is a graph of voltage levels shown inFIGS. 3A-3C . - For the stacked memory structure shown in
FIG. 3A , during a first interval of a program operation a voltage at an inhibit set up voltage level, is set up on the first, second andthird bit lines third bit lines memory structure 300. - As all three of the bit lines are left floating during the second interval, the setting up of the voltage through ISPP on the word line causes boosting of the voltages on all three of the first, second and
third bit lines - For the stacked memory structure shown in
FIG. 3B , during a first interval of a program operation a voltage with the inhibit set upvoltage level isset up on the second andthird bit lines first bit line 302. The Vpgm voltage level is less than the inhibit set up voltage level. For example, the Vpgm voltage level can be 0V. At the end of the first interval, the string select switches and ground select switches that are coupled to the second andthird bit lines first bit line 302 remain closed during the second interval. As a result, the first bit line is not left floating and remains at a voltage at the Vpgm voltage level during the second interval. - Also during the second interval, a word line voltage pulse with a voltage level up to 21V is set up, for example using ISPP techniques, on the word line that is electrically coupled to the corresponding memory cells in the first, second and third layers of the stacked
memory structure 300. The word line voltage pulse causes boosting of the voltage on thethird bit line 306 up to the Vinhibit1 voltage level, in the same manner as was discussed with respect toFIG. 3A . - The
second bit line 304 is capacitively coupled to both the word line and thefirst bit line 302. The word line voltage pulse causes the voltage on the second bit line to be boosted up as a result of capacitive coupling with the word line. However, the amount the voltage on the second bit line is boosted is reduced as a result of the voltage on thefirst bit line 302 at a Vpgm voltage level. As a result, the voltage on the second bit line is boosted to a Vinhibit2 voltage level that is different than the Vinhibit1 voltage level. As shown inFIG. 3D , the Vinhibit2 voltage level is less than the Vinhibit1 voltage level. The lower Vinhibit2 can increase the likelihood that a memory cell will be disturbed on the unselected line. However, using the technology described herein, the programming bias arrangement can be configured to account for this voltage shift, so that program disturb in this situation can be suppressed. - For the stacked memory structure shown in
FIG. 3C , during a first interval of a program operation, a voltage with an inhibit set up voltage level is set up on thesecond bit line 304. Also, during the first interval, a voltage with a Vpgm voltage level is set up on the first andthird bit lines second bit line 304 are open. As a result, during a second interval after the first interval, thesecond bit line 304 is left floating with a voltage at the inhibit set up voltage level (e.g. Vcc). - During the second interval, word line voltage pulse is applied to the word line that is electrically coupled to the corresponding memory cells in the first, second and third layers of memory cells of the stacked
memory structure 300. Meanwhile, during the second interval, the string select and ground select switches that are coupled to the first andthird bit lines second bit line 304 is capacitively coupled to both the word line and the first andthird bit lines FIG. 3D , the Vinhibit3 voltage level is less than both the Vinhibit1 and Vinhibit2 voltage levels. The decreased voltage level of Vinhibit3 increases the chances that unwanted charge tunneling will occur in unselected memory cells of the stackedmemory structure 300. Specifically, such unwanted charge tunneling will occur in unselected memory cells that have a voltage at the Vinhibit3 voltage level on them during a performed programming operation. This unwanted charge tunneling can lead to disturbing of unselected cells during a programming operation through either the disrupting of already stored data or the creation of false data. As described herein, the programming bias arrangement can be configured to reduce or prevent this voltage shift to a level of Vinhibit3, so that program disturb in this situation can be suppressed. The memory structure can be configured so that Vinhibit1 and Vinhibit2 can be encountered while data retention performance remains within operating specifications. Vinhibit3 on the other hand may cause too much program disturbance in unselected cells, leading to poor data retention performance. -
FIG. 4 shows voltages on the bit lines in a stacked memory structure during a programming technique. Thestacked memory structure 400 includes eightbit lines layers 418 between the bit lines. The eightbit lines FIG. 4 shows a single vertical column of cells disposed in the eight bit lines, the stacked memory structure includes multiple vertical columns of cells that are formed by the eight bit lines and can simultaneously have the same or different voltages on them during performance of a programming operation according to the programming technique. InFIG. 4 , the layers that include memory cells target of a change of state in a single program command, that is the layers at which there are selected memory cells to be programmed, are marked as target layers “TGT” for an example. The programming technique used to program the stacked memory structure shown inFIG. 4 includes programming all of the selected memory cells through a single programming bias arrangement, regardless of where the selected memory cells are disposed in the stacked structure. - As a result, voltages at the Vinhibit3 voltage level can be encountered in bit lines in the stacked memory structure, thereby leading to disturbing. In the shown example, the
third bit line 406,fourth bit line 408,sixth bit line 412 andeighth bit line 416 have voltages at the Vpgm voltage level, while the others have voltage variously at the Vinhibit1, Vinhibit2 and Vinhibit3 voltage levels. - Specifically, the programming technique includes, during a first interval, setting up a voltage with a Vpgm voltage level on the third, fourth, sixth and
eighth bit lines seventh bit lines - During a second interval, after the first interval, the string select switches and the ground select switches that are coupled to the first, second, fifth and
seventh bit lines seventh bit lines eighth bit lines memory structure 400. - The
first bit line 402 is capacitively coupled to the word line. Therefore, the charging of the word line through ISPP causes the voltage on the first bit line to transition to the Vinhibit1 voltage level. The second bit line 404 is adjacent thethird bit line 406 which is at target level. Therefore, both the charging of the word line and the non-floating voltage at the Vpgm voltage level on thethird bit line 406 cause the voltage on the second bit line 404 to transition to the Vinhibit2 voltage level. - The
fifth bit line 410 is capacitively coupled to the word line and between thefourth bit line 408 and thesixth bit line 412. Therefore, the charging of the word line and the continued application of non-floating voltages at the Vpgm voltage level on thefourth bit line 408 and thesixth bit line 412 causes the voltage on the fifth bit line to transition to the Vinhibit3 voltage level. Theseventh bit line 414 is capacitively coupled to the word line and between thesixth bit line 412 and theeighth bit line 416. Therefore, the charging of the word line and the non-floating voltages at the Vpgm voltage level on both the sixth bit line and the eighth bit line causes the voltage on theseventh bit line 414 to transition to the Vinhibit3 voltage level. The Vinhibit3 level can lead to program disturb conditions. -
FIG. 5 is a flowchart of the steps executed by the controller in performing a programming technique that includes iteratively performing group programming operations over cells disposed in first and second sets of the layers. Specifically, atstep 510, the controller receives a program instruction to program data to memory cells corresponding to a particular multibit address in a stacked memory structure having a plurality of layers. Atstep 512, the controller executes a first program operation on the corresponding memory cells. The first programming operation includes applying program voltages via bit lines to cells to be changed to a programmed state in a first set of the layers, inhibit voltages to remaining cells in the first set, and inhibit voltages via bit lines to all of the cells in a second set of the layers, even if some of the cells in the second set are target of programming by the program instruction being executed. The layers are assigned to the first and second sets of the layers so that no two layers in the first set are separated by only one layer in the second set. In an alternate embodiment, the first and second sets of the layers are assigned so that not only is the above true, but also so that no two layers in the second set are separated by only one layer in the first set. As a result, no cells in the first or second sets can be exposed to conditions like those oflayer 410 inFIG. 4 , which causes a Vinhibit3 level. - At
step 514, if memory cells disposed in the second set of the layers need to be changed to a programmed state, the controller executes a second programming operation. The second programming operation includes applying program voltages to the cells to be changed to the programmed state in the second set of the layers, inhibit voltages to remaining cells in the second set, and inhibit voltages to all the cells in the first set of the layers. -
FIG. 6 shows an example organization of memory cells in the stacked memory structure. The organization is based on the physical locations of the memory cells in the layers of the stackedmemory structure 600. Thestacked memory structure 600 includes a first, second, third, fourth, fifth, sixth, seventh andeighth bit line - The organization includes a set of memory cells for a particular multibit address disposed in a first set of
layers 630 and a second set oflayers 632. The first set oflayers 630 includes the layers in a first subset including a pair oflayers 620 and a third subset including a pair oflayers 624. The second set oflayers 632 includes layers that are in a second subset including a pair oflayers 622 and a fourth subset including a pair oflayers 626. The first pair oflayers 620 includes the first and second layers that correspond to the first andsecond bit lines layers 622 includes the third and fourth layers that correspond to the third andfourth bit lines layers 624 includes the fifth and sixth layers that correspond to the fifth andsixth bit lines layers 626 includes the seventh and eighth layers that correspond to the seventh andeighth bit lines -
FIGS. 7 and 8 show the stacked memory structure with the organization ofFIG. 7 with voltage levels in the bit lines during the performing of corresponding first and second programming operations of the programming technique shown inFIG. 5 . For comparative purposes, the device receives the same multibit address and maps the address to the same corresponding cells as was illustrated for the stacked memory structure shown inFIG. 4 . As a result, the selected cells of the corresponding memory cells target of programming are in the third 606, fourth 608, sixth 612 and eighth 616 layers of the stacked memory structure, the same as inFIG. 4 . - With respect to the stack of memory cells that is shown in
FIG. 7 , under the first programming operation of the present programming technique, the controller applies a first program bias arrangement to the corresponding memory cells in a first set of the stacked memory structure. Under the first programming bias arrangement, during a first interval, a voltage at the Vpgm level is applied to the selected memory cell in the first set of layers. The memory cells in the first set of layers include the memory cells in the first pair oflayers 620 and the third pair oflayers 624. Specifically, a voltage at the Vpgm voltage level is set up only on thesixth bit line 612 that is part of the third pair oflayers 624. Other target cells inlayers layers 620 and one memory cell or both memory cells in the third pair oflayers 624. - Also, during the first interval of the first programming bias arrangement, voltages at the Vcc voltage level are applied to the unselected memory cells in the first set of layers. The unselected memory cells in the first set of layers include the corresponding memory cells in the first, second and fifth layers of the stacked
memory structure 600. Specifically, voltages at the Vcc level are set up on thefirst bit line 602, thesecond bit line 604 and thesixth bit line 610. Additionally, during the first interval of the first programming bias arrangement, inhibit voltages are applied to the memory cells in the second set of layers. The memory cells in the second set of layers include the memory cells in the corresponding second and fourth pairs oflayers third bit line 606, thefourth bit line 608, theseventh bit line 614 and theeighth bit line 616. - During a second interval, after the first interval, of the first programming bias arrangement, the string select switches and the ground select switches that are coupled to the bit lines upon which voltages at the Vcc voltage level were set up on during the first interval, are opened (off). As a result, the
first bit line 602, thesecond bit line 604, thethird bit line 606, thefourth bit line 608, thefifth bit line 610, theseventh bit line 614 and theeighth bit line 616 are all left floating with a voltage at the Vcc voltage level. The string select switches and the ground selected switches that are coupled to the selected bit line upon which the voltage at the Vpgm voltage level (e.g. O V) was set up to remain closed (on) throughout the second interval. As a result, during the second interval, thesixth bit line 612 is non-floating with a voltage at the Vpgm voltage level. - Also, during the second interval, a voltage is set up through ISPP on the word line that is electrically coupled to the corresponding memory cells in the stacked
memory structure 600. Thefirst bit line 602, thesecond bit line 604, thethird bit line 606, thefourth bit line 608 and theeighth bit line 616 are adjacent only other bit lines set up for inhibit. As a result, during the second interval, the voltages on such bit lines transition to a voltage at the Vinhibit1 voltage level. Thefifth bit line 610 and theseventh bit line 614 are adjacent to one bit line (608 and 616, respectively) set up for inhibit, and to the selectedbit line 612 The selectedbit line 612 that has a non-floating voltage at the Vpgm voltage level set up on it. As a result, the voltages on the fifth bit line and the seventh bit line transition to the Vinhibit2 voltage level during the second interval. None of the voltages on the bit lines transition to the Vinhibit3 voltage level throughout the application of the first programming bias arrangement. - With respect to the stack of memory cells as shown in
FIG. 8 , the controller applies a second program bias arrangement to the corresponding memory cells in the stacked memory structure to program cells inlayers memory structure 600. Specifically, a voltage at the Vpgm voltage level is set up on thethird bit line 606 and thefourth bit line 608, that are part of the second pair oflayers 622, and theeighth bit line 616 that is part of the fourth pair oflayers 626. It is appreciated that in alternative embodiments, in response to different multibit addresses, the second program bias arrangement can include applying voltages at the Vpgm level to any combination of the corresponding memory cells in the second set of layers. Specifically, this can include applying voltages at the Vpgm voltage level to one memory cell in the second pair oflayers 622 and one memory cell in the fourth pair oflayers 626. - Also, during the first interval of the second programming bias arrangement, voltages at the Vcc voltage level are applied to the unselected memory cells in the second set of layers. The unselected memory cell in the second set of layers includes the corresponding memory cell in the seventh layer of the stacked memory structure. Specifically, a voltage at the Vcc level is set up on the
seventh bit line 614. Additionally, during the first interval of the second programming bias arrangement, inhibit voltages are applied to the memory cells in the first set of layers. Specifically, voltages at the Vcc voltage level are set up on thefirst bit line 602, thesecond bit line 604, thefifth bit line 610 and thesixth bit line 612. - During a second interval of the second programming bias arrangement, after the first interval, the string select switches and the ground select switches that are coupled to the bit lines upon which voltages at the Vcc voltage level were set upon during the first interval, are opened. As a result, the
first bit line 602, thesecond bit line 604, thefifth bit line 610, thesixth bit line 612 and theseventh bit line 614 are all left floating with an inhibit set up voltage at for example the Vcc voltage level. The string select switches and the ground select switches that are coupled to the bit lines upon which voltages at the Vpgm voltage level were set upon during the first interval remain closed (on) during the second interval. As a result, during the second interval, thethird bit line 606, thefourth bit line 608 and theeighth bit line 616 are left non-floating with voltages at the Vpgm voltage level. - Also, during the second interval of the second programming bias arrangement, a voltage is set up through ISPP on the word line that is electrically coupled to the corresponding memory cells of the stacked
memory structure 600. Thefirst bit line 602 and thesixth bit line 612 are adjacent only layers receiving the inhibit bias. As a result, during the second interval, the voltages on the first bit line and the sixth bit line transition to a voltage at the Vinhibit1 voltage level. Thesecond bit line 604, thefifth bit line 610 and theseventh bit line 614 are adjacent one of the bit lines that have voltages at the Vpgm voltage level set upon them, and to one bit line set up for inhibit. As a result, the voltages on the second bit line, the fifth bit line and the seventh bit line transition to the Vinhibit2 voltage level during the second interval. None of the voltages on the semiconductor layers in the stack of memory cells transition to the Vinhibit3 voltage level. - In the examples described with reference to
FIGS. 5-8 , the sets of layers are statically assigned. So the controller automatically performs the first and second program operation in response to the single program command, skipping one or the other only when a pre-verify step for example, determines that there are no cells that need to be changed in the corresponding set of layers. In the example ofFIG. 10 , the control logic is altered so that the sets are not statically assigned, but rather can be assigned for each program command in an attempt to include all target cells in the first set, so that no programming operation would be required for the second set. This can could be used for example referring toFIG. 6 , if the target layers included the third layer 606 (which is in the second set in the static assignment) and the eighth layer 616 (which is in the first set in the static assignment) only. In this case, the controller can determine that there are no layers which would be subject of the inhibit set up adjacent to two layers that would be subject of the program bias, even if cells in both target layers are programmed in one operation. So, the controller can assignlayer 3 and 8 to the first set for the current program command. Also, it is noted that the Figures show that the cells in the set of cells that maps to the multibit address are aligned in a vertical stack. In other alternatives, the cells in the set of cells may be disposed in other configurations, such as disposed in the plurality of layers but not vertically aligned. -
FIG. 9 is a flowchart of the steps executed by the controller in performing an alternate programming technique that includes iteratively performing group programming operations over first and second sets of the cells. Specifically, atstep 520, the controller receives a program instruction to program data to memory cells corresponding to a particular multibit address in a stacked memory structure having a plurality of layers. Next, atstep 522, the controller determines which of the corresponding memory cells are to be changed to the programmed state. The controller determines which of the corresponding memory cells to change based on the received programming instructions and optionally whether or not the corresponding memory cells are already in the programmed state, such as can be determined by a pre-verify step. - At
step 524, the controller, if possible, defines a first set of the layers to include all of the corresponding memory cells to be changed to a programmed state. The first set of the layers includes corresponding layers of the plurality of layers so that no two layers in the first set are separated by only one layer in a second set of the layers. In an alternate embodiment, the first and second sets of layers includes corresponding layers of the plurality of layers so that not only is the above true, but also so that no two layers in the second set are separated by only one layer in the first set. - Next at
step 526, the controller executes a first program operation on the corresponding memory cells. The first programming operation includes applying program voltages to cells to be changed to a programmed state in the first set of the layers, inhibit voltages to remaining cells in the first set, and inhibit voltages to all cells in the second set of the layers. Then, atstep 528, if corresponding memory cells in the second set of the layers still need to be changed to the programmed state, the controller executes a second program operation on the corresponding memory cells. The second programming operation includes applying program voltages to the cells to be changed to the programmed state in the second set of the layers, inhibit voltages to remaining cells in the second set, and inhibit voltages to all cells in the first set of the layers. Because of the selection of a first set based on the cells to be programmed, the second program operation may be required less often. -
FIGS. 10A-10C show a stacked memory structure made up of two bit lines and various voltage levels that can exist on the bit lines during a program operation for the purposes of illustrating a program disturb phenomenon that can occur in stacked memory structures. Thestacked memory structure 700 includesfirst bit line 702 and asecond bit line 704. An insulatinglayer 706 is disposed between the first andsecond bit lines memory structure 700. The first and second layers of memory cells correspond to the first and second bit lines. For purposes of illustration, the memory material layers and the surrounding word line are not shown. - For the stacked
memory structure 700 shown inFIG. 10A , during a programming operation, a voltage at the Vpgm voltage level is set up on the first andsecond bit lines FIG. 10A , remain at the Vpgm voltage level during the programming operation. Such voltage levels on the bit lines of the stacked memory structure are in a “00” programming pattern. The “00” programming pattern is a programming biasing arrangement in which a memory cell formed with the first bit line and a memory cell formed with the second bit line are programmed during the programming operation. - For the stacked
memory structure 700 shown inFIG. 10B , during a first interval of a programming operation, a voltage at the Vpgm voltage level is set up on thefirst bit line 702. Also during the first interval, a voltage at the Vcc voltage level is set up on thesecond bit line 704. Such voltage levels on the bit lines of the stacked memory structure are in a “01” programming pattern. The “01” programming pattern is a programming biasing arrangement in which one memory cell coupled to the first bit line is programmed and one memory cell coupled to the second bit line is not programmed during the programming operation. During a second interval of the programming operation, the string select switches and the source select switches that are coupled to the bit lines upon which a voltage at the Vpgm voltage level are set upon remain closed. - Conversely, during the second interval of the programming operation, the string select switches and the source select switches that are coupled to the bit lines upon which a voltage at the Vcc voltage level are set upon are opened. As a result, during the second interval the voltage on the first bit line is non-floating at the Vpgm voltage level, while the voltage on the second bit line is floating. The voltage on a word line coupled to corresponding memory cells that are coupled to the first bit line and the second bit line is increased through ISPP to a voltage with a voltage level up to 21V. As the voltage on the second bit line is left floating during the second interval, the voltage level on the second bit line increases through capacitive coupling with the word line. As a result, the voltage level of the voltage on the second bit line is boosted up to Vinhibit2.
- For the stacked
memory structure 700 shown inFIG. 10C , during a first interval of a programming operation, a voltage at the Vpgm voltage level is set up on thesecond bit line 704. Also during the first interval, a voltage at the Vcc voltage level is set up on thefirst bit line 702. Such voltage levels on the bit lines of the stacked memory structure are in a “10” programming pattern. The “10” programming pattern is a programming biasing arrangement in which at least one memory cell coupled to the second bit line is programmed, and at least one memory cell coupled to the first bit line is not programmed during the programming operation. - The string select switches and ground select switches are closed and open based upon the voltage level that is set up on each bit line as for the programming operation performed on the stacked memory structure shown in
FIG. 10C . As a result, during the second interval, the voltage on the second bit line is non-floating at the Vpgm voltage level, while the voltage on the first bit line is floating. The voltage on a word line that is coupled to corresponding memory cells that are coupled to the first bit line and the second bit line is increased through ISPP to a voltage with a voltage level up to 21V. As the voltage on the first bit line is left floating during the second interval, the voltage level on the first bit line increases through capacitive coupling with the word line. As a result, the voltage level of the voltage on the first bit line is boosted up to Vinhibit2. - Memory cells in a stacked memory structure that are programmed according to either the “10” or “01” programming patterns are programmed faster than memory cells in a stack of memory cells that are programmed according to the “00” programming pattern. This increase in programming speed in either the “10” or “01” programming pattern can be understood because the bit lines upon which the voltage is boosted up can act as a “back gate” for the memory cells formed with an adjacent bit line upon which a voltage at the Vpgm level is maintained during the programming process. The voltage on the boosted bit lines can act like a gate voltage on a field effect transistor, in which the bit lines selected for programming can act like the field effect transistor channel in which the carrier concentrations are boosted by a gate voltage. For example, in the stacked memory structure shown in
FIG. 10B that is programmed according to the “01” programming pattern, thesecond bit line 704 serves as the back gate for the memory cells formed with the adjacentfirst bit line 702. Similarly, for the stacked memory structure shown inFIG. 10C that is programmed according to the “10” programming pattern, thefirst bit line 702 serves as the back gate for the memory cells formed with the adjacentsecond bit line 704. - The increase in the voltage level of the voltage on the bit lines that serve as the back gate causes an increase, during programming, of the carrier concentration within the inversion layers of the memory cells that are formed with an adjacent bit line. Such increase of the charge density in the inversion layers can cause charge to tunnel from the inversion layer at a lower word line voltage than memory cells with inversion layers that have a lower charge density.
-
FIG. 11 is a graph of the threshold voltage (Vt) of the memory cells formed with the structure and applied voltages ofFIG. 10A as a function of an increasing voltage level of the voltage applied to the word line through ISPP. Specifically,FIG. 11 illustrates over-programming that can occur in the stacked memory structure that are programmed in the “00” programming pattern.Line 710 is the threshold voltage in the memory cells formed with the first,upper bit line 702 shown inFIG. 10A .Line 708 is the threshold voltage in the memory cells formed with the second,lower bit line 704 shown inFIG. 10A . The threshold voltage of the memory cells in the first bit line and the second bit line increase roughly linearly with each pulse until the memory cell in the second bit line passes program verify, shown atpoint 712. Afterpoint 712, the threshold voltage ontrace 710 for the memory cells onupper bit line 702 levels off inregion 714 because the bit line is set to the inhibit condition As the voltage on the second bit line drops to an inhibit voltage level afterpoint 712, the stacked memory structure transitions from being programmed in a “00” programming pattern to being programmed in a “01” programming pattern, such as is applied to the memory structure shown inFIG. 10B . The programming rate is faster for memory cells in a stacked memory structure that are programmed according to the “01” programming pattern. As a result, Vt changes in the bottom layer as indicated by thearrow 716 by a larger amount in the next ISPP pulse afterpoint 712. The increase in the amount that Vt changes afterpoint 712 can lead to over-programming of the memory cells in the bottom layer in this example. -
FIG. 12 shows another example organization of memory cells in the stacked memory structure during programming, which can suppress disturb and prevent over-programming. Thestacked memory structure 720 includes first, second, third, fourth, fifth, sixth, seventh and eighthstacked bit lines layers 738. The stacked bit lines correspond to first, second, third, fourth, fifth, sixth, seventh and eighth layers in the stacked memory structure, with each layer including memory cells. - The organization can be characterized as including three sets of layers. In this organization, the first set of
layers 740 includes the memory cells formed with the first, fourth andseventh bit lines layers 742 includes the memory cells formed with the second, fifth andeighth bit lines layers 744 includes the memory cells formed with the third andsixth bit lines FIG. 8 , the sets inFIG. 12 include subsets of only one layer. The organization can be applied to a stacked memory structure that includes three or more bit lines, so that each group of layers includes any number of bit lines. - The organization of
FIG. 12 is applied during a programming operation to prevent over-programming while decreasing the amount of disturbing that occurs in unselected memory cells in the stackedmemory structure 720. - In programming the memory cells in the stacked memory structure that are organized through the arrangement of
FIG. 12 , a first program operation is executed. The first programming operation includes applying a first programming bias to a first set (any one of the three sets) in a stacked memory structure. The first programming bias also includes applying voltages to the stacked memory structure to inhibit changes in the state of memory cells in the corresponding memory cells in the second and third sets of layers. - After the first programming operation is performed, if the data to be stored requires memory cells in the second set of layers to change state, then a second program operation is executed. If one or more cells in the second set of layers requires a change to a programmed state, the second programming operation includes applying a bias to cause such cells to change state. The bias also includes applying voltages to the stacked memory structure to inhibit changes in the state of memory cells in the set of corresponding memory cells in the first set and the third set of layers. Then, if one or more cells in the third set of layers requires a change in state, then a third programming operation is applied that includes applying a bias to cause such cells to change state. The bias also includes applying voltages to the stacked memory structure to inhibit changes in the state of memory cells in the set of corresponding memory cells in the first set and the second set of layers. As a result of this organization, no layer set up for inhibit is between two layers set up for programming. Also, no layer set up for programming is adjacent any layer that is also set up for programming. This prevents the over-programming that can occur in the “01” and “10” program conditions shown in
FIG. 10A . - The grouping can be static, applied for every program command, or dynamic so that the grouping is selected each time to reduce the need for second and third programming operations.
-
FIG. 13 is a flowchart of the steps executed by the controller in performing an alternate programming technique that can prevent program disturb and over programming, that includes iteratively performing group programming operations over first, second and third sets of the cells. Specifically, atstep 1302, the controller receives a program instruction to program data to memory cells corresponding to a particular multibit address in a stacked memory structure having a plurality of layers. Atstep 1304, the controller executes a first program operation on the corresponding memory cells. The first programming operation includes applying program voltages via bit lines to cells to be changed to a programmed state disposed in a first set of the layers, inhibit voltages to remaining cells disposed in the first set, and inhibit voltages to all of the cells disposed in a second set and a third set. The cells are assigned to the sets so that there are no adjacent layers in any one set, and the layers in any one set are separated by two layers, including one layer in each of the other two sets. - As a result, no cells in the first set can be exposed to conditions like those of
layer 410 inFIG. 4 , which causes a Vinhibit3 level. - At
step 1306, if memory cells in the second set of the layers need to be changed to a programmed state, the controller executes a second programming operation. The second programming operation includes applying program voltages to the cells to be changed to the programmed state in the second set of the layers, inhibit voltages to remaining cells in the second set, and inhibit set up voltages to all the cells in the first and third sets. - At
step 1308, if memory cells in the third set of the layers need to be changed to a programmed state, the controller executes a third programming operation. The third programming operation includes applying program voltages to the cells to be changed to the programmed state in the third set of the layers, inhibit voltages to remaining cells in the third set, and inhibit set up voltages to all the cells in the first and second sets. -
FIG. 14 is a block diagram of anintegrated circuit memory 900 employing memory cells and bias circuitry according to embodiments of the present invention with astacked memory structure 902 having modified programming logic as described herein. In some embodiments, the stackedmemory structure 902 includes multiple levels of cells arranged in multiple NAND strings. A row decoder (block 904) is coupled to a plurality of word lines 906 arranged along rows in the stackedmemory structure 902. Column decoders inblock 908 are coupled to a set of page buffers 910, in this example viadata bus 912. Theglobal bit lines 914 are coupled to local bit lines (not shown) arranged along columns in the stackedmemory structure 902. Addresses are supplied onbus 916 to column decoders (block 908) and row and level decoder (block 904). Data is supplied via the data-inline 918 from other circuitry 920 (including for example input/output ports) on the integrated circuit, such as a general purpose processor or special purpose application circuitry, or a combination of modules providing system-on-a-chip functionality supported by the stackedmemory structure 902. Data is supplied via theline 918 to input/output ports or to other data destinations internal or external to theintegrated circuit memory 900. - A
controller 922, implemented for example as a state machine, provides signals to control the application of bias arrangement supply voltages generated or provided through the voltage supply or supplies inblock 924 to carry out the various operations described herein. The controller can use programming techniques like those shown inFIGS. 6 , and 9, where the controller includes logic for first and second program sequences to the stackedmemory structure 902 to suppress disturb. Also, the controller can include logic for first, second and third program sequences to prevent over-programming like those shown inFIG. 13 . The controller can be implemented using special-purpose logic circuitry as known in the art. In alternative embodiments, the controller comprises a general purpose processor, which may be implemented on the same integrated circuit, which executes a computer program to control the operations of the device. In yet other embodiments, a combination of special purpose logic circuitry and a general purpose processor may be utilized for implementation of the controller. - A memory device is described therefore, including a stacked memory structure with layers of memory cells. The device includes circuitry coupled to the stacked memory structure, responsive to a program instruction to program data in target cells in a stack of cells at a particular multibit address. As described above, the circuitry is configured to use an assignment of cells in the stack of cells to a plurality of sets of cells, and to iteratively execute a group program operation selecting each of the plurality of sets in sequence. In each iteration, the group program operation includes applying program voltages to target cells in a selected one of the plurality of sets, inhibit voltages to remaining cells in said selected one of the plurality of sets, and inhibit voltages to all of the cells in others of the plurality of sets. In one example, the plurality of sets includes a first set and a second set, where assignment of cells to the first and second sets insures that no cells in the first set are disposed in layers separated by only one layer from layers including cells in the second set.
- In another example, the assignment groups cells so no cell having inhibit voltages applied is in a layer of the stack between two layers in which cells are having programming voltages applied.
- In another example, the assignment groups cells so no cell having programming voltages applied is in a layer of the stack adjacent any layer including a cell that is also having programming voltages applied.
- In another example, the assignment groups cells so no cell having inhibit voltages applied is in a layer of the stack between two layers in which cells are having programming applied.
- The device is configured in one example, so that the group program operation includes logic to skip a selected set if there are no target cells in the set.
- While the present invention is disclosed by reference to the preferred embodiments and examples detailed above, it is understood that these examples are intended in an illustrative rather than in a limiting sense. It is contemplated that modifications and combinations will readily occur to those skilled in the art, which modifications and combinations will be within the spirit of the invention and the scope of the following claims.
Claims (24)
1. A method of operating a memory including a stacked memory structure, wherein multibit addresses map to corresponding memory cells disposed in a plurality of layers, comprising:
responsive to a program instruction to store data in a set of memory cells corresponding to a particular multibit address, executing a program operation limited to memory cells in a first set of layers that include memory cells in said set of memory cells, said first set including subsets of one or more of the layers in said first set of layers, where the subsets of the first set are separated from other subsets of the first set by at least two layers that are not members of the first set, and
then completing programming if necessary of remaining memory cells in said set of memory cells.
2. The method of claim 1 , wherein the program operation causes one or more memory cells in the first set of layers to change to a programmed state and to inhibit changes in state in memory cells to memory cells in a second set of layers that include memory cells in said set of memory cells;
the program operation including applying a bias arrangement that includes:
(i) a program voltage applied to the one or more of the memory cells in the first set of layers, and
(ii) an inhibit voltage applied to all memory cells in the second set of layers; and
if data to be stored requires a change of state of memory cells in the second set of layers, then executing another program operation, to cause one or more memory cells in the second set of layers to change to a programmed state.
3. The method of claim 2 , wherein said another program operation includes applying a second bias arrangement that includes:
(i) a program voltage applied to the one or more of the memory cells in the second set, and
(ii) an inhibit voltage applied to all memory cells in the first set of the plurality of layers.
4. The method of claim 2 , wherein said first mentioned program operation is configured so that the first set includes a first subset including a first pair of layers and a third subset including a third pair of layers and the second set includes a first subset including a second pair of layers, and wherein the first pair of layers and the third pair of layers are separated by the second pair of layers.
5. The method of claim 4 , wherein at least one memory cell in the first pair of layers and at least one memory cell in the third pair of layers are programmed during the first mentioned program operation.
6. The method of claim 4 , wherein the second set includes a second subset including a fourth pair of layers, the second pair of layers and the fourth pair of layers being separated by the third pair of layers, and in which at least one memory cell in the second pair of layers and at least one memory cell in the fourth pair of layers are programmed during the second mentioned another program operation.
7. The method of claim 1 , wherein the program bias arrangement includes the inhibit voltage applied to memory cells in the corresponding memory cells in the first set of the plurality of layers for which no change in state is needed to store the data.
8. The method of claim 1 , further including identifying memory cells in the corresponding memory cells for which a change in state is needed to store the data, and if possible assigning memory cells to the first set of the plurality of layers so that it includes all of the identified memory cells.
9. The method of claim 1 , wherein the plurality of layers includes said first set of layers, a second set of layers and a third set of layers, the layers in the second set of layers being separated by one layer in the third set of layers and one layer in the first set, and including:
after applying said first mentioned program operation, applying a second program operation for cells in the second set, and then applying a third program operation for cells in the third set.
10. A memory comprising:
a stacked memory structure with layers of memory cells, wherein multibit addresses map to corresponding memory cells disposed in a plurality of layers;
circuitry coupled to the stacked memory structure, the logic and control circuitry configured to:
respond to a program instruction to store data in a set of memory cells corresponding to a particular multibit address, by executing a program operation limited to memory cells in a first set of layers that include memory cells in said set of memory cells, said first set including subsets of one or more of the layers in said first set of layers, where the subsets of the first set are separated from other subsets of the first set by at least two layers that are not members of the first set, and then completing programming if necessary of remaining memory cells in said set of memory cells
11. The memory of claim 10 , wherein the program operation causes one or more memory cells in the first set of layers to change to a programmed state and to inhibit changes in state in memory cells in a second set of layers in the plurality of layers;
the program operation including applying a bias arrangement that includes:
(i) a program voltage applied to the one or more of the memory cells in the first set of layers, and
(ii) an inhibit voltage applied to all memory cells in the second set of layers; and
the logic and control circuitry responsive to the program instruction to program data at the particular multibit address being configured to, if data to be stored requires a change of state of memory cells in the second set of layers, then executing another program operation, to cause one or more memory cells in the second set of layers to change to a programmed state.
12. The memory of claim 11 , wherein said another program operation includes applying a second bias arrangement that includes:
(i) a program voltage applied to the one or more of the memory cells in the second set, and
(ii) an inhibit voltage applied to all memory cells in the first set of the plurality of layers.
13. The memory of claim 12 , wherein said first mentioned program operation is configured so that the first set includes a first subset including a first pair of layers and a third subset including a third pair of layers and the second set includes a first subset including a second pair of layers, and wherein the first pair of layers and the third pair of layers are separated by the second pair of layers.
14. The memory of claim 13 , wherein at least one memory cell in the first pair of layers and at least one memory cell in the third pair of layers are programmed during the first mentioned program operation.
15. The memory of claim 13 , wherein the second set includes a second subset including a fourth pair of layers, the second pair of layers and the fourth pair of layers being separated by the third pair of layers, and in which at least one memory cell in the second pair of layers and at least one memory cell in the fourth pair of layers are programmed during said another program operation.
16. The memory of claim 11 , wherein the program bias arrangement includes the inhibit voltage applied to memory cells in the set of corresponding memory cells in the first set of the plurality of layers for which no change in state is needed to store the data.
17. The memory of claim 11 , the logic and control circuitry responsive to the program instruction to program data at the particular multibit address being configured to identify memory cells in the corresponding memory cells for which a change in state is needed to store the data, and if possible assign memory cells to the first set of the plurality of layers so that it includes all of the identified memory cells.
18. The memory of claim 11 , wherein the plurality of layers includes said first set of layers, a second set of layers and a third set of layers, the layers in the second set of layers being separated by one layer in the third set of layers and one layer in the first set, and including:
the logic and control circuitry responsive to the program instruction to program data at the particular multibit address being configured to, after applying said first mentioned program operation, apply a second program operation for cells in the second set, and then apply a third program operation for cells in the third set.
19. A memory comprising:
a stacked memory structure with layers of memory cells;
circuitry coupled to the stacked memory structure, the circuitry responsive to a program instruction to program data in target cells in a stack of cells at a particular multibit address, the circuitry configured to use an assignment of cells in the stack of cells to a plurality of sets of cells, and to iteratively execute a set program operation selecting each of the plurality of sets in sequence, where each iteration includes applying program voltages to target cells in a selected one of the plurality of sets, inhibit voltages to remaining cells in said selected one of the plurality of sets, and inhibit voltages to all of the cells in others of the plurality of sets.
20. The memory of claim 19 , wherein the sets in the plurality of sets include subsets of cells in the stack, including a first subset in a given set and a second subset in the given set, where assignment of cells to the first and second subsets insures that no cells in the first subset are disposed in layers separated by only one layer from layers including a cell in the second subset.
21. The memory of claim 19 , wherein assignment groups cells in sets so no cell having inhibit voltages applied is in a layer of the stack between two layers in which cells are having programming applied.
22. The memory of claim 19 , wherein assignment groups cells in sets so no cell having programming voltages applied is in a layer of the stack adjacent any layer including a cell that is having programming voltages applied.
23. The memory of claim 22 , wherein assignment groups cells in sets so no cell having inhibit voltages applied is in a layer of the stack between two layers in which cells are having programming applied.
24. The memory of claim 19 , wherein the group program operation includes logic to skip a selected set if there are no target cells in the set.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/827,475 US20140198576A1 (en) | 2013-01-16 | 2013-03-14 | Programming technique for reducing program disturb in stacked memory structures |
CN201410017165.XA CN103928054B (en) | 2013-01-15 | 2014-01-15 | Memory including stacked memory structure and operation method thereof |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361752985P | 2013-01-16 | 2013-01-16 | |
US13/827,475 US20140198576A1 (en) | 2013-01-16 | 2013-03-14 | Programming technique for reducing program disturb in stacked memory structures |
Publications (1)
Publication Number | Publication Date |
---|---|
US20140198576A1 true US20140198576A1 (en) | 2014-07-17 |
Family
ID=51146239
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/827,475 Abandoned US20140198576A1 (en) | 2013-01-15 | 2013-03-14 | Programming technique for reducing program disturb in stacked memory structures |
US14/153,934 Active US9685233B2 (en) | 2013-01-16 | 2014-01-13 | Programming multibit memory cells |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/153,934 Active US9685233B2 (en) | 2013-01-16 | 2014-01-13 | Programming multibit memory cells |
Country Status (3)
Country | Link |
---|---|
US (2) | US20140198576A1 (en) |
CN (1) | CN103928042B (en) |
TW (1) | TWI537979B (en) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8976600B2 (en) | 2013-03-11 | 2015-03-10 | Macronix International Co., Ltd. | Word line driver circuit for selecting and deselecting word lines |
US9117526B2 (en) | 2013-07-08 | 2015-08-25 | Macronix International Co., Ltd. | Substrate connection of three dimensional NAND for improving erase performance |
CN105304634A (en) * | 2014-07-18 | 2016-02-03 | 旺宏电子股份有限公司 | Three-dimensional storage device |
US9343322B2 (en) | 2014-01-17 | 2016-05-17 | Macronix International Co., Ltd. | Three dimensional stacking memory film structure |
US9377962B2 (en) * | 2012-02-23 | 2016-06-28 | Hgst Technologies Santa Ana, Inc. | Determining bias information for offsetting operating variations in memory cells |
US9490017B2 (en) * | 2015-03-10 | 2016-11-08 | Macronix International Co., Ltd. | Forced-bias method in sub-block erase |
US9559113B2 (en) | 2014-05-01 | 2017-01-31 | Macronix International Co., Ltd. | SSL/GSL gate oxide in 3D vertical channel NAND |
TWI570729B (en) * | 2015-04-10 | 2017-02-11 | 旺宏電子股份有限公司 | Memory device and reading method thereof |
US9589642B2 (en) | 2014-08-07 | 2017-03-07 | Macronix International Co., Ltd. | Level shifter and decoder for memory |
US9721964B2 (en) | 2014-06-05 | 2017-08-01 | Macronix International Co., Ltd. | Low dielectric constant insulating material in 3D memory |
US10381094B2 (en) | 2016-10-11 | 2019-08-13 | Macronix International Co., Ltd. | 3D memory with staged-level multibit programming |
US11017838B2 (en) | 2016-08-04 | 2021-05-25 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices |
US11121134B2 (en) * | 2019-09-27 | 2021-09-14 | Samsung Electronics Co., Ltd. | Semiconductor device and method of fabricating the same |
US11342023B2 (en) * | 2020-05-19 | 2022-05-24 | Yangzte Memory Technologies., Ltd. | 3D NAND flash and operation method thereof |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150071020A1 (en) * | 2013-09-06 | 2015-03-12 | Sony Corporation | Memory device comprising tiles with shared read and write circuits |
US9019768B1 (en) * | 2013-10-24 | 2015-04-28 | Macronix International Co., Ltd. | Split page 3D memory array |
US9397110B2 (en) | 2014-05-21 | 2016-07-19 | Macronix International Co., Ltd. | 3D independent double gate flash memory |
US9520485B2 (en) | 2014-05-21 | 2016-12-13 | Macronix International Co., Ltd. | 3D independent double gate flash memory on bounded conductor layer |
US9147468B1 (en) | 2014-05-21 | 2015-09-29 | Macronix International Co., Ltd. | Multiple-bit-per-cell, independent double gate, vertical channel memory |
US9324437B2 (en) * | 2014-07-30 | 2016-04-26 | Macronix International Co., Ltd. | Systems and methods for trimming control transistors for 3D NAND flash |
CN105427883B (en) * | 2014-09-09 | 2018-09-14 | 旺宏电子股份有限公司 | Pre-head method and wiring method for three-dimensional NAND gate cache |
US9627072B2 (en) | 2014-11-25 | 2017-04-18 | Macronix International Co., Ltd. | Variant operation sequences for multibit memory |
KR102333743B1 (en) * | 2015-01-21 | 2021-12-01 | 삼성전자주식회사 | Nonvolatile memory device and method of operating nonvolatile memory device |
US9324428B1 (en) * | 2015-01-25 | 2016-04-26 | Macronix International Co., Ltd. | Memory device and operation method thereof |
JP2016170837A (en) | 2015-03-12 | 2016-09-23 | 株式会社東芝 | Semiconductor storage |
US9520199B2 (en) | 2015-04-22 | 2016-12-13 | Macronix International Co., Ltd. | Memory device and reading method thereof |
US9734912B2 (en) | 2015-11-25 | 2017-08-15 | Macronix International Co., Ltd. | Reprogramming single bit memory cells without intervening erasure |
US9811284B2 (en) * | 2015-12-20 | 2017-11-07 | Apple Inc. | One-pass programming in a multi-level nonvolatile memory device with improved write amplification |
WO2017218170A1 (en) * | 2016-06-17 | 2017-12-21 | Intel Corporation | Method and apparatus for programming wordlines of nand flash memory using alternating encoding schemes |
TWI584416B (en) * | 2016-10-06 | 2017-05-21 | 旺宏電子股份有限公司 | Memory and applications thereof |
US10381085B2 (en) * | 2016-10-27 | 2019-08-13 | Micron Technogy, Inc. | Erasing memory cells |
KR20180060370A (en) * | 2016-11-29 | 2018-06-07 | 에스케이하이닉스 주식회사 | Memory system and operation method for the same |
US9959932B1 (en) * | 2017-02-21 | 2018-05-01 | Sandisk Technologies Llc | Grouping memory cells into sub-blocks for program speed uniformity |
US10043819B1 (en) | 2017-05-17 | 2018-08-07 | Macronix International Co., Ltd. | Method for manufacturing 3D NAND memory using gate replacement, and resulting structures |
US10032511B1 (en) * | 2017-05-18 | 2018-07-24 | Macronix International Co., Ltd. | Memory with dynamic permissible bit write logic and method |
KR102498250B1 (en) * | 2017-09-11 | 2023-02-10 | 에스케이하이닉스 주식회사 | Semiconductor device and manufacturing method thereof |
CN109637575B (en) * | 2017-10-09 | 2022-03-25 | 中国科学院微电子研究所 | Double-data reading verification method and equipment for flash memory storage unit |
TWI650769B (en) * | 2018-05-22 | 2019-02-11 | 華邦電子股份有限公司 | Memory device and programming method for memory cell array |
US10643720B2 (en) | 2018-05-23 | 2020-05-05 | Sandisk Technologies Llc | Bit line voltage control for damping memory programming |
CN110570891B (en) * | 2018-06-06 | 2021-07-27 | 华邦电子股份有限公司 | Memory device and programming method of memory cell array |
US10418109B1 (en) | 2018-07-26 | 2019-09-17 | Winbond Electronics Corp. | Memory device and programming method of memory cell array |
US10614898B1 (en) * | 2018-09-19 | 2020-04-07 | Sandisk Technologies Llc | Adaptive control of memory cell programming voltage |
US10741252B2 (en) | 2018-12-18 | 2020-08-11 | Micron Technology, Inc. | Apparatus and methods for programming memory cells using multi-step programming pulses |
US10811109B2 (en) * | 2018-12-27 | 2020-10-20 | Sandisk Technologies Llc | Multi-pass programming process for memory device which omits verify test in first program pass |
CN109903799B (en) * | 2019-01-29 | 2021-08-03 | 华中科技大学 | Three-dimensional flash memory array unit operation method capable of changing programming progression |
US10811111B1 (en) | 2019-03-26 | 2020-10-20 | Yangtze Memory Technologies Co., Ltd. | Non-volatile memory device and method for programming in non-volatile memory device by applying multiple bitline bias voltages |
KR20210110376A (en) | 2019-03-26 | 2021-09-07 | 양쯔 메모리 테크놀로지스 씨오., 엘티디. | How to Program in a Non-Volatile Memory Device by Applying Multiple Bitline Bias Voltages |
US20230143181A1 (en) * | 2019-08-27 | 2023-05-11 | Micron Technology, Inc. | Write buffer control in managed memory system |
WO2021081737A1 (en) | 2019-10-29 | 2021-05-06 | Yangtze Memory Technologies Co., Ltd. | Methods of programming memory device |
US10943662B1 (en) * | 2019-12-10 | 2021-03-09 | Western Digital Technologies, Inc. | Different word line programming orders in non-volatile memory for error recovery |
CN112270947B (en) * | 2020-10-29 | 2023-08-04 | 长江存储科技有限责任公司 | Programming method and device for memory |
US11854625B2 (en) * | 2021-03-04 | 2023-12-26 | Taiwan Semiconductor Manufacturing Company, Ltd. | Device and method for operating the same |
CN114913906A (en) * | 2021-06-17 | 2022-08-16 | 长江存储科技有限责任公司 | Memory system and programming method thereof |
US11550657B1 (en) | 2021-09-01 | 2023-01-10 | Apple Inc. | Efficient programming schemes in a nonvolatile memory |
US20230245706A1 (en) * | 2022-01-31 | 2023-08-03 | Sandisk Technologies Llc | Non-volatile memory with zone based program speed adjustment |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040153621A1 (en) * | 2003-01-31 | 2004-08-05 | Yan Polansky | Memory array programming circuit and a method for using the circuit |
US7136304B2 (en) * | 2002-10-29 | 2006-11-14 | Saifun Semiconductor Ltd | Method, system and circuit for programming a non-volatile memory array |
US20080123436A1 (en) * | 2006-11-28 | 2008-05-29 | Samsung Electronics Co., Ltd. | Non-volatile memory device and erasing method thereof |
US7411830B2 (en) * | 2005-01-13 | 2008-08-12 | Kabushiki Kaisha Toshiba | Nonvolatile memory cell having current compensated for temperature dependency and data read method thereof |
US20120163080A1 (en) * | 2007-09-19 | 2012-06-28 | Anobit Technologies Ltd | Reducing Distortion Using Joint Storage |
US20120182802A1 (en) * | 2011-01-19 | 2012-07-19 | Macronix International Co., Ltd. | Memory Architecture of 3D Array With Improved Uniformity of Bit Line Capacitances |
US8278170B2 (en) * | 2010-07-02 | 2012-10-02 | Samsung Electronics Co., Ltd. | Methods of forming nonvolatile memory devices having vertically integrated nonvolatile memory cell sub-strings therein |
US8588003B1 (en) * | 2011-08-01 | 2013-11-19 | Densbits Technologies Ltd. | System, method and computer program product for programming and for recovering from a power failure |
US8630115B2 (en) * | 2005-04-11 | 2014-01-14 | Micron Technology, Inc. | Non-volatile electronic memory device with NAND structure being monolithically integrated on semiconductor |
US20140133209A1 (en) * | 2012-11-09 | 2014-05-15 | International Business Machines Corporation | Memory architectures having wiring structures that enable different access patterns in multiple dimensions |
US8792263B2 (en) * | 2011-12-22 | 2014-07-29 | Micron Technology, Inc. | Apparatuses and methods including memory with top and bottom data lines |
US8830757B2 (en) * | 2011-02-10 | 2014-09-09 | Kabushiki Kaisha Toshiba | Method for operating nonvolatile semiconductor memory device |
Family Cites Families (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6859397B2 (en) * | 2003-03-05 | 2005-02-22 | Sandisk Corporation | Source side self boosting technique for non-volatile memory |
US7177199B2 (en) * | 2003-10-20 | 2007-02-13 | Sandisk Corporation | Behavior based programming of non-volatile memory |
US7020017B2 (en) * | 2004-04-06 | 2006-03-28 | Sandisk Corporation | Variable programming of non-volatile memory |
US7020026B2 (en) * | 2004-05-05 | 2006-03-28 | Sandisk Corporation | Bitline governed approach for program control of non-volatile memory |
US7023733B2 (en) * | 2004-05-05 | 2006-04-04 | Sandisk Corporation | Boosting to control programming of non-volatile memory |
US7307884B2 (en) * | 2004-06-15 | 2007-12-11 | Sandisk Corporation | Concurrent programming of non-volatile memory |
US7457156B2 (en) | 2004-09-02 | 2008-11-25 | Micron Technology, Inc. | NAND flash depletion cell structure |
US7173859B2 (en) * | 2004-11-16 | 2007-02-06 | Sandisk Corporation | Faster programming of higher level states in multi-level cell flash memory |
US7158421B2 (en) * | 2005-04-01 | 2007-01-02 | Sandisk Corporation | Use of data latches in multi-phase programming of non-volatile memories |
US7430138B2 (en) * | 2005-03-31 | 2008-09-30 | Sandisk Corporation | Erasing non-volatile memory utilizing changing word line conditions to compensate for slower erasing memory cells |
US7457166B2 (en) * | 2005-03-31 | 2008-11-25 | Sandisk Corporation | Erase voltage manipulation in non-volatile memory for controlled shifts in threshold voltage |
US7522457B2 (en) * | 2005-03-31 | 2009-04-21 | Sandisk Corporation | Systems for erase voltage manipulation in non-volatile memory for controlled shifts in threshold voltage |
US7295478B2 (en) * | 2005-05-12 | 2007-11-13 | Sandisk Corporation | Selective application of program inhibit schemes in non-volatile memory |
US7307887B2 (en) * | 2005-12-29 | 2007-12-11 | Sandisk Corporation | Continued verification in non-volatile memory write operations |
US7440322B2 (en) * | 2006-04-20 | 2008-10-21 | Sandisk Corporation | Method and system for flash memory devices |
JP2008084471A (en) * | 2006-09-28 | 2008-04-10 | Toshiba Corp | Semiconductor memory device |
US7450426B2 (en) * | 2006-10-10 | 2008-11-11 | Sandisk Corporation | Systems utilizing variable program voltage increment values in non-volatile memory program operations |
US7474561B2 (en) * | 2006-10-10 | 2009-01-06 | Sandisk Corporation | Variable program voltage increment values in non-volatile memory program operations |
US7535766B2 (en) * | 2006-10-13 | 2009-05-19 | Sandisk Corporation | Systems for partitioned soft programming in non-volatile memory |
US7596031B2 (en) * | 2006-10-30 | 2009-09-29 | Sandisk Corporation | Faster programming of highest multi-level state for non-volatile memory |
US7697338B2 (en) * | 2006-11-16 | 2010-04-13 | Sandisk Corporation | Systems for controlled boosting in non-volatile memory soft programming |
US7535763B2 (en) * | 2006-11-16 | 2009-05-19 | Sandisk Corporation | Controlled boosting in non-volatile memory soft programming |
US7463531B2 (en) * | 2006-12-29 | 2008-12-09 | Sandisk Corporation | Systems for programming non-volatile memory with reduced program disturb by using different pre-charge enable voltages |
US7468918B2 (en) * | 2006-12-29 | 2008-12-23 | Sandisk Corporation | Systems for programming non-volatile memory with reduced program disturb by removing pre-charge dependency on word line data |
US7433241B2 (en) * | 2006-12-29 | 2008-10-07 | Sandisk Corporation | Programming non-volatile memory with reduced program disturb by removing pre-charge dependency on word line data |
US7450430B2 (en) * | 2006-12-29 | 2008-11-11 | Sandisk Corporation | Programming non-volatile memory with reduced program disturb by using different pre-charge enable voltages |
US7773429B2 (en) * | 2007-02-22 | 2010-08-10 | Hynix Semiconductor Inc. | Non-volatile memory device and driving method thereof |
KR100823174B1 (en) * | 2007-02-27 | 2008-04-18 | 삼성전자주식회사 | Flash memory device with multi-page program scheme and multi-page program method thereof |
US7508711B2 (en) * | 2007-04-30 | 2009-03-24 | Intel Corporation | Arrangements for operating a memory circuit |
US7548462B2 (en) * | 2007-06-29 | 2009-06-16 | Macronix International Co., Ltd. | Double programming methods of a multi-level-cell nonvolatile memory |
US7489543B1 (en) * | 2007-07-25 | 2009-02-10 | Micron Technology, Inc. | Programming multilevel cell memory arrays |
US7751245B2 (en) * | 2007-10-10 | 2010-07-06 | Micron Technology, Inc. | Programming sequence in NAND memory |
US8111548B2 (en) * | 2008-07-21 | 2012-02-07 | Sandisk Technologies Inc. | Programming non-volatile storage using binary and multi-state programming processes |
KR101532754B1 (en) * | 2008-09-22 | 2015-07-02 | 삼성전자주식회사 | Programming method of nonvolatile memory device |
KR20100043935A (en) * | 2008-10-21 | 2010-04-29 | 삼성전자주식회사 | Non-volatile memory device and program method thereof |
US8064252B2 (en) * | 2008-11-21 | 2011-11-22 | Micron Technology, Inc. | Multi-pass programming in a memory device |
US8026544B2 (en) * | 2009-03-30 | 2011-09-27 | Sandisk Technologies Inc. | Fabricating and operating a memory array having a multi-level cell region and a single-level cell region |
KR101572830B1 (en) * | 2009-06-22 | 2015-11-30 | 삼성전자주식회사 | Method of programming a nonvolatile memory device nonvolatile memory device and nonvolatile memory system |
US8619474B2 (en) * | 2009-09-10 | 2013-12-31 | Micron Technology, Inc. | Data line management in a memory device |
KR101619249B1 (en) * | 2009-11-26 | 2016-05-11 | 삼성전자주식회사 | Program method |
KR101616099B1 (en) * | 2009-12-03 | 2016-04-27 | 삼성전자주식회사 | Flash memory device and program method thereof |
US8139419B2 (en) * | 2009-12-08 | 2012-03-20 | Micron Technology, Inc. | Programming methods and memories |
US8248850B2 (en) * | 2010-01-28 | 2012-08-21 | Sandisk Technologies Inc. | Data recovery for non-volatile memory based on count of data state-specific fails |
KR20110131648A (en) * | 2010-05-31 | 2011-12-07 | 삼성전자주식회사 | Nonvolatile memory device, memory system and memory card having its, and programming method thereof |
KR101734204B1 (en) * | 2010-06-01 | 2017-05-12 | 삼성전자주식회사 | Flash memory device and system including program sequencer and program method thereof |
US8274838B2 (en) * | 2010-07-19 | 2012-09-25 | Sandisk Technologies Inc. | Programming non-volatile memory with bit line voltage step up |
JP2012084207A (en) * | 2010-10-13 | 2012-04-26 | Toshiba Corp | Nonvolatile semiconductor memory device |
US8503213B2 (en) | 2011-01-19 | 2013-08-06 | Macronix International Co., Ltd. | Memory architecture of 3D array with alternating memory string orientation and string select structures |
TWI490862B (en) * | 2011-01-19 | 2015-07-01 | Macronix Int Co Ltd | Memory architecture of 3d array with improved uniformity of bit line capacitances |
KR20120107336A (en) * | 2011-03-21 | 2012-10-02 | 삼성전자주식회사 | Memory system and addressing method thereof |
US8630118B2 (en) * | 2011-11-09 | 2014-01-14 | Sandisk Technologies Inc. | Defective word line detection |
US8605507B2 (en) * | 2012-01-12 | 2013-12-10 | Macronix International Co., Ltd. | Flash programming technology for improved margin and inhibiting disturbance |
US8638608B2 (en) * | 2012-03-26 | 2014-01-28 | Sandisk Technologies Inc. | Selected word line dependent select gate voltage during program |
KR101927212B1 (en) * | 2012-05-09 | 2019-03-07 | 삼성전자주식회사 | Method of programming data in nonvolatile memory device |
US9214240B2 (en) * | 2013-03-04 | 2015-12-15 | Sandisk Technologies Inc. | Dynamic erase depth for improved endurance of non-volatile memory |
KR102112596B1 (en) * | 2013-03-15 | 2020-05-19 | 삼성전자주식회사 | Non-volatile memory device and programming method of the same |
US8982626B2 (en) * | 2013-06-05 | 2015-03-17 | Sandisk Technologies Inc. | Program and read operations for 3D non-volatile memory based on memory hole diameter |
US8982637B1 (en) * | 2013-09-12 | 2015-03-17 | Sandisk Technologies Inc. | Vread bias allocation on word lines for read disturb reduction in 3D non-volatile memory |
KR102211865B1 (en) * | 2014-05-20 | 2021-02-04 | 삼성전자주식회사 | Nonvolatile memory system and operating method of memory controller |
-
2013
- 2013-03-14 US US13/827,475 patent/US20140198576A1/en not_active Abandoned
-
2014
- 2014-01-13 US US14/153,934 patent/US9685233B2/en active Active
- 2014-01-15 CN CN201410018267.3A patent/CN103928042B/en active Active
- 2014-01-16 TW TW103101683A patent/TWI537979B/en active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7136304B2 (en) * | 2002-10-29 | 2006-11-14 | Saifun Semiconductor Ltd | Method, system and circuit for programming a non-volatile memory array |
US20040153621A1 (en) * | 2003-01-31 | 2004-08-05 | Yan Polansky | Memory array programming circuit and a method for using the circuit |
US7411830B2 (en) * | 2005-01-13 | 2008-08-12 | Kabushiki Kaisha Toshiba | Nonvolatile memory cell having current compensated for temperature dependency and data read method thereof |
US8630115B2 (en) * | 2005-04-11 | 2014-01-14 | Micron Technology, Inc. | Non-volatile electronic memory device with NAND structure being monolithically integrated on semiconductor |
US20080123436A1 (en) * | 2006-11-28 | 2008-05-29 | Samsung Electronics Co., Ltd. | Non-volatile memory device and erasing method thereof |
US20120163080A1 (en) * | 2007-09-19 | 2012-06-28 | Anobit Technologies Ltd | Reducing Distortion Using Joint Storage |
US8278170B2 (en) * | 2010-07-02 | 2012-10-02 | Samsung Electronics Co., Ltd. | Methods of forming nonvolatile memory devices having vertically integrated nonvolatile memory cell sub-strings therein |
US20120182802A1 (en) * | 2011-01-19 | 2012-07-19 | Macronix International Co., Ltd. | Memory Architecture of 3D Array With Improved Uniformity of Bit Line Capacitances |
US8830757B2 (en) * | 2011-02-10 | 2014-09-09 | Kabushiki Kaisha Toshiba | Method for operating nonvolatile semiconductor memory device |
US8588003B1 (en) * | 2011-08-01 | 2013-11-19 | Densbits Technologies Ltd. | System, method and computer program product for programming and for recovering from a power failure |
US8792263B2 (en) * | 2011-12-22 | 2014-07-29 | Micron Technology, Inc. | Apparatuses and methods including memory with top and bottom data lines |
US20140133209A1 (en) * | 2012-11-09 | 2014-05-15 | International Business Machines Corporation | Memory architectures having wiring structures that enable different access patterns in multiple dimensions |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9377962B2 (en) * | 2012-02-23 | 2016-06-28 | Hgst Technologies Santa Ana, Inc. | Determining bias information for offsetting operating variations in memory cells |
US8976600B2 (en) | 2013-03-11 | 2015-03-10 | Macronix International Co., Ltd. | Word line driver circuit for selecting and deselecting word lines |
US9117526B2 (en) | 2013-07-08 | 2015-08-25 | Macronix International Co., Ltd. | Substrate connection of three dimensional NAND for improving erase performance |
US9343322B2 (en) | 2014-01-17 | 2016-05-17 | Macronix International Co., Ltd. | Three dimensional stacking memory film structure |
US9559113B2 (en) | 2014-05-01 | 2017-01-31 | Macronix International Co., Ltd. | SSL/GSL gate oxide in 3D vertical channel NAND |
US9721964B2 (en) | 2014-06-05 | 2017-08-01 | Macronix International Co., Ltd. | Low dielectric constant insulating material in 3D memory |
CN105304634A (en) * | 2014-07-18 | 2016-02-03 | 旺宏电子股份有限公司 | Three-dimensional storage device |
US9589642B2 (en) | 2014-08-07 | 2017-03-07 | Macronix International Co., Ltd. | Level shifter and decoder for memory |
US9490017B2 (en) * | 2015-03-10 | 2016-11-08 | Macronix International Co., Ltd. | Forced-bias method in sub-block erase |
TWI570729B (en) * | 2015-04-10 | 2017-02-11 | 旺宏電子股份有限公司 | Memory device and reading method thereof |
US11017838B2 (en) | 2016-08-04 | 2021-05-25 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices |
US11462260B2 (en) | 2016-08-04 | 2022-10-04 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices |
US11942140B2 (en) | 2016-08-04 | 2024-03-26 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices |
US10381094B2 (en) | 2016-10-11 | 2019-08-13 | Macronix International Co., Ltd. | 3D memory with staged-level multibit programming |
US11121134B2 (en) * | 2019-09-27 | 2021-09-14 | Samsung Electronics Co., Ltd. | Semiconductor device and method of fabricating the same |
US20210408004A1 (en) * | 2019-09-27 | 2021-12-30 | Samsung Electronics Co., Ltd. | Semiconductor device and method of fabricating the same |
US11594538B2 (en) * | 2019-09-27 | 2023-02-28 | Samsung Electronics Co., Ltd. | Semiconductor device and method of fabricating the same |
US11342023B2 (en) * | 2020-05-19 | 2022-05-24 | Yangzte Memory Technologies., Ltd. | 3D NAND flash and operation method thereof |
US11727990B2 (en) | 2020-05-19 | 2023-08-15 | Yangtze Memory Technologies Co., Ltd. | 3D NAND flash and operation method thereof |
Also Published As
Publication number | Publication date |
---|---|
TW201440071A (en) | 2014-10-16 |
US9685233B2 (en) | 2017-06-20 |
US20140198570A1 (en) | 2014-07-17 |
CN103928042B (en) | 2017-06-13 |
TWI537979B (en) | 2016-06-11 |
CN103928042A (en) | 2014-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140198576A1 (en) | Programming technique for reducing program disturb in stacked memory structures | |
EP2985763B1 (en) | Sub-block erase | |
JP6303224B2 (en) | P-channel 3D memory array | |
CN102376357B (en) | There is the nonvolatile semiconductor memory member of three-dimensional memory cell array | |
US9490017B2 (en) | Forced-bias method in sub-block erase | |
US9530503B2 (en) | And-type SGVC architecture for 3D NAND flash | |
KR101844074B1 (en) | Architecture for a 3d memory array | |
US8724390B2 (en) | Architecture for a 3D memory array | |
KR101682660B1 (en) | Nonvolatile memory device, reading method thereof and memory system including the same | |
US9607702B2 (en) | Sub-block page erase in 3D p-channel flash memory | |
US9117526B2 (en) | Substrate connection of three dimensional NAND for improving erase performance | |
KR102347181B1 (en) | Memory device and memory system including the same | |
CN114664354A (en) | Memory device performing erase operation to maintain data reliability | |
KR101739059B1 (en) | Nonvolatile memory device | |
US10163514B2 (en) | Methods of operating a memory during a programming operation | |
CN103928054B (en) | Memory including stacked memory structure and operation method thereof | |
US20150078077A1 (en) | Nonvolatile semiconductor memory device | |
US9466378B2 (en) | Semiconductor memory device | |
US11114162B2 (en) | Non-volatile semiconductor memory device including a first memory bunch and a second memory bunch | |
US10418108B1 (en) | Program scheme in 3D NAND flash memory | |
US11961564B2 (en) | Nonvolatile memory device with intermediate switching transistors and programming method | |
US20220036954A1 (en) | Nonvolatile memory device with intermediate switching transistors and programming method | |
TWI508081B (en) | Programming technique for reducing program disturb in stacked memory structures | |
CN106205705A (en) | A kind of operational approach of NAND gate array | |
TWI590252B (en) | Non-volatile memory device metod for fabricatin the same and applications thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MACRONIX INTERNATIONAL CO., LTD., TAIWAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HUNG, SHUO-NAN;LUE, HANG-TING;CHEN, TI-WEN;AND OTHERS;SIGNING DATES FROM 20130310 TO 20130314;REEL/FRAME:030003/0333 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |