[发明专利]在分支预测失败时使用ROB恢复RAT内容的系统和方法有效
申请号: | 201010607215.1 | 申请日: | 2010-12-27 |
公开(公告)号: | CN102567137A | 公开(公告)日: | 2012-07-11 |
发明(设计)人: | 杨思博 | 申请(专利权)人: | 北京国睿中数科技股份有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 王小衡;卢江 |
地址: | 100088 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分支 预测 失败 使用 rob 恢复 rat 内容 系统 方法 | ||
1.一种在分支预测失败时使用重排序缓冲器ROB恢复寄存器别名表RAT内容的系统,所有的ROB项按照其地址被分成多个组,每个组包括预定数目的ROB项并且所述预定数目的ROB项互相之间没有重叠,所述系统包括:
用于产生指示RAT进行更新操作的更新信号的定时装置;
对应于RAT中每个表项的映射关系恢复模块,其中每个映射关系恢复模块包括:
分别对应于每个ROB项的比较器,将保存在每个ROB项中的目标逻辑地址与该映射关系恢复模块所对应的RAT表项所对应的逻辑寄存器地址进行比较并且输出指示二者是否相等的比较结果,其中保存在每个ROB项中的目标逻辑地址与该ROB项所对应的指令的目标逻辑寄存器地址相等;
对应于ROB项的每个组的组内查找装置,其接收每个组内的ROB项所对应的比较器输出的比较结果,在这些比较结果中进行查找并输出查找结果;
用于ROB项的多个组的组间多选器,用于选出ROB项中的ROB尾项所在的组,所述ROB尾项是发生错误的分支指令所对应的ROB项,并输出该ROB尾项所在的组的组内的比较器的比较结果;
特殊组内查找装置,接收所述组间多选器输出的比较结果,并且基于所述组间多选器输出的比较结果对所述ROB尾项所在组内的比较器的比较结果进行查找,并输出查找结果;
全局查找装置,用于基于所述组内查找装置输出的查找结果和所述特殊组内查找装置输出的查找结果输出最终的查找结果,所述最终的查找结果指示在ROB中是否还有其目标逻辑地址与该映射关系恢复模块所对应的RAT表项所对应的逻辑寄存器地址相等的ROB项,以及在其目标逻辑地址与该映射关系恢复模块所对应的RAT表项所对应的逻辑寄存器地址相等的这些ROB项中对应于应该最晚被执行的其目标寄存器地址与所述目标逻辑地址相等的指令的ROB项的地址;
RAT表项恢复装置,接收全局查找装置输出的最终的查找结果,输出该映射关系恢复模块所对应的RAT表项所保存的物理寄存器地址应该被恢复的内容。
2.如权利要求1所述的系统,当所述定时装置中的计数器的计数值达到预定的值时,该定时装置发出更新信号以指示RAT根据其各个表项所对应的映射关系恢复模块输出更新各个RAT表项原来所保存的物理寄存器地址,其中所述定时装置的定时时间不超过当发生分支预测错误时微处理器从新地址重新加载指令的时间。
3.如权利要求1所述的系统,其中所述组内查找装置按照其所对应的组内的ROB项地址由组内最大递减到组内最小的顺序查找是否有ROB项所对应的比较器的比较结果指示为相等,如果有,则输出指示这个ROB项在组内的位置的信号和指示查找成功的信号,如果有多个ROB项所对应的比较器的比较结果指示为相等,输出指示最先找到的那个ROB项在组内的位置的信号和指示查找成功的信号,否则输出指示查找失败的信号。
4.如权利要求1所述的系统,其中所述特殊组内查找装置接收组间多选器的输出结果,并以所述ROB尾项为起点,按照ROB项地址由大到小的顺序查找是否有ROB项所对应的比较器的比较结果指示为相等,如果有,则输出指示这个ROB项在组内的位置的信号和指示查找成功的信号,如果有多个ROB项所对应的比较器的比较结果指示为相等,则输出指示最先找到的那个ROB项在组内的位置的信号和指示查找成功的信号,否则输出指示查找失败的信号,其中对应于其地址大于ROB尾项地址的ROB项的比较器的比较结果将不会被查找。
5.如权利要求4所述的系统,其中所述全局查找装置首先根据所述特殊组内查找装置的输出的指示查找是否成功的信号来判断特殊组内查找装置是否找到了比较器的比较结果指示为相等的ROB项,如果找到,就将特殊组内查找装置找到的ROB项的地址作为输出并且输出表示查找成功的信号,如果特殊组内查找装置没有找到比较器的比较结果指示为相等的ROB项,则按照指令依次进入ROB的方向,判断组间多选器所选择的组的下一个组所对应的组内查找装置是否找到了比较器的比较结果指示为相等的ROB项,如果找到,将这个组内查找装置找到的ROB项的地址作为输出并且输出指示查找成功的信号,如果没有找到,继续判断下一个组内查找装置的结果,直到循环到组间多选器找到的ROB组为止,此时全局查找装置查找组间多选器所选择的ROB组的组内查找装置是否找到比较器比较结果指示为相等的ROB项,如果找到,将这一ROB项的地址作为输出并且输出指示查找成功的信号,否则全局查找装置输出指示查找失败的信号,并结束查找。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国睿中数科技股份有限公司,未经北京国睿中数科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010607215.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:基于FPGA的CT图像重建硬件加速方法
- 下一篇:一种光扩散膜及其制备方法