[发明专利]一种系统寄存器访问指令的执行方法有效
申请号: | 201810717643.6 | 申请日: | 2018-07-03 |
公开(公告)号: | CN108845829B | 公开(公告)日: | 2021-06-25 |
发明(设计)人: | 孙彩霞;王永文;窦强;张承义;高军;倪晓强;隋兵才;黄立波;郑重;王俊辉;郭维;雷国庆 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 谭武艺 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 系统 寄存器 访问 指令 执行 方法 | ||
1.一种系统寄存器访问指令的执行方法,其特征在于实施步骤包括:
1)从指令缓冲取出系统寄存器访问指令;
2)将系统寄存器访问指令拆分成两个微操作,使得访问系统寄存器的微操作只会访问一个临时的通用寄存器TempGR,再由其他某个访问通用寄存器堆的执行单元完成TempGR和系统寄存器访问指令真正要访问的通用寄存器GRn之间的传输;
3)以拆分出的微操作为单位解析操作数信息,系统寄存器访问指令拆分出的微操作解析出的操作数将会有临时的通用寄存器TempGR出现;
4)将临时的通用寄存器TempGR和体系结构定义的通用寄存器统一编址;
5)将系统寄存器访问指令拆分出的微操作发射到执行单元;
6)执行系统寄存器访问指令拆分出的微操作;
7)执行结果的旁路;
步骤5)中将系统寄存器访问指令拆分出的微操作发射到执行单元具体是指:将读系统寄存器指令拆分出的第一个微操作和写系统寄存器指令拆分的第二个微操作发射到系统寄存器访问单元SPU;将读系统寄存器指令拆分出的第二个微操作和写系统寄存器指令拆分的第一个微操作发射到某个访问通用寄存器堆的执行单元,指定为执行单元FU0;步骤7)中执行结果的旁路具体是指:将系统寄存器访问单元SPU的结果旁路到执行单元FU0的一条输入数据总线,系统寄存器访问单元SPU的输入数据总线只旁路执行单元FU0的结果。
2.根据权利要求1所述的系统寄存器访问指令的执行方法,其特征在于,步骤2)的详细步骤包括:
2.1)判断系统寄存器访问指令是否为读系统寄存器指令,如果为读系统寄存器指令则跳转执行步骤2.2),否则该指令是写系统寄存器指令,跳转执行步骤2.3);
2.2)将读系统寄存器访问指令拆分成如下两个微操作:第一个微操作的功能是读取某个SPR的值,将其存入临时通用寄存器TempGR,第二个微操作的功能是读TempGR的值,将其存入读系统寄存器指令真正的目的寄存器GRn中;跳转执行步骤3);
2.3)将写系统寄存器访问指令拆分成如下两个微操作:第一个微操作的功能是读取通用寄存器GRn的值,将其存入临时通用寄存器TempGR,第二个微操作的功能是读TempGR的值,将其存入写系统寄存器指令要写入的系统寄存器SPR中;跳转执行步骤3)。
3.根据权利要求1 所述的系统寄存器访问指令的执行方法,其特征在于,步骤3)中以拆分出的微操作为单位解析操作数信息时,对于读系统寄存器指令的第一个微操作,解析出其目的操作数为临时通用寄存器TempGR,对于读系统寄存器指令的第二个微操作,解析出其源操作数为临时通用寄存器TempGR,目的操作数为通用寄存器GRn;对于写系统寄存器指令的第一个微操作,解析出其源操作数为通用寄存器GRn,目的操作数为临时通用寄存器TempGR,对于写系统寄存器指令的第二个微操作,解析出其源操作数为临时通用寄存器TempGR。
4.根据权利要求1 所述的系统寄存器访问指令的执行方法,其特征在于,步骤4)中将临时的通用寄存器TempGR和体系结构定义的通用寄存器统一编址,假设体系结构定义的通用寄存器有m个,那么微处理器实现的通用寄存器堆共有(m+1)项,第0项对应的是体系结构定义的第0号通用寄存器GR0,第1项对应的是体系结构定义的第1号通用寄存器GR1,依此类推,第(m-1)项对应的是体系结构定义的第(m-1)号通用寄存器GR(m-1),第m项对应的是临时通用寄存器TempGR。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810717643.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种协处理器、矩阵运算加速方法及系统
- 下一篇:一种一对数装载指令的执行方法