Data storage device and method for predictable low-latency in a time-sensitive environment
A data storage device and method are provided for predictable low-latency in a time-sensitive environment. In one embodiment, a data storage device is provided comprising a memory and a controller configured to communicate with the memory. The controller is further configured to: receive, from a host, an indication of a logical block address range that the host will later read; and in response to receiving the indication: read data from the logical block address range; and perform an action on the data to reduce a read latency when the host later reads the logical block address range. Other embodiments are disclosed.
1. A data storage device comprising:
a non-volatile memory array;
a data cache; and
a processor configured to communicate with the memory and further configured to:
receive, from a host, an indication of a logical block address range that the host will later read;
in response to receiving the indication:
read original data from the non-volatile memory array, wherein the original data is stored in the non-volatile memory array with a set of parity bits; and
store a copy of the data in the non-volatile memory array with fewer, if any, parity bits than what is stored with the original data in the non-volatile memory array;
receive a command from the host to read the logical block; and
in response to receiving the command from the host to read the logical block address range, read, from the non-volatile memory array, the copy of the data instead of the original data, wherein because the copy of the data is stored in the non-volatile memory array with fewer, if any, parity bits than what is stored in the non-volatile memory array with the original data, reading the copy of the data from the non-volatile memory array instead of reading the original data from the non-volatile memory array reduces read latency because fewer parity bits are read from the non-volatile memory array.
2. The data storage device of claim 1 , wherein the data is time-sensitive data.
3. The data storage device of claim 1 , wherein the copy of the data is stored in a single-level cell (SLC) memory in the non-volatile memory array.
4. The data storage device of claim 1 , wherein the copy of the data is stored in an area of the non-volatile memory array reserved for time-sensitive data.
5. The data storage device of claim 1 , wherein the host comprises an automated vehicle.
6. The data storage device of claim 1 , wherein the host comprises a robot.
7. The data storage device of claim 1 , wherein the memory comprises a three-dimensional memory.
8. A method comprising:
performing in a data storage device comprising a non-volatile memory array and a data cache:
receiving, from a host, an indication of a logical block address range that the host will later read;
in response to receiving the indication:
reading original data from the non-volatile memory array, wherein the original data is stored in the non-volatile memory array with a set of parity bits; and
storing a copy of the data in the non-volatile memory array with fewer, if any, parity bits than what is stored with the original data in the non-volatile memory array;
receiving a command from the host to read the logical block; and
in response to receiving the command from the host to read the logical block address range, reading, from the non-volatile memory array, the copy of the data instead of the original data, wherein because the copy of the data is stored in the non-volatile memory array with fewer, if any, parity bits than what is stored in the non-volatile memory array with the original data, reading the copy of the data from the non-volatile memory array instead of reading the original data from the non-volatile memory array reduces read latency because fewer parity bits are read from the non-volatile memory array.
9. The method of claim 8 , wherein the data is time-sensitive data.
10. The method of claim 8 , wherein the copy of the data is stored in a single-level cell (SLC) memory in the non-volatile memory array.
11. The method of claim 8 , wherein the copy of the data is stored in an area of the non-volatile memory array reserved for time-sensitive data.
12. The method of claim 8 , wherein the host comprises an automated vehicle.
13. The method of claim 8 , wherein the host comprises a robot.
14. The method of claim 8 , wherein the non-volatile memory array comprises a three-dimensional memory.
15. A data storage device comprising:
a non-volatile memory array;
a data cache; and
means for:
receiving, from a host, an indication of a logical block address range that the host will later read;
in response to receiving the indication:
reading original data from the non-volatile memory array, wherein the original data is stored in the non-volatile memory array with a set of parity bits; and
storing a copy of the data in the non-volatile memory array with fewer, if any, parity bits than what is stored with the original data in the non-volatile memory array;
receiving a command from the host to read the logical block; and
in response to receiving the command from the host to read the logical block address range, reading, from the non-volatile memory array, the copy of the data instead of the original data, wherein because the copy of the data is stored in the non-volatile memory array with fewer, if any, parity bits than what is stored in the non-volatile memory array with the original data, reading the copy of the data from the non-volatile memory array instead of reading the original data from the non-volatile memory array reduces read latency because fewer parity bits are read from the non-volatile memory array.