System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于处理器的多级取指目标缓冲器的分支预测方法技术_技高网

基于处理器的多级取指目标缓冲器的分支预测方法技术

技术编号:40270231 阅读:8 留言:0更新日期:2024-02-02 22:56
本发明专利技术提供一种基于处理器的多级取指目标缓冲器的分支预测方法,涉及计算机技术领域,方法包括:根据分支预测指令同时查找一级取指目标缓冲器、二级取指目标缓冲器及替换取指目标缓冲器;若一级取指目标缓冲器未命中分支预测指令,且替换取指目标缓冲器命中分支预测指令,则替换取指目标缓冲器确定分支预测结果,将分支预测结果写入一级取指目标缓冲器;若一级取指目标缓冲器及替换取指目标缓冲器都未命中分支预测指令,且二级取指目标缓冲器命中分支预测指令,则二级取指目标缓冲器确定分支预测结果,将分支预测结果写入一级取指目标缓冲器。本发明专利技术能够在提升取指目标缓冲器容量的同时,保证访问的低延时和低功耗。

【技术实现步骤摘要】

本专利技术涉及计算机,尤其涉及一种基于处理器的多级取指目标缓冲器的分支预测方法


技术介绍

1、取指目标缓冲器(fetch target buffer,ftb)是处理器分支预测的核心部件,其他分支预测部件所做出的预测全部依赖于ftb提供的信息。ftb提供预测块内分支指令的信息。每一个取指目标缓冲器ftb项都形成一个预测块,对下一个取指块(fetch group)的起始地址做预测,同时也对当前取指块的结束点做预测。ftb最大化每次预测取指的指令数量。每个ftb项表示一个可变长度的顺序取指块,直到下一个分支。ftb为取指块生成一个起始地址、取指块结束的地址,以及下一个预测块的预测目标地址。

2、大容量的ftb可以提供更好的分支预测能力,以预测更多的分支的方向和目标。但是,大容量的ftb会导致ftb访问延迟的增加,降低处理器的主频,增加处理器的功耗。

3、因此,如何在提升ftb容量的同时,保证ftb访问的低延时和低功耗,以提升处理器的性能,提高处理器的主频,降低处理器的功耗。


技术实现思路

1、针对现有技术存在的问题,本专利技术提供一种基于处理器的多级取指目标缓冲器的分支预测方法。

2、本专利技术提供一种基于处理器的多级取指目标缓冲器的分支预测方法,所述多级取指目标缓冲器包括一级取指目标缓冲器、二级取指目标缓冲器及替换取指目标缓冲器;所述方法包括:

3、根据分支预测指令同时查找所述一级取指目标缓冲器、所述二级取指目标缓冲器及所述替换取指目标缓冲器;

4、若所述一级取指目标缓冲器命中所述分支预测指令,则所述一级取指目标缓冲器确定分支预测结果;若所述一级取指目标缓冲器未命中所述分支预测指令,且所述替换取指目标缓冲器命中所述分支预测指令,则所述替换取指目标缓冲器确定分支预测结果,将所述分支预测结果写入所述一级取指目标缓冲器;

5、若所述一级取指目标缓冲器及所述替换取指目标缓冲器都未命中所述分支预测指令,且所述二级取指目标缓冲器命中所述分支预测指令,则所述二级取指目标缓冲器确定分支预测结果,将所述分支预测结果写入所述一级取指目标缓冲器。

6、根据本专利技术提供的基于处理器的多级取指目标缓冲器的分支预测方法,所述将所述分支预测结果写入所述一级取指目标缓冲器,包括:

7、所述替换取指目标缓冲器将所述分支预测结果传递到所述一级取指目标缓冲器;

8、在所述一级取指目标缓冲器接收到来自所述替换取指目标缓冲器的所述分支预测结果,且所述一级取指目标缓冲器容量已满的情况下,从所述一级取指目标缓冲器中删除第一分支预测信息,将所述分支预测结果写入所述一级取指目标缓冲器;

9、将所述第一分支预测信息写入所述替换取指目标缓冲器。

10、根据本专利技术提供的基于处理器的多级取指目标缓冲器的分支预测方法,所述将所述分支预测结果写入所述一级取指目标缓冲器,包括:

11、所述二级取指目标缓冲器将所述分支预测结果传递到所述一级取指目标缓冲器;

12、在所述一级取指目标缓冲器接收到来自所述二级取指目标缓冲器的所述分支预测结果,且所述一级取指目标缓冲器容量已满的情况下,从所述一级取指目标缓冲器中删除第一分支预测信息,将所述分支预测结果写入所述一级取指目标缓冲器;

13、将所述第一分支预测信息写入所述替换取指目标缓冲器。

14、根据本专利技术提供的基于处理器的多级取指目标缓冲器的分支预测方法,所述将所述第一分支预测信息写入所述替换取指目标缓冲器,包括:

15、在所述替换取指目标缓冲器接收到来自所述一级取指目标缓冲器的所述第一分支预测信息,且所述替换取指目标缓冲器容量已满的情况下,从所述替换取指目标缓冲器中删除第二分支预测信息,将所述第一分支预测信息写入所述替换取指目标缓冲器;

16、将所述第二分支预测信息写入所述二级取指目标缓冲器。

17、根据本专利技术提供的基于处理器的多级取指目标缓冲器的分支预测方法,所述将所述第二分支预测信息写入所述二级取指目标缓冲器,包括:

18、在所述二级取指目标缓冲器接收到来自所述替换取指目标缓冲器的所述第二分支预测信息,且所述二级取指目标缓冲器容量已满的情况下,从所述二级取指目标缓冲器中删除第三分支预测信息,将所述第二分支预测信息写入所述二级取指目标缓冲器。

19、根据本专利技术提供的基于处理器的多级取指目标缓冲器的分支预测方法,所述方法还包括:

20、若所述一级取指目标缓冲器、所述替换取指目标缓冲器及所述二级取指目标缓冲器都未命中所述分支预测指令,则将所述分支预测指令中的顺序取指块写入所述一级取指目标缓冲器。

21、根据本专利技术提供的基于处理器的多级取指目标缓冲器的分支预测方法,所述从所述一级取指目标缓冲器中删除第一分支预测信息,包括:

22、从所述一级取指目标缓冲器中,基于替换算法删除第一分支预测信息。

23、本专利技术还提供一种处理器,包括多级取指目标缓冲器;所述多级取指目标缓冲器包括一级取指目标缓冲器、二级取指目标缓冲器及替换取指目标缓冲器;其中:

24、所述处理器根据分支预测指令同时查找所述一级取指目标缓冲器、所述二级取指目标缓冲器及所述替换取指目标缓冲器;

25、若所述一级取指目标缓冲器命中所述分支预测指令,则所述一级取指目标缓冲器确定分支预测结果;若所述一级取指目标缓冲器未命中所述分支预测指令,且所述替换取指目标缓冲器命中所述分支预测指令,则所述替换取指目标缓冲器确定分支预测结果,将所述分支预测结果写入所述一级取指目标缓冲器;

26、若所述一级取指目标缓冲器及所述替换取指目标缓冲器都未命中所述分支预测指令,且所述二级取指目标缓冲器命中所述分支预测指令,则所述二级取指目标缓冲器确定分支预测结果,将所述分支预测结果写入所述一级取指目标缓冲器。

27、本专利技术还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于处理器的多级取指目标缓冲器的分支预测方法。

28、本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于处理器的多级取指目标缓冲器的分支预测方法。

29、本专利技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述基于处理器的多级取指目标缓冲器的分支预测方法。

30、本专利技术提供的基于处理器的多级取指目标缓冲器的分支预测方法,通过根据分支预测指令同时查找一级取指目标缓冲器、二级取指目标缓冲器及替换取指目标缓冲器;若一级取指目标缓冲器命中分支预测指令,则一级取指目标缓冲器确定分支预测结果;若一级取指目标缓冲器未命中分支预测指令,且替换取指目标缓冲器命中分支预测指令,则替换取指目标缓冲器确定分支预测结果,将分支预测结果写入一本文档来自技高网...

【技术保护点】

1.一种基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述多级取指目标缓冲器包括一级取指目标缓冲器、二级取指目标缓冲器及替换取指目标缓冲器;所述方法包括:

2.根据权利要求1所述的基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述将所述分支预测结果写入所述一级取指目标缓冲器,包括:

3.根据权利要求1所述的基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述将所述分支预测结果写入所述一级取指目标缓冲器,包括:

4.根据权利要求2或3所述的基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述将所述第一分支预测信息写入所述替换取指目标缓冲器,包括:

5.根据权利要求4所述的基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述将所述第二分支预测信息写入所述二级取指目标缓冲器,包括:

6.根据权利要求1所述的基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述方法还包括:

7.根据权利要求2或3所述的基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述从所述一级取指目标缓冲器中删除第一分支预测信息,包括:

8.一种处理器,其特征在于,包括多级取指目标缓冲器;所述多级取指目标缓冲器包括一级取指目标缓冲器、二级取指目标缓冲器及替换取指目标缓冲器;其中:

9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述基于处理器的多级取指目标缓冲器的分支预测方法。

10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述基于处理器的多级取指目标缓冲器的分支预测方法。

...

【技术特征摘要】

1.一种基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述多级取指目标缓冲器包括一级取指目标缓冲器、二级取指目标缓冲器及替换取指目标缓冲器;所述方法包括:

2.根据权利要求1所述的基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述将所述分支预测结果写入所述一级取指目标缓冲器,包括:

3.根据权利要求1所述的基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述将所述分支预测结果写入所述一级取指目标缓冲器,包括:

4.根据权利要求2或3所述的基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述将所述第一分支预测信息写入所述替换取指目标缓冲器,包括:

5.根据权利要求4所述的基于处理器的多级取指目标缓冲器的分支预测方法,其特征在于,所述将所述第二分支预测信息写入所述二级取指目标缓冲器,包括:

6.根据权...

【专利技术属性】
技术研发人员:郇丹丹李祖松
申请(专利权)人:北京微核芯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1