[发明专利]通过bypass电路提升loop分支预测算法准确率的方法在审
| 申请号: | 202210657136.4 | 申请日: | 2022-06-10 |
| 公开(公告)号: | CN114895966A | 公开(公告)日: | 2022-08-12 |
| 发明(设计)人: | 娄炯;李世平;杨思博;李明;韩文俊;雷志勇 | 申请(专利权)人: | 江苏华创微系统有限公司;中国电子科技集团公司第十四研究所 |
| 主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F9/30 |
| 代理公司: | 南京擎天知识产权代理事务所(普通合伙) 32465 | 代理人: | 涂春春 |
| 地址: | 211899 江苏省南京*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 通过 bypass 电路 提升 loop 分支 预测 算法 准确率 方法 | ||
1.一种通过bypass电路提升loop分支预测算法准确率的方法,其特征在于:包括在loop分支预测算法中加入bypass电路,具体方法为:对于三个进入流水线的PC,为pc1、pc2和pc3,分别把pc1、pc2和各自对应的分支预测的结果在流水线后端通过寄存器寄存下来,然后通过bypass电路旁路到流水线的if1阶段;在电路设计中需要在流水线的if3、if4分别加入pc1和pc2的寄存器电路,pc1和pc2满足loop预测器命中时把pc1和pc2的值分别寄存到后续流水线阶段的寄存器上并通过bypass电路旁路到流水线的if1阶段和新进入的pc通过对比电路作对比;对于pc1和pc2的预测结果也要加入寄存器电路把预测结果寄存到后续流水线阶段的寄存器上,if4和if3阶段,并通过bypass电路旁路到流水线的if1阶段,待pc3通过比较电路判断出和pc1或pc2相等时,即可使用if1阶段对应的pc1、pc2旁路预测结果;
通过bypass电路提升loop分支预测算法准确率的方法具体为:
在if0阶段得到的第一个PC进入混合分支预测器,混合分支预测器的loop预测器直接使用PC寻址;
当pc1在loop预测器中发生命中时,会使用寄存器对pc1进行寄存;同时,命中后会在if1阶段得到分支预测信息,在if2阶段在混合分支预测器中经过比较,得到预测结果,并把流水线if2阶段的预测结果通过寄存pc1_loop_bypass_reg寄存;
在下一次if0阶段取到pc2时,随后进入if1阶段,此时pc2会与pc1值进行比较,当第二个pc2和pc1相等时,通过bypass电路复用第一个PC的预测结果和命中信息即(pc1_loop_bypass_reg中的值),反之如果命中loop预测器并寄存pc2和对应预测结果到pc2_loop_bypass_reg;
同理对于pc3进入到if1阶段后会和pc1_bypass_reg、pc2_bypass_reg寄存的PC值进行比较,如果和pc1相等预测结果通过bypass电路把pc1_loop_bypass_reg旁路到if1使用;如果和pc2相等预测结果通过bypass电路把pc2_loop_bypass_reg旁路到if1使用;如果不相等且满足命中loop预测器,则把pc2_bypass_reg预测结果覆盖pc1_bypass_reg,并且把第三个PC得到的预测结果存入pc2_bypass_reg。
2.根据权利要求1所述的一种通过bypass电路提升loop分支预测算法准确率的方法,其特征在于:对于第四个PC,如果命中loop预测器,则重复以上流程,在该情况下pc4、pc3、pc2取代刚才的pc3、pc2、pc1成为一个新的三项小组;循环的把pc2、pc3和预测结果pc2_bypass_reg、pc3_bypass_reg寄存下来供后面的pc4预测使用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏华创微系统有限公司;中国电子科技集团公司第十四研究所,未经江苏华创微系统有限公司;中国电子科技集团公司第十四研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210657136.4/1.html,转载请声明来源钻瓜专利网。





