TECHNICAL FIELD

The present disclosure generally relates generally to systems, methods, and non-transitory processor-readable media for implementing buffers in data storage devices.

BACKGROUND

In conventional read disturb algorithms for a Non-Volatile Memory (NVM) device, a read disturb counter is maintained for each memory page. Any page that is exceeds a read threshold (e.g., 64 K read) becomes a candidate for periodic read disturb checks of the integrity of the data in the page. These checks involve reading the data which will not only keep the dies and channels busy (thus decreasing random read performance) but also cause more read disturb effects. For example, any memory page in the NVM which exceeds a certain threshold of integrity checks becomes a candidate for read disturb refresh. and an entire superblock can be moved to a new block, causing write amplification. Excessive write amplification in a read intensive workload eventually reduces lifetime of the NVM. This approach does not take into account the use of memory buffers used in read operations to reduce read disturb.

SUMMARY

In some arrangements, a method includes receiving, by a controller of a storage device from a host, information indicative of a frequency by which data stored in the storage device is accessed, and in response to receiving the information, determining, by the controller, the order by which read buffers of the storage device are allocated for a next read command.

In some arrangements, a method, includes at least in part, using the total read counter of the read buffer, calculated by the controller of the storage device to determine the order by which read buffers of the storage device are arranged for being allocated for a next read command.

In some arrangements, a method used to calculate the total read count includes calculating the sum of the hit count of the read buffers, the actual read count of the memory pages in the NVM, and a high read count assigned by the controller of the storage device to frequently read data (as informed by the host), to determine the order by which read buffers of the storage device are allocated for a next read command.

In some arrangements, a non-transitory computer-readable media comprising computer-readable instructions, such that, when executed, causes a processor to receive, from a host, information indicative of a frequency by which data stored in the storage device is accessed and in response to receiving the information, determine the order by which read buffers of the storage device are allocated for a next read command.

