[发明专利]一种扩展寄存器堆的方法及装置有效
申请号: | 201810718793.9 | 申请日: | 2018-07-03 |
公开(公告)号: | CN108920188B | 公开(公告)日: | 2021-04-27 |
发明(设计)人: | 王永文;雷国庆;王俊辉;郭维;郑重;孙彩霞;隋兵才;黄立波 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 谭武艺 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 扩展 寄存器 方法 装置 | ||
1.一种扩展寄存器堆的方法,其特征在于实施步骤包括:
1)对取指部件取出的指令进行译码;
2)判断译码结果是否为预设的扩展寄存器堆控制指令,如果是扩展寄存器堆控制指令则跳转执行步骤3);否则,跳转执行步骤4);
3)判断扩展寄存器堆控制指令的指令类型,如果指令类型为使能,则置位预设的寄存器堆扩展控制寄存器,使得处理器进入寄存器堆扩展模式,在寄存器堆扩展模式下处理器可以访问原生寄存器堆和扩展寄存器堆;如果指令类型为修改索引,则设置寄存器堆扩展索引;如果指令类型为退出,则清除预设的寄存器堆扩展控制寄存器,使得处理器进入常规模式,在常规模式下处理器可以访问原生寄存器堆、不能访问扩展寄存器堆;跳转执行步骤7);
4)判断处理器当前的寄存器堆模式类型,如果为寄存器堆扩展模式,则跳转执行步骤5);如果为常规模式,则跳转执行步骤6);
5)将预设的寄存器堆扩展索引、指令编码中的寄存器索引进行合并形成扩展的寄存器索引,根据扩展的寄存器索引访问扩展寄存器堆中的指令并执行;跳转执行步骤7);
6)通过执行部件访问原生寄存器堆的指令并执行;跳转执行步骤7);
7)跳转执行步骤1)以处理下一跳指令。
2.根据权利要求1所述的扩展寄存器堆的方法,其特征在于,步骤5)的详细步骤包括:
5.1)抽取指令编码中的源操作数寄存器索引和目的操作数寄存器索引,提取预设的各个寄存器堆扩展索引;
5.2)对于每个源操作数寄存器堆扩展索引,如果索引结果为0,则使用指令编码中的寄存器索引访问常规寄存器堆;如果索引结果不为0,则将指令编码中的寄存器索引与寄存器堆扩展控制寄存器中的相应扩展索引合并成一个完整的寄存器索引,并使用该索引访问扩展寄存器堆;
5.3)执行指令得到结果;
5.4)对于每个目的操作数寄存器堆扩展索引,如果索引结果为0,则使用指令编码中的目的寄存器索引常规寄存器堆写入结果;如果索引结果不为0,则将指令编码中的目的寄存器索引与寄存器堆扩展控制寄存器中的相应扩展索引合并成一个完整的寄存器索引,并使用该索引访问扩展寄存器堆写入执行指令得到的结果。
3.一种扩展寄存器堆的装置,包括处理器,其特征在于:所述处理器被编程以执行权利要求1或2所述扩展寄存器堆的方法的步骤。
4.一种应用权利要求1或2所述扩展寄存器堆的方法的装置,其特征在于包括:
寄存器堆扩展控制寄存器,包含一个控制位V以及n个位宽为m的寄存器堆扩展索引字段,控制位V置位时表示处理器处于寄存器堆扩展使能状态,可以访问扩展寄存器堆;控制位V被清除时表处理器处于寄存器堆扩展未使能状态,只能访问原生寄存器堆,不访问扩展寄存器堆;如果处理器每拍最多执行i条指令,指令编码中寄存器操作数最多有j个,则寄存器堆扩展索引字段的位宽n=i*j,扩展索引字段可以寻址原有寄存器数量的2m-1倍,m为寄存器堆扩展控制寄存器的位宽;
寄存器索引合并器,用于将所述寄存器堆扩展控制寄存器中的寄存器堆扩展索引字段的值与指令编码中相应的寄存器索引拼接,形成一个完整的扩展寄存器索引;
扩展寄存器堆,用于扩展原生寄存器堆的存储容量;
多路选择器,用于从原生寄存堆和扩展寄存器堆总选择待执行的指令。
5.根据权利要求4所述扩展寄存器堆的方法的装置,其特征在于:所述扩展寄存器堆中每个寄存器的数据位宽与原寄存器堆的数据位宽相同,寄存器的数量是原生寄存堆中寄存器数量的2m-1倍,m为寄存器堆扩展控制寄存器的位宽。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810718793.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:传感器控制方法及装置
- 下一篇:一种基于图形界面的系统操作方法及装置