本发明专利技术涉及芯片技术领域,公开了一种寄存器访问方法、处理器和电子设备。该方法中,通过在处理器的各寄存器中设置清零端口和/或置1端口,在对多个寄存器中的数据进行清零或置1时,可以在预设数量的时钟周期内同时向待清零的寄存器的清零端口发送清零信号或向待置1的寄存器的置1端口发送置1信号,接收到清零信号或置1信号的寄存器可以在相同时钟周期同分别对各自存储的数据进行清零或置1,从而可以使得对多个寄存器进行清零或置1的指令对应的EX流水阶段只占用预设数量个时钟周期,且该预设数量不会随着待清零或置1的寄存器的数量的增加而变化,有利于提高处理器对多个寄存器进行清零或置1操作时的效率,提高处理器执行指令的速度。的速度。的速度。
【技术实现步骤摘要】
寄存器访问方法、处理器和电子设备
[0001]本专利技术涉及芯片
,特别涉及一种寄存器访问方法、处理器和电子设备。
技术介绍
[0002]寄存器是处理器中用于存储数据和指令的存储单元,处理器在执行指令时可以将指令对应的数据存储在寄存器中。在一些场景中,通常需要对多个寄存器进行相同的访问操作,例如将多个寄存器的数据全部设置为零(以下称为清零)或将多个寄存器的数据全部设置为1(以下称为置1)。
[0003]为了能批量对寄存器中的数据进行清零或置1,通常通过多数据加载(load multiple,LDM)指令来对多个寄存器中的数据进行清零或置1。但使用LDM指令来将多个寄存器中的数据清零或置1,在一个时钟周期或一个流水阶段只能将一个寄存器中的数据设置为0或1,从而对多个寄存器中的数据进行清零或置1操作所占的时钟周期或流水阶段的数量会随清零或置1的寄存器的数量的增加而增加,清零或置1的效率较低。
技术实现思路
[0004]有鉴于此,本申请实施例提供了一种寄存器访问方法、处理器和电子设备。通过将寄存器中设置用于清零或置1的端口来实现在同一时钟周期或流水阶段对多个寄存器中的数据进行清零或置1,有利于提高处理器对多个寄存器进行清零或置1操作时的效率,提高处理器指行指令的速度。
[0005]第一方面,本申请实施例提供了一种寄存器访问方法,应用于电子设备,该方法包括:电子设备的处理器接收到对处理器中的多个寄存器进行第一操作的指令,其中,第一操作为将多个寄存器存储的数据设置为0的操作或将多个寄存器中存储的数据设置为1的操作;响应于指令,处理器并行向各寄存器的用于响应第一操作的预设端口发送第一操作对应的操作信号;各寄存器检测到各自的预设端口的操作信号,在相同时钟周期对各自存储的数据执行第一操作。
[0006]在本申请实施例中,处理器可以在相同的时钟周期并行向寄存器的预设端口发送操作信号,并且接收到操作信号的寄存器可以在相同时钟周期内对各自存储的数据执行第一操作。如此,处理器对多个寄存器中的数据进行清零或置1操作所占的时钟周期或流水阶段的数量不会随清零或置1的寄存器的数量的增加而增加,有利于提高处理器对多个寄存器进行清零或置1操作时的效率,提高处理器指行指令的速度。
[0007]示例性的,预设端口可以是下文中的置1端口或清零端口。
[0008]示例性的,操作信号可以是下文中的置1信号或清零信号。
[0009]在上述第一方面的一种可能实现中,各寄存器检测到预设端口的操作信号,在相同时钟周期对各自存储的数据执行第一操作,包括:如果第一操作为将寄存器存储的数据设置为0的操作,各寄存器在相同时钟周期将各自存储的数据全部设置为0;如果第一操作为将寄存器存储的数据设置为1的操作,各寄存器在相同时钟周期将各自存储的数据全部
设置为1。
[0010]在上述第一方面的一种可能实现中,在第一操作为将多个寄存器存储的数据设置为0的操作时,预设端口为第一预设端口;在第一操作为将多个寄存器存储的数据设置为1的操作时,预设端口为第二预设端口。
[0011]在本申请实施例中,各寄存器中分别设置了用于响应清零操作的第一预设端口(例如下文中的清零端口)和响应置1操作的第二预设端口(例如下文中的清零端口)。
[0012]在上述第一方面的一种可能实现中,各寄存器检测到预设端口的操作信号,在相同时钟周期对各自存储的数据执行第一操作,包括:如果检测到第一预设端口的操作信号,各寄存器在相同时钟周期将各自存储的数据全部设置为0;如果检测到第二预设端口的操作信号,各寄存器在相同时钟周期将各自存储的数据全部设置为1。
[0013]在上述第一方面的一种可能实现中,处理器的流水线包括依次设置的第一流水阶段和第二流水阶段;并且,处理器并行向各寄存器的用于响应第一操作的预设端口发送第一操作对应的操作信号,包括:处理器利用预设指令的第一流水阶段,将预设操作表中各寄存器的操作标识设置为有效,并将预设操作表存储于第一流水阶段和第二流水阶段间的流水寄存器中;处理器利用预设指令的第二流水阶段从流水寄存器中获取预设操作表,并向预设操作表中操作标识为有效的寄存器的用于响应第一操作的预设端口,发送第一操作对应的操作信号。
[0014]在本申请实施例中,处理器中通过预设指令来响应第一操作对应的指令,例如下文中的CLRM指令和SRM指令。并且利用该指令的第一流水阶段(例如下文中的EX流水阶段)和第二流水阶段(例如下文中的WB流水阶段)来完成发送操作信号。如此,预设指令的EX流水阶段所占用的时钟周期不会随执行第一操作的寄存器的数量的增加而增加,有利于提高处理器对多个寄存器进行清零或置1操作时的效率,提高处理器指行指令的速度。
[0015]示例性地,操作标识可以是下文中的清零标识或置1标识。
[0016]示例性地,预设操作表可以是下文中的清零操作表或置1操作表。
[0017]在上述第一方面的一种可能实现中,各寄存器在预设指令的第二流水阶段,对各自存储的数据执行第一操作。
[0018]第二方面,本申请实施例提供了一种处理器,该处理器包括:计算单元和多个寄存器,其中各寄存器包括用于响应第一操作的预设端口;并且计算单元,用于在接收到对多个寄存器中的多个第一寄存器进行第一操作的指令时,并行向各第一寄存器的预设端口发送操作信号,其中,第一操作为将寄存器存储的数据设置为0的操作或将寄存器中存储的数据设置为1的操作;各第一寄存器用于在检测到各自的预设端口的操作信号时,在相同的时钟周期内对各自存储的数据执行第一操作。
[0019]在本申请实施例中,处理器可以在相同的时钟周期并行向寄存器的预设端口发送操作信号,并且接收到操作信号的寄存器可以在相同时钟周期内对各自存储的数据执行第一操作。如此,处理器对多个寄存器中的数据进行清零或置1操作所占的时钟周期或流水阶段的数量不会随清零或置1的寄存器的数量的增加而增加,有利于提高处理器对多个寄存器进行清零或置1操作时的效率,提高处理器指行指令的速度。
[0020]示例性的,预设端口可以是下文中的置1端口或清零端口。
[0021]示例性的,操作信号可以是下文中的置1信号或清零信号。
[0022]在上述第二方面的一种可能实现中,各第一寄存器通过以下方式在检测到各自的预设端口的操作信号时,在相同的时钟周期内对各自存储的数据执行第一操作:如果第一操作为将寄存器存储的数据设置为0的操作,各第一寄存器在相同时钟周期将各自存储的数据全部设置为0;如果第一操作为将寄存器存储的数据设置为1的操作,各第一寄存器在相同时钟周期将各自存储的数据全部设置为1。
[0023]在上述第二方面的一种可能实现中,上述预设端口包括第一预设端口和第二预设端口,并且,第一预设端口用于响应将寄存器存储的数据设置为0的第一操作对应的操作信号,第二预设端口用于响应将寄存器存储的数据设置为1的第一操作。
[0024]在本申请实施例中,各寄存器中分别设置了用于响应清零操作的第一预设端口(例如本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种寄存器访问方法,应用于电子设备,其特征在于,包括:所述电子设备的处理器接收到对所述处理器中的多个寄存器进行第一操作的指令,其中,所述第一操作为将所述多个寄存器存储的数据设置为0的操作或将所述多个寄存器中存储的数据设置为1的操作;响应于所述指令,所述处理器并行向各所述寄存器的用于响应所述第一操作的预设端口发送所述第一操作对应的操作信号;各所述寄存器检测到各自的所述预设端口的所述操作信号,在相同时钟周期对各自存储的数据执行所述第一操作。2.根据权利要求1所述的方法,其特征在于,各所述寄存器检测到所述预设端口的所述操作信号,在相同时钟周期对各自存储的数据执行所述第一操作,包括:如果所述第一操作为将寄存器存储的数据设置为0的操作,各所述寄存器在相同时钟周期将各自存储的数据全部设置为0;如果所述第一操作为将寄存器存储的数据设置为1的操作,各所述寄存器在相同时钟周期将各自存储的数据全部设置为1。3.根据权利要求1所述的方法,其特征在于,在所述第一操作为将所述多个寄存器存储的数据设置为0的操作时,所述预设端口为第一预设端口;在所述第一操作为将所述多个寄存器存储的数据设置为1的操作时,所述预设端口为第二预设端口。4.根据权利要求3所述的方法,其特征在于,各所述寄存器检测到所述预设端口的所述操作信号,在相同时钟周期对各自存储的数据执行所述第一操作,包括:如果检测到所述第一预设端口的所述操作信号,各所述寄存器在相同时钟周期将各自存储的数据全部设置为0;如果检测到所述第二预设端口的所述操作信号,各所述寄存器在相同时钟周期将各自存储的数据全部设置为1。5.根据权利要求1所述的方法,其特征在于,所述处理器的流水线包括依次设置的第一流水阶段和第二流水阶段;并且,所述处理器并行向各所述寄存器的用于响应所述第一操作的预设端口发送所述第一操作对应的操作信号,包括:所述处理器利用预设指令的所述第一流水阶段,将预设操作表中各所述寄存器的操作标识设置为有效,并将所述预设操作表存储于所述第一流水阶段和所述第二流水阶段间的流水寄存器中;所述处理器利用所述预设指令的所述第二流水阶段从所述流水寄存器中获取所述预设操作表,并向所述预设操作表中操作标识为有效的寄存器的所述用于响应所述第一操作的预设端口,发送所述第一操作对应的操作信号。6.根据权利要求5所述的方法,其特征在于,各所述寄存器在所述预设指令的所述第二流水阶段,对各自存储的数据执行所述第一操作。7.一种处理器,其特征在于,包括:计算单元和多个寄存器,其中各所述寄存器包括用于响应第一操作的预设端口;并且所述计...
【专利技术属性】
技术研发人员:王云贵,郝成龙,王俊,
申请(专利权)人:安谋科技中国有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。