指令处理方法、装置、程序产品、计算机设备和介质与流程

文档序号:31660865发布日期:2022-09-27 23:03阅读:来源:国知局

技术特征:
1.一种指令处理方法,其特征在于,所述方法包括:对硬件循环指令的循环体进行循环执行;所述循环体中包含分支指令;当执行至所述分支指令时,获取所述分支指令的预测信息,所述预测信息用于指示预测的所述分支指令的下一指令;执行所述分支指令,并按照所述预测信息的指示执行预测的下一指令;获取所述分支指令的执行结果,所述分支指令的执行结果用于指示确定的所述分支指令的下一指令;若所述预测的下一指令与确定的下一指令不匹配,则撤销对所述预测的下一指令的执行,并对所述循环体的当前执行参数进行校正处理;所述当前执行参数用于指示当前对所述循环体进行循环执行的进度。2.根据权利要求1所述的方法,其特征在于,所述执行所述分支指令,并按照所述预测信息的指示执行预测的下一指令,包括:在流水线结构的多个阶段依次执行所述分支指令;在执行所述分支指令的过程中和在对所述分支指令执行完成后,在所述多个阶段中执行过所述分支指令的阶段执行所述预测的下一指令。3.根据权利要求1所述的方法,其特征在于,所述预测信息用于指示预测的需要跳转到所述分支指令的关联指令,或预测的不需要跳转到所述分支指令的关联指令;若所述预测信息用于指示预测的需要跳转到所述分支指令的关联指令,则所述预测信息用于获取预测的所述分支指令的关联指令;所述分支指令的执行结果用于指示确定的需要跳转到所述分支指令的关联指令,或确定的不需要跳转到所述分支指令的关联指令;若所述分支指令的执行结果用于指示确定的需要跳转到所述分支指令的关联指令,则所述分支指令的执行结果用于获取确定的所述分支指令的关联指令。4.根据权利要求3所述的方法,其特征在于,若所述预测信息包含预测的关联指令,则所述预测的下一指令是指预测的关联指令;若所述预测信息不包含所述预测的关联指令,则所述预测的下一指令是指所述循环体中与所述分支指令相邻的下一指令。5.根据权利要求3所述的方法,其特征在于,若所述分支指令的执行结果包含确定的关联指令,则所述确定的下一指令是指确定的关联指令;若所述分支指令的执行结果不包含所述确定的关联指令,则所述确定的下一指令是指所述循环体中与所述分支指令相邻的下一指令。6.根据权利要求3所述的方法,其特征在于,所述方法还包括:若所述预测的下一指令与所述确定的下一指令不匹配,则在撤销对所述预测的下一指令的执行后,执行所述确定的下一指令。7.根据权利要求1所述的方法,其特征在于,所述分支指令是在对所述循环体进行第n次循环执行的过程中获取的,n为正整数,n小于或等于所述循环体总的循环次数;所述当前执行参数包含所述循环体在当前的剩余循环次数;所述方法还包括:若所述预测的下一指令是所述循环体中的结束指令,则在执行所述结束指令时,获取
所述循环体在进行所述第n次循环执行前的剩余循环次数;将所述循环体在进行所述第n次循环执行前的剩余循环次数减去单位次数,得到所述循环体在当前的剩余循环次数;其中,若所述预测的下一指令不是所述结束指令,则在执行所述预测的下一指令时,所述循环体在当前的剩余循环次数等于所述循环体在进行所述第n次循环执行前的剩余循环次数。8.根据权利要求7所述的方法,其特征在于,所述对所述循环体的当前执行参数进行校正处理,包括:获取所述循环体在进行所述第n次循环执行前的剩余循环次数;若所述循环体在进行所述第n次循环执行前的剩余循环次数与所述循环体在当前的剩余循环次数不同,则将所述循环体在当前的剩余循环次数加上所述单位次数,得到对所述循环体在当前的剩余循环次数进行校正后的剩余循环次数。9.根据权利要求1所述的方法,其特征在于,所述分支指令是在对所述循环体进行第n次循环执行的过程中获取的,n为正整数,n小于或等于所述循环体总的循环次数;所述当前执行参数包含当前的提交标识,所述当前的提交标识用于指示当前已对目标执行结果进行提交或未对所述目标执行结果进行提交,所述目标执行结果是指所述循环体在进行所述第n次循环执行时对所述循环体中结束指令的执行结果;所述当前的提交标识为初始标识或未提交标识;所述方法还包括:若所述预测的下一指令是所述循环体中的结束指令,则在执行所述结束指令时,将所述循环体在进行所述第n次循环执行前的提交标识由所述初始标识更新为所述未提交标识,得到所述当前的提交标识;若对所述结束指令执行完成,则将所述当前的提交标识由所述未提交标识更新为所述初始标识;其中,若所述预测的下一指令不是所述结束指令,则在执行所述预测的下一指令时,所述当前的提交标识为所述初始标识。10.根据权利要求9所述的方法,其特征在于,所述对所述循环体的当前执行参数进行校正处理,包括:若所述当前的提交标识为所述未提交标识,则将所述当前的提交标识由所述未提交标识重新校正为所述初始标识。11.根据权利要求1所述的方法,其特征在于,所述方法具有相互嵌套的k个所述硬件循环指令,k个硬件循环指令中的第k-1个硬件循环指令嵌套在第k个硬件循环指令中,k和k均为正整数,k小于或等于k且k大于1;相互嵌套的所述k个硬件循环指令根据嵌套的顺序被依次压入栈中,所述第k-1个硬件循环指令和所述第k个硬件循环指令在所述栈中的位置相邻,所述第k个硬件循环指令先于所述第k-1个硬件循环指令被压入所述栈中;所述k个硬件循环指令根据被压入所述栈中的反顺序被依次执行。12.根据权利要求11所述的方法,其特征在于,所述方法还包括:当依次对所述k个硬件循环指令执行完成时,得到第k个硬件循环指令的执行结果,并
输出所述第k个硬件循环指令的执行结果。13.一种指令处理装置,其特征在于,所述装置包括:执行模块,用于对硬件循环指令的循环体进行循环执行;所述循环体中包含分支指令;获取模块,用于当执行至所述分支指令时,获取所述分支指令的预测信息,所述预测信息用于指示预测的所述分支指令的下一指令;所述执行模块,用于执行所述分支指令,并按照所述预测信息的指示执行预测的下一指令;所述获取模块,用于获取所述分支指令的执行结果,所述执行结果用于指示确定的所述分支指令的下一指令;校正模块,用于若所述预测的下一指令与确定的下一指令不匹配,则撤销对所述预测的下一指令的执行,并对所述循环体的当前执行参数进行校正处理;所述当前执行参数用于指示当前对所述循环体进行循环执行的进度。14.一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现权利要求1-12任一项所述方法的步骤。15.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1-12中任一项所述方法的步骤。16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适用于由处理器加载并执行权利要求1-12任一项所述的方法。

技术总结
本申请公开了一种指令处理方法、装置、程序产品、计算机设备和介质,该方法包括:对硬件循环指令的循环体进行循环执行;循环体中包含分支指令;当执行至分支指令时,获取分支指令的预测信息,预测信息用于指示预测的分支指令的下一指令;执行分支指令,并按照预测信息的指示执行预测的下一指令;获取分支指令的执行结果,执行结果用于指示确定的分支指令的下一指令;若预测的下一指令与确定的下一指令不匹配,则撤销对预测的下一指令的执行,并对循环体的当前执行参数进行校正处理;当前执行参数用于指示当前对循环体进行循环执行的进度。采用本申请,可提高对硬件循环指令的编译灵活性。性。性。


技术研发人员:任子木
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2022.08.31
技术公布日:2022/9/26
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1