IP Library Granted Patent US 11,513,736
Granted Patent B2
US 11,513,736 · App. 17/195,399 · Granted Nov 29, 2022

Revised host command generation for unaligned access

Inventor: Shay Benisty (Beer Sheva, IL)
Assignee: Western Digital Technologies, Inc.
G06F3/0659G06F3/064G06F3/0604G06F3/0656G06F3/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,513,736
App. No.
17/195,399
Granted
Nov 29, 2022
Kind
B2
Abstract

A data storage device includes a memory device and a controller. The controller is configured to receive host commands, such as write commands. Upon determining that a received plurality of write commands are sequential, but includes one or more write commands that are unaligned with a memory granularity of the memory device, the one or more write commands are revised such that the one or more write commands are aligned with the memory granularity. The revised write command includes a first of the one or more write commands and a portion of a second of the one or more write commands. A beginning of the revised write command is aligned with the memory granularity and the end of the revised write command is also aligned with the memory granularity.

Claims (39)

1. A data storage device, comprising:

a memory device; and

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

receive a first write command and a second write command, wherein a tail end of the first write command is not aligned to a boundary of the memory granularity of the memory device, wherein the memory granularity is a memory smallest unit, and wherein the first write command is offset by less than a logical block address (LBA) size;

revise the first write command such that the tail end of the revised first write command is aligned with the boundary of the memory granularity of the memory device, wherein revising the first write command comprises merging a first portion of the second write command with the first write command; and

write data associated with the revised first write command to the memory device.

2. The data storage device of claim 1 , wherein the second write command is not aligned with the boundary of the memory granularity of the memory device.

3. The data storage device of claim 2 , wherein the controller is further configured to revise the first write command such that an end of the revised first write command is aligned with the boundary of the memory granularity of the memory device.

4. The data storage device of claim 2 , wherein the controller is further configured to generate first internal data pointers for the revised first command, and wherein the first internal data pointers are stored in either a controller memory buffer (CMB) or a host memory buffer (HMB).

5. The data storage device of claim 1 , wherein the first write command and the second write command are sequential, and wherein the first write command and the second write command are not aligned with the memory granularity of the memory device.

6. The data storage device of claim 1 , wherein the first write command is unaligned in logical block address (LBA) and aligned in size with the memory granularity of the memory device.

7. The data storage device of claim 6 , wherein the second write command is unaligned in LBA and unaligned in size with the memory granularity of the memory device.

8. The data storage device of claim 7 , wherein a revised second write command is aligned in LBA and aligned in size with the memory granularity of the memory device.

9. The data storage device of claim 8 , wherein the first write command is revised to be unaligned in LBA and aligned in size with the memory granularity of the memory device.

10. A data storage device, comprising:

a memory device; and

a controller coupled to the memory device, the controller comprising a revised host command generator, wherein the revised host command generator comprises:

a command generator;

a timer;

a pending host command storage; and

a contiguous detector to detect sequential write commands;

wherein the revised host command generator is implemented for each submission queue of a plurality of submission queues.

11. The data storage device of claim 10 , wherein the controller is configured to:

determine that revised host command is enabled;

determine whether consecutive unaligned commands are present; and

upon determining that consecutive unaligned commands are present, generate a revised host command for the detected sequential write commands.

12. The data storage device of claim 10 , wherein the pending host command storage is distinct from the memory device.

13. The data storage device of claim 10 , wherein the command generator is configured to generate revised host write commands, wherein the revised host write commands are aligned to one or more of a size and an address of memory granularity of the memory device.

14. The data storage device of claim 10 , wherein the timer is configured to cause the controller to send a non-modified host write command to the memory device upon expiration of the timer.

15. The data storage device of claim 10 , wherein the controller is configured to post a completion message to a host device upon processing a revised host command.

16. The data storage device of claim 10 , wherein the pending host command storage is configured to store a host command until either the timer expires or the host command is revised and sent to the memory device.

17. The data storage device of claim 10 , wherein the controller is configured to dynamically align host write command sizes and addresses based upon detecting unaligned host write command sizes and addresses.

18. A data storage device, comprising:

memory means; and

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

modify a first command to align a size of the modified first command with a boundary of a memory granularity of the memory means, wherein the memory granularity is a memory smallest unit, wherein a tail end of the first command is not aligned with the boundary of the memory granularity prior to the modifying, and wherein the first command is offset by less than a logical block address (LBA) size, wherein modifying the first command comprises merging a first portion of a second command with the first command; and

modify the second command to align both a size and address of the modified second command with the boundary of the memory granularity of the memory means, wherein the first command and the second command are sequential.

19. The data storage device of claim 18 , wherein the controller is further configured to modify a third command to align an address of the modified third command with the memory granularity of the memory means.

20. The data storage device of claim 19 , wherein the modified first command has an unaligned address and wherein the modified third command has an unaligned size of the memory granularity of the memory means.

Assignments (10)
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
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 →
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 056285 FRAME 0292 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0001 →
SECURITY INTEREST Recorded May 19, 2021
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 056285/0292 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2021
From: BENISTY, SHAY
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 055530/0194 →
Continuity (1)
Related Publication 20220283739A1 · Sep 8, 2022