一种基于分支预测的值预测方法、装置及介质制造方法及图纸

技术编号:31025966 阅读:18 留言:0更新日期:2021-11-30 03:27
本发明专利技术公开了一种基于分支预测的值预测方法、装置及介质,本发明专利技术基于分支预测的值预测方法包括在指令译码后根据指令译码结果判断是否为可进行值预测的分支指令;在寄存器重命名阶段,针对可进行值预测的分支指令利用值预测结果提前获取寄存器值并修改体系结构状态,否则进行普通的寄存器重命名操作。译码以及译码前的步骤,以及寄存器重命名后的步骤则与现有指令执行过程相同。本发明专利技术在乱序微处理器中,利用分支预测的结果进行指令结果的预测,能够提前获取寄存器值并且该预测不会带来额外的性能损失。额外的性能损失。额外的性能损失。

【技术实现步骤摘要】
一种基于分支预测的值预测方法、装置及介质


[0001]本专利技术涉及处理器微架构领域,具体涉及一种基于分支预测的值预测方法、装置及介质。

技术介绍

[0002]微处理器中分支指令会改变当前程序的执行流,使得程序调往其他地址执行。而确定分支指令的目标地址需要在该指令执行完之后才能得到。为了能够尽快得到分支指令的目标地址,在当前的高性能微处理器中,普遍都采用了分支预测技术。分支预测技术通过当前指令的地址,在取指令的同时,对分支进行预测,预测分支的方向和分支的地址。这样,就不用等待分支指令执行完成,才能够获得分支的目标地址,减少了流水线中的空泡,提高程序执行的性能。如果分支预测是正确的,那么程序就正常按此执行,如果分支预测错误,需要清除该分支指令之后的所有指令,重新从分支指令的目标处开始执行。
[0003]值预测是另一类预测技术,在指令执行之前预测该指令执行的结果。值预测方法通常基于该指令的历史,对未来该指令的值进行预测。值预测的方法可以在指令尚未执行时,预测获得该指令的结果,从而及早唤醒依赖该指令的其他指令。值预测在预测正确的情况下,可以获本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于分支预测的值预测方法,其特征在于,包括:1)在指令译码后根据指令译码结果判断是否为可进行值预测的分支指令;2)在寄存器重命名阶段,针对可进行值预测的分支指令利用值预测结果提前获取寄存器值并修改体系结构状态,否则进行普通的寄存器重命名操作。2.根据权利要求1所述的基于分支预测的值预测方法,其特征在于,步骤1)中可进行值预测的分支指令包括寄存器型分支指令,所述寄存器型分支指令是指通过比较两个寄存器r1和r2的值确定是否跳转到指令指定的目标地址<target>的分支指令或分支指令对,且两个寄存器r1和r2的值相等。3.根据权利要求2所述的基于分支预测的值预测方法,其特征在于,步骤2)中针对可进行值预测的分支指令利用值预测结果提前获取寄存器值并修改体系结构状态时,针对寄存器型分支指令的操作包括:若寄存器型分支指令的两个寄存器r1和r2的指令都已经执行完,并将结果写到了寄存器中,则针对该寄存器型分支指令不用做任何操作;若寄存器型分支指令的两个寄存器r1和r2有一个的结果已经产生,那么将还未产生结果的寄存器映射到已经产生结果的寄存器的物理寄存器上。4.根据权利要求3所述的基于分支预测的值预测方法,其特征在于,步骤2)中针对可进行值预测的分支指令利用值预测结果提前获取寄存器值并修改体系结构状态时,还包括若寄存器型分支指令的两个寄存器r1和r2的指令都未产生时,针对该寄存器型分支指令不用做任何操作,或者将两个寄存器r1和r2在映射表中做上标记,且在该寄存器型分支指令之后所有引用寄存器r1和r2的指令都将被标记上,当寄存器r1和r2中任何一个被写时,引用寄存器r1和r2的指令将都被唤醒并获取数据。5.根据权利要求1所述的基于分支预测的值预测方法,其特征在于,步骤1)中可进行值预测的分支指令包括0比较型分支指令,所述0比较型分支指令是指通过比较寄存器r1和立即数0的值确定是否跳转到指...

【专利技术属性】
技术研发人员:郑重孙彩霞黄立波雷国庆王俊辉邓全倪晓强郭维隋兵才郭辉
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:

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

1