一种数据处理方法、电子设备及存储介质技术

技术编号:35568374 阅读:13 留言:0更新日期:2022-11-12 15:52
本申请涉及计算机技术领域,公开了一种数据处理方法、电子设备及存储介质,该方法包括:获取待处理数据;对待处理数据进行位抽取;其中,对待处理数据进行位抽取,包括:根据待处理数据的位数对自定义指令中的立即数字段进行第一运算得到第一立即数和第二立即数,第一立即数的位数和第二立即数的位数对应于待处理数据的位数;根据第一立即数和第二立即数对待处理数据进行位抽取获得第一结果;根据自定义指令中的目标寄存器的地址将第一结果存入目标寄存器。本申请还公开了一种电子设备和存储介质。该数据处理方法采用1条自定义指令实现位抽取操作,减少了位抽取操作的指令数,减少了位抽取操作的计算时间,提高了处理器计算速度。度。度。

【技术实现步骤摘要】
一种数据处理方法、电子设备及存储介质


[0001]本申请涉及计算机领域,特别是涉及一种数据处理方法、电子设备及存储介质。

技术介绍

[0002]计算机中采用位运算直接对内存中的二进制数据进行操作,处理数据的速度非常快。位抽取Bit Field Extract(BFX),是位运算的一种,是一种在计算机操作中对二进制数据中的某一字段进行抽取后放置在数据低端,并将数据高段赋0,获得新的二进制数据的操作,经常被大量应用于通信领域中。
[0003]比如在神经网络算法中,图像等对象被输入卷积(或CNN)层进行特征提取,获得的被处理图像的特征向量会被传递至池化层、全连接层等,特征向量的数量较多,相应的处理器需要的计算时间也会较长。用户通常会根据自身需求,采用位抽取操作对特征向量进行缩放,对特征向量中的比特进行选择,去除特征向量中一些不需要的比特,从而可以在满足用户需求的同时,减少处理器的计算时间。
[0004]如果能减少位抽取操作的计算时间,可以进一步提升处理器的性能,提高处理器的计算效率。

技术实现思路

[0005]有鉴于此,本申请实施例提供了一种数据处理方法、电子设备及存储介质,可以根据用户的需求,采用1条自定义指令对待处理数据进行位抽取操作,抽取待处理数据中需要被保留的字段,使得用于位抽取操作的指令数量仅为1条,提高处理器的计算效率同时满足用户的需求。具体的,可以通过对自定义指令中的操作数字段进行运算获得位抽取操作中的包括位抽取操作的起始位位置和偏移量两个立即数,再将两个立即数相加,获得位抽取操作的终止位位置;可以通过自定义指令中的源寄存器和目标寄存器的地址,获取操作数即待处理数据,最后将执行自定义指令获得的结果放入目标寄存器。
[0006]第一方面,本申请提供一种数据处理方法,应用于电子设备,包括:
[0007]获取待处理数据;
[0008]对处理数据进行位抽取;
[0009]其中,对待处理数据进行位抽取,包括:
[0010]根据待处理数据的位数对自定义指令中的立即数字段进行第一运算得到第一立即数和第二立即数,第一立即数的位数和第二立即数的位数对应于待处理数据的位数;
[0011]根据第一立即数和第二立即数对待处理数据进行位抽取获得第一结果;
[0012]根据自定义指令中的目标寄存器的地址将第一结果存入目标寄存器。
[0013]在上述第一方面一种可能的实现方式,根据待处理数据的位数对自定义指令中的立即数字段进行第一运算得到第一立即数和第二立即数,包括:
[0014]如果待处理数据的位数为m,m为正整数,则将立即数字段进行第一运算得到第一立即数和第二立即数;
[0015]其中,如果第一立即数的位数为n1,第二立即数的位数为n2,则2的n1次方大于等于m,且2的n2次方大于等于m,n1和n2为正整数。
[0016]在上述第一方面一种可能的实现方式中,第一运算包括将立即数字段进行拆分和/或重组。
[0017]在上述第一方面一种可能的实现方式中,根据第一立即数和第二立即数对待处理数据进行位抽取获得第一结果,包括:
[0018]将第一立即数和第二立即数相加,获得第三数据;
[0019]抽取待处理数据中从第一立即数位到第三数据位的值作为抽取数据;
[0020]将抽取数据从第0位开始,依次排列;
[0021]将抽取数据之后的其余位的值赋0获得第一结果,第一结果的位数和待处理数据的位数相等。
[0022]上述第一立即数,即位抽取操作的起始位位置;第二立即数,即位抽取操作的偏移值;第三数据,即位抽取操作的终止位位置。
[0023]在上述第一方面一种可能的实现方式中,待处理数据包括向量。
[0024]在上述第一方面一种可能的实现方式中,自定义指令中的源寄存器的地址与目标寄存器的地址相等。
[0025]在上述第一方面一种可能的实现方式中,自定义指令中的源寄存器的地址与目标寄存器的地址不相等。
[0026]第二方面,本申请提供一种数据处理装置,包括:
[0027]获取单元,用于获取待处理数据;
[0028]位抽取单元,用于对待处理数据进行位抽取;
[0029]其中,对待处理数据进行位抽取,包括:
[0030]根据待处理数据的位数对自定义指令中的立即数字段进行第一运算得到第一立即数和第二立即数,第一立即数的位数和第二立即数的位数对应于待处理数据的位数;
[0031]根据第一立即数和第二立即数对待处理数据进行位抽取获得第一结果;
[0032]根据自定义指令中的目标寄存器的地址将第一结果存入目标寄存器。
[0033]第三方面,本申请提供一种可读存储介质,可读存储介质上存储有指令,该指令在终端设备上执行时上述第一方面的数据处理方法。
[0034]第四方面,本申请提供一种电子设备,包括存储器,用于存储由电子设备的一个或多个处理器执行的指令,以及处理器,是电子设备的处理器之一,用于执行上述第一方面的数据处理方法。
[0035]上述的第一立即数,即位抽取操作的起始位位置;第二立即数,即位抽取操作的偏移值;第三数据,即位抽取操作的终止位位置。
[0036]本申请通过对1条自定义指令中的立即数字段进行运算后获得位抽取操作所需的两个立即数,包括表示位操作的最低有效位的立即数和表示偏移量的立即数,再根据两个立即数获取位抽取操作的起始位位置和终止位位置,对待处理数据进行位抽取操作,从而达到仅通过一条指令执行位抽取操作的目的,减少了位抽取操作的计算时间,提高了处理器的性能。
附图说明
[0037]图1根据本申请的一些实施例,示出了一种数据处理方法的应用场景图;
[0038]图2根据本申请的一些实施例,示出了一种位抽取操作的方法示意图;
[0039]图3根据本申请的一些实施例,示出了一种自定义指令的格式示意图;
[0040]图4根据本申请的一些实施例,示出了一种通过图3所示的自定义指令中的操作数获得立即数的方法示意图;
[0041]图5根据本申请的一些实施例,示出了一种处理器的硬件模块示意图;
[0042]图6根据本申请的一些实施例,示出了一种通过数据处理方法的流程示意图;
[0043]图7根据本申请的一些实施例,示出了一种电子设备的硬件模块示意图。
具体实施方式
[0044]本申请的说明性实施例包括但不限于实施例中的数据处理方法、电子设备及介质。
[0045]为使本申请的目的、技术方案和优点更加清楚,下面通过结合附图和实施方案,对本申请实施例的技术方案做进一步地详细描述。显然,所描述的实施例仅是本专利技术部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0046]为了更加清楚的说明本申请实施例的方案,下面对本申请实施例中涉及到的一些术语进行本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,应用于电子设备,其特征在于,包括:获取待处理数据;对所述待处理数据进行位抽取;其中,对所述待处理数据进行位抽取,包括:根据所述待处理数据的位数对自定义指令中的立即数字段进行第一运算得到第一立即数和第二立即数,所述第一立即数的位数和所述第二立即数的位数对应于所述待处理数据的位数;根据所述第一立即数和所述第二立即数对所述待处理数据进行位抽取获得第一结果;根据所述自定义指令中的目标寄存器的地址将所述第一结果存入所述目标寄存器。2.根据权利要求1所述的方法,其特征在于,所述根据所述待处理数据的位数对所述自定义指令中的立即数字段进行第一运算得到第一立即数和第二立即数,包括:如果所述待处理数据的位数为m,m为正整数,则将所述立即数字段进行第一运算得到第一立即数和第二立即数;其中,如果所述第一立即数的位数为n1,所述第二立即数的位数为n2,则2的n1次方大于等于m,且2的n2次方大于等于m,n1和n2为正整数。3.根据权利要求1或2所述的方法,其特征在于,所述第一运算包括将所述立即数字段进行拆分和/或重组。4.根据权利要求1所述的方法,其特征在于,所述根据所述第一立即数和所述第二立即数对所述待处理数据进行位抽取获得第一结果,包括:将所述第一立即数和所述第二立即数相加,获得第三数据;抽取所述待处理数据中从第一立即数位到第三数据位的值作为抽取数据;将所述抽取数据从第0位...

【专利技术属性】
技术研发人员:蔡亮陈江杉刘伟坤
申请(专利权)人:安谋科技中国有限公司
类型:发明
国别省市:

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

1