IP Library Granted Patent US 8,510,582
Granted Patent B2
US 8,510,582 · App. 12/840,813 · Granted Aug 13, 2013

Managing current and power in a computing system

Inventors: Samuel D. Naffziger (Fort Collins, CO); Sebastien J. Nussbaum (Lexington, MA)
Assignee: Advanced Micro Devices, Inc.
G06F1/324G06F1/3243G06F1/3296
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,510,582
App. No.
12/840,813
Granted
Aug 13, 2013
Kind
B2
Abstract

A system and method for efficient power transfer on a die. A semiconductor chip comprises on a die two or more computation units (CUs) utilizing at least two different voltage regulators and a power manager. The power manager reallocates power credits across the die when it detects an activity level of a given CU is below a given threshold. In response to receiving a corresponding number of donated power credits, each of the one or more selected CUs maintains a high activity level with a high performance P-state. When a corresponding workload increases, each CU maintains operation and an average power consumption corresponding to the high performance P-state by alternating between at least two different operational voltages. When the operational voltage drops during the alternation, the current drawn by the particular CU may exceed a given current limit. The power manager detects this current limit is exceeded and accordingly reallocates the power credits across the die.

Claims (42)

1. A microprocessor comprising:

at least a first computation unit (CU) and a second CU, each assigned a respective initial number of power credits; and

a power manager;

wherein each of the first CU and the second CU is configured to alternate between at least two discrete power-performance states (P-states) to maintain a virtual P-state corresponding to an average power, wherein the average power is a power target based upon a respective current number of power credits; and

wherein in response to detecting an amount of current drawn by the first CU exceeds a given current limit, the power manager is configured to reduce a number of power credits currently allocated to the first CU.

2. The microprocessor as recited in claim 1 , wherein the number of power credits currently allocated to the first CU exceeds an initial number of power credits allocated to the first CU by a given number of power credits, the given number of power credits having been borrowed from the second CU.

3. The microprocessor as recited in claim 1 , wherein the given current limit is a thermal design current (TDC) value for the voltage regulator utilized by the first CU, wherein the first CU utilizes a first voltage plane and the second CU utilizes a second voltage plane different from the first voltage plane.

4. The microprocessor as recited in claim 2 , wherein the power manager is configured to return the given number of power credits to the second CU in order to reduce number of power credits currently allocated to the first CU.

5. The microprocessor as recited in claim 1 , wherein the first CU is configured to:

operate in a higher virtual power performance state (P-state) corresponding to a higher average power and a higher power target with power credits borrowed from the second CU than without power credits borrowed from the second CU; and

maintain the higher virtual P-state despite a changing workload by alternating between at least two different discrete P-states.

6. The microprocessor as recited in claim 1 , wherein the number of power credits currently allocated to the first CU exceeds an initial number of power credits allocated to the first CU by a number of power credits borrowed from the second CU, and wherein in response to detecting the amount of current drawn by the first CU exceeds said limit, the power manager is configured to return fewer than all power credits borrowed from the second CU to the second CU.

7. The microprocessor as recited in claim 4 , wherein in response to detecting an activity level of the second CU is below a given threshold, the power manager is further configured to:

determine a number of power credits to donate to the first CU based at least in part on an activity level of the first CU; and

borrow from the second CU the respective number of power credits for use by the first CU.

8. The microprocessor as recited in claim 7 , wherein in response to detecting an activity level of the second CU has risen above a given threshold, the power manager is further configured to:

determine a number of power credits for the first CU to return to the second CU based at least in part on the activity level of the second CU; and

cause the first CU to return previously borrowed power credits to the second CU.

9. A method for efficient power transfer on a die, the method comprising:

measuring an activity level of at least one of a first computation unit (CU) and a second CU, each assigned a respective initial number of power credits;

alternating between at least two discrete power-performance states (P-states) in each of the first CU and the second CU to maintain a respective virtual P-state corresponding to an average power, wherein the average power is a power target based upon a respective current number of power credits; and

reducing a number of power credits currently allocated to the first CU, in response to detecting an amount of current drawn by the first CU of given exceeds a given current limit.

10. The method as recited in claim 9 , wherein the number of power credits currently allocated to the first CU exceeds an initial number of power credits allocated to the first CU by a given number of power credits, the given number of power credits having been borrowed from the second CU.

11. The method as recited in claim 9 , wherein the given current limit is a thermal design current (TDC) value for a voltage regulator utilized by the first CU, wherein the first CU utilizes a first voltage plane and the second CU utilizes a second voltage plane different from the first voltage plane.

12. The method as recited in claim 10 , further comprising returning the given number of power credits to the second CU in order to reduce number of power credits currently allocated to the first CU.

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

operating the first CU in a higher virtual P-state corresponding to a higher average power and a higher power target than a P-state utilized if the first CU used only the respective initial number of power credits; and

maintaining the higher virtual P-state despite a changing workload by alternating between at least two different discrete P-states.

14. The method as recited in claim 9 , wherein the number of power credits currently allocated to the first CU exceeds an initial number of power credits allocated to the first CU by a number of power credits borrowed from the second CU, and wherein in response to detecting the amount of current drawn by the first CU exceeds said limit, the method comprises returning fewer than all power credits borrowed from the second CU to the second CU.

15. The method as recited in claim 12 , wherein in response to detecting an activity level of a first CU is below a given threshold, the method further comprises:

determining a number of power credits to donate to the first CU based at least in part on an activity level of the first CU; and

borrowing from the second CU the respective number of power credits for use by the first CU.

16. The method as recited in claim 15 , wherein responsive to detecting an activity level of the second CU has risen above the given threshold, the method further comprises:

determining a number of power credits for the first CU to return to the second CU based at least in part on the activity level of the second CU; and

causing the first CU to return previously borrowed power credits to the second CU.

17. A computer readable storage medium storing program instructions operable to efficiently transfer power on a die, wherein the program instructions are executable to:

measure an activity level of at least one of a first computation unit (CU) and a second CU, each assigned a respective initial number of power credits;

alternate between at least two discrete power-performance states (P-states) in each of the first CU and the second CU to maintain a respective virtual P-state corresponding to an average power, wherein the average power is a power target based upon a respective current number of power credits; and

reduce a number of power credits currently allocated to the first CU, in response to detecting an amount of current drawn by the first CU of given exceeds a given current limit.

18. The storage medium as recited in claim 17 , wherein the number of power credits currently allocated to the first CU exceeds an initial number of power credits allocated to the first CU by a given number of power credits, the given number of power credits having been borrowed from the second CU.

19. The storage medium as recited in claim 18 , wherein the given current limit is a thermal design current (TDC) value for a voltage regulator utilized by the first CU, wherein the first CU utilizes a first voltage plane and the second CU utilizes a second voltage plane different from the first voltage plane.

20. The storage medium as recited in claim 18 , wherein the program instructions are further executable to return the given number of power credits to the second CU in order to reduce number of power credits currently allocated to the first CU.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2010
From: NAFFZIGER, SAMUEL D.; NUSSBAUM, SEBASTIEN J.
To: ADVANCED MICRO DEVICES, INC.
Reel/Frame 024721/0071 →
Continuity (1)
Related Publication 20120023345A1 · Jan 26, 2012