[发明专利]指令分派方法和解释器有效
申请号: | 201610109699.4 | 申请日: | 2016-02-26 |
公开(公告)号: | CN107133081B | 公开(公告)日: | 2019-12-17 |
发明(设计)人: | 傅杰;靳国杰;高翔;王剑 | 申请(专利权)人: | 龙芯中科技术有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 11205 北京同立钧成知识产权代理有限公司 | 代理人: | 马爽;黄健 |
地址: | 100095 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 指令 分派 方法 解释 | ||
1.一种指令分派方法,其特征在于,包括:
在接收到第一虚拟机指令后,根据第二虚拟机指令的输出类型,获取所述第一虚拟机指令在指令分派表上的列偏移,所述第二虚拟机指令为所述第一虚拟机指令的上一条虚拟机指令;以及,根据所述第一虚拟机指令的操作码,获取所述第一虚拟机指令在所述指令分派表上的行偏移,将所述行偏移存储在行索引寄存器中;
将存储所述指令分派表的首地址的基址寄存器、所述行索引寄存器和所述列偏移编码在访存指令中;
在所述访存指令执行时,在由所述首地址、所述行偏移和所述列偏移所确定的地址处,获取所述第一虚拟机指令执行所需的指令模板的地址,跳转到所述指令模板的地址完成指令分派。
2.根据权利要求1所述的方法,其特征在于,所述指令分派表中存储有所有与虚拟机指令对应的指令模板的地址,所述指令模板的地址按照对应的虚拟机指令的操作码的不同,存储在所述指令分派表的不同的行中,所述指令模板的地址按照对应的虚拟机指令的输出类型的不同,存储在所述指令分派表的不同的列中。
3.根据权利要求2所述的方法,其特征在于,所述指令分派表中增加有至少一列填充表项,所述填充表项中存储的内容为空;通过增加所述填充表项的列数,使所述指令分派表的列数为2的幂次方。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一虚拟机指令的操作码,获取所述第一虚拟机指令在所述指令分派表上的行偏移,包括:
根据所述指令分派表的列数与表示处理器地址长度的预设数值,获取偏移位数;
将所述第一虚拟机指令的操作码向左移动所述偏移位数,得到所述第一虚拟机指令在所述指令分派表上的行偏移。
5.根据权利要求2至4任一项所述的方法,其特征在于,所述根据第二虚拟机指令的输出类型,获取所述第一虚拟机指令在所述指令分派表上的列偏移,包括:
获取所述第二虚拟机指令的输出类型在所述指令分派表中所占的列的序号;
根据所述序号与表示处理器地址长度的预设数值,得到所述第一虚拟机指令在所述指令分派表上的列偏移。
6.根据权利要求2至4任一项所述的方法,其特征在于,在所述指令分派表的4个连续的列中,存储无输出类型、整数类型、引用类型和单精度浮点类型的虚拟机指令对应的指令模板的地址。
7.根据权利要求2至4任一项所述的方法,其特征在于,所述虚拟机指令的输出类型为如下中的一种:整数类型、长整数类型、单精度浮点类型、双精度浮点类型、引用类型和无输出类型。
8.一种解释器,其特征在于,包括:
列偏移获取模块,用于在接收到第一虚拟机指令后,根据第二虚拟机指令的输出类型,获取所述第一虚拟机指令在指令分派表上的列偏移,所述第二虚拟机指令为所述第一虚拟机指令的上一条虚拟机指令;
行偏移获取模块,用于根据所述第一虚拟机指令的操作码,获取所述第一虚拟机指令在所述指令分派表上的行偏移,将所述行偏移存储在行索引寄存器中;
编码模块,用于将存储所述指令分派表的首地址的基址寄存器、所述行索引寄存器和所述列偏移编码在访存指令中;
执行模块,用于在所述访存指令执行时,在由所述首地址、所述行偏移和所述列偏移所确定的地址处,获取所述第一虚拟机指令执行所需的指令模板的地址,跳转到所述指令模板的地址完成指令分派。
9.根据权利要求8所述的解释器,其特征在于,所述指令分派表中存储有所有与虚拟机指令对应的指令模板的地址,所述指令模板的地址按照对应的虚拟机指令的操作码的不同,存储在所述指令分派表的不同的行中,所述指令模板的地址按照对应的虚拟机指令的输出类型的不同,存储在所述指令分派表的不同的列中。
10.根据权利要求9所述的解释器,其特征在于,所述指令分派表中增加有至少一列填充表项,所述填充表项中存储的内容为空;通过增加所述填充表项的列数,使所述指令分派表的列数为2的幂次方。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于龙芯中科技术有限公司,未经龙芯中科技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610109699.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:扩展显示标识数据校验方法及系统
- 下一篇:实现同步虚拟设备组件的方法及系统