指令转移预测系统、方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:37679270 阅读:13 留言:0更新日期:2023-05-26 04:46
本发明专利技术公开了一种指令转移预测系统、方法、装置、计算机设备及存储介质,所述指令转移预测系统包括预测单元、预测目标地址队列和取指单元;其中:所述预测单元,用于对转移指令进行多级分支预测;所述预测目标地址队列,用于在接收到第一级预测结果的情况下记录对应的所述转移指令的指令地址以及所述第一级预测结果,并在接收到所述转移指令对应的第二级预测结果的情况下,利用所述第二级预测结果覆盖对应的所述第一级预测结果;所述取指单元,用于从所述预测目标地址队列获取目标预测地址以进行相应的取指操作。由此将预测单元从原来的耦合结构中分离出来,有效提升预测单元的解耦合效果。耦合效果。耦合效果。

【技术实现步骤摘要】
指令转移预测系统、方法、装置、计算机设备及存储介质


[0001]本专利技术涉及集成电路设计
,尤其涉及一种指令转移预测系统、方法、装置、计算机设备及存储介质。

技术介绍

[0002]在现代高性能处理器中,流水线可以被划分为前端处理单元和后端处理单元。前端处理单元用于向后端处理单元提供需要执行的指令,因此,前端处理单元的效率直接影响后端处理单元的执行速度。
[0003]相关技术中,将前端处理单元中的预测单元和取指单元进行解耦合,以提升前端处理单元的性能。然而,对于具有多级分支预测结构的预测单元的解耦合效果有待提升。

技术实现思路

[0004]本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的第一个目的在于提出一种指令转移预测系统,重新设计利用预测单元产生的预测结果对用于取指的指令地址进行定向的逻辑,将预测单元从原来的耦合结构中分离出来,以提升预测单元的解耦合效果。
[0005]本专利技术的第二个目的在于提出一种指令转移预测方法。
[0006]本专利技术的第三个目的在于提出一种指令转移预测装置。
[0007]本专利技术的第四个目的在于提出一种计算机设备。
[0008]本专利技术的第五个目的在于提出一种计算机可读存储介质。
[0009]为达到上述目的,本专利技术第一方面实施方式提出了一种指令转移预测方法,所述指令转移预测系统包括预测单元、预测目标地址队列和取指单元,所述预测目标地址队列的输入端连接所述预测单元的输出端,所述预测目标地址队列的输出端连接所述取指单元的输入端;其中:所述预测单元,用于对转移指令进行多级分支预测;所述多级分支预测包括第一级分支预测和第二级分支预测;通过所述第一级分支预测对所述转移指令进行分支预测,得到第一级预测结果并输出,通过所述第二级分支预测对所述转移指令进行分支预测,得到第二级预测结果并输出;其中,所述第一级预测结果和所述第二级预测结果分别包括所述转移指令对应的预测地址;所述预测目标地址队列,用于在接收到所述第一级预测结果的情况下记录对应的所述转移指令的指令地址以及所述第一级预测结果,并在接收到所述转移指令对应的所述第二级预测结果的情况下,利用所述第二级预测结果覆盖对应的所述第一级预测结果;所述取指单元,用于从所述预测目标地址队列获取目标指令地址对应的目标预测地址,并根据获取的所述目标预测地址进行相应的取指操作。
[0010]根据本专利技术的一个实施方式,所述预测目标地址队列,还用于在所述取指单元根据获取的所述目标预测地址进行取指操作并从第一指令缓存空间中获取到相应的目标指令块的情况下,将对应的所述目标指令地址以及所述目标预测地址所处的目标表项从所述预测目标地址队列中删除。
[0011]根据本专利技术的一个实施方式,所述预测目标地址队列,还用于对所述预测目标地址队列中的任一指令地址对应的预测地址进行过滤,得到满足预取条件的预测地址,作为预取地址;其中,满足所述预取条件的预测地址为与其对应的指令地址分别位于不同的缓存行的预测地址;所述预取地址用于从第二指令缓存空间中获取所述预取地址对应的预取指令块。
[0012]根据本专利技术的一个实施方式,所述预测目标地址队列,还用于在记录对应的所述转移指令的指令地址以及所述第一级预测结果至所述预测目标地址队列的对应表项时,返回该表项的表项索引至所述预测单元,以使所述预测单元根据对应的所述表项索引将对应的所述第二级预测结果写至对应表项中。
[0013]根据本专利技术的一个实施方式,所述预测目标地址队列具有出队指针;所述预测目标地址队列,还用于在所述取指单元根据所述出队指针当前指向的表项中包括的预测地址进行取指操作并从所述第一指令缓存空间中获取到相应的指令块的情况下,将所述出队指针当前指向的表项从所述预测目标地址队列中删除,并更新所述出队指针。
[0014]根据本专利技术的一个实施方式,所述预测目标地址队列具有预取指针;所述预测目标地址队列,还用于在接收到处理器前端发送的预取请求的情况下,返回所述预取指针当前指向的表项中包括的预测地址和该预测地址对应的预取有效性信号至所述处理器前端,并更新所述预取指针,以使所述处理器前端在接收到的所述预取有效性信号为预取有效信号的情况下,以所述预取有效信号对应的预测地址为预取地址,并从所述第二指令缓存空间中获取所述预取地址对应的预取指令块;其中,所述预取有效信号用于表明所述预取有效信号对应的预测地址为满足所述预取条件的预测地址。
[0015]根据本专利技术的一个实施方式,所述预测目标地址队列具有入队指针和读取指针;所述预测目标地址队列,还用于在接收到所述第一级预测结果的情况下,记录对应的所述转移指令的指令地址以及所述第一级预测结果至所述入队指针当前指向的表项并更新所述入队指针,以及在接收到所述取指单元的读取请求的情况下,返回所述读取指针当前指向的表项中包括的预测地址至所述取指单元并更新所述读取指针。
[0016]为达到上述目的,本专利技术第二方面实施方式提出了一种指令转移预测方法,应用于指令转移预测系统,所述指令转移预测系统包括预测单元、预测目标地址队列和取指单元,所述预测目标地址队列的输入端连接所述预测单元的输出端,所述预测目标地址队列的输出端连接所述取指单元的输入端;所述预测单元用于对转移指令进行多级分支预测;所述多级分支预测包括第一级分支预测和第二级分支预测;所述方法包括:所述预测单元通过所述第一级分支预测对所述转移指令进行分支预测,得到第一级预测结果并输出,通过所述第二级分支预测对所述转移指令进行分支预测,得到第二级预测结果并输出;其中,所述第一级预测结果和所述第二级预测结果分别包括所述转移指令对应的预测地址;所述预测目标地址队列在接收到所述第一级预测结果的情况下记录对应的所述转移指令的指令地址以及所述第一级预测结果,并在接收到所述转移指令对应的所述第二级预测结果的情况下,利用所述第二级预测结果覆盖对应的所述第一级预测结果;所述取指单元从所述预测目标地址队列获取目标指令地址对应的目标预测地址,并根据获取的所述目标预测地址进行相应的取指操作。
[0017]为达到上述目的,本专利技术第三方面实施方式提出了一种指令转移预测装置,应用
于指令转移预测系统,所述指令转移预测系统包括预测单元、预测目标地址队列和取指单元,所述预测目标地址队列的输入端连接所述预测单元的输出端,所述预测目标地址队列的输出端连接所述取指单元的输入端;所述预测单元用于对转移指令进行多级分支预测;所述多级分支预测包括第一级分支预测和第二级分支预测;所述装置包括:分支预测模块,用于所述预测单元通过所述第一级分支预测对所述转移指令进行分支预测,得到第一级预测结果并输出,通过所述第二级分支预测对所述转移指令进行分支预测,得到第二级预测结果并输出;其中,所述第一级预测结果和所述第二级预测结果分别包括所述转移指令对应的预测地址;记录模块,用于所述预测目标地址队列在接收到所述第一级预测结果的情况下记录对应的所述转移指令的指令地址以及所述第一级预测结果,并在接收到所述转移指令对应的所述第二级预测结果的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种指令转移预测系统,其特征在于,所述指令转移预测系统包括预测单元、预测目标地址队列和取指单元,所述预测目标地址队列的输入端连接所述预测单元的输出端,所述预测目标地址队列的输出端连接所述取指单元的输入端;其中:所述预测单元,用于对转移指令进行多级分支预测;所述多级分支预测包括第一级分支预测和第二级分支预测;通过所述第一级分支预测对所述转移指令进行分支预测,得到第一级预测结果并输出,通过所述第二级分支预测对所述转移指令进行分支预测,得到第二级预测结果并输出;其中,所述第一级预测结果和所述第二级预测结果分别包括所述转移指令对应的预测地址;所述预测目标地址队列,用于在接收到所述第一级预测结果的情况下记录对应的所述转移指令的指令地址以及所述第一级预测结果,并在接收到所述转移指令对应的所述第二级预测结果的情况下,利用所述第二级预测结果覆盖对应的所述第一级预测结果;所述取指单元,用于从所述预测目标地址队列获取目标指令地址对应的目标预测地址,并根据获取的所述目标预测地址进行相应的取指操作。2.根据权利要求1所述的系统,其特征在于,所述预测目标地址队列,还用于在所述取指单元根据获取的所述目标预测地址进行取指操作并从第一指令缓存空间中获取到相应的目标指令块的情况下,将对应的所述目标指令地址以及所述目标预测地址所处的目标表项从所述预测目标地址队列中删除。3.根据权利要求1所述的系统,其特征在于,所述预测目标地址队列,还用于对所述预测目标地址队列中的任一指令地址对应的预测地址进行过滤,得到满足预取条件的预测地址,作为预取地址;其中,满足所述预取条件的预测地址为与其对应的指令地址分别位于不同的缓存行的预测地址;所述预取地址用于从第二指令缓存空间中获取所述预取地址对应的预取指令块。4.根据权利要求1所述的系统,其特征在于,所述预测目标地址队列,还用于在记录对应的所述转移指令的指令地址以及所述第一级预测结果至所述预测目标地址队列的对应表项时,返回该表项的表项索引至所述预测单元,以使所述预测单元根据对应的所述表项索引将对应的所述第二级预测结果写至对应表项中。5.根据权利要求2所述的系统,其特征在于,所述预测目标地址队列具有出队指针;所述预测目标地址队列,还用于在所述取指单元根据所述出队指针当前指向的表项中包括的预测地址进行取指操作并从所述第一指令缓存空间中获取到相应的指令块的情况下,将所述出队指针当前指向的表项从所述预测目标地址队列中删除,并更新所述出队指针。6.根据权利要求3所述的系统...

【专利技术属性】
技术研发人员:刘亮张馨予张茜歌王春萌李伟立易江芳孙玉峰蔡昊
申请(专利权)人:北京大学国网江苏省电力有限公司信息通信分公司国家电网有限公司
类型:发明
国别省市:

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

1