Data storage device and method for power saving in a variable host throughput environment
A data storage device and method for power saving in a variable host throughput environment are provided. In one embodiment, a data storage device is provided comprising a memory and one or more processors. The one or more processors, individually or in combination, are configured to: detect that a data consumption rate of a host is below a threshold; and in response to detecting that the data consumption rate of the host is below the threshold, enter a power-saving mode by: storing, in the non-volatile memory, a context of a pending host command in a command queue; and reducing power to at least one component of the data storage device. Other embodiments are disclosed.
1 . A data storage device comprising:
a non-volatile memory; and
one or more processors, individually or in combination, configured to:
detect that a data consumption rate of a host is below a threshold;
in response to detecting that the data consumption rate of the host is below the threshold, send, to the host, a request that the host not send an additional host command for an amount of time that the data storage device will be in and exit from a power-saving mode; and
in response to receiving, from the host, acceptance of the request, enter the power-saving mode by:
storing, in the non-volatile memory, a context of a pending host command in a command queue; and
reducing power to at least one component of the data storage device.
2 . The data storage device of claim 1 , wherein the one or more processors, individually or in combination, are further configured to exit the power-saving mode by:
reading, from the non-volatile memory, the context of the pending host command; and
restoring power to the at least one component of the data storage device.
3 . The data storage device of claim 2 , wherein the one or more processors, individually or in combination, are further configured to exit the power-saving mode in response to an expiration of a time period.
4 . The data storage device of claim 3 , wherein the time period is a function of the data consumption rate of the host and a size of a buffer in the host.
5 . The data storage device of claim 2 , wherein the one or more processors, individually or in combination, are further configured to exit the power-saving mode in response to receiving a new host command from the host.
6 . The data storage device of claim 2 , wherein the one or more processors, individually or in combination, are further configured to exit the power-saving mode in response to receiving a command from the host to exit the power-saving mode.
7 . The data storage device of claim 1 , wherein the one or more processors, individually or in combination, are further configured to seek approval from the host of an increase in latency in exiting the power-saving mode.
8 . The data storage device of claim 1 , wherein the one or more processors, individually or in combination, are further configured to perform a handshake with the host to enable use of the power-saving mode.
9 . The data storage device of claim 1 , wherein the non-volatile memory comprises a three-dimensional memory.
10 . A method comprising:
performing in a data storage device:
determining that at least one outstanding host command that has not been completed;
sending, to a host, a request that the host not send an additional host command for an amount of time that the data storage device will be in and exit from a low-power mode; and
in response to receiving, from the host, acceptance of the request, entering the low-power mode even though the at least one outstanding host command has not been completed.
11 . The method of claim 10 , wherein entering the low-power mode comprises:
storing a state of the at least one outstanding host command; and
reducing power to at least one component of the data storage device.
12 . The method of claim 10 , further comprising exiting the low-power mode.
13 . The method of claim 12 , wherein exiting the low-power mode comprises:
restoring the state of the at least one outstanding host command; and
restoring power to the at least one component of the data storage device.
14 . The method of claim 12 , wherein the low-power mode is exited in response to an expiration of a time period.
15 . The method of claim 14 , wherein the time period is a function of a data consumption rate of the host and a size of a buffer in the host.
16 . The method of claim 12 , wherein the low-power mode is exited in response to receiving a new host command from the host.
17 . The method of claim 12 , wherein the low-power mode is exited in response to receiving a command from the host to exit the low-power mode.
18 . The method of claim 10 , wherein the host comprises an autonomous vehicle.
19 . The method of claim 10 , wherein the host comprises an autonomous vehicle.
20 . A data storage device comprising:
a memory; and
means for:
detecting that at least one pending host command has not been completed;
sending, to a host, a request that the host not send an additional host command for an amount of time that the data storage device will be in and exit from a standby mode; and
in response to receiving, from the host, acceptance of the request, entering the standby mode even though the at least one pending host command has not been completed.