CN104598432A - 用于求解数学函数的计算机及方法 - Google Patents

用于求解数学函数的计算机及方法 Download PDF

Info

Publication number
CN104598432A
CN104598432A CN201410593399.9A CN201410593399A CN104598432A CN 104598432 A CN104598432 A CN 104598432A CN 201410593399 A CN201410593399 A CN 201410593399A CN 104598432 A CN104598432 A CN 104598432A
Authority
CN
China
Prior art keywords
function
look
level
instruction
computing
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.)
Granted
Application number
CN201410593399.9A
Other languages
English (en)
Other versions
CN104598432B (zh
Inventor
K·H·李
S-J·李
M·戈埃尔
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of CN104598432A publication Critical patent/CN104598432A/zh
Application granted granted Critical
Publication of CN104598432B publication Critical patent/CN104598432B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Nonlinear Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Advance Control (AREA)
  • Power Sources (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了用于执行数学函数的计算机及方法。计算机的实施例包括运算级和驱动器级。运算级执行数学运算。驱动器级包括第一查找表和第二查找表,其中第一查找表包括用于使用第一精度水平计算至少一个数学函数的第一数据。第二查找表包括用于使用第二精度水平计算该至少一个数学函数的第二数据,其中第一精度水平高于第二精度水平。根据选定的精度水平,驱动器执行第一数据或者第二数据。

Description

用于求解数学函数的计算机及方法
背景技术
一些计算机被用于执行复杂的数学函数,例如立方根和双曲三角函数。这些复杂的数学函数需要许多循环来实现,这浪费时间并且使用大量能量。当计算机需要在短时期内计算许多复杂函数时,计算复杂函数所要求的长时间造成了问题。例如,如果计算机被用于引导飞机,计算机可能需要使用复杂函数计算来自多个传感器的俯仰、倾斜以及横滚。
计算复杂函数所需要的高能量需求成为以有限电力供应例如电池来运行的计算机的问题。复杂函数的计算需要许多循环,这主要利用电池。另外,高能量需求产生热,这可以干扰计算机的运行。
发明内容
本发明公开了用于执行数学函数的计算机和方法。计算机的实施例包括运算级和驱动器级。运算级执行数学运算。驱动器级包括第一查找表和第二查找表,其中第一查找表包括用于使用第一精度水平计算至少一个数学函数的第一数据。第二查找表包括用于使用第二精度水平计算该至少一个数学函数的第二数据,其中第一精度水平高于第二精度水平。驱动器执行来自第一查找表或者第二查找表的数据,并且向运算级发送指令。
附图说明
图1是用于求解复杂数学函数的计算机的实施例的高级框图。
图2是说明由图1的计算机的驱动器级计算的数学函数的示例的表。
图3是说明由图1的计算机计算的复杂函数的示例的表。
图4是当图1的计算机使用基本运算计算等式时其流图。
图5是当图1的计算机计算函数sin(x)时其流图。
图6是描述图1的计算机的操作的流程图。
具体实施方式
本文中描述计算数学函数的计算机体系结构(有时在本文中被简单地称作计算机)以及方法。计算机和方法使用不同选项提供计算数学函数。在本文所描述的实施例中,第一选项使用高精度计算复杂函数。在这个选项中,许多指令必须被执行以计算单个复杂函数,这使用了大量能量。第二选项使用较低精度计算复杂函数。第二选项不要求如高精度选项那么多的指令,所以能够使用较少的能量较快地求解复杂函数。高精度计算要求更多指令,并且因此通常需要比低精度计算更多的时间来完成。低精度计算使用比高精度计算更少的能量,并且可以在能量节约为重的情况下(例如,当能量来自电池供电的电源时)使用。这些情况包括其中在电池供电的器件上要求大量计算的情况。低精度选项使用比高精度选项更少的能量,所以对电池的消耗更少。
在某些实施例中,复杂函数被分解成使用简单函数的指令。例如,双曲正弦的计算可以通过求解指数函数以及除法和减法运算来执行。在本文所描述的实施例中,对指数函数的求解被存储在查找表中。因此,计算机不需要直接计算双曲正弦函数。相反,计算机仅需要求解指数函数以及减法和除法运算,这比直接计算双曲正弦消耗更少的时间和能量。
参考图1,图1是计算机100的框图。计算机100有时被称作计算机体系结构。在图1的实施例中,计算机100包括三级:指令级102、驱动器级104以及运算级106。指令级102接收指令以求解或者计算数学运算和函数,包括复杂的数学函数。在某些实施例中,指令级102也接收数或者值,函数针对该数或值被求解。另外,指令级102接收关于是使用高精度还是低精度求解函数的信息。
复杂数学函数的示例包括双曲三角函数、立方根以及某些幂函数诸如2x。指令级102包括有时被简单地称作控制器110的主控制器110,以及存储器112。控制器110具有接收上述函数和数的输入端114。控制器110也具有输出由计算机100执行的计算的结果的输出端116。指令级102可以具有不同的实施例。例如,在某些实施例中,指令级102是或者包括专用指令集处理器(ASIP)。
控制器110具有存储器112,或者经由控制器110上的端口113和存储器112上的端口115访问存储器112。存储器112储存用于求解复杂函数的代码。在某些实施例中,控制器110调用存储器112的指令以求解复杂函数,例如,cosh(x)。存储器112具有所存储的用于求解cosh(x)的指令,其在本文所描述的实施例中由以下等式示出:
cosh ( x ) = e x - e - x 2        等式(1)
指令级102经由端口118和119与驱动器级104通信以求解某些函数。在等式(1)的示例中,驱动器级通过使用以下更加详细地描述的查找表来求解指数(exp)函数。在某些实施例中,驱动器级104是状态机。驱动器级104包括驱动器120和查找表122。当计算机100正在求解诸如等式(1)的复杂函数时,驱动器120与控制器110通信以接收来自存储器112的指令。在某些情况下,较简单的函数被求解,其不需要储存在存储器112中的指令,然而,驱动器120仍然可以接收来自控制器110的用于求解这些较简单函数的指令。
驱动器120与查找表122通信。存在包含以下所描述的不同基准数学函数(baseline math function)的信息或者指令的多个查找表122。在图1的实施例中,存在两个查找表,有时被称作LUT 124的第一查找表124,以及有时被称作LUT 126的第二查找表126。在图1的实施例中,LUT 124储存用于使用高精度函数来计算函数的信息或者指令,并且LUT 126储存用于使用低精度来计算函数(这消耗较少能量)的信息或者指令。例如,LUT 126可以返回32位数据并且LUT 124可以返回38位数据以便更高精度的计算。来自高精度计算的结果可以包括:1位用于符号、8位用于指数以及29位用于尾数。驱动器120经由端口123和125与LUT 124通信。驱动器120经由端口128和129与LUT 126通信。在某些实施例中,查找表122包含数学函数逼近的系数和数学函数实现的常数。在某些实施例中,查找表124和126包含关于求解储存在查找表124和126中的函数的指令,其中查找表124通常需要比查找表126更多指令以实现更加复杂的函数。
作为不同查找表的示例,指数(exp)函数被用来在高精度求解中使用第15阶泰勒级数并且在低精度求解中使用第3阶多项式曲线拟合来求解cosh(x)函数。多项式曲线拟合有时被称作多项式拟合。在本文所描述的实施例中,由驱动器120访问并且储存在查找表122中的相对简单的基准函数在图2中示出。由计算机100所执行的复杂函数在图3中示出,并且使用包括正弦、余弦、正切、余切、指数、自然对数以及平方根函数的基准函数来执行。如2所示,根据所需的精度和/或能量消耗,可以使用查找表124或者126来求解基准函数。
运算级106有时被称作处于计算机100的底层。在某些实施例中,运算级106是执行诸如加法、减法以及乘法的基本浮点运算的硬件加速器。运算级106包括执行这些运算的运算模块130。运算模块130经由端口132和134与驱动器120通信。运算模块130也经由端口136和138与控制器110通信。在图1的实施例中,运算模块130能够使用端口136和138将数据直接输出到控制器110,而不需要由驱动器120处理数据。
如以上说明的,运算级106使用运算模块130执行低层运算。在本文所描述的实施例中,运算模块130执行以下运算:
浮点加法和减法;
定点加法和减法;
浮点乘法;
浮点比较;
浮点到整数转换,其被用于在浮点数中归零小数部分;
浮点数的绝对值(x);
向右移动1位操作位,其被要求用于逆平方根和倒数运算;
两个浮点数的指数的加法,其被要求用于指数运算;
屏蔽指数到127,其被要求用于自然对数运算;
将指数转换到浮点数,其被要求用于自然对数运算;
否定计算输出;以及
以内部格式(29位尾数)和标准格式(23位尾数)取整结果。
基于能够在驱动器级104中执行的函数和能够在运算级106中执行的运算,计算机100能够求解多种复杂函数。由计算机100执行的复杂函数的示例实施例由图3中的表示出。图3中的表也示出用于求解复杂函数的派生或者导函数。导函数及其相关运算由驱动器级104中的驱动器120和运算级106中的运算模块130执行。在其他实施例中,用于求解不同于图3中所示的那些复杂函数的复杂函数的指令被编码到指令级102。总之,计算机100接收指令以求解如图3所示的复杂函数。计算机使用图3的导函数求解复杂函数。图3的导函数具有使用图2所示的查找表和运算级106中的运算求解的基准函数和运算。
已经描述了计算机100的组件,现将使用不同的示例描述其操作。参考图4,其示出了当输入端114处的数据和指令表明使用运算级106中的运算的数学运算将被计算时,通过计算机100的流。在输入端114处接收的数据和/指令由主控制器114分析。在这个实施例中,数据是两个数,并且指令是将这两个数相加。控制器110向运算模块130发送指令以执行加法运算。如图4所示,指令和/或数据通过驱动器120。在某些实施例中,数据和/或指令绕开驱动器120。在其他实施例中,驱动器120分析来自控制器110的指令和/或数据,并且将指令和/或数据传送到运算模块130。在某些实施例中,驱动器120将指令和数据设置为运算模块130能够容易执行的格式。
运算模块130通过执行运算执行指令。在这个实施例中,两个数相加在一起。如图4所示,结果被直接传送到控制器110,控制器110将结果发送到输出端116。在某些实施例中,控制器110向运算模块130发送指令,该指令指导由运算模块130计算的结果被直接发送到控制器110,以便绕过驱动器120。绕过驱动器120能够使计算机100比将结果传送到驱动器120的实施例更快地执行运算。
图5示出计算机100的操作的第二实施例,其中计算机100正在确定sin(x)。计算机100接收指令和数据,其中指令将执行正弦函数,并且数据是(x)的值。指令可以包括关于是使用高精度还是低精度执行正弦函数的数据。如上述的,低能量计算与低精度计算一样。参考图2的表,使用第16阶泰勒级数计算高精度正弦函数,并且使用第3阶拟合计算低精度正弦。
控制器110分析指令,并且确定函数在驱动器级104被执行。指令接着被发送到驱动器120以执行正弦函数。指令也说明是使用高精度还是低精度。驱动器120分析指令并且访问适当的查找表。如果需要高精度,则LUT 124被寻址并且使用第16阶泰勒级数来计算sin(x)函数。如果需要低精度或者低能量,则LUT 126被寻址,并且使用第3阶多项式拟合求解sin(x)函数。在使用泰勒级数或者多项式拟合时,驱动器120需要访问运算模块130中的运算诸如加法。在某些实施例中,驱动器120向运算模块130传输值以通过指令被相加,其和被传输到控制器110。驱动器120也向控制器110发送信号表明sin(x)函数的结果将由运算模块130输出。当来自运算模块130的结果被接收,该结果经由控制器110的输出端116输出。
在与图4有关的第三示例中,计算机100接收指令以求解复杂函数,例如x的双曲余弦或者cosh(x)。如以前的示例一样,指令可以包括是使用高还是低精度来计算cosh(x)函数。控制器110读取指令,并且确定该函数是复杂函数且需要使用储存在存储器112中的代码来求解。代码包括用于使用如图3所示的cosh(x)的导函数求解该函数的指令。控制器110执行有关求解等式(1)中所示的cosh(x)的代码。指令要求驱动器120执行函数ex和e-x。驱动器120使用运算模块130执行等式(1)所需的加法和除法。当运算模块120已经执行完最后的运算时,结果被发送到控制器110,在控制器110中结果被输出到输出端116。
图6的流程图200示出计算机100求解函数的操作。在框202中,接收将被求解的函数。在框204中,接收关于是使用高精度还是使用低精度求解函数的信息。在某些实施例中,框202和框204中的信息在一个步骤中被接收。在步骤206中,使用至少一个导出数学函数求解该函数的指令被执行。例如,图3所示的导出数学函数被用于求解复杂函数。在步骤208中,响应于使用高精度来求解函数,使用第一查找表中所储存的数据求解至少一个导出数学函数。在步骤210中,响应于使用低精度来求解函数,使用第二查找表中所储存的数据求解至少一个导出数学函数。查找表可以包括用于求解在上述的查找表中储存的基准函数的指令。
计算机100提供对复杂数学函数的高精度和低精度求解。在某些实施例如汽车传感器中,可能需要高精度计算。LUT 124储存高精度计算需要的信息。其他实施例不需要高精度且可能需要节约能量。例如,一些电池操作的器件可以使用LUT 126中的低精度信息操作,这可节约能量。
虽然在本文中已经具体描述了收集设备的说明性的和当前优选的实施例,但是应当理解的是,发明概念可以以其它方式多样地被体现和应用,并且随附的权利要求旨在被解释为包括除被现有技术所限制的范围内之外的此类修改。

Claims (20)

1.一种用于执行数学函数的计算机,所述计算机包括:
执行数学运算的运算级;以及
驱动器级,其包括:
第一查找表,其中所述第一查找表包括用于使用第一精度水平计算至少一个数学函数的第一数据;以及
第二查找表,其中所述第二查找表包括用于使用第二精度水平计算所述至少一个数学函数的第二数据,其中所述第一精度水平高于所述第二精度水平;以及
驱动器,其执行来自所述第一查找表和所述第二查找表的数据,并且其中所述驱动器向所述运算级发送指令。
2.根据权利要求1所述的计算机,其中所述第一数据和所述第二数据包括用于计算所述至少一个数学函数的指令,并且其中所述第二数据包括比所述第一数据更少的指令。
3.根据权利要求1所述的计算机,其中所述第一数据包括与计算所述至少一个数学函数的第一数目的循环有关的指令,其中所述第二数据包括与计算所述至少一个数学函数的第二数目的循环有关的指令,并且其中所述第一数目的循环大于所述第二数目的循环。
4.根据权利要求1所述的计算机,其中在所述运算级中执行的数学运算是浮点运算。
5.根据权利要求1所述的计算机,其中所述第一数据和所述第二数据包含至少一个指令以在所述运算级中执行至少一个运算。
6.根据权利要求1所述的计算机,其中执行所述第二查找表中的数据以便求解所述至少一个函数使用比执行所述第一查找表中的数据以便求解所述至少一个函数更少的能量。
7.根据权利要求1所述的计算机,其进一步包括指令级,所述指令级包括:
存储器,其包括使用储存在所述第一查找表和所述第二查找表中的数据来求解至少一个复杂函数的指令;以及
控制器,其执行存储在所述存储器中的所述指令并且向所述驱动器发送指令。
8.根据权利要求7所述的计算机,其中所述控制器接收包括将由所述计算机求解的函数的指令。
9.根据权利要求7所述的计算机,其中由所述控制器接收的所述指令进一步表明在求解所述函数中是使用高精度还是使用低精度。
10.根据权利要求9所述的计算机,其中当所述函数要使用高精度来求解时,所述控制器指导所述驱动器以访问所述第一查找表,并且其中当所述函数要使用低精度来求解时,所述控制器指导所述驱动器以访问所述第二查找表。
11.根据权利要求7所述的计算机,其中由所述控制器接收的所述指令进一步表明在求解所述函数时是使用高精度还是使用低能量。
12.根据权利要求11所述的计算机,其中当所述函数要使用高精度来求解时,所述控制器指导所述驱动器以访问所述第一查找表,并且其中当所述函数要使用低能量来求解时,所述控制器指导所述驱动器以访问所述第二查找表。
13.根据权利要求7所述的计算机,其中所述控制器向所述驱动器发送与求解所述函数有关的指令,其中所述驱动器访问所述第一查找表或者所述第二查找表中的一个,并且其中所述驱动器进一步访问所述运算级以为所述第一查找表或者所述第二查找表中的每个数据执行运算。
14.根据权利要求13所述的计算机,其中由所述运算级计算的结果被直接输出到所述控制器。
15.根据权利要求7所述的计算机,其中所述指令级是专用指令集处理器。
16.根据权利要求1所述的计算机,所述驱动器级是状态机。
17.一种用于执行数学函数的计算机,所述计算机包括:
运算级;
驱动器级;以及
指令级;
所述指令级执行基本数学运算;
所述驱动器级包括:
第一查找表,其中所述第一查找表包括用于使用第一精度水平计算至少一个数学函数的第一数据;以及
第二查找表,其中所述第二查找表包括用于使用第二精度水平计算所述至少一个数学函数的第二数据,其中所述第一精度水平高于所述第二精度水平;以及
驱动器,其执行来自所述第一查找表和所述第二查找表的数据,并且其中所述驱动器向所述运算级发送指令并且接收来自所述指令级的指令;
所述指令级包括:
储存用于求解复杂函数的指令的存储器;
执行存储在所述存储器中的指令并且向所述驱动器传输指令的控制器。
18.根据权利要求17所述的计算机,其中所述控制器接收表明在求解所述函数中是使用高精度还是使用低能量的指令,并且其中当所述函数要使用高精度来求解时,所述控制器指导所述驱动器以访问所述第一查找表,并且其中当所述函数要使用低能量来求解时,所述控制器指导所述驱动器以访问所述第二查找表。
19.一种使用计算机求解数学函数的方法,所述方法包括:
接收将被求解的函数;
接收关于是使用高精度还是低精度求解所述函数的信息;
执行用于使用至少一个导出数学函数求解所述函数的指令;
如果所述函数要使用高精度来求解,则使用存储在第一查找表中的数据来执行所述导出数学函数;以及
如果所述函数要使用低精度来求解,则使用存储在第二查找表中的数据来执行所述导出数学函数。
20.根据权利要求19所述的方法,其中使用存储在所述第一查找表中的数据来执行所述导出数学函数包括使用比使用存储在所述第二查找表中的数据来执行所述导出数学函数更多的能量。
CN201410593399.9A 2013-10-30 2014-10-29 用于求解数学函数的计算机及方法 Active CN104598432B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/067,343 US9606796B2 (en) 2013-10-30 2013-10-30 Computer and methods for solving math functions
US14/067,343 2013-10-30

Publications (2)

Publication Number Publication Date
CN104598432A true CN104598432A (zh) 2015-05-06
CN104598432B CN104598432B (zh) 2022-04-15

Family

ID=52996811

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410593399.9A Active CN104598432B (zh) 2013-10-30 2014-10-29 用于求解数学函数的计算机及方法

Country Status (2)

Country Link
US (2) US9606796B2 (zh)
CN (1) CN104598432B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106383809A (zh) * 2016-12-07 2017-02-08 西安科技大学 一种用于求解数学函数的系统的求解方法

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11847427B2 (en) 2015-04-04 2023-12-19 Texas Instruments Incorporated Load store circuit with dedicated single or dual bit shift circuit and opcodes for low power accelerator processor
US9952865B2 (en) 2015-04-04 2018-04-24 Texas Instruments Incorporated Low energy accelerator processor architecture with short parallel instruction word and non-orthogonal register data file
US9817791B2 (en) 2015-04-04 2017-11-14 Texas Instruments Incorporated Low energy accelerator processor architecture with short parallel instruction word
US10503474B2 (en) 2015-12-31 2019-12-10 Texas Instruments Incorporated Methods and instructions for 32-bit arithmetic support using 16-bit multiply and 32-bit addition
US11527523B2 (en) 2018-12-10 2022-12-13 HangZhou HaiCun Information Technology Co., Ltd. Discrete three-dimensional processor
US11080229B2 (en) 2016-02-13 2021-08-03 HangZhou HaiCun Information Technology Co., Ltd. Processor for calculating mathematical functions in parallel
US10848158B2 (en) 2016-02-13 2020-11-24 HangZhou HaiCun Information Technology Co., Ltd. Configurable processor
US11966715B2 (en) 2016-02-13 2024-04-23 HangZhou HaiCun Information Technology Co., Ltd. Three-dimensional processor for parallel computing
US10763861B2 (en) 2016-02-13 2020-09-01 HangZhou HaiCun Information Technology Co., Ltd. Processor comprising three-dimensional memory (3D-M) array
US10445067B2 (en) 2016-05-06 2019-10-15 HangZhou HaiCun Information Technology Co., Ltd. Configurable processor with in-package look-up table
US10372359B2 (en) 2016-05-10 2019-08-06 Chengdu Haicun Ip Technology Llc Processor for realizing at least two categories of functions
US10401412B2 (en) 2016-12-16 2019-09-03 Texas Instruments Incorporated Line fault signature analysis
US10949766B2 (en) * 2017-10-15 2021-03-16 Gsi Technology Inc. Precise exponent and exact softmax computation
US11296068B2 (en) 2018-12-10 2022-04-05 HangZhou HaiCun Information Technology Co., Ltd. Discrete three-dimensional processor
US11734550B2 (en) 2018-12-10 2023-08-22 HangZhou HaiCun Information Technology Co., Ltd. Discrete three-dimensional processor

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5235535A (en) * 1990-01-08 1993-08-10 Nec Corporation Arithmetic operation apparatus for elementary function
CN1741394A (zh) * 2005-09-16 2006-03-01 北京中星微电子有限公司 一种计算反量化公式中的非线性函数的方法
CN1838024A (zh) * 2005-09-09 2006-09-27 威盛电子股份有限公司 对数处理系统和方法
CN1862483A (zh) * 2005-05-12 2006-11-15 国际商业机器公司 具有有效的函数估计指令的处理器
CN101154937A (zh) * 2006-09-28 2008-04-02 雅马哈株式会社 数字滤波器
US20080228846A1 (en) * 2007-03-16 2008-09-18 Fujitsu Limited Processing apparatus and control method thereof
WO2013095463A1 (en) * 2011-12-21 2013-06-27 Intel Corporation Math circuit for estimating a transcendental function
CN103365827A (zh) * 2013-06-27 2013-10-23 北京航空航天大学 一种高精度正弦/余弦函数的计算方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5304483B2 (ja) * 2009-06-30 2013-10-02 富士通株式会社 演算処理装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5235535A (en) * 1990-01-08 1993-08-10 Nec Corporation Arithmetic operation apparatus for elementary function
CN1862483A (zh) * 2005-05-12 2006-11-15 国际商业机器公司 具有有效的函数估计指令的处理器
CN1838024A (zh) * 2005-09-09 2006-09-27 威盛电子股份有限公司 对数处理系统和方法
CN1741394A (zh) * 2005-09-16 2006-03-01 北京中星微电子有限公司 一种计算反量化公式中的非线性函数的方法
CN101154937A (zh) * 2006-09-28 2008-04-02 雅马哈株式会社 数字滤波器
US20080228846A1 (en) * 2007-03-16 2008-09-18 Fujitsu Limited Processing apparatus and control method thereof
WO2013095463A1 (en) * 2011-12-21 2013-06-27 Intel Corporation Math circuit for estimating a transcendental function
CN103365827A (zh) * 2013-06-27 2013-10-23 北京航空航天大学 一种高精度正弦/余弦函数的计算方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
TSUTOMU SASAO等: "Numerical Function Generators Using LUT Cascades", 《IEEE TRANSACTIONS ON COMPUTERS》 *
李良 等: "基于Taylor公式的正弦函数任意精度快速算法", 《软件导刊》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106383809A (zh) * 2016-12-07 2017-02-08 西安科技大学 一种用于求解数学函数的系统的求解方法

Also Published As

Publication number Publication date
US10430494B2 (en) 2019-10-01
US9606796B2 (en) 2017-03-28
US20170147532A1 (en) 2017-05-25
US20150121043A1 (en) 2015-04-30
CN104598432B (zh) 2022-04-15

Similar Documents

Publication Publication Date Title
CN104598432A (zh) 用于求解数学函数的计算机及方法
US9753695B2 (en) Datapath circuit for digital signal processors
CN107305484B (zh) 一种非线性函数运算装置及方法
US8805914B2 (en) Method and apparatus for performing numerical calculations
CN103677738A (zh) 基于混合模式cordic算法的低延时基本超越函数实现方法及装置
EP3447634A1 (en) Non-linear function computing device and method
Zang et al. On spectral multigrid methods for the time-dependent Navier-Stokes equations
US9639328B2 (en) Multiplication circuit providing dynamic truncation
CN103135960A (zh) 一种基于fpga的集成浮点运算器的设计方法
US20140280430A1 (en) Multiplier Circuit with Dynamic Energy Consumption Adjustment
CN104048777A (zh) 用于ntc型热敏电阻的温度与电阻值转换方法
CN104166535B (zh) 定点处理器及其防溢方法
CN102566965B (zh) 一种误差平坦的浮点数对数运算装置
CN104375800A (zh) 一种嵌入式系统的浮点除法运算方法、系统和嵌入式系统
CN103809931A (zh) 一种专用高速浮点指数运算器的设计
CN103365826B (zh) 一种小面积的基-3fft蝶形单元
CN101142547B (zh) 以浮点数据类型计算2的乘方的快速方法
CN104182201A (zh) 尤其在模型计算单元中纯基于硬件计算函数模型的fma单元
CN104615404A (zh) 一种基于查表操作的高速浮点除法部件装置
Slatnia et al. Improving Prediction and classification of Water Quality Indices using Hybrid Machine learning Algorithms with features selection analysis
KR100943580B1 (ko) 제곱근 계산 장치 및 방법
Sánchez et al. A reconfigurable system approach to the direct kinematics of a 5 dof robotic manipulator
Gay Automatically finding and exploiting partially separable structure in nonlinear programming problems
Thacher Jr 5.6 Making Special Arithmetics Available
Kakade et al. Analytical Method for Efficient Development of Optimal Fixed-Point Software and its Application

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