IP Library Granted Patent US 7,457,970
Granted Patent B2
US 7,457,970 · App. 10/530,639 · Granted Nov 25, 2008

VLIW processor with power saving

Assignee: Koninklijke Philips Electronics N.V.
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 7,457,970
App. No.
10/530,639
Granted
Nov 25, 2008
Kind
B2
Abstract

A data processing apparatus has an instruction memory system arranged to output an instruction word, capable of containing a plurality of instructions, respective instruction words being output in response to respective instruction addresses. An instruction execution unit contains a plurality of functional units, each capable of executing a respective instruction from the instruction word in parallel with execution of other instructions from the instruction word by other ones of the functional units. A power saving circuit is provided to switch a selectable subset of the functional units and/or parts of the instruction memory to a power saving state, while other functional units and parts of the instruction memory continue processing instructions in a normal power consuming state. The power saving circuit selects the functional units and/or parts of the instruction memory dependent on program execution.

Claims (30)

1. A data processing apparatus comprising:

an instruction memory system arranged to output an instruction word, capable of containing a plurality of instructions, respective instruction words being output in response to respective instruction addresses;

an instruction execution unit, comprising a plurality of functional units, each capable of executing a respective instruction from the instruction word in parallel with execution of other instructions from the instruction word by other ones of the functional units;

a power saving circuit arranged to switch a selectable subset of the functional units and/or parts of the instruction memory that supply instructions from the instruction word to the functional units to a power saving state during program execution, the power saving circuit being arranged to select the functional units and/or parts of the instruction memory in the subset dependent on program execution;

wherein:

the instruction memory system includes a plurality of memory units, each for supplying a respective instruction field in the instruction word for an instruction for a respective functional unit or group of functional units, the clock gating circuit being arranged to switch those memory units to the power saving state that supply the instruction field for the selectable ones of the functional units that are switched to the power saving state, and

the memory units each comprise memory locations for at least a part of each instruction words only for instruction words in a respective range of instruction addresses, the instruction memory system allowing for partial overlap of the respective ranges of different ones of the memory units.

2. A data processing apparatus comprising:

an instruction memory system arranged to output an instruction word, capable of containing a plurality of instructions, respective instruction words being output in response to respective instruction addresses;

an instruction execution unit, comprising a plurality of functional units, each capable of executing a respective instruction from the instruction word in parallel with execution of other instructions from the instruction word by other ones of the functional units;

a power saving circuit arranged to switch a selectable subset of the functional units and/or parts of the instruction memory that supply instructions from the instruction word to the functional units to a power saving state during program execution, the power saving circuit being arranged to select the functional units and/or parts of the instruction memory in the subset dependent on program execution;

wherein the power saving circuit is arranged to select the subset dependent an instruction address associated with the instruction word.

3. The apparatus of claim 2 , wherein clock signals to the functional units and/or parts of the instruction memory in the subset are disabled in the power saving state.

4. The apparatus of claim 2 , wherein the functional units are organized into groups of one or more functional units each, the functional unit or units in each respective group receiving instructions from a respective instruction field in the instruction word, each time for execution by one of the functional units in the group, the power saving circuit selecting the functional units that are switched to the power saving state per group.

5. The apparatus of claim 2 , wherein the instruction memory system comprises a plurality of memory units, each for supplying a respective instruction field in the instruction word for an instruction for a respective functional unit or group of functional units, the power saving circuit being arranged to switch those memory units to the power saving state that supply the instruction field that for the selectable ones of the functional units that are switched to the power saving state.

6. The apparatus of claim 2 , wherein the power saving circuit is arranged to select the subset under control of one or more instructions contained in a program executed by the data processing apparatus.

7. The apparatus of claim 6 , wherein the one or more instructions specify the subset.

8. A method of executing a program of instructions using the apparatus of claim 2 , the method comprising identifying a part of the program wherein the instruction word does not contain instructions for functional units in a particular one of the groups, and using the power saving circuit to switch to the power saving state the functional units that not contained in the particular one of the groups and/or memory units that are coupled to the particular one of the groups, during executing of the identified part of the program.

9. The apparatus of claims 2 , including:

a control memory that is configured to store a plurality of address ranges of the instruction addresses associated with the instruction words, and

a controller that is configured to control the power saving circuit based on a comparison of an address of a current instruction word to the address ranges.

10. A data processing apparatus comprising:

an instruction memory system arranged to output an instruction word, capable of containing a plurality of instructions, respective instruction words being output in response to respective instruction addresses;

an instruction execution unit, comprising a plurality of functional units, each capable of executing a respective instruction from the instruction word in parallel with execution of other instructions from the instruction word by other ones of the functional units; and

a power saving circuit arranged to switch a selectable subset of the functional units and/or parts of the instruction memory that supply instructions from the instruction word to the functional units to a power saving state during program execution, the power saving circuit being arranged to select the functional units and/or parts of the instruction memory in the subset dependent on program execution;

wherein at least one of the functional units is configured to:

receive a power saving instruction from the instruction word, and

control the power saving circuit to switch at least one other functional unit to the power saving state based on the power saving instruction.

11. The apparatus of claim 10 , wherein clock signals to the functional units and/or parts of the instruction memory in the subset are disabled in the power saving state.

12. The apparatus of claim 10 , wherein the instruction memory system comprises a plurality of memory units, each for supplying a respective instruction field in the instruction word for an instruction for a respective functional unit or group of functional units, the clock power saving circuit being arranged to switch those memory units to the power saving state that supply the instruction field that for the selectable ones of the functional units that are switched to the power saving state.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2014
From: INTEL BENELUX B.V.
To: INTEL CORPORATION
Reel/Frame 031926/0502 →
"SILOCON HIVE B.V." SHOULD BE SPELLED "SILICON HIVE B.V" ASSIGNEE:"INTEL CORPORATION" SHOULD BE REMOVED. RECORDED ON REEL/FRAME:028883/0689 (502045456) Recorded Nov 21, 2012
From: SILICON HIVE B. V.
To: INTEL BENELUX B. V.
Reel/Frame 029405/0885 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2012
From: SILICON HIVE B.V.
To: INTEL BENELUX B.V.
Reel/Frame 028883/0689 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2009
From: KONINKLIJKE PHILIPS ELECTRONICS N.V.
To: SILICON HIVE B.V.
Reel/Frame 022902/0755 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2005
From: PINTO, CARLOS A. ALBA; SETHURAMAN, RAMANATHAN; SRINIVASAN, BALAKRISHNAN; PETERS, HARM J.A.M.; LLOPIS, RAFAEL PESET
To: KONINKLIJKE PHILIPS ELECTRONICS N.V.
Reel/Frame 016929/0011 →
Priority Claims (1)
EP 02079222 · Oct 11, 2002 · regional
Continuity (1)
Related Publication 20060156004A1 · Jul 13, 2006