【技术实现步骤摘要】
本申请是申请日为2008年12月25日、申请号为200810190998.0、专利技术名称为“对非控制流指令减少分支检验”的中国专利技术专利申请的分案申请。
本专利技术一般涉及微处理器,特别是为分支预测降低能耗。
技术介绍
微处理器是响应于实现计算机程序的指令来执行各种计算操作的电子设备。实现计算机程序的通用技术是以预定序列发送多个指令到微处理器的执行单元,然后顺序地执行这些指令。在一些情况下,程序跳出了次序来执行并不是序列里的下条指令的指令。可以引起执行跳出序列的指令的一个例子是分支指令。当执行一分支指令时,微处理器可以跳到由分支指令标识的目标指令,并且微处理器下一步执行的是该目标指令,而非下一顺序指令。如图示,图1显示程序执行序列的示例,其中以顺序方式执行五个顺序指令1-5,指令1首先执行,然后第二执行指令2等等。在该示例中,指令5是一分支指令,其指定指令2为其目标指令。执行分支指令5后,微处理器跳出了顺序指令的次序,接下来执行程序执行顺序中的指令2,而非下一顺序指令6。微处理器经常使用几个阶段来处理指令,其可包括:指令取阶段,其中从指令高速缓存中取出指令;解码指令阶段,其中对取来的指令进行解码分析;指令执行阶段,其中执行指令。为了提高通过各种阶段处理多个指令的速度,一些微处理器采用已知的流水线技术。流水线在流水线的多个阶段对几个不同的指令同时执行处理的不同部分的意义上类似于装配线。流水线技术的一个例< ...
【技术保护点】
一种执行指令的微处理器,其中该微处理器取一组指令,所述指令包括至少一个控制流指令和至少一个非控制流指令,并且其中该微处理器根据包括多个阶段的流水线执行指令,该微处理器包括:至少一个解码器,用于预解码所述一组指令,以产生控制指令标识信息,所述控制指令标识信息确定所述至少一个控制流指令和所述至少一个非控制流指令;控制指令标识单元,其存储控制指令标识信息,所述控制指令标识信息被存储在指令高速缓存标签数组中且对于已取指令组的每个指令包括标识该指令是否是非控制流指令的信息;分支预测单元,其基于控制指令标识信息来检验对应于该至少一个控制流指令的分支预测信息,并且不检验对应于该至少一个非控制流指令的分支预测信息;和指令高速缓存,在流水线的该多个阶段的第一阶段中从所述指令高速缓存中取出该组指令,其中该控制指令标识单元预测该指令高速缓存的地址。
【技术特征摘要】 【专利技术属性】
1.一种执行指令的微处理器,其中该微处理器取一组指令,所述指令包括
至少一个控制流指令和至少一个非控制流指令,并且其中该微处理器根据包括
多个阶段的流水线执行指令,该微处理器包括:
至少一个解码器,用于预解码所述一组指令,以产生控制指令标识信息,
所述控制指令标识信息确定所述至少一个控制流指令和所述至少一个非控制流
指令;
控制指令标识单元,其存储控制指令标识信息,所述控制指令标识信息被
存储在指令高速缓存标签数组中且对于已取指令组的每个指令包括标识该指令
是否是非控制流指令的信息;
分支预测单元,其基于控制指令标识信息来检验对应于该至少一个控制流
指令的分支预测信息,并且不检验对应于该至少一个非控制流指令的分支预测
信息;和
指令高速缓存,在流水线的该多个阶段的第一阶段中从所述指令高速缓存
中取出该组指令,
其中该控制指令标识单元预测该指令高速缓存的地址。
2.如权利要求1所述的微处理器,其中分支预测单元包含分支历史表。
3.如权利要求1所述的微处理器,其中分支预测单元包含分支目标缓冲器。
4.如权利要求1所述的微处理器,其中微处理器是并行取该组指令的超标
量处理器。
5.如权利要求1所述的微处理器,其中分支预测单元在该多个阶段的第一
阶段检验分支预测信息。
6.如权利要求5所述的微处理器,其中控制指令标识单元从指令高速缓存
标签数组中接收控制指令标识信息。
7.如权利要求6所述的微处理器,进一步包括至少一个解码器,其对指令
进行解码以产生控制指令标识信息,其中指令高速缓存标签数组从该至少一个
解码器接收该控制指令标识信息。
8.如权利要求1所述的微处理器,其中该微处理器使用程序计数器对指令
技术研发人员:王凯峰,孙红霞,吴永强,
申请(专利权)人:世意法北京半导体研发有限责任公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。