CN107562408A - 支持可中断浮点除法的架构及指令集 - Google Patents

支持可中断浮点除法的架构及指令集 Download PDF

Info

Publication number
CN107562408A
CN107562408A CN201710463332.7A CN201710463332A CN107562408A CN 107562408 A CN107562408 A CN 107562408A CN 201710463332 A CN201710463332 A CN 201710463332A CN 107562408 A CN107562408 A CN 107562408A
Authority
CN
China
Prior art keywords
mantissa
core
instruction
business
symbol
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
CN201710463332.7A
Other languages
English (en)
Other versions
CN107562408B (zh
Inventor
P·维斯瓦纳坦·皮莱
V·纳塔拉詹
A·泰萨格洛
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 CN107562408A publication Critical patent/CN107562408A/zh
Application granted granted Critical
Publication of CN107562408B publication Critical patent/CN107562408B/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/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/4873Dividing

Landscapes

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

Abstract

一种处理器(100)(及方法)包含通过执行各种指令执行浮点除法的核心(102)。所述指令包含符号、指数及尾数SEM分离指令(108),其致使所述核心从分子及分母浮点数提取所述符号、指数及尾数值。所述指令还包含无符号尾数除法指令(110),其致使所述核心迭代地执行条件减法运算以计算指示商的尾数的值。所述指令进一步包含归并指令(112),其致使所述核心使用从所述SEM分离指令提取的所述符号及指数及指示所述商的所述尾数的所述值生成商浮点数。

Description

支持可中断浮点除法的架构及指令集
技术领域
背景技术
例如许多数字信号处理(DSP)应用的一些应用受益于支持双精度浮点除法运算。一些实施方案可包含基于查找表的曲线拟合方法、基于运用牛顿-拉斐逊技术的初始估计的函数迭代法及基于条件减法的软件方法。使用上文提及的技术中的一或多者实现具有例如如由IEEE754标准定义的0.5ULP的最大误差的双精度可涉及显著开销及/或延时。
发明内容
在一些实施例中,一种处理器包括:核心,其经配置以执行浮点除法运算,其包含:符号、指数及尾数(SEM)分离指令,其致使所述核心从分子及分母浮点数提取所述符号、指数及尾数值;无符号尾数除法指令,其致使所述核心迭代地执行条件减法运算以计算指示商的尾数的值;及归并指令,其致使所述核心使用从所述SEM分离指令提取的所述符号及指数的值及指示所述商的所述尾数的所述值生成商浮点数。
另一实施例涉及一种处理器,其包含核心及经配置以存储浮点分子的第一寄存器及经配置以存储浮点分母的第二寄存器。所述核心经配置以使用所述第一及第二寄存器执行浮点除法运算,所述浮点除法运算包含多次执行无符号尾数除法指令,其致使所述核心使用所述第一及第二寄存器迭代地执行条件减法运算以计算指示所述商的尾数的值。
又另一实施例涉及一种实施于处理器核心上的方法。所述方法包含:执行符号、指数及尾数(SEM)分离指令,其致使所述核心从分子及分母浮点数提取所述符号、指数及尾数值;执行无符号尾数除法指令,其致使所述核心迭代地执行条件减法运算以计算指示所述商的尾数的值;及执行归并指令,其致使所述核心使用从所述SEM分离指令提取的所述符号及指数及指示所述商的所述尾数的所述值产生商浮点数。
附图说明
为了详细地描述各种实例,现将参考附图,其中:
图1展示根据各种实例的处理器的框图,所述处理器可执行包含符号、指数及尾数分离指令、无符号尾数除法指令及归并指令的指令;
图2说明根据各种实例的包含浮点除法运算中的分子及分母值的寄存器的使用;
图3说明执行浮点除法的实施例;
图4展示根据各种实例的实施符号、指数及尾数分离指令的方法;
图5展示实施无符号尾数除法指令的方法;及
图6展示根据各种实例实施归并指令的方法,所述指令归并所得符号、指数及尾数值以形成所得浮点商。
具体实施方式
贯穿以下描述及权利要求书使用某些术语指代特定系统组件。如所属领域的技术人员应了解,不同公司可通过不同命名来指代组件。本档案不希望在命名不同但作用相同的组件之间作出区分。在下文论述及权利要求书中,以开放方式使用术语“包含”及“包括”,且因此,不应将所述术语解译为意味着“包含但不限于”。此外,术语“耦合”希望意味着间接或直接有线连接或无线连接。因此,如果第一装置耦合到第二装置,那么那个连接可为通过直接连接或通过经由其它装置及连接的间接连接。
所揭示的实施例涉及一种通过执行各种指令在处理器中实施浮点除法的技术。在一个实例中,所述指令包含符号、指数及尾数(SEM)分离指令,其从分子及分母浮点值提取符号、指数及尾数值。接着,通过重复执行无符号尾数除法指令对所述分子及分母的尾数做除法。无符号尾数除法指令可执行尾数除法过程的三次迭代,且多次执行所述指令以获得商的尾数的充足位。接着,可执行归并指令以将符号、指数及尾数值归并在一起以形成所得商。
本文所描述的部分实例是关于一种64位浮点除法技术,其中位[63]包含符号位,位[62:52]包含指数位,且位[51:0]包含隐含1的尾数。即,尾数可呈1.M的形式,且前导1未明确地包含于64位表示法中,在此实例中,代替地隐含前导1。本文所描述的浮点除法技术可延伸到具有更少或更多位、不同数目个指数及尾数位的其它浮点表示法等等。
图1展示根据实施例的处理器100的框图。如所展示,处理器100包含含有多个寄存器104的核心102。核心102可还含有其它硬件组件,例如减法器、比较器、提取逻辑、解码逻辑、算术逻辑单元(ALU)等等。核心102可执行可存储于位于核心102内或可由核心102以其它方式进行存取的存储器中的各种机器指令106。机器指令106包括指令集,其包含可执行多种运算的指令。可通过来自指令集的一系列指令实施的一个函数是浮点除法(例如,双精度浮点除法)。在至少一些实施例中,通过执行符号、指数及尾数(SEM)分离指令108、无符号尾数除法指令110及归并指令112中的一或多个实例实施由处理器102执行的浮点除法运算,下文解释全部所述指令。
可由处理器100执行的浮点除法过程包含处理器用浮点分子值(NUM)值除浮点分母值(DEN)。NUM及DEN可为如上文所述的64位浮点数。除法的结果是浮点商(QUO)。SEM分离指令108使用NUM及DEN符号位计算所得浮点QUO的符号位。SEM分离指令108还从NUM及DEN提取指数位,且使用所述指数位来计算指示所得QUO的值。最后,提取NUM及DEN尾数。接着,多次执行无符号尾数除法指令110以用NUM的尾数除DEN的尾数。可将此指令实施为条件减法运算。在NUM及DEN是64位浮点值且无符号尾数除法指令100能够在一个循环中执行除法过程的三次迭代的实例中,可执行无符号除法指令100 19次以在考虑可能需要进行的四舍五入的情况下为尾数产生充足数目个尾数位。在NUM及DEN尾数的无符号除法之后,处理器核心102执行归并指令以将符号、指数及商的尾数值归并在一起。归并运算将符号、指数及尾数值汇编到一个寄存器104中。
图2描绘使用寄存器104执行如本文所描述的浮点除法过程120。NUM存储在在此实例中标示为R2的寄存器104中,且DEN存储在寄存器R3中。在浮点除法运算期间还使用另一寄存器R0存储NUM与DEN的指数之间的差值。NUM与DEN指数中的差值是商QUO的指数,其可基于所得商尾数是否具有作为其MSB的0或1而进行调整。浮点除法运算的完成导致寄存器R1中的商QUO。可将寄存器104实施为移位寄存器。
图3展示实施本文所描述的浮点除法过程的流程图。处理器100可通过执行指令执行图3中所展示的运算,如所展示。在130处,方法包含执行SEM分离指令。在一些实施例中,可执行此指令一次。在132处,方法包含执行无符号尾数除法指令。如所展示,可重复执行此指令n次。在一些实施例中,执行此指令19次,且因此n是18(即,指令最初执行一次,且接着重复18次,总共执行指令19次)。在完成分子及分母尾数的除法之后,在134处执行归并指令以产生所得浮点商值。SEM、无符号尾数除法及归并指令中的每一者可在单个时钟循环中执行,且因此,浮点除法运算有利地可在执行这些指令中的任何者之后且在执行下一指令之前立即中断。
图4展示可由核心102执行以实施SEM分离指令的各种运算的实例。可按所展示的顺序或按不同顺序执行运算。此外,可同时执行而非循序地执行运算中的两个或两个以上运算。在140处,将寄存器R1(例如,寄存器104中的一者)初始化成值0。在执行尾数无符号除法指令期间将使用寄存器R1。在142处,计算符号标记(TF)作为分子符号位(Sn)与分母符号位(Sd)的异或。符号位可为64位浮点表示法中的位[63]。分子符号位与分母符号位的异或表示所得商的符号。保存TF标记位,且在后续归并指令期间使用所述TF标记位以给予商正确符号位。
在144处,计算分子(En)的指数与分母(Ed)的指数之间的差值,其中所得差值被填充到寄存器R0(寄存器104中的另一者)中。在146处,符号及指数位(其信息已在操作142及144中保存及/或使用)由含有浮点分子及分母的寄存器遮蔽。寄存器R2含有浮点分子,且运算146致使含有分子的符号及指数位的位被清除(0)。可通过使寄存器R2与在对应于符号及指数位的所有位位置中具有0且在所有其它位位置中具有1的值执行逻辑与运算来执行此运算。类似地,寄存器R3含有浮点分母,且运算146还致使清除含有分母的符号及指数位的位字段被清除(例如,也通过与函数)。还可能需要调整尾数以迫使其具有隐含‘1’作为其MSB使其呈1.M.的形式。因而,在此实例中,寄存器R2及R3分别仅含有分子及分母的尾数。在148处,寄存器R3(其含有分母的尾数)左移1位。此左移使用无符号除法运算为商产生正确尾数。在左移之后,寄存器R2中的值将小于寄存器R1中的值,且最早的两个条件减法运算中的至少一者将导致‘1’。
图5说明由核心102执行的执行无符号尾数除法指令110的运算。如所展示那样,过程本质上是迭代的。如上文所解释,在此实例中,分子的尾数存储到寄存器R2中,且分母的尾数存储到寄存器R3中。在160处,核心将临时变量(Temp)设置成等于从已左移1位的寄存器R2中的值(分子的尾数)减去的寄存器R3中的值(分母的尾数)。Temp可为55位值,如此实例中所展示(即,Temp(54:0))。
在162处,过程确定Temp的新值是否大于或等于0。如果Temp大于或等于0,那么在164处,将寄存器R2设置成Temp的下54位,即,(R2)=(temp(53:0))。此外,寄存器R1左移1位,且接着,在166处,将1加到寄存器R1的值。另一方面,如果Temp小于0,那么在168处,过程包含左移(R2:R1)1位。即,寄存器R1左移1位,其中来自R1的最高有效位移位到R2的最低有效位中,且R2也左移1位。
在执行运算166或168之后,控制回路回到160,且过程重复。过程可重复X次。在单个时钟循环中由核心102执行尾数无符号除法指令的单次执行的迭代。在一些实施例中,执行三次(即,X=2)图5的过程,但可重复任何适当数目次用于部分计算商的尾数的过程的迭代次数。为了完整计算商的尾数,可多次执行尾数无符号除法指令。在一个实例中,执行19次无符号尾数除法指令,其中每一执行包括三次迭代。在此实例中,计算商的尾数的57个位,其提供适于执行四舍五入运算的额外位。在执行所期望次尾数无符号除法指令以产生完整商尾数之后,寄存器R1含有商的尾数。
图6说明实施归并指令的实例。核心102执行图6的实例中所展示的各种运算,且按所展示的顺序或按不同顺序执行所述运算。在170处,寄存器R1右移1位以考虑由于执行尾数无符号除法指令而导致的额外移位。
在172处,检查寄存器R1的位55(针对64位浮点格式)。如果位55是0,那么在174处,先前作为寄存器R0中的SEM指令的部分所计算的商的指数递减1。如果位55不是0,那么在173处使寄存器R1的内容右移。在R1中具有55个位,仅需要位[54:2]。
如果在176处指定四舍五入(例如,通过先前指定为1的四舍五入标记RND)及检查所述四舍五入,那么在运算178处执行四舍五入。在一个实施例中,四舍五入可包含将1加到位2,这等效于将0x2加到R1。还可通过根据以下表检查寄存器R1及R2的值来执行四舍五入。这将有助于获得例如0.5单位级精度(ULP)内的准确商尾数。下文所揭示的技术使用R1[2:2]及R2[55:0]的值确定是否对商的尾数进行四舍五入。对R1位[-1,-2]的参考涉及右移到有效性比商的尾数的最低有效位更低的位置的位。
四舍五入条件
R1[2]是商的最低有效位,而R1[1:-2]是在上文所描述的条件减法运算期间计算的额外商位。标记为“R1[2:1]”的列列出这两个位的值(00、01、10、11)。标记为“R1[0:-2]、R2[55:0]”的列是指全部这59个位是否是0,或59个位中的至少一个是否是1。标记为“四舍五入到最近的偶数”的最后一列指定是否将在R1中的商尾数位保持原样(无四舍五入)或是否将1加到商的尾数的最低有效位,其为R1[2]。因为商的尾数的最低有效位是R1[2],可通过将0x4(二进制100)加到寄存器R1来实现将1加到那个位。
核心102检查上文所述的位,且在被指示时执行四舍五入。如果R1[2:1]是00或10,那么核心102不对商的尾数的最低有效位进行四舍五入。如果R1[2:1]是11,那么CPU核心执行四舍五入。如果R1[2:1]是01,那么核心不执行四舍五入。如果全部位R1[0]、R2[55:0]都是0,但如果R1[0]、R2[55:0]中的至少一个位是1,那么核心对商的尾数的最低有效位(R1[2])进行四舍五入。
在180处,寄存器R1右移以移除位[1:0],且仅使用位[54:2]。因此,尾数在寄存器R1的位[52:0]中。最后,在182处,通过归并符号、指数及尾数在寄存器R1中形成商的全浮动值。举例来说,移除商的尾数(当前位[52])中的隐含1。可通过R1与0x000FFFFFFFFFFFFF的与运算移除隐含1。经计算且存储到寄存器R0中的指数位放置到R1的位位置[62:52]中。此外,将(在执行SEM指令以指定商的符号期间计算的)TF标记的值放置到寄存器R1中的位63中。
本文所描述的浮点除法运算涉及执行无符号除法指令,其本身被实施为条件减法指令。还可使用条件减法指令执行整数除法,例如,以引用方式并入本文中的标题为“支持整数除法的架构及指令集(Architecture and Instruction Set to Support IntegerDivision)”的序列号为15/142,047的美国专利申请案中所描述的条件减法指令。因此,也可使用实施整数除法的条件减法指令的核心内的数据路径执行浮点除法。
上文论述意在说明本发明的原理及各种实施例。所属领域的技术人员在完全了解上文揭示内容之后将变得明白众多变化及修改。希望将所附权利要求书解释为包含全部此类变化及修改。

Claims (20)

1.一种处理器,其包括:
核心;
其中所述核心经配置以执行浮点除法运算,其包含:符号、指数及尾数SEM分离指令,其致使所述核心从分子及分母浮点数提取所述符号、指数及尾数值;无符号尾数除法指令,其致使所述核心迭代地执行条件减法运算以计算指示商的尾数的值;及归并指令,其致使所述核心使用从所述SEM分离指令提取的所述符号及指示来自所述SEM分离指令的指数的值及指示所述商的所述尾数的所述值生成商浮点数。
2.根据权利要求1所述的系统,其中所述SEM分离指令、无符号尾数除法指令及所述归并指令中的每一者可在单个时钟循环中执行。
3.根据权利要求1所述的系统,其中所述条件减法运算导致尾数及有效性小于所述尾数的最低有效位的两个额外位,且其中所述归并指令经配置以致使所述核心确定是否基于来自所述条件减法运算的余数的值、所述商的所述尾数的所述最低有效位及所述两个额外位对所述商的所述尾数的最低有效位进行四舍五入。
4.根据权利要求1所述的系统,其中所述归并指令经配置以致使所述核心确定所述商的所述尾数的最高有效位是0。
5.根据权利要求4所述的系统,其中所述SEM指令致使所述核心计算从所述分子及分母浮点数提取的所述指数之间的差值,且其中所述归并指令经配置以致使所述核心还从所述差值减去1以计算所述商浮点数的所述指数。
6.根据权利要求5所述的系统,其中所述SEM指令致使所述核心计算从所述分子及分母浮点数提取的所述符号的异或值。
7.根据权利要求6所述的系统,其中所述归并指令致使所述核心使用通过使用所述异或值提取的所述符号产生所述商浮点数。
8.一种处理器,其包括:
核心;
经配置以存储浮点分子的第一寄存器,经配置以存储浮点分母的第二寄存器;
其中所述核心经配置以使用所述第一及第二寄存器执行浮点除法运算,所述浮点除法运算包含多次执行无符号尾数除法指令,其致使所述核心使用所述第一及第二寄存器迭代地执行条件减法运算以计算指示所述商的尾数的值。
9.根据权利要求8所述的处理器,其中所述核心经配置以执行符号、指数及尾数SEM分离指令,其致使所述核心从所述第一寄存器的所述浮点分子及所述第二寄存器的所述浮点分母提取所述符号、指数及尾数值。
10.根据权利要求9所述的处理器,其中所述SEM分离指令致使所述核心计算从所述浮点分子及所述浮点分母提取的所述指数之间的差值。
11.根据权利要求10所述的处理器,其中所述SEM分离指令致使所述核心计算从所述浮点分子及所述浮点分母提取的所述符号的异或值。
12.根据权利要求11所述的处理器,其中所述核心经配置以执行归并指令,其致使所述核心使用所述异或值、所述经提取指数与指示所述商的所述尾数的所述值之间的所述差值产生商浮点值。
13.根据权利要求10所述的处理器,其中所述归并指令经配置以致使所述核心至少基于来源于所述迭代条件减法运算的余数确定是否对待用于所述商的尾数的最低有效位进行四舍五入。
14.根据权利要求13所述的处理器,其中所述归并指令经配置以致使所述核心还基于所述最低有效位及来源于有效性小于待用于所述商的尾数的所述最低有效位的所述迭代条件减法运算的所述值的至少一个额外位确定是否对所述最低有效位进行四舍五入。
15.根据权利要求8所述的处理器,其中所述无符号尾数除法指令可在单个时钟循环中执行。
16.一种实施于处理器核心上的方法,其包括:
执行符号、指数及尾数SEM分离指令,其致使所述核心从分子及分母浮点数提取所述符号、指数及尾数值;
执行无符号尾数除法指令,其致使所述核心迭代地执行条件减法运算以计算指示所述商的尾数的值;及
执行归并指令,其致使所述核心使用从所述SEM分离指令提取的所述符号及指数及指示所述商的所述尾数的所述值产生商浮点数。
17.根据权利要求16所述的方法,其中在执行所述归并指令之前多次执行所述无符号尾数除法指令。
18.根据权利要求16所述的方法,其中执行所述归并指令致使所述核心至少基于来自所述条件减法运算的余数值及所述商的所述尾数的所述最低有效位确定是否对所述商的所述尾数的最低有效位进行四舍五入。
19.根据权利要求16所述的方法,其中执行所述SEM指令致使所述核心计算从所述分子及分母浮点值提取的所述指数之间的所述差值,且其中执行所述归并指令致使所述核心确定所述商的尾数的所述最高有效位是否是零,且如果是零,那么从所述差值减去1以计算所述商浮点数的所述指数。
20.根据权利要求16所述的方法,其中执行所述SEM指令致使所述核心计算从所述分子及分母浮点数提取的所述符号的异或值,且其中执行所述归并指令致使所述核心使用异或值产生所述商浮点数。
CN201710463332.7A 2016-06-30 2017-06-19 支持可中断浮点除法的实现方法及系统 Active CN107562408B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/198,070 US10635395B2 (en) 2016-06-30 2016-06-30 Architecture and instruction set to support interruptible floating point division
US15/198,070 2016-06-30

Publications (2)

Publication Number Publication Date
CN107562408A true CN107562408A (zh) 2018-01-09
CN107562408B CN107562408B (zh) 2023-09-12

Family

ID=60807614

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710463332.7A Active CN107562408B (zh) 2016-06-30 2017-06-19 支持可中断浮点除法的实现方法及系统

Country Status (2)

Country Link
US (1) US10635395B2 (zh)
CN (1) CN107562408B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108334305A (zh) * 2018-01-18 2018-07-27 上海达梦数据库有限公司 一种除法运算方法、装置、设备和存储介质
CN112463113A (zh) * 2020-12-02 2021-03-09 中国电子科技集团公司第五十八研究所 浮点加法单元

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4413326A (en) * 1978-10-18 1983-11-01 Honeywell Inc. Floating point division control
US4777613A (en) * 1986-04-01 1988-10-11 Motorola Inc. Floating point numeric data processor
US6061781A (en) * 1998-07-01 2000-05-09 Ip First Llc Concurrent execution of divide microinstructions in floating point unit and overflow detection microinstructions in integer unit for integer divide
CN103092561A (zh) * 2013-01-18 2013-05-08 北京理工大学 一种基于除数映射的Goldschmidt除法实现方法
CN103809930A (zh) * 2014-01-24 2014-05-21 天津大学 一种双精度浮点数除法器的设计方法及除法器
CN103984522A (zh) * 2014-05-27 2014-08-13 中国人民解放军国防科学技术大学 Gpdsp中定点和浮点混合除法的实现方法
CN103984521A (zh) * 2014-05-27 2014-08-13 中国人民解放军国防科学技术大学 Gpdsp中simd结构浮点除法的实现方法及装置
CN104133656A (zh) * 2014-07-25 2014-11-05 国家电网公司 一种尾码采用移位和减法运算的浮点数除法器及运算方法
CN105224284A (zh) * 2015-09-29 2016-01-06 北京奇艺世纪科技有限公司 一种浮点数处理方法及装置
CN105389157A (zh) * 2015-10-29 2016-03-09 中国人民解放军国防科学技术大学 基于Goldschmidt算法的浮点除法器

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4398244A (en) * 1980-05-07 1983-08-09 Fairchild Camera & Instrument Corporation Interruptible microprogram sequencing unit and microprogrammed apparatus utilizing same
JPH04283831A (ja) * 1991-03-13 1992-10-08 Fujitsu Ltd 除算器
US5404324A (en) * 1993-11-01 1995-04-04 Hewlett-Packard Company Methods and apparatus for performing division and square root computations in a computer
US6809598B1 (en) 2000-10-24 2004-10-26 Texas Instruments Incorporated Hybrid of predictive and closed-loop phase-domain digital PLL architecture
US6976158B2 (en) * 2001-06-01 2005-12-13 Microchip Technology Incorporated Repeat instruction with interrupt
US6782405B1 (en) 2001-06-07 2004-08-24 Southern Methodist University Method and apparatus for performing division and square root functions using a multiplier and a multipartite table
US7237000B2 (en) * 2001-08-16 2007-06-26 Texas Instruments Incorporated Speed of execution of a conditional subtract instruction and increasing the range of operands over which the instruction would be performed correctly
US7046098B2 (en) 2001-11-27 2006-05-16 Texas Instruments Incorporated All-digital frequency synthesis with capacitive re-introduction of dithered tuning information
US7145399B2 (en) 2002-06-19 2006-12-05 Texas Instruments Incorporated Type-II all-digital phase-locked loop (PLL)
US7532679B2 (en) 2004-08-12 2009-05-12 Texas Instruments Incorporated Hybrid polar/cartesian digital modulator
US7183860B2 (en) 2004-08-12 2007-02-27 Texas Instruments Incorporated Gain calibration of a digital controlled oscillator
US7365609B2 (en) 2006-07-26 2008-04-29 Texas Instruments Incorporated Hybrid stochastic gradient based digitally controlled oscillator gain KDCO estimation
US7570182B2 (en) 2006-09-15 2009-08-04 Texas Instruments Incorporated Adaptive spectral noise shaping to improve time to digital converter quantization resolution using dithering
US20120244824A1 (en) 2007-02-12 2012-09-27 Texas Instruments Incorporated Minimization of rms phase error in a phase locked loop by dithering of a frequency reference
US8045670B2 (en) 2007-06-22 2011-10-25 Texas Instruments Incorporated Interpolative all-digital phase locked loop
US7929929B2 (en) 2007-09-25 2011-04-19 Motorola Solutions, Inc. Method and apparatus for spur reduction in a frequency synthesizer
US8655937B1 (en) 2009-04-29 2014-02-18 Nvidia Corporation High precision integer division using low precision hardware operations and rounding techniques
US8710884B2 (en) 2011-02-28 2014-04-29 Marvell World Trade Ltd. Methods and devices for multiple-mode radio frequency synthesizers
CN103493377B (zh) 2011-06-01 2017-04-26 华为技术有限公司 锁相环中的杂散抑制
US9086890B2 (en) 2012-01-06 2015-07-21 Oracle International Corporation Division unit with normalization circuit and plural divide engines for receiving instructions when divide engine availability is indicated
US9800439B2 (en) 2014-12-19 2017-10-24 Intel Corporation Apparatus and method for digital-to-time converter spur dithering
US10359995B2 (en) * 2016-04-29 2019-07-23 Texas Instruments Incorporated Architecture and instruction set to support integer division

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4413326A (en) * 1978-10-18 1983-11-01 Honeywell Inc. Floating point division control
US4777613A (en) * 1986-04-01 1988-10-11 Motorola Inc. Floating point numeric data processor
US6061781A (en) * 1998-07-01 2000-05-09 Ip First Llc Concurrent execution of divide microinstructions in floating point unit and overflow detection microinstructions in integer unit for integer divide
CN103092561A (zh) * 2013-01-18 2013-05-08 北京理工大学 一种基于除数映射的Goldschmidt除法实现方法
CN103809930A (zh) * 2014-01-24 2014-05-21 天津大学 一种双精度浮点数除法器的设计方法及除法器
CN103984522A (zh) * 2014-05-27 2014-08-13 中国人民解放军国防科学技术大学 Gpdsp中定点和浮点混合除法的实现方法
CN103984521A (zh) * 2014-05-27 2014-08-13 中国人民解放军国防科学技术大学 Gpdsp中simd结构浮点除法的实现方法及装置
CN104133656A (zh) * 2014-07-25 2014-11-05 国家电网公司 一种尾码采用移位和减法运算的浮点数除法器及运算方法
CN105224284A (zh) * 2015-09-29 2016-01-06 北京奇艺世纪科技有限公司 一种浮点数处理方法及装置
CN105389157A (zh) * 2015-10-29 2016-03-09 中国人民解放军国防科学技术大学 基于Goldschmidt算法的浮点除法器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108334305A (zh) * 2018-01-18 2018-07-27 上海达梦数据库有限公司 一种除法运算方法、装置、设备和存储介质
CN108334305B (zh) * 2018-01-18 2020-06-30 上海达梦数据库有限公司 一种除法运算方法、装置、设备和存储介质
CN112463113A (zh) * 2020-12-02 2021-03-09 中国电子科技集团公司第五十八研究所 浮点加法单元
CN112463113B (zh) * 2020-12-02 2021-11-23 中国电子科技集团公司第五十八研究所 浮点加法单元

Also Published As

Publication number Publication date
US20180004485A1 (en) 2018-01-04
CN107562408B (zh) 2023-09-12
US10635395B2 (en) 2020-04-28

Similar Documents

Publication Publication Date Title
Kulisch Advanced arithmetic for the digital computer: design of arithmetic units
Wells Elements of combinatorial computing
US9110713B2 (en) Microarchitecture for floating point fused multiply-add with exponent scaling
CN108351761A (zh) 使用冗余表示的第一和第二操作数的乘法
KR20190090817A (ko) 부동 소수점 수를 누산하기 위한 산술 연산을 수행하는 장치 및 방법
CN102566964B (zh) 矢量浮点变元缩减
US20140067894A1 (en) Operations for efficient floating point computations
CN102855117A (zh) 浮点加法器
CN108351776A (zh) 用于向量的处理的通道位置信息
CN104899004A (zh) 一种用于将浮点操作数相乘的数据处理装置和方法
CN107533452A (zh) 除法和根计算以及快速结果格式化
CN108351762A (zh) 使用重叠位的数值的冗余表示
CN107562408A (zh) 支持可中断浮点除法的架构及指令集
CN112241291A (zh) 用于指数函数实施的浮点单元
CN107038014A (zh) 舍入反平方根结果
KR20180027537A (ko) 와이드 데이터 타입들의 비교
CN108139912A (zh) 在浮点运算期间计算和保留误差边界的装置和方法
CN106528050B (zh) 尾随或前导数字预测器
TW200532552A (en) Methods and apparatus for performing mathematical operations using scaled integers
US8239430B2 (en) Accuracy improvement in CORDIC through precomputation of the error bias
CN108351763A (zh) 重叠传播操作
CN109960532A (zh) 用于前台运行的方法及装置
JP2018097864A (ja) リーディングゼロ予想
Rust et al. A hardware generator for SORN arithmetic
Jacobi et al. Proving the correctness of a complete microprocessor

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