IP Library Granted Patent US 12,664,090
Granted Patent B2
US 12,664,090 · App. 18/448,261 · Granted Jun 23, 2026

Dynamic garbage collection operations

Inventors: Oleg Kragel (San Jose, CA); Chaoyang Wang (San Ramon, CA); Hongmei Xie (Sunnyvale, CA)
Assignee: Sandisk Technologies, Inc.
G06F12/0253
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,664,090
App. No.
18/448,261
Granted
Jun 23, 2026
Kind
B2
Abstract

Devices, methods and apparatuses for dynamically enabling and disabling garbage collection operations during periods of burst in host command activity. Host command latency is monitored during operation of a data storage device. During normal operation, host data is stored in host blocks in a memory of the data storage device. During periods of burst, the host command latency may increase above a garbage collection disable threshold. In response, an electronic processor disables garbage collection operations. Additionally, during this time, host data is stored in buffers in the memory of the data storage device. When the host command latency decreases below a garbage collection enable threshold, the data storage device returns to normal operation and enables garbage collection operations.

Claims (59)

1 . A data storage device, comprising:

a memory interface configured to interface with a non-volatile memory, the non-volatile memory including a plurality of memory blocks, the plurality of memory blocks including a plurality of host blocks and a plurality of garbage collection buffers; and

an electronic processor configured to:

receive a host write command including host data to store in the plurality of memory blocks,

perform the host write command,

determine, while performing the host write command, whether a host write command latency is greater than or equal to a first threshold,

write, when the host write command latency is less than the first threshold, the host data to the plurality of host blocks; and

disable, when the host write command latency is greater than or equal to the first threshold, garbage collection operations of the data storage device,

wherein, while garbage collection operations are disabled, the electronic processor is configured to write the host data to the plurality of garbage collection buffers.

2 . The data storage device of claim 1 , wherein the electronic processor is configured to disable garbage collection operations of the data storage device by setting a value of a flag associated with garbage collection operations.

3 . The data storage device of claim 1 , wherein the electronic processor is further configured to:

determine whether the host write command latency is less than or equal to a second threshold, and

enable, when the host write command latency is less than or equal to the second threshold, garbage collection operations of the data storage device.

4 . The data storage device of claim 3 , wherein the electronic processor is further configured to:

write, when the host write command latency is less than the second threshold, the host data to the plurality of host blocks, and

write, when the host write command latency is greater than or equal to the second threshold, the host data to the plurality of garbage collection buffers.

5 . The data storage device of claim 3 , wherein the electronic processor is further configured to:

determine, when the host write command latency is greater than or equal to the second threshold, whether a garbage collection buffer included in the plurality of garbage collection buffers is available, and

write, when the garbage collection buffer included in the plurality of garbage collection buffers is not available, the host data to the plurality of host blocks.

6 . The data storage device of claim 5 , wherein the electronic processor is further configured to:

write, when the garbage collection buffer included in the plurality of garbage collection buffers is available, the host data to the plurality of garbage collection buffers.

7 . A method for dynamic garbage collection operations, the method comprising:

receiving a host write command including host data to store in a plurality of memory blocks of a data storage device, wherein the plurality of memory blocks include a plurality of host blocks and a plurality of garbage collection buffers,

performing the host write command,

determining, while performing the host write command, whether a host write command latency is greater than or equal to a first threshold,

writing, when the host write command latency is less than the first threshold, the host data to the plurality of host blocks,

disabling, when the host write command latency is greater than or equal to the first threshold, garbage collection operations of the data storage device, and

writing, while the garbage collection operations are disabled, the host data to the plurality of garbage collection buffers.

8 . The method of claim 7 , wherein disabling garbage collection operations of the data storage device includes setting a value of a flag associated with garbage collection operations.

9 . The method of claim 7 , further comprising:

determining whether the host write command latency is less than or equal to a second threshold, and

enabling, when the host write command latency is less than or equal to the second threshold, garbage collection operations of the data storage device.

10 . The method of claim 9 , further comprising:

writing, when the host write command latency is less than the second threshold, the host data to the plurality of host blocks included in the plurality of memory blocks, and

writing, when the host write command latency is greater than or equal to the second threshold, the host data to the plurality of garbage collection buffers.

11 . The method of claim 9 , further comprising:

determining, when the host write command latency is greater than or equal to the second threshold, whether a garbage collection buffer included in the plurality of garbage collection buffers is available, and

writing, when the garbage collection buffer included in the plurality of garbage collection buffers is not available, the host data to the plurality of host blocks.

12 . The method of claim 11 , further comprising:

writing, when the garbage collection buffer included in the plurality of garbage collection buffers is available, the host data to the plurality of garbage collection buffers.

13 . An apparatus comprising:

means for interfacing with a non-volatile memory, the non-volatile memory including a plurality of memory blocks, the plurality of memory blocks including a plurality of host blocks and a plurality of garbage collection buffers;

means for receiving a host write command including host data to store in the plurality of memory blocks;

means for performing the host write command;

means for determining, while performing the host write command, whether a host write command latency is greater than or equal to a first threshold;

means for writing, when the host write command latency is less than the first threshold, the host data to the plurality of host blocks;

means for disabling, when the host write command latency is greater than or equal to the first threshold, garbage collection operations; and

means for writing, while garbage collection operations are disabled, the host data to the plurality of garbage collection buffers.

14 . The apparatus of claim 13 , further comprising:

means for setting a value of a flag associated with the garbage collection operations.

15 . The apparatus of claim 13 , further comprising:

means for determining whether the host write command latency is less than or equal to a second threshold; and

means for enabling, when the host write command latency is less than or equal to the second threshold, garbage collection operations.

16 . The apparatus of claim 15 , further comprising:

means for writing, when the host write command latency is less than the second threshold, the host data to the plurality of host blocks, and

means for writing, when the host write command latency is greater than or equal to the second threshold, the host data to the plurality of garbage collection buffers.

17 . The apparatus of claim 15 , further comprising:

means for determining, when the host write command latency is greater than or equal to the second threshold, whether a garbage collection buffer included in the plurality of garbage collection buffers is available, and

means for writing, when the garbage collection buffer included in the plurality of garbage collection buffers is not available, the host data to the plurality of host blocks.