[发明专利]间接分支预测有效
申请号: | 201410092214.6 | 申请日: | 2014-03-13 |
公开(公告)号: | CN104049938B | 公开(公告)日: | 2017-05-03 |
发明(设计)人: | M·V·马努基安 | 申请(专利权)人: | 想象力科技有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/32 |
代理公司: | 永新专利商标代理有限公司72002 | 代理人: | 刘瑜,王英 |
地址: | 英国赫*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 间接 分支 预测 | ||
1.一种用于预测处理器所执行的程序中的间接分支指令的目标地址的方法(900),所述方法包括:
在间接分支预测目标表中存储间接分支指令的多个预测的目标地址,每个预测的目标地址是由间接路径历史与被采用和不被采用历史的组合进行索引的,所述间接路径历史包括多个之前的间接分支指令的目标地址的至少一部分,所述被采用和不被采用历史包括多个之前的条件分支指令的结果;
在索引产生器处,接收标识间接分支指令的信息,所述标识间接分支指令的信息包括所述间接分支指令的地址(902);
在所述索引产生器处,获得现行的间接路径历史和现行的被采用和不被采用历史,所述现行的间接路径历史包括多个之前预测的间接分支指令的预测的目标地址的至少一部分,所述现行的被采用和不被采用历史包括多个之前预测的条件分支指令的结果(904,906);
将所述现行的间接路径历史与所述现行的被采用和不被采用历史中的一个修改为包括所述间接分支指令的地址的至少一部分;
在所述修改之后,在所述索引产生器处,将所述现行的间接路径历史与所述现行的被采用和不被采用历史进行组合,以产生所标识的间接分支指令的索引(908);
使用所标识的间接分支指令的索引来识别所述间接分支预测目标表中的预测的目标地址(910);
如果所识别的预测的目标地址是有效的,则预测所标识的间接分支指令的目标地址是所识别的预测的目标地址(912、914)。
2.根据权利要求1所述的方法(900),其中,将所述现行的间接路径历史与所述现行的被采用和不被采用历史进行组合包括:在所述现行的间接路径历史的至少一部分与所述现行的被采用和不被采用历史的至少一部分上执行散列函数。
3.根据权利要求2所述的方法(900),其中,所述散列函数是异或函数。
4.根据权利要求1所述的方法(900),还包括:
在更新逻辑单元处,接收与已执行的间接分支指令有关的信息(1002),所述与已执行的间接分支指令有关的信息包括所述已执行的间接分支指令的实际目标地址;以及
在所述更新逻辑单元处,基于所述实际目标地址更新所述间接分支预测目标表(1010)。
5.根据权利要求4所述的方法(900),其中,更新所述间接分支预测目标表包括:
在所述更新逻辑单元处,获得提交的间接路径历史与提交的被采用和不被采用历史(1004、1006);
在所述更新逻辑单元处,将所述提交的间接路径历史与所述提交的被采用和不被采用历史进行组合(1008),以产生所述已执行的间接分支指令的索引;
使用所述已执行的间接分支指令的索引来识别所述间接分支预测目标表中的预测的目标地址;以及
用所述已执行的间接分支指令的实际目标地址来替换所述已执行的间接分支指令的索引所识别的预测的目标地址(1010)。
6.根据权利要求5所述的方法(900),其中,所述提交的间接路径历史包括多个之前执行的间接分支指令的实际目标地址的至少一部分。
7.根据权利要求5或6所述的方法(900),其中,所述提交的被采用和不被采用历史包括多个之前执行的条件分支指令的结果。
8.根据权利要求1到6中的任意一项所述的方法(900),还包括:如果所识别的预测的目标地址不是有效的,则暂停所述处理器的取出级。
9.根据权利要求1到6中的任意一项所述的方法(900),其中,产生所标识的间接分支指令的索引包括:仅将所述现行的间接路径历史与所述现行的被采用和不被采用历史进行组合。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于想象力科技有限公司,未经想象力科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410092214.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种纳米粒子组装三维结构的制造方法
- 下一篇:噪音发电装置