Power saving in FPU with gated power based on opcodes and data
First Claim
1. A method for saving power in a microprocessor having at least one functional unit having a plurality of blocks each including a plurality of sub-blocks, the method comprising the steps of:
- determining whether there is any instruction for the at least one functional unit;
upon a determination that there is no instruction for the at least one functional unit, shutting down the at least one functional unit; and
upon a determination that there is at least one instruction for the at least one functional unit, wherein the at least one functional unit has at least one inactive block and at least one active block, shutting down the at least one inactive block based on the at least one instruction.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and an apparatus are provided for saving power in a microprocessor. The microprocessor has at least one functional unit, which has a plurality of blocks. The blocks each include a plurality of sub-blocks. It is determined whether there is any instruction for the functional unit. Upon a determination that there is no instruction for the functional unit, the functional unit is shut down. Upon a determination that there is at least one instruction for the functional unit, at least one inactive block of the functional unit is shut down based on the instruction.
-
Citations
22 Claims
-
1. A method for saving power in a microprocessor having at least one functional unit having a plurality of blocks each including a plurality of sub-blocks, the method comprising the steps of:
-
determining whether there is any instruction for the at least one functional unit;
upon a determination that there is no instruction for the at least one functional unit, shutting down the at least one functional unit; and
upon a determination that there is at least one instruction for the at least one functional unit, wherein the at least one functional unit has at least one inactive block and at least one active block, shutting down the at least one inactive block based on the at least one instruction. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. An apparatus for saving power in a microprocessor having at least one functional unit having a plurality of blocks each including a plurality of sub-blocks, the apparatus comprising:
-
means for determining whether there is any instruction for the at least one functional unit;
means for, upon a determination that there is no instruction for the at least one functional unit, shutting down the at least one functional unit; and
means for, upon a determination that there is at least one instruction for the at least one functional unit, wherein the at least one functional unit has at least one inactive block and at least one active block, shutting down the at least one inactive block based on the at least one instruction. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer program product for saving power in a microprocessor having at least one functional unit having a plurality of blocks each including a plurality of sub-blocks, the computer program product having a medium with a computer program embodied thereon, the computer program comprising:
-
computer program code for determining whether there is any instruction for the at least one functional unit;
computer program code for, upon a determination that there is no instruction for the at least one functional unit, shutting down the at least one functional unit; and
computer program code for, upon a determination that there is at least one instruction for the at least one functional unit, wherein the at least one functional unit has at least one inactive block and at least one active block, shutting down the at least one inactive block based on the at least one instruction. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. In a microprocessor, an apparatus for saving power consumed in a functional unit of the microprocessor, the functional unit having a plurality of cycles, the apparatus comprising:
-
a control logic circuit coupled to the functional unit, the control logic being configured for receiving one or more instructions and operands to be executed in the functional unit and for shutting down one or more inactive portions of the functional unit, the one or more inactive portions being determined based on the one or more instructions and the associated operands; and
a sequencer circuit coupled to the control logic and to the functional unit, the sequencer circuit being configured for detecting which cycle in an active portion of the functional unit the operands are currently in and for shutting down any inactive cycles in the active portions of the functional unit. - View Dependent Claims (20, 21, 22)
-
Specification