主权项 |
1. A data storage system for storing data received from a host, comprising:
a non-volatile memory comprising at least a write cache portion and a read cache portion, the write cache portion configured to store data frequently written by the host relative to a write frequency threshold and the read cache portion configured to store data frequently read by the host relative to a read frequency threshold, wherein data frequently written by the host is identified by tracking a number of write commands issued by the host, wherein data frequently read by the host is identified by tracking a number of read commands issued by the host, and wherein initial sizes of the write and read cache portions are greater than zero; and
a controller configured to communicate with at least the non-volatile memory in response to receiving read and write commands from the host, the controller further configured to:determine a reliability measurement of the non-volatile memory;determine a new size of the write cache portion based on linear and non-linear relationships between a size of the write cache portion and the reliability measurement of the non-volatile memory, the controller further configured to:while the reliability measurement is determined to be in a first reliability range, linearly decrease the new size of the write cache portion as the reliability measurement decreases, andwhile the reliability measurement is determined to be in a second reliability range, non-linearly decrease the new size of the write cache portion as the reliability measurement decreases,wherein the second reliability range is different from the first reliability range, and wherein the second reliability range corresponds to a lower reliability of the non-volatile memory than the first reliability range; andadjust the write cache portion to the new size. |