A power supply and monitoring apparatus such as in a non-volatile memory system. A power supply circuit provides power to a large number of sense modules, each of which is associated with a bit line and a string of non-volatile storage elements. During a sensing operation, such as a read or verify operation, a discharge period is set in which a sense node of each sense module discharges into the associated bit line and string of non-volatile storage elements, when the string of non-volatile storage elements, is conductive. This discharge sinks current from the power supply, causing a perturbation. By sampling the power supply, a steady state condition can be detected from a rate of change. The steady state condition signals that the discharge period can be concluded and data can be latched from the sense node. The discharge period automatically adapts to different memory devices and environmental conditions.
|
1. A power supply and monitoring apparatus, comprising:
a power supply circuit connected to a plurality of sense modules for a memory array, the power supply circuit provides an output which powers the plurality of sense modules;
a sampling circuit, the sampling circuit samples the output of the power supply circuit during concurrent sensing operations of the plurality of sense modules, and determines a value which represents a rate of change of the output; and
a compare circuit, the compare circuit makes a comparison between the value and a threshold, the comparison is used to initiate concurrent latch operations in each of the plurality of sense modules when a magnitude of the value is less than the threshold.
16. A method for sensing in a storage system, comprising:
connecting a common power supply to a plurality of sense modules, each sense module has a sense node, and is associated with a respective chain of series-connected storage elements in a memory array;
for each respective sense module, initiating a discharge period in which the respective sense node is allowed to communicate with the respective chain of series-connected storage elements, so that each sense node associated with a conductive chain of series-connected storage elements discharges past a trip point, and each sense node associated with a non-conductive chain of series-connected storage elements does not discharge past the trip point;
monitoring a level of the common power supply during the discharge period; and
in response to the monitoring, determining a time to obtain data from the sense nodes, the data indicates whether the sense nodes have discharged past the trip point.
11. A power supply and monitoring apparatus, comprising:
an amplifier having an inverting input terminal, a non-inverting input terminal, and an output terminal, a reference voltage is provided to the inverting input terminal;
an output path which follows a voltage of the output terminal, the output path is connected to a plurality of sense modules for a memory array, and to a feedback path to the non-inverting input terminal;
analog-to-digital converter connected to the output path, the analog-to-digital converter provides digital values based on the output path;
a sampling circuit connected to the analog-to-digital converter, the sampling circuit samples the digital values to determine a value which represents a rate of change of at least one of a voltage and a current of the output path; and
a compare circuit, the compare circuit makes a comparison between the value and a threshold, the comparison is used to initiate concurrent latch operations in each of the plurality of sense modules when a magnitude of the value is less than the threshold.
2. The power supply and monitoring apparatus of
a state machine which is responsive to the compare circuit, the state machine initiates the concurrent latch operations in each of the plurality of sense modules when the magnitude of the value is less than the threshold.
3. The power supply and monitoring apparatus of
the sampling circuit samples a voltage of the output to determine a value which represents a rate of change of the voltage; and
the compare circuit determines whether a magnitude of the value which represents the rate of change of the voltage is less than the threshold.
4. The power supply and monitoring apparatus of
the sampling circuit samples a current of the output to determine a value which represents a rate of change of the current; and
the compare circuit determines whether a magnitude of the value which represents the rate of change of the current is less than the threshold.
5. The power supply and monitoring apparatus of
the sampling circuit samples the output during a discharge period of the concurrent sensing operations.
6. The power supply and monitoring apparatus of
each sense module includes a sense node which communicates with a respective bit line, each bit line is associated with a respective chain of series-connected storage elements in the memory array, and the concurrent latch operations latch a value of the sense node in each sense module.
7. The power supply and monitoring apparatus of
during the concurrent sensing operations, the output experiences a perturbation, and the rate of change is indicative of an amplitude of the perturbation.
8. The power supply and monitoring apparatus of
each sense module communicates with a respective bit line, each bit line is associated with a respective chain of series-connected storage elements in the memory array, and the output is temporarily pulled down by chains of series-connected storage elements which are conductive, and subsequently pulled up by the power supply circuit.
9. The power supply and monitoring apparatus of
the value which represents the rate of change indicates when the output has been pulled up by the power supply circuit, and is sufficiently close to a steady state level.
10. The power supply and monitoring apparatus of
bit lines associated with the chains of series-connected storage elements which are conductive are pulled up by the power supply circuit through bit line clamp transistors whose gates have an analog gate bias.
12. The power supply and monitoring apparatus of
a state machine which is responsive to the compare circuit, the state machine initiates the concurrent latch operations in each of the plurality of sense modules when the magnitude of the value is less than the threshold.
13. The power supply and monitoring apparatus of
each sense module includes a sense node which communicates with a respective bit line, each bit line is associated with a respective chain of series-connected storage elements in the memory array, and the concurrent latch operations latch a value of the sense node in each sense module.
14. The power supply and monitoring apparatus of
during the concurrent sensing operations, the output path experiences a perturbation, and the value is indicative of an amplitude of the perturbation.
15. The power supply and monitoring apparatus of
each sense module communicates with a respective bit line, each bit line is associated with a respective chain of series-connected storage elements in the memory array, the output path is temporarily pulled down by chains of series-connected storage elements which are conductive, and subsequently pulled up by the power supply circuit, and the value indicates when the output path has been pulled up by the power supply circuit, and is sufficiently close to a steady state level.
17. The method of
the level of the common power supply experiences a perturbation during the discharge period, and the monitoring indicates when the level of the common power supply has returned sufficiently close to a steady state level.
18. The method of
the monitoring determines a value which represents a rate of change of the level of the common power supply during the discharge period.
19. The method of
the level of the common power supply is temporarily pulled down by the chains of series-connected storage elements which are conductive during the discharge period, and subsequently pulled up by the common power supply.
20. The method of
the time to obtain data from the sense nodes indicates an end of the discharge period.
0. 21. The power supply and monitoring apparatus of claim 1, wherein:
the memory array comprises a three-dimensional array of storage elements.
0. 22. The power supply and monitoring apparatus of claim 11, wherein:
the memory array comprises a three-dimensional array of storage elements.
0. 23. The method of claim 16, wherein:
the memory array comprises a three-dimensional array of storage elements.
|
The present technology relates to non-volatile memory.
Semiconductor memory has become increasingly popular for use in various electronic devices. For example, non-volatile semiconductor memory is used in cellular telephones, digital cameras, personal digital assistants, mobile computing devices, non-mobile computing devices and other devices. Electrically Erasable Programmable Read Only Memory (EEPROM) and flash memory are among the most popular non-volatile semiconductor memories. With flash memory, also a type of EEPROM, the contents of the whole memory array, or of a portion of the memory, can be erased in one step, in contrast to the traditional, full-featured EEPROM.
Both the traditional EEPROM and the flash memory utilize a floating gate that is positioned above and insulated from a channel region in a semiconductor substrate. The floating gate is positioned between the source and drain regions. A control gate is provided over and insulated from the floating gate. The threshold voltage (Vth) of the transistor thus formed is controlled by the amount of charge that is retained on the floating gate. That is, the minimum amount of voltage that must be applied to the control gate before the transistor is turned on to permit conduction between its source and drain is controlled by the level of charge on the floating gate.
A sensing operation, such as a read or verify operation, typically involves applying a control gate voltage to a storage element, charging a bit line which is associated with the storage element via a sense module, and allowing the bit line to discharge through the storage element if the storage element is rendered in a conductive state by the control gate voltage. The sense module latches a result of the sensing at a specified time. However, providing an optimum time budget for the sensing operation is problematic.
A method and non-volatile storage system are provided for optimizing a sensing operation such as a read or verify operation.
As mention at the outset, providing an optimum time budget for a sensing operation is problematic. The time for charging or discharging a bit line is set based on factors such as bit line-to-bit line capacitance, bit line resistance, data pattern, the strength of a power supply or pull-up device which is used to charge up the bit line and recover the bit line after it discharges, and the power supply level and stability. However these factors can vary in different memory devices, e.g., due to processing variations and process corners, as well as in a single memory device, e.g., due to time-varying environmental conditions such as temperature. In fact, many variations are unpredictable.
A fixed optimal bit line time budget which is suitable for all cases for typical production purposes has to consider the worst case so that the memory device will not fail once it reaches the end user. But, in reality, the worst case does not happen very often, so that the time budget is too high and performance is reduced, e.g., a sense operation consumes more time than is necessary. For example, the worst case time budget may be about 15-20% longer than is necessary for an average memory device.
An adaptive sensing solution provided herein sets an adaptive time budget which is always optimal. In particular, a time for latching data in a sense module, at the end of a sense node discharge period, is set adaptively by monitoring a power supply of the sense module. This discharge sinks current from the power supply, causing a perturbation, particularly when multiplied by the many sense modules which are connected to a common power supply. By sampling the power supply, a steady state condition can be detected from a rate of change. The steady state condition signals that the discharge period can be concluded and data can be latched. The discharge period automatically adapts to different memory devices and environmental conditions.
An example memory system which provides adaptive sensing is discussed next.
In some embodiments, the array of storage elements can be three dimensional. The memory array 155 is addressable by word lines via a row decoder 130 and by bit lines via a column decoder 160. The read/write circuits 165 include multiple sense blocks 100 and allow a page of storage elements to be read or programmed in parallel. Typically a controller 150 is included in the same memory device 196 (e.g., a removable storage card) as the one or more memory die 198. Commands and data are transferred between the host and controller 150 via lines 120 and between the controller and the one or more memory die 198 via lines 118.
The control circuitry 110 cooperates with the read/write circuits 165 to perform memory operations on the memory array 155, and includes a state machine 112, an on-chip address decoder 114, and a power control module 116. The state machine 112 provides chip-level control of memory operations. The on-chip address decoder 114 provides an address interface between that used by the host or a memory controller to the hardware address used by the decoders 130 and 160. The power control module 116 controls the power and voltages supplied to the word lines and bit lines during memory operations. The power control module 116 includes a power supply and monitoring circuit 122 which is discussed further in connection with
In some implementations, some of the components of
In another embodiment, a non-volatile memory system uses dual row/column decoders and read/write circuits. Access to the memory array 155 by the various peripheral circuits is implemented in a symmetric fashion, on opposite sides of the array, so that the densities of access lines and circuitry on each side are reduced by half. Thus, the row decoder is split into two row decoders and the column decoder into two column decoders. Similarly, the read/write circuits are split into read/write circuits connecting to bit lines from the bottom and read/write circuits connecting to bit lines from the top of the array 155. In this way, the density of the read/write modules is essentially reduced by one half.
Sense module 180 comprises sense circuitry 170 that determines whether a conduction current in a connected bit line is above or below a predetermined threshold level. Sense module 180 also includes a bit line latch 182 that is used to set a voltage condition on the connected bit line. For example, a predetermined state latched in bit line latch 182 will result in the connected bit line being pulled to a state designating program inhibit (e.g., 1.5-3 V).
Common portion 190 comprises a processor 192, a set of data latches 194 and an I/O Interface 196 coupled between the set of data latches 194 and data bus 120. Processor 192 performs computations. For example, one of its functions is to determine the data stored in the sensed storage element and store the determined data in the set of data latches. The set of data latches 194 is used to store data bits determined by processor 192 during a read operation. It is also used to store data bits imported from the data bus 120 during a program operation. The imported data bits represent write data meant to be programmed into the memory. I/O interface 196 provides an interface between data latches 194 and the data bus 120.
During reading, the operation of the system is under the control of state machine 112 that controls the supply of different control gate voltages to the addressed storage element. As it steps through the various predefined control gate voltages corresponding to the various memory states supported by the memory, the sense module 180 may trip at one of these voltages and an output will be provided from sense module 180 to processor 192 via bus 172. At that point, processor 192 determines the resultant memory state by consideration of the tripping event(s) of the sense module and the information about the applied control gate voltage from the state machine via input lines 193. It then computes a binary encoding for the memory state and stores the resultant data bits into data latches 194. In another embodiment of the core portion, bit line latch 182 serves double duty, both as a latch for latching the output of the sense module 180 and also as a bit line latch as described above.
Some implementations can include multiple processors 192. In one embodiment, each processor 192 will include an output line (not depicted) such that each of the output lines is wired-OR'd together. In some embodiments, the output lines are inverted prior to being connected to the wired-OR line. This configuration enables a quick determination during the program verification process of when the programming process has completed because the state machine receiving the wired-OR can determine when all bits being programmed have reached the desired level. For example, when each bit has reached its desired level, a logic zero for that bit will be sent to the wired-OR line (or a data one is inverted). When all bits output a data 0 (or a data one inverted), then the state machine knows to terminate the programming process. Because each processor communicates with eight sense modules, the state machine needs to read the wired-OR line eight times, or logic is added to processor 192 to accumulate the results of the associated bit lines such that the state machine need only read the wired-OR line one time. Similarly, by choosing the logic levels correctly, the global state machine can detect when the first bit changes its state and change the algorithms accordingly.
During program or verify operations, the data to be programmed is stored in the set of data latches 194 from the data bus 120. The program operation, under the control of the state machine, comprises a series of programming voltage pulses applied to the control gates of the addressed storage elements. Each program pulse is followed by a read back (verify) to determine if the storage element has been programmed to the desired memory state. Processor 192 monitors the read back memory state relative to the desired memory state. When the two are in agreement, the processor 192 sets the bit line latch 182 so as to cause the bit line to be pulled to a state designating program inhibit. This inhibits the storage element coupled to the bit line from further programming even if program pulses appear on its control gate. In other embodiments the processor initially loads the bit line latch 182 and the sense circuitry sets it to an inhibit value during the verify process.
Data latch stack 194 contains a stack of data latches for each sense module. In one embodiment, there are three data latches per sense module 180. In some implementations, the data latches are implemented as a shift register so that the parallel data stored therein is converted to serial data for data bus 120, and vice versa. All the data latches corresponding to the read/write block of m storage elements can be linked together to form a block shift register so that a block of data can be input or output by serial transfer. In particular, the bank of read/write modules is adapted so that each of its set of data latches will shift data in to or out of the data bus in sequence as if they are part of a shift register for the entire read/write block.
The transistors depicted can include n-type metal-oxide-semiconductor field-effect transistor (MOSFETs) and partially-insulated field-effect transistors (PiFETs), for instance. The sense module 180 includes, generally, a sense portion 337, a FLG latch 302 and a LAT latch 376. The FLG latch 302 sets a flag value, FLG, on path 328 to high or low. A value INV on path 330 is the inverse of FLG. Nodes 304 and 306 receive a power supply Vdd. Generally, Vdd can be provided by the power supply and monitoring circuit 122 of
A gate of a transistor 305 is connected to a transistor 312 of a ground path. Similarly, a gate of a transistor 307 is connected to a transistor 314 of a ground path.
With FLG high, a transistor 322 is non-conductive. Transistor 322, when conductive, couples a power supply terminal 320 to a FLA transistor 324.
An NCO transistor 334 connects a MUX path 336 to a sense bus (SBUS) for input and output of data. An ICO transistor 332 controls whether the INV path 330 communicates with the MUX path 336. An FCO transistor 326 controls whether the FLG path 328 communicates with the MUX path 336.
A reset or RSB transistor 318 controls whether a power supply node 316 communicates with the FLG path 328.
In the LAT latch 376, a value LAT is set on path 362 to high or low. INT on path 364 is the inverse of LAT. Nodes 366 and 369 receive Vdd. STL transistor 372 and PRS transistor 374 receive appropriate control signals to provide the desired LAT level. A gate of transistor 368 is connected to a transistor 373 of a ground path. Similarly, a gate of transistor 370 is connected to a transistor 375 of a ground path.
An LCO transistor 344 controls whether the LAT path 362 communicates with the MUX path 336. An LRS transistor 346 controls whether the INT path 364 communicates with the MUX path 336.
The sense portion 337, which is used during a verify or read operation, includes a sense path or node 354, a XX0 transistor 356 which controls whether the sense path communicates with the COM path 382, an HLL transistor 340 which controls whether the sense path communicates with a power supply node 338, and an H00 transistor 342 which controls whether the sense path communicates with the MUX path 336. The HLL and H00 transistors can be used for lock out or no lock out sensing, respectively. The SEN path 354 is coupled to a control gate of an NSEN transistor 360, and an STR transistor 358 controls whether the transistor 360 communicates with the MUX path 336. A clock CLK signal is provided at a node 388 to a dynamic capacitor 384.
A BLY transistor 352 controls whether the MUX path 336 communicates with the COM path 382, while a BLX transistor 350 controls whether the COM path 382 communicates with a power supply node 348. The BLC transistor 378 and BLS transistor 380 control whether the COM path 382 communicates with the bit line BL1 390. The bit line 390 may communicate with one or more NAND strings. An example NAND string 392 includes a drain select gate SGD 394, storage elements 395, 396, . . . , 397 whose control gates communicate with word lines WL63, WL62, . . . , WL0, respectively, for example, and a source select gate SGS 398 which communicates with a source line 399.
Generally, a read operation involves applying a control gate voltage such as Vra, Vrb or Vrc to a selected storage element in the NAND string 392. A verify operation involves applying a control gate voltage such as Vva, Vvb or Vvc to a selected storage element. The control gate voltage can be applied via a corresponding word line to multiple selected storage elements in corresponding multiple NAND strings at the same time. Each NAND string may have a respective sense module, in one possible approach. The control gate voltages of other, unselected storage elements in the NAND string 392 and other NAND strings are raised to a level (referred to as a read pass level) which is sufficient to render the unselected storage elements conductive. With the control gate voltage applied, the sense module 180 is controlled to interact with the selected storage element, via a respective bit line, to determine the state of the storage element. Typically, a conductive or non-conductive state of the selected storage can be determined.
In one possible implementation, the HLL transistor 340 receives a voltage Vhll at its control gate which sets an initial voltage level of the sense node 354 as Vhll-Vth, where Vth is a threshold voltage of the HLL transistor 340. Essentially, the HLL transistor allows a portion of the supply voltage Vdd at node 338 to reach the sense node. The HLL transistor 340 may therefore be considered to be a voltage-setting transistor. The voltage applied to the sense node is considered to provide a pre-charge of the sense node. At this time, the sense node is not allowed to communicate with the bit line 390 by providing the XX0 transistor 356 in a non-conductive state. Subsequently, Vhll is lowered so that the HLL transistor 340 becomes non-conductive, and the sense node is cutoff from the supply node 338. The BLX transistor 350 is made conductive to provide Vdd at node 348 to the BLC transistor 378, and a gate of the BLC transistor is controlled to pass a portion of Vdd to the bit line 390, thereby pre-charging the bit line. The XX0 transistor 356 is controlled to be in a conductive state, so that the sense node 354 communicates with the bit line 390. The SGS transistor 398 is also controlled to be in a conductive state so that the sense node can discharge into the bit line, the unselected storage elements, and the selected storage element, to the source line 399, if the selected storage element is in a conductive state. If the selected storage element is in a non-conductive state, the sense node will not appreciably discharge.
When the XX0 transistor 356 is conductive, a path from node 348 to the bit line 390, via the BLX transistor 350, is also conductive. Node 348 is at a higher voltage than the sense node, so the current from the sense node will go towards the bit line until the sense node drops below a certain level. Once the sense node is below the BLX voltage, there will not be any more current flowing through the XX0 transistor 356 to the bit line 390. Instead, all current coming to the bit line will be from the BLX transistor 350. Note that the CLK signal is at ground. Thus, in one possible approach, a discharge time period of the sense node begins when the XX0 transistor 356 is made conductive, and ends when the XX0 transistor is made non-conductive.
At a predetermined sensing time after discharging starts, the sense node is sensed to determine its voltage. Data is latched from the sense node based on the sense node level. In one possible approach, the NSEN transistor 360 performs this task. If the sense node voltage is above the threshold voltage of the NSEN transistor 360, the NSEN transistor 360 will be in a conductive state. This means the discharge of the sense node was not appreciable, and it can be concluded that the selected storage element is in a non-conductive state. On the other hand, if the sense node voltage is at or below the threshold voltage of the NSEN transistor 360, the NSEN transistor 360 will be in a non-conductive state. This means the discharge of the sense node was appreciable, and it can be concluded that the selected storage element is in a conductive state. The NSEN transistor 360 may therefore be considered to be a voltage-sensing transistor. A latch value is set to 0 or 1 and output via the bus to the processor 192 according to whether the NSEN transistor 360 is in a conductive or non-conductive state, respectively, indicating that the selected storage element is in a non-conductive or conductive state, respectively. For example, the FLG node 328 is reset to high, and the STR transistor 358 and the FCO transistor 326 can be made conductive to attempt to flip the FLG latch 302. The FLG latch is flipped if NSEN 360 is conductive, or not flipped if NSEN is not conductive.
In an all bit line architecture, the bit lines are driven by the sense modules. During a sensing operation, including pre-charge or recovery, the bit lines are pulled up by Vdd of the sense modules through the BLC transistor, which has an analog gate bias to clamp the bit line voltage. As discussed further below in connection with
Although the bit line voltage is nominally clamped at a fixed level by applying a fixed gate voltage to the BLC transistor 378, the drain of the BLC transistor (coupled to the COM path 382 and the BLX transistor 350) is pulled low when the source of the BLC transistor (coupled to the bit line 390), is pulled low. This in turn pulls Vdd low, such as via the BLX transistor 350 and the node 348. Moreover, the unselected bit lines, which are not involved in the sensing operation, can be pulled low due to capacitive coupling from the selected bit lines being pulled low. This can occur for unselected NAND chains which become conductive when a storage element connected to the selected word line voltage becomes conductive. The unselected storage elements in all NAND chains are conductive during a sensing operation due to application of relative high read pass voltages to the unselected word lines. With potentially thousands of sense modules connected to one power supply, and concurrent sensing operations being performed for many of the sense modules, the power supply can experience a noticeable perturbation which could result in inaccurate sensing if the sense data is obtained before the perturbation has been sufficiently attenuated.
Towards the end of the sense node discharge period, the bit line voltage level settles so that the perturbation of Vdd dies down, and Vdd recovers toward a steady state level, which is typically close to the level before the perturbation. The current spike also dies down so that Idd will eventually reach a steady state level when the bit lines reach a steady state level. From these observations, the voltage or current level of the power supply provides an indication of when the sense node discharge has concluded, and when the sense data can be latched at the soonest possible time, without concern that the sense node discharge is still in progress.
In one approach, the stability of the power supply can be judged by monitoring the level of Vdd. When it is perturbed and subsequently recovers to within a certain percentage of the original level, it indicates the sense node discharge is almost done. In another approach, a determination is made as to when Vdd subsequently recovers to some steady state level which is not necessarily the same as the original, pre-perturbation level. Another approach is to monitor the slope, e.g., rate of change, of Vdd or Idd. When the bit lines all reach steady state, Vdd and Idd should also be in a steady state, which means the rate of change is zero or close to zero. In reality, an exact steady state need not be reached, as long as long as the rate of change is small enough the sense node discharge can be considered done. These techniques assume low resistance in routing the power supply to the sense modules.
With this approach, the state machine can decide the soonest possible time to move on to the next action in a sensing operation following sense node discharge, so that the duration of the sensing operation is minimized. A benefit is that it is self-adaptive in all situations, so that no fixed timing budget is needed. For the worst case memory chips, the performance will be similar to the fixed time budget approach, but for the majority of memory chips, the duration of the sensing operation can be reduced by about 15%-20%. An optimum time budget is adaptively set for different memory devices according to the observed behavior of each memory device, and for one memory device at different times according to the observed behavior of the memory device at each of the different times.
The circuit of
Other types of non-volatile memory in addition to NAND flash memory can also be used. For example, another type of memory cell useful in flash EEPROM systems utilizes a non-conductive dielectric material in place of a conductive floating gate to store charge in a non-volatile manner. A triple layer dielectric formed of silicon oxide, silicon nitride and silicon oxide (“ONO”) is sandwiched between a conductive control gate and a surface of a semi-conductive substrate above the memory cell channel. The cell is programmed by injecting electrons from the cell channel into the nitride, where they are trapped and stored in a limited region. This stored charge then changes the threshold voltage of a portion of the channel of the cell in a manner that is detectable. The cell is erased by injecting hot holes into the nitride. A similar cell can be provided in a split-gate configuration Where a doped polysilicon gate extends over a portion of the memory cell channel to form a separate select transistor.
In another approach, NROM cells are used. Two bits, for example, are stored in each NROM cell, where an ONO dielectric layer extends across the channel between source and drain diffusions. The charge for one data bit is localized in the dielectric layer adjacent to the drain, and the charge for the other data bit localized in the dielectric layer adjacent to the source. Multi-state data storage is obtained by separately reading binary states of the spatially separated charge storage regions within the dielectric. Other types of non-volatile memory are also known.
The power supply circuit 500 is connected via a path 522 to a sampling circuit 560 which can sample the voltage or current on the path 522, which is connected to the feedback path of the power supply circuit 500. As described further below, e.g., in connection with
The sampling circuit includes an analog-to digital converter (ADC) 538 which provides a digital sample of the voltage or current on path 522 responsive to a clock signal on path 550 and 536. The digital sample comprises a number of bits. The clock signal indicates the rate at which samples are obtained, and can be set to provide a desired resolution. A 2-stage shift register 541 having flip-flops 540 and 542 is provided. The digital sample from the ADC 538 is provided via a path 534 to the data (D) input of the flip flop 540 and stored at an output Q. When the clock goes high on path 546 at a data advance input (represented by a triangle) of the flip flop 540, the digital sample at the output Q is provided via a path 544 to the data input of the flip flop 542, and to a path 532 which is connected to a positive input terminal of a subtractor 528. When the clock goes high on path 548 at a data advance input of the flip flop 542, the digital sample at the output Q is provided to a path 530 which is connected to a negative input terminal of the subtractor 528.
An output (R) of the subtractor 528 is a value which represents a difference between digital samples at times t(i) and t(i−1), e.g., ΔVdd or ΔIdd, where i is a sample or time index, and thus is data which represents a rate of change or slope of the digital samples. R can be provided to a compare block 524 in the state machine 112, discussed previously in connection with
A brief overview of read and verify voltages is provided next in
Each distinct threshold voltage range corresponds to predetermined values for the set of data bits. The specific relationship between the data programmed into the storage element and the threshold voltage levels of the storage element depends upon the data encoding scheme adopted for the storage elements. Although four states are shown, the other multi-state structures including those that include more or less than four states can also be used.
Three read reference voltages, Vra, Vrb and Vrc, are also provided for reading data from storage elements. By testing whether the threshold voltage of a given storage element is above or below Vra, Vrb and Vrc, the system can determine the state, e.g., programming condition, the storage element is in.
Further, three verify reference voltages, Vva, Vvb and Vvc, are provided. When programming storage elements to state A, B or C, the system will test whether those storage elements have a threshold voltage greater than or equal to Vva, Vvb or Vvc, respectively. Various program schemes are known, includes single pass and multiple-pass schemes. As mentioned, four, eight, sixteen or even more data states can be provided. Generally, 2N−1 sense levels are used when there are 2N states.
In one embodiment, the programming pulses have a voltage which starts at an initial level such as 12 V and increases by increments, e.g., 0.5 V, for each successive programming pulse until a maximum of, e.g., 20-25 V is reached. In some embodiments, there can be a verify pulse for each state that data is being programmed into, e.g., state A, B and C. In other embodiments, there can be more or fewer verify pulses. For example, verify pulses may be provided only for state A initially, then for states A and B, and then for states B and C. The waveform may be used during all bit line programming, for instance, in which storage elements of even- and odd-numbered bit lines are programmed together, and verified together. Or, the verify operation can be performed separately, e.g., first for the even-numbered bit lines and then for the odd-numbered bit lines.
Voltage sensing, in contrast, does not involve sensing a voltage drop which is tied to a fixed current. Instead, voltage sensing involves determining whether charge sharing occurs between a capacitor in a sensing circuit and a capacitance of the bit line. Current is not constant during the sensing. Little or no charge sharing occurs when the selected storage element is conductive, in which case the voltage of the capacitor in the voltage sensing module does not drop significantly. Charge sharing does occur when the selected storage element is non-conductive, in which case the voltage of the capacitor in the voltage sensing module does drop significantly.
The sensing module thus can determine whether the selected storage element is in a conductive or non-conductive state by the level of current. Generally, a higher current will flow (corresponding to a greater voltage discharge of the sense node) when the selected storage element is in a conductive state and a lower current, or essentially no current, will flow (corresponding to a lesser voltage discharge of the sense node) when the selected storage element is in a non-conductive state. It can be concluded that a threshold voltage of the selected storage element is above or below a compare level, such as a verify level or a read level, when it is in a non-conductive state or a conductive state, respectively.
At step 826, the signals in the sense module are allowed to recover. At decision step 828, if there is a next compare point, such as with a read operation, the process is repeated starting at step 814, using a different control gate read voltage on the selected word line. If there is no next compare point, the process is continued at step 830.
If the storage elements read store binary data, then steps 814-826 are performed once for the particular read or verify level. For multi-state storage elements, a read process can test for multiple read compare points, e.g., Vra, Vrb and Vrc. Therefore, steps 814-826 are performed for each read compare point.
Waveform 910 represents the control gate voltage, Vblc, of the BLC transistor 378. Vblc is raised to clamp the selected bit lines to a constant level during sensing. Waveform 912 represents Vbl_sel, the selected bit line voltage. From t4-t7, before the discharge period which starts at t7, Vbl_sel=Vblc−Vth, where Vth is the threshold voltage of the BLC transistor. Waveform 916 represents Vbl_sel from t7-t11, for a bit line which does not appreciably discharge. Waveforms 920 and 914 represent Vbl_sel for a bit line which does appreciably discharge, for the first and second example discharge periods, respectively. Waveform 918 represents a discharge level for Vbl_sel. As can be seen, the discharge of the selected bit line as represented by waveforms 920 and 914 can couple to the unselected bit lines, pulling them down as well (waveforms 906 and 908, respectively).
Vdd, the power supply voltage, is at a nominal level such as Vref before the discharge period which begins at t7. Vdd experiences a perturbation in its amplitude from t7-t8 in the first example discharge period (waveform 922), or from t7-t9 in the second example discharge period (waveform 924).
R=ΔVdd/Δt, the rate of change of the power supply voltage, is at zero before the discharge period which begins at t7. The rate of change reflects the perturbation in Vdd from t7-t8 in the first example discharge period (waveform 926), or from t7-t9 in the second example discharge period (waveform 928). A rate threshold 929 is also depicted. As seen, during concurrent sensing operations, the power supply output experiences a perturbation, and the rate of change is indicative of an amplitude of the perturbation. When |R|<threshold, the sense data is latched. Note that, to provide a margin, before latching the sense data, it is also possible to wait a designated amount of time after concluding that |R|<threshold. The wait time can be fixed, regardless of the time period from the start of the discharge to the time at which |R|<threshold. In another possible approach, the wait time is a portion of the time period from the start of the discharge to the time at which |R|<threshold, such as 5-10% of that time period. An expanded view of waveforms 922 and 924 is provided in
The power supply current, Idd, is an analog of the voltage Vdd. Idd is at a nominal level, Iref, before the discharge period which begins at t7, and experiences a perturbation in its amplitude from t7-t8 in the first example discharge period (waveform 930), or from t7-t9 in the second example discharge period (waveform 932). R=ΔIdd/Δt, the rate of change of the power supply current, is at zero before the discharge period which begins at t7. The rate of change reflects the perturbation in Idd from t7-t8 in the first example discharge period (waveform 934), or from t7-t9 in the second example discharge period (waveform 936). A rate threshold 935 is also depicted. In this case, the threshold is less than zero. Comparing |R| to a threshold avoids the need to consider the polarity of R.
Waveform 938 depicts the control gate voltage of the SGS transistor 398. The transistor is conductive at t7, at the start of the discharge period. Waveforms 940 and 942 represent a strobe signal which initiates the latching of data from the sense node, for the first and second example discharge periods, respectively. STR is toggled when |R|<threshold. Waveforms 946 and 944 represent the sense node voltage (SEN), for the first and second example discharge periods, respectively. A trip point level 948 is also depicted, which can be the Vth of the NSEN transistor 360. If the sense node voltage is above the trip point 948, then toggling STR will discharge the FLG latch 328 through the FCO transistor 326, FLG path 328, FCO 326, STR 358 and NSEN 360 to the CLK node 388 at ground. On the other hand, if the sense node voltage is below the trip point, there is no discharge current from the FLG path, so it stays high.
Generally, each sense node which is associated with a conductive chain of series-connected storage elements discharges past the trip point 948, and each sense node which is associated with a non-conductive chain of series-connected storage elements does not discharge past the trip point 948.
Waveforms 950 and 952 represent the control gate voltage of the XX0 transistor 356, for the first and second example discharge periods, respectively. XX0 is set high to start the discharge period by allowing the sense node to communicate with the bit line, and set low to end the discharge period, by preventing the sense node from communicating with the bit line. XX0 being set low can be triggered by |R|<threshold.
Waveform 954 represents the control gate voltage of the HLL transistor 340, which is set high to allow the sense node to be charged.
In one embodiment, a power supply and monitoring apparatus includes a power supply circuit connected to a plurality of sense circuits for a memory array, where the power supply circuit provides an output which powers the plurality of sense circuits. A sampling circuit samples the output of the power supply circuit during concurrent sensing operations of the plurality of sense circuits, and determines a value which represents a rate of change of the output. A compare circuit makes a comparison between the value and a threshold, where the comparison is used to initiate concurrent latch operations in each of the plurality of sense circuits when a magnitude of the value is less than the threshold.
In another embodiment, a power supply and monitoring apparatus includes an amplifier having an inverting input terminal, a non-inverting input terminal, and an output terminal, where a reference voltage is provided to the inverting input terminal. An output path follows a voltage of the output terminal, and is connected to sense circuits for a memory array, and to a feedback path to the non-inverting input terminal. An analog-to-digital converter is connected to the output path, and provides digital values based on the output path. A sampling is circuit connected to the analog-to-digital converter, and samples the digital values to determine a value which represents a rate of change of at least one of a voltage and a current of the output path. A compare circuit makes a comparison between the value and a threshold. The comparison is used to initiate concurrent latch operations in each of the plurality of sense circuits when a magnitude of the value is less than the threshold.
In another embodiment, a method for sensing in a storage system includes connecting a common power supply to sense circuits, where each sense circuit has a sense node, and is associated with a respective chain of series-connected storage elements in a memory array. The method further includes, for each respective sense circuit, initiating a discharge period in which the respective sense node is allowed to communicate with the respective chain of series-connected storage elements, so that each sense node associated with a conductive chain of series-connected storage elements discharges past a trip point, and each sense node associated with a non-conductive chain of series-connected storage elements does not discharge past the trip point. The method further includes monitoring a level of the common power supply during the discharge period, and in response to the monitoring, determining a time to obtain data from the sense nodes, where the data indicates whether the sense nodes have discharged past the trip point.
In another embodiment, a storage system includes means for connecting a common power supply to sense circuits, where each sense circuit has a sense node, and is associated with a respective chain of series-connected storage elements in a memory array. The storage system further includes, for each respective sense circuit, means for initiating a discharge period in which the respective sense node is allowed to communicate with the respective chain of series-connected storage elements, so that each sense node associated with a conductive chain of series-connected storage elements discharges past a trip point, and each sense node associated with a non-conductive chain of series-connected storage elements does not discharge past the trip point. The storage system further includes means for monitoring a level of the common power supply during the discharge period, and means for, in response to the monitoring, determining a time to obtain data from the sense nodes, where the data indicates whether the sense nodes have discharged past the trip point.
The foregoing detailed description has been presented for purposes of illustration and description. It is not intended to be exhaustive or limited to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. The described embodiments were chosen in order to best explain the principles of the technology and its practical application, to thereby enable others skilled in the art to best utilize the technology in various embodiments and with various modifications as are suited to the particular use contemplated. It is intended that the scope of the technology be defined by the claims appended hereto.
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
5132931, | Aug 28 1990 | Analog Devices, Inc.; Analog Devices, Inc | Sense enable timing circuit for a random access memory |
5557193, | Oct 12 1992 | Renesas Electronics Corporation | Stabilized voltage generating circuit and internal voltage down converter and a method of generating an internal operating power supply voltage for a dynamically operating circuit |
5966319, | Jul 15 1997 | Mitsubishi Denki Kabushiki Kaisha | Static memory device allowing correct data reading |
6862240, | Feb 19 2003 | SHENZHEN XINGUODU TECHNOLOGY CO , LTD | Variable refresh control for a memory |
6906937, | Mar 21 2003 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Bit line control circuit for a content addressable memory |
6987693, | Sep 24 2002 | SanDisk Technologies LLC | Non-volatile memory and method with reduced neighboring field errors |
7142468, | Apr 09 2002 | SOCIONEXT INC | Control method of semiconductor memory device and semiconductor memory device |
7236415, | Sep 01 2004 | U S BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT | Sample and hold memory sense amplifier |
7289354, | Jul 28 2005 | Texas Instruments Incorporated | Memory array with a delayed wordline boost |
7525854, | Dec 01 2005 | VIA Technologies, Inc. | Memory output circuit and method thereof |
7545675, | Dec 16 2005 | SanDisk Technologies LLC | Reading non-volatile storage with efficient setup |
7898885, | Jul 19 2007 | U S BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT | Analog sensing of memory cells in a solid state memory device |
20030128598, | |||
20030173998, | |||
20030174545, | |||
20060158935, | |||
20080205180, | |||
20090003069, | |||
20090109766, | |||
20090147605, | |||
20090231934, | |||
20100074014, | |||
20110182121, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jan 29 2010 | KUO, TIEN-CHIEN | SanDisk Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 032208 | /0296 | |
Jan 29 2010 | MUI, MAN L | SanDisk Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 032208 | /0296 | |
Apr 04 2011 | SanDisk Corporation | SanDisk Technologies Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 032208 | /0359 | |
Feb 11 2014 | SanDisk Technologies Inc. | (assignment on the face of the patent) | / | |||
May 16 2016 | SanDisk Technologies Inc | SanDisk Technologies LLC | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 038807 | /0948 |
Date | Maintenance Fee Events |
Jul 29 2015 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Aug 02 2019 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Oct 02 2023 | REM: Maintenance Fee Reminder Mailed. |
Mar 18 2024 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Jun 16 2018 | 4 years fee payment window open |
Dec 16 2018 | 6 months grace period start (w surcharge) |
Jun 16 2019 | patent expiry (for year 4) |
Jun 16 2021 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jun 16 2022 | 8 years fee payment window open |
Dec 16 2022 | 6 months grace period start (w surcharge) |
Jun 16 2023 | patent expiry (for year 8) |
Jun 16 2025 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jun 16 2026 | 12 years fee payment window open |
Dec 16 2026 | 6 months grace period start (w surcharge) |
Jun 16 2027 | patent expiry (for year 12) |
Jun 16 2029 | 2 years to revive unintentionally abandoned end. (for year 12) |