Dynamic staggering for programming in nonvolatile memory
AssigneeSanDisk Technologies LLC
InventorsYu-Chung Lien, Deepanshu Dutta, Huai-Yuan Tseng
Life of this patent
Estimating the term…
Abstract
An apparatus includes a controller and a plurality of memory dies operable connected to and controlled by the controller. Each of the memory dies draws a current from a current source during a program operation. The controller being configured to receive a clock signal from each of the memory dies; count the number of clock signal received to determine a count value; and dynamically stagger at least one of the memory dies relative to the other memory dies when the count value reaches a maximum count value within a threshold time. The controller operates to dynamically stagger operation of at least one memory die to prevent the group of memory dies from operating synchronously.
Claims18
An apparatus, comprising:
- a controller;
- a plurality of memory dies operably connected to and controlled by the controller, wherein each of the memory dies draws a current from a current source during a program operation;
- and
- the controller being configured to:
- receive clock signals from the memory dies, each clock signal being associated with a time point, which is a fixed time before peak current demand during the program operation of a corresponding memory die;
- count a number of the clock signals received by the controller within a threshold time to determine a count value of memory dies that will hit peak current demand within the threshold time;
- and
- dynamically stagger the corresponding program operation of at least one of the memory dies relative to the corresponding program operation of at least one other of the memory dies when the count value reaches a maximum count value within the threshold time to reduce total peak current demand by the memory dies.
A dynamic staggering method for nonvolatile memory, comprising:
- receiving, at a memory controller operably connected to a plurality of memory dies, clock signals that each indicate a programming operation at a corresponding memory die of the plurality of memory dies;
- starting a timer upon receipt of a first clock signal from a first memory die of the plurality of memory dies;
- counting a number of the clock signals from the plurality of memory dies received by the memory controller within a threshold time of the timer, each clock signal being associated with a time point, which is a fixed time before peak current demand during the programming operation of the corresponding memory die;
- determining if the counted number of the clock signals exceeds a maximum count within the threshold time;
- if the counted number of the clock signals does not exceed the maximum count within the threshold time, performing previously scheduled operations on each of the plurality of memory dies;
- and
- if the counted number of the clock signals exceeds the maximum count within the threshold time, dynamically staggering the corresponding program operation of at least one memory die of the plurality of memory dies relative to at least one other memory die at least one other memory die of the plurality of memory dies to prevent the plurality of memory dies from operating synchronously during programming operations of the memory dies.
A circuit for operating a plurality of memory dies, comprising:
- a bus configured to connect with a plurality of memory dies and wherein clock signals can be received via the bus from the plurality of memory dies, each clock signal being associated with a time point, which is a fixed time before peak current demand during a programming operation of a corresponding memory die of the plurality of memory dies;
- control circuitry configured to:
- count the number of the clock signals received within a threshold time to determine a count value, and
- communicate a signal via the bus to dynamically stagger the corresponding program operation of at least one of the memory dies relative to the corresponding program operation of at least one other memory die of the plurality of memory dies when the count value reaches a maximum count value within a threshold time.
Dependencies are inferred from the claim text.