[发明专利]一种软硬件协同分支指令预测方法及装置在审
申请号: | 201610973045.6 | 申请日: | 2016-11-07 |
公开(公告)号: | CN108062236A | 公开(公告)日: | 2018-05-22 |
发明(设计)人: | 施慧;卢腾;顾成成 | 申请(专利权)人: | 杭州华为数字技术有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 310053 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软硬件 协同 分支 指令 预测 方法 装置 | ||
本发明实施例公开了一种软硬件协同分支指令预测方法,所述方法应用于处理器,所述处理器包括分支预测寄存器、计数寄存器和分支预测器,包括:所述分支预测寄存器获取操作数据的数据长度的比特序列,并向所述分支预测器依次输出所述数据长度的比特序列;所述计数寄存器对所述数据长度的比特序列的有效位数进行统计,并根据所述比特序列的有效位数指示所述分支预测寄存器向所述分支预测器依次输出所述数据长度的比特序列;所述分支预测器根据所述数据长度的比特序列,指导分支指令预测。本发明实施例还公开了一种软硬件协同分支指令预测装置。采用本发明实施例,可以提高连续分支预测准确率。
技术领域
本发明涉及电子技术领域,尤其涉及一种软硬件协同分支指令预测方法及装置。
背景技术
分支是指程序运行时需要改变的节点,分支分为有无条件分支和有条件分支,其中,无条件分支只需要CPU(Central Processing Unit,中央处理器)按指令顺序执行,而条件分支则必须根据处理结果再决定程序运行方向是否改变。分支预测是现代处理器用来提高CPU执行速度的一种手段,首先对程序的分支流程进行预测,然后预先读取其中一个分支指令并解码来减少等待译码器的时间。
程序的条件分支是程序指令在流水线处理得到指令结果之后再执行的,所以,当CPU等待指令结果时,流水线也处于空闲状态等待分支指令,导致时钟周期浪费。如图1所示,图1现有技术方案提供的一种分支指令执行的流程图。在该分支指令执行过程中,需要7个时钟周期才能完成分支跳转判断,如果CPU能在前条指令结果出来之前就能预测到分支是否转移,则可以提前执行相应的指令,从而避免流水线的空闲等待,提高CPU的运算速度。但是,如果前指令结果出来后证明分支预测错误,则必须将已经装入流水线执行的指令和结果全部清除,然后再装入正确指令重新处理,这样会导致指令执行速度更慢。如图2所示,图2现有技术方案提供的另一种分支指令执行的流程图。在分支指令执行过程中,如果能够正确预测分支指令,则程序在5个时钟周期可以跳转,反之,则需要11个时钟周期。
在现有技术方案中,分支预测可以分为动态分支预测和静态分支预测两类方法。如图3所示,图3是现有技术方案提供的一种动态分支预测方法的示意图,该方法为2LevelAdaptive Training(二级自适应训练),首先,对于每一条分支跳转指令,存在着一个对应的Branch History Register(HR,分支历史寄存器),用于累积记录每次跳转的结果:跳转则左移补1,不跳则左移补0,产生一个历史跳转记录存储在HR中;然后,需要进行分支预测时,根据当前跳转指令对应HR的记录,视作不同的状态机,索引到Pattern Table(PT,阵列表)中对应的状态,得到Sc用于进行预测;最后,本次分支执行的实际结果,会输入到该分支HR记录所对应的状态机进行训练,自适应地优化该状态机的预测结果。但是,2LevelAdaptive Training依赖于历史记录来进行预测,可以很好的预测有规律的循环类分支,但是对于无规律的连续跳转分支,2Level Adaptive Training均无法有效的覆盖到这种场景,若实际应用中存在反复执行连续分支的情况,则会因为分支预测失败的开销导致CPU性能降低。如图4所示,图4提供了一种无规律的连续跳转分支的示意图。在这种连续跳转分支中,由于多个跳转之间没有联系,且行为不确定,并且分支执行结果多依赖与程序运行的实时状态,历史跳转记录的参考价值不大,影响分支预测的准确性。
发明内容
本发明实施例提供一种软硬件协同分支指令预测方法及装置。可以解决现有技术方案中分支预测准确性不高的技术问题。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华为数字技术有限公司,未经杭州华为数字技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610973045.6/2.html,转载请声明来源钻瓜专利网。