IP Library Granted Patent US 11,372,543
Granted Patent B2
US 11,372,543 · App. 16/845,685 · Granted Jun 28, 2022

Zone-append command scheduling based on zone state

Inventors: Shay Benisty (Beer Sheva, IL); Alexander Bazarsky (Holon, IL); Judah Gamliel Hahn (Ofra, IL)
Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
G06F3/0604G06F3/0631G06F3/0659G06F3/0679
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,372,543
App. No.
16/845,685
Granted
Jun 28, 2022
Kind
B2
Abstract

The present disclosure generally relates to scheduling zone-append commands for a zoned namespace (ZNS). Rather than taking zone-append commands in order or randomly, the zone-append commands can be scheduled in the most efficient manner consistent with the open zones of the ZNS. A zone priority is determined based upon the length of time that a zone has been open together with the zone status. Generally, the older the zone and/or the more full that a zone is increases the priority. Once the zone priority is established, the zone-append commands are scheduled to ensure the zone-append commands for the high priority zones are processed first so that the open zone can be filled prior to closing.

Claims (39)

1. A data storage device, comprising:

a memory device;

a controller coupled to the memory device; and

means to schedule zone-append commands based upon an age of at least one open zone and a fullness of the at least one open zone in a zone namespace (ZNS) environment, wherein the fullness is less than a total capacity of the at least one open zone, wherein the zone-append commands contain a same address as the at least one open zone in the ZNS environment, wherein a priority is calculated based upon the age of the at least one open zone and the fullness of the at least one open zone, and wherein the calculated priority of the at least one open zone is higher than a calculated priority of another open zone in the ZNS environment, the zone-append commands of the at least one open zone are scheduled before other zone-append commands of the another open zone, the at least one open zone is filled prior to the at least one open zone being closed, and the calculated priority increases when the age increases or the fullness increases.

2. The data storage device of claim 1 , further comprising means to determine an age of all open zones.

3. The data storage device of claim 1 , further comprising means to instruct a command fetcher to fetch commands in accordance with instructions from the means to schedule.

4. The data storage device of claim 1 , further comprising means to monitor zone states of all open zones.

5. A data storage device, comprising:

a memory device; and

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

determine a fullness of at least one open zone in a zone namespace (ZNS) environment, wherein the fullness is less than a total capacity of the at least one open zone;

determine an age of the at least one open zone in the ZNS environment;

calculate a priority for the at least one open zone based upon the determined fullness and the determined age; and

process zone-append commands for the at least one open zone based upon the calculated priority, wherein the zone-append commands contain a same address as an open zone of the at least one open zone in the ZNS environment, wherein the calculated priority of the at least one open zone is higher than a calculated priority of another open zone in the ZNS environment, the zone-append commands of the at least one open zone are scheduled before other zone-append commands of the another open zone, the at least one open zone is filled prior to the at least one open zone being closed, and the calculated priority increases when the determined age increases or the determined fullness increases.

6. The data storage device of claim 5 , wherein the controller is configured to determine the fullness, determine the age, and calculate the priority for all open zones of the ZNS environment.

7. The data storage device of claim 6 , wherein the controller is configured to process the zone-append commands in order of priority from a high priority to a low priority.

8. The data storage device of claim 5 , wherein the controller comprises a zone-append command scheduler.

9. The data storage device of claim 8 , wherein the controller is further configured to send the calculated priority to the zone-append command scheduler.

10. The data storage device of claim 5 , wherein calculating the priority comprises adding together the determined fullness and the determined age.

11. The data storage device of claim 5 , wherein the controller is configured to determine the fullness, determine the age, and calculate the priority prior to fetching data from a host device.

12. A data storage device, comprising:

a memory device; and

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

a command fetcher;

a command executor;

a flash interface module coupled to the memory device; and

a zone-append command scheduler coupled to the command fetcher, the command executor, and the flash interface module, wherein the zone-append command scheduler is configured to:

receive a zone-append command, wherein:

the zone-append command is based on a calculated priority;

the calculated priority is based on a fullness of at least one open zone and an age of the at least one open zone;

the fullness is less than a total capacity of the at least one open zone; and

the zone-append command contains a same address as the at least one open zone in a zone namespace (ZNS) environment; and

process the zone-append command for the at least one open zone based upon the calculated priority, wherein the calculated priority of the at least one open zone is higher than a calculated priority of another open zone in the ZNS environment, the zone-append command of the at least one open zone is scheduled before other zone-append commands of the another open zone, the at least one open zone is filled prior to the at least one open zone being closed, and the calculated priority increases when the age increases or the fullness increases.

13. The data storage device of claim 12 , wherein the zone-append command scheduler monitors an age of each zone in a zone namespace (ZNS) environment.

14. The data storage device of claim 13 , wherein the zone-append command scheduler monitors a fullness of each zone in the ZNS environment.

15. The data storage device of claim 12 , wherein the zone-append command scheduler is configured to instruct the command fetcher to fetch commands for each of zones based upon a calculated priority for each of the zones.

16. The data storage device of claim 15 , wherein the calculated priority for each of the zones is based upon an age of each of the zones and a fullness of each of the zones.

17. The data storage device of claim 12 , wherein the zone-append command scheduler is configured to provide a higher priority to zone-append commands to be written to a zone that has a longer period of time open compared to another zone.

18. The data storage device of claim 12 , wherein the zone-append command scheduler is configured to provide a higher priority to zone-append commands to be written to a zone that is closer to being full as compared to another zone.

Assignments (10)
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 →
RELEASE OF SECURITY INTEREST AT REEL 053482 FRAME 0453 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058966/0279 →
SECURITY INTEREST Recorded May 14, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 053482/0453 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2020
From: BENISTY, SHAY; BAZARSKY, ALEXANDER; HAHN, JUDAH GAMLIEL
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 052383/0976 →
Cited By (3)
US 12,608,159 US 12,632,379 US 12,681,851