IP Library Granted Patent US 11,853,203
Granted Patent B1
US 11,853,203 · App. 17/848,006 · Granted Dec 26, 2023

Systems and methods with variable size super blocks in zoned namespace devices

Inventors: Avinash Muthya Narahari (Bangalore, IN); Sampath Kumar Raja Murthy (Bangalore, IN); Aakar Deora (Bangalore, IN)
Assignee: Western Digital Technologies, Inc.
G06F12/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 11,853,203
App. No.
17/848,006
Granted
Dec 26, 2023
Kind
B1
Abstract

During a garbage collection process of a data storage device, superblocks may be filled with dummy data, which may decrease device performance. Embodiments described herein provide systems, methods, and computer readable media for varying a size of a superblock to reduce or eliminate dummy data in a data storage device including a plurality of superblocks. Each of the plurality of superblocks including a plurality of die blocks.

Claims (59)

1. A data storage device comprising:

a memory including a plurality of superblocks, wherein each superblock is comprised of a plurality of die blocks; and

a controller including an electronic processor and a controller memory, the controller memory storing a set of instructions that, when executed by the electronic processor, instruct the controller to:

determine, with the electronic processor, whether a garbage collection process has been initiated on a zone targeting a destination superblock of the plurality of superblocks as a destination for data,

determine one or more logical block addresses associated with the data consolidated to the zone in response to determining that the garbage collection process has been initiated on the zone,

determine whether the zone is full of the data based on the one or more logical block addresses that are determined, and

in response to determining that the zone is not full of the data, vary a size of the destination superblock,

wherein the memory further includes a block management layer configured to control allocation of the memory, and

wherein, to vary the size of the destination superblock, the set of instructions further instruct the controller to:

request the block management layer to remove one or more die blocks of the destination superblock,

remove, with the block management layer, the one or more die blocks, and

update metadata associated with the destination superblock based on removal of the one or more die blocks.

2. The data storage device of claim 1 , wherein the metadata associated with the destination superblock includes at least a metadata field indicating the size of the destination superblock.

3. The data storage device of claim 1 , wherein, to vary the size of the destination superblock, the set of instructions further instruct the controller to:

determine a minimum size of the zone,

request the block management layer to create a new superblock based on the minimum size,

receive an indication that the new superblock has been created,

copy the data consolidated to the zone to the new superblock; and

request the block management layer to release an old superblock.

4. The data storage device of claim 3 , wherein, to determine the minimum size of the zone, the set of instructions further instructs the controller to:

compare the data consolidated to the zone to a default size of the zone.

5. The data storage device of claim 1 , wherein determining whether the zone is full of the data is based on an analysis of whether the data is stored within each of the one or more logical block addresses.

6. The data storage device of claim 1 , wherein, in response to determining that the zone is full of the data, the set of instructions further instruct the controller to complete the garbage collection process.

7. A method for varying a size of a destination superblock of a plurality of superblocks, the method comprising:

determining, with an electronic processor, whether a garbage collection process has been initiated on a zone targeting the destination superblock as a destination for data;

determining one or more logical block addresses associated with data consolidated to the zone in response to determining that the garbage collection process has been initiated on the zone;

determining whether the zone is full of the data based on the one or more logical block addresses that are determined; and

in response to determining that the zone is not full of the data, varying the size of the destination superblock,

wherein, varying the size of the destination superblock includes:

requesting a block management layer to remove one or more die blocks of a plurality of die blocks associated with the destination superblock;

removing, with the block management layer, the one or more die blocks; and

updating metadata associated with the destination superblock based on removal of the one or more die blocks.

8. The method of claim 7 , wherein the metadata associated with the destination superblock includes at least a metadata field indicating the size of the destination superblock.

9. The method of claim 7 , wherein, varying the size of the destination superblock includes:

determining a minimum size of the zone;

requesting a block management layer to create a new superblock based on the minimum size;

receiving an indication that the new superblock has been created;

copying the data consolidated to the zone to the new superblock; and

requesting the block management layer to release an old superblock.

10. The method of claim 9 , wherein, determining the minimum size of the zone includes comparing the data consolidated to the zone to a default size of the zone.

11. The method of claim 9 , wherein determining whether the zone is full of the data is based on an analysis of whether the data is stored within each of the one or more logical block addresses.

12. The method of claim 9 , wherein, in response to determining that the destination superblock is full of data, the method includes completing the garbage collection process.

13. A non-transitory computer-readable medium comprising a set of instructions that, when executed by a controller, cause the controller to perform a set of operations comprising:

determining whether a garbage collection process has been initiated on a zone targeting a destination superblock of a plurality of superblocks as a destination for data;

determining one or more logical block addresses associated with the data consolidated to the zone in response to determining that the garbage collection process has been initiated on the zone;

determining whether the zone is full of the data based on the one or more logical block addresses that are determined; and

in response to determining that the zone is not full of the data, varying a size of the destination superblock,

wherein, to vary the size of the destination superblock, the set of operations includes:

requesting a block management layer to remove one or more die blocks of a plurality of die blocks associated with the destination superblock;

removing, with the block management layer, the one or more die blocks; and

updating metadata associated with the destination superblock based on removal of the one or more die blocks.

14. The non-transitory computer-readable medium of claim 13 , wherein the metadata associated with the destination superblock includes at least a metadata field indicating the size of the destination superblock.

15. The non-transitory computer-readable medium of claim 13 , wherein, to vary the size of the destination superblock, the set of operations includes:

determining a minimum size of the zone;

requesting a block management layer to create a new superblock based on the minimum size;

receiving an indication that the new superblock has been created;

copying the data consolidated to the zone to the new superblock; and

requesting the block management layer to release an old superblock.

16. The non-transitory computer-readable medium of claim 15 , wherein determining the minimum size of the zone includes comparing the data consolidated to the zone to a default size of the zone.

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 - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2022
From: MUTHYA NARAHARI, AVINASH; KUMAR RAJA MURTHY, SAMPATH; DEORA, AAKAR
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 060295/0475 →