MULTIPLE-CORE PROCESSOR SUPPORTING MULTIPLE INSTRUCTION SET ARCHITECTURES
First Claim
1. A processor for executing program instructions, wherein said program instructions comprise program instructions belonging to a first instruction set architecture and a second instruction set architecture distinct from said first instruction set architecture, said processor comprising:
- a plurality of execution cores integrated on at least one die, wherein at least a first one of said multiple cores is capable of executing program instructions of said first instruction set architecture, and wherein at least a second one of said multiple cores is capable of executing program instructions of said second instruction set architecture; and
a package for containing said plurality of execution cores and providing electrical terminals for interfacing said processor to external devices.
3 Assignments
0 Petitions
Accused Products
Abstract
A multiple-core processor supporting multiple instruction set architectures provides a power-efficient and flexible platform for virtual machine environments requiring multiple support for multiple instruction set architectures (ISAs). The processor includes multiple cores having disparate native ISAs and that may be selectively enabled for operation, so that power is conserved when support for a particular ISA is not required of the processor. The multiple cores may share a common first level cache and be mutually-exclusively selected for operation, or multiple level-one caches may be provided, one associated with each of the cores and the cores operated as needed, including simultaneous execution of disparate ISAs. A hypervisor controls operation of the cores and locates a core and enables it if necessary when a request to instantiate a virtual machine having a specified ISA is received.
57 Citations
20 Claims
-
1. A processor for executing program instructions, wherein said program instructions comprise program instructions belonging to a first instruction set architecture and a second instruction set architecture distinct from said first instruction set architecture, said processor comprising:
-
a plurality of execution cores integrated on at least one die, wherein at least a first one of said multiple cores is capable of executing program instructions of said first instruction set architecture, and wherein at least a second one of said multiple cores is capable of executing program instructions of said second instruction set architecture; and a package for containing said plurality of execution cores and providing electrical terminals for interfacing said processor to external devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of managing operation of a processing system supporting multiple instruction set architectures, wherein said processing system supports execution of multiple operating system images within multiple virtual machines, said method comprising:
-
receiving a request to instantiate a virtual machine having a specified instruction set architecture; determining an availability status of given core within a processor having multiple cores, at least one supporting said specified instruction set architecture and at least one other not supporting said specified instruction set architecture; and in response to determining that said given core is available, instantiating said virtual machine on said core. - View Dependent Claims (12, 13)
-
-
14. A processing system comprising:
-
a memory for storing program instructions and data; and a processor for executing said program instructions, said program instructions including multiple operating systems executing within multiple virtual machines, wherein said program instructions further comprise hypervisor program instructions for managing said virtual machines, and wherein said hypervisor program instructions comprise program instructions for receiving a request to instantiate a virtual machine having a specified instruction set architecture, determining an availability status of given core within a processor having multiple cores, at least one supporting said specified instruction set architecture and at least one other not supporting said specified instruction set architecture, and instantiating said virtual machine on said core in response to determining that said given core is available. - View Dependent Claims (15, 16, 17)
-
-
18. A computer program product comprising computer-readable storage media encoding program instructions for execution within a processing system supporting execution of multiple operating system images executing within multiple virtual machines, wherein said program instructions comprise hypervisor program instructions for managing said virtual machines, and wherein said hypervisor program instructions comprise program instructions for
receiving a request to instantiate a virtual machine having a specified instruction set architecture, determining an availability status of given core within a processor having multiple cores, at least one supporting said specified instruction set architecture and at least one other not supporting said specified instruction set architecture, and instantiating said virtual machine on said core in response to determining that said given core is available.
Specification