IP Library Granted Patent US 8,775,720
Granted Patent B1
US 8,775,720 · App. 13/156,813 · Granted Jul 8, 2014

Hybrid drive balancing execution times for non-volatile semiconductor memory and disk

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 8,775,720
App. No.
13/156,813
Granted
Jul 8, 2014
Kind
B1
Abstract

A hybrid drive is disclosed comprising a head actuated over a disk, and a non-volatile semiconductor memory (NVSM). A first execution time needed to execute commands in a NVSM command queue is estimated, and a second execution time needed to execute commands in a disk command queue is estimated. An access command is inserted into a selected one of the NVSM command queue and the disk command queue in response to the first and second execution times, and one of the first and second execution times is updated in response to an estimated execution time of the access command.

Claims (76)

1. A hybrid drive comprising:

a disk;

a head actuated over the disk;

a non-volatile semiconductor memory (NVSM); and

control circuitry operable to:

generate a NVSM command queue operable to store access commands for the NVSM;

generate a disk command queue operable to store access commands for the disk;

estimate a first execution time needed to execute the commands in the NVSM command queue;

estimate a second execution time needed to execute the commands in the disk command queue;

insert an access command into a selected one of the NVSM command queue and the disk command queue in response to the first and second execution times;

update one of the first and second execution times in response to an estimated execution time of the access command;

execute a first pending access command stored in the disk command queue; and

when an actual execution time of the first pending access command is longer than an estimated execution time of the first pending access command, transfer a second pending access command from the disk command queue to the NVSM command queue.

2. The hybrid drive as recited in claim 1 , wherein the control circuitry is further operable to select the second pending access command to transfer in response to an execution time limit assigned to each access command stored in the disk command queue.

3. The hybrid drive as recited in claim 1 , wherein when the access command is a write command, the control circuitry is further operable to:

insert the access command into one of the NVSM command queue and the disk command queue in response to a migration policy; and

when one of the first and second execution times exceeds a threshold, transfer a pending access command between the disk command queue and the NVSM command queue.

4. A method of operating a hybrid drive, the hybrid drive comprising a disk, a head actuated over the disk, a non-volatile semiconductor memory (NVSM), the method comprising:

estimating a first execution time needed to execute commands in a NVSM command queue;

estimating a second execution time needed to execute commands in a disk command queue;

inserting an access command into a selected one of the NVSM command queue and the disk command queue in response to the first and second execution times;

updating one of the first and second execution times in response to an estimated execution time of the access command;

executing a first pending access command stored in the disk command queue; and

when an actual execution time of the first pending access command is longer than an estimated execution time of the first pending access command, transferring a second pending access command from the disk command queue to the NVSM command queue.

5. The method as recited in claim 4 , further comprising selecting the second pending access command to transfer in response to an execution time limit assigned to each access command stored in the disk command queue.

6. The method as recited in claim 4 , wherein when the access command is a write command, the method further comprising:

inserting the access command into one of the NVSM command queue and the disk command queue in response to a migration policy; and

when one of the first and second execution times exceeds a threshold, transferring a pending access command between the disk command queue and the NVSM command queue.

7. A hybrid drive comprising:

a disk;

a head actuated over the disk;

a non-volatile semiconductor memory (NVSM); and

control circuitry operable to:

generate a NVSM command queue operable to store access commands for the NVSM;

generate a disk command queue operable to store access commands for the disk;

estimate a first execution time needed to execute the commands in the NVSM command queue;

estimate a second execution time needed to execute the commands in the disk command queue;

insert an access command into a selected one of the NVSM command queue and the disk command queue in response to the first and second execution times;

update one of the first and second execution times in response to an estimated execution time of the access command;

insert the access command into one of the NVSM command queue and the disk command queue in response to a migration policy; and

when one of the first and second execution times exceeds a threshold, transfer a pending access command between the disk command queue and the NVSM command queue.

8. A hybrid drive comprising:

a disk;

a head actuated over the disk;

a non-volatile semiconductor memory (NVSM); and

control circuitry operable to:

generate a NVSM command queue operable to store access commands for the NVSM;

generate a disk command queue operable to store access commands for the disk;

estimate a first execution time needed to execute the commands in the NVSM command queue;

estimate a second execution time needed to execute the commands in the disk command queue;

insert an access command into a selected one of the NVSM command queue and the disk command queue in response to the first and second execution times;

update one of the first and second execution times in response to an estimated execution time of the access command;

when the access command comprises a read command and read data for the read command is stored on the NVSM and not on the disk, insert the read command into the NVSM command queue and transfer a pending access command from the NVSM command queue to the disk command queue in response to the first and second execution times; and

when the access command comprises a read command and the read data for the read command is stored on the disk and not on the NVSM, insert the read command into the disk command queue and transfer a pending access command from the disk command queue to the NVSM command queue in response to the first and second execution times.

9. The hybrid drive as recited in claim 8 , wherein the control circuitry is further operable to:

transfer the pending access command from the NVSM command queue to the disk command queue in response to a migration policy; and

transfer the pending access command from the disk command queue to the NVSM command queue in response to the migration policy.

10. The hybrid drive as recited in claim 9 , wherein the migration policy transfers a pending read command from the disk command queue to the NVSM command queue to reduce write amplification of the NVSM.

11. A method of operating a hybrid drive, the hybrid drive comprising a disk, a head actuated over the disk, a non-volatile semiconductor memory (NVSM), the method comprising:

estimating a first execution time needed to execute commands in a NVSM command queue;

estimating a second execution time needed to execute commands in a disk command queue;

inserting an access command into a selected one of the NVSM command queue and the disk command queue in response to the first and second execution times;

updating one of the first and second execution times in response to an estimated execution time of the access command;

inserting the access command into one of the NVSM command queue and the disk command queue in response to a migration policy; and

when one of the first and second execution times exceeds a threshold, transferring a pending access command between the disk command queue and the NVSM command queue.

12. A method of operating a hybrid drive, the hybrid drive comprising a disk, a head actuated over the disk, a non-volatile semiconductor memory (NVSM), the method comprising:

estimating a first execution time needed to execute commands in a NVSM command queue;

estimating a second execution time needed to execute commands in a disk command queue;

inserting an access command into a selected one of the NVSM command queue and the disk command queue in response to the first and second execution times;

updating one of the first and second execution times in response to an estimated execution time of the access command;

when the access command comprises a read command and read data for the read command is stored on the NVSM and not on the disk, inserting the read command into the NVSM command queue and transferring a pending access command from the NVSM command queue to the disk command queue in response to the first and second execution times; and

when the access command comprises a read command and the read data for the read command is stored on the disk and not on the NVSM, inserting the read command into the disk command queue and transferring a pending access command from the disk command queue to the NVSM command queue in response to the first and second execution times.

13. The method as recited in claim 12 , further comprising:

transferring the pending access command from the NVSM command queue to the disk command queue in response to a migration policy; and

transferring the pending access command from the disk command queue to the NVSM command queue in response to the migration policy.

14. The method as recited in claim 13 , wherein the migration policy transfers a pending read command from the disk command queue to the NVSM command queue to reduce write amplification of the NVSM.

Assignments (7)
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 038744 FRAME 0481 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0556 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045501/0714 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038722/0229 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038744/0281 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038744/0481 →