CPC G06F 3/0659 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0634 (2013.01); G06F 3/0679 (2013.01)] | 11 Claims |
1. A memory device comprising:
an interface to communicate with a host;
an array of memory cells; and
a controller configured to access the array of memory cells in response to commands from the host,
wherein the controller is further configured to:
enter an idle time in response to no commands from the host with queue empty, receive a first command from the host, and exit the idle time in response to receiving a second command from the host;
for a plurality of idle times, generate a history indicating a length of each idle time; and
predict the length of a subsequent idle time based on the history;
wherein the controller is further configured to, in response to predicting the length of the subsequent idle time will be less than a first threshold time:
in response to a subsequent first command, transition to a first power state;
transition to a second power state higher than the first power state in response to the first threshold time elapsing;
run background operations in the second power state; and
in response to completing the background operations, transition to a third power state lower than the first power state.
|