支持可中断浮点除法的架构及指令集制造技术

技术编号:17006756 阅读:24 留言:0更新日期:2018-01-11 03:21
一种处理器(100)(及方法)包含通过执行各种指令执行浮点除法的核心(102)。所述指令包含符号、指数及尾数SEM分离指令(108),其致使所述核心从分子及分母浮点数提取所述符号、指数及尾数值。所述指令还包含无符号尾数除法指令(110),其致使所述核心迭代地执行条件减法运算以计算指示商的尾数的值。所述指令进一步包含归并指令(112),其致使所述核心使用从所述SEM分离指令提取的所述符号及指数及指示所述商的所述尾数的所述值生成商浮点数。

【技术实现步骤摘要】
支持可中断浮点除法的架构及指令集

技术介绍
例如许多数字信号处理(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能够在一个循环中执行除法过程的三次迭代的实例中,可执行无符号除法指令10019次以在考虑可能需要进行的四舍五入的情况下为尾数产生充足数目个尾数位。在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标记位以给予商正确符号位。在14本文档来自技高网...
支持可中断浮点除法的架构及指令集

【技术保护点】
一种处理器,其包括:核心;其中所述核心经配置以执行浮点除法运算,其包含:符号、指数及尾数SEM分离指令,其致使所述核心从分子及分母浮点数提取所述符号、指数及尾数值;无符号尾数除法指令,其致使所述核心迭代地执行条件减法运算以计算指示商的尾数的值;及归并指令,其致使所述核心使用从所述SEM分离指令提取的所述符号及指示来自所述SEM分离指令的指数的值及指示所述商的所述尾数的所述值生成商浮点数。

【技术特征摘要】
2016.06.30 US 15/198,0701.一种处理器,其包括:核心;其中所述核心经配置以执行浮点除法运算,其包含:符号、指数及尾数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所述的处理器,其...

【专利技术属性】
技术研发人员:P·维斯瓦纳坦·皮莱V·纳塔拉詹A·泰萨格洛
申请(专利权)人:德州仪器公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1