Intermediate language accelerator chip
First Claim
Patent Images
1. A system comprising:
- at least one memory;
a processor chip operably connected to the at least one memory; and
an accelerator chip, the accelerator chip operably connected to the at least one memory, memory access of the processor chip to the at least one memory being sent through the accelerator chip, the accelerator chip having direct access to the at least one memory, the accelerator chip being adapted to run at least portions of programs in an intermediate language.
1 Assignment
0 Petitions
Accused Products
Abstract
An accelerator chip can be positioned between a processor chip and a memory. The accelerator chip enhances the operation of a Java program by running portions of the Java program for the processor chip. In a preferred embodiment, the accelerator chip includes a hardware translator unit and a dedicated execution engine.
-
Citations
99 Claims
-
1. A system comprising:
-
at least one memory;
a processor chip operably connected to the at least one memory; and
an accelerator chip, the accelerator chip operably connected to the at least one memory, memory access of the processor chip to the at least one memory being sent through the accelerator chip, the accelerator chip having direct access to the at least one memory, the accelerator chip being adapted to run at least portions of programs in an intermediate language. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A system comprising:
-
at least one memory;
a processor chip operably connected to the at least one memory; and
a accelerator chip, the accelerator chip operably connected to the at least one memory, memory access of the processor chip to the at least one memory being sent through the accelerator chip, the accelerator chip having direct access to the at least one memory, the accelerator chip being adapted to run at least portions of programs in an intermediate language, the hardware accelerator including a hardware translator unit adapted to covert intermediate language instructions into native instructions, and an execution engine adapted to execute the native instructions provided by the hardware translator unit. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. An accelerator chip comprising:
-
a unit adapted to execute intermediate language instructions; and
an interface, the interface adapted to allow for memory access for the accelerator chip to at least one memory and to allow for memory access for a separate processor chip to the at least one memory. - View Dependent Claims (42, 43, 44, 45, 46, 47, 55)
-
-
48. An accelerator chip comprising:
-
a hardware translator unit adapted to covert intermediate language instructions into native instructions;
an execution engine adapted to execute the native instructions provided by the hardware translator unit; and
an interface, the interface adapted to allow for memory access for the accelerator chip to at least one memory and to allow for memory access for a separate processor chip to the at least one memory. - View Dependent Claims (49, 50, 51, 52, 53)
-
-
54. An accelerator chip comprising:
-
a hardware translator unit adapted to covert intermediate language instructions into native instructions;
an instruction cache operably connected to the hardware translator unit storing intermediate language instructions to be converted;
an execution engine adapted to execute the native instructions provided by the hardware translator unit; and
an interface, the interface adapted to allow for memory access for the accelerator chip to at least one memory and to allow for memory access for a separate processor chip to the at least one memory. - View Dependent Claims (56, 57, 58)
-
-
59. An accelerator chip comprising:
-
a hardware translator unit adapted to covert intermediate language instructions into native instructions; and
a dedicated execution engine adapted to execute the native instructions provided by the hardware translator unit, the dedicated execution engine only executing instructions provided by the hardware translator unit, wherein the hardware translator unit, rather than the execution engine, determines the address of the next intermediate language instruction to translate and provide to the dedicated execution engine. - View Dependent Claims (60, 61, 62, 63, 64)
-
-
65. A method of operating an accelerator chip comprising:
-
in a hardware translator unit, calculating the address of intermediate language instructions to execute;
obtaining the intermediate language instructions from a memory;
in the hardware translator unit, converting the intermediate language instructions to native instructions;
providing the native instructions to an execution engine; and
in the execution engine, executing the native instructions, wherein for at least one intermediate language instruction a callback to a separate processor chip running a virtual machine is done to handle the intermediate language instruction. - View Dependent Claims (66)
-
-
67. An accelerator chip comprising:
-
a hardware translator unit adapted to covert intermediate language instructions into native instructions;
an execution engine adapted to execute the native instructions provided by the hardware translator unit;
an interface, the interface adapted to allow for memory access for the accelerator chip to at least one memory and to allow for memory access for a separate processor chip to the at least one memory; and
a graphics acceleration engine adapted to be interconnected to a display, the graphics acceleration engine executing intermediate language instructions concerning a display. - View Dependent Claims (68, 69, 70, 71, 72, 73)
-
-
74. A system comprising:
-
a hardware translator unit adapted to covert intermediate language instructions into native instructions; and
an execution engine adapted to execute the native instructions provided by the hardware translator unit, the execution engine including at least one indexed instruction to do an indexed load from or store into an array, the instruction concurrently checking a first register storing an array pointer to see whether it is null. - View Dependent Claims (75, 76, 77, 78)
-
-
79. A system comprising:
-
a hardware translator unit adapted to covert intermediate language instructions into native instructions; and
an execution engine adapted to execute the native instructions provided by the hardware translator unit, the execution engine including at least one indexed instruction to do an indexed load from or store into an array, the execution engine having a zero checking unit adapted to check whether a first register storing an array pointer to see whether it is null, the null checking unit of the execution engine working concurrently with portions of the execution engine doing the indexed load from or store into an array. - View Dependent Claims (80, 81)
-
-
82. An system comprising:
-
a hardware translator unit adapted to covert intermediate language instructions into native instructions; and
an execution engine adapted to execute the native instructions provided by the hardware translator unit, the execution engine including at least one bounds checking instruction, the bounds checking instruction ensuring that an index value stored in a first register is less than or equal to an array length value stored in a second register. - View Dependent Claims (83, 84, 85)
-
-
86. An system comprising:
-
a hardware translator unit adapted to covert intermediate language instructions into native instructions; and
an execution engine adapted to execute the native instructions provided by the hardware translator unit, the execution engine including an instruction that based on values from the last addition or subtraction stores an 1, 0, or −
1 in a register. - View Dependent Claims (87, 88, 89, 90, 91)
-
-
92. A system comprising:
-
at least one memory;
a processor chip operably connected to the at least one memory; and
an accelerator chip, the accelerator chip operably connected to the at least one memory, memory access of the processor chip to the at least one memory being sent through the accelerator chip, the accelerator chip having direct access to the at least one memory, the accelerator chip being adapted to run at least portions of programs in an intermediate language, the hardware accelerator including a accelerator of a Java processor for the execution of intermediate language instructions.
-
-
93. A system comprising:
-
at least one memory;
a processor chip operably connected to the at least one memory; and
an intermediate language accelerator chip, operably connected to the at least one memory, memory access of the processor chip to the at least one memory being sent through the accelerator chip, the accelerator chip having direct access to the at least one memory, the accelerator chip being adapted to run at least portions of programs in an intermediate language, wherein some instructions generate a callback and get executed on the processor chip. - View Dependent Claims (94)
-
-
95. A system comprising:
-
at least one memory;
a processor chip operably connected to the at least one memory; and
an intermediate language accelerator chip, operably connected to the at least one memory, memory access of the processor chip to the at least one memory being sent through the accelerator chip, the accelerator chip having direct access to the at least one memory, wherein the use of the accelerator chip is in a cell phone or mobile handheld device.
-
-
96. A system comprising:
-
at least one memory;
a processor chip operably connected to the at least one memory; and
an intermediate language accelerator chip, operably connected to the at least one memory, memory access of the processor chip to the at least one memory being sent through the accelerator chip, the accelerator chip having direct access to the at least one memory wherein the accelerator is stacked on the SoC in the same package - View Dependent Claims (97)
-
-
98. A system comprising:
-
at least one memory;
a processor chip operably connected to the at least one memory; and
an intermediate language accelerator chip, operably connected to the at least one memory, memory access of the processor chip to the at least one memory being sent through the accelerator chip, the accelerator chip having direct access to the at least one memory wherein the accelerator is stacked with one or more memory in the same package. - View Dependent Claims (99)
-
Specification