[发明专利]用于使用预先通知技术改变程序的顺序流程的方法和设备有效
申请号: | 201180028116.0 | 申请日: | 2011-06-28 |
公开(公告)号: | CN102934075A | 公开(公告)日: | 2013-02-13 |
发明(设计)人: | 詹姆斯·诺里斯·迪芬德尔费尔;迈克尔·威廉·莫罗 | 申请(专利权)人: | 高通股份有限公司 |
主分类号: | G06F9/32 | 分类号: | G06F9/32;G06F9/30;G06F9/38 |
代理公司: | 北京律盟知识产权代理有限责任公司 11287 | 代理人: | 宋献涛 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 使用 预先 通知 技术 改变 程序 顺序 流程 方法 设备 | ||
技术领域
本发明大体上涉及用于在处理器管线中处理指令的技术,且更具体来说涉及用于产生间接分支指令的目标地址的早期指示的技术。
背景技术
许多便携式产品,例如手机、膝上型计算机、个人数据助理(PDA)或类似物,需要使用执行支持通信和多媒体应用的程序的处理器。用于这些产品的处理系统包含处理器、指令源、输入操作数源以及用于存储执行结果的存储空间。举例来说,指令和输入操作数可存储在由通用寄存器和多级高速缓冲存储器组成的阶层式存储器配置中,其包含例如指令高速缓冲存储器、数据高速缓冲存储器和系统存储器。
为了在程序的执行中提供高性能,处理器通常在管线中执行指令。处理器还可使用推测性执行来获取和执行在预测分支目标地址处开始的指令。如果分支被误预测,那么必须从管线清空推测性执行的指令,并且在正确的路径地址处重新开始管线。在许多处理器指令集中,经常有分支到从寄存器的内容导出的程序目的地地址的指令。此指令通常称为间接分支指令。由于间接分支对寄存器的内容的依赖性,通常难以预测分支目标地址,因为在每次执行间接分支指令时寄存器可能具有不同的值。由于校正误预测的间接分支通常需要对间接分支指令的反向跟踪以便在正确的分支路径上获取和执行指令,因此处理器的性能可能降低。而且,误预测指示处理器不正确地推测性获取和开始在错误分支路径上的指令处理,从而造成用于处理并不使用的指令以及用于从管线中清空所述指令的功率增加。
发明内容
在本发明的若干方面中,本发明认识到有利的是使在执行指令时可能发生的误预测的数目最少以在处理器系统中改善性能且减少功率要求。为此,本发明的实施例适用于一种用于改变程序的顺序流程的方法。所述方法从由第一指令识别的寄存器检索程序指定的目标地址,其中所述寄存器是在指令集架构中界定。在遇到第二指令之后将推测性执行流程改变到所述程序指定的目标地址,其中所述第二指令经动态地确定为间接分支指令。
本发明的另一实施例针对一种用于提供间接分支地址的预先通知的方法。分析指令序列以识别由所述指令序列的目标地址改变指令产生的最当前目标地址。在推测性执行利用所述最当前目标地址的间接分支指令之前基于所述最当前目标地址来准备下一程序地址。
本发明的另一方面针对一种用于提供间接分支目标地址的预先通知的设备。所述设备采用寄存器,其用于保持由程序指定为间接分支指令的预先通知(ADVN)间接地址的指令存储器地址。所述设备还采用下一程序地址选择器电路,其监视以所述寄存器为目标的指令,且基于所述监视的指令而从所述寄存器将在遇到所述间接分支指令之前的最当前目标地址选择为所述ADVN间接地址,以用于在推测性执行所述间接分支指令时用作下一程序地址。
从以下具体实施方式和附图将明了本发明的更完整理解以及本发明的另外特征和优点。
附图说明
图1是其中可有利地采用本发明的实施例的示范性无线通信系统的框图;
图2是根据本发明的支持间接分支指令的分支目标地址的处理器复合体的功能框图;
图3A是根据本发明的32位预先通知(ADVN)指令的一般格式,其指定具有间接分支目标地址值的寄存器;
图3B是根据本发明的16位ADVN指令的一般格式,其指定具有间接分支目标地址值的寄存器;
图4A是根据本发明的用于使用先前间接分支执行的历史的间接分支预测的方法的代码实例;
图4B是根据本发明的用于间接分支预先通知的方法的代码实例,所述方法使用图3A的ADVN指令以用于提供间接分支目标地址的预先通知;
图5说明根据本发明的示范性第一间接分支目标地址(BTA)预先通知电路;
图6是根据本发明的使用自动间接目标推断方法来提供间接分支目标地址的预先通知的方法的代码实例;
图7是根据本发明的第一间接分支预先通知(ADVN)过程,其合适地用于间接分支指令的分支目标地址;
图8A说明示范性目标跟踪表(TTT);
图8B是根据本发明的第二间接分支预先通知(ADVN)过程,其合适地用于提供间接分支指令的分支目标地址的预先通知;
图9A说明根据本发明的示范性第二间接分支目标地址(BTA)预先通知(ADVN)电路;
图9B说明根据本发明的示范性第三间接分支目标地址(BTA)预先通知(ADVN)电路;以及
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于高通股份有限公司,未经高通股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180028116.0/2.html,转载请声明来源钻瓜专利网。