CN111290732B - 基于posit数据格式的浮点数乘法运算电路 - Google Patents

基于posit数据格式的浮点数乘法运算电路 Download PDF

Info

Publication number
CN111290732B
CN111290732B CN202010138191.3A CN202010138191A CN111290732B CN 111290732 B CN111290732 B CN 111290732B CN 202010138191 A CN202010138191 A CN 202010138191A CN 111290732 B CN111290732 B CN 111290732B
Authority
CN
China
Prior art keywords
operation result
value
point number
floating point
section
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.)
Active
Application number
CN202010138191.3A
Other languages
English (en)
Other versions
CN111290732A (zh
Inventor
王中风
徐铭阳
方超
林军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing University filed Critical Nanjing University
Priority to CN202010138191.3A priority Critical patent/CN111290732B/zh
Publication of CN111290732A publication Critical patent/CN111290732A/zh
Application granted granted Critical
Publication of CN111290732B publication Critical patent/CN111290732B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • G06F7/487Multiplying; Dividing
    • G06F7/4876Multiplying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • G06F7/485Adding; Subtracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • G06F7/575Basic arithmetic logic units, i.e. devices selectable to perform either addition, subtraction or one of several logical operations, using, at least partially, the same circuitry
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Nonlinear Science (AREA)
  • Complex Calculations (AREA)

Abstract

本申请提供了一种基于posit数据格式的浮点数的乘法运算电路。该电路包括数据输入单元101、第一解码器102、第二解码器103、乘法器104、MSB单元105、加法器106、编码器107和多路选择器108,通过电路中各元件的协同,实现基于posit数据格式的浮点数的乘法运算。本申请实施例中,采用posit数据格式进行乘法运算,则可以在0附近保证精度的同时,又可以很大程度的减少数据位宽,从而减少神经网络的训练时间,也降低了对于存储,位宽等资源的需求。

Description

基于posit数据格式的浮点数乘法运算电路
技术领域
本申请涉及数据处理技术领域,特别涉及一种基于posit数据格式的浮点数乘法运算电路。
背景技术
随着大数据时代的到来,人工神经网络技术得到飞速发展。人工神经网络是由大量处理单元互联组成的非线性、自适应信息处理系统,试图通过模拟大脑神经网络处理、记忆信息的方式进行信息处理。
人工神经网络的重点在于数据处理,即对浮点数进行运算、分析,从而建立神经网络模型。目前通常采用IEEE 754规范的规格化单精度浮点数格式(简称为IEEE 754数据格式)的浮点数执行数据处理的过程。这种数据格式的浮点数可以表示一个很大范围的数值,同时也能满足神经网络训练的要求。虽然上述IEEE 754数据格式的浮点数在精度上能够满足神经网络训练的要求,但是由于其位宽较长,在处理这种数据时需要耗费一定的时间并且消耗一定的资源,进而影响神经网络的训练速度,使神经网络训练的效率降低。
如果能够将posit数据格式的浮点数直接用于执行人工神经网络的数据处理过程,将大大减少所占用的资源,进而能够加快神经网络的训练速度。但是,目前还没有基于posit数据格式的浮点数的乘法运算电路。
发明内容
本申请提供了一种基于posit数据格式的浮点数的乘法运算电路,可用于实现基于posit数据格式的浮点数乘法运算。
本申请实施例提供一种基于posit数据格式的浮点数乘法运算电路,所述电路包括:
数据输入单元101,用于输入posit数据格式的第一浮点数和posit数据格式的第二浮点数;
第一解码器102,用于对所述第一浮点数进行分析,确定所述第一浮点数中第一指数段的值和第一尾数段的值;
第二解码器103,用于对所述第二浮点数进行分析,确定所述第二浮点数中第二指数段的值和第二尾数段的值;
乘法器104,用于接收所述第一尾数段的值和所述第二尾数段的值,以及将所述第一尾数段的值和所述第二尾数段的值相乘,得到第一运算结果;
MSB单元(105),用于确定第一运算结果的最高位,以及将所述第一运算结果的最高位输出至加法器(106);
所述加法器106,用于接收所述第一运算结果的最高位,以及接收所述第一指数段的值和所述第二指数段的值,根据所述第一运算结果的最高位、所述第一指数段的值和所述第二指数段的值,得到第二运算结果;
编码器107,用于接收所述第一运算结果和所述第二运算结果,以及根据所述第一运算结果和所述第二运算结果,得到目标运算结果;
多路选择器108,用于接收所述目标运算结果,并输出。
在一种可能的实现方式中,还包括:
判断单元109,用于判断所述第一浮点数和所述第二浮点数中的任一浮点数是否为0,如果所述第一浮点数和所述第二浮点数中的任一浮点数为0,则将0输入多路选择器108;
所述多路选择器108,还用于在接收到所述判断单元109输入的0后,输出0。
在一种可能的实现方式中,还包括:
判断单元109,用于判断所述第一浮点数和所述第二浮点数中的任一浮点数是否为无穷数,如果所述第一浮点数和所述第二浮点数中的任一浮点数为无穷数,则将无穷数输入多路选择器108;
所述多路选择器108,还用于在接收到所述判断单元109输入的无穷数后,输出无穷数。
在一种可能的实现方式中,所述第一运算结果的最高位通过以下方式确定:
将所述第一尾数段的值和所述第二尾数段的值相乘,如果存在进位,则确定最高位为1;如果不存在进位,则确定最高位为0。
在一种可能的实现方式中,所述第一运算结果按照下述步骤确定:
计算下述公式中的X、Y和Z:
1.FA*1.FB=XY.Z
其中,FA是所述第一尾数段的值;FB是所述第二尾数段的值;X表示所述第一运算结果的最高位,取值为0或1;Y表示第一运算结果的次高位,取值为0或1;Z表示第一运算结果小数点后的所有尾数;
如果X=0,所述第一运算结果根据下述公式确定:
F=Z
如果X=1,所述第一运算结果根据下述公式确定:
F=YZ
其中,F是所述第一运算结果。
在一种可能的实现方式中,所述第二运算结果按照下述步骤确定:
计算下述公式中的E0
E0=EA+EB
其中,EA是所述第一指数段的值;EB是所述第二指数段的值。
如果X=0,所述第二运算结果根据下述公式确定:
E=E0
如果X=1,所述第二运算结果根据下述公式确定:
E=E0+1
其中,X表示第一运算结果的最高位,取值为0或1;E是所述第二运算结果。
在一种可能的实现方式中,所述编码器107具体用于:
根据所述第一运算结果和所述第二运算结果,得到中间运算结果;
将所述中间运算结果进行编码,得到posit数据格式的目标运算结果。在一种可能的实现方式中,所述多路选择器108是三选一多路选择器108。
本申请实施例中,采用posit数据格式进行乘法运算,则可以在0附近保证精度的同时,又可以很大程度的减少数据位宽,从而减少神经网络的训练时间,也降低了对于存储,位宽等资源的需求。
附图说明
图1是本申请提供的Posit数据格式的浮点数具体的数据表示形式的示意图;
图2是本申请实施例提供的一种基于posit数据格式的浮点数乘法运算电路的结构示意图;
图3是本申请实施例提供的另一种基于posit数据格式的浮点数乘法运算电路的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请技术方案中的Posit数据格式的参数包括N和es,其中N为整个数据表示的总位宽,es为指数段的位宽,两个参数都是在表示数据前需要确定的。N可以取任意正整数值。本实施例中以N表示预设总位宽,以es表示预设指数段位宽,预设指数段位宽是根据对Posit数据格式的浮点数的实际需求选择的,预设指数段位宽所取的值可以小于预设总位宽所取的值。
图1为本申请提供的Posit数据格式的浮点数具体的数据表示形式的示意图。如图1所示,Posit数据格式的浮点数包括符号段s,组织段r、指数段e和尾数段f四个部分。
对于一个Posit数据格式的浮点数来说,该浮点数与其真值A的关系为:
Figure BDA0002398079710000031
其中,s表示Posit数据格式中符号段的值,只有一位,由最高位表示,当A为正数时,s的值为0,当A为负数时,s的值为1。k表示Posit数据格式中组织段的值;e表示Posit数据格式中指数段的值,f表示Posit数据格式中尾数段的值,是将整数部分表示为1后,小数点后的所有尾数。
实施例一
具体请参考图2,其示例性示出了本申请实施例提供的一种基于posit数据格式的浮点数乘法运算电路的结构示意图,该电路包括数据输入单元101、第一解码器102、第二解码器103、乘法器104、MSB单元105、加法器106、编码器107和多路选择器108。
其中,数据输入单元101,用于输入posit数据格式的第一浮点数和posit数据格式的第二浮点数。
第一解码器102,用于对第一浮点数进行分析,确定第一浮点数中第一指数段的值和第一尾数段的值。其中,第一指数段的值是由第一指数段和组织段以及预设指数段位宽决定的。
具体来说,首先,对第一浮点数进行分析,确定第一浮点数中第一指数段的二进制码和第一尾数段的二进制码。
第一指数段位于第一组织段之后,预设指数段位宽是es位,es的具体数值可以是预先设置的,其中,预设指数段位宽可以是指第一指数段所占的位宽。
第一浮点数中第一指数段的二进制码是根据预设指数段位宽、第一符号段的二进制码及第一组织段的二进制码确定的。
具体地,根据第一符号段的二进制码,确定第一符号段的位宽;以及,根据组织段的二进制码,确定组织段的位宽。
如果预设总位宽减去第一符号段的位宽和第一组织段的位宽后,剩余的第一位宽大于或者等于预设指数段位宽,则从第一浮点数中截取预设指数段位宽,得到第一指数段的二进制码。
如果预设总位宽减去第一符号段的位宽和第一组织段的位宽后,剩余的第一位宽小于预设指数段位宽,则对第一位宽采用补0的方式得到第一指数段的二进制码。
具体实施过程中,从第一浮点数舍去第一符号段和组织段分别对应的二进制码,从剩余的二进制码中按从头到尾的顺序,截取es位的二进制码,所截取到的二进制码就是第一指数段对应的二进制码。
需要说明的是,在可能的情形中,从第一浮点数舍去第一符号段和组织段分别对应的二进制码后,剩余的二进制码的位宽小于es位,此时,可以通过补0的方式,在剩余的二进制码之后补0,使得第一指数段所占的位宽是es位。举个例子,假设es=11,剩余的二进制码是“0000000001”,剩余的二进制码的位宽是10位,小于es(es=11)位,此时,可以在在剩余的二进制码之后补0,即第一指数段的二进制码是“00000000010”,使其所占的位宽满足es位(即满足11位的位宽)。
第一尾数段位于第一指数段之后,是指小数点后的所有尾数。在第一浮点数中,第一尾数段可能存在也可能不存在,在不存在的情况下,第一尾数段的二进制码是0。
具体地,根据第一符号段的二进制码,确定第一符号段的位宽;以及,根据组织段的二进制码,确定组织段对应的位宽。
如果预设总位宽减去第一符号段的位宽、第一组织段的位宽和预设指数段位宽后,剩余第二位宽,则根据第二位宽确定第一尾数段的二进制码。
如果预设总位宽减去第一符号段的位宽、第一组织段的位宽和预设指数段位宽后,未剩余第二位宽,则确定第一尾数段的二进制码为0。
需要说明的是,上文描述的第一尾数段不存在的情况是指,从第一浮点数舍去第一符号段、组织段和第一指数段分别对应的二进制码后,没有剩余的二进制码,此时,第一尾数段不存在,也即第一尾数段的二进制码是0。
然后,根据第一指数段的二进制码,确定第一指数段的值。其中,第一浮点数(即posit数据格式的浮点数)是0和1组合成的二进制数。将第一浮点数中第一指数段的二进制码由二进制转换成十进制,所得到的值可以确定为第一浮点数中第一指数段的值。
最后,根据第一尾数段的二进制码,确定第一尾数段的值。
第二解码器103,用于对所述第二浮点数进行分析,确定第二浮点数中第二指数段的值和第二尾数段的值。
第二解码器103的分析过程可以参考上文第一解码器102所描述的内容,此处不再赘述。
乘法器104,用于接收第一尾数段的值和第二尾数段的值,以及将第一尾数段的值和第二尾数段的值相乘,得到第一运算结果。
进一步地,第一运算结果的最高位可以通过以下方式确定:
将第一尾数段的值和第二尾数段的值相乘,如果存在进位,则确定最高位为1;如果不存在进位,则确定最高位为0。
进一步地,第一运算结果按照下述步骤确定:
计算下述公式中的X、Y和Z:
1.FA*1.FB=XY.Z
其中,FA是所述第一尾数段的值;FB是所述第二尾数段的值;X表示第一运算结果的最高位,取值为0或1;Y表示第一运算结果的次高位,取值为0或1;Z表示第一运算结果小数点后的所有尾数;
如果X=0,第一运算结果根据下述公式确定:
F=Z
如果X=1,第一运算结果根据下述公式确定:
F=YZ
其中,F是第一运算结果。
MSB单元105,用于确定第一运算结果的最高位,以及将所述第一运算结果的最高位输出至加法器106。其中,最高位指的是进位,其值可以是0或1。
所述加法器106,用于接收第一运算结果的最高位,以及接收第一指数段的值和第二指数段的值,根据第一运算结果的最高位、第一指数段的值和所述第二指数段的值,得到第二运算结果。
第二运算结果按照下述步骤确定:
计算下述公式中的E0
E0=EA+EB
其中,EA是第一指数段的值;EB是第二指数段的值。
如果X=0,第二运算结果根据下述公式确定:
E=E0
如果X=1,第二运算结果根据下述公式确定:
E=E0+1
其中,X表示第一运算结果的最高位,取值为0或1;E是第二运算结果。
编码器107,用于接收第一运算结果和第二运算结果,以及根据第一运算结果和第二运算结果,得到目标运算结果。
根据第一运算结果和第二运算结果,得到中间运算结果;再将中间运算结果进行编码,得到posit数据格式的目标运算结果。
多路选择器108,用于接收目标运算结果,并输出。
本申请实施例中,采用posit数据格式进行乘法运算,则可以在0附近保证精度的同时,又可以很大程度的减少数据位宽,从而减少神经网络的训练时间,也降低了对于存储,位宽等资源的需求。
实施例二
在上述实施例的基础上,请参考图3,其示例性示出了本申请实施例提供的另一种基于posit数据格式的浮点数乘法运算电路的结构示意图。如图3所示,该电路还包括判断单元109。
判断单元109,用于判断第一浮点数和第二浮点数中的任一浮点数是否为0,如果第一浮点数和第二浮点数中的任一浮点数为0,则将0输入多路选择器108。
进一步地,多路选择器108,还用于在接收到判断单元109输入的0后,输出0。
在其它可能的实现方式中,判断单元109,还用于判断第一浮点数和第二浮点数中的任一浮点数是否为无穷数,如果第一浮点数和第二浮点数中的任一浮点数为无穷数,则将无穷数输入多路选择器108。
多路选择器108,还用于在接收到判断单元109输入的无穷数后,输出无穷数。
本申请实施例中,多路选择器是根据0、无穷数和目标运算结果,选择最终输出的结果。这里存在一个优先级,即如果是0或无穷数,那么,哪怕接收到了目标运算结果,最终输出的结果仍然是0或者无穷数。当多路选择路接收到0时,直接输出0;当多路选择器接收到无穷数时,直接输出无穷数;当多路选择器接收到目标运算结果时,输出目标运算结果。本申请实施例中,采用posit数据格式进行乘法运算,则可以在0附近保证精度的同时,又可以很大程度的减少数据位宽,从而减少神经网络的训练时间,也降低了对于存储,位宽等资源的需求。
本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (8)

1.一种基于posit数据格式的浮点数乘法运算电路,其特征在于,所述电路包括:
数据输入单元(101),用于输入posit数据格式的第一浮点数和posit数据格式的第二浮点数;
第一解码器(102),用于对所述第一浮点数进行分析,确定所述第一浮点数中第一指数段的值和第一尾数段的值;
第二解码器(103),用于对所述第二浮点数进行分析,确定所述第二浮点数中第二指数段的值和第二尾数段的值;
乘法器(104),用于接收所述第一尾数段的值和所述第二尾数段的值,以及将所述第一尾数段的值和所述第二尾数段的值相乘,得到第一运算结果;
MSB单元(105),用于确定第一运算结果的最高位,以及将所述第一运算结果的最高位输出至加法器(106);
所述加法器(106),用于接收所述第一运算结果的最高位,以及接收所述第一指数段的值和所述第二指数段的值,根据所述第一运算结果的最高位、所述第一指数段的值和所述第二指数段的值,得到第二运算结果;
编码器(107),用于接收所述第一运算结果和所述第二运算结果,以及根据所述第一运算结果和所述第二运算结果,得到目标运算结果;
多路选择器(108),用于接收所述目标运算结果,并输出。
2.根据权利要求1所述的电路,其特征在于,还包括:
判断单元(109),用于判断所述第一浮点数和所述第二浮点数中的任一浮点数是否为0,如果所述第一浮点数和所述第二浮点数中的任一浮点数为0,则将0输入多路选择器(108);
所述多路选择器(108),还用于在接收到所述判断单元(109)输入的0后,输出0。
3.根据权利要求2所述的电路,其特征在于,还包括:
判断单元(109),用于判断所述第一浮点数和所述第二浮点数中的任一浮点数是否为无穷数,如果所述第一浮点数和所述第二浮点数中的任一浮点数为无穷数,则将无穷数输入多路选择器(108);
所述多路选择器(108),还用于在接收到所述判断单元(109)输入的无穷数后,输出无穷数。
4.根据权利要求1所述的电路,其特征在于,所述第一运算结果的最高位通过以下方式确定:
将所述第一尾数段的值和所述第二尾数段的值相乘,如果存在进位,则确定最高位为1;如果不存在进位,则确定最高位为0。
5.根据权利要求4所述的电路,其特征在于,所述第一运算结果按照下述步骤确定:
计算下述公式中的X、Y和Z:
1.FA*1.FB=XY.Z
其中,FA是所述第一尾数段的值;FB是所述第二尾数段的值;X表示所述第一运算结果的最高位,取值为0或1;Y表示第一运算结果的次高位,取值为0或1;Z表示第一运算结果小数点后的所有尾数;
如果X=0,所述第一运算结果根据下述公式确定:
F=Z
如果X=1,所述第一运算结果根据下述公式确定:
F=YZ
其中,F是所述第一运算结果。
6.根据权利要求1所述的电路,其特征在于,所述第二运算结果按照下述步骤确定:
计算下述公式中的E0
E0=EA+EB
其中,EA是所述第一指数段的值;EB是所述第二指数段的值;
如果X=0,所述第二运算结果根据下述公式确定:
E=E0
如果X=1,所述第二运算结果根据下述公式确定:
E=E0+1
其中,X表示第一运算结果的最高位,取值为0或1;E是所述第二运算结果。
7.根据权利要求1所述的电路,其特征在于,所述编码器(107)具体用于:
根据所述第一运算结果和所述第二运算结果,得到中间运算结果;
将所述中间运算结果进行编码,得到posit数据格式的目标运算结果。
8.根据权利要求1至7中任一项所述的电路,其特征在于,所述多路选择器(108)是三选一多路选择器(108)。
CN202010138191.3A 2020-03-03 2020-03-03 基于posit数据格式的浮点数乘法运算电路 Active CN111290732B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010138191.3A CN111290732B (zh) 2020-03-03 2020-03-03 基于posit数据格式的浮点数乘法运算电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010138191.3A CN111290732B (zh) 2020-03-03 2020-03-03 基于posit数据格式的浮点数乘法运算电路

Publications (2)

Publication Number Publication Date
CN111290732A CN111290732A (zh) 2020-06-16
CN111290732B true CN111290732B (zh) 2023-03-14

Family

ID=71030961

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010138191.3A Active CN111290732B (zh) 2020-03-03 2020-03-03 基于posit数据格式的浮点数乘法运算电路

Country Status (1)

Country Link
CN (1) CN111290732B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10903849B1 (en) * 2020-07-20 2021-01-26 Micron Technology, Inc. Bit string compression
CN112667197B (zh) * 2020-12-29 2023-07-14 中山大学 一种基于posit浮点数格式的参数化加减法运算电路
CN112671411B (zh) * 2020-12-29 2023-04-18 中山大学 一种基于ieee 754和posit的浮点数据格式的双向转换电路
CN117910537A (zh) * 2022-10-19 2024-04-19 华为技术有限公司 一种神经网络训练方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101650642A (zh) * 2009-09-11 2010-02-17 杭州中天微系统有限公司 基于补码舍入的浮点加法装置
CN101685383A (zh) * 2008-09-28 2010-03-31 杨高祥 计算器、基于直接对阶的自由精度浮点数的运算电路
CN102087590A (zh) * 2009-12-03 2011-06-08 浙江大学 资源复用的浮点simd指令的执行装置
CN110221808A (zh) * 2019-06-03 2019-09-10 深圳芯英科技有限公司 向量乘加运算的预处理方法、乘加器及计算机可读介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101685383A (zh) * 2008-09-28 2010-03-31 杨高祥 计算器、基于直接对阶的自由精度浮点数的运算电路
CN101650642A (zh) * 2009-09-11 2010-02-17 杭州中天微系统有限公司 基于补码舍入的浮点加法装置
CN102087590A (zh) * 2009-12-03 2011-06-08 浙江大学 资源复用的浮点simd指令的执行装置
CN110221808A (zh) * 2019-06-03 2019-09-10 深圳芯英科技有限公司 向量乘加运算的预处理方法、乘加器及计算机可读介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《Deep Positron: A Deep Neural Network Using the Posit Number System》;Zachariah Carmichael 等;《2019 Design, Automation & Test in Europe Conference & Exhibition (DATE)》;全文 *
《Evaluating the Hardware Cost of the Posit Number System》;Yohann Uguen 等;《2019 29th International Conference on Field Programmable Logic and Applications(FPL)》;全文 *

Also Published As

Publication number Publication date
CN111290732A (zh) 2020-06-16

Similar Documents

Publication Publication Date Title
CN111290732B (zh) 基于posit数据格式的浮点数乘法运算电路
CN107273090B (zh) 面向神经网络处理器的近似浮点乘法器及浮点数乘法
US11775257B2 (en) Enhanced low precision binary floating-point formatting
US11704543B2 (en) Neural network hardware acceleration with stochastic adaptive resource allocation
CN112241291A (zh) 用于指数函数实施的浮点单元
US9430190B2 (en) Fused multiply add pipeline
KR20220038607A (ko) 내적 연산 구현 방법, 장치, 전자 기기 및 기록 매체
CN112835551B (zh) 用于处理单元的数据处理方法、电子设备和计算机可读存储介质
CN117420982A (zh) 包括融合乘累加器的芯片、设备及数据运算的控制方法
US20220113943A1 (en) Method for multiply-add operations for neural network
CN111310909B (zh) 一种浮点数转换电路
CN112860218B (zh) 用于fp16浮点数据和int8整型数据运算的混合精度运算器
CN116700664A (zh) 一种确定浮点数平方根的方法及装置
CN116700666A (zh) 一种浮点数处理方法及装置
CN111367497B (zh) 基于posit数据格式的浮点数乘法运算方法及装置
CN111313906A (zh) 一种浮点数的转换电路
CN111313905B (zh) 一种浮点数转换方法及装置
CN113778523B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN117648959B (zh) 支持神经网络运算的多精度操作数运算装置
CN117170622B (zh) 累加器及用于累加器的方法和芯片电路及计算设备
CN112148371B (zh) 基于单指令多数据流的数据运算方法、装置、介质和设备
CN115951858A (zh) 数据处理器、数据处理方法和电子设备
CN117270812A (zh) 定点浮点融合的多精度加法减法运算方法及乘法运算方法
CN115965047A (zh) 数据处理器、数据处理方法和电子设备
CN114327365A (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
GR01 Patent grant
GR01 Patent grant