一种TAGE分支预测算法针对超大循环次数指令流优化的方法技术

技术编号:30770694 阅读:33 留言:0更新日期:2021-11-10 12:39
本发明专利技术公开了一种TAGE分支预测算法针对超大循环次数指令流优化的方法,涉及处理器分支预测领域。本发明专利技术的优点是引入循环预测表和循环预测器(loop predictor),记录现有分支预测算法无法预测的退出循环时的分支指令,筛选出因分支历史信息过长导致TAGE预测失败的分支指令,以及用来实现循环指令流的分支指令,利用循环预测器记录循环跳转的次数,通过TAGE主预测器进行仲裁,最终针对超大循环主体提供有效的分支预测结果;充分利用有限的存储开销,减轻分支预测失败,减少访问冲突,优化分支预测的正确率,提高分支预测精度。提高分支预测精度。提高分支预测精度。

【技术实现步骤摘要】
一种TAGE分支预测算法针对超大循环次数指令流优化的方法


[0001]本专利技术涉及处理器分支预测领域,具体涉及一种基于现有的TAGE分支预测算法针对超大循环次数指令流的算法优化的方法。

技术介绍

[0002]现代处理器通过流水线的级数增加,处理器的工作细化以提升处理器的主频,并广泛采用了超流水,超标量、分支预测、乱序执行、前瞻执行等技术。分支预测技术是提高处理器性能的关键支撑技术,TAGE预测器的实现是通过一个UHT(untagged history table)和N(N>=2)个THT(tagged history table)实现的,每个THT表中每个表项都会包含一个partial tag(部分位)。UHT的索引是通过分支指令的地址直接索引。THT是通过分支指令的地址和GHR(global history register)进行hash(是把任意长度的输入通过特定的算法变换成固定长度的输出,输出的值就是哈希值)后的结果进行索引,并用读出的partial tag和当前分支指令地址生成的partial tag进行比对,如果两个t本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种TAGE分支预测算法针对超大循环次数指令流优化的方法,其特征在于:TAGE条件分支预测器中引入循环预测表和循环预测器,取指后经过predecode后对分支指令进行筛选,a)如果是因分支历史信息过长导致TAGE预测失败,则直接使用TAGE主预测器的结果;b)如果是分支历史信息正常,则筛选出用来实现循环指令流的分支指令;c)记录循环分支实际发生的跳转的次数作为可信度进行判断;d)如果可信度不满足,则直接使用TAGE主预测器的结果;e)如果可信度满足,则通过循环预测器与TAGE主预测器进行仲裁,提供有效的分支预测结果。2.如权利要求1所述的算法优化的方法,其特征在于步骤a)中所述的分支历史信息过长导致TAGE预测失败的筛选方法具体为:判断TAGE中的THT是否可以提供正确的结果,如果TAGE中级别最高的THT依然无法提供正确的结果,那么说明该分支所依赖的历史信息位已经超过了TAGE所能提供的最大历史信息位,则判定根据TAGE中的THT无法提供正确的分支预测。3.如权利要求1所述的算法优化的方法,其特征在于步骤b)中所述的筛选出用来实现循环指令流的分支指令是通过判断向前跳转和向后跳转来实现的,具体为,当branch target<branch VA时,判断为条件分支向前跳转,当branch target>branch VA时,判断为条件分支向后跳转,如果判断任一条件分支向前跳转,那么说明所述条件分支是分支指令。4.如权利要求1所述的算法优化的方法,其特征在于步骤c)中所...

【专利技术属性】
技术研发人员:张然王飞
申请(专利权)人:苏州睿芯集成电路科技有限公司
类型:发明
国别省市:

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

1