US2018189183A1PendingUtilityA1

Data storage device adjusting command rate profile based on operating mode

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.

Join the waitlist — get patent alerts

Track US2018189183A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.