IP Library Granted Patent US 8,706,985
Granted Patent B1
US 8,706,985 · App. 13/948,495 · Granted Apr 22, 2014

System and method for optimizing garbage collection in data storage

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,706,985
App. No.
13/948,495
Granted
Apr 22, 2014
Kind
B1
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.

Claims (23)

1. 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.

2. The data storage of claim 1 wherein the data storage device further comprises at least a solid state storage device.

3. The data storage of claim 1 wherein the data storage further comprises at least a disk comprising a plurality of tracks, wherein each track comprises a plurality of data sectors each assigned a physical block address.

4. The data storage of claim 1 , wherein the temporary memory comprises a read cache and the control circuitry is further configured to save the data by preventing the data from being flushed from the read cache.

5. The data storage of claim 1 , wherein the control circuitry is further configured to read and save additional data from an area in proximity to the physical block address if the data is saved for subsequent use in performing garbage collection.

6. The data storage of claim 1 , wherein the temporary memory is stored in flash memory.

7. The data storage of claim 1 , wherein the temporary memory is stored in non-volatile memory.

8. 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.

9. The data storage of claim 8 wherein the data storage device further comprises at least a solid state storage device.

10. The data storage of claim 8 wherein the data storage further comprises at least a disk comprising a plurality of tracks, wherein each track comprises a plurality of data sectors each assigned a physical block address.

11. The data storage of claim 8 , wherein the temporary memory comprises a read cache and the control circuitry is further configured to save the data by preventing the data from being flushed from the read cache.

12. The data storage of claim 8 , wherein the control circuitry is further configured to read and save additional data from an area in proximity to the physical block address if the data is saved for subsequent use in performing garbage collection.

13. The data storage of claim 8 , wherein the temporary memory is stored in flash memory.

14. The data storage of claim 8 , wherein the temporary memory is stored in non-volatile memory.

Assignments (13)
SECURITY AGREEMENT (SUPPLEMENTAL) Recorded Nov 14, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 069411/0208 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2024
From: SANDISK TECHNOLOGIES, INC.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 069168/0273 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 038744 FRAME 0481 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0556 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045501/0714 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038722/0229 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038744/0281 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038744/0481 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2013
From: BOYLE, WILLIAM B.; FALLONE, ROBERT M.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 031168/0704 →