基于发射缓冲的超标量处理系统、方法及相关设备与流程

文档序号:36911228发布日期:2024-02-02 21:39阅读:13来源:国知局
基于发射缓冲的超标量处理系统、方法及相关设备与流程

本发明适用于处理器,尤其涉及一种基于发射缓冲的超标量处理系统、方法及相关设备。


背景技术:

1、第五代精简指令集(risc-v)是一个免费、开放、可扩展的指令集架构,基于risc-v指令集实现的处理器系统可以根据工业控制、物联网设备等不同场景进行优化。在现有的处理器系统中,针对系统指令控制和状态寄存器指令等需要在处理器流水线上执行特殊操作的情况,具有一系列特定的处理方法。

2、一种方法是在检测到需要执行特殊操作的指令时,通过全流水线暂停的方式直接停滞整个流水线,阻塞后续指令的执行,以等待特殊操作指令完成执行。很显然的,这样的做法可能导致流水线较长时间的停滞,影响处理器的整体吞吐量。

3、另一种处理方法是在检测到需要执行特殊操作的指令,需要清空流水线部分内容时,触发流水线清空的信号,丢弃已经在流水线中的后续指令,然后重新启动流水线的执行。相较于流水线暂停的方法,这种方法减小了停滞的时间,但需要引入复杂的控制逻辑。

4、此外,还有一些处理器系统通过硬件插入空操作的方法,即在需要执行特殊操作的指令后插入一些不执行任何操作的空操作指令,以填充流水线,维持流水线的稳定性。尽管这种方法有助于保持流水线的正确执行顺序,但需要软件编译器的配合,同时也会增加指令流的长度。

5、综上所述,传统方法在处理器系统中处理特殊操作指令时可能存在效率低下、对流水线影响较大的问题。


技术实现思路

1、本发明提供一种基于发射缓冲的超标量处理系统、方法及相关设备,旨在解决现有处理器系统对于部分类型指令的处理不够灵活而导致的处理效率问题。

2、为解决上述技术问题,第一方面,本发明提供一种基于发射缓冲的超标量处理系统,包括:

3、取指单元,用于根据处理器周期从内存中获取需要执行的指令;

4、译码单元,用于对所述取指单元获取的指令进行解码编译,得到待执行指令;

5、发射缓冲单元,用于暂存所述待执行指令,并按照预设发射规则将所述待执行指令发射到执行单元进行执行;

6、执行单元,用于在处理器流水线上执行接收到的所述待执行指令;

7、写回单元,用于获取所述执行单元对所述待执行指令的执行结果,并将所述执行结果写回处理器的写回寄存器中。

8、更进一步地,所述发射缓冲单元包括:

9、队列子单元,用于将所述待执行指令按照预设队列进行暂存;

10、发射检查子单元,用于按照所述预设发射规则,将所述译码单元发出的所述待执行指令发射到执行单元进行执行,或将所述译码单元发出的所述待执行指令暂存至所述队列子单元中。

11、更进一步地,所述预设发射规则具体为:

12、确定目标指令类型,判断从所述译码单元发射过来的当前的所述待执行指令是否符合所述目标指令类型:

13、若否,将所述待执行指令发射至所述执行单元进行执行;

14、若是,以当前的所述待执行指令作为目标指令,将所述目标指令以及后续的所述待执行指令暂存至所述队列子单元中,并在所述执行单元、所述写回单元中的所有指令执行完成后,从所述队列子单元中选取所述目标指令发射至所述执行单元进行执行。

15、更进一步地,所述预设队列为先进先出队列。

16、更进一步地,所述目标指令类型包括:与状态和控制寄存器指令相关的第一类型指令以及与系统指令相关的第二类型指令。

17、更进一步地,所述发射检查子单元还用于:

18、在所述写回单元获取到所述目标指令的执行结果后:

19、若所述目标指令为所述第一类型指令,则清空处理器流水线,从所述队列子单元中选取所述待执行指令发射至所述执行单元进行执行;

20、若所述目标指令为所述第二类型指令,则从所述队列子单元中选取所述待执行指令发射至所述执行单元进行执行。

21、第二方面,本发明还提供一种基于如上所述的基于发射缓冲的超标量处理系统实现的基于发射缓冲的超标量处理方法,所述超标量处理方法包括以下步骤:

22、s1、通过取指单元根据处理器周期从内存中获取需要执行的指令;

23、s2、通过译码单元对所述取指单元获取的指令进行解码编译,得到待执行指令;

24、s3、在发射缓冲单元中暂存所述待执行指令,并按照预设发射规则将所述待执行指令发射到执行单元进行执行;

25、s4、通过执行单元在处理器流水线上执行其接收到的所述待执行指令;

26、s5、通过写回单元获取所述执行单元对所述待执行指令的执行结果,并将所述执行结果写回处理器的写回寄存器中。

27、更进一步地,步骤s3具体为:

28、通过发射检查子单元,按照所述预设发射规则,将所述译码单元发出的所述待执行指令发射到执行单元进行执行,或将所述译码单元发出的所述待执行指令按照预设队列暂存至队列子单元中。

29、第三方面,本发明还提供一种计算机设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于发射缓冲的超标量处理程序,所述处理器执行所述基于发射缓冲的超标量处理程序时实现如上述实施例中任意一项所述的基于发射缓冲的超标量处理方法中的步骤。

30、第四方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于发射缓冲的超标量处理程序,所述基于发射缓冲的超标量处理程序被处理器执行时实现如上述实施例中任意一项所述的基于发射缓冲的超标量处理方法中的步骤。

31、本发明所达到的有益效果,在于提出了一种包含发射缓冲结构的超标量处理系统,通过发射缓冲这一设计,结合队列和指令检查的方式,对可能影响处理器流水线性能的操作指令进行处理,减小了流水线清空的频率,避免全流水线暂停或清空流水线造成的性能问题,同时,这一设计简化了处理器中流水线的控制逻辑,降低了系统功耗,提高了处理器的整体性能。



技术特征:

1.一种基于发射缓冲的超标量处理系统,其特征在于,包括:

2.如权利要求1所述的基于发射缓冲的超标量处理系统,其特征在于,所述发射缓冲单元包括:

3.如权利要求2所述的基于发射缓冲的超标量处理系统,其特征在于,所述预设发射规则具体为:

4.如权利要求2所述的基于发射缓冲的超标量处理系统,其特征在于,所述预设队列为先进先出队列。

5.如权利要求3所述的基于发射缓冲的超标量处理系统,其特征在于,所述目标指令类型包括:与状态和控制寄存器指令相关的第一类型指令以及与系统指令相关的第二类型指令。

6.如权利要求5所述的基于发射缓冲的超标量处理系统,其特征在于,所述发射检查子单元还用于:

7.一种基于权利要求1-6任一项所述的基于发射缓冲的超标量处理系统实现的基于发射缓冲的超标量处理方法,其特征在于,所述超标量处理方法包括以下步骤:

8.如权利要求7所述的基于发射缓冲的超标量处理方法,其特征在于,步骤s3具体为:

9.一种计算机设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于发射缓冲的超标量处理程序,所述处理器执行所述基于发射缓冲的超标量处理程序时实现如权利要求7、8任意一项所述的基于发射缓冲的超标量处理方法中的步骤。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于发射缓冲的超标量处理程序,所述基于发射缓冲的超标量处理程序被处理器执行时实现如权利要求7、8任意一项所述的基于发射缓冲的超标量处理方法中的步骤。


技术总结
本发明适用于处理器技术领域,尤其涉及一种基于发射缓冲的超标量处理系统、方法及相关设备,所述超标量处理系统包括取指单元,用于根据处理器周期从内存中获取需要执行的指令;译码单元,用于对所述取指单元获取的指令进行解码编译,得到待执行指令发射缓冲单元,用于暂存所述待执行指令,并按照预设发射规则将所述待执行指令发射到执行单元进行执行;执行单元,用于在处理器流水线上执行接收到的所述待执行指令;写回单元,用于获取所述执行单元对所述待执行指令的执行结果,并将所述执行结果写回处理器的写回寄存器中。本发明减小了流水线清空的频率,避免了全流水线暂停或清空流水线造成的性能问题。

技术研发人员:刘宇翔,倪磊
受保护的技术使用者:睿思芯科(深圳)技术有限公司
技术研发日:
技术公布日:2024/2/1
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1