Managing VT for reduced power using power setting commands in the instruction stream
AssigneeInternational Business Machines Corporation
InventorsAlvar Antonio Dean, Patrick Edward Perry, Sebastian Theodore Ventrone
Life of this patent
Estimating the term…
Abstract
An integrated circuit includes a plurality of functional units which are capable of operating at more than one power/performance level and a power control unit. The power control unit controls the power/performance consumption of the different functional units to optimize operation of the integrated circuit. Special power control instructions are added to user applications in order to control via the power control unit, the power consumption of the different functional units.
Claims32
A method of operating a programmable integrated circuit having plural functional units each operable at plural operable power levels, the integrated circuit including a functional unit power control unit including a Vt command decoder for receiving an instruction stream from an instruction prefetch queue and responsive to pre-inserted power control instructions generated by a compiler or a post-processing program for altering the power status of selected one or more of said functional units, said method comprising:
- storing plural instructions, said instructions including the pre-inserted power control instructions, at least one of the stored power control instructions including data identifying a specific one of the functional units,
- extracting said stored instructions in a sequence,
- examining each extracted instruction to determine if it is a power control instruction, and
- changing the power status of at least the specific one of the functional units in response to the power control instruction to one of the plural operable power levels.
An integrated circuit designed to use functional unit power control instructions inserted by a compiler or post-processing program, comprising:
- plural functional units each operable at plural operable power levels, different ones of the plural operable power levels corresponding to different execution speeds of the functional units;
- and
- a Vt command decode unit for receiving an instruction stream from an instruction prefetch queue and decoding an addressed functional unit power control instruction inserted by the compiler or the post-processing program, and
- means for changing a power level for a functional unit to one of the plural operable power levels in response to said addressed functional unit power control instruction.
For an integrated circuit having plural functional units each operable at plural operating power levels, the integrated circuit including a functional unit power control unit including a Vt command decoder for receiving an instruction stream from an instruction prefetch queue and responsive to power control instructions inserted by a compiler or post-processing program for altering the power status of one or more of said functional units, a method of modifying a sequence of instructions of an application to add power control instructions for controlling the power status of the functional units, said method comprising:
- a) selecting an unprocessed functional unit from a list of functional units,
- b) examining the instructions of the application to identify a segment of instructions which exclusively exercises the selected functional unit, and
- c) upon identifying a segment,
- c=b 1) inserting, via the compiler or the post-processing program, a power up control instruction in a sequence preceding the identified segment addressed to the selected functional unit, and
- c2) inserting, via the compiler or the post-processing program, a power down control instruction in the sequence following the identified segment addressed to the selected functional unit, wherein the power down control instruction controls a power status of the selected functional unit to be one of the plural operating power levels.
A method of operating a programmable integrated circuit having plural functional units each operable at plural operating power levels, the integrated circuit including a functional unit power control unit including a Vt command decoder for receiving an instruction stream from an instruction prefetch queue and responsive to power control instructions for altering the power status of selected one or more of said functional units, said method comprising:
- storing plural instructions, said instructions including power control instructions, at least one of the stored power control instructions including data identifying a specific one of the functional units;
- extracting said stored instructions in a sequence;
- examining each extracted instruction to determine if it is a power control instruction;
- and
- changing the power status of at least the specific one of the functional units in response to the power control instruction,
- wherein changing the power status includes either decreasing the power consumption of the specific functional unit in response to a power down instruction or increasing the power consumption of the specific functional unit in response to a power up instruction, and
- wherein said decreasing the power consumption of the specific functional unit includes decreasing the power consumption of the specific functional unit to one of the plural operating power levels only after a lapse of at least a predetermined time after responding to the power down instruction.
An integrated circuit designed to use functional unit power control instructions inserted by a compiler or post-processing program, comprising:
- plural functional units each operable at plural operating power levels, different ones of the plural operating power levels corresponding to different execution speeds of the functional units;
- a Vt command decode unit for receiving an instruction stream from an instruction prefetch queue and decoding an addressed functional unit power control instruction;
- means for changing a power level for at least one of the plural functional units in response to said addressed functional unit power control instruction;
- a set of timers, each timer for a different one of the functional units;
- means to initiate a timer in response to a decoded functional unit power down control instruction addressed to the corresponding functional unit;
- and
- power control means responsive to said power down control instruction and expiration of said timer to decrease the power consumption of said at least one of the plural functional units,
- wherein the means for changing a power level operates to decrease the power consumption of said one of the plural functional units to one of the plural operating power levels in response to a power down control instruction.
An integrated circuit designed to use functional unit power control instructions inserted by a compiler or post-processing program, comprising:
- plural functional units each operable at plural operating power levels, different ones of the plural operating power levels corresponding to different execution speeds of the functional units;
- and
- means for changing power levels of said plural functional units including a Vt command decode unit for receiving an instruction stream from a prefetch queue and decoding an addressed functional unit power control instruction,
- wherein said means for changing power levels of said plural functional units alter a power level for at least one of said plural functional units to one of the plural operating power levels in response to said addressed functional unit power control instruction.
Dependencies are inferred from the claim text.