【技术实现步骤摘要】
本专利技术涉及计算机微处理器
,特别是涉及复杂指令集计算机 (RISC)处理器装置以及其在多种虚拟机运行模式下数据处理方法。
技术介绍
复杂指令集计算机(Complex Instruction Set Computing, CISC)和精简指 令计算机(Reduced Instruction Set Computing, RISC)是当前CPU的两种架构。 不同架构的处理器只能执行自己的指令集,如Intel的机器只能执行80X86的 指令集(一种CISC指令集),不能执行RISC的指令集;而RISC架构的计 算不能执行80X86的指令集。而由于这种硬件体系结构的不同,操作系统和 各种应用软件通常只能在特定架构的计算机上执行,如RISC架构的微处理器 不能充分利用X86系列机器已有的广泛的应用软件。为了克服上述缺陷,更充分地使用有限的计算机软硬件资源,出现了虚拟 机技术。虚拟机是处于计算机软件和硬件中的一个虚拟的中间层,用来给上层的应 用软件程序或者操作系统提供一个所需要的虚拟软件/硬件平台。上层的应用 软件程序或者操作系统是通过这处虚拟的中间层,如虚拟机监视器(Virtual Machine Monitor, VMM)来与硬件进行通信,由VMM来决定其对系统上所 有虚拟硬件设备的访问。在具有多种模式的多个虚拟机在处理器中运行时,处 理器执行指令过程中,将不同模式下的虚拟机指令翻译成本处理器可以执行的 指令,并在指令执行完毕后将执行结果翻译成虚拟机指令执行结果,传输给虚 拟机。但是,现有技术中,由于虚拟机在运行过程中,需要执行大量的代码,而 在不同的 ...
【技术保护点】
一种RISC处理器装置,其特征在于,包括判断模块,指令译码器和运算部件,其中: 所述判断模块,用于区分指令的虚拟机指令集模式; 所述指令译码器,用于在指令译码过程中,根据判断模块区分出指令的虚拟机指令集模式,将指令按照所区分的虚拟机指令集模式,进行译码后输出给运算部件; 所述运算部件,用于根据指令译码器的输出,进行处理,输出执行的结果。
【技术特征摘要】
1、一种RISC处理器装置,其特征在于,包括判断模块,指令译码器和运算部件,其中所述判断模块,用于区分指令的虚拟机指令集模式;所述指令译码器,用于在指令译码过程中,根据判断模块区分出指令的虚拟机指令集模式,将指令按照所区分的虚拟机指令集模式,进行译码后输出给运算部件;所述运算部件,用于根据指令译码器的输出,进行处理,输出执行的结果。2、 根据权利要求1所述的RISC处理器装置,其特征在于,所述判断模 块为一第一控制寄存器;所述第一控制寄存器,包括控制位标志,当该控制位标志为1时表示此时 相应的指令运行在X86虚拟机指令集模式下;当该控制位标志为0时表示指 令运行在非X86虚拟机指令集模式下。3、 根据权利要求1所述的RISC处理器装置,其特征在于,所述判断模 块为一包含在指令译码器中的前缀指令模块;所述前缀指令模块包括一前缀指令,用于表示该指令后的多条指令处于 X86虚拟机指令集模式下。4、 根据权利要求3所述的RISC处理器装置,其特征在于,所述前缀指 令包括一范围参数,用于表示前缀指令的影响范围。5、 根据权利要求4所述的RISC处理器装置,其特征在于,所述范围参 数是l,表示该前缀指令只影响其后的一条指令;或者是不为l的整数n,表 示该前缀指令影响其后的n条指令。6、 根据权利要求3所述的RISC处理器装置,其特征在于,所述指令译 码器还包括一计数器,用于记录受前缀指令影响且不出现转换指令的指令序列 的指令数n;当受影响的当前指令进入运算部件,即下一条指令进入指令译码器时n减1。7、 根据权利要求1所述的RISC处理器装置,其特征在于,所述判断模 块为一包含在指令译码器中的指令模式模块,用于在RISC处理器的指令中标志该指令的虚拟机指令集模式。8、 根据权利要求7所述的RISC处理器装置,其特征在于,所述RISC处 理器的指令为在X86指令集中与EFLAG标志相关的指令对应的虚拟机指令; 或者在X86指令集中,对特殊结构进行操作的指令对应的虚拟机指令。9、 根据权利要求5所述的RISC处理器装置,其特征在于,所述运算部 件还包括一例外处理模块,用于在前缀指令只影响紧接其后的一条指令时,如 果出现执行例外,则采用与延迟槽例外相同的方法,将Cause寄存器的bd位 置l,同时将EPC指向前缀指令,例外服务程序完成后重新执行前缀指令。10、 根据权利要求5所述的RISC处理器装置,其特征在于,所述运算部 件还包括一第二控制寄存器,用于记录发生例外的指令是否受所述前缀指令影 响;在出现异常而中断进程的时候向第二控制寄存器中存入当前指令的计数, 在异常结束返回被中断进程时,根据所述计数恢复所述被中断进程。11、 根据权利要求1所述的RISC处理器装置,其特征在于,所述运算部 件还包括一EFLAG计算模块,用于对于处于虚拟机指令集模式的指令,根据 运算结果计算相应的EFLAG标志位。12、 一种RISC处理器装置多模式下数据处理方法,其特征在于,包括下 列步骤步骤A,读取指令,区分指令的虚拟机指令集模式;步骤B,在指令译码过程中,根据区分出的指令的虚拟机指令集模式,将 指令按照所区分的虚拟机...
【专利技术属性】
技术研发人员:李晓钰,苏孟豪,
申请(专利权)人:中国科学院计算技术研究所,
类型:发明
国别省市:11[中国|北京]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。