IP Library Granted Patent US 12,346,597
Granted Patent B2
US 12,346,597 · App. 18/652,604 · Granted Jul 1, 2025

Host initiated garbage collection

Inventor: Yanhua Bi (Shanghai, CN)
Assignee: Micron Technology, Inc.
G06F3/0655G06F3/0604G06F3/0679G06F12/0246G06F12/0253G06F2212/7205
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,346,597
App. No.
18/652,604
Granted
Jul 1, 2025
Kind
B2
Abstract

Methods, systems, and devices for host initiated garbage collection are described. In some examples, a user accessible application or public interface of a host system may initiate a garbage collection procedure for a memory system using one or more vendor commands. For example, the host system and the memory system may support a first vendor command to check a fragmentation status or fragmentation parameter of the of the memory system. Additionally, the host system and the memory system may support a second vendor command to initiate a garbage collection procedure at the memory system, or to interrupt an ongoing garbage collection procedure. The host system and the memory system may also support a third vendor command to check the status of an initiated garbage collection procedure.

Claims (55)

1. A method by a memory system, comprising:

receiving a first vendor command requesting a status of the memory system;

transmitting the status of the memory system in response to receiving the first vendor command;

receiving a second vendor command to initiate a garbage collection procedure in response to transmitting the status;

initiating the garbage collection procedure in response to receiving the second vendor command;

receiving a third vendor command to identify a status of the garbage collection procedure;

receiving a write command to store the status of the garbage collection procedure at a buffer;

receiving a read command for the buffer; and

transmitting the status of the garbage collection procedure in response to receiving the third vendor command and receiving the read command.

2. The method of claim 1 , wherein the status of the memory system indicates a fragmentation parameter associated with addresses storing valid data relative to other addresses of the memory system.

3. The method of claim 1 , wherein the status of the garbage collection procedure comprises an indication of a portion of the garbage collection procedure that has been completed.

4. The method of claim 1 , wherein the status of the garbage collection procedure comprises an indication of an estimated duration until the garbage collection procedure will be complete.

5. The method of claim 1 , further comprising:

storing the status of the garbage collection procedure at the buffer in response to receiving the third vendor command and receiving the write command.

6. The method of claim 1 , wherein receiving the first vendor command comprises:

receiving a second write command to store the status of the memory system at a second buffer; and

receiving a second read command for the second buffer, wherein transmitting the status of the memory system is in response to receiving the second read command.

7. The method of claim 1 , wherein receiving the second vendor command comprises:

receiving a second write command to store an indication to initiate the garbage collection procedure at the buffer, wherein initiating the garbage collection procedure is in response to identifying the indication.

8. The method of claim 1 , further comprising:

receiving a fourth vendor command to interrupt the garbage collection procedure in response to receiving the first vendor command; and

interrupting the garbage collection procedure in response to receiving the fourth vendor command.

9. The method of claim 8 , wherein receiving the fourth vendor command comprises:

receiving a second write command to store an indication to interrupt the garbage collection procedure at the buffer, wherein interrupting the garbage collection procedure is in response to identifying the indication.

10. The method of claim 1 , further comprising:

storing an indication that the garbage collection procedure is ongoing in response to initiating the garbage collection procedure.

11. The method of claim 10 , further comprising:

delaying entering a low power mode of the memory system in response to the indication that the garbage collection procedure is ongoing.

12. The method of claim 1 , wherein the second vendor command to initiate the garbage collection procedure is associated with a host initiated defragmentation (HID) operation, and wherein the HID operation comprises the garbage collection procedure.

13. The method of claim 1 , further comprising:

setting, at the buffer, an indication that the garbage collection procedure is being performed based at least in part on initiating the garbage collection procedure.

14. A method by a host system, comprising:

transmitting a first vendor command requesting a status of a memory system;

receiving the status of the memory system in response to transmitting the first vendor command;

transmitting a second vendor command to initiate a garbage collection procedure in response to the status;

transmitting a third vendor command to identify a status of the garbage collection procedure stored in a buffer;

transmitting a write command to store the status of the garbage collection procedure at the buffer;

transmitting a read command for the buffer; and

receiving the status of the garbage collection procedure in response to transmitting the third vendor command and transmitting the read command.

15. The method of claim 13 , wherein the status of the memory system indicates a fragmentation parameter associated with addresses storing valid data relative to other addresses of the memory system.

16. The method of claim 13 , wherein the status of the garbage collection procedure comprises an indication of a portion of the garbage collection procedure that has been completed.

17. The method of claim 13 , wherein the status of the garbage collection procedure comprises an indication of an estimated duration until the garbage collection procedure will be complete.

18. The method of claim 13 , wherein transmitting the first vendor command comprises:

transmitting a second write command to store the status of the memory system at a second buffer; and

transmitting a second read command for the second buffer, wherein transmitting the status of the memory system is in response to receiving the read command.

19. The method of claim 13 , further comprising:

transmitting a fourth vendor command to interrupt the garbage collection procedure based at least in part on transmitting the first vendor command.

20. A non-transitory computer-readable medium storing code, the code comprising instructions executable by one or more processors to:

transmit a first vendor command requesting a status of a memory system;

receive the status of the memory system in response to transmitting the first vendor command;

transmit a second vendor command to initiate a garbage collection procedure in response to the status;

transmit a third vendor command to identify a status of the garbage collection procedure stored in a buffer;

transmit a write command to store the status of the garbage collection procedure at the buffer;

transmit a read command for the buffer; and

receive the status of the garbage collection procedure in response to transmitting the third vendor command and transmitting the read command.

Continuity (3)
Continuation 17652051 · Feb 22, 2022
Provisional Application 63265913 · Dec 22, 2021
Related Publication 20240361949A1 · Oct 31, 2024
References Cited (7)
US 9116704B1 · Nanda et al. · 2015 [cited by applicant]
US 10445229B1 · Kuzmin et al. · 2019 [cited by applicant]
US 20160357462A1 · Nam · 2016 [cited by examiner]
US 20190138219A1 · Gschwind et al. · 2019 [cited by applicant]
US 20190179747A1 · Kim · 2019 [cited by examiner]
US 20210294737A1 · Wang et al. · 2021 [cited by applicant]
US 20210397367A1 · Kang et al. · 2021 [cited by applicant]