CN108897522A - 数据处理方法、数据处理装置以及电子设备 - Google Patents
数据处理方法、数据处理装置以及电子设备 Download PDFInfo
- Publication number
- CN108897522A CN108897522A CN201810614678.7A CN201810614678A CN108897522A CN 108897522 A CN108897522 A CN 108897522A CN 201810614678 A CN201810614678 A CN 201810614678A CN 108897522 A CN108897522 A CN 108897522A
- Authority
- CN
- China
- Prior art keywords
- source operand
- operand
- data processing
- intermediate result
- bit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 32
- 238000003672 processing method Methods 0.000 title claims abstract description 32
- 238000007667 floating Methods 0.000 claims abstract description 42
- 238000013528 artificial neural network Methods 0.000 claims description 16
- 238000000034 method Methods 0.000 claims description 10
- 230000001537 neural effect Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005065 mining Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/483—Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Health & Medical Sciences (AREA)
- Computational Mathematics (AREA)
- Biomedical Technology (AREA)
- Nonlinear Science (AREA)
- Neurology (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Advance Control (AREA)
Abstract
本申请提出一种数据处理方法、数据处理装置以及电子设备;其中,数据处理方法包含:获取第一源操作数和第二源操作数;基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数;以及输出目标操作数;其中,第一源操作数和第二源操作数为用浮点数格式表示的整数。
Description
技术领域
本申请涉及数据处理领域,具体而言,涉及一种数据处理方法、数据处理装置以及电子设备。
背景技术
在通用计算机中,往往同时具有整点数据通路和浮点数据通路;而在低端设备中,往往只有整点数据通路,在这种设备中需要用整点数的操作来实现浮点计算,虽然效率低但功能完备。用整点数的操作来实现浮点计算的方法已经很完备,有众多开源和闭源的函数库实现了这一功能。
在一些特殊的计算设备中,由于其目标市场的特点,仅包含了浮点数据通路,但仍然需要在某些特殊情形下,进行整点操作,以实现功能的完备。目前业界尚无方法用浮点数的操作来实现整点的位域操作。
发明内容
本申请实施例提出一种数据处理方法、数据处理装置以及电子设备,用以解决现有技术中在特殊计算设备中无法用浮点数的操作来实现整点的位域操作的问题。
根据本申请的一方面,提出一种数据处理方法、数据处理装置以及电子设备。其中,数据处理方法用于将整数数据转换为可供浮点处理器运算的浮点数,包含:获取第一源操作数和第二源操作数;基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数;以及输出目标操作数;其中,第一源操作数和第二源操作数为用浮点数格式表示的整数。
在一些实施例中,基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数,包括:从最高位开始,依次将第一源操作数和第二源操作数的对应位进行位域逻辑操作,直至最低位;输出第一源操作数和第二源操作数的对应位执行完位域逻辑操作的中间结果;以及根据中间结果得到目标操作数。
在一些实施例中,输出第一源操作数和第二源操作数的对应位执行完位域逻辑操作的中间结果,包含:按照最高位至最低位的顺序轮流输出第一源操作数和第二源操作数的对应位的每一位的执行完位域逻辑操作的结果;其中中间结果为第一源操作数和第二源操作数的对应位的各个位的执行完位域逻辑操作的结果。
在一些实施例中,中间结果的位数与第一源操作数或者第二源操作数的位数相同。
在一些实施例中,根据中间结果得到目标操作数,包含:遍历中间结果的各个位;以及根据遍历结果得到目标操作数。
根据本申请的另一方面,提出一种数据处理方法,应用于嵌入式神经网络处理器,包括:获取第一源操作数和第二源操作数;基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数;以及输出目标操作数;其中,第一源操作数和第二源操作数为用浮点数格式表示的整数。
在一些实施例中,基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数,包括:从最高位开始,依次将第一源操作数和第二源操作数的对应位进行位域逻辑操作,直至最低位;输出第一源操作数和第二源操作数的对应位的执行完位域逻辑操作的中间结果;以及根据中间结果得到目标操作数。
在一些实施例中,输出第一源操作数和第二源操作数的对应位的执行完位域逻辑操作的中间结果,包含:按照最高位至最低位的顺序轮流输出第一源操作数和第二源操作数的对应位的每一位的执行完位域逻辑操作的结果;其中中间结果为第一源操作数和第二源操作数的对应位的各个位的执行完位域逻辑操作的结果。
在一些实施例中,中间结果的位数与第一源操作数或者第二源操作数的位数相同。
在一些实施例中,根据中间结果得到目标操作数,包含:遍历中间结果的各个位;以及根据遍历结果得到目标操作数。
根据本申请的另一方面,提出一种数据处理装置,其中,数据处理装置包括:数据获取单元,配置来获取第一源操作数和第二源操作数;数据处理单元,配置来基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数;以及数据输出单元,配置来输出目标操作数;其中,第一源操作数和第二源操作数为用浮点数格式表示的整数。
在一些实施例中,基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数,包括:从最高位开始,数据处理单元依次将第一源操作数和第二源操作数的对应位进行位域逻辑操作,直至最低位;输出第一源操作数和第二源操作数的对应位执行完位域逻辑操作的中间结果;以及根据中间结果得到目标操作数。
在一些实施例中,输出第一源操作数和第二源操作数的对应位执行完位域逻辑操作的中间结果,包含:数据处理单元按照最高位至最低位的顺序轮流输出第一源操作数和第二源操作数的对应位的每一位的执行完位域逻辑操作的结果;其中中间结果为第一源操作数和第二源操作数的对应位的各个位的执行完位域逻辑操作的结果。
在一些实施例中,中间结果的位数与第一源操作数或者第二源操作数的位数相同。
在一些实施例中,根据中间结果得到目标操作数,包含:数据处理单元遍历中间结果的各个位;以及数据输出单元根据遍历结果得到目标操作数。
根据本申请的另一方面,提出一种电子设备。其中,电子设备包括:至少一个嵌入式神经网络处理器;以及与至少一个嵌入式神经网络处理器连接的存储器;其中,存储器存储有可被至少一个嵌入式神经网络处理器执行的指令,指令被至少一个嵌入式神经网络处理器执行时,使至少一个嵌入式神经网络处理器执行如上所述的数据处理方法。
在一些实施例中,上述的电子设备为矿机。
本申请的实施例所揭示的数据处理方法用于将整数数据转换为可供浮点处理器运算的浮点数,在主要面向浮点数操作的设备中,可以在不额外增加面积、不修改指令集的情况下实现对整数数据的位域操作。同时,可以应用于嵌入式神经网络处理器,在包含嵌入式神经网络处理器的设备中,可以在不额外增加面积、不修改指令集的情况下实现对整数数据的位域操作。
参照后文的说明和附图,详细申请了本申请的特定实施方式,指明了本申请的原理可以被采用的方式。应该理解,本申请的实施方式在范围上并不因而受到限制。在所附权利要求的精神和条款的范围内,本申请的实施方式包括许多改变、修改和等同。
针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。
应该强调,术语“包括/包含”在本文使用时指特征、整件、步骤或组件的存在,但并不排除一个或更多个其它特征、整件、步骤或组件的存在或附加。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
一个或多个实施例通过与之对应的附图进行实例性说明,这些实例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,附图不构成比例限制,并且其中:
图1是根据本申请的实施例提供的数据处理方法的整体流程图;
图2是根据本申请的实施例提供的数据处理装置的整体结构示意图;以及
图3是根据本申请的实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本领域技术技术人员知道,本申请的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本申请可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
下面参考本申请的若干代表性实施方式,详细阐释本申请的原理和精神。
根据本申请的一方面,提出一种数据处理方法。其中数据处理方法包含:获取第一源操作数和第二源操作数;基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数;以及输出目标操作数;其中,第一源操作数和第二源操作数为用浮点数格式表示的整数。
基于浮点数据通路对所述第一源操作数和所述第二源操作数进行位域逻辑操作从而得到目标操作数,包括:从最高位开始,依次将第一源操作数和第二源操作数的对应位进行位域逻辑操作,直至最低位;输出第一源操作数和第二源操作数的对应位的执行完位域逻辑操作的中间结果;以及根据中间结果得到目标操作数。
输出第一源操作数和第二源操作数的对应位的执行完位域逻辑操作的中间结果,包含:按照最高位至最低位的顺序轮流输出第一源操作数和第二源操作数的对应位的每一位的执行完位域逻辑操作的结果;其中中间结果为第一源操作数和第二源操作数的对应位的各个位的执行完位域逻辑操作的结果。
中间结果的位数与第一源操作数或者第二源操作数的位数相同。
根据中间结果得到目标操作数,包含:遍历中间结果的各个位;以及根据遍历结果得到目标操作数。
本申请的实施例中的数据处理方法用于将整数数据转换为可供浮点处理器运算的浮点数,通过上述实施例中的数据处理方法,在主要面向浮点数操作的设备中,可以在不额外增加面积、不修改指令集的情况下实现对整数数据的位域操作。同时,上述实施例中的数据处理方法也可以应用于嵌入式神经网络处理器,在包含嵌入式神经网络处理器的设备中,可以在不额外增加面积、不修改指令集的情况下实现对整数数据的位域操作。下面将结合图1详细说明本申请实施例的数据处理方法。图1是根据本申请的实施例提供的数据处理方法的整体流程图,如图1所示,首先执行步骤S11,即获取第一源操作数和第二源操作数,其中,第一源操作数和第二源操作数为用浮点数格式表示的整数。例如,在本申请的一种实施方式中,第一源操作数a=11000111-00111000,第二源操作数取为b=01100111-00111000,本实施例中获取的第一源操作数a和第二源操作数b的取值只是示意性的,可以根据不同的设计要求获取不同的第一源操作数和第二源操作数。
当执行完步骤S11后,执行步骤S12,即基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数。
其中,基于浮点数据通路对所述第一源操作数和所述第二源操作数进行位域逻辑操作从而得到目标操作数,包括:从最高位开始,依次将第一源操作数和第二源操作数的对应位进行位域逻辑操作,直至最低位;输出第一源操作数和第二源操作数的对应位的执行完位域逻辑操作的中间结果。其中,输出第一源操作数和第二源操作数的对应位执行完位域逻辑操作的中间结果,包含:按照最高位至最低位的顺序轮流输出第一源操作数和第二源操作数的对应位的每一位的执行完位域逻辑操作的结果;其中中间结果为第一源操作数和第二源操作数的对应位的各个位的执行完位域逻辑操作的结果。
在本申请的一种实施方式中,第一源操作数a=11000111-00111000,第二源操作数取为b=01100111-00111000,从最高位开始,依次将a和b的对应位进行位域逻辑操作,直至最低位。在本实施方式中,a和b之间对应的最高位分别为1和0,首先将1和0进行位域逻辑操作,例如进行异或操作,异或操作运算法则为如果进行异或操作的两个值不相同,则异或结果为1,如果两个值相同,则异或结果为0;将a和b之间的对应的最高位进行异或操作之后,输出a和b之间的对应的最高位进行完异或操作之后的结果1;之后对a和b之间对应的次高位1和1进行异或操作,输出a和b之间对应的次高位进行完异或操作之后的结果0,以此类推直至最低位。当对a和b之间对应的各个位,即最高位至最低位都执行完异或操作之后,输出的中间结果为a和b之间的对应位的各个位的执行完异或逻辑操作的结果,即输出的中间结果为10100000-00000000。本实施方式中的异或操作只是示意性的,可以根据实际需求设计其他不同的逻辑运算操作。
上述输出的中间结果的位数与第一源操作数a和第二源操作数b的位数相同,即输出的中间结果与第一源操作数a和第二源操作数b都是十六位。
根据中间结果得到目标操作数,其中根据中间结果得到目标操作数,包含:遍历中间结果的各个位;以及根据遍历结果得到目标操作数。遍历中间结果的各个位,如果遍历到中间结果的某一位为1时,则得到的目标操作数为1。例如,在本申请的一种实施方式中,中间结果为10100000-00000000,从中间结果的最高位开始遍历,其最高位为1,则最终得到的目标操作数为1。如果遍历完中间结果的所有位都为0时,则得到的目标操作数为0。遍历完中间结果的所有位都为0表明第一源操作数a和第二源操作数b对应的各个位执行完异或操作之后的结果都为0,因此表明第一操作数a和第二操作数b各个位都相同,进而第一操作数a和第二操作数b相同,故最终得到的目标操作数为0。
最后执行S13,即输出目标操作数,当第一源操作数与第二源操作数不相同时输出的目标操作数为1;当第一源操作数与第二源操作数相同时输出的目标操作数为0。
本领域的技术人员应当注意到,本申请的实施方式中所执行的位域逻辑操作只是示意性的,对第一源操作数和第二源操作数执行的位域逻辑操作包括但不限于与、或、非、异或、同或、与非、或非、与或、与或非等操作。
根据本申请的另一方面,本申请的实施例还提供了一种数据处理装置,该装置的实施可以参见上述方法实施,重复之处不在赘述。以下所使用的术语“模块”和“单元”,可以是实现预定功能的软件和/或硬件。尽管以下实施例所描述的模块较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能被构想的。
数据处理装置包括:数据获取单元,配置来获取第一源操作数和第二源操作数;数据处理单元,配置来基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数;以及数据输出单元,配置来输出目标操作数;其中,第一源操作数和第二源操作数为用浮点数格式表示的整数。
在一些实施例中,基于浮点数据通路对第一源操作数和第二源操作数进行位域逻辑操作从而得到目标操作数,包括:从最高位开始,处理单元依次将第一源操作数和第二源操作数的对应位进行位域逻辑操作,直至最低位;输出第一源操作数和第二源操作数的对应位的执行完位域逻辑操作的中间结果;以及根据中间结果得到目标操作数。
在一些实施例中,输出第一源操作数和第二源操作数的对应位的执行完位域逻辑操作的中间结果,包含:数据处理单元按照最高位至最低位的顺序轮流输出第一源操作数和第二源操作数的对应位的每一位的执行完位域逻辑操作的结果;其中中间结果为第一源操作数和第二源操作数的对应位的各个位的执行完位域逻辑操作的结果。
在一些实施例中,中间结果的位数与第一源操作数或者第二源操作数的位数相同。
在一些实施例中,根据中间结果得到目标操作数,包含:数据处理单元遍历中间结果的各个位;以及数据输出单元根据遍历结果得到目标操作数。
利用上述实施例中的数据处理装置,在主要面向浮点数操作的设备中,可以在不额外增加面积、不修改指令集的情况下实现对整数数据的位域操作。
根据本申请的另一方面,本申请的实施例还提供了一种电子设备,其结构如图3所示,该电子设备包括:
至少一个嵌入式神经网络处理器(NPU)300,图3中以一个NPU300为例;和存储器(memory)301,还可以包括通信接口(Communication Interface)302和总线303。其中,NPU300、通信接口302、存储器301可以通过总线303完成相互间的通信。通信接口302可以用于信息传输。处NPU300可以调用存储器301中的逻辑指令,以执行上述实施例的数据处理方法。
在一些特定的实施方式中,电子设备为矿机。
此外,上述的存储器301中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器301作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。NPU300通过运行存储在存储器301中的软件程序、指令以及模块,从而执行功能应用以及数据处理,即实现上述方法实施例中的数据处理方法。
存储器301可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器301可以包括高速随机存取存储器,还可以包括非易失性存储器。
本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是矿机、个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
当用于本申请中时,虽然术语“第一”、“第二”等可能会在本申请中使用以描述各元件,但这些元件不应受到这些术语的限制。这些术语仅用于将一个元件与另一个元件区别开。比如,在不改变描述的含义的情况下,第一元件可以叫做第二元件,并且同样第,第二元件可以叫做第一元件,只要所有出现的“第一元件”一致重命名并且所有出现的“第二元件”一致重命名即可。第一元件和第二元件都是元件,但可以不是相同的元件。
本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。
所描述的实施例中的各方面、实施方式、实现或特征能够单独使用或以任意组合的方式使用。所描述的实施例中的各方面可由软件、硬件或软硬件的结合实现。所描述的实施例也可以由存储有计算机可读代码的计算机可读介质体现,该计算机可读代码包括可由至少一个计算装置执行的指令。所述计算机可读介质可与任何能够存储数据的数据存储装置相关联,该数据可由计算机系统读取。用于举例的计算机可读介质可以包括只读存储器、随机存取存储器、CD-ROM、HDD、DVD、磁带以及光数据存储装置等。所述计算机可读介质还可以分布于通过网络联接的计算机系统中,这样计算机可读代码就可以分布式存储并执行。
上述技术描述可参照附图,这些附图形成了本申请的一部分,并且通过描述在附图中示出了依照所描述的实施例的实施方式。虽然这些实施例描述的足够详细以使本领域技术人员能够实现这些实施例,但这些实施例是非限制性的;这样就可以使用其它的实施例,并且在不脱离所描述的实施例的范围的情况下还可以做出变化。比如,流程图中所描述的操作顺序是非限制性的,因此在流程图中阐释并且根据流程图描述的两个或两个以上操作的顺序可以根据若干实施例进行改变。作为另一个例子,在若干实施例中,在流程图中阐释并且根据流程图描述的一个或一个以上操作是可选的,或是可删除的。另外,某些步骤或功能可以添加到所公开的实施例中,或两个以上的步骤顺序被置换。所有这些变化被认为包含在所公开的实施例以及权利要求中。
另外,上述技术描述中使用术语以提供所描述的实施例的透彻理解。然而,并不需要过于详细的细节以实现所描述的实施例。因此,实施例的上述描述是为了阐释和描述而呈现的。上述描述中所呈现的实施例以及根据这些实施例所公开的例子是单独提供的,以添加上下文并有助于理解所描述的实施例。上述说明书不用于做到无遗漏或将所描述的实施例限制到本公开的精确形式。根据上述教导,若干修改、选择适用以及变化是可行的。在某些情况下,没有详细描述为人所熟知的处理步骤以避免不必要地影响所描述的实施例。
Claims (17)
1.一种数据处理方法,用于将整数数据转换为可供浮点处理器运算的浮点数,其特征在于,所述数据处理方法包括:
获取第一源操作数和第二源操作数;
基于浮点数据通路对所述第一源操作数和所述第二源操作数进行位域逻辑操作从而得到目标操作数;以及
输出所述目标操作数;其中,
所述第一源操作数和所述第二源操作数为用浮点数格式表示的整数。
2.根据权利要求1所述的数据处理方法,其特征在于,基于浮点数据通路对所述第一源操作数和所述第二源操作数进行位域逻辑操作从而得到目标操作数,包括:
从最高位开始,依次将所述第一源操作数和所述第二源操作数的对应位进行位域逻辑操作,直至最低位;
输出所述第一源操作数和所述第二源操作数的对应位的执行完位域逻辑操作的中间结果;以及
根据所述中间结果得到所述目标操作数。
3.根据权利要求2所述的数据处理方法,其特征在于,输出所述第一源操作数和所述第二源操作数的对应位的执行完位域逻辑操作的中间结果,包含:
按照最高位至最低位的顺序轮流输出所述第一源操作数和所述第二源操作数的对应位的每一位的执行完位域逻辑操作的结果;其中
所述中间结果为所述第一源操作数和所述第二源操作数的对应位的各个位的执行完位域逻辑操作的结果。
4.根据权利要求3所述的数据处理方法,其特征在于,所述中间结果的位数与所述第一源操作数或者所述第二源操作数的位数相同。
5.根据权利要求2所述的数据处理方法,其特征在于,根据所述中间结果得到所述目标操作数,包含:
遍历所述中间结果的各个位;以及
根据遍历结果得到所述目标操作数。
6.一种数据处理方法,应用于嵌入式神经网络处理器,其特征在于,所述数据处理方法包括:
获取第一源操作数和第二源操作数;
基于浮点数据通路对所述第一源操作数和所述第二源操作数进行位域逻辑操作从而得到目标操作数;以及
输出所述目标操作数;其中,
所述第一源操作数和所述第二源操作数为用浮点数格式表示的整数。
7.根据权利要求6所述的数据处理方法,其特征在于,基于浮点数据通路对所述第一源操作数和所述第二源操作数进行位域逻辑操作从而得到目标操作数,包括:
从最高位开始,依次将所述第一源操作数和所述第二源操作数的对应位进行位域逻辑操作,直至最低位;
输出所述第一源操作数和所述第二源操作数的对应位的执行完位域逻辑操作的中间结果;以及
根据所述中间结果得到所述目标操作数。
8.根据权利要求7所述的数据处理方法,其特征在于,输出所述第一源操作数和所述第二源操作数的对应位的执行完位域逻辑操作的中间结果,包含:
按照最高位至最低位的顺序轮流输出所述第一源操作数和所述第二源操作数的对应位的每一位的执行完位域逻辑操作的结果;其中
所述中间结果为所述第一源操作数和所述第二源操作数的对应位的各个位的执行完位域逻辑操作的结果。
9.根据权利要求8所述的数据处理方法,其特征在于,所述中间结果的位数与所述第一源操作数或者所述第二源操作数的位数相同。
10.根据权利要求7所述的数据处理方法,其特征在于,根据所述中间结果得到所述目标操作数,包含:
遍历所述中间结果的各个位;以及
根据遍历结果得到所述目标操作数。
11.一种数据处理装置,其特征在于,所述数据处理装置包括:
数据获取单元,配置来获取第一源操作数和第二源操作数;
数据处理单元,配置来基于浮点数据通路对所述第一源操作数和所述第二源操作数进行位域逻辑操作从而得到目标操作数;以及
数据输出单元,配置来输出所述目标操作数;其中,
所述第一源操作数和所述第二源操作数为用浮点数格式表示的整数。
12.根据权利要求11所述的数据处理装置,其特征在于,基于浮点数据通路对所述第一源操作数和所述第二源操作数进行位域逻辑操作从而得到目标操作数,包括:
从最高位开始,所述数据处理单元依次将所述第一源操作数和所述第二源操作数的对应位进行位域逻辑操作,直至最低位;
输出所述第一源操作数和所述第二源操作数的对应位的执行完位域逻辑操作的中间结果;以及
根据所述中间结果得到所述目标操作数。
13.根据权利要求12所述的数据处理装置,其特征在于,输出所述第一源操作数和所述第二源操作数的对应位的执行完位域逻辑操作的中间结果,包含:
所述数据处理单元按照最高位至最低位的顺序轮流输出所述第一源操作数和所述第二源操作数的对应位的每一位的执行完位域逻辑操作的结果;其中
所述中间结果为所述第一源操作数和所述第二源操作数的对应位的各个位的执行完位域逻辑操作的结果。
14.根据权利要求13所述的数据处理装置,其特征在于,所述中间结果的位数与所述第一源操作数或者所述第二源操作数的位数相同。
15.根据权利要求12所述的数据处理装置,其特征在于,根据所述中间结果得到所述目标操作数,包含:
所述数据处理单元遍历所述中间结果的各个位;以及
所述数据输出单元根据遍历结果得到所述目标操作数。
16.一种电子设备,其特征在于,包括:
至少一个嵌入式神经网络处理器;以及
与所述至少一个嵌入式网络神经处理器连接的存储器;其中,
所述存储器存储有可被所述至少一个嵌入式神经网络处理器执行的指令,所述指令被至少一个嵌入式神经网络处理器执行时,使所述至少一个嵌入式神经网络处理器执行权利要求6-10中任意一项所述的方法。
17.根据权利要求16所述的电子设备,其特征在于:
所述电子设备为矿机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810614678.7A CN108897522A (zh) | 2018-06-14 | 2018-06-14 | 数据处理方法、数据处理装置以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810614678.7A CN108897522A (zh) | 2018-06-14 | 2018-06-14 | 数据处理方法、数据处理装置以及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108897522A true CN108897522A (zh) | 2018-11-27 |
Family
ID=64344768
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810614678.7A Pending CN108897522A (zh) | 2018-06-14 | 2018-06-14 | 数据处理方法、数据处理装置以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108897522A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110221808A (zh) * | 2019-06-03 | 2019-09-10 | 深圳芯英科技有限公司 | 向量乘加运算的预处理方法、乘加器及计算机可读介质 |
WO2020191920A1 (en) * | 2019-03-25 | 2020-10-01 | Huawei Technologies Co., Ltd. | Storing complex data in warp gprs |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101178645A (zh) * | 2007-12-20 | 2008-05-14 | 清华大学 | 一种并行浮点乘加单元 |
CN102207849A (zh) * | 2006-09-21 | 2011-10-05 | 英特尔公司 | 用于执行逻辑比较操作的方法和装置 |
CN103236846A (zh) * | 2013-05-02 | 2013-08-07 | 浙江中控技术股份有限公司 | 一种工业实时数据压缩方法及装置 |
CN104011653A (zh) * | 2011-12-29 | 2014-08-27 | 英特尔公司 | 打包数据操作掩码比较处理器、方法、系统及指令 |
CN104583980A (zh) * | 2012-09-28 | 2015-04-29 | 英特尔公司 | 用于响应于单个指令来执行循环和异或的系统、装置和方法 |
CN105573712A (zh) * | 2014-10-31 | 2016-05-11 | Arm有限公司 | 用于计算重复迭代和的结果的装置、方法和程序 |
CN107003849A (zh) * | 2014-12-23 | 2017-08-01 | 英特尔公司 | 用于执行冲突检测的方法和装置 |
-
2018
- 2018-06-14 CN CN201810614678.7A patent/CN108897522A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102207849A (zh) * | 2006-09-21 | 2011-10-05 | 英特尔公司 | 用于执行逻辑比较操作的方法和装置 |
CN101178645A (zh) * | 2007-12-20 | 2008-05-14 | 清华大学 | 一种并行浮点乘加单元 |
CN104011653A (zh) * | 2011-12-29 | 2014-08-27 | 英特尔公司 | 打包数据操作掩码比较处理器、方法、系统及指令 |
CN104583980A (zh) * | 2012-09-28 | 2015-04-29 | 英特尔公司 | 用于响应于单个指令来执行循环和异或的系统、装置和方法 |
CN103236846A (zh) * | 2013-05-02 | 2013-08-07 | 浙江中控技术股份有限公司 | 一种工业实时数据压缩方法及装置 |
CN105573712A (zh) * | 2014-10-31 | 2016-05-11 | Arm有限公司 | 用于计算重复迭代和的结果的装置、方法和程序 |
CN107003849A (zh) * | 2014-12-23 | 2017-08-01 | 英特尔公司 | 用于执行冲突检测的方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020191920A1 (en) * | 2019-03-25 | 2020-10-01 | Huawei Technologies Co., Ltd. | Storing complex data in warp gprs |
CN110221808A (zh) * | 2019-06-03 | 2019-09-10 | 深圳芯英科技有限公司 | 向量乘加运算的预处理方法、乘加器及计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9424031B2 (en) | Techniques for enabling bit-parallel wide string matching with a SIMD register | |
US9866218B2 (en) | Boolean logic in a state machine lattice | |
CN110825363B (zh) | 智能合约获取方法、装置、电子设备及存储介质 | |
CN107832062B (zh) | 一种程序更新方法及终端设备 | |
US9928032B2 (en) | Checksum adder | |
CN111159329B (zh) | 敏感词检测方法、装置、终端设备和计算机可读存储介质 | |
CN114047929B (zh) | 基于知识增强的用户定义函数识别方法、装置及介质 | |
US20210151124A1 (en) | Genetic variation identification method, genetic variation identification apparatuses, and storage medium | |
EP3051700A1 (en) | Hardware efficient fingerprinting | |
CN108897522A (zh) | 数据处理方法、数据处理装置以及电子设备 | |
CN111460815A (zh) | 规则处理方法、装置、介质及电子设备 | |
US8997030B1 (en) | Enhanced case-splitting based property checking | |
CN108762720B (zh) | 数据处理方法、数据处理装置以及电子设备 | |
CN113190847A (zh) | 一种脚本文件的混淆检测方法、装置、设备及存储介质 | |
US8645404B2 (en) | Memory pattern searching via displaced-read memory addressing | |
CN107832623B (zh) | 坐标轨迹加密和解密的方法及系统 | |
CN113703753B (zh) | 用于产品开发的方法、装置和产品开发系统 | |
US11921874B2 (en) | Method and system for protecting file using class distribution and sequential memory loading | |
CN108415709A (zh) | 一种基于有限状态机加固源代码的方法及装置 | |
CN106339975A (zh) | 一种数字图像秘密分享及恢复方法及装置 | |
JP6572668B2 (ja) | 検査方法 | |
EP3051699A2 (en) | Hardware efficient rabin fingerprints | |
US20230342466A1 (en) | System and method for computer security augmented data set algorithm training | |
CN117494229A (zh) | 数字签名方法、装置、设备及存储介质 | |
CN118378712A (zh) | 量子门的实现方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181127 |