Reducing latency in a peripheral component interconnect express link
US-9015396-B2 · Apr 21, 2015 · US
US9507402B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9507402-B2 |
| Application number | US-201314090727-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 26, 2013 |
| Priority date | Sep 30, 2010 |
| Publication date | Nov 29, 2016 |
| Grant date | Nov 29, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
With embodiments of the invention, a more robust solution is provided using a storage driver that may already be used for the platforms operating system. This is efficient because the storage driver typically already monitors storage drive access requests, and thus knows when traffic is outstanding (performance may be critical) or when it's not outstanding (and power may be saved).
Opening claim text (preview).
What is claimed is: 1. A non-transitory memory storage device having instructions, that when executed in a computing platform, cause it to perform a method, comprising: monitoring, by a policy engine within a storage drive driver associated with a storage drive, storage drive access request(s) to the storage drive to detect a first storage drive access request to the storage drive; queuing the first storage drive access request; determining whether the first storage drive access is a media access request; upon positive determination, undoing any pending power-down actions for the storage drive to bring the storage drive to a fully powered-on mode to complete the first storage drive access request; and upon negative determination, partially undoing any pending power-down actions for the storage drive to bring the storage drive to a partially powered-on mode to complete the first storage drive access request. 2. The device of claim 1 , wherein: monitoring by the policy engine further comprises detecting a second storage drive access request to the storage drive and determining that the second storage drive access request to the storage drive is a media access request; the method further comprising: adjusting a latency tolerance setting of the storage drive by reducing the latency tolerance setting of the storage drive in response to determining the second storage drive access request is a media access request; and signaling to a voltage regulator for the storage drive to increase the load for the storage drive in response to determining the second storage drive access request is a media access request. 3. The device of claim 2 , wherein adjusting the latency tolerance setting of the storage drive comprises writing to a latency control register. 4. The device of claim 2 , adjusting the latency tolerance setting of the storage drive comprises adjusting the latency tolerance setting from a first setting associated with a first latency to a second setting associated with a second latency, the second latency being greater than the first latency and corresponding to one of a plurality of at least partially powered-on modes. 5. The device of claim 1 , wherein: monitoring by the policy engine further comprises detecting a third storage drive access request to the storage drive and determining that the third storage drive access request is a non-media access request; the method further comprising: signaling to a voltage regulator for the storage drive to power up the storage device to a standby state in response to determining the third storage drive access request is a non-media access request. 6. The device of claim 1 , wherein monitoring by the policy engine further comprises: detecting a third storage drive access request for the storage drive; and setting a first timer to identify a gap of time when a third storage drive access request is not pending. 7. The device of claim 6 , wherein monitoring by the policy engine further comprises: when the first timer expires, determining by the policy engine whether any previously pending access requests need to be serviced; and if no other previously pending access requests need to be serviced, setting a second timer which is longer than the first timer. 8. The device of claim 6 , wherein: monitoring by the policy engine further comprises, when the first timer expires, determining by the policy engine whether any previously pending access requests still need to be serviced; the method further comprising: adjusting a latency tolerance setting of the storage drive by adjusting by the policy engine a latency tolerance setting of the storage drive by increasing the latency tolerance setting if no other previously pending access requests need to be serviced; and signaling by the policy engine to a voltage regulator to reduce the load for the storage drive if no other previously pending access requests need to be serviced. 9. The device of claim 7 , wherein: adjusting by the policy engine a latency tolerance setting of the storage drive by increasing the latency tolerance setting when the second timer expires; and signaling by the policy engine to a voltage regulator to power off the storage drive when the second timer expires. 10. The device of claim 1 , wherein the instructions, when executed in the computing platform, further cause the device to determine that the storage drive is initially powered on. 11. A computing apparatus, comprising: a storage drive and a storage drive driver to facilitate access to the storage drive; a policy engine, within the storage drive driver, configured to: monitor storage drive access request(s) to the storage drive to detect a first storage drive access request to the storage drive; queue the first storage drive access request; determine whether the first storage drive access is a media access request; upon positive determination, undo any pending power-down actions for the storage drive to bring the storage drive to a fully powered-on mode to complete the first storage drive access request; and upon negative determination, partially undo any pending power-down actions for the storage drive to bring the storage drive to a partially powered-on mode to complete the first storage drive access request. 12. The apparatus of claim 11 , wherein: the policy engine monitors the storage drive access requests by determining a first storage drive access request to the storage drive is a media access request; the policy engine adjusts the latency tolerance setting by reducing the latency tolerance setting of the storage drive in response to determining the first storage drive access request is a media access request; and the policy engine signals to the voltage regulator by signaling to increase the load for the storage drive in response to determining the first storage drive access request is a media access request. 13. The apparatus of claim 11 , wherein: the policy engine monitors the storage drive access requests by determining a third storage drive access request is a non-media access request; and the policy engine signals the voltage regulator by powering up the storage device to a standby state in response to determining the third storage drive access request is a non-media access request. 14. The apparatus of claim 11 , wherein the policy engine monitors the storage drive access requests by: detecting a third storage drive access request for the storage drive; and setting a first timer to identify a gap of time when a third storage drive access request is not pending. 15. The apparatus of claim 14 , wherein the policy engine monitors the storage drive access requests by: when the first timer expires, determining by the policy engine whether any previously pending access requests need to be serviced; and if no other previously pending access requests need to be serviced, setting a second timer which is longer than the first timer. 16. The apparatus of claim 14 , wherein: the policy engine monitors the storage drive access requests by, when the first timer expires, determining by the policy engine whether any previously pending access requests still need to be serviced; the policy engine adjusts the latency tolerance setting of the storage drive by increasing the latency tolerance setting if no other previously pending access requests need to be serviced; and the policy engine signals to the voltage regulator by signaling to reduce the load for the storage drive if no other previously pending access requests still need to be serviced. 17. The apparatus
by switching off individual functional units in the computer system · CPC title
of memory devices · CPC title
Cross-Sectional Technologies · mapped topic
of disk drive devices · CPC title
Power saving in hard disk drive · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.