[发明专利]滑动窗口、基于区块的分支目标地址高速缓冲存储器有效
申请号: | 200780020445.4 | 申请日: | 2007-05-31 |
公开(公告)号: | CN101460922A | 公开(公告)日: | 2009-06-17 |
发明(设计)人: | 罗德尼·韦恩·史密斯;詹姆斯·诺里斯·迪芬德费尔;布莱恩·迈克尔·斯坦普尔;托马斯·安德鲁·萨托里乌斯 | 申请(专利权)人: | 高通股份有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 北京律盟知识产权代理有限责任公司 | 代理人: | 刘国伟 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 滑动 窗口 基于 区块 分支 目标 地址 高速 缓冲存储器 | ||
技术领域
本发明大体上涉及处理器领域,且具体来说,涉及具有滑动窗口组织的基于区块的 分支目标地址高速缓冲存储器。
背景技术
微处理器在很多应用中执行计算任务。改进处理器性能是永恒的设计目标,通过经 由增强的软件来实现更快的操作和/或增加的功能性,来推动产品改进。在许多嵌入式应 用中,例如便携式电子装置,节省功率并减少芯片大小在处理器设计和建构中也是重要 的目标。
大多数现代处理器采用管线化架构,其中连续指令(其每一者具有多个执行步骤) 在执行中是重叠的。这种开发连续指令流中的指令之间的并行度的能力对改进的处理器 性能作出显著贡献。在理想条件下且在于一个循环中完成每一管级的处理器中,在填充 管线的短暂初始过程之后,指令可在每一循环完成执行。
实际上从没实现此类理想条件,这归因于多种因素,其中包含指令之间的数据相依 性(数据冒险)、例如分支的控制相依性(控制冒险)、处理器资源分配冲突(结构冒险)、 中断、高速缓冲存储器未命中等。处理器设计的主要目标是避免这些冒险,且保持管线 “充满”。
所有现实的程序都包含分支指令,其可包括无条件或条件分支指令。分支指令的实 际分支行为常常是未知的,直到指令被评估为在管线深处。这产生使管线停止的控制冒 险,因为处理器不知道在分支指令后获取哪些指令,且将直到分支指令评估之后才知道。 大多数现代处理器采用各种形式的分支预测,借此在管线中较早地预测条件分支指令的 分支行为和分支目标地址,且处理器基于分支预测以推测方式获取并执行指令,因此保 持管线充满。如果预测是正确的,那么性能得以最大化,且功率消耗得以最小化。当实 际评估分支指令时,如果分支被错误预测,那么必须从管线中清洗以推测方式获取的指 令,且从正确的分支目标地址获取新的指令。经错误预测的分支不利地影响处理器性能 和功率消耗。
分支预测存在两个组成部分:条件评估和分支目标地址。条件评估(当然,仅与条 件分支指令相关)是二进制决策:分支被采取(导致执行跳到不同的代码序列),或不 被采取(在此情况下,处理器执行紧接在条件分支指令之后的下一顺序指令)。分支目 标地址(BTA)是控制针对评估为采取的无条件分支指令或条件分支指令而分支到的地 址。某些共同分支指令将BTA包含在指令操作码中,或包含借其可容易地计算BTA的 偏移。对于其它分支指令,不计算BTA,直到其处于管线深处,且因此必须被预测。
一种已知的BTA预测技术利用分支目标地址高速缓冲存储器(BTAC)。现有技术 中已知的BTAC是由分支指令地址(BIA)标引的完全联合的高速缓冲存储器,其中每 一数据位置(或高速缓冲存储器“线”)含有单个BTA。当分支指令在管线中评估为被 采取且其实际BTA经计算时,(例如,在写回管级期间)将BIA和BTA写入到BTAC。 当获取新的指令时,与指令高速缓冲存储器(或I-高速缓冲存储器)并行地存取BTAC。 如果指令地址在BTAC中命中,那么处理器知道所述指令是分支指令(这是在解码从I- 高速缓冲存储器获取的指令之前),且提供经预测的BTA,其为分支指令的先前执行的 实际BTA。如果分支预测电路预测分支将被采取,那么指令获取开始于经预测的BTA。 如果分支被预测为不被采取,那么指令获取顺序地继续下去。
应注意,术语BTAC也用于此项技术中以表示将饱和计数器与BIA相关联的高速缓 冲存储器,因此仅提供条件评估预测(即,采取或不采取)。这不是本文所使用的此术 语的含义。
高性能处理器可一次从I-高速缓冲存储器获取一个以上指令。举例来说,可包括例 如四个指令的整个高速缓冲存储器线可被获取到指令获取缓冲器中,所述指令获取缓冲 器顺序地将所述指令馈送到管线中。转让给本申请案的受让人并以引用的方式并入本文 的第11/089,072号专利申请案揭示了BTAC在每一高速缓冲存储器线中存储两个或两个 以上BTA,且标引分支预测偏移表(BPOT)以确定哪一BTA被采取为BTAC命中的经 预测的BTA。BPOT避免了成本较高的具有多个读取端口的BTAC硬件结构,所述多个 读取端口原本是并行地存取多个BTA所必需的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于高通股份有限公司,未经高通股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200780020445.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:仲裁器诊断装置和方法
- 下一篇:药物醪糟及其生产工艺