US2018189183A1PendingUtilityA1

Data storage device adjusting command rate profile based on operating mode

54
Assignee: WESTERN DIGITAL TECH INCPriority: Mar 23, 2010Filed: Feb 27, 2018Published: Jul 5, 2018
Est. expiryMar 23, 2030(~3.7 yrs left)· nominal 20-yr term from priority
G06F 3/0659G06F 3/0629G06F 12/0866G06F 3/0613G06F 3/0679G06F 3/0611G06F 3/0674G06F 3/061G06F 11/3034Y02D10/00G06F 11/3055G06F 3/0625G06F 11/3058G06F 3/0634G06F 3/0673
54
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A disk drive is disclosed comprising a head actuated over a disk comprising a plurality of tracks, wherein each track comprises a plurality of data sectors comprising a disk block size. A host write command is received comprising data blocks having a host block size less than the disk block size. A misalignment is detected between the data blocks and the disk block size, and when the misalignment is detected, at least one of the data blocks is stored in a write cache. A command rate limit is adjusted as a function of the write cache, wherein the command rate limit defines a limit on a number of commands received from a host.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A disk drive comprising:
 a disk comprising a plurality of tracks, wherein each track comprises a plurality of data sectors comprising a disk block size;   a head actuated over the disk; and   control circuitry operable to:
 receive a host write command comprising data blocks having a host block size less than the disk block size; 
 detect a misalignment between the data blocks and the disk block size; 
 when the misalignment is detected, store at least one of the data blocks in a write cache; and 
 adjust a command rate limit as a function of the write cache, wherein the command rate limit defines a limit on a number of commands received from a host. 
   
     
     
         2 . The disk drive as recited in  claim 1 , wherein the control circuitry is operable to decrease the command rate limit as the free space in the write cache decreases. 
     
     
         3 . The disk drive as recited in  claim 1 , wherein the command rate limit defines a limit on the number of write commands received from the host. 
     
     
         4 . The disk drive as recited in  claim 1 , wherein the control circuitry is operable to:
 store access commands received from the host in a command queue;   generate flush commands in response to the data blocks stored in the write cache, wherein a flush command flushes data blocks from the write cache to the disk; and   select a number of flush commands to insert into the command queue based on the command rate limit.   
     
     
         5 . The disk drive as recited in  claim 4 , wherein the control circuitry is operable to select the number of flush commands to insert into the command queue based on the command rate limit and a number of host write commands stored in the command queue. 
     
     
         6 . The disk drive as recited in  claim 4 , wherein the control circuitry is operable to:
 execute a selection algorithm on the commands stored in the command queue; and   adjust the selection algorithm in response to the command rate limit.   
     
     
         7 . The disk drive as recited in  claim 6 , wherein the control circuitry is operable to bias the selection algorithm to select the flush commands over the host write commands when the command rate limit decreases. 
     
     
         8 . The disk drive as recited in  claim 1 , wherein the control circuitry is operable to:
 store access commands received from a host in a command queue;   generate a plurality of background commands including at least one of a write verify command, a refresh command, and a garbage collection command; and   select a number of background commands to insert into the command queue based on the command rate limit.   
     
     
         9 . A method of operating a disk drive comprising a head actuated over a disk including a plurality of tracks, wherein each track comprises a plurality of data sectors comprising a disk block size, the method comprising:
 receiving a host write command comprising data blocks having a host block size less than the disk block size;   detecting a misalignment between the data blocks and the disk block size;   when the misalignment is detected, storing at least one of the data blocks in a write cache; and   adjusting a command rate limit as a function of the write cache, wherein the command rate limit defines a limit on a number of commands received from a host.   
     
     
         10 . The method as recited in  claim 9 , further comprising decreasing the command rate limit as the free space in the write cache decreases. 
     
     
         11 . The method as recited in  claim 9 , wherein the command rate limit defines a limit on the number of write commands received from the host. 
     
     
         12 . The method as recited in  claim 9 , further comprising:
 storing host commands received from the host in a command queue;   generating flush commands in response to the data blocks stored in the write cache, wherein a flush command flushes data blocks from the write cache to the disk; and   selecting a number of flush commands to insert into the command queue based on the command rate limit.   
     
     
         13 . The method as recited in  claim 12 , further comprising selecting the number of flush commands to insert into the command queue based on the command rate limit and a number of host write commands stored in the command queue. 
     
     
         14 . The method as recited in  claim 12 , further comprising:
 executing a selection algorithm on the commands stored in the command queue; and   adjusting the selection algorithm in response to the command rate limit.   
     
     
         15 . The method as recited in  claim 14 , further comprising biasing the selection algorithm to select the flush commands over the host write commands when the command rate limit decreases. 
     
     
         16 . The method as recited in  claim 9 , further comprising:
 storing host commands received from the host in a command queue;   generating a plurality of background commands including at least one of a write verify command, a refresh command, and a garbage collection command; and   selecting a number of background commands to insert into the command queue based on the command rate limit.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.