System and method for optimizing garbage collection in data storage
AssigneeWestern Digital Technologies, Inc.
InventorsWilliam B. Boyle, Robert M. Fallone
Life of this patent
Estimating the term…
Abstract
The present invention is directed to systems and methods for optimizing garbage collection in data storage. The data storage may be a shingled disk drive or a non-volatile solid-state memory device. Garbage collection is optimized by selectively saving data read from certain locations of the data storage in response to host read commands and using the saved data for subsequent garbage collection operations. The decision of whether to save data may be based on a number of criteria, including whether the data is located in an area of the data storage that is due to be garbage collected in the near future. In this manner, certain garbage collection operations can be performed without having to re-read the saved data.
Claims14
A data storage comprising:
- control circuitry for reading and writing data in at least a portion of the data storage, the control circuitry configured to:
- in response to a read command from a host system, cause data to be read from a physical block address in the data storage and saved in temporary memory;
- determine, based at least partly on if the physical block address is located in a zone of the plurality of zones that has a number of invalid blocks that exceeds a minimum invalidity threshold, whether to save data in the temporary memory for subsequent use in performing garbage collection;
- and
- perform a garbage collection operation with the data in the temporary memory.
A data storage comprising:
- control circuitry for reading and writing data in at least a portion of the data storage, the control circuitry configured to:
- in response to a read command from a host system, cause data to be read from a physical block address in the data storage and saved in temporary memory;
- maintain a list comprising a plurality of zones sorted by a number of blocks with invalid data within each of the plurality of zones;
- determine, based at least partly on a location, in the list, of a zone of the plurality of zones comprising the physical block address, whether to save data in the temporary memory for subsequent use in performing garbage collection;
- and
- perform a garbage collection operation with the data in the temporary memory.
Dependencies are inferred from the claim text.