数据处理系统、处理器和进行数据处理的方法技术方案

技术编号:2830311 阅读:202 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种数据处理系统、处理器和进行数据处理的方法。该处理器包括执行单元和指令排序逻辑。指令排序逻辑包括具有分支目标缓冲器的分支目标地址高速缓存,分支目标缓冲器包含多个条目,每个条目将分支指令地址的至少一部分与预测的分支目标地址相关联。分支目标地址高速缓存使用分支指令地址访问分支目标缓冲器,以获取预测的分支目标地址作为取指令地址使用。分支目标地址高速缓存也包括缓冲一个或多个候选分支目标地址预测的过滤缓冲器。过滤缓冲器将各个表明预测准确性的置信度指示与每个候选分支目标地址预测相关联。分支目标地址高速缓存根据候选分支目标地址预测各自的置信度指示将其从过滤缓冲器推进到分支目标缓冲器。

【技术实现步骤摘要】

本专利技术一般地涉及数据处理,并且特别地涉及分支预测。更特别地,本专利技术涉及具有改进的分支目标地址高速緩存(BTAC)的数据处理系 统,处理器和进行数据处理的方法。
技术介绍
根据现有技术的微处理器可以包括例如用于存储指令和数据的高速 緩存,用于从所述高速緩存取指令、为所述取到的指令排序并且分发所 述取到的指令用于执行的指令排序逻辑, 一个或多个用于处理序列指令 的序列指令执行单元,以及用于处理分支指令的分支处理单元(BPU)。BPU执行的分支指令可以归类为条件分支指令或非条件分支指令。 非条件分支指令是将程序执行流程从顺序执行路径改变到特定的目标执 行路径并且不依赖于事件发生所提供的条件的分支指令。这样,总是选 择非条件分支指令所规定的分支。与此相比,条件分支指令是根据处理 器内部的条件可能选择也可能不选择程序执行流程中所指示的分支的分 支指令,所述条件例如特定条件寄存器位的状态或计数器的值。条件分支指令可以根据在BPU评估条件分支指令时所述分支所依 赖的条件是否具备进一步分类为解析或未解析的条件分支指令。由于解 析条件分支指令所依赖的条件在执行前是已知的,典型地可以在执行序 本文档来自技高网...

【技术保护点】
一种处理器,包括:至少一个执行指令的执行单元;以及连接到所述至少一个执行单元的指令排序逻辑,其从存储器系统取指令以供所述至少一个执行单元执行,所述指令排序逻辑包括输出预测的分支目标地址以作为取指令地址使用的分支目标地址高速缓 存,所述分支目标地址高速缓存包括:包含多个条目的分支目标缓冲器,每个所述条目将分支指令地址的至少一部分与预测的分支目标地址相关联,其中所述分支目标地址高速缓存使用所述分支指令地址的至少一部分访问所述分支目标缓冲器,以获取预测的分支目 标地址作为取指令地址使用;以及连接到所述分支目标缓冲器的过滤缓冲器,其缓冲一个或多个候选分支目标...

【技术特征摘要】
US 2006-11-17 11/561,0021.一种处理器,包括至少一个执行指令的执行单元;以及连接到所述至少一个执行单元的指令排序逻辑,其从存储器系统取指令以供所述至少一个执行单元执行,所述指令排序逻辑包括输出预测的分支目标地址以作为取指令地址使用的分支目标地址高速缓存,所述分支目标地址高速缓存包括包含多个条目的分支目标缓冲器,每个所述条目将分支指令地址的至少一部分与预测的分支目标地址相关联,其中所述分支目标地址高速缓存使用所述分支指令地址的至少一部分访问所述分支目标缓冲器,以获取预测的分支目标地址作为取指令地址使用;以及连接到所述分支目标缓冲器的过滤缓冲器,其缓冲一个或多个候选分支目标地址预测,用于可能包括到所述分支目标缓冲器中,所述过滤缓冲器将各个表明预测准确性的置信度指示与每个所述候选分支目标地址预测相关联,其中所述分支目标地址高速缓存根据候选分支目标地址预测各自的置信度指示将所述候选分支目标地址预测从所述过滤缓冲器推进到所述分支目标缓冲器。2. 根据权利要求l的处理器,其中所述分支目标緩沖器中的每个条目都有各自相关联的分数;并且 所述分支目标地址高速緩存根据所述多个条目各自的分数将替代 策略应用到所述多个条目。3. 根据权利要求l的处理器,其中所述分支目标緩沖器中的每个条目都有各自相关联的分数;并且 所述分支目标地址高速緩存根据由包含在所述多个条目中的一个条目中的所述分支指令地址的至少一部分确定的分支指令类型,将该条目的分数初始化为多个可能分数中的一个。4. 根据权利要求3的处理器,其中所述分支指令类型是包括条件 分支指令和非条件分支指令的集合中的 一种。5. 根据权利要求3的处理器,其中所述分支指令类型是包括具有 固定分支目标地址的分支指令和具有可变分支目标地址的分支指令的 集合中的一种。6. 根据权利要求l的处理器,其中所述分支目标緩冲器中的每个条目都有各自相关联的分数;并且 响应于接收到前一个取指令地址,所述指令排序逻辑使用所述前一个取指令地址访问所述分支目标緩沖器,并且如果在所述分支目标緩冲 器中发现匹配条目,只有当所述匹配条目的分数足够时,才使用所述匹 配条目的预测的分支目标地址作为下一个取指令地址。7. 根据权利要求l的处理器,其中 所述至少一个执行单元包括执行分支指令的分支执行单元; 所述分支执行单元向所述指令排序逻辑报告被执行的分支指令的结果;并且所述分支目标地址高速緩存根据所述报告的被执行的分支指令的 结果在所述过滤緩冲器中增加新的候选分支目标地址预测。8. 根据权利要求1的处理器,所述分支目标地址高速緩存进一步 包括连接到所述分支目标緩沖器的牺牲高速緩存,其中所述牺牲高速緩 存接收并緩存从所述分支目标緩沖器驱逐出的条目。9. 根据权利要求8的处理器,其中所述分支目标緩冲器中的每个条目都有各自相关联的分数; 所述牺牲高速緩存中的每个条目都有各自相关联的分数;并且 如果所述牺牲高速緩存中的条目关联的分数好于所述分支目标緩 冲器中多个条目之一关联的分数,则所述分支目标地址高速緩存将所述 牺牲高速緩存中的所述条目传输回所述分支目标緩冲器。10. 根据权利要求l的处理器,其中 所述存储器系统包括高速緩冲存储器; 所述处理器包括所述高速緩冲存储器;并且 所述指令排序逻辑使用取...

【专利技术属性】
技术研发人员:JP布拉德福德RW多英格RJ艾克迈耶WR艾埃萨怀DR洛根B辛哈罗伊WE斯佩特张立新
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1