[发明专利]用于辨识子例程调用的方法及设备无效

专利信息
申请号: 200780041477.2 申请日: 2007-11-27
公开(公告)号: CN101535951A 公开(公告)日: 2009-09-16
发明(设计)人: 米绍米·威廉·莫罗 申请(专利权)人: 高通股份有限公司
主分类号: G06F9/38 分类号: G06F9/38
代理公司: 北京律盟知识产权代理有限责任公司 代理人: 刘国伟
地址: 美国加利*** 国省代码: 美国;US
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 用于 辨识 例程 调用 方法 设备
【说明书】:

技术领域

发明大体来说涉及管线处理器领域,且更特定来说涉及一种辨识子例程调用以减小功率并增大管线处理器的利用率的方法。

背景技术

微处理器可在各种各样的应用中执行计算任务。几乎总期望改进的处理器性能,以允许通过软件改变而得到更快的操作及/或增加的功能性。在许多嵌入式应用(例如便携式电子装置)中,节约功率也是处理器设计及实施中的重要目标。

许多现代处理器采用管线架构,其中有序指令在执行中是重叠的以增大总体处理器吞吐量。通过管线维持平缓的执行有助于实现高性能。多数现代处理器还利用分级存储器,其中快速的芯片上高速缓冲存储器存储最近存取的数据及指令的本地副本。

现实世界程序包含间接分支指令,其实际转移行为直到在执行管线深处进行实际评估时才被获知。多数现代处理器采用某一形式的分支预测,由此间接分支指令的转移行为早在管线中被预测,例如在提取或解码管道级期间。通过利用分支预测技术,处理器推测性地提取间接分支指令的目标且重定向所述管线以开始处理所述经推测性地提取的指令。当在随后的管道级(例如执行管道级)中确定实际的分支目标时,如果误预测所述分支,则必须将所述推测性地提取的指令从所述管线冲洗,且从正确的目标地址中提取新的指令。响应于错误的分支目标预测来预提取指令会不利地影响处理器性能及功率消耗。

间接分支指令的一个实例包含用于从子例程返回的分支指令。例如,来自子例程的回答呼叫可包含返回地址由寄存器的内容界定的分支指令。返回地址界定子例程完成后待提取的下一指令且通常为最初从中调用子例程的分支指令之后的指令。许多高性能架构指派特定的通用寄存器来用于子例程返回中,所述通用寄存器通常称为链路寄存器。

为方便起见,还可将回答呼叫称为分支返回指令。为使处理器管线针对分支返回指令利用分支预测,常规的软件包含显式子例程调用,例如用以记录到所述链路寄存器中的返回地址的分支及链路指令。许多高性能实施方案包含在处理所述分支及链路指令的解码级处的链路堆栈结构。使链路返回值进栈到此堆栈上,以允许在对应的子例程返回时进行准确的分支预测。常规的链路堆栈结构含有一列返回地址以支持流经管线的多个子例程调用且支持多个子例程调用级的嵌套。随后,当对子例程内的分支返回指令进行解码时,返回地址从链路堆栈结构中被读取且在其它分支预测硬件指定处理器应重定向管线的情况下可用于用以预测目标地址的分支预测中。如果所预测的结果指示重定向管线,则管线开始从自链路堆栈结构读取的返回地址提取指令。

然而,存在许多在调用子例程时不产生且不并入常规的分支及链路指令的编译器及遗旧代码。因此,在所述情况下不利用链路堆栈结构,从而导致链路堆栈结构的整体性遭到损害。例如,返回地址从链路堆栈结构的常规出栈可不与首先激发返回地址的出栈的返回指令相关。受损害的链路堆栈结构的一个影响包含对返回指令的误预测增加。此外,在其中子例程调用在程序段中未被辨识的情况下,问题更为严重,因为在随后的不可辨识的子例程调用时可能不利用分支预测硬件来填充链路堆栈结构。以实例方式,参照下表,其中含有将在ARM有限公司兼容处理器上运行的代码段:

表1 代码段。

表1中的代码段的程序流包含在地址0x00899808处开始以有序次序处理指令且一直到地址0x00899814。在地址0x00899814处,分支指令改变程序流以使得所处理的下一指令位于地址0x00990000处(例程的开始)。

设置链路寄存器(即LDR LR,0x00899818)与分支指令(即BR)的组合使处理器准备用于随后到子例程的分支。在此实例中,对其做出调用的实际子例程开始于地址0x00990000处且结束于地址0x0099000C处。所述LDR LR,0x00899818指令指示地址0x00899818应被复制到链路寄存器(LR)中,从而致使将返回地址(地址0x00899818)储存到所述链路寄存器中。在子例程结束时,从链路寄存器中检索返回地址。更特定来说,当执行BX LR(分支返回指令)时检索返回地址。暗示子例程调用的其它代码段存在且包含修改链路寄存器的指令,例如指令MOV LR、PC BR[A]的有序组合,其中[A]是例程开始的地址。

发明内容

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于高通股份有限公司,未经高通股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200780041477.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top