发明名称 一种面向间接跳转分支预测的分支目标缓冲器及设计方法
摘要 本发明提出一种面向间接跳转分支预测的分支目标缓冲器及设计方法,该方法包括在分支目标缓冲器中,对于间接跳转的分支指令,如果跳转目的地址来源于预先存储到寄存器或内存的值,则在分支目标缓冲器对应项跳转目的地址中添加指向二级硬件表Indirect_BTB的索引;当一条分支指令执行完成后,若所述分支指令是跳转目的地址依赖于寄存器或内存的值的间接跳转的分支指令则执行两级分支目标缓冲器填充操作,否则执行常规分支目标缓冲器填充操作;获取需要执行的所述分支指令,若所述分支指令是跳转目的地址依赖于寄存器或内存的值的间接跳转的分支指令则执行两级分支目标缓冲器分支预测操作,否则执行常规分支目标缓冲器预测操作。
申请公布号 CN105867880A 申请公布日期 2016.08.17
申请号 CN201610203289.6 申请日期 2016.04.01
申请人 中国科学院计算技术研究所 发明人 沈海华;赵跃辉;吴博雅
分类号 G06F9/30(2006.01)I;G06F9/35(2006.01)I 主分类号 G06F9/30(2006.01)I
代理机构 北京律诚同业知识产权代理有限公司 11006 代理人 祁建国;梁挥
主权项 一种面向间接跳转分支预测的分支目标缓冲器设计方法,其特征在于,包括:分支目标缓冲器改进步骤,构造二级硬件表Indirect_BTB,用于记录间接跳转的分支指令的多个跳转目的地址,在分支目标缓冲器中,对于间接跳转的分支指令,如果跳转目的地址来源于预先存储到寄存器或内存的值,则在分支目标缓冲器对应项跳转目的地址中添加指向二级硬件表Indirect_BTB的索引;分支目标缓冲器更新步骤,当一条分支指令执行完成后,若所述分支指令是跳转目的地址依赖于寄存器或内存的值的间接跳转的分支指令则执行两级分支目标缓冲器填充操作,否则执行常规分支目标缓冲器填充操作;分支目标缓冲器预测步骤,获取需要执行的所述分支指令,若所述分支指令是跳转目的地址依赖于寄存器或内存的值的间接跳转的分支指令则执行两级分支目标缓冲器分支预测操作,否则执行常规分支目标缓冲器预测操作。
地址 100190 北京市海淀区中关村科学院南路6号