[发明专利]一种RISC处理器的指令发射处理电路有效
申请号: | 201911147499.8 | 申请日: | 2019-11-21 |
公开(公告)号: | CN110941450B | 公开(公告)日: | 2022-12-06 |
发明(设计)人: | 魏艳艳;牛少平;邓艺;郝冲;韩一鹏 | 申请(专利权)人: | 中国航空工业集团公司西安航空计算技术研究所 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 北京清大紫荆知识产权代理有限公司 11718 | 代理人: | 李红 |
地址: | 710065 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 risc 处理器 指令 发射 处理 电路 | ||
1.一种RISC处理器的指令发射处理电路,其特征在于:电路内部包括取指模块(1)、预译码模块(2)、译码模块(3)和记分板模块(4);外部接口包括寄存器文件(6)、执行单元(7)和Icache(5);
所述取指模块(1)与预译码模块(2)、译码模块(3)和Icache(5)连接,用于实现从Icache(5)中取指令,将指令写入buffer中,供预译码模块(2)读取,根据译码模块(3)给的跳转指令信息进行取指地址更新;
所述预译码模块(2)与取指模块(1)、译码模块(3)和记分板模块(4)连接,用于实现从取指模块(1)的buffer中读取2条指令,按照指令编码规则进行双发射指令预译码,并进行双发射指令之间的相关性检测,将译出的发射指令信息写入ibuffer中供译码模块(3)发射指令使用,同时将写入ibuffer的发射指令状态信息和译出的待发射指令信息输出给记分板模块(4);
所述记分板模块(4)与预译码模块(2)和执行单元(7)相连接,用于实现待发射指令和发射指令之间的相关性检测,根据预译码模块(2)给的待发射指令信息和写入ibuffer的发射指令状态信息及执行单元(7)的运算完成信号进行调度判断之后给预译码模块(2)输出读ibuffer发射指令的控制信号;
所述译码模块(3)与预译码模块(2)、取指模块(1)和执行单元(7)相连接,用于实现2条指令发射功能,将预译码模块(2)ibuffer中读出的指令信息下发给执行单元(7),并将发射的跳转指令信息输出给取指模块(1),并根据执行单元(7)给的条件跳转指令操作数和发射的跳转指令信息给出条件跳转指令执行结果,将条件跳转指令执行结果输出给预译码模块(2);
所述执行单元(7)与译码模块(3)、记分板模块(4)和寄存器文件(6)相连接,用于实现译码模块(3)给的双发射指令的运算,其从寄存器文件(6)中读出源操作数,然后进行运算将运算结果写回寄存器文件(6),并将运算完成信号输出给记分板模块(4),将条件跳转指令操作数输出给译码模块(3)。
2.根据权利要求1所述的RISC处理器的指令发射处理电路,其特征在于:所述预译码模块(2)从取指模块(1)中读buffer时满足下列有效条件:
1)取指模块(1)中buffer有指令且不在处理跳转指令;
2)预译码模块(2)中ibuffer不满;
3)预译码模块(2)中指令预译码标志无效;该指令预译码标志在取出指令时有效,一直到取出的指令预译码完成并写入ibuffer时无效。
3.根据权利要求1所述的RISC处理器的指令发射处理电路,其特征在于:所述预译码模块(2)使用的32位指令编码格式,包括类型编码、子类型编码、指令编号编码、立即数标志、目的操作数、源操作数1、源操作数2、立即数和空指令标志,其中类型编码、子类型编码及指令编号编码均采用二进制编码,编码从0开始,具有连续性。
4.根据权利要求1所述RISC处理器的指令发射处理电路,其特征在于:所述预译码指令分3级完成,包含如下:
1)第1级译出指令操作码和指令使能,其中指令操作码包含指令类型,指令子类型,指令编号;
2)第2级译出指令对应的执行单元(7)使能,源操作数地址,目的操作数地址,源操作数地址有效,目的操作数地址有效,以及双发射指令各类相关控制信号,其中源操作数地址,目的操作数地址中的最高位为寄存器属性,定点或浮点;
3)第3级译出执行单元(7)使能编码,执行单元(7)编码,双发射指令相关信号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航空工业集团公司西安航空计算技术研究所,未经中国航空工业集团公司西安航空计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911147499.8/1.html,转载请声明来源钻瓜专利网。