IP Library Granted Patent US 8,880,775
Granted Patent B2
US 8,880,775 · App. 12/142,915 · Granted Nov 4, 2014

System and method of garbage collection in a memory device

Inventors: Stefanus Stefanus (Singapore, SG); Feng Shen (Singapore, SG); Wei Loon Ng (Singapore, SG)
Assignee: Seagate Technology LLC
G06F12/0246G06F2212/7205G06F2212/1028G06F2212/1016
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,880,775
App. No.
12/142,915
Granted
Nov 4, 2014
Kind
B2
Abstract

In a particular embodiment, a controller is adapted to perform a garbage collection operation to remove redundant data, to predict a performance parameter associated with performance of the garbage collection operation, and to abort the garbage collection operation when the predicted performance parameter exceeds a threshold.

Claims (31)

1. A controller associated with a device, the controller adapted to perform functions comprising:

predicting a performance parameter associated with performance of a garbage collection operation in response to the device being in an active mode operating with full power consumption of a substantially constant power supply, the performance parameter being at least one of a garbage collection power or a garbage collection time, and aborting the garbage collection operation in response to the predicted performance parameter exceeding a threshold;

performing the garbage collection operation without predicting the performance parameter in response to the device being in an idle mode operating with reduced power consumption of the substantially constant power supply; and

identifying a substantially smallest data block to initiate the garbage collection operation at the substantially smallest data block in the idle mode.

2. The controller of claim 1 , wherein, in the active mode, the controller is configured to abort the garbage collection operation in response to a garbage collection time exceeding a time threshold, and wherein, in the active mode, the controller is configured to identify a number of pages to be copied from a storage medium and configured to predict the garbage collection time based on the identified number of pages.

3. The controller of claim 1 , wherein, in the active mode, the performance parameter comprises a garbage collection power, and wherein, in the active mode, the controller is configured to identify a number of pages to be copied from a storage medium and configured to predict the garbage collection power based on the identified number of pages.

4. The controller of claim 1 , wherein the controller is configured to abort the garbage collection operation in response to the device being in the active mode and in response to a predicted garbage collection power exceeding an available power related to a power source associated with a storage medium.

5. The controller of claim 1 , wherein the controller is adapted to identify a largest redundant data block to remove from a storage medium, to copy valid data of the largest redundant data block to a free location of the storage media, and to erase the largest redundant data block.

6. The controller of claim 1 , wherein the controller is coupled to a write buffer that is coupled to a storage medium and that is adapted to store a data block, wherein the controller is adapted to perform the garbage collection operation by copying redundant data to the write buffer and by flushing the write buffer during a next write operation.

7. The controller of claim 1 , wherein the controller is adapted to control read/write access to a solid-state storage medium.

8. A storage device comprising:

a solid-state memory adapted to store multiple data blocks including one or more redundant data blocks; and

a controller adapted to perform a garbage collection operation to remove redundant data without predicting a performance parameter associated with performance of the garbage collection operation in response to the storage device being in an idle mode operating with reduced power consumption of a substantially constant power supply, the controller is further adapted to predict a performance parameter associated with performance of the garbage collection operation and to abort the garbage collection operation in response to the predicted performance parameter exceeding a performance threshold, in response to the storage device being in an active mode operating with full power consumption of the substantially constant power supply, wherein the predicted performance parameter comprises at least one of a garbage collection power and a garbage collection time, and

wherein the controller is further configured to identify a substantially smallest data block and configured to initiate the garbage collection operation at the substantially smallest data block in the idle mode.

9. The storage device of claim 8 , wherein, in the active mode, the controller is configured to determine a number of pages to be copied during the garbage collection operation.

10. The storage device of claim 9 , wherein, in the active mode, the performance parameter is the garbage collection time, and wherein the garbage collection time comprises a time needed to perform the garbage collection operation based on the determined number of pages.

11. The storage device of claim 8 , further comprising:

a rotatable storage media to store user data;

a spindle motor adapted to rotate the rotatable storage media; and

a read/write assembly responsive to the controller and adapted to read and write data from and to the rotatable storage media;

wherein the controller is adapted to store meta-data associated with the user data at the solid-state memory, and wherein the controller is adapted to perform the garbage collection operation on redundant data stored at the solid-state memory and at the rotatable storage media.

12. The storage device of claim 8 , wherein the solid-state memory comprises one of a NAND flash memory and a NOR flash memory.

13. A method comprising:

receiving, by a controller of a device, a signal to initiate a garbage collection operation;

determining, by the controller, an operating mode of the device in response to receiving the signal;

predicting, by the controller, a performance parameter associated with performance of the garbage collection operation upon determining that the device is in an active mode operating with full power consumption of a substantially constant power supply;

performing, by the controller, the garbage collection operation without predicting the performance parameter upon determining that the device is in an idle mode operating with reduced power consumption of the substantially constant power supply; and

identifying, by the controller, a substantially smallest data block to initiate the garbage collection operation at the substantially smallest data block in the idle mode.

14. The method of claim 13 , wherein the predicted performance parameter indicates at least one of a power or time that would be consumed executing the garbage collection operation, wherein predicting the time that would be consumed executing the garbage collection operation comprises counting a number of pages to be copied to a memory location, wherein a copy operation includes an associated average time for each page.

15. The method of claim 13 , wherein the predicted performance parameter indicates at least one of a power or time that would be consumed executing the garbage collection operation, wherein predicting the power that would be consumed executing the garbage collection operation comprises counting a number of pages to be copied to a memory location, wherein a copy operation includes an associated average power required to copy each page.

16. The method of claim 13 , wherein performing the garbage collection operation comprises copying redundant data to a write buffer and flushing the write buffer during a next write operation.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Jul 23, 2025
From: THE BANK OF NOVA SCOTIA
To: SEAGATE TECHNOLOGY PUBLIC LIMITED COMPANY; SEAGATE TECHNOLOGY; SEAGATE TECHNOLOGY HDD HOLDINGS; I365 INC.; SEAGATE TECHNOLOGY LLC; SEAGATE TECHNOLOGY INTERNATIONAL; SEAGATE HDD CAYMAN; SEAGATE TECHNOLOGY (US) HOLDINGS, INC.
Reel/Frame 072193/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jul 19, 2013
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE
To: SEAGATE TECHNOLOGY LLC; EVAULT INC. (F/K/A I365 INC.); SEAGATE TECHNOLOGY INTERNATIONAL; SEAGATE TECHNOLOGY US HOLDINGS, INC.
Reel/Frame 030833/0001 →
SECURITY AGREEMENT Recorded Mar 24, 2011
From: SEAGATE TECHNOLOGY LLC
To: THE BANK OF NOVA SCOTIA, AS ADMINISTRATIVE AGENT
Reel/Frame 026010/0350 →
RELEASE Recorded Jan 19, 2011
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: SEAGATE TECHNOLOGY HDD HOLDINGS; MAXTOR CORPORATION; SEAGATE TECHNOLOGY LLC; SEAGATE TECHNOLOGY INTERNATIONAL
Reel/Frame 025662/0001 →
SECURITY AGREEMENT Recorded May 15, 2009
From: MAXTOR CORPORATION; SEAGATE TECHNOLOGY LLC; SEAGATE TECHNOLOGY INTERNATIONAL
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND FIRST PRIORITY REPRESENTATIVE; WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE
Reel/Frame 022757/0017 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2008
From: STEFANUS, STEFANUS; SHEN, FENG; NG, WEI LOON
To: SEAGATE TECHNOLOGY LLC
Reel/Frame 021143/0673 →
Continuity (1)
Related Publication 20090319720A1 · Dec 24, 2009