Method for tiering data based on read frequency
A storage device includes a non-volatile memory, and a controller. The non-volatile memory includes a first region including first data readable with a number of voltage application times being equal to one or two, and a second region including second data readable with a number of voltage application times being equal to or more than three. The controller includes read frequency information. The controller is configured to control writing, based on the read frequency information, a first segment with a first number of issuance times being equal to or more than a reference value to the first region or the second region, and a second segment with a second number of issuance times being less than the reference value to the second region.
1 . A storage device, comprising:
a non-volatile memory; and
a controller, wherein
the non-volatile memory comprises:
a first region including first data readable with a number of voltage application times being equal to one or two; and
a second region including second data readable with a number of voltage application times being equal to or more than three,
the controller is configured to:
manage read frequency information indicating a number of issuance times of a read command for each of segments of a read request unit; and
control writing, based on the read frequency information:
a first segment with a first number of issuance times being equal to or more than a reference value to the first region or the second region; and
a second segment with a second number of issuance times being less than the reference value to the second region,
wherein
the controller is further configured to:
determine based on the read frequency information, whether to move a third segment stored in a third region, different from the first region and the second region, with a third number of issuance times being equal to or more than the reference value to the first region or the second region, and to move a fourth segment stored in a fourth region, different from any of the first region to the third region, with a fourth number of issuance times being less than the reference value to the second region; and
control writing valid data of the third segment to the first region or the second region and control writing valid data of the fourth segment to the second region.
2 . The storage device according to claim 1 , wherein
the controller is further configured to:
manage the read frequency information in a data write command; and
execute garbage collection or wear leveling based on the stored read frequency information.
3 . The storage device according to claim 1 , wherein
the controller is further configured to manage the read frequency information included in a received command; and
when the first segment is received, the controller is further configured to read the fourth segment from the fourth region, control writing the first segment to the first region or the second region, and control writing the fourth segment to the second region.
4 . The storage device according to claim 1 , wherein
the controller is further configured to manage the read frequency information included in a received command, and
when the second segment is received, the controller is configured to read the third segment from the third region, control writing the third segment to the first region or the second region, and control writing the second segment to the second region.
5 . The storage device according to claim 1 , wherein the non-volatile memory includes a NAND-type flash memory.
6 . A storage device, comprising:
a non-volatile memory; and
a controller, wherein
the non-volatile memory comprises:
a first region including first data readable with a number of voltage application times being equal to one or two; and
a second region including second data readable with a number of voltage application times being equal to or more than three,
the controller is configured to:
manage read frequency information indicating a number of issuance times of a read command for each of segments of a read request unit; and
control writing, based on the read frequency information:
a first segment with a first number of issuance times being equal to or more than a reference value to the first region or the second region; and
a second segment with a second number of issuance times being less than the reference value to the second region,
wherein
the non-volatile memory includes
a first cell; and
a second cell,
the first cell having the first region and the second region,
the second cell having the second region out of the first region and the second region,
the controller is configured to:
receive a setting command of a namespace including allocation information of the first cell and the second cell; and
allocate the first cell and the second cell to the non-volatile memory based on the setting command.
7 . The storage device according to claim 6 , wherein the storage device is connectable to a host device comprising:
a host controller configured to:
generate the read frequency information; and
transmit a command including the generated read frequency information to the storage device and transmit the setting command of a namespace to the storage device.
8 . The storage device according to claim 7 , wherein
the host controller is configured to transmit the command to the storage device to write valid data of the first segment to the first region.
9 . The storage device according to claim 7 , wherein
the host controller is configured to transmit the command to the storage device to write valid data of the second segment to the second region.
10 . The storage device according to claim 6 , wherein the non-volatile memory includes a NAND-type flash memory.
11 . An information processing system comprising:
the storage device according to claim 1 ; and
a host device coupled to the storage device;
wherein the host device comprises:
a host controller configured to:
generate the read frequency information; and
transmit a command including the generated read frequency information to the storage device and transmit a setting command of a namespace to the storage device.
12 . The information processing system according to claim 11 , wherein
the controller is configured to:
store the read frequency information in a data write command; and
execute garbage collection or wear leveling based on the stored read frequency information.
13 . The information processing system according to claim 11 , wherein
the controller is configured to interpret the read frequency information included in a received command; and
when the first segment is received, the controller is configured to read the fourth segment from the fourth region, control writing the first segment to the first region or the second region, and control writing the fourth segment to the second region.
14 . The information processing system according to claim 11 , wherein
the controller is configured to interpret the read frequency information included in a received command, and
when the second segment is received, the controller is configured to read the third segment from the third region, control writing the third segment to the first region or the second region, and control writing the second segment to the second region.
15 . The information processing system according to claim 11 , wherein the non-volatile memory includes a NAND-type flash memory.
16 . The information processing system according to claim 11 , wherein the storage device includes an SSD.
17 . An information processing system comprising:
the storage device according to claim 6 ; and
a host device coupled to the storage device, wherein the host device comprises a host controller configured to:
generate the read frequency information; and
transmit a command including the generated read frequency information to the storage device and transmit a setting command of a namespace to the storage device.
18 . The information processing system according to claim 17 , wherein
the host controller is configured to transmit the command to the storage device to write valid data of the first segment to the first region.
19 . The information processing system according to claim 17 , wherein
the host controller is configured to transmit the command to the storage device to write valid data of the second segment to the second region.