[发明专利]用于使用工作全局历史寄存器的系统及方法有效
申请号: | 200780039800.2 | 申请日: | 2007-10-25 |
公开(公告)号: | CN101529378A | 公开(公告)日: | 2009-09-09 |
发明(设计)人: | 布莱恩·迈克尔·斯坦普尔;詹姆斯·诺里斯·迪芬德尔费尔;托马斯·安德鲁·萨托里乌斯;罗德尼·韦恩·史密斯 | 申请(专利权)人: | 高通股份有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 北京律盟知识产权代理有限责任公司 | 代理人: | 刘国伟 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 使用 工作 全局 历史 寄存器 系统 方法 | ||
技术领域
本发明通常涉及计算机系统,且更特定来说涉及一种用于使用工作全局历史寄存 器的方法及系统。
背景技术
处于计算机平台演进核心的是处理器。早期处理器受当时可用技术的限制。制造 技术的新进展允许将晶体管设计减小到早期处理器大小的1/1000且超过其1/1000。 这些较小的处理器设计在供给超过先前期望的处理能力时更快、更有效且使用少得多 的功率。
随着处理器实体设计的演进,处理信息及执行功能的新颖方式也发生改变。例如, 自从1960年早期就在处理器设计中执行了指令的“管线化”。管线化的一个实例是 将执行管线分解成指令以一串流形成按顺序流过的单元或级的概念。所述级经布置以 使得数个级可同时处理数个指令的适合部分。管线化的一个优点是:由于并行评估若 干指令,因此所述指令的执行重叠。
处理器管线由许多级组成,其中每一级执行与执行一指令相关联的功能。每一级 称作管道级或管道段。所述级连接在一起形成管线。指令在管线的一端进入且在另一 端退出。
处理器所执行的大多数程序均包含条件分支指令,且条件分支指令的实际分支行 为直到在管线深处对所述指令进行评估时才能获知。为避免将由等待分支指令的实际 评估产生的停止,现代处理器可采用某一形式的分支预测,借此在管线中较早地预测 条件分支指令的分支行为。基于所预测的分支评估,处理器推测性地提取并执行来自 所预测的地址的指令-所述所预测的地址是分支目标地址(如果预测采用所述分支) 或者所述分支指令之后的下一顺序地址(如果预测不采用所述分支)。是否采用条件 分支指令被称作确定分支的方向。可在预测时及在实际分支解算时确定分支的方向。 当确定实际的分支行为时,如果错误地预测了分支,那么必须从管线中冲洗所述推测 性提取的指令,并从正确的地址提取新指令。响应于错误的分支预测来推测性地提取 指令可对处理器性能及功率消耗产生不利的影响。因此,改善分支预测的准确性是重 要的处理器设计目的。
一种已知形成的分支预测包含将分支预测分割成两个预测符:初始分支目标地址 高速缓冲存储器(BTAC)及分支历史表(BHT)。所述BTAC是用指令提取群组地 址进行加索引且含有对应于所述指令提取群组地址的下一个所提取的地址,也称作分 支目标。在一分支指令通过处理器管线且已采用其分支之后将条目添加到BTAC。如 果BTAC变得充满,那么当添加下一条目时,使用标准高速缓冲存储器替代算法(例 如循环算法或最近最少使用算法)从BTAC中移除条目。
所述BTAC可以是高度相联高速缓冲存储器设计且在指令执行管线中被较早地 存取。如果提取群组地址与一BTAC条目匹配(BTAC命中),那么在下一循环中提 取对应的下一提取地址或目标地址。此匹配及随后提取目标地址称作隐含采用分支预 测。如果不存在匹配(BTAC未命中),那么在下一循环中提取下一个按顺序递增的 地址。此无匹配情形也被称作隐含不采用预测。
可结合更准确的个别分支方向预测符(例如,分支历史表(BHT),也称作模式 历史表(PHT))利用BTAC。常规的BHT可含有一组饱和预测方向计数器以针对 个别分支指令产生更准确的采用/不采用决定。例如,每一饱和预测方向计数器可包 括采取四种状态中的一者的2位计数器,所述四种状态的每一者被指派加权预测值, 例如:
11-强预测采用
10-弱预测采用
01-弱预测不采用
00-强预测不采用
常规BHT的输出(也称作预测值)是采用或不采用的决定,其导致在下一循环 中提取分支指令的目标地址或者下一顺序地址。通常在分支结果信息变为已获知时用 所述分支结果信息更新所述BHT。
为增加分支预测的准确性,可实施各种其它预测技术,所述技术使用来自其它分 支的最近分支历史信息作为反馈。如所属领域的技术人员了解,当前分支行为可与先 前所执行的分支指令的历史相关。例如,先前所执行的分支指令的历史可影响如何预 测条件分支指令。
全局历史寄存器(GHR)(在此项技术中也称作全局分支历史寄存器或全局历 史移位寄存器)可用来追踪先前所执行的分支指令的过去历史。如GHR所存储,分 支历史提供在通向当前所执行的分支指令的代码路径中所遇到的分支指令顺序的综 览以实现改善预测结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于高通股份有限公司,未经高通股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200780039800.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:FAQ的自动生成器和更新器
- 下一篇:用于调节流体流量的系统和方法