寄存器的更新方法技术

技术编号:39739172 阅读:15 留言:0更新日期:2023-12-17 23:40
本申请实施例提供了一种寄存器的更新方法

【技术实现步骤摘要】
寄存器的更新方法、装置、电子设备及可读存储介质


[0001]本申请涉及寄存器
,具体而言,本申请涉及一种寄存器的更新方法

装置

电子设备及可读存储介质

技术介绍

[0002]寄存器
(Register)
是中央处理机

主存储器和其他数字设备中某些特定用途的存储单元,能够存储二进制数据

[0003]从物理角度或硬件角度来讲,寄存器的更新通常是整个寄存器被更新,即寄存器的更新是以寄存器中存储的全部二进制数据为单位进行更新,但在实际需求中有的寄存器需要部分更新,例如向量寄存器,然而现有方案依然是通过更新整个寄存器的方式间接实现部分更新整个向量寄存器,该过程需要读取向量寄存器中全部的二进制数据,且需要对全部的二进制数据进行更新

[0004]向量寄存器属于硬件设备,指令在读取硬件设备原有的全部二进制数据,重写入全部的二进制数据等操作较为耗时,且会占用较大的资源开销


技术实现思路

[0005]本申请实施例提供了一种寄存器的更新方法

装置

电子设备

计算机可读存储介质及计算机程序产品,用于解决
技术介绍
中的技术问题

[0006]根据本申请实施例的第一方面,提供了一种寄存器的更新方法,该方法包括:
[0007]接收第一预设指令,确定执行第一预设指令后获得的执行结果;第一预设指令包括指令类型

待读取的第一寄存器的寄存器标识和待写入执行结果的第二寄存器的寄存器标识;第一寄存器存储第一预设数量的断言元素;每个断言元素对应第二寄存器中的一个第一元素;
[0008]获取断言元素的元素大小,基于断言元素的元素大小读取所有断言元素,确定各断言元素的最低有效位,基于各断言元素的最低有效位生成初始掩码,初始掩码所占比特位长度和所有断言元素所占比特位长度相同;
[0009]根据指令类型以及初始掩码中的至少一种生成目标掩码;目标掩码用于指示第二寄存器中待根据执行结果更新的目标第一元素;
[0010]将执行结果中每个目标第一元素所需的子执行结果写入目标第一元素

[0011]根据本申请实施例的第二方面,提供了一种寄存器的更新装置,该装置包括:
[0012]指令接收模块,用于接收第一预设指令,确定执行第一预设指令后获得的执行结果;第一预设指令包括指令类型

待读取的第一寄存器的寄存器标识和待写入执行结果的第二寄存器的寄存器标识;第一寄存器存储第一预设数量的断言元素;每个断言元素对应第二寄存器中的一个第一元素;
[0013]初始掩码生成模块,用于获取断言元素的元素大小,基于断言元素的元素大小读取所有断言元素,确定各断言元素的最低有效位,基于各断言元素的最低有效位生成初始
掩码,初始掩码所占比特位长度和所有断言元素所占比特位长度相同;
[0014]目标掩码获得模块,用于根据指令类型以及初始掩码中的至少一种生成目标掩码;目标掩码用于指示第二寄存器中待根据执行结果更新的目标第一元素;
[0015]写入模块,用于将执行结果中每个目标第一元素所需的子执行结果写入目标第一元素

[0016]根据本申请实施例的第三方面,提供了一种电子设备,该电子设备包括存储器

处理器及存储在存储器上的计算机程序,处理器执行程序时实现如第一方面所提供的方法的步骤

[0017]根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤

[0018]根据本申请实施例的第五方面,提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中,当计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行实现如第一方面所提供的方法的步骤

[0019]本申请实施例提供的技术方案带来的有益效果是:
[0020]本申请实施例在接收第一预设指令后,获取断言元素的元素大小,基于断言元素的大小读取所有断言元素,确定各断言元素的最低有效位,基于各断言元素的最低有效位生成初始掩码,初始掩码所占比特位长度和所有断言元素所占比特位长度相同;根据指令类型以及初始掩码中的至少一种生成目标掩码;目标掩码用于指示第二寄存器中待根据执行结果更新的目标第一元素;将执行结果中每个目标第一元素所需的子执行结果写入目标第一元素

本申请实施例实现了第一预设指令无需更新第二寄存器中除了目标第一元素之外的其他元素,减少了执行指令所消耗的时间,提升指令执行效率,降低了产品的设计成本和生产成本

附图说明
[0021]为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍

[0022]图1为本申请实施例提供的一种寄存器的更新方法流程示意图;
[0023]图2为本申请实施例提供的2对寄存器中每对寄存器之间的关系示意图;
[0024]图3为本申请实施例提供的当第一预设指令为归零断言指令时,基于第一寄存器对第二寄存器中的第一元素进行更新的电路示意图;
[0025]图4为本申请实施例提供的当第一预设指令为合并断言指令时,基于第一寄存器对第二寄存器中的第一元素进行更新的电路示意图;
[0026]图5为本申请实施例提供生成目标掩码以及每个写端口的专用掩码的流程示意图;
[0027]图6为本申请实施例提供的将执行结果和目标掩码转发至第二预设指令的读取流水线的示意图;
[0028]图7为本申请实施例提供的一种寄存器的更新装置的结构示意图;
[0029]图8为本申请实施例提供的一种电子设备的结构示意图

具体实施方式
[0030]下面结合本申请中的附图描述本申请的实施例

应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制

[0031]本
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式

应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征

信息

数据

步骤

操作

元件和
/
或组件,但不排除实现为本
所支持其他特征

信息

数据

步骤

操作

元件
...

【技术保护点】

【技术特征摘要】
1.
一种寄存器的更新方法,其特征在于,包括:接收第一预设指令,确定执行所述第一预设指令后获得的执行结果;所述第一预设指令包括指令类型

待读取的第一寄存器的寄存器标识和待写入所述执行结果的第二寄存器的寄存器标识;所述第一寄存器存储第一预设数量的断言元素;每个断言元素对应所述第二寄存器中的一个第一元素;获取所述断言元素的元素大小,基于所述断言元素的元素大小读取所有断言元素,确定各断言元素的最低有效位,基于各断言元素的最低有效位生成初始掩码,所述初始掩码所占比特位长度和所述所有断言元素所占比特位长度相同;根据所述指令类型以及所述初始掩码中的至少一种生成目标掩码;所述目标掩码用于指示所述第二寄存器中待根据所述执行结果更新的目标第一元素;将所述执行结果中每个目标第一元素所需的子执行结果写入所述目标第一元素
。2.
根据权利要求1所述的方法,其特征在于,所述基于各断言元素的最低有效位生成初始掩码,包括:将各断言元素的各个比特位的值更新为所述断言元素的最低有效位的值,得到所述初始掩码
。3.
根据权利要求1或2所述的方法,其特征在于,所述指令类型包括归零断言指令;所述根据所述指令类型以及所述初始掩码中的至少一种生成目标掩码,包括:确定所述第一预设指令的指令类型为所述归零断言指令,将所述初始掩码中所有比特位的值更新为1,获得所述目标掩码
。4.
根据权利要求1或2所述的方法,其特征在于,所述指令类型还包括合并断言指令和非断言指令;所述根据所述指令类型以及所述初始掩码中的至少一种生成目标掩码,包括:确定所述第一预设指令的指令类型为所述合并断言指令或所述非断言指令,将所述初始掩码作为所述目标掩码
。5.
根据权利要求1或2所述的方法,其特征在于,所述指令类型还包括部分更新指令;所述根据所述指令类型以及所述初始掩码中的至少一种生成目标掩码,包括:确定所述第一预设指令的指令类型为部分更新指令,基于预先建立的部分更新指令和预设掩码之间的关联关系,获取与所述部分更新指令存在关联关系的预设掩码;将所述预设掩码作为目标掩码
。6.
根据权利要求1所述的方法,其特征在于,所述第二寄存器包括至少一个写端口;每个写端口对应至少一个第一元素;所述将所述执行结果中每个目标第一元素所需的子执行结果写入所述目标第一元素,之前还包括:对于每个断言元素,在所述目标掩码中确定所述断言元素对应的比特位组,将所述比特位组的值作为所述断言元素对应的第一元素的元素掩码;所述将所述执行结果中每个目标第一元素所需的子执行结果写入所述目标第一元素,包括:对于每个写端口,获取所述写端口对应的每个第一元素的初始使能位;对于所述写端口对应的每个第一元素,根据所述第一元素的元素对所述第一元素的初始使能位进行掩码处理,得到第一掩码结果;
对于所述写端口对应的每个第一元素,若确定第一元素的第一掩码结果符合预设条件,则确定该第一元素为目标第一元素,通...

【专利技术属性】
技术研发人员:包恒
申请(专利权)人:安谋科技中国有限公司
类型:发明
国别省市:

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

1