Processing device for executing virtual machine instructions
    1.
    发明授权
    Processing device for executing virtual machine instructions 有权
    用于执行虚拟机指令的处理设备

    公开(公告)号:US06996703B2

    公开(公告)日:2006-02-07

    申请号:US10074774

    申请日:2002-02-12

    申请人: Menno M. Lindwer

    发明人: Menno M. Lindwer

    IPC分类号: G06F9/455

    摘要: A processing device comprises an instruction memory 120 for storing virtual machine instructions, such as Java byte codes. A processor 112 of the processing device comprises a predetermined microcontroller core 114 for executing native instructions from a predetermined set of microcontroller specific instructions. The native instructions differ from the virtual machine instructions. The processor 112 is of a type which may request re-feeding of a plurality of native instructions. For instance, the processor 112 may have a pipeline and/or instruction cache which after an interrupt need to be re-filled.The processing device comprises a pre-processor 130 with a converter 132 for converting at least one virtual machine instruction, fetched from the instruction memory, into at least one native instruction. Feeding means 136 of the pre-processor 130feed native instructions to the microcontroller core 114 and re-feed native instructions in response to the processor requesting re-feeding of a number of native instructions.

    摘要翻译: 处理装置包括用于存储诸如Java字节代码的虚拟机指令的指令存储器120。 处理设备的处理器112包括用于从预定的微控制器特定指令集执行本机指令的预定微控制器核心114。 本机指令与虚拟机指令不同。 处理器112是可以请求重新馈送多个本机指令的类型。 例如,处理器112可以具有在中断需要重新填充之后的流水线和/或指令高速缓存。

    Processing device for executing virtual machine instructions that includes instruction refeeding means
    2.
    发明授权
    Processing device for executing virtual machine instructions that includes instruction refeeding means 有权
    用于执行虚拟机指令的处理装置,包括指令重新馈送装置

    公开(公告)号:US06349377B1

    公开(公告)日:2002-02-19

    申请号:US09161848

    申请日:1998-09-28

    申请人: Menno M. Lindwer

    发明人: Menno M. Lindwer

    IPC分类号: G06F945

    摘要: A processing device is disclosed that includes an instruction memory for storing virtual machine instructions, such as Java byte codes. A processor of the processing device includes a predetermined microcontroller core for executing native instructions from a predetermined set of microcontroller specific instructions. The native instructions differ from the virtual machine instructions. The processor may request re-feeding of a plurality of native instructions. For instance, the processor may have a pipeline and/or instruction cache which after an interrupt needs to be re-filled. The processing device includes a pre-processor with a converter for converting at least one virtual machine instruction, fetched from the instruction memory, into at least one native instruction. A feeding means of the pre-processor feeds native instructions to the microcontroller core and re-feeds native instructions in response to the processor requesting re-feeding of a number of native instructions.

    摘要翻译: 公开了一种处理装置,其包括用于存储诸如Java字节代码的虚拟机指令的指令存储器。 处理设备的处理器包括用于从预定的微控制器特定指令集执行本机指令的预定微控制器核心。 本机指令与虚拟机指令不同。 处理器可以请求重新馈送多个本机指令。 例如,处理器可以具有在中断需要重新填充之后的流水线和/或指令高速缓存。 处理装置包括具有转换器的预处理器,用于将从指令存储器获取的至少一个虚拟机指令转换成至少一个本地指令。 预处理器的馈送装置将本地指令馈送到微控制器核心,并响应于处理器请求重新馈送多个本地指令的重新馈送本地指令。

    System and method for low overhead boundary checking of java arrays
    3.
    发明授权
    System and method for low overhead boundary checking of java arrays 有权
    java数组的低开销边界检查的系统和方法

    公开(公告)号:US06782407B1

    公开(公告)日:2004-08-24

    申请号:US09670496

    申请日:2000-09-26

    IPC分类号: G06F900

    CPC分类号: G06F9/44589

    摘要: An array boundary checking method is disclosed for providing hardware based array boundary checking in a Java environment. During the first machine cycle of a current array access command, an array reference value is loaded into a system-data address controller and an array boundary checker. Next, during the second machine cycle of the current array access command, an array index value is written to the system-data address controller and the array boundary checker. Also during the second machine cycle of the current array access command, a maximum array index value is read from the Java array and written to the array boundary checker. The array boundary checker utilizes these values to determine the validity of the current array access command. Finally, during the third machine cycle an array value is accessed in memory. In the present invention the array value is only accessed when the current array access command is valid.

    摘要翻译: 公开了一种用于在Java环境中提供基于硬件的数组边界检查的阵列边界检查方法。 在当前阵列访问命令的第一个机器周期期间,阵列参考值被加载到系统数据地址控制器和阵列边界检查器中。 接下来,在当前阵列访问命令的第二个机器周期期间,将数组索引值写入系统数据地址控制器和阵列边界检查器。 同样在当前数组访问命令的第二个机器周期期间,从Java数组读取最大数组索引值并写入数组边界检查器。 阵列边界检查器利用这些值来确定当前阵列访问命令的有效性。 最后,在第三个机器周期期间,在存储器中访问数组值。 在本发明中,仅在当前阵列访问命令有效时才访问阵列值。

    Data processing device for processing virtual machine instructions
    4.
    发明授权
    Data processing device for processing virtual machine instructions 失效
    用于处理虚拟机指令的数据处理设备

    公开(公告)号:US06298434B1

    公开(公告)日:2001-10-02

    申请号:US09164692

    申请日:1998-10-01

    申请人: Menno M. Lindwer

    发明人: Menno M. Lindwer

    IPC分类号: G06F938

    摘要: A preprocessor is functionally inserted between a memory and a processor core. The preprocessor fetches virtual machine instructions, like Java instructions, from the memory and from them it generates native instructions which are supplied to the processor core. In response to a special virtual instruction the preprocessor supplies a native jump to subroutine to the processor core, monitors when the processor core returns from that subroutine and then resumes supplying generated native instructions. The invention also provides for a processor which has a special instruction which calls a subroutine and causes the processor to convert a call context for virtual machine instructions to a call context for a high level language subroutine before making the call.

    摘要翻译: 功能地将预处理器插入存储器和处理器核心之间。 预处理器从内存中获取虚拟机指令,如Java指令,并从中生成提供给处理器内核的本机指令。 响应于特殊的虚拟指令,预处理器向处理器核心提供本地跳转到子程序,监视处理器核心何时从该子程序返回,然后恢复提供生成的本机指令。 本发明还提供一种具有特殊指令的处理器,该指令调用子程序,并且使得处理器在进行呼叫之前将用于虚拟机指令的呼叫上下文转换为用于高级语言子程序的呼叫上下文。