[发明专利]具有提前返回预测的分支目标缓冲器有效
申请号: | 201980049605.0 | 申请日: | 2019-07-17 |
公开(公告)号: | CN112470122B | 公开(公告)日: | 2022-05-10 |
发明(设计)人: | 阿帕那·斯亚加拉简;马吕斯·埃弗斯;阿鲁纳恰拉姆·安娜玛莱 | 申请(专利权)人: | 超威半导体公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 上海胜康律师事务所 31263 | 代理人: | 樊英如;邱晓敏 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 具有 提前 返回 预测 分支 目标 缓冲器 | ||
一种处理器[100],包括分支目标缓冲器(BTB)[110],所述BTB[110]具有多个条目[111],其中每个条目对应于被预测为分支指令的相关联的指令指针[101]值。每个BTB条目存储所述分支指令的预测分支目标地址,并且还存储指示与所述预测分支目标地址相关联的指令块中的下一个分支是否被预测为返回指令的信息。响应于所述BTB指示所述下一个分支被预测为返回指令,所述处理器发起对存储所述预测返回指令的返回地址的返回堆栈[115]的访问。通过响应于存储在所述BTB处的所述返回预测而发起对所述返回堆栈的访问,所述处理器减少了识别所述返回地址的延迟,从而提高了处理效率。
背景技术
为了提高处理效率,处理器可采用一种或多种预测处理技术。一种类型的预测处理技术称为分支预测,由此处理器预测分支指令的结果,使得处理器可在处理单元评估分支指令之前沿预测分支开始推测性地执行后续指令。为了进一步提高处理效率,处理器采用分支目标结构,所述分支目标结构称为分支目标缓冲器(BTB)。BTB存储预测分支的地址信息。但是,常规的BTB结构不支持高效执行不同类型的程序分支。
附图说明
通过参考附图,本领域技术人员可更好地理解本公开并且明白其众多特征和优势。在不同附图中使用相同的附图标记指示类似或相同的项目。
图1是根据一些实施方案的采用包括返回预测信息以用于预测分支指令所针对的指令块是否包括返回指令的分支目标缓冲器(BTB)的处理器的框图。
图2是根据一些实施方案的响应于BTB指示分支指令所针对的指令块包括返回指令而发起对返回地址的堆栈的访问的图1的处理器的示例的图。
图3是根据一些实施方案的处理器响应于BTB指示分支指令所针对的指令块包括返回指令而发起对返回地址的堆栈的访问的方法的流程图。
具体实施方式
图1至图3示出了用于减少在处理器处识别用于返回指令的返回地址的延迟的技术。所述处理器包括分支目标缓冲器(BTB),所述BTB具有多个条目,其中每个条目对应于被预测为分支指令的相关联的指令指针值。每个BTB条目存储所述分支指令的预测分支目标地址,并且还存储指示与所述预测分支目标地址相关联的指令块中的下一个分支是否被预测为返回指令的信息。响应于所述BTB指示所述下一个分支被预测为返回指令,所述处理器发起对存储所述预测返回指令的返回地址的返回堆栈的访问。通过响应于存储在所述BTB处的所述返回预测而发起对所述返回堆栈的访问,所述处理器减少了识别所述返回地址的延迟,从而提高了处理效率。
与本文所述的技术相反,常规处理器不存储预测返回信息。因此,常规处理器在处理器的提取级识别出当前指令指针值对应于返回指令之前不发起对返回堆栈的访问。因为从返回堆栈检索返回地址需要多个时钟周期,所以处理器处的操作可能会延迟。使用本文所述的技术,所述处理器提前发起对返回堆栈的访问,从而当指令指针值达到返回指令时,返回地址已从堆栈检索出并且可供处理器使用。因此,存储预测返回信息支持更快地访问返回地址,从而提高了处理效率。
图1示出根据一些实施方案的采用包括返回预测信息以用于预测分支指令所针对的指令块是否包括返回指令的分支目标缓冲器(BTB)的处理器100。处理器执行指令集(例如,计算机程序)以代表电子装置执行指定的任务。在一些实施方案中,处理器100被结合在诸如台式或膝上型计算机、服务器、游戏控制台、智能电话、平板计算机等的多个电子装置中的一者中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于超威半导体公司,未经超威半导体公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201980049605.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:音频相似性评估器、音频编码器、方法和计算机程序
- 下一篇:质谱系统