一种RISC架构处理器及其并行流水线结构设计方法技术

技术编号:30834031 阅读:16 留言:0更新日期:2021-11-18 12:55
本发明专利技术公开一种RISC架构处理器及其并行流水线结构设计方法,涉及处理器技术领域。所述处理器包括:指令存储器,其读取数据位宽是指令位宽的n倍;处理器内核,包括不参与流水线的取指令部件、不包含取指令的流水线部件和用于存储n条指令的一组指令缓存器,取指令部件和流水线部件组成并行流水线结构;取指令部件在每n个时钟周期读取一次指令存储器,每次在n个时钟周期内从指令存储器取出至少1条至多n条指令,在第n个时钟周期结束之前将指令存入指令缓存器;流水线部件在每个时钟周期从指令缓存器中取出一条指令,并对所述指令进行指令译码、指令执行、存储器访问或数据回写的流水线操作。通过本发明专利技术实施例,可以降低处理器的成本和设计难度。成本和设计难度。成本和设计难度。

【技术实现步骤摘要】
一种RISC架构处理器及其并行流水线结构设计方法


[0001]本专利技术涉及处理器
,尤其涉及一种RISC架构处理器及其并行流水线结构设计方法。

技术介绍

[0002]随着集成电路技术的发展,集成电路的工艺越来越先进,器件速度也变得越来越快,处理器的性能也越来越高。
[0003]目前的处理器中,根据指令集的技术特点上大致分成两大种类架构:复杂指令集处理器(Complex Instruction Set Computing,CISC)和精简指令集处理器(Reduced Instruction Set Computing,RISC)。RISC架构的指令集系统相对简单,只需要实现有限的常用且比较简单的指令,其他的复杂操作通过编译技术由多条指令组合完成。
[0004]但是,随着RISC架构的处理器的性能也越来越高,处理器中各种功能单元部件性能的提高步伐并不一致,其取决于不同类型器件之间的差异,同时也受电路原理制约,导致在同一工艺条件下有些功能单元部件的性能可能落后于其他功能单元部件;特别是存储器的速度一般而言是处理器中的短板,其中又以非易失性存储器的速度最慢;而处理器中一般情况下会将非易失性存储器用作指令存储器。
[0005]为了弥补指令读取速度过慢的问题通常采用高速大容量的SRAM(Static Random Access Memory,静态随机存取存储器)作为指令缓存器;但是在低端嵌入式微处理器中内置大容量的指令缓存器会导致处理器的成本大幅上升,同时也大大增加了处理器电路的设计和生产难度。<br/>
技术实现思路

[0006]本专利技术实施例旨在提供一种RISC架构处理器及其并行流水线结构设计方法,可以使处理器在使用速度较慢的存储器作为指令存储时仍能匹配处理器中其他速度比较快的硬件电路,以实现不受存储器速度限制的流水线设计,无需使用高速大容量的SRAM作为指令缓存器,降低处理器的成本和设计难度,特别适用于低成本嵌入式微处理器领域。
[0007]为解决上述技术问题,本专利技术实施例提供以下技术方案:一种RISC架构处理器,所述处理器包括:处理器内核和指令存储器;其中:所述指令存储器的读取数据位宽是指令位宽的n倍,其中指令存储器的读取周期小于n倍处理器时钟周期;其中,n≥2;所述处理器内核包括不参与流水线的取指令部件、不包含取指令的流水线部件和用于存储n条指令的一组指令缓存器,所述取指令部件和所述流水线部件组成并行流水线结构,所述处理器内核使所述取指令部件和流水线部件并行工作;所述取指令部件,用于在每n个时钟周期读取一次指令存储器,每次在n个时钟周期内从指令存储器取出至少1条至多n条指令,并在第n个时钟周期结束之前将取出的指令存入指令缓存器;
所述流水线部件,用于在每个时钟周期从指令缓存器中取出一条指令,并对所述指令进行指令译码、指令执行、存储器访问或者数据回写的流水线操作。
[0008]可选地,所述流水线部件包括四级流水线,第一级为指令译码级,第二级为指令执行级,第三级为存储器访问级,第四级为数据回写级。
[0009]可选地,所述处理器内核还包括若干个通用功能寄存器;所述指令译码级,用于在每个时钟周期从指令缓存器中取出一条指令进行译码处理,并根据译码结果读取所述通用功能寄存器的数据。
[0010]可选地,所述指令执行级,用于在每个时钟周期执行一条指令。
[0011]可选地,所述处理器还包括数据存储器;所述存储器访问级,用于在每个时钟周期完成一次访问所述数据存储器。
[0012]可选地,所述数据回写级,用于在每个时钟周期将指令执行完成的结果或从数据存储器读取出的结果写入通用功能寄存器。
[0013]可选地,所述处理器在工作时,在不同的情况下有不同的工作状态,包括:第一种工作状态:从第一个时钟开始,所述取指令部件IF从指令存储器中读取指令,完成读取指令后得到n条指令并存入指令缓存器;流水线部件在第n个时钟之前都处于等待状态。
[0014]第二种工作状态:流水线部件开始工作,每个时钟从指令缓存器中取得一条指令并执行;与此同时,取指令部件并行地在每n个时钟从指令存储器中读取一次指令并填充到指令缓存器。
[0015]第三种工作状态:流水线部件在指令执行过程中发生资源冲突或在执行多时钟周期指令导致流水线阻塞,流水线进入阻塞等待状态,取指令部件相应地延长读取时钟,直到流水线阻塞状态消除,流水线继续正常执行后序指令。
[0016]第四种工作状态:流水线部件在执行指令过程中发生程序跳转,指令在数据回写级阶段执行跳转操作,该跳转操作取消了流水线中正在运行的后序指令操作,同时更新了取指令部件中的指令地址,取指令部件的取指令的操作时钟周期清零,重新计算取新指令的时钟周期,如果跳转地址为n的整数倍则转换到第一种工作状态,如果跳转地址为n的非整数倍则转换到第五种工作状态。
[0017]第五种工作状态:流水线部件执行完跳转操作后,如果跳转地址为n的非整数倍,则所述取指令部件在n个时钟周期后读取到少于n条的指令并存入指令缓存器中。
[0018]第六种工作状态:指令缓存器中存储的指令数为m,其中m&lt;n,每个时钟周期流水线部件从指令缓存器中取出1条指令执行操作,当经过m个时钟后周期,指令缓存器中存储的指令完全被取出,在下一个时钟周期流水线进入无操作等待状态,直到第n个时钟周期后,取指令部件将n条指令存入指令缓存器后,处理器内核的并行流水线结构切换到第二种工作状态。
[0019]为解决上述技术问题,本专利技术实施例还提供以下技术方案:一种RISC架构处理器的并行流水线结构设计方法,应用于本专利技术任一实施例所述的一种RISC架构处理器,所述处理器包括:指令存储器和处理器内核;其中,所述方法包括:S1、设置指令存储器的读取数据位宽是指令位宽的n倍,其中指令存储器的读取周期小于n倍处理器时钟周期;其中,n≥2;
S2、在处理器内核设置不参与流水线的取指令部件、不包含取指令的流水线部件和用于存储n条指令的一组指令缓存器,所述取指令部件和所述流水线部件组成并行流水线结构,所述处理器内核使所述取指令部件和流水线部件并行工作;S3、取指令部件在每n个时钟周期读取一次指令存储器,每次在n个时钟周期内从指令存储器取出至少1条至多n条指令,并在第n个时钟周期结束之前将取出的指令存入指令缓存器;S4、流水线部件在每个时钟周期从指令缓存器中取出一条指令,并对所述指令进行指令译码、指令执行、存储器访问或者数据回写的流水线操作。
[0020]与现有技术相比较,本专利技术实施例提供的一种RISC架构处理器及其并行流水线结构设计方法,在本实施例中,通过所述处理器包括处理器内核和指令存储器;其中:所述指令存储器的读取数据位宽是指令位宽的n倍(n≥2),其中指令存储器的读取周期小于n倍处理器时钟周期;所述处理器内核包括不参与流水线的取指令部件、不包含取指令的流水线部件和用于存储n条指令的一组指令缓存器,所述取指令部件和所述流水线部件组成并行流水线结构,所述处理器内核使所述取本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种RISC架构处理器,其特征在于,所述处理器包括:处理器内核和指令存储器;其中:所述指令存储器的读取数据位宽是指令位宽的n倍,其中指令存储器的读取周期小于n倍处理器时钟周期;其中,n≥2;所述处理器内核包括不参与流水线的取指令部件、不包含取指令的流水线部件和用于存储n条指令的一组指令缓存器,所述取指令部件和所述流水线部件组成并行流水线结构,所述处理器内核使所述取指令部件和流水线部件并行工作;所述取指令部件,用于在每n个时钟周期读取一次指令存储器,每次在n个时钟周期内从指令存储器取出至少1条至多n条指令,并在第n个时钟周期结束之前将取出的指令存入指令缓存器;所述流水线部件,用于在每个时钟周期从指令缓存器中取出一条指令,并对所述指令进行指令译码、指令执行、存储器访问或者数据回写的流水线操作。2.根据权利要求1所述的处理器,其特征在于,所述流水线部件包括四级流水线,第一级为指令译码级,第二级为指令执行级,第三级为存储器访问级,第四级为数据回写级。3.根据权利要求2所述的处理器,其特征在于,所述处理器内核还包括若干个通用功能寄存器;所述指令译码级,用于在每个时钟周期从指令缓存器中取出一条指令进行译码处理,并根据译码结果读取所述通用功能寄存器的数据。4.根据权利要求3所述的处理器,其特征在于,所述指令执行级,用于在每个时钟周期执行一条指令。5.根据权利要求4所述的处理器,其特征在于,所述处理器还包括数据存储器;所述存储器访问级,用于在每个时钟周期完成一次访问所述数据存储器。6.根据权利要求5所述的处理器,其特征在于,所述数据回写级,用于在每个时钟周期将指令执行完成的结果或从数据存储器读取出的结果写入通用功能寄存器。7.根据权利要求6所述的处理器,其特征在于,所述处理器在工作时,在不同的情况下有不同的工作状态,包括:第一种工作状态:从第一个时钟开始,所述取指令部件从指令存储器中读取指令,完成读取指令后得到n条指令并存入指令缓存器;流水线部件在第n个时钟之前都处于等待状态。8.根据权利要求7所述的处理器,其特征在于,第二种工作状态:流水线部件开始工作,每个时钟从指令缓存器中取得一条指令并执行;与此同时,取指令部件并行地在每n个时钟从指令存储器中读取一次指令并填充到指令缓存器。9.根据权利要求8所述的处理器,其特征在于,第三种工作...

【专利技术属性】
技术研发人员:杨智华周黄赵文攀
申请(专利权)人:深圳市智想科技有限公司
类型:发明
国别省市:

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

1