HYBRID DRIVE THAT IMPLEMENTS A DEFERRED TRIM LIST
First Claim
1. A method of writing data in a data storage device having a magnetic storage medium divided into addressable blocks and a non-volatile solid-state device divided into addressable blocks, said method comprising:
- receiving a command to write data;
determining that the non-volatile solid-state device has a valid block with a logical address referenced by the command;
writing the data to a block of the magnetic storage medium, which has the same logical address as the valid block of the non-volatile solid-state device; and
after said writing, invalidating the valid block of the non-volatile solid-state device.
1 Assignment
0 Petitions
Accused Products
Abstract
A hybrid drive controller maintains a deferred trim list that holds a subset of logical addresses of writes performed on magnetic disks. For example, if a write command is issued to an LBA space that overlaps a portion stored in flash memory and the write is to be performed on the magnetic disks, the trimming of the overlapping portion in the flash memory will be deferred. Instead of trimming, the logical addresses associated with the overlapping portion will be added to the deferred trim list and trimming of the logical addresses in the deferred trim list will be carried out at a later time, asynchronous to the write that caused them to be added to the list.
219 Citations
20 Claims
-
1. A method of writing data in a data storage device having a magnetic storage medium divided into addressable blocks and a non-volatile solid-state device divided into addressable blocks, said method comprising:
-
receiving a command to write data; determining that the non-volatile solid-state device has a valid block with a logical address referenced by the command; writing the data to a block of the magnetic storage medium, which has the same logical address as the valid block of the non-volatile solid-state device; and after said writing, invalidating the valid block of the non-volatile solid-state device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of reading data from a data storage device having a magnetic storage medium divided into addressable blocks and a non-volatile solid-state device divided into addressable blocks, said method comprising:
-
receiving a command to read data from a block associated with a logical address; determining whether or not the logical address is included in a list of logical addresses of blocks of the non-volatile solid-state device to be invalidated; and based on said determining, reading the data from a block of the magnetic storage medium or a block of the non-volatile solid-state device. - View Dependent Claims (10, 11, 12)
-
-
13. A data storage device, comprising:
-
a magnetic storage medium divided into addressable blocks; a non-volatile solid-state device divided into addressable blocks; and a controller configured to control writing of data to blocks of the magnetic storage medium and to blocks of the non-volatile solid-state device in response to a command to write data to a block associated with a logical address and to invalidate the block of the non-volatile solid-state device associated with the logical address after writing the data in a block of the magnetic storage medium associated with the logical address if the non-volatile solid-state device has a valid block associated with the logical address. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification