[发明专利]具有高效返回预测能力的分支目标缓冲器有效
申请号: | 201410069516.1 | 申请日: | 2014-02-28 |
公开(公告)号: | CN104020982B | 公开(公告)日: | 2018-06-15 |
发明(设计)人: | P·博塔;S·帕塔尔 | 申请(专利权)人: | MIPS技术公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 中国国际贸易促进委员会专利商标事务所 11038 | 代理人: | 李玲 |
地址: | 美国加*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 提供具有高效返回预测能力的分支目标缓冲器,并提供改善的分支目标缓冲器(BTB)和在具有流水线的微处理器中处理数据的方法。根据各种实施例,提供包含非返回缓冲器、返回缓冲器和多路复用器的BTB。非返回缓冲器被设计为存储多个非返回条目。各非返回条目与非返回型指令对应。返回缓冲器被设计为存储分别与返回型指令对应的多个返回条目。另外,返回缓冲器可产生控制信号。多路复用器也产生控制信号并输出来自非返回缓冲器的数据或者来自返回预测栈(RPS)的数据。多路复用器是从非返回缓冲器还是从RPS返回数据依赖于控制信号。 1 | ||
搜索关键词: | 返回 缓冲器 分支目标缓冲器 多路复用器 条目 产生控制信号 预测能力 存储 指令 微处理器 处理数据 返回数据 控制信号 流水线 与非 输出 预测 | ||
输入,所述输入被配置为接收要被取得的指令的地址;
非返回缓冲器,所述非返回缓冲器被配置为存储多个非返回条目和多个目标地址,其中所述多个非返回条目中的每个非返回条目与非返回型指令的地址对应,所述多个目标地址与对应的非返回条目相关联,并且所述非返回缓冲器进一步被配置为输出与在所述输入处接收的地址匹配的对应的非返回条目的目标地址;
返回缓冲器,所述返回缓冲器被配置为存储多个返回条目,其中所述多个返回条目中的每个返回条目与返回型指令的地址对应,并且所述返回缓冲器进一步被配置为响应于在所述输入处接收的指令地址与返回条目匹配而产生控制信号;
返回预测栈RPS,所述返回预测栈RPS被配置为存储与所述返回缓冲器中存储的返回条目对应的多个目标地址;以及
多路复用器,所述多路复用器被配置为接收来自返回缓冲器的控制信号、来自非返回缓冲器的数据以及来自RPS的数据,并且其中所述多路复用器进一步被配置为基于所述控制信号输出来自非返回缓冲器的数据或者来自RPS的数据。
2.根据权利要求1所述的BTB,其中,返回缓冲器进一步被配置为确定所述多个返回条目中是否有某一个包含与指令地址对应的标签。3.根据权利要求2所述的BTB,其中,返回缓冲器进一步被配置为响应于确定所述多个返回条目中的某一个包含与指令地址对应的标签而产生控制信号,以使得该控制信号导致多路复用器输出来自RPS的数据。4.根据权利要求2所述的BTB,其中,返回缓冲器进一步被配置为响应于确定所述多个返回条目都不包含与指令地址对应的标签而产生控制信号,以使得该控制信号导致多路复用器输出来自非返回缓冲器的数据。5.根据权利要求1所述的BTB,其中,非返回缓冲器被配置为存储数量比返回缓冲器多的条目。6.根据权利要求1所述的BTB,其中,所述多个非返回条目包含与非返回型指令对应的标签部分和数据部分。7.根据权利要求1所述的BTB,其中,所述多个返回条目包含代表返回型指令的程序计数器的标签,而不具有对应的指令地址。8.根据权利要求1所述的BTB,其中,非返回缓冲器包含标签部分和数据部分。9.根据权利要求1所述的BTB,其中,非返回缓冲器被配置为确定所述多个非返回条目中是否有某一个与指令地址对应。10.根据权利要求1所述的BTB,其中,返回条目不包含目标地址。11.一种通过使用分支目标缓冲器BTB取得地址的方法,包括:接收与要被取得的指令的指令地址有关的数据;
确定存储于返回缓冲器中的多个返回条目中是否有某一个与指令地址对应,其中所述多个返回条目中的每个返回条目与返回型指令的地址对应;
由所述返回缓冲器响应于确定所述指令地址与存储的返回条目对应而产生控制信号;以及
基于产生的控制信号选择性地输出来自返回预测栈RPS和非返回缓冲器中的一个的数据,所述返回预测栈RPS被配置为存储与所述返回缓冲器中存储的返回条目对应的多个目标地址,所述非返回缓冲器被配置为存储多个非返回条目和多个目标地址,其中所述多个非返回条目中的每个非返回条目与非返回型指令的地址对应,所述多个目标地址与对应的非返回条目相关联,并且所述非返回缓冲器进一步被配置为输出与接收的指令地址匹配的对应的非返回条目的目标地址,其中来自RPS的数据包括存储在返回缓冲器中的所述多个返回条目中的一个的目标地址。
12.根据权利要求11所述的方法,其中,所述确定包括确定所述多个返回条目中是否有某一个包含与指令地址对应的标签。13.根据权利要求11所述的方法,还包括当所述确定包括确定所述多个返回条目中的某一个包含与指令地址对应的标签时,基于产生的控制信号输出来自RPS的数据。14.根据权利要求11所述的方法,还包括当所述确定包括确定所述多个返回条目都不包含与指令地址对应的标签时,基于产生的控制信号输出来自非返回缓冲器的数据。15.根据权利要求11所述的方法,还包括在非返回缓冲器中存储所述多个非返回条目,其中,各非返回条目与非返回型指令对应。16.根据权利要求15所述的方法,还包括确定所述多个非返回条目中的某一个与指令地址对应。17.根据权利要求15所述的方法,其中,非返回条目中的每一个包含标签部分和数据部分。18.根据权利要求11所述的方法,其中,所述多个返回条目中的每一个包含代表返回型指令的程序计数器的标签,而不具有对应的指令地址。19.根据权利要求11所述的方法,其中,返回条目不包含目标地址。该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于MIPS技术公司,未经MIPS技术公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410069516.1/,转载请声明来源钻瓜专利网。
- 上一篇:一种数据传输方法及系统
- 下一篇:通用坐浴椅