[发明专利]一种分支预测方法及装置无效
申请号: | 201110096601.3 | 申请日: | 2011-04-18 |
公开(公告)号: | CN102184091A | 公开(公告)日: | 2011-09-14 |
发明(设计)人: | 孙瑞琛 | 申请(专利权)人: | 孙瑞琛 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 北京锐思知识产权代理事务所(普通合伙) 11341 | 代理人: | 李涛 |
地址: | 100191 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分支 预测 方法 装置 | ||
1.一种分支预测装置,所述分支预测装置为处理器的一个组成部分,其特征在于所述分支预测装置包括:
指令存储装置,用来存储将要执行的指令代码,该装置接收地址,然后输出存储在该地址处的指令代码;
指令预取装置,该装置发出地址给指令存储装置,然后获得存储在该地址处的指令代码,并传送给指令译码装置,同时进行分支预测操作,准备好下一次需要输出的地址;
指令译码装置,该装置对指令代码进行译码分析,并发送给相应的执行装置;
程序控制指令执行装置,用于执行程序控制指令代码,并将执行结果反馈给指令预取装置;
非程序控制指令执行装置,该装置用来执行除程序控制指令之外的其它指令代码。
2.根据权利要求1所述的分支预测装置,其特征在于,用于在指令预取时,对程序是否会发生分支进行预测;
其中,所述指令预取装置包括:
分支历史表单元,该单元存储最近执行过的K条程序控制指令的分支历史信息;
选择预测表单元,该单元存储对正向和反向模式历史表单元的进行选择的记录;
正向模式历史表单元,该单元记录实际分支的结果和当前预测状态,其状态倾向于预测发生跳转;
反向模式历史表单元,该单元记录实际分支的结果和当前预测状态,其状态倾向于预测不发生跳转;
地址生成逻辑单元,该单元根据分支预测的结果,生成取指的地址。
3.根据权利要求1或2所述的分支预测装置,其特征在于,其中,
所述指令预取装置向所述指令存储装置发出地址,然后获得存储在该地址出的所述程序控制指令,并传送给所述指令译码装置,同时所述指令预取装置进行分支预测操作,准备好下一次需要输出的地址;
所述指令译码装置将所述程序控制指令分发给所述程序控制指令装置,然后所述程序控制指令装置根据所述程序控制指令执行程序控制操作,并将结果反馈给所述指令预取装置。
4.一种分支预测方法,通过一个时钟周期即完成对分支的预测,其特征在于包括如下步骤:
步骤1,向指令存储装置发出程序控制指令I的存储地址A;
步骤2,根据地址A,查询程序控制指令类型表,找出该地址对应的程序控制指令类型;
步骤3,根据该类型,查找分支历史表,找出该类型对应的分支历史信息;
步骤4,将步骤3中找出的分支历史信息和地址A进行异或,得到一个值;
步骤5,根据步骤4中得到的值,查找选择预测表,获得该值对应的选择值;
步骤6,根据步骤5中得到的选择值,从正向模式历史表和反向历史模式表中选出一个表;
步骤7,根据步骤4中得到的值,查找步骤6中选择出的模式历史表,获得对应的表项内容,根据该内容即可预测出指令I是否会导致跳转,以及新的分支地址值;
步骤8,从指令存储装置获取存储在地址A的指令I的指令代码,并传送给指令译码装置;
步骤9,指令译码装置将程序控制指令I分发给程序控制指令执行装置;
步骤10,程序控制指令执行装置执行指令I,将指令I是否导致了跳转、以及新的分支地址值这些信息反馈回指令预取装置;
步骤11,根据步骤10的反馈信息,对分支历史表、选择预测表、模式历史表进行更新。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于孙瑞琛,未经孙瑞琛许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110096601.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种泡青菜加工剩余物制作的香辣酱及其加工方法
- 下一篇:全株小麦饲料