[发明专利]支持多路并行预测的分支预测装置无效
申请号: | 201110347139.X | 申请日: | 2011-11-04 |
公开(公告)号: | CN102520914A | 公开(公告)日: | 2012-06-27 |
发明(设计)人: | 郭宇波;孟建熠;刘兵;葛海通 | 申请(专利权)人: | 杭州中天微系统有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 杭州天正专利事务所有限公司 33201 | 代理人: | 王兵;王利强 |
地址: | 310012 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 支持 并行 预测 分支 装置 | ||
1.一种支持多路并行预测的分支预测装置,其特征在于:所述分支预测装置包括:
一个指令预取单元,用于在一个时钟周期内并行预取n条指令,n为自然数,且n≥2;
n路并行预测单元,用于设置n路并行预测子单元,对n条分支跳转指令进行并行预测;
一个控制电路,用于检测整个分支预测装置的状态,连接分支预测存储器,为其提供读使能信号和写使能信号,连接索引选择器,为其提供选通信号;
所述并行预测子单元包括:
分支预测存储器,用于记录分支跳转指令的分支预测信息,并输出预测的分支结果,所述分支跳转指令包含在n条指令中;
全局历史移位寄存器,用于记录经过后级流水线确认的拥有特定低位PC地址的跳转指令跳转历史信息,为对应的分支预测存储器提供写索引,每个全局历史移位寄存器的位宽为j位,其中存储着此移位寄存器对应位置的最近执行j条分支跳转指令在执行完毕后是否跳转的结果;
虚拟历史移位寄存器,用于记录拥有特定低位PC地址的跳转指令跳转与否预测轨迹,每个虚拟历史移位寄存器的位宽为j位,其中存储着最近j条分支跳转指令是否跳转的预测结果;
索引选择器,连接于全局历史移位寄存器和虚拟历史移位寄存器的输出端和存储器的输入端之间,从全局历史移位寄存器或虚拟历史移位寄存器中选取j作为最终的分支预测存储器的索引。
2.如权利要求1所述的支持多路并行预测的分支预测装置,其特征在于:所述控制电路使用分支跳转指令用低m位的PC地址来区分不同的分支跳转指令,其中n=2m,一路分支预测装置的预测结果只能用于其对应的特定的分支跳转指令。
3.如权利要求1或2所述的支持多路并行预测的分支预测装置,其特征在于:所述并行预测子单元中,使用虚拟历史移位寄存器的全部共j位用于索引对应的预测存储器,对分支预测存储器进行读操作,读取预测信息。
4.如权利要求1或2所述的支持多路并行预测的分支预测装置,其特征在于:所述控制电路中,当分支跳转指令的预测结果经过后级流水线确认正确之后,更新此分支跳转指令所对应的全局历史寄存器,将正确的分支结果写入全局历史移位寄存器的最高位或者最低位,全局历史移位寄存器则相应的左移或者右移一位。
5.如权利要求1或2所述的支持多路并行预测的分支预测装置,其特征在于:所述控制电路中,对分支跳转指令作出预测之后,将立即用这条指令的预测信息更新这条分支跳转指令所对应的虚拟历史寄存器,将预测的分支结果写入虚拟历史移位寄存器的最高位或者最低位,虚拟历史移位寄存器则相应的左移或者右移一位。
6.如权利要求1或2所述的支持多路并行预测的分支预测装置,其特征在于:所述控制电路中,当分支跳转指令的预测结果经过后级流水线确认错误之后,控制电路控制选择此分支跳转指令所对应的分支预测存储器进行写操作,此分支跳转指令所对应的全局历史移位寄存器的全部共j位用于索引,将正确的分支结果写入分支结果存储器。
7.如权利要求1或2所述的支持多路并行预测的分支预测装置,其特征在于:所述控制电路中,当分支跳转指令的预测结果经过后级流水线确认错误之后,每一路分支预测装置将使用预测信息更新此分支跳转指令所对应的全局历史寄存器,将跳转结果写入全局历史移位寄存器的最高位或者最低位,全局历史移位寄存器则相应的左移或者右移一位,并用更新后的全局历史移位寄存器全j位更新对应的虚拟历史移位寄存器的全j位。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州中天微系统有限公司,未经杭州中天微系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110347139.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种N掺杂的二氧化钛微球的制备方法
- 下一篇:一种联合降解木质纤维素的方法