IP Library Granted Patent US 10,747,441
Granted Patent B2
US 10,747,441 · App. 15/690,992 · Granted Aug 18, 2020

Efficient allocation of storage connection resources

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 10,747,441
App. No.
15/690,992
Granted
Aug 18, 2020
Kind
B2
Abstract

Devices and techniques for efficient allocation of storage connection resources are disclosed herein. An active trigger for a storage device is received when the storage device is in an idle state. A workload that corresponds to the storage device is measured to determine that the workload meets a threshold. Connection parameters, for a connection to the storage device, are negotiated based on the workload in response to receipt of the active trigger and the workload meeting the threshold. The workload is then executed on the storage device via the connection using the connection parameters.

Claims (50)

1. A device for allocation of storage connection resources, the device comprising:

a buffer; and

processing circuitry to:

receive an active trigger for a storage device when the storage device is in an idle state;

measure a workload in the buffer that corresponds to the storage device to determine that the workload is in a burst period, wherein a burst period is differentiated from a sustained period by a threshold applied to the measure of the workload;

negotiate connection parameters for the workload, for a connection to the storage device, based on the workload in response to receipt of the active trigger and the burst period,

wherein the negotiated connection parameters are for a lower speed than for the workload in a sustained period, the lower speed sufficient to complete the workload within a quality of service timeframe given an inactive period predicted to follow the burst period,

wherein the connection includes a set of wires, and

wherein the connection parameters include a selection of wires in the set of wires or a signal format for the set of wires; and

execute the workload on the storage device via the connection using the connection parameters to complete execution of the workload in the inactive period when the inactive period follows the burst period.

2. The device of claim 1 , wherein the connection operates in accordance to a Universal Flash Storage (UPS) two family of standards.

3. The device of claim 2 , wherein the connection parameters include a number of lanes to use.

4. The device of claim 2 , wherein the connection parameters include a speed.

5. The device of claim 1 , wherein, to measure the workload, the processing circuitry measures a command statistic of a command queue for the storage device, wherein the command queue is in the buffer.

6. The device of claim 5 , wherein the command statistic includes at least one of a count of commands in the command queue, a total size of commands in the command queue, a frequency of arrival of commands in the command queue, a connection bandwidth for commands in the command queue, or an input-output rate for commands in the command queue.

7. The device of claim 1 , wherein the device is part of a host system to which the storage device is connected, when in operation.

8. The device of claim 1 , wherein the device is a controller packaged in the storage device.

9. The device of claim 1 , wherein the storage device is a three-dimensional NAND Flash storage device.

10. A method for allocation of storage connection resources, the method comprising:

receiving an active trigger for a storage device when the storage device is in an idle state;

measuring a workload in a buffer that corresponds to the storage device to determine that the workload is in a burst period, wherein a burst period is differentiated from a sustained period by a threshold applied to the measure of the workload;

negotiating connection parameters for the workload, for a connection to the storage device, based on the workload in response to receipt of the active trigger and the burst period,

wherein the negotiated connection parameters are for a lower speed than for the workload in a sustained period, the lower speed sufficient to complete the workload within a quality of service timeframe given an inactive period predicted to follow the burst period,

wherein the connection includes a set of wires, and

wherein the connection parameters include a selection of wires in the set of wires or a signal format for the set of wires; and

executing the workload on the storage device via the connection using the connection parameters to complete execution of the workload in the inactive period when the inactive period follows the burst period.

11. The method of claim 10 , wherein the connection operates in accordance to a Universal Flash Storage (UFS) two family of standards.

12. The method of claim 11 , wherein the connection parameters include a number of lanes to use.

13. The method of claim 11 , wherein the connection parameters include a speed.

14. The method of claim 10 , wherein measuring the workload includes measuring a command statistic of a command queue for the storage device.

15. The method of claim 14 , wherein the command statistic includes at least one of a count of commands in the command queue, a total size of commands in the command queue, a frequency of arrival of commands in the command queue, a connection bandwidth for commands in the command queue, or an input-output rate for commands in the command queue.

16. The method of claim 10 , wherein operations of the method are performed by a host system to which the storage device is connected, when in operation.

17. The method of claim 10 , wherein operations of the method are performed by a controller packaged in the storage device.

18. The method of claim 10 , wherein the storage device is a three-dimensional NAND Flash storage device.

19. A non-transitory machine readable medium including instructions that, when executed by processing circuitry, cause the processing circuitry to perform operations comprising:

receiving an active trigger for a storage device when the storage device is in an idle state;

measuring a workload in a buffer that corresponds to the storage device to determine that the workload is in a burst period, wherein a burst period is differentiated from a sustained period by a threshold applied to the measure of the workload;

negotiating connection parameters for the workload, for a connection to the storage device, based on the workload in response to receipt of the active trigger and the burst period,

wherein the negotiated connection parameters are for a lower speed than for the workload in a sustained period, the lower speed sufficient to complete the workload within a quality of service timeframe given an inactive period predicted to follow the burst period,

wherein the connection includes a set of wires, and

wherein the connection parameters include a selection of wires in the set of wires or a signal format for the set of wires; and

executing the workload on the storage device via the connection using the connection parameters to complete execution of the workload in the inactive period when the inactive period follows the burst period.

20. The machine readable medium of claim 19 , wherein the connection operates in accordance to a Universal Flash Storage (UFS) two family of standards.

21. The machine readable medium of claim 20 , wherein the connection parameters include a number of lanes to use.

22. The machine readable medium of claim 20 , wherein the connection parameters include a speed.

23. The machine readable medium of claim 19 , wherein measuring the workload includes measuring a command statistic of a command queue for the storage device.

24. The machine readable medium of claim 23 , wherein the command statistic includes at least one of a count of commands in the command queue, a total size of cominands in the command queue, a frequency of arrival of commands in the command queue, a connection bandwidth for commands in the command queue, or an input-output rate for commands in the command queue.

25. The machine readable medium of claim 19 , wherein operations of the machine readable medium are performed by a host system to which the storage device is connected, when in operation.

26. The machine readable medium of claim 19 , wherein operations of the machine readable medium are performed by a controller packaged in the storage device.

27. The machine readable medium of claim 19 , wherein the storage device is a three-dimensional NAND Flash storage device.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050709/0838 →
RELEASE OF SECURITY INTEREST Recorded Jul 20, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 046597/0333 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2018
From: JEAN, SEBASTIEN ANDRE
To: MICRON TECHNOLOGY, INC.
Reel/Frame 045952/0702 →
SUPPLEMENT NO. 6 TO PATENT SECURITY AGREEMENT Recorded Nov 1, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 044348/0253 →
SUPPLEMENT NO. 6 TO PATENT SECURITY AGREEMENT Recorded Nov 1, 2017
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 044653/0333 →