System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及条件指令运行领域,特别涉及一种条件指令的快速跳转和预取装置及方法。
技术介绍
1、在现代超高性能处理器设计当中,提高指令运行效率是提高性能的重点,其中指令的预取和预测是关键技术。指令中常存在跳转指令,当发生条件跳转的情况时,处理器通常需要判断跳转指令跳转条件是否成立,如果满足跳转条件则将跳转地址输入给指令预取装置进行取指;否则顺序执行指令。这种传统的条件指令处理方法显然不能满足高性能需求,因此如何提高分支跳转指令预取和处理方法是一个有意义的研究问题。
2、现有技术通常需要处理器耗时几个周期判断条件是否成立之后才给出跳转指令跳转的目的地址,指令预取装置接收到新地址后需要刷新指令预取堆栈里的已有指令,同时将跳转地址发送给总线去取新指令回来。这一过程虽然准确可靠,但存在处理缓慢的问题,降低了指令执行效率。
技术实现思路
1、为解决上述技术问题,本专利技术提供了一种条件指令的快速跳转和预取装置及方法,提前预取跳转目的指令,解决了跳转指令执行效率低的问题。
2、为达到上述目的,本专利技术的技术方案如下:
3、一种条件指令的快速跳转和预取装置,包括程序存储空间、总线、取指控制器、取指计数器、控制存放器、指令堆栈一、指令堆栈二、控制选择器、译码器和条件判断器;
4、所述程序存储空间用于存放指令;
5、所述总线用于传递指令;
6、所述取指控制器用于控制取指地址的接收和发送,并根据取指地址从程序存储空间找到对应指令
7、所述取指计数器用于产生和接收程序地址,当程序顺序执行时取指计数器利用自加功能产生顺序指令地址;当程序发生不连续的动作时接收译码器发来的跳转指令地址;
8、所述控制存放器用于控制快速跳转指令存放在指令堆栈一或指令堆栈二;
9、所述指令堆栈一用于存放顺序执行的指令;
10、所述指令堆栈二用于存放快速跳转指令预取回的指令,即跳转目的指令;
11、所述控制选择器用于选择从指令堆栈一或指令堆栈二继续取指令,当快速跳转指令经过几个周期完成条件判断后,如果条件不成立,则将继续使用快速跳转指令进去译码器时使用的指令堆栈,如果条件成立,则将切换使用另一个存放了跳转目的指令的指令堆栈;
12、所述译码器用于解码识别指令是否为快速跳转指令,当为快速跳转指令时解码出跳转目的地址传递给取指计数器,并将条件信息传递给后续的条件判断器;
13、所述条件判断器用于判断快速跳转条件是否成立,产生对控制存放器和控制选择器的控制条件。
14、一种条件指令的快速跳转和预取方法,采用如上所述的一种条件指令的快速跳转和预取装置,包括如下过程:
15、(1)取指控制器根据取指计数器发来的顺序指令地址经总线从程序存储空间找到对应指令并取出;
16、(2)控制存放器根据条件判断器发来的控制条件将指令存放在指令堆栈一或指令堆栈二;默认存放在指令堆栈一,若为快速跳转指令预取回的指令,即跳转目的指令则存放在指令堆栈二;
17、(3)控制选择器根据条件判断器发来的控制条件选择从指令堆栈一或指令堆栈二继续取指令,并发送给译码器;当快速跳转指令经过几个周期完成条件判断后,如果条件不成立,则将继续使用快速跳转指令进去译码器时使用的指令堆栈,如果条件成立,则将切换使用另一个存放了跳转目的指令的指令堆栈;
18、(4)译码器判断取出的指令是否为快速跳转指令,当为快速跳转指令时解码出跳转目的地址传递给取指计数器,并将条件信息传递给后续的条件判断器;
19、(5)条件判断器判断快速跳转条件是否成立,产生对控制存放器和控制选择器的控制条件。
20、通过上述技术方案,本专利技术提供的一种条件指令的快速跳转和预取装置及方法具有如下有益效果:
21、本专利技术设计了两组指令存放堆栈,同时设计快速跳转指令给出跳转地址机制。利用其中一个指令堆栈存放正在执行的快速指令及顺序取指的指令,当译码器遇到快速跳转指令,解码出要跳转的目的地址传递给取指计数器,指令预取装置取回的跳转新指令存放在第二个堆栈中,该条指令在后续周期内经过判断跳转条件是否成立,选择从堆栈一还是堆栈二取指令。这项技术提前预取跳转目的指令,解决了跳转指令执行效率低的问题。
22、本专利技术通过在译码器阶段就给出跳转目的地址,节约了译码器到条件判断器中间的时间周期,在条件判断器完成之后就能立马将新跳转指令送入译码器进行译码,相当于提前多个机器周期执行跳转目的指令。
本文档来自技高网...【技术保护点】
1.一种条件指令的快速跳转和预取装置,其特征在于,包括程序存储空间、总线、取指控制器、取指计数器、控制存放器、指令堆栈一、指令堆栈二、控制选择器、译码器和条件判断器;
2.一种条件指令的快速跳转和预取方法,采用如权利要求1所述的一种条件指令的快速跳转和预取装置,其特征在于,包括如下过程:
【技术特征摘要】
1.一种条件指令的快速跳转和预取装置,其特征在于,包括程序存储空间、总线、取指控制器、取指计数器、控制存放器、指令堆栈一、指令堆栈二、控制选择器、译码...
【专利技术属性】
技术研发人员:田姗姗,李阳,王新刚,丁光新,薛晓军,张志伟,
申请(专利权)人:青岛本原微电子有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。