[发明专利]响应于分支预测表调换指令而调换分支方向历史及相关的系统和方法有效
申请号: | 201380046029.7 | 申请日: | 2013-09-12 |
公开(公告)号: | CN104603747B | 公开(公告)日: | 2018-06-05 |
发明(设计)人: | 小约翰·威廉·哈斯金斯 | 申请(专利权)人: | 高通股份有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38 |
代理公司: | 北京律盟知识产权代理有限责任公司 11287 | 代理人: | 宋献涛 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 调换 分支预测表 分支方向 分支预测 指令 高速缓冲存储器 分支历史 软件代码 响应 指派 指令处理系统 当前软件 指令处理 准确度 处理量 代码区 配置 区时 存储 管理 | ||
1.一种分支历史管理电路,其用以管理由中央处理单元CPU指令处理系统用于分支预测的至少一个分支预测表BPT,所述分支历史管理电路经配置以:
响应于分支预测表调换指令的执行,使用存储于高速缓冲存储器中的多个先前分支方向历史组中的一者调换所述至少一个BPT中的用于分支预测的当前分支方向历史组。
2.根据权利要求1所述的分支历史管理电路,其中所述至少一个BPT包括包含用以预测分支指令的分支方向的预测指示符的至少一个BPT条目。
3.根据权利要求2所述的分支历史管理电路,其进一步包括BPT存取电路,所述BPT存取电路经配置以:
基于从分支解析电路提供的分支解析度而更新所述至少一个BPT条目;及
将选定的至少一个BPT条目提供给分支预测电路以用于预测所述分支指令的所述分支方向。
4.根据权利要求1所述的分支历史管理电路,
其中所述分支历史管理电路进一步经配置以在使用存储于所述高速缓冲存储器中的所述多个先前分支方向历史组中的所述一者调换单一BPT中的所述当前分支方向历史组时将BPT有效性指示符设定并维持为无效。
5.根据权利要求4所述的分支历史管理电路,其进一步经配置以在所述BPT有效性指示符被设定成无效的情况下应用向后采用、向前不采用BTFNT规则来预测分支指令的分支方向。
6.根据权利要求1所述的分支历史管理电路,
其中所述至少一个BPT包括有效BPT及影子BPT;且
其中所述分支历史管理电路进一步经配置以设定当前BPT寄存器以指示所述至少一个BPT中的哪一者是所述有效BPT。
7.根据权利要求6所述的分支历史管理电路,其进一步经配置以:
响应于接收到分支解析度而更新所述有效BPT的条目;及
提供所述有效BPT的选定条目以用于分支预测。
8.根据权利要求7所述的分支历史管理电路,其经配置以:
响应于所述分支预测表调换指令的所述执行:
将所述多个先前分支方向历史组中的所述一者加载到所述影子BPT中;及
设定所述当前BPT寄存器以将所述影子BPT改变为所述有效BPT。
9.根据权利要求1所述的分支历史管理电路,其经配置以:
响应于所述分支预测表调换指令的所述执行而接收分支预测表调换指示;及
响应于所述分支预测表调换指示的所述接收:
从所述至少一个BPT逐出所述当前分支方向历史组;
将所述多个先前分支方向历史组中的所述一者加载到所述至少一个BPT中;及
将所述逐出的当前分支方向历史组存储到所述多个先前分支方向历史组中的所述一者。
10.根据权利要求9所述的分支历史管理电路,其经配置以将所述高速缓冲存储器中的最近加载到所述至少一个BPT中的所述多个先前分支方向历史组的一个先前分支方向历史组的地址存储到BPT地址寄存器中。
11.根据权利要求10所述的分支历史管理电路,其经配置以将所述逐出的当前分支方向历史组存储到由所述BPT地址寄存器寻址的所述先前分支方向历史组。
12.根据权利要求1所述的分支历史管理电路,其进一步包括BPT存取队列,所述BPT存取队列经配置以:
从所述至少一个BPT接收逐出的当前分支方向历史组;及
将所述逐出的当前分支方向历史组存储到所述多个先前分支方向历史组中的所述一者。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于高通股份有限公司,未经高通股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380046029.7/1.html,转载请声明来源钻瓜专利网。