CN104169866B - 运算处理装置以及运算处理装置的控制方法 - Google Patents

运算处理装置以及运算处理装置的控制方法 Download PDF

Info

Publication number
CN104169866B
CN104169866B CN201280071614.8A CN201280071614A CN104169866B CN 104169866 B CN104169866 B CN 104169866B CN 201280071614 A CN201280071614 A CN 201280071614A CN 104169866 B CN104169866 B CN 104169866B
Authority
CN
China
Prior art keywords
coefficient
computing
input data
processing apparatus
arithmetic processing
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
CN201280071614.8A
Other languages
English (en)
Other versions
CN104169866A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN104169866A publication Critical patent/CN104169866A/zh
Application granted granted Critical
Publication of CN104169866B publication Critical patent/CN104169866B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/544Methods 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 for evaluating functions by calculation
    • G06F7/556Logarithmic or exponential functions
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/483Indexing scheme relating to group G06F7/483
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/556Indexing scheme relating to group G06F7/556

Landscapes

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

Abstract

本发明提供一种运算处理装置,该运算处理装置具有:指数生成部(20),其基于所输入的输入数据的第1部分生成将指数函数分解成级数运算和针对级数运算的系数的情况下以浮点数形式表现的系数的指数部分;存储部(21),其存储系数的尾数部分;常量生成部(20),其从存储部读出与输入数据的第2部分对应的常量数据;以及选择部(23),其在执行的指令是计算指数函数的系数的系数计算指令的情况下,选择来自常量生成部的常量数据并输出。

Description

运算处理装置以及运算处理装置的控制方法
技术领域
本发明涉及运算处理装置以及运算处理装置的控制方法。
背景技术
在进行数学函数的运算的CPU(Central Processing Unit:中央处理器)等运算处理装置中,指数函数等的运算通常使用泰勒级数运算来进行。为了在指数函数的运算中在某有限的次数停止了泰勒级数运算时得到足够的精度,需要将指数函数分解成作为收敛到有限的次数所给予的精度的泰勒级数的运算的泰勒级数运算和系数。
现有技术中,指数函数运算的泰勒级数运算执行前的系数的计算处理由软件来实现,组合使用多个现有指令,较多地进行浮点寄存器与整数寄存器之间的数据转送、使用了位运算、移位运算等的整数运算器的运算处理。因此,为了处理整个指数函数运算,需要较多的指令,指令发行吞吐量的压缩等性能降低。
提出有一种运算处理装置,其将储存数学函数的泰勒级数运算的系数数据的系数表的集合储存在专用的存储器,将泰勒级数运算所需的系数数据直接从系数表读出而供给至浮点乘法累加器,从而能够使泰勒级数运算高速地执行(例如,参照专利文献1)。另外,提出有一种运算处理装置,其设置了专用的三角函数运算辅助指令,作为进行三角函数的泰勒级数运算执行前的、泰勒级数展开函数的确定、以及对该展开函数的输入参数的计算处理的指令(例如,参照专利文献2)。
专利文献1:日本特开2008-234076号公报
专利文献2:日本特开2011-13728号公报
发明内容
在一个侧面中,本发明的目的在于使指数函数的运算高速化。
运算处理装置的一方式具有:指数生成部,其基于所输入的输入数据的第1部分来生成将指数函数分解成级数运算和针对级数运算的系数的情况下以浮点数形式表现的系数的指数部分;存储部,其存储系数的尾数部分;常量生成部,其从存储部读出与输入数据的第2部分对应的常量数据;以及选择部,其在执行的指令是计算指数函数的系数的系数计算指令的情况下,选择来自常量生成部的常量数据并输出。
能够使指数函数的运算高速化。
附图说明
图1是表示本发明的实施方式的运算处理装置的构成例的图。
图2是表示常量表的例的图。
图3是用于对本实施方式中的系数计算处理进行说明的图。
图4是表示本实施方式的运算处理装置的其他的构成例的图。
具体实施方式
以下,基于附图对本发明的实施方式进行说明。
图1是表示根据本发明的一实施方式的与作为主存储装置的存储器(主存储器)连接的运算处理装置的构成例的图。本实施方式的运算处理装置与运算处理装置外部的存储器(主存储器)11连接,具有存储主存储器11的数据的一部分的缓存12、重命名寄存器13、寄存器文件14、旁路数据15。另外,本实施方式的运算处理装置具有多路调制器16~18、23、第1运算器19、以及第2运算器20。另外,信息处理装置至少具有运算处理装置和存储器11。
寄存器文件14具备运算器19、20执行运算时所使用的所有寄存器。重命名寄存器13为了消除操作数数据的反向依赖和输出依赖而设置。旁路数据15是在运算处理装置的指令流水线中用于消除数据风险的旁路(bypassing)所使用的数据(运算结果数据)。储存于重命名寄存器13的记录(entry)的寄存器值在退出(retire)时移至寄存器文件14。
多路调制器16输入从寄存器文件14输出的数据、从重命名寄存器13输出的数据、以及旁路数据15的3种操作数数据。多路调制器16从这3种操作数数据中选择任意一个操作数数据,作为源数据rs1输出。多路调制器17、18与多路调制器16相同地输入3种操作数数据,将选择出的操作数数据作为源数据rs2、rs3输出。
第1运算器19是浮点乘法累加器,使用从多路调制器16、17、18输入的源数据rs1、rs2、rs3进行在rs1的值与rs2的值的积上加rs3的值的积和运算。例如,第1运算器19通过使用所输入的源数据rs1、rs2、rs3进行积和运算来进行泰勒级数运算。
第2运算器20是进行指数函数运算辅助指令(fexpad)所涉及的运算处理的运算器。第2运算器20使用从多路调制器17输入的源数据rs2进行用于求出将指数函数分解成泰勒级数运算和针对泰勒级数运算的系数时的系数的系数计算处理。此外,将指数函数分解成泰勒级数运算和系数时的泰勒级数运算例如被第1运算器19进行。另外,在本实施方式中,第2运算器20使用源数据rs2来进行系数计算处理,但这是一个例子。第2运算器20既可以使用源数据rs1进行系数计算处理,也可以使用源数据rs3进行系数计算处理。
指数函数运算辅助指令(fexpad)是若将所输入的源数据作为sdat,则进行{1’b0,sdat[16:6],Texp[sdat[5:0]][51:0]}这样的运算的指令。{1’b0,sdat[16:6],Texp[sdat[5:0]][51:0]}按照IEEE754倍精度浮点数的数据格式。即,将作为符号部分(符号位)的第63位作为“0”,将作为指数部分(指数位)的第62~52位作为源数据sdat的第16位~第6位。另外,将作为尾数部分(尾数部位)的第51位~第0位作为利用源数据sdat的第5位~第0位所示的索引从常量表Texp取出的数据的第51位~第0位。
常量表Texp作为第2运算器20所具有的常量表21所提供。如图2所示,常量表Texp是按照IEEE754倍精度浮点数的数据格式储存了(2**(i/64))的值的64条记录的常量表。其中,“**”表示取幂,i是0~63的范围的整数。这里,i=0~63时,因为1≤(2**(i/64))<2,所以如图2所示,按照IEEE754倍精度浮点数的数据格式表示了(2**(i/64))的值的符号部分s以及指数部分e与i的值无关是相同的。因此,常量表Texp至少储存有(2**(i/64))的值的尾数部分f的值fi即可。通过不储存(2**(i/64))值的全部而仅储存尾数部分,能够减少常量表Texp所需的存储容量。
指令类型代码22作为选择信号SEL输入至多路调制器23。多路调制器23根据选择信号SEL输出第1运算器19的输出或者第2运算器20的输出的任意一方。在本实施方式中,在指令类型代码是指数函数运算辅助指令(fexpad)的情况下,选择信号SEL的值为“1”,从而多路调制器23选择输出第2运算器20的输出。另一方面,指令类型代码不是指数函数运算辅助指令(fexpad)的情况下,选择信号SEL的值为“0”,从而多路调制器23选择输出第1运算器19的输出。
以下,对第2运算器20的系数计算处理进行说明。
此外,在以下的说明中,“**”表示取幂,“!”表示阶乘,“*”表示乘法。另外,“log2()”表示以2为底的对数,“log()”表示以e(无理数)为底的对数。
若对指数函数exp(x)进行泰勒级数展开,则由Σ(1/n!)*x**n表示。为了在某有限的次数停止n时得到足够的精度,x为x<1。
若将指数函数exp(x)分解成泰勒级数运算和针对泰勒级数运算的系数,则如下所示。
exp(x)
=(2**log2(e))**x
=(2**(1/log(2))**x
=2**(x/log(2))
=2**(y+z)
=(2**y)*(2**z)
=exp(log(2**y))*(2**z)
=exp(y*log(2))*(2**z)
=exp(y2)*(2**z)
在上述的式中,y是绝对值小于(1/64)的值,(y+z)=x/log(2)。因此,z是将x/log(2)用(1/64)四舍五入的值。另外,y2=y*log(2)=x-z*log(2)。
这里,(y2的绝对值)<(log(2)/64)<1。因此,exp(y2)在有限的次数得到足够的精度,所以利用泰勒级数运算计算,(2**z)作为系数被计算。换句话说,将指数函数exp(x)的运算中的exp(y2)用第1运算器19的泰勒级数运算计算,将(2**z)用第2运算器20的系数计算处理计算。
如上所述,z是将x/log(2)用(1/64)四舍五入的值,所以若将p作为1以上的自然数,q作为0~63的整数,则由z=p+q/64表示,为2**z=2**(p+q/64)=(2**p)*(2**(q/64))。若将其与IEEE754倍精度浮点数的数据格式中的符号部分s、指数部分e、尾数部分f所表示的值(-1)**s*2**(e-bias)*(1.f)比较,则为s=0,e=p+bias,(1.f)=2**(q/64)。Bias是IEEE754倍精度浮点数的数据格式中的偏置值。
另外,为zi=int(x/log(2)*64+bias*64+0.5)。在上述的式中,int(x)表示将值x舍去成整数时的值。而且,若比较该zi与z*64=p*64+q,则提取zi的第5位~第0位所表示的值与q的值对应,提取zi的第6位以上所表示的值与p+bias的值对应。
因此,在常量表Texp储存按照IEEE754倍精度浮点数的数据格式表示(2**(i/64))的值时的尾数部分,通过zi[5:0]所示的索引取出数据来获得系数2**z的尾数部分。因此,系数2**z能够通过{1’b0,sdat[16:6],Texp[sdat[5:0]][51:0]}的运算计算。
这里,以下例如示出通过使用了以往的指令的系数计算处理计算系数2**z的情况的汇编指令列。其中,上述的zi已经被算出而储存于浮点寄存器。
Stdf zi,[]…(指令C1)
Ldx[],zii…(指令C2)
and zii,63,Texpe…(指令C3)
sllx Texpe,3,Texpo…(指令C4)
ldx[Texpb+Texpo],p2zi…(指令C5)
mov 2047,p2zmm…(指令C6)
sllx p2zmm,6,p2zmm…(指令C7)
and zii,p2zmm,p2zm…(指令C8)
sllx p2zm,46,p2zm…(指令C9)
or p2zi,p2zm,p2zi…(指令C10)
stdx p2zi,[]…(指令C11)
lddf[],p2z…(指令C12)
通过指令C1,zi从浮点寄存器被读取到存储器,通过指令C2,被读取到存储器的zi作为zii被读入至整数寄存器。通过指令C3,进行zii与值63的按位的逻辑积运算,运算结果被代入Texpe。通过指令C4,Texpe向上位侧移位3位,其结果被代入Texpo。该处理是因为在参照表的情况下需要以8字节间隔指地址。接下来,通过指令C5,使用对存储有表的存储器上的基地址Texpb和Texpo进行加法所得到的地址参照表,从表读出的数据代入p2zi。通过指令C6,值2047被代入p2zmm。换言之,作成了11位的分离数据代入p2zmm。通过指令C7,p2zmm向上位侧被移位6位。通过指令C8,进行zii与p2zmm的按位的逻辑积运算,运算结果被代入p2zm,通过指令C9,p2zm向上位侧被移位46位,从而获得系数的指数部分。接下来,通过指令C10,进行所得到的系数的指数部分与从表读出的数据亦即p2zi的按位的逻辑和运算,运算结果代入p2zi。由此,得到针对泰勒级数运算的系数2**z的值。然后,通过指令C11,p2zi从整数寄存器被读取到存储器,通过指令C12,被读取到存储器的p2zi作为p2z被读入浮点寄存器,从而针对泰勒级数运算的系数2**z的系数计算处理结束。这样,在通过使用以往的指令的系数计算处理来计算针对泰勒级数运算的系数2**z的情况下,需要执行12个指令,处理也复杂。
另一方面,以下示出通过使用本实施方式中的指数函数运算辅助指令(fexpad)的系数计算处理,计算针对泰勒级数运算的系数2**z的情况下的汇编指令列。
Fexpad zi,p2z…(指令I1)
通过执行指令I1,从而如图3所示,在第2运算器20中,根据p2z[63]为“0”,p2z[62:52]为zi[16:6],p2z[51:0]为zi[5:0],以成为从常量表21输出的数据(2**(i/64)的尾数部分)的方式进行位连结,从而进行针对泰勒级数运算的系数2**z的系数计算处理。这样在本实施方式中,能够利用一个指数函数运算辅助指令(fexpad),进行针对泰勒级数运算的系数的计算处理,所以与以往相比较,能够减少11个汇编指令。
这样根据本实施方式,能够用一个指令进行指数函数运算中的针对泰勒级数运算的系数的计算处理,能够使指数函数的运算高速化。因此,能够使运算处理装置中的指令吞吐量提高,使性能提高。另外,在图1所示的结构中,对于一般的运算处理装置,为了执行利用指数函数运算辅助指令(fexpad)的运算而新设置的电路是第2运算器20以及多路调制器23。因此,仅通过追加一些电路,就能够使将指数函数分解成泰勒级数运算和针对泰勒级数运算的系数时的系数的计算处理高速化,并使指数函数的运算高速化。
根据本实施方式,将指数函数分解成泰勒级数运算和针对泰勒级数运算的系数时的系数的计算处理的运算性能改善为9倍(整数运算器的流水线为2个,浮点运算器的流水线为2个的情况)。另外,现有的方法中,在针对泰勒级数运算的系数的计算处理中的表参照中,需要执行加载/存储指令,所以有可能产生未命中高速缓存,在这样的情况下,在本实施方式中,针对泰勒级数运算的系数的计算处理的运算性能改善为9倍以上。
此外,本实施方式的运算处理装置并不局限于图1所示的结构,例如图4所示,也可以将运算处理装置作为SIMD(Single Instruction stream-Multiple Data stream:单指令流多数据流)型的运算处理装置。在图4将2SIMD的运算处理装置作为一个例子示出。作为第1运算处理部,具有重命名寄存器13A、寄存器文件14A、旁路数据15A、多路调制器16A~18A、23A、第1运算器19A、以及第2运算器20A。另外,作为第2运算处理部,具有重命名寄存器13B、寄存器文件14B、旁路数据15B、多路调制器16B~18B、23B、第1运算器19B、以及第2运算器20B。这样构成运算处理装置,对于2个数据用一个指令通过第1运算处理部以及第2运算处理部使相同的运算处理并列执行。此外,在图4例示了2SIMD的运算处理装置,但也能够进一步设置运算处理部而构成为4SIMD、8SIMD。
另外,上述实施方式都只不过示出了实施本发明时的具体化的仅一例,本发明的技术范围并不被这些限制性地解释。即,本发明能够不脱离其技术思想、或者其主要的特征以各种形式实施。
符号说明
11...存储器(主存储器);12...缓存;13...重命名寄存器;14...寄存器文件;15...旁路数据;16、17、18、23...多路调制器;19...乘法累加器;20...运算器;21...常量表;22...指令类型代码。

Claims (5)

1.一种运算处理装置,其特征在于,具有:
指数生成部,其基于所输入的输入数据的第1部分来生成将指数函数分解成级数运算和针对所述级数运算的系数的情况下以浮点数形式表现的所述系数的指数部分;
存储部,其将与所述输入数据的第2部分所示的值i对应地以浮点数形式表现了2**(i/(2**第2部分的位宽))的值的所述系数的尾数部分存储为常量数据,其中,i是自然数,**表示取幂;
常量生成部,其从所述存储部读出与所述输入数据的第2部分对应的所述常量数据;以及
选择部,其在执行的指令是计算所述指数函数的系数的指数函数运算辅助指令的情况下,选择来自所述常量生成部的常量数据并输出。
2.根据权利要求1所述的运算处理装置,其特征在于,
所述输入数据的第1部分是所述输入数据的第(n+11)位~第(n+1)位,其中,n是自然数,
所述输入数据的第2部分是所述输入数据的第n位~第0位。
3.根据权利要求2所述的运算处理装置,其特征在于,
将所述输入数据的第(n+11)位~第(n+1)位作为用浮点数形式表示了所述系数的指数部分,将通过所述输入数据的第n位~第0位而参照所述存储部所得的常量数据作为用浮点数形式表示了所述系数的尾数部分。
4.根据权利要求1~3中的任意一项所述的运算处理装置,其特征在于,
具有乘法累加器,该乘法累加器进行使用了所述输入数据的积和运算,
在执行的指令是所述指数函数运算辅助指令以外的指令的情况下,选择来自所述乘法累加器的使用了所述输入数据的积和运算的结果亦即积和运算结果并输出。
5.一种运算处理装置的控制方法,其特征在于,
所述运算处理装置所具有的指数生成部,基于所输入的输入数据的第1部分来生成将指数函数分解成级数运算和针对所述级数运算的系数的情况下以浮点数形式表现的所述系数的指数部分,
所述运算处理装置所具有的常量生成部从将与所述输入数据的第2部分所示的值i对应地以浮点数形式表现了2**(i/(2**第2部分的位宽))的值的所述系数的尾数部分存储为常量数据的存储部读出与所述输入数据的第2部分对应的所述常量数据,其中,i是自然数,**表示取幂,
在执行的指令是计算所述指数函数的系数的指数函数运算辅助指令的情况下,所述运算处理装置所具有的选择部选择来自所述常量生成部的常量数据并输出。
CN201280071614.8A 2012-03-30 2012-03-30 运算处理装置以及运算处理装置的控制方法 Active CN104169866B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/058646 WO2013145276A1 (ja) 2012-03-30 2012-03-30 演算処理装置及び演算処理装置の制御方法

Publications (2)

Publication Number Publication Date
CN104169866A CN104169866A (zh) 2014-11-26
CN104169866B true CN104169866B (zh) 2017-08-29

Family

ID=49258639

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280071614.8A Active CN104169866B (zh) 2012-03-30 2012-03-30 运算处理装置以及运算处理装置的控制方法

Country Status (5)

Country Link
US (1) US9477442B2 (zh)
EP (1) EP2833258B1 (zh)
JP (1) JP5794385B2 (zh)
CN (1) CN104169866B (zh)
WO (1) WO2013145276A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6497250B2 (ja) 2015-07-16 2019-04-10 富士通株式会社 演算処理装置および演算処理装置の制御方法
CN108595147B (zh) * 2018-01-02 2021-03-23 上海兆芯集成电路有限公司 具有级数运算执行电路的微处理器
JP6933810B2 (ja) * 2018-01-24 2021-09-08 富士通株式会社 演算処理装置および演算処理装置の制御方法
US11372621B2 (en) 2020-06-04 2022-06-28 Apple Inc. Circuitry for floating-point power function

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577250A (zh) * 2003-06-26 2005-02-09 国际商业机器公司 用于实现2的幂的浮点估计的系统与方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5963460A (en) * 1996-12-17 1999-10-05 Metaflow Technologies, Inc. Apparatus for computing transcendental functions quickly
JP2930069B1 (ja) * 1998-03-06 1999-08-03 日本電気株式会社 3次元グラフィックス処理装置における光源計算高速化の為の指数関数演算方法および装置
JP2000099493A (ja) * 1998-09-18 2000-04-07 Fuji Xerox Co Ltd 誤差関数計算装置
US7509363B2 (en) * 2001-07-30 2009-03-24 Ati Technologies Ulc Method and system for approximating sine and cosine functions
US6981009B2 (en) * 2002-07-09 2005-12-27 Silicon Integrated Systems Corp. Apparatus and method for computing a logarithm of a floating-point number
JP4755129B2 (ja) * 2007-03-16 2011-08-24 富士通株式会社 演算処理装置及び演算処理装置の制御方法
US9128790B2 (en) * 2009-01-30 2015-09-08 Intel Corporation Digital signal processor having instruction set with an exponential function using reduced look-up table
JP5304483B2 (ja) 2009-06-30 2013-10-02 富士通株式会社 演算処理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577250A (zh) * 2003-06-26 2005-02-09 国际商业机器公司 用于实现2的幂的浮点估计的系统与方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Design and synthesis of an IEEE-754 exponential function;BUI H ET AL;《ELECTRICAL AND COMPUTER ENGINEERING》;19990509;第450-455页 *
FPGA Implementation of 64-Bit Exponential Function for HPC;ERNEST JAMRO ET AL;《FIELD PROGRAMMABLE LOGIC AND APPLICATION》;20070801;第718-721页 *
Table-Driven Implementation of the Exponential Function in IEEE Floating-Point Arithmetic;TANG;《ACM TRANSACTION ON MATHEMATICAL SOFTWARE》;19890601;第144-157页 *
基于AltiVec的指数运算的设计与实现;高建波 等;《微电子学与计算机》;20100930;第27卷(第9期);第166-180页 *

Also Published As

Publication number Publication date
US9477442B2 (en) 2016-10-25
EP2833258A4 (en) 2015-03-18
EP2833258A1 (en) 2015-02-04
CN104169866A (zh) 2014-11-26
JP5794385B2 (ja) 2015-10-14
JPWO2013145276A1 (ja) 2015-08-03
EP2833258B1 (en) 2016-09-14
US20140379772A1 (en) 2014-12-25
WO2013145276A1 (ja) 2013-10-03

Similar Documents

Publication Publication Date Title
CN106951211B (zh) 一种可重构定浮点通用乘法器
JP5731937B2 (ja) ベクトル浮動小数点引数削減
CN107305484A (zh) 一种非线性函数运算装置及方法
CN104169866B (zh) 运算处理装置以及运算处理装置的控制方法
CN104778028B (zh) 乘加器
JP6933810B2 (ja) 演算処理装置および演算処理装置の制御方法
CN105468331A (zh) 独立的浮点转换单元
US8788561B2 (en) Arithmetic circuit, arithmetic processing apparatus and method of controlling arithmetic circuit
CN103180820A (zh) 用于执行浮点除法的方法和装置
US10416962B2 (en) Decimal and binary floating point arithmetic calculations
JP5640081B2 (ja) 飽和を伴う整数乗算および乗算加算演算
JP2006154979A (ja) 浮動小数点数演算回路
CN101326486A (zh) 进行浮点数的除法运算或平方根运算的运算装置和运算方法
US11645042B2 (en) Float division by constant integer
CN113076083A (zh) 数据乘加运算电路
JP7129138B2 (ja) 16ビット浮動小数点乗算器を用いた行列と行列の乗算による複数精度整数乗算器
EP2275924B1 (en) Processing unit
CN101371221A (zh) 预饱和固定点乘法器
GB2511314A (en) Fast fused-multiply-add pipeline
US8566385B2 (en) Decimal floating point multiplier and design structure
CN102693118A (zh) 一种标量浮点运算加速器
JP6497250B2 (ja) 演算処理装置および演算処理装置の制御方法
JP3793505B2 (ja) 演算器及びそれを用いた電子回路装置
JP4109181B2 (ja) 論理回路、および、それを使用した浮動小数点演算回路とマイクロプロセッサ
CN110321163A (zh) 输出值生成电路及方法、处理器以及计算机可读介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant