[发明专利]BHT在具有可变长度指令集执行模式的处理器中的有效使用有效
申请号: | 200780034094.2 | 申请日: | 2007-09-28 |
公开(公告)号: | CN101517534A | 公开(公告)日: | 2009-08-26 |
发明(设计)人: | 罗德尼·韦恩·史密斯;布莱恩·迈克尔·斯坦普尔 | 申请(专利权)人: | 高通股份有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 北京律盟知识产权代理有限责任公司 | 代理人: | 刘国伟 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | bht 具有 可变 长度 指令 执行 模式 处理器 中的 有效 使用 | ||
技术领域
本发明通常涉及处理器领域,且特定来说涉及在具有可变长度指令集执行模式的处理器中分支历史表的有效组织。
背景技术
处理器的传统指令集架构具有统一的指令长度。即,指令集中的每一指令均包括相同数目的位(例如,16或32)。所述技术中已知具有可变长度指令集执行模式的处理器-其中所述处理器可执行具有不同位长度的指令。例如,ARM架构的最近版本包含在16位指令集执行模式(Thumb模式)中执行的16位指令以及在32位指令集执行模式(ARM模式)中执行的传统32位ARM指令。
执行可变长度指令的处理器的一个问题是指令不会落在统一存储器边界上。因此,通过指令(或与指令相关联的辅助构造)递增或对所述指令随机定址的电路或操作不能利用统一递增或定址方案。相反,其必须基于当前正在执行的指令的长度(即当前指令集执行模式)改变定址方案。
大多数现代处理器采用管线式架构,其中使各自具有多个执行步骤的顺续指令交叠执行。为得到最大效能,指令应连续地流过管线。致使指令在管线中停止的任何情形均有害地影响效能。如果必须从管线清除并随后重新提取指令,那么效能及功率消耗两者均遭受损失。
几乎所有的现实世界程序均包含条件分支指令,且条件分支指令的实际分支行为直到在管线深处对所述指令进行评价时才获知。为避免由等待分支指令的实际评价将引起的停止,大多数现代处理器采用某一形式的分支预测,借此在管线中较早地预测条件分支指令的分支行为。基于所预测的分支评价,处理器推测性地提取并执行来自预测的地址的指令,所述预测的地址是分支目标地址(如果预测采用所述分支)或者所述分支指令之后的下一顺序地址(如果预测不采用所述分支)。当确定实际的分支行为时,如果对分支进行了错误地预测,那么必须从管线中清除所述推测性地提取的指令,且从正确的下一地址提取新的指令。响应于不正确的分支预测而推测性地提取指令会负面影响处理器效能和功率消耗。因此,改善分支预测的准确性是重要的设计目标。
分支预测的数种方法是基于正在预测的分支指令及/或同一代码中的其它分支指令的分支评价历史。对实际代码的广泛分析指示,不久以前的分支评价样式可能是未来分支指令的评价的良好指示符。
已知一种形式的分支预测利用分支历史表(BHT)来存储对最近分支评价的预测。作为一个实例,BHT可包括多个饱和计数器,所述多个饱和计数器的MSB充当双模态分支预测器。例如,每一计数器均可包括呈现四种状态中的一者的2位计数器,所述四种状态中的每一者被指派一加权预测值,例如:
11-强预测采用
10-弱预测采用
01-弱预测不采用
00-强预测不采用
每当对应的分支指令评价为“采用”时,计数器均递增,而每当所述指令评价为“不采用”时,计数器均递减。计数器的MSB是双模态分支预测器;其将预测待采用或者不采用的分支,而不管基本预测的强度或权重如何。饱和计数器减少罕见分支评价的预测错误,因为在一个方向上的单个分支评价不会改变在另一方向上为饱和的计数器的预测。
在“局部”BHT的情况下,每一分支指令(正在预测其分支评价)与单个BHT计数器相关联。因此,用分支指令地址(BIA)的一部分给BHT加索引。许多现代处理器在单个提取操作中提取块或提取群组中的多个指令。在此情况下,认为与块或提取群组相关联的地址为BIA,如所述措辞在本文中所使用的。在“全局”BHT的情况下,在给BHT计数器加索引之前,最近全局分支评价历史可与BIA级联(g选择)或与其散列(g共享)。
具有不同指令长度的指令集使BHT的设计复杂。特定来说,在每一不同的指令集执行模式中对BHT进行不同的理想加索引,这是因为每一计数器均与一分支指令相关联,且在不同的指令集执行模式中所述指令落在不同的存储器边界上。一个已知解决方案是简单地基于最大指令长度确定BHT大小,而基于最小指令长度对其定址。此解决方案使得表的大部分空白,或具有与较长分支指令相关联的复制条目。另一已知解决方案是在每一不同指令集执行模式中有效地使用指令地址的不同部分来多路复用BHT索引地址。此添加大量多路复用器,从而增加硅面积及功率消耗。然而,更关键地,其对关键路径添加延迟,由此增加循环时间且负面地影响处理器效能。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于高通股份有限公司,未经高通股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200780034094.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:到套接口的网络路由
- 下一篇:具有3D连通阴影的鼠标指针