一种用于risc-v处理器的三级流水线微架构制造技术

技术编号:39291025 阅读:9 留言:0更新日期:2023-11-07 10:59
本发明专利技术公开了一种用于risc

【技术实现步骤摘要】
一种用于risc

v处理器的三级流水线微架构


[0001]本专利技术涉及一种用于risc

v处理器的三级流水线微架构,属于集成电路结构


技术介绍

[0002]由于随着流水线级数加深,会消耗更多的寄存器,从而带来更多的面积开销,同时对于分支预测失败只能采取冲刷流水线的方法解决,流水线级数越多,处理器延时就越大。
[0003]早期的经典流水线是五级流水线,分别为取指、译码、执行、访存和写回。现代的处理器往往具有极深的流水线级数,譬如高达十几级,或者二十几级的深度,所以能够运行更高的主频。但是在边缘端物联网设备中,往往不需要这么高的工作性能,而是对低功耗小面积有着更加高的要求,所以有了对在性能够用的条件下低功耗面积更低的处理器需求。

技术实现思路

[0004]本专利技术的目的在于提供一种用于risc

v处理器的三级流水线微架构,解决现有技术中存在的边缘端物联网设备中功耗高、面积大的问题。
[0005]为实现以上目的,本专利技术是采用下述技术方案实现的:
[0006]本专利技术提供了一种用于risc

v处理器的三级流水线微架构,包括:取指单元、译码单元和执行单元;
[0007]所述取指单元从自身的指令存储器中取出指令发送给译码单元;
[0008]所述译码单元解析所述指令,并将解析后的指令发送给所述执行单元;
[0009]所述执行单元根据解析后的指令执行对应的操作,在执行操作的过程中从自身的数据存储器中读取所需要的数据,在执行完操作的同一时钟周期完成数据的访存,在执行操作后将运算结果写回到所述译码单元中的通用寄存器中。
[0010]进一步的,所述取指单元包括指令地址寄存器和指令存储器,所述指令地址寄存器的输出端连接指令存储器的输入端,所述指令地址寄存器将指令地址发送给指令存储器,所述指令存储器根据所述指令地址取出对应的指令发送给所述译码单元。
[0011]进一步的,所述指令地址寄存器在发送完指令地址后复位为0,然后监测是否接收到跳转信号或暂停信号,若没有接收到跳转信号或暂停信号,则指令地址寄存器的值加4后重新发送指令地址,若接收到跳转信号,则由发送跳转信号的多路选择器将跳转信号中包含的跳转地址发送给指令地址寄存器,若接收到暂停信号,则指令地址寄存器的值保持不变。
[0012]进一步的,所述指令地址寄存器中设有一个用于计数的cycle变量,它在每个时钟上升沿触发时进行自增操作。
[0013]进一步的,所述译码单元包括指令译码器和通用寄存器,所述指令译码器根据指令中的opcode、funct3和funct7段解析出指令的类型和操作码,解析完成后发送给所述执行单元,所述通用寄存器包括两个读端口和一个写回端口,所述读端口根据指令中的寄存
器索引输出对应的操作数,所述写回端口用于接收所述运算结果。
[0014]进一步的,所述执行单元包括算数逻辑运算模块、CSR模块、地址生成模块和乘除法器;
[0015]所述地址生成模块,用于生成写回地址、读操作地址和写操作地址;
[0016]所述算数逻辑运算模块,用于根据解析后的指令进行逻辑运算、加减法和移位操作,完成操作后根据所述写回地址将运算结果写回通用寄存器;
[0017]所述乘除法器,用于根据解析后的指令进行乘除法操作,完成操作后根据所述写回地址将运算结果写回通用寄存器;
[0018]所述CSR模块包括CSR寄存器组和CSR读写控制模块,所述CSR寄存器组根据所述写操作地址更新对应的CSR寄存器,所述CSR寄存器组根据所述读操作地址返回对应的CSR寄存器的值,所述CSR读写控制模块用于控制CSR寄存器组的读写操作。
[0019]进一步的,所述执行单元还输出所述指令中的opcode给多路选择器作为其控制信号,使得多路选择器输出跳转或非跳转的指令地址给指令地址寄存器。
[0020]与现有技术相比,本专利技术所达到的有益效果是:
[0021]本专利技术提供的一种用于risc

v处理器的三级流水线微架构,采用三级流水线结构,以在兼顾处理器功能的前提下实现低功耗和小面积的设计目的,在执行单元对应的流水线中进行访存和写回,相比于现有技术中的五级流水线、十几级甚至二十几级流水线,其逻辑结构更简单,在边缘端物联网设备中,能够满足其性能要求,同时降低了功耗,且面积更小,更贴合边缘端物联网市场的处理器需求,在边缘端物联网市场有广阔的应用前景。
附图说明
[0022]图1是本专利技术实施例提供的一种用于risc

v处理器的三级流水线微架构的示意图;
[0023]图2是本专利技术实施例提供的流水线示意图;
[0024]图3是本专利技术实施例提供的三级流水线仿真波形图;
[0025]图4是本专利技术实施例提供的risc

v指令格式示意图;
[0026]图5是本专利技术实施例提供的RV32I部分整数指令示意图;
[0027]图6是本专利技术实施例提供的译码单元仿真波形示意图;
[0028]图7是本专利技术实施例提供的执行单元仿真波形示意图;
[0029]图8是本专利技术实施例提供的验证结果示意图。
具体实施方式
[0030]下面结合附图对本专利技术作进一步描述,以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。
[0031]如图2所示,本专利技术提供了一种用于risc

v处理器的三级流水线微架构,包括:取指单元、译码单元和执行单元;取指单元从自身的指令存储器中取出指令发送给译码单元;译码单元解析所述指令,并将解析后的指令发送给执行单元;执行单元根据解析后的指令执行对应的操作,在执行操作的过程中从自身的数据存储器中读取所需要的数据,在执行完操作的同一时钟周期完成数据的访存,在执行操作后将运算结果写回到译码单元中的通
用寄存器中。
[0032]如图1所示,三级流水线包括:
[0033]流水线的第一级为指令取指IF(Instraction Fetch):将指令从指令存储器(Instraction Memory)中读取出来的过程。
[0034]流水线的第二级为指令译码ID(Instraction Decode):将从指令存储器中读取出来的指令进行解析的过程。
[0035]流水线的第三级为指令执行EX(Instraction Execute):按照解析后的指令进行具体的运算过程,包括从数据存储器(Data Memory)中读取参与运算所需要的数据以及将运算后的结果保存到存储器或寄存器中。
[0036]如图1所示,在本实施例中,采用32位risc

v处理器,三级流水线微架构的具体实现方法如下:首先是指令取址阶段,程序计数器PC(Program Counter,指令地址寄存器)包含需要执行指令的地址,第一步本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于risc

v处理器的三级流水线微架构,其特征在于,包括:取指单元、译码单元和执行单元;所述取指单元从自身的指令存储器中取出指令发送给译码单元;所述译码单元解析所述指令,并将解析后的指令发送给所述执行单元;所述执行单元根据解析后的指令执行对应的操作,在执行操作的过程中从自身的数据存储器中读取所需要的数据,在执行完操作的同一时钟周期完成数据的访存,在执行操作后将运算结果写回到所述译码单元中的通用寄存器中。2.根据权利要求1所述的用于risc

v处理器的三级流水线微架构,其特征在于,所述取指单元包括指令地址寄存器和指令存储器,所述指令地址寄存器的输出端连接指令存储器的输入端,所述指令地址寄存器将指令地址发送给指令存储器,所述指令存储器根据所述指令地址取出对应的指令发送给所述译码单元。3.根据权利要求2所述的用于risc

v处理器的三级流水线微架构,其特征在于,所述指令地址寄存器在发送完指令地址后复位为0,然后监测是否接收到跳转信号或暂停信号,若没有接收到跳转信号或暂停信号,则指令地址寄存器的值加4后重新发送指令地址,若接收到跳转信号,则由发送跳转信号的多路选择器将跳转信号中包含的跳转地址发送给指令地址寄存器,若接收到暂停信号,则指令地址寄存器的值保持不变。4.根据权利要求2所述的用于risc

v处理器的三级流水线微架构,其特征在于,所述指令地址寄存器中设有一个用于计数的cycle变量,它在每个时钟上升沿触发时进行自...

【专利技术属性】
技术研发人员:乔树山王建超游恒尚德龙周玉梅
申请(专利权)人:中科南京智能技术研究院
类型:发明
国别省市:

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

1