IP Library Granted Patent US 10,725,683
Granted Patent B2
US 10,725,683 · App. 15/967,522 · Granted Jul 28, 2020

Intelligent wide port phy usage

Inventors: Darin Edward Gerhart (Oronoco, MN); Nicholas Edward Ortmeier (Rochester, MN)
Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
G06F3/0634G06F3/0625G06F3/0635G06F3/0673G06F3/0679G06F3/0688Y02D10/154
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,725,683
App. No.
15/967,522
Granted
Jul 28, 2020
Kind
B2
Abstract

A controller of a storage device is described for handling communications with a host device. In some examples, the storage device includes a wide port comprising a plurality of phys. The wide port is configured to receive, via a first phy of the plurality of phys, a signal. The controller is configured to select, based on a respective power factor associated with each respective phy of the plurality of phys and a respective performance factor associated with each respective phy of the plurality of phys, a second phy of the plurality of phys to utilize for performing an operation associated with the received signal. In such examples, the wide port is further configured to perform, using the second phy, the operation associated with the received signal.

Claims (56)

1. A method of performing an operation for a storage device, comprising:

receiving a signal via a first phy of a plurality of phys;

selecting, by a storage device controller, a second phy of the plurality of phys to utilize one of a wake up time factor associated with the received signal and a respective weight associated with the received signal; and

performing the operation using the second phy, associated with the received signal.

2. The method according to claim 1 , wherein the selecting is based on a respective power factor associated with each respective phy of the plurality of phys and a respective performance factor associated with each respective phy of the plurality of phys.

3. The method of claim 2 , wherein the respective power factor indicates of power consumption needed to perform the operation using the respective phy.

4. The method according to claim 3 , wherein the respective power factor indicates an inverse level of power consumption.

5. The method of claim 2 , wherein the respective performance factor indicates a relative amount of time needed to perform the operation using the respective phy.

6. A method of performing an operation for a storage device, comprising:

receiving a signal at a first phy of a plurality of phys;

selecting, by a storage device controller, a second phy of the plurality of phys to utilize for performing an operation associated with the received signal; and

performing, using the second phy, the operation associated with the received signal, wherein a respective power factor comprises a scaled percentage of a respective power value associated with each respective phy of the plurality of phys, and wherein a respective performance factor comprises a scaled percentage of a respective performance value associated with each respective phy of the plurality of phys.

7. The method according to claim 6 , wherein the selecting of the second phy is based on the respective power factor associated with each respective phy of the plurality of phys and the respective performance factor associated with each respective phy of the plurality of phys.

8. The method of claim 6 , further comprising:

for each phy of the plurality of phys:

determining, by the controller, a power mode and a value based on the power mode for the respective phy; and

multiplying, by the controller, the power value with the scaled percentage of the respective power value associated with the respective phy to determine the power factor associated with the respective phy; and

selecting, by the controller and based on the respective power factor associated with each of the respective phys, the second phy.

9. The method of claim 6 , wherein the scaled percentage of the power factor is equal to one hundred percent.

10. The method of claim 6 , wherein the second phy comprises the phy of the plurality of phys with a power factor that has a greatest value.

11. The method of claim 8 , wherein the power mode is one of an active mode, a slumber mode and a partial power mode.

12. The method of claim 11 , wherein the active mode indicates that the respective phy may receive signals from a host device and perform operations, wherein the slumber mode indicates that the respective phy may neither receive signals from the host device nor perform operations and that the respective phy requires a first wake-up time duration to be transitioned to the active mode, and wherein the partial power mode indicates that the respective phy may neither receive signals from the host device nor perform operations and that the respective phy requires a second wake-up time duration to be transitioned to the active mode, wherein the second wake-up time duration is less than the first wake-up time duration.

13. The method of claim 6 , further comprising:

for each phy of the plurality of phys:

determining, by the controller, an initiator response factor for the respective phy, wherein the initiator response factor indicates a level of an initiator turnaround time for the respective phy;

determining, by the controller, a phy availability time factor for the respective phy, wherein the phy availability time factor indicates a level of time for the respective phy to become available to process a new operation based on the expected processing times of pending operations in a queue to be processed by the respective phy;

determining, by the controller, a wake-up time factor for the respective phy, wherein the wake-up time factor indicates a level of time for the respective phy to switch to an active power mode;

determining, by the controller, based on the initiator response factor for the respective phy, the phy availability time factor for the respective phy, the wake-up time factor for the respective phy, and a respective weight for each of the initiator response factor, the phy availability time factor, and the wake-up time factor, the respective performance value for the respective phy; and

multiplying, by the controller, the respective performance value with the scaled percentage of the performance value to determine the performance factor; and

selecting, by the controller, based on the respective performance factors, the second phy.

14. The method of claim 6 , wherein the scaled percentage of the performance value is equal to one hundred percent.

15. The method of claim 13 , wherein the second phy comprises the phy of the plurality of phys with the largest performance factor.

16. The method of claim 13 , wherein a sum of the respective weights for each of the initiator response factor, the phy availability time factor, and the wake-up time factor is equal to one hundred percent.

17. The method of claim 6 , wherein a sum of the scaled percentage of the power factor and the scaled percentage of the performance value is equal to one hundred percent.

18. A storage device, comprising:

a wide port comprising at least two phys, wherein the wide port is configured to:

receive, via a first phy of the at least two phys, a signal; and

a controller configured to:

select, based on a respective power factor associated with each respective phy of the plurality of phys and a respective performance factor associated with each respective phy of the plurality of phys, a second phy of the plurality of phys to utilize one of a wake up time factor associated with the received signal and a respective weight associated with the received signal, wherein the wide port is further configured to perform, using the second phy, the operation associated with the received signal.

19. The storage device of claim 18 , wherein the respective power factor indicates an inverse level of power consumption needed to perform the operation using the respective phy, and wherein the respective performance factor indicates a relative amount of time needed to perform the operation using the respective phy.

20. The storage device of claim 18 , wherein the second phy is different than the first phy.

21. An apparatus, comprising:

means for receiving a signal via a first phy of a plurality of phys;

means for selecting, by a storage device controller, a second phy of the plurality of phys to utilize one of a wake up time factor associated with the received signal and a respective weight associated with the received signal; and

means for performing the operation using the second phy, associated with the received signal.

22. An apparatus to perform an operation for a storage device, comprising:

means for receiving a signal at a first phy of a plurality of phys;

means for selecting, by a storage device controller, a second phy of the plurality of phys to utilize for performing an operation associated with the received signal; and

means for performing, using the second phy, the operation associated with the received signal, wherein a respective power factor comprises a scaled percentage of a respective power value associated with each respective phy of the plurality of phys, and wherein a respective performance factor comprises a scaled percentage of a respective performance value associated with each respective phy of the plurality of phys.

23. The apparatus according to claim 22 , wherein the means for the selecting of the second phy is configured to make a selection based on the respective power factor associated with each respective phy of the plurality of phys.

24. A storage device, comprising:

a port comprising at least two phys, wherein the port is configured to:

receive, via a first phy of the at least two phys, at least a first signal; and

a controller configured to:

select, based on a respective power factor associated with each respective phy of the plurality of phys and a respective performance factor associated with each respective phy of the plurality of phys, a second phy of the plurality of phys to utilize one of a wake up time factor associated with the received signal and a respective weight associated with the received signal.

25. The storage device according to claim 24 , wherein the port is a wide port.

Assignments (10)
SECURITY AGREEMENT (SUPPLEMENTAL) Recorded Nov 14, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 069411/0208 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2024
From: SANDISK TECHNOLOGIES, INC.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 069168/0273 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
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 →
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 →
RELEASE OF SECURITY INTEREST AT REEL 052915 FRAME 0566 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 059127/0001 →
SECURITY INTEREST Recorded Feb 6, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052915/0566 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2018
From: GERHART, DARIN EDWARD; ORTMEIER, NICHOLAS EDWARD
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 046962/0671 →
Continuity (2)
Continuation 15061768 · Mar 4, 2016
Related Publication 20180253250A1 · Sep 6, 2018