本公开涉及计算机,尤其涉及芯片和处理器。
背景技术:
1、为了提升处理器的软件调试能力,可以设计处理器在执行指令时具有精确异常的功能,从而在发生执行异常时可以确保所有前序指令完成执行并可以将处理器的运行状态恢复为发生执行异常之前的状态。
2、但是,随着指令的数据量越来越大,对于处理器中用于缓存数据的寄存器的存储容量的需求也出现了成倍的增长,从而会为支持精确异常的处理器会带来大量的存储开销。
技术实现思路
1、本公开提供了一种指令处理装置、方法、处理器、电子设备、存储介质以及程序产品。
2、根据本公开的一方面,提供了一种指令处理方法,包括:向量寄存器堆;向量寄存器缓存,配置为存储多个向量指令和向量源操作数;向量执行单元,配置为从多个向量指令中获取待处理向量指令和与待处理向量指令相关的向量源操作数,并根据向量源操作数,执行待处理向量指令,得到当前向量执行结果,以及将当前向量执行结果写入向量寄存器缓存;以及向量写回单元,配置为在确定向量寄存器堆包括至少一个前序向量执行结果且确定当前向量执行结果存在异常的情况下,将至少一个前序向量执行结果写入向量寄存器缓存,其中,至少一个前序向量执行结果是通过执行多个向量指令中待处理向量指令的至少一个前序向量指令得到的。
3、根据本公开的另一方面,提供了一种处理器,包括:向量寄存器堆;向量寄存器缓存;取指单元,配置为从指令缓存中获取源指令;译码单元,配置为对源指令进行译码,得到待处理指令,并在确定待处理指令为待处理向量指令的情况下,将待处理向量指令写入向量寄存器缓存;以及向量执行单元,配置为从向量寄存器缓存中获取待处理向量指令和与待处理向量指令相关的向量源操作数,并根据向量源操作数,执行待处理向量指令,得到当前向量执行结果,以及将当前向量执行结果写入向量寄存器缓存;以及向量写回单元,配置为在确定向量寄存器堆包括至少一个前序向量执行结果且确定当前向量执行结果存在异常的情况下,将至少一个前序向量执行结果写入向量寄存器缓存,其中少一个前序向量执行结果是通过执行待处理向量指令的至少一个前序向量指令得到的。
4、根据本公开的另一方面,提供了一种指令处理方法,包括:从多个向量指令中获取待处理向量指令和与待处理向量指令相关的向量源操作数;根据向量源操作数,执行待处理向量指令,得到当前向量执行结果;将当前向量执行结果写入向量寄存器缓存;以及在确定向量寄存器堆包括至少一个前序向量执行结果且确定当前向量执行结果存在异常的情况下,将至少一个前序向量执行结果写入向量寄存器缓存,其中至少一个前序向量执行结果是通过执行多个向量指令中待处理向量指令的至少一个前序向量指令得到的。
5、根据本公开的另一个方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开实施例所示的方法。
6、根据本公开实施例的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开实施例所示的方法。
7、根据本公开实施例的另一方面,提供了一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现本公开实施例所示方法的步骤。
8、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
1.一种指令处理装置,包括:
2.根据权利要求1所述的装置,其中,所述向量写回单元还配置为:
3.根据权利要求1所述的装置,其中,所述向量写回单元还配置为:
4.根据权利要求1所述的装置,还包括:
5.根据权利要求4所述的装置,其中,所述重排序缓存还配置为:
6.根据权利要求4所述的装置,其中,
7.根据权利要求4所述的装置,还包括:
8.一种处理器,包括:
9.根据权利要求8所述的处理器,其中,所述向量写回单元还配置为:
10.根据权利要求8所述的处理器,其中,所述向量写回单元还配置为:
11.根据权利要求8所述的处理器,还包括:
12.根据权利要求11所述的处理器,其中,
13.一种指令处理方法,包括:
14.一种电子设备,包括:
15.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求13中任一项所述的方法。
16.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求13中任一项所述方法的步骤。