当前位置: 首页 > 专利查询>山东大学专利>正文

一种四发射RISC-V处理器微架构及其工作方法技术

技术编号:35909943 阅读:28 留言:0更新日期:2022-12-10 10:49
本发明专利技术涉及一种四发射RISC

【技术实现步骤摘要】
一种四发射RISC

V处理器微架构及其工作方法


[0001]本专利技术涉及一种在RISC

V指令集架构下工作的四发射处理器微架构及其工作方法,属于集成电路处理器层次结构设计


技术介绍

[0002]RISC

V指令集作为第五代精简指令集架构,在模块化和精简性上都有明显的优势。模块化体现在RISC

V指令集的归并性,即将某类具有鲜明特点的指令划分为一个模块的指令集,例如,I代表整数型指令,B代表比特级操作指令,RISC

V的模块化指令还在飞速发展。精简性体现在RISC

V指令集的规整性,即指令集的字段有着固有的格式,这将方便随后的译码工作。
[0003]使用精简的RISC

V指令集可以设计出更深的流水线获得更高的主频,但是流水线更深也意味着分支预测失败的代价更高。另一方面,RISC

V指令集正在向高性能方向发展,例如V扩展是用于支持向量操作的,这一类指令属于长指令,单条指令之中有多条操作,为此,译码时要做更深层的译码才能将这些具体的操作辨识出来。
[0004]RISC

V的上述特点使得其可以设计更深的流水线,获得高主频,但是同时要兼深流水线冒险和长指令处理问题,才能设计出高性能的RISC

V处理器。

技术实现思路

[0005]本专利技术提出一种四发射的RISC

V处理器微架构,包括12~14级流水线。本专利技术给出该处理器架构的工作方式、流水线划分、关键功能部件的组织和实现方法。主要包括各级流水线的功能及其包含的功能部件以及四发射的解码、μOP队列、寄存器重命名、发射队列的组织、执行单元的组织以及ROB的相关内容。本专利技术给出微架构的流水线、功能部件以及关键结构和部件的组织方式,给出四发射微架构的实现方法和RISC

V指令微操作队列的工作方式,侧重微架构规划并不赘述其中的细节。
[0006]术语解释:
[0007]1、μOP,即Micro Operation,微操作,是指从RISC

V指令中分解出来的具体操作;
[0008]2、ROB,即Reorder Buffer,重排序缓存,实现指令的按序退休;
[0009]3、Retire,退休,标志着指令生命周期的完成;
[0010]4、Commit,提交,指的是指令执行完毕,可以得到指令的结果;
[0011]5、Cache,即缓存,为一高速数据交换存储器;
[0012]6、Cacheline,缓存行,此处假定为64byte;
[0013]7、ROB ID,即ROB记录的指令的标记;
[0014]8、IQ,即Instruction Queue,指令队列;
[0015]9、逻辑寄存器:即RISC

V定义的x0~x31共32个寄存器;
[0016]10、物理寄存器:是指实际实现的寄存器。
[0017]本专利技术的技术方案为:
[0018]一种四发射RISC

V处理器微架构,包括前端和后端,前端和后端包括12级整型流水线;
[0019]前端用于:取指、分支预测、译码、寄存器重命名、指令派遣和寄存器堆访问;
[0020]后端用于:指令执行及重排序缓存,实现指令的按序退休;指令执行包括整数、浮点数和分支指令执行以及访存。
[0021]根据本专利技术优选的,前端包括取指一级、取指二级、译码级、微操作队列分配级、寄存器重命名级、发射级和寄存器访问级,共7级整型流水线;
[0022]后端包括1~4级的执行级和退休级,共5级整型流水线。
[0023]根据本专利技术优选的,所述取指一级包括第一级BTB和ICache,第一级BTB用于第一级的分支预测,ICache用于完成指令取指,取指带宽为128bit,实现四条指令的取指;
[0024]所述取指二级包括预译码单元、第二级BTB、BHT和指令打包单元,预译码单元通过预译码信息译码出指令的类型,用于判断该指令是否访问第二级BTB;第二级BTB使用预译码信息和部分PC信息索引,得到分支指令的跳转地址;BHT用于记录跳转指令的历史,每周期移位一次;指令打包单元用于将来自取指一级的数据内容分割为四条指令;
[0025]所述译码级用于对来自取指二级的四条指令进行译码,指令译码时,根据预译码信息选择合适的译码器;译码级包括四个译码器,其中,三个简单的译码器,一个复杂译码器,简单译码器译码出的微操作数量不多于两个,复杂译码器用于对长指令进行译码,一次译码出两个以上的微操作;
[0026]所述微操作队列分配级用于缓存来自译码级解码出的微操作,同时每周期为后续流水线分配五条微操作;
[0027]所述寄存器重命名级用于对来自微操作队列分配级的五条微操作进行寄存器重命名,解决处理器指令中存在的WAR和WAW名字相关,在这一级中指令还是有序的,在为指令分配了新的物理寄存器号以后,把物理寄存器号和指令ID记录下来提供给ROB,ROB用这些信息记录指令的顺序和指令的写回寄存器;除此以外,寄存器重名命级在对微操作进行重命名以后,根据指令源寄存器和目的寄存器信息进行派遣;
[0028]所述发射级用于将来自于寄存器重命名级的微操作分类型缓存到不同的发射队列中;
[0029]所述寄存器访问级用于处理来自各个发射队列端口的访问请求。
[0030]根据本专利技术优选的,所述执行级包括整数执行单元、分支指令执行单元、乘法单元、除法单元和访存单元;
[0031]所述整数执行单元用于执行整数补码的加法运算,逻辑运算,以及移位运算;
[0032]所述分支指令执行单元用于计算分支指令的跳转条件和跳转的目标地址;
[0033]所述乘法单元和除法单元分别用于完成流水线式乘法和除法运算;
[0034]所述访存单元用于处理load和store指令,用于访问存储中的数据或者将数据写入存储中;
[0035]整数执行单元一个周期返回执行结果,乘法单元三个周期返回结果,除法单元三至四个周期返回结果,访存单元也有自己的流水级,包括数据缓存级、数据访问级、地址产生级和写回级。
[0036]所述退休级包括ROB和与寄存器重命名级共同维护的寄存器重命名表,寄存器重
命名表的每一个表项包含指令的ID、指令的目的寄存器号和指令是否写回的标志;ROB的写入是有序的,按照来自寄存器重命名级的指令的顺序有序的写入,当执行级完成指令的全部微操作的执行以后,置位写回标志,表示这条指令已经提交,已经提交的指令中选择最老的指令进行退休,已经退休的指令生命周期结束;对于访存型指令,还设置write buffer,数据从write buffer写到存储器后才真正更改存储器中的数据。
[0037]上述四发射RISC本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种四发射RISC

V处理器微架构,其特征在于,包括前端和后端,前端和后端包括12级整型流水线;前端用于:取指、分支预测、译码、寄存器重命名、指令派遣和寄存器堆访问;后端用于:指令执行及重排序缓存,实现指令的按序退休;指令执行包括整数、浮点数和分支指令执行以及访存。2.根据权利要求1所述的一种四发射RISC

V处理器微架构,其特征在于,前端包括取指一级、取指二级、译码级、微操作队列分配级、寄存器重命名级、发射级和寄存器访问级,共7级整型流水线;后端包括1~4级的执行级和退休级,共5级整型流水线。3.根据权利要求2所述的一种四发射RISC

V处理器微架构,其特征在于,所述取指一级包括第一级BTB和ICache,第一级BTB用于第一级的分支预测,ICache用于完成指令取指,取指带宽为128bit,实现四条指令的取指;所述取指二级包括预译码单元、第二级BTB、BHT和指令打包单元,预译码单元通过预译码信息译码出指令的类型,用于判断该指令是否访问第二级BTB;第二级BTB使用预译码信息和部分PC信息索引,得到分支指令的跳转地址;BHT用于记录跳转指令的历史,每周期移位一次;指令打包单元用于将来自取指一级的数据内容分割为四条指令;所述译码级用于对来自取指二级的四条指令进行译码,指令译码时,根据预译码信息选择合适的译码器;译码级包括四个译码器,其中,三个简单的译码器,一个复杂译码器,简单译码器译码出的微操作数量不多于两个,复杂译码器用于对长指令进行译码,一次译码出两个以上的微操作;所述微操作队列分配级用于缓存来自译码级解码出的微操作,同时每周期为后续流水线分配五条微操作;所述寄存器重命名级用于对来自微操作队列分配级的五条微操作进行寄存器重命名,解决处理器指令中存在的WAR和WAW名字相关,在这一级中指令还是有序的,在为指令分配了新的物理寄存器号以后,把物理寄存器号和指令ID记录下来提供给ROB,ROB用这些信息记录指令的顺序和指令的写回寄存器;除此以外,寄存器重名命级在对微操作进行重命名以后,根据指令源寄存器和目的寄存器信息进行派遣;所述发射级用于将来自于寄存器重命名级的微操作分类型缓存到不同的发射队列中;所述寄存器访问级用于处理来自各个发射队列端口的访问请求。4.根据权利要求2所述的一种四发射RISC

V处理器微架构,其特征在于,所述执行级包括整数执行单元、分支指令执行单元、乘法单元、除法单元和访存单元;所述整数执行单元用于执行整数补码的加法运算,逻辑运算,以及移位运算;所述分支指令执行单元用于计算分支指令的跳转条件和跳转的目标地址;所述乘法单元和除法单元分别用于完成流水线式乘法和除法运算;所述访存单元用于处理load和store指令,用于访问存储中的数据或者将数据写入存储中;整数执行单元一个周期返回执行结果,乘法单元三个周期返回结果,除法单元三至四个周期返回结果,访存单元也有自己的流水级,包括数据缓存级、数据访问级、地址产生级和写回级;所述退休级包括ROB和与寄存器重命名级共同维护的寄存器重命名表,寄存器重命名
表的每一个表项包含指令的ID、指令的目的寄存器号和指令是否写回的标志;ROB的写入是有序的,按照来自寄存器重命名级的指令的顺序有序的写入,当执行级完成指令的全部微操作的执行以后,置位写回标志,表示这条指令已经提交,已经提交的指令中选择最老的指令进行退休,已经退休的指令生命周期结束;对于访存型指令,还设置write buffer,数据从write buffer写到存储器后才真正更改存储器中的数据。5.权利要求1

4任一所述的四发射RISC

V处理器微架构的工作方法,其特征在于,包括:1)...

【专利技术属性】
技术研发人员:周莉贾思敏薛立晓牟进正王肖丛孙田弋
申请(专利权)人:山东大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1