IP Library Granted Patent US 11,640,260
Granted Patent B2
US 11,640,260 · App. 17/869,951 · Granted May 2, 2023

Fast garbage collection in zoned namespaces SSDs

Inventors: Hongmei Xie (Sunnyvale, CA); Aajna Karki (San Jose, CA); Xiaoying Li (Fremont, CA); Ji-Hyun In (Saratoga, CA); Dhanunjaya Rao Gorrle (Fremont, CA)
Assignee: Western Digital Technologies, Inc.
G06F3/0652G06F3/0604G06F3/064G06F3/0679G06F12/0246G06F12/0253G06F2212/7209
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 11,640,260
App. No.
17/869,951
Granted
May 2, 2023
Kind
B2
Abstract

A data storage device includes a memory device and a controller coupled to the memory device. The data storage device supports zoned namespace. The controller is configured to maintain a zone timestamp table that includes a corresponding timestamp for each zone and add a timestamp to each garbage collection block of the memory device. The controller is further configured to scan a garbage collection block from a last physical block address (PBA) entry to a first PBA entry, determine a zone timestamp for the scanned PBA entry, and compare the zone timestamp to a timestamp of the garbage collection block. The controller is further configured to create and maintain a zone timestamp table and create and maintain a zone based defragmentation table.

Claims (47)

1. A data storage device supporting zoned namespace, comprising:

a memory device; and

a controller coupled to the memory device, wherein the controller is configured to:

scan a garbage collection block from a last physical block address (PBA) entry to a first PBA entry;

determine a zone timestamp for a scanned PBA entry;

compare the zone timestamp to a timestamp of the garbage collection block;

create and maintain a zone timestamp table; and

create and maintain a zone based defragmentation table.

2. The data storage device of claim 1 , wherein the controller is configured to assign a timestamp attribute to a first garbage collection block allocated after the data storage device is initialized for a first time.

3. The data storage device of claim 1 , wherein the controller is configured to assign a timestamp attribute to a first garbage collection block during a first garbage collection operation in a lifetime of the memory device.

4. The data storage device of claim 1 , wherein a zone timestamp is the timestamp of the garbage collection block where a zone's first logical block address (LBA) is written to.

5. The data storage device of claim 4 , wherein the zone timestamp is updated upon each zone reset and rewrite.

6. The data storage device of claim 1 , wherein each new start of a zone is assigned a same timestamp as a source garbage collection block.

7. The data storage device of claim 1 , wherein the zone timestamp table includes entries for each zone, where zones that are initialized have a corresponding timestamp and zones that are not initialized are assigned an invalid timestamp.

8. A data storage device supporting zoned namespace, comprising:

a memory device; and

a controller coupled to the memory device, wherein the controller includes:

a shift module;

a zone timestamp table; and

comparison logic, wherein the shift module is configured to determine a zone of a logical block address (LBA) by shifting the LBA by a predetermined number of bits, wherein the shift determines a number of LBAs per zone, divides the LBA by a number of LBAs per zone, and rounds a resulting value down in order to determine the zone.

9. The data storage device of claim 8 , wherein the controller is configured to perform a backwards scan by performing a translation on a last physical block address (PBA) location then moving backwards one PBA to a second from last PBA and performing a translation on the second from last PBA.

10. The data storage device of claim 8 , wherein a host write can update a zone's timestamp even though garbage collection does not update the zone's timestamp.

11. A data storage device supporting zoned namespace, comprising:

a memory device; and

a controller coupled to the memory device, wherein the controller includes:

a shift module;

a zone timestamp table; and

comparison logic, wherein the controller tracks a zone-in-garbage collection block (GCB) valid (ZiG-Valid) bit for each zone in a zone timestamp table.

12. The data storage device of claim 11 , wherein the controller tracks a timestamp for each zone in the zone timestamp table.

13. The data storage device of claim 11 , wherein the ZiG-Valid bit is initialized for each zone to a value of 1 before a host device issues any write command to any zone.

14. The data storage device of claim 11 , wherein when a zone is reset, the ZiG-Valid bit is reverted to 1.

15. The data storage device of claim 14 , wherein for a Zig-Valid value of 1, the comparison logic determines data validity based on corresponding zone timestamp obtained from the zone timestamp table.

16. A data storage device, comprising:

a memory means; and

a controller coupled to the memory means, wherein the controller is configured to:

initiate a zone timestamp table;

assign a timestamp to a first garbage collection block (GCB);

write host data to the first GCB;

update the zone timestamp table;

allocate a second GCB;

write host data to the second GCB; and

update the zone timestamp table, wherein the controller tracks a zone-in GCB valid (ZiG-Valid) bit for each zone in the zone timestamp table.

17. The data storage device of claim 16 , wherein the controller is further configured to increment a timestamp by 1 and assign the incremented timestamp to the second GCB.

18. The data storage device of claim 16 , wherein the controller is further configured to:

select a source GCB;

determine data validity of the source GCB; and

perform garbage collection on the source GCB.

Assignments (8)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 27, 2022
From: XIE, HONGMEI; KARKI, AAJNA; LI, XIAOYING; IN, JI-HYUN; GORRLE, DHANUNJAYA RAO
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 060640/0833 →
Continuity (2)
Continuation 17350903 · Jun 17, 2021
Related Publication 20220405001A1 · Dec 22, 2022