scispace - formally typeset
Patent

Method and apparatus for multiplatform stateless instruction set architecture (ISA) using ISA tags on-the-fly instruction translation

TLDR
The first stateless multiplatform instruction set architecture (ISA) as mentioned in this paper uses a very long instruction word (VLIW) architecture with 64-bit instructions, of which several highorder bits are reserved for an ISA identifier tag.
Abstract
A method and apparatus for providing a stateless multiplatform instruction set architecture (ISA) for use in a computer system having a processor and memory storing a control program for implementing the invention. The system is used to statelessly execute instructions authored to correspond to a variety of different ISA's on a unitary platform. The ISA of the invention uses a very long instruction word (VLIW) architecture with 64-bit instructions, of which several high-order bits are reserved for an ISA identifier tag. When the processor receives an instruction for execution, it inspects the instruction to determine from the ISA identifier tag to which original, native ISA the instruction corresponds. If the corresponding ISA is the native VLIW ISA for the processor, then the instruction is routed to the instruction dispatch unit of the processor, and thence to at least one functional unit for execution. If the corresponding ISA is not the native VLIW ISA, then the instruction is routed to one of a plurality of dynamic decode units (DDU's), each DDU being controlled by a translation routine that translates the instructions from a non-native ISA to the native VLIW ISA. The translated instructions are then sent to the instruction dispatch unit, and on to the appropriate functional unit(s). Any instruction that includes unused bits, such as 64 bit instructions with free higher-order bits, can accommodate the ISA identifier tag by simply using the unused bits. Instructions that do not include unused bits, such as 32-bit instructions for non-VLIW architectures (e.g. the ISA's for SPARC, PowerPC or x86), are appended with additional bits to bring the total to 64 bits, several of which are reserved for the ISA tag. The number of bits reserved for the ISA tag determines the number of non-native ISA's that are recognized by the system; e.g., three bits allows for the native ISA plus seven non-native ISA's to be recognized by the system. Incoming instructions corresponding to a non-native ISA for which no dynamic decode unit is available can be executed by conventional software emulation. Entire programs written for non-native ISA's (using, e.g., 32-bit instructions) can be converted to the format for the native VLIW ISA by appending, at the instruction loading stage or in a separate process independent of execution, the additional bits necessary both to fill out the instruction word lengths and to include the ISA identifier tag bits.

read more

Citations
More filters
Patent

Translated memory protection apparatus for an advanced microprocessor

TL;DR: In this article, the authors propose a method of detecting an attempt to write a memory address including a target instruction which has been translated to a host instruction for execution by a host processor.
Patent

Apparatus for executing programs for a first computer architechture on a computer of a second architechture

TL;DR: In this paper, the authors propose a set of entry exceptions, called entry exception, exit exception, entry handler, and resumption exception, which are cooperatively designed to maintain an association between a thread and an extended context of the thread through context change induced by the operating system.
Patent

Recording classification of instructions executed by a computer

TL;DR: In this paper, an instruction processor interprets instructions under, alternately, the first or second instruction set as directed by a first flag stored in table entries corresponding to memory pages for the instructions.
Patent

Computer for execution of RISC and CISC instruction sets

TL;DR: In this paper, a computer with a general register file of registers, a RISC instruction decoder, and a CISC decoder is shown to decode a portion of an instruction set for the computer, and to deliver the decoded instructions to an instruction execution pipeline designed to execute the output of both the RISC Instruction Decoder and the CISC Instruction Decoder.
Patent

Profiling execution of computer programs

TL;DR: In this article, a method and a computer for performance of the method is presented, where the instruction pipeline is directed to record profile information describing the profileable events essentially concurrently with the occurrence of the profiles.
References
More filters
Patent

Dual-architecture super-scalar pipeline

TL;DR: A dual-instruction-set processor as discussed by the authors is a processor that processes instructions from two or more instruction sets, which can overlap for the instruction sets by the control words encoded by the operation to be performed by the pipelines.
Patent

Method and apparatus for direct conversion of programs in object code form between different hardware architecture computer systems

TL;DR: In this article, application programs compiled for a first, "source", computer are translated, from their object form, for execution on a second, "target", computer, and the translated application programs are linked or otherwise bound with a translation of the source computer system software.
Patent

System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer

TL;DR: In this article, a system and method for extracting complex, variable length computer instructions from a stream of complex instructions each subdivided into a variable number of instructions bytes, and aligning instruction bytes of individual ones of the complex instructions is presented.
Patent

Microprocessor compatible with any software represented by different types of instruction formats

TL;DR: In this article, a microprocessor includes a central processing unit which executes a program according to at least one control signal generated by an instruction decoder, such that a first type insruction adaptable for the central processor can be decoded.
Patent

Macroinstruction translator unit for use in a microprocessor

TL;DR: In this paper, an instruction decoder (ID) interprets the fields of received instructions and generates single forced microinstructions and starting addresses of multiple-microinstruction routines.