IP Library › Granted Patent US 12,079,122
Granted Patent B2
US 12,079,122 · App. 17/899,137 · Granted Sep 3, 2024

Sequential garbage collection

Inventor: David A. Palmer (Boise, ID)
Assignee: Micron Technology, Inc.
G06F12/0253G06F12/0238G06F2212/202
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 12,079,122
App. No.
17/899,137
Granted
Sep 3, 2024
Kind
B2
Abstract

An example apparatus for sequential garbage collection can include a memory device including a plurality of memory blocks associated with a plurality of logical block addresses (LBAs). The example apparatus can include a controller coupled to the memory device. The controller can be configured to monitor a quantity of read operations and a quantity of write operations associated with a plurality of command sizes performed on a portion of the plurality of memory blocks. The controller can be configured to monitor a quantity of read operations and a quantity of write operations associated with a particular LBA. The controller can be configured to determine a type of garbage collection operation to perform based on the monitoring.

Claims (45)

1. An apparatus, comprising:

a memory device comprising a plurality of memory blocks associated with a plurality of logical block addresses (LBAs);

a controller coupled to the memory device and configured to:

monitor a quantity of read operations and a quantity of write operations associated with a plurality of command sizes, wherein the quantity of read operations and the quantity of write operations are performed on a portion of the plurality of memory blocks; and

determine a type of garbage collection operation to perform based on the monitoring.

2. The apparatus of claim 1 , wherein the controller is configured to, in response to a ratio of the quantity of read operations to the quantity of write operations being above a threshold ratio, perform a sequential garbage collection operation.

3. The apparatus of claim 1 , wherein the controller is configured to, in response to a ratio of the quantity of read operations to the quantity of write operations being below a threshold ratio, perform a non-sequential garbage collection operation.

4. The apparatus of claim 1 , wherein at least one of the plurality of command sizes is one of a 4 kilobyte (KB) read operation, a 16 KB read operation, a 128 KB read operation.

5. The apparatus of claim 1 , wherein at least one of the plurality of command sizes is one of a 4 kilobyte (KB) write operation, a 16 KB write operation, a 128 KB write operation.

6. The apparatus of claim 1 , wherein the controller is configured to clear a counter that maintains the quantity of read operations and the quantity of write operations at particular time intervals.

7. The apparatus of claim 1 , wherein the controller is configured to determine a total quantity of bytes written.

8. The apparatus of claim 7 , wherein the controller is configured to determine a ratio of the total quantity of bytes written over an allowed total bytes to be written and adjust a threshold that triggers the type of garbage collection operation.

9. The apparatus of claim 1 , wherein the controller is configured to compare an age of a memory device to an allowed age of the memory device to determine a memory device utilization value.

10. The apparatus of claim 9 , wherein the controller is configured to perform the type of garbage collection operation based on the memory device utilization value.

11. A method, comprising:

monitoring a quantity of read operations and a quantity of write operations that are associated with corresponding command sizes, wherein the quantity of read operations and the quantity of write operations are performed on a first portion of a plurality of memory blocks of a memory device;

monitoring a quantity of logical block addresses (LBAs) that are read from and a quantity of LBAs that are written to, wherein the quantity of LBAs are read from and the quantity of LBAs written to a second portion of the plurality of memory blocks of the memory device;

determining a ratio of the quantity of read operations and the quantity of write operations; and

determining a type of garbage collection operation to perform based on the ratio;

wherein, in response to the ratio being above a threshold ratio, the type of garbage collection operation is a sequential garbage collection operation.

12. The method of claim 11 , wherein, in response to the ratio being below the threshold ratio, the type of garbage collection operation is a non-sequential garbage collection operation.

13. The method of claim 11 , further comprising determining an LBA ratio of the quantity of LBAs read from to the quantity of LBAs written to.

14. The method of claim 13 , wherein, in response to the LBA ratio being above a threshold LBA ratio, the type of garbage collection operation is a sequential garbage collection operation.

15. The method of claim 13 , wherein, in response to the LBA ratio being below a threshold LBA ratio, the type of garbage collection operation is a non-sequential garbage collection operation.

16. The method of claim 11 , further comprising:

comparing an actual total bytes written (TBW) of the memory device to an allowed quantity of TBW of the memory device to determine a TBW ratio; and

comparing an actual age of the memory device to an allowed total age of the memory device to determine an age ratio.

17. The method of claim 16 , further comprising:

in response to the TBW ratio being above a threshold TBW ratio or the age ratio being above a threshold age ratio, performing a non-sequential garbage collection operation; and

in response to the TBW ratio being below a threshold TBW ratio or the age ratio being below a threshold age ratio, performing a sequential garbage collection operation.

18. An apparatus, comprising:

a memory device comprising a plurality of memory blocks associated with a plurality of logical block addresses (LBAs);

a controller coupled to the memory device and configured to:

monitor a quantity of read operations and a quantity of write operations that are associated with corresponding command sizes, wherein:

the quantity of read operations and the quantity of write operations are performed on a first portion of a plurality of memory blocks of a memory device; and

a read counter indicates the quantity of read operations and a write counter indicates the quantity of write operations;

monitor a quantity of logical block addresses (LBA) that are read from and a quantity of LBAs that are written to, wherein:

the quantity of LBAs are read from a second portion of the plurality of memory blocks of the memory device and the quantity of LBAs are written to the second portion; and

an LBA read counter value indicates the quantity of LBA that are read from and an LBA write counter value indicates the quantity of LBAS written to;

determine:

a read/write ratio of the quantity of read operations from the read counter value to the quantity of write operations from the write counter value; and

an LBA ratio of the LBA read counter value to the LBA write counter value; and

determine a type of garbage collection operation to perform based on the read/write ratio and the LBA ratio.

19. The apparatus of claim 18 , wherein, in response to the read/write ratio or the LBA ratio being above a threshold read/write ratio or above a threshold LBA ratio, respectively, the type of garbage collection operation is a sequential garbage collection operation.

20. The apparatus of claim 18 , wherein, in response to the read/write ratio or the LBA ratio being below a threshold read/write ratio or below a threshold LBA ratio, respectively, the type of garbage collection operation is a non-sequential garbage collection operation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2022
From: PALMER, DAVID A.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 060949/0853 →
Continuity (1)
Related Publication 20240070063A1 · Feb 29, 2024