IP Library Granted Patent US 11,893,277
Granted Patent B2
US 11,893,277 · App. 17/180,782 · Granted Feb 6, 2024

Data storage device managing low endurance semiconductor memory write cache

Inventor: David R. Hall (Rochester, MN)
Assignee: Western Digital Technologies, Inc.
G06F3/0659G06F3/068G06F3/0616G06F3/0625G06F3/0674G06F12/0868G11B5/012G06F2212/1032
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,893,277
App. No.
17/180,782
Granted
Feb 6, 2024
Kind
B2
Abstract

A data storage device is disclosed comprising a head actuated over a disk, a first semiconductor memory (SM) having a first endurance, and a second SM having a second endurance lower than the first endurance. A write command is received from a host including write data. When a size of the write command is less than a threshold, the write data is stored in a first SM write cache in the first SM, and when the size of the write command is greater than the threshold, the write data is stored in a second SM write cache in the second SM.

Claims (61)

1. A data storage device comprising:

a disk;

a head actuated over the disk;

a first semiconductor memory (SM) having a first endurance, wherein the first SM is distinct from the disk;

a second SM having a second endurance lower than the first endurance, wherein the second SM is distinct from the disk and the first SM, and wherein the second endurance is based on a number of times the second SM is erased, and the second SM has a block size for garbage collection and erasure; and

control circuitry configured to:

receive a write command including write data from a host;

determine a size of write data of the write command;

when a determined size of the write command is less than a threshold that is based on the block size for garbage collection and erasure of the second SM, store, the write data in a first SM write cache in the first SM; and

when the determined size of the write command is greater than the threshold, store the write data in a second SM write cache in the second SM.

2. The data storage device as recited in claim 1 , wherein the first SM comprises a volatile SM and the second SM comprises a non-volatile SM.

3. The data storage device as recited in claim 1 , wherein the control circuitry is further configured to set the threshold to be additionally based on a predetermined throughput performance of the data storage device.

4. The data storage device as recited in claim 1 , wherein the control circuitry is further configured to:

receive a plurality of write commands from the host, wherein each write command includes write data;

store the write commands in a command queue; and

set the threshold to be additionally based on a number of commands in the command queue.

5. The data storage device as recited in claim 4 , wherein the control circuitry is further configured to increase the threshold when the number of commands in the command queue decreases.

6. The data storage device as recited in claim 1 , wherein the control circuitry is further configured to:

receive a plurality of write commands from the host, wherein each write command includes write data; and

set the threshold to be additionally based on an average size of the write data received in a plurality of write commands received from the host.

7. The data storage device as recited in claim 1 , wherein the control circuitry is further configured to set the threshold to be additionally based on a write transfer rate of the disk.

8. A data storage device comprising:

a disk;

a head actuated over the disk;

a semiconductor memory (SM), wherein the SM is distinct from the disk;

a non-volatile semiconductor memory (NVSM), wherein the NVSM is distinct from the disk and the SM; and

control circuitry configured to:

receive a plurality of write commands from a host, wherein each write command includes write data;

determine a size of write data of the write commands;

store, based upon the determining, the write commands in a command queue having a command queue depth;

store flushing, based upon the determining, at least some of the write data in a NVSM write cache; and

throttle use of the NVSM write cache based on at least one of the command queue depth, an average size of the write data, or a write transfer rate of the disk.

9. The data storage device as recited in claim 8 , wherein the control circuitry is further configured to throttle use of the NVSM write cache based on a predetermined throughput performance of the data storage device.

10. The data storage device as recited in claim 8 , wherein the control circuitry is further configured to increase use of the NVSM write cache when a number of commands in the command queue decreases.

11. The data storage device as recited in claim 8 , wherein the control circuitry is further configured to increase use of the NVSM write cache when the average size of the write data exceeds a first threshold.

12. The data storage device as recited in claim 11 , wherein the control circuitry is further configured to decrease use of the NVSM write cache when the average size of the write data exceeds a second threshold.

13. The data storage device as recited in claim 8 , wherein the control circuitry is further configured to increase use of the NVSM write cache when the write transfer rate of the disk exceeds a threshold.

14. The data storage device as recited in claim 13 , wherein the control circuitry is further configured to adjust the write transfer rate of the disk.

15. The data storage device as recited in claim 14 , wherein the control circuitry is further configured to decrease the write transfer rate of the disk to reduce power consumption of the data storage device.

16. A data storage device comprising:

a disk;

a head actuated over the disk;

a semiconductor memory (SM), wherein the SM is distinct from the disk;

a non-volatile semiconductor (NVSM) comprising a plurality of blocks, wherein the NVSM is distinct from the disk and the SM; and

control circuitry configured to:

receive a plurality of write commands from a host, wherein each write command includes write data;

determine a size of write data of the write commands;

store, based upon the determining, at least some of the write data in a NVSM write cache in the NVSM; and

generate a command execution order for the write commands based on whether flushing the write data of each write command will enable erasing one or more blocks of the NVSM.

17. The data storage device as recited in claim 16 , wherein the control circuitry is further configured to generate the command execution order so as to prioritize write commands that will enable erasing one or more blocks of the NVSM when the write data is flushed from the NVSM write cache to the disk.

18. A data storage device comprising:

a disk comprising a plurality of data tracks;

a head actuated over the disk;

a first semiconductor memory (SM) having a first endurance, wherein the first SM is distinct from the disk;

a second semiconductor memory (SM) a second endurance lower than the first endurance, wherein the second SM is distinct from the disk and the first SM; and

control circuitry configured to:

receive a plurality of write commands from a host, wherein each write command includes write data;

determine a size of write data of the write commands;

store, based upon the determining, at least some of the write data in a write cache; and

generate a command execution order for flushing cached write data to the disk, based on a refresh metric of victim data tracks adjacent to data tracks of the disk to which the cached write data are to be written.

19. The data storage device as recited in claim 18 , wherein the control circuitry is further configured to defer flushing the write data from the write cache to the disk when flushing the write data would trigger a refresh of a victim data track.

Assignments (5)
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 →
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 Feb 20, 2021
From: HALL, DAVID R.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 055346/0406 →