IP Library Patent Application 14202910
Patent Application
App. No. 14/202,910

Multiple Execution Unit Processor Core

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 None
App. No.
14/202,910
Abstract

A processor core includes multiple execution units, such as a first execution unit and a second execution unit. The first execution unit may include a first functional component that supports a superscalar pipeline. The second execution unit may include a second functional component supporting a scalar pipeline. The processor core may operate in a high-performance mode by using the first execution unit and powering down the second execution unit and operate in a low-power mode by using the second execution unit and powering down the first execution unit. The processor core may include common elements shared between the multiple execution units, such as a common instruction cache, data cache, register file(s), and more.

Claims (68)

1 . A system comprising:

a processor core comprising:

a first execution unit within the processor core; and

a second execution unit within the processor core, the second execution unit different from the first execution unit; and

where the processor core is configured to:

operate in a first mode by using the first execution unit and powering down the second execution unit; and

operate in a second mode by using the second execution unit and powering down the first execution unit.

2 . The system of claim 1 , where the processor core further comprises:

an instruction unit shared by both the first and second execution units, the instruction unit configured to:

fetch an instruction; and

when the processor core operates in the first mode:

issue the instruction to the first execution unit of the processor core; and

when the processor cores operates in the second mode:

issue the instruction to the second execution unit of the processor core.

3 . The system of claim 2 , where the instruction unit is configured to issue instructions at a first rate when operating in the first mode and at a second rate when operating in the second mode, where the first rate is greater than the second rate.

4 . The system of claim 1 , where:

the first execution unit comprises a first register file specific to the first execution unit; and

the second execution unit comprises a second register file specific to the second execution unit.

5 . The system of claim 4 , where the processor core is further configured to:

transition from operating in the first mode to operating in the second mode by copying a register value stored in the first register file into the second register file.

6 . The system of claim 1 , where the processor core further comprises a common register file shared by both the first and second execution units.

7 . The system of claim 6 , where the processor core is further configured to:

transition from operating in the first mode to operating in the second mode without changing content of the common register file.

8 . The system of claim 1 , where the processor core further comprises:

a data cache shared by both the first and second execution units.

9 . The system of claim 8 , where the processor core is further configured to:

transition from operating in the first mode to operating in the second mode without flushing the data cache.

10 . The system of claim 1 , where the first execution unit comprises a vector execution unit; and

where the processor core is configured to operate in the second mode by using the second execution unit and selectively powering on the vector execution unit of the first execution unit in order to execute a vector instruction.

11 . The system of claim 1 , where the processor core further comprises a common system interface shared by both the first and second execution units.

12 . A method comprising:

in a processor core:

obtaining a program instruction for execution by the processor core;

determining an operating mode for the processor core; and

when the processor core operates in a first mode:

issuing the instruction to a first execution unit implemented within the processor core; and

maintaining a second execution unit also implemented within the processor core in a power-down mode; and

when the processor core operates in a second mode:

issuing the instruction to the second execution unit; and

maintaining the first execution unit in a power-down mode.

13 . The method of claim 12 , further comprising:

determining to transition from operating in the first mode to operating in the second mode, and in response:

transitioning a processor state of the processor core from the first execution unit to the second execution unit.

14 . The method of claim 13 , comprising transitioning the processor state without flushing a data cache shared by the first and second execution units.

15 . The method of claim 13 , further comprising:

implementing a common register file shared by the first and second execution units implemented in the processor core; and

where transitioning the processor state comprises transitioning the processor state from the first execution unit to the second execution unit without transferring content of the common register file.

16 . The method of claim 12 , further comprising:

implementing a instruction cache shared by both the first and second execution units implemented within the processor core.

17 . A device comprising:

a processor core comprising:

a first execution unit comprising a first functional component supporting a superscalar pipeline;

a second execution unit comprising a second functional component supporting a simple scalar pipeline; and

where the processor core is configured to:

operate in a first performance mode by using the first execution unit and powering down second execution unit; and

operate in a second performance mode by using the second execution unit and powering down the first execution unit.

18 . The device of claim 17 , where the processor core further comprises:

an instruction unit shared by both the first and second execution units, the instruction unit configured to:

fetch an instruction; and

when the processor core operates in the first performance mode:

issue the instruction to the first execution unit of the processor core; and

when the processor cores operates in the second performance mode:

issue the instruction to the second execution unit of the processor core.

19 . The device of claim 17 , where:

the first execution unit comprises a first register file specific to the first execution unit and the superscalar pipeline; and

the second execution unit comprises a second register file specific to the second execution unit and the simple scalar pipeline.

20 . The device of claim 19 , where the processor core is further configured to:

transition from operating in the first performance mode to operating in the second performance mode by copying a register value stored in the first register file into the second register file.

Assignments (4)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2014
From: SENTHINATHAN, RAMESH; YEAGER, KENNETH; LEONARD, JASON ALEXANDER; O'DONNELL, LIEF; BELHAZY, MICHAEL
To: BROADCOM CORPORATION
Reel/Frame 032405/0452 →