[发明专利]一种多级分支预测器跳过训练标识的确定方法及装置有效
申请号: | 202011461847.1 | 申请日: | 2020-12-08 |
公开(公告)号: | CN112579166B | 公开(公告)日: | 2022-11-15 |
发明(设计)人: | 崔泽汉;张克松 | 申请(专利权)人: | 海光信息技术股份有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 余菲 |
地址: | 300450 天津市滨海新区华苑产*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多级 分支 预测 跳过 训练 标识 确定 方法 装置 | ||
本申请提供一种多级分支预测器跳过训练标识的确定方法及装置。方法包括:获取多级分支预测器中第一分支预测器对取指地址和/或分支历史进行预测获得输出结果;其中输出结果包括第一预测结果和跳过第一训练标识;获取最末级分支预测器对取指地址和/或分支历史进行预测获得的第二预测结果;根据第一预测结果与第二预测结果的异同性以及第一分支预测器对应的预测相异的计数确定第一分支预测器对应的最终跳过标识。本申请实施例不仅仅根据第一预测器进行是否跳过训练的判断,从而在第一训练相对于第一分支预测器为反向训练时,后续第一分支预测器仍然可以进行训练,提高了分支预测器预测的精度。
技术领域
本申请涉及分支预测技术领域,具体而言,涉及一种多级分支预测器跳过训练标识的确定方法及装置。
背景技术
在计算机体系结构中,分支预测器(Branch predictor)是一种数字电路,在分支指令执行之前猜测哪一路分支将会被运行,以提高处理器的指令流水线的性能。
对于多级分支预测器来说,前一级分支预测器相对于后一级分支预测器来说,精度较低,延迟较短。为了提高分支预测器预测的准确性,分支预测器的工作模式可以分为预测阶段和训练阶段。对分支预测器的训练又分为正向训练和反向训练,其中,正向训练用来对预测器的状态进行增强,反向训练用来对预测器的状态进行纠正。由于训练会占用流水线并消耗功耗,对整个分支预测器来说,训练分为两种,最后一级预测器预测正确,进行第一训练,最后一级预测器预测错误进行第二训练。那么对于第一分支预测器来说,训练分为两种:如果预测错误,则进行的训练称为反向训练;如果预测正确,进行的训练为正向训练。第一训练对于最后一级预测器来说肯定是正向训练,但是对于第一分支预测器来说,有可能是正向训练,也可能是反向训练,其具体取决于第一分支预测器预测正确与否。分支预测器为了减少训练次数,通常会在一定情况下跳过正向训练,因为预测本来就是对的,不增强并不会引起下次预测错误。反向训练则必须要进行,否则下次还会出错。现有技术中,并不是将每级分支预测器的预测结果与执行结果进行对比,从而确定每级分支预测器为正向训练,还是反向训练。而是根据每级预测器的预测状态产生跳过第一训练标识。
发明内容
本申请实施例的目的在于提供一种多级分支预测器跳过训练标识的确定方法及装置,用以提高分支预测器预测的精度。
第一方面,本申请实施例提供一种多级分支预测器跳过训练标识的确定方法,包括:获取多级分支预测器中第一分支预测器对取指地址和/或分支历史进行预测的输出结果;其中,所述第一分支预测器为所述多级分支预测器中最末级分支预测器之前的任一分支预测器,所述输出结果包括所述第一分支预测器预测是否跳转的第一预测结果,以及表征所述第一分支预测器是否跳过训练的跳过标识;获取最末级分支预测器对所述取指地址和/或分支历史进行预测的第二预测结果;所述第二预测结果用于表征所述最末级分支预测器预测是否跳转;根据所述第一预测结果与第二预测结果的异同性、所述第一分支预测器对应的预测相异的计数,修正所述第一分支预测器对应的所述跳过标识,获得最终跳过标识;其中,所述预测相异的计数是指所述第一预测结果与执行单元的分支执行结果不同的次数。
本申请实施例通过根据输出结果、第二预测结果以及预测相异的计数最终确定第一分支预测器是否跳过训练,而不仅仅根据第一预测器进行是否跳过训练的判断,从而在第一训练相对于第一分支预测器为反向训练时,后续第一分支预测器仍然可以进行训练,从而提高了分支预测器预测的精度。
进一步地,在获得最终跳过标识之后,所述方法还包括:将所述最终跳过标识写入预测状态表中;其中,所述预测状态表包括取指地址和/或分支历史、最末级分支预测器对所述取指地址和/或分支历史的预测结果,以及最末级分支预测器之前的分支预测器分别对应的最终跳过标识。
本申请实施例通过将获得的最终跳过标识写入预测状态表中,以使各级分支预测器可以根据预测状态表快速获知是否需要跳过训练。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海光信息技术股份有限公司,未经海光信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011461847.1/2.html,转载请声明来源钻瓜专利网。