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

文档序号:8282254阅读:598来源:国知局
用于求解数学函数的计算机及方法
【专利说明】用于求解数学函数的计算机及方法
【背景技术】
[0001] -些计算机被用于执行复杂的数学函数,例如立方根和双曲三角函数。这些复杂 的数学函数需要许多循环来实现,这浪费时间并且使用大量能量。当计算机需要在短时期 内计算许多复杂函数时,计算复杂函数所要求的长时间造成了问题。例如,如果计算机被用 于引导飞机,计算机可能需要使用复杂函数计算来自多个传感器的俯仰、倾斜以及横滚。
[0002] 计算复杂函数所需要的高能量需求成为以有限电力供应例如电池来运行的计算 机的问题。复杂函数的计算需要许多循环,这主要利用电池。另外,高能量需求产生热,这 可以干扰计算机的运行。

【发明内容】

[0003] 本发明公开了用于执行数学函数的计算机和方法。计算机的实施例包括运算级和 驱动器级。运算级执行数学运算。驱动器级包括第一查找表和第二查找表,其中第一查找 表包括用于使用第一精度水平计算至少一个数学函数的第一数据。第二查找表包括用于使 用第二精度水平计算该至少一个数学函数的第二数据,其中第一精度水平高于第二精度水 平。驱动器执行来自第一查找表或者第二查找表的数据,并且向运算级发送指令。
【附图说明】
[0004] 图1是用于求解复杂数学函数的计算机的实施例的高级框图。
[0005] 图2是说明由图1的计算机的驱动器级计算的数学函数的示例的表。
[0006] 图3是说明由图1的计算机计算的复杂函数的示例的表。
[0007] 图4是当图1的计算机使用基本运算计算等式时其流图。
[0008] 图5是当图1的计算机计算函数sin(x)时其流图。
[0009] 图6是描述图1的计算机的操作的流程图。
【具体实施方式】
[0010] 本文中描述计算数学函数的计算机体系结构(有时在本文中被简单地称作计算 机)以及方法。计算机和方法使用不同选项提供计算数学函数。在本文所描述的实施例中, 第一选项使用高精度计算复杂函数。在这个选项中,许多指令必须被执行以计算单个复杂 函数,这使用了大量能量。第二选项使用较低精度计算复杂函数。第二选项不要求如高精 度选项那么多的指令,所以能够使用较少的能量较快地求解复杂函数。高精度计算要求更 多指令,并且因此通常需要比低精度计算更多的时间来完成。低精度计算使用比高精度计 算更少的能量,并且可以在能量节约为重的情况下(例如,当能量来自电池供电的电源时) 使用。这些情况包括其中在电池供电的器件上要求大量计算的情况。低精度选项使用比高 精度选项更少的能量,所以对电池的消耗更少。
[0011] 在某些实施例中,复杂函数被分解成使用简单函数的指令。例如,双曲正弦的计算 可以通过求解指数函数以及除法和减法运算来执行。在本文所描述的实施例中,对指数函 数的求解被存储在查找表中。因此,计算机不需要直接计算双曲正弦函数。相反,计算机仅 需要求解指数函数以及减法和除法运算,这比直接计算双曲正弦消耗更少的时间和能量。
[0012] 参考图1,图1是计算机100的框图。计算机100有时被称作计算机体系结构。在 图1的实施例中,计算机100包括三级:指令级102、驱动器级104以及运算级106。指令级 102接收指令以求解或者计算数学运算和函数,包括复杂的数学函数。在某些实施例中,指 令级102也接收数或者值,函数针对该数或值被求解。另外,指令级102接收关于是使用高 精度还是低精度求解函数的信息。
[0013] 复杂数学函数的示例包括双曲三角函数、立方根以及某些幂函数诸如2x。指令级 102包括有时被简单地称作控制器110的主控制器110,以及存储器112。控制器110具有 接收上述函数和数的输入端114。控制器110也具有输出由计算机100执行的计算的结果 的输出端116。指令级102可以具有不同的实施例。例如,在某些实施例中,指令级102是 或者包括专用指令集处理器(ASIP)。
[0014] 控制器110具有存储器112,或者经由控制器110上的端口 113和存储器112上的 端口 115访问存储器112。存储器112储存用于求解复杂函数的代码。在某些实施例中,控 制器110调用存储器112的指令以求解复杂函数,例如,Cosh(X)。存储器112具有所存储 的用于求解COSh(X)的指令,其在本文所描述的实施例中由以下等式示出:
【主权项】
1. 一种用于执行数学函数的计算机,所述计算机包括: 执行数学运算的运算级;W及 驱动器级,其包括: 第一查找表,其中所述第一查找表包括用于使用第一精度水平计算至少一个数学函数 的第一数据;W及 第二查找表,其中所述第二查找表包括用于使用第二精度水平计算所述至少一个数学 函数的第二数据,其中所述第一精度水平高于所述第二精度水平;W及 驱动器,其执行来自所述第一查找表和所述第二查找表的数据,并且其中所述驱动器 向所述运算级发送指令。
2. 根据权利要求1所述的计算机,其中所述第一数据和所述第二数据包括用于计算所 述至少一个数学函数的指令,并且其中所述第二数据包括比所述第一数据更少的指令。
3. 根据权利要求1所述的计算机,其中所述第一数据包括与计算所述至少一个数学函 数的第一数目的循环有关的指令,其中所述第二数据包括与计算所述至少一个数学函数的 第二数目的循环有关的指令,并且其中所述第一数目的循环大于所述第二数目的循环。
4. 根据权利要求1所述的计算机,其中在所述运算级中执行的数学运算是浮点运算。
5. 根据权利要求1所述的计算机,其中所述第一数据和所述第二数据包含至少一个指 令W在所述运算级中执行至少一个运算。
6. 根据权利要求1所述的计算机,其中执行所述第二查找表中的数据W便求解所述至 少一个函数使用比执行所述第一查找表中的数据W便求解所述至少一个函数更少的能量。
7. 根据权利要求1所述的计算机,其进一步包括指令级,所述指令级包括: 存储器,其包括使用储存在所述第一查找表和所述第二查找表中的数据来求解至少一 个复杂函数的指令;W及 控制器,其执行存储在所述存储器中的所述指令并且向所述驱动器发送指令。
8. 根据权利要求7所述的计算机,其中所述控制器接收包括将由所述计算机求解的函 数的指令。
9. 根据权利要求7所述的计算机,其中由所述控制器接收的所述指令进一步表明在求 解所述函数中是使用高精度还是使用低精度。
10. 根据权利要求9所述的计算机,其中当所述函数要使用高精度来求解时,所述控制 器指导所述驱动器W访问所述第一查找表,并且其中当所述函数要使用低精度来求解时, 所述控制器指导所述驱动器W访问所述第二查找表。
11. 根据权利要求7所述的计算机,其中由所述控制器接收的所述指令进一步表明在 求解所述函数时是使用高精度还是使用低能量。
12. 根据权利要求11所述的计算机,其中当所述函数要使用高精度来求解时,所述控 制器指导所述驱动器W访问所述第一查找表,并且其中当所述函数要使用低能量来求解 时,所述控制器指导所述驱动器W访问所述第二查找表。
13. 根据权利要求7所述的计算机,其中所述控制器向所述驱动器发送与求解所述函 数有关的指令,其中所述驱动器访问所述第一查找表或者所述第二查找表中的一个,并且 其中所述驱动器进一步访问所述运算级W为所述第一查找表或者所述第二查找表中的每 个数据执行运算。
14. 根据权利要求13所述的计算机,其中由所述运算级计算的结果被直接输出到所述 控制器。
15. 根据权利要求7所述的计算机,其中所述指令级是专用指令集处理器。
16. 根据权利要求1所述的计算机,所述驱动器级是状态机。
17. -种用于执行数学函数的计算机,所述计算机包括: 运算级; 驱动器级;W及 指令级; 所述指令级执行基本数学运算; 所述驱动器级包括: 第一查找表,其中所述第一查找表包括用于使用第一精度水平计算至少一个数学函数 的第一数据;W及 第二查找表,其中所述第二查找表包括用于使用第二精度水平计算所述至少一个数学 函数的第二数据,其中所述第一精度水平高于所述第二精度水平;W及 驱动器,其执行来自所述第一查找表和所述第二查找表的数据,并且其中所述驱动器 向所述运算级发送指令并且接收来自所述指令级的指令; 所述指令级包括: 储存用于求解复杂函数的指令的存储器; 执行存储在所述存储器中的指令并且向所述驱动器传输指令的控制器。
18. 根据权利要求17所述的计算机,其中所述控制器接收表明在求解所述函数中是使 用高精度还是使用低能量的指令,并且其中当所述函数要使用高精度来求解时,所述控制 器指导所述驱动器W访问所述第一查找表,并且其中当所述函数要使用低能量来求解时, 所述控制器指导所述驱动器W访问所述第二查找表。
19. 一种使用计算机求解数学函数的方法,所述方法包括: 接收将被求解的函数; 接收关于是使用高精度还是低精度求解所述函数的信息; 执行用于使用至少一个导出数学函数求解所述函数的指令; 如果所述函数要使用高精度来求解,则使用存储在第一查找表中的数据来执行所述导 出数学函数;W及 如果所述函数要使用低精度来求解,则使用存储在第二查找表中的数据来执行所述导 出数学函数。
20. 根据权利要求19所述的方法,其中使用存储在所述第一查找表中的数据来执行所 述导出数学函数包括使用比使用存储在所述第二查找表中的数据来执行所述导出数学函 数更多的能量。
【专利摘要】本发明公开了用于执行数学函数的计算机及方法。计算机的实施例包括运算级和驱动器级。运算级执行数学运算。驱动器级包括第一查找表和第二查找表,其中第一查找表包括用于使用第一精度水平计算至少一个数学函数的第一数据。第二查找表包括用于使用第二精度水平计算该至少一个数学函数的第二数据,其中第一精度水平高于第二精度水平。根据选定的精度水平,驱动器执行第一数据或者第二数据。
【IPC分类】G06F17-15
【公开号】CN104598432
【申请号】CN201410593399
【发明人】K·H·李, S-J·李, M·戈埃尔
【申请人】德克萨斯仪器股份有限公司
【公开日】2015年5月6日
【申请日】2014年10月29日
【公告号】US20150121043
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1