[发明专利]一种改进型PAp分支预测方法有效
申请号: | 201610177103.4 | 申请日: | 2016-03-24 |
公开(公告)号: | CN105867884B | 公开(公告)日: | 2018-06-15 |
发明(设计)人: | 何虎;付家为;麻军平;王旭;马千里 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 西安智大知识产权代理事务所 61215 | 代理人: | 段俊涛 |
地址: | 100084 北京市海淀区1*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种改进型PAp分支预测方法,包括降低预测器训练时间方法和提高分支预测准确率方法,降低预测器训练时间方法包括:使用一种新的有限状态机来表示跳转指令的跳转方向;改进第一次训练时跳转方向训练方法;以及改进PT表计数器计数规则;提高分支预测准确率方法包括:在取指级当遇到不跳转的跳转指令时,同一个取指包中多取一套预测信息;跳转出错后对PT表计数器正确复位,本发明可降低预测训练时间,提高预测效率并提高预测准确率,从而提高处理器性能。 1 | ||
搜索关键词: | 分支预测 跳转 准确率 计数器 跳转指令 改进型 预测器 取指 预测 处理器性能 计数规则 预测信息 状态机 复位 出错 改进 | ||
所述降低预测器训练时间方法包括:使用一种新的有限状态机来表示跳转指令的跳转方向;改进第一次训练时跳转方向训练方法;以及改进PT表计数器计数规则;
所述提高分支预测准确率方法包括:在取指级当遇到不跳转的跳转指令时,同一个取指包中多取一套预测信息;跳转出错后对PT表计数器正确复位;
所述新的有限状态机由00,10,11三个状态组成,00代表跳转方向为不跳转,10与11代表跳转方向为跳转,状态机的初始状态为00,稳定状态为00或11,当第一次遇到跳转指令时,状态由00变为10;
所述改进第一次训练时跳转方向训练方法是指,对于某一跳转指令,第一次训练时,其对应的PT表计数器0000项对应其跳转方向,此时所述0000项中的BHI值被更改,与此同时,所述PT表计数器其他计数项的BHI值也做同样的更改;
所述改进PT表计数器计数规则是指,训练时,当遇到某条跳转指令的跳转方向为不跳转时,该跳转指令对应的PT表计数器计数值清零,该跳转指令的历史跳转信息训练结束;
所述同一个取指包中多取一套预测信息是指,预测时,对取指包中的指令进行遍历BTB表,当遍历到跳转指令时,取得表项中的跳转信息进行预测,如果所述跳转指令的跳转方向为不跳转,则继续遍历所述取指包,如果所述取指包中有另一条跳转指令,则将该所述另一条跳转指令的跳转信息同时取出,与第一条跳转指令信息一同做跳转预测;
所述跳转出错后对PT表计数器正确复位是指,当执行级执行跳转指令时,如果发现预测发生错误,则清空流水线,从正确的位置重新执行,并对预测错的跳转指令对应的PT表计数器清零,同时将其他跳转指令PT表计数器恢复到正确的计数值;
所述复位为:取两套PT表计数器计数值,一套是预测阶段计数值,另一套是实际执行的计数值,实际执行的计数值代表跳转指令真正执行所对应的计数值,预测阶段的计数值则是为预测而设计的计数值,当预测出错时,实际执行的计数值是正确的计数值,此时将错误计数值恢复到实际执行计数值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610177103.4/,转载请声明来源钻瓜专利网。
- 上一篇:鼻腔术后止血用一次性防断止血条
- 下一篇:一种减张缝合伤口保护器