当前位置: 首页 > 专利查询>ARM有限公司专利>正文

浮点数舍入制造技术

技术编号:18178930 阅读:28 留言:0更新日期:2018-06-09 20:44
处理电路(2)支持执行具有舍入位置输入操作数的程序指令,以便生出控制信号(14),用于控制处理电路(16)处理具有有效数值的浮点输入有效数以生成输出结果,该输出结果取决于来自使用由舍入位置输入操作数指定的浮点输入操作数的有效数内的可变舍入点对浮点输入操作数进行的舍入的值。以这种方式,可以便于实现具有浮点操作数和锚定数操作数作为输入的处理操作。

【技术实现步骤摘要】
【国外来华专利技术】浮点数舍入
本公开涉及数据处理系统。更具体而言,本公开涉及支持浮点数的使用和操作的数据处理系统。
技术介绍
浮点算法有很多用途,例如用于图形数据操作的生成、物理系统的建模/仿真和其他用途。已知提供支持浮点数的使用的数据处理系统。
技术实现思路
本公开的至少一些实施例提供了一种用于处理数据的装置,包括:处理电路,用于在程序指令的控制下执行处理操作;和解码器,用于对程序指令进行解码以生成控制信号来控制所述处理电路执行所述处理操作;其中,所述解码器响应于给定程序指令和舍入位置输入操作数,来生成控制信号以控制所述处理电路处理具有有效数值的浮点输入操作数从而生成输出结果,该输出结果取决于来自使用由所述舍入位置输入操作数指定的所述浮点输入操作数的所述有效数内的可变舍入点对所述浮点输入操作数进行的舍入的值。本公开的至少一些实施例提供了一种用于处理数据的设备,包括:用于在程序指令的控制下执行处理操作的处理装置;和用于对程序指令进行解码以生成控制信号来控制所述处理装置执行所述处理操作的解码装置;其中,所述解码装置响应于给定程序指令和舍入位置输入操作数,来生成控制信号以控制所述处理装置处理具有有效数值的浮点输入操作数从而生成输出结果,该输出结果取决于来自使用由所述舍入位置输入操作数指定的所述浮点输入操作数的所述有效数内的可变舍入点对所述浮点输入操作数进行的舍入的值。本公开的至少一些实施例提供了一种用于处理数据的方法,包括:对给定的程序指令和舍入位置输入操作数进行解码以生成控制信号来控制处理电路处理具有有效数值的浮点输入操作数从而生成输出结果,该输出结果取决于来自使用由所述舍入位置输入操作数指定的所述浮点输入操作数的所述有效数内的可变舍入点对所述浮点输入操作数进行的舍入的值。附图说明现在将参照附图仅以示例的方式描述示例实施例,在附图中:图1示意性地示出了用于执行程序指令以执行数据处理操作的数据处理系统;图2示意性地示出了浮点数;图3示意性地示出了锚定数(anchorednumber);图4示意性地示出了浮点舍入程序指令;图5是示意性地示出浮点舍入程序指令的操作的流程图;图6示意性地示出了转换和相加程序指令的操作;图7是示意性地示出转换和相加程序指令的操作的流程图;和图8示意性地示出了用于执行转换和相加程序指令的硬件的示例。具体实施方式图1示意性地示出了包括处理器核心4和存储器6的数据处理系统2。存储器6存储要执行的程序指令8和数据值10。程序指令用于控制处理器核心4执行处理操作。处理器核心4包括解码器12,用于对从存储器6取出的程序指令进行解码,并且用于生成控制信号14,控制信号14用于控制处理电路16执行由那些程序指令所指定的处理操作。处理电路16被耦合到寄存器存储装置18,该寄存器存储装置18包括多个寄存器,这些寄存器存储要执行的程序指令的输入操作数并存储来自被执行的程序指令的输出结果。寄存器存储装置18内的寄存器可以具有各种不同的形式,例如整数寄存器、浮点寄存器、锚定数寄存器、向量寄存器等。图2示意性地示出了浮点数。计算机系统中的浮点数通常由符号位s和指数值x构成,符号位s指示浮点数是正数还是负数,指数值x指示有效数应当与其相乘以提供所表示的浮点数的2的幂的指数。有效数是表示有效数的小数部分的n位数b0、b1、...。有效数由隐藏位和小数b0、b1、b2...组成。隐藏位由(偏置)指数决定,可以是零或一:零代表偏置指数,一代表任何其他指数。不同形式的浮点数表示是可能的,例如消耗不同位宽并允许表示不同指数范围和有效数精度的那些浮点数表示。本技术可以与所有这些形式的浮点数表示一起使用。图3示意性地示出了锚定数。锚定数是一对(i,a),其中i是长二进制补码(two’scomplement)整数20(锚定有效数),a是锚值(anchorvalue)22,该锚值给出该整数的最低有效位的权重(并且从而给出整数的所有位的权重)。锚值为二进制补码整数20提供可编程的操作数有效性(significance)。锚定数可以具有各种不同的精度级别(在二进制补码整数20中提供的位)以及具有各种有效性范围(由锚值22表示)。这些各种不同形式的锚定数可以与本技术一起使用。图4示意性地示出了可以与锚定数相关联地使用的浮点舍入程序指令(FRANC指令)。该浮点舍入程序指令指定浮点输入操作数FPreg,其给定寄存器存储装置18内存储要被操纵的浮点数的寄存器。浮点舍入程序指令的另一输入操作数是舍入位置输入操作数,其指定应执行舍入的浮点数内的位位置。该舍入位置输入操作数相应地指定在舍入操作期间要使用的浮点输入操作数的有效数内的可变舍入点。浮点舍入程序指令可以具有其他输入操作数(例如舍入模式)。如图4所示,所示示例中的舍入点位于二进制位置b2处,使得二进制数字b3至b[n-1]被舍入并产生一个值,该值与上面的浮点有效数的部分相加并且包括二进制数字b2(即来自舍入的值,该值在舍入点处被添加以便生成舍入浮点数作为输出结果)。因此,如图4所示,二进制数字b3至b[n-1]在输出结果中已全部舍入为零,并且浮点数输入的二进制数字b0b1b2已与来自舍入的值相加。应理解可以使用各种不同的舍入模式。例如,这些舍入模式可以包括其中舍入趋向零,远离零,趋向最近的有效位等的模式。浮点舍入程序指令FRANC可以用于各种这样的舍入模式,其中所采用的舍入模式由舍入模式参数指定。这种舍入模式参数可以例如被设置在处理器核心4的配置寄存器中,作为数据处理系统2的初始化的一部分。在一些实施例中,舍入位置输入操作数可以直接指定由浮点舍入程序指令对其进行舍入的浮点数的有效数内的位位置(例如b2)。或者,在其他实施例中,舍入位置输入操作数可以指定要执行舍入的位有效性,而与要操纵的特定浮点数的指数值无关。在这种情况下,处理电路16可以将所讨论的浮点数的指数值与指定所希望的舍入位有效性的舍入位置输入操作数进行比较,以确定要应用于正在被操纵的浮点数的有效数的可变舍入点。第二种方法在需要混合使用浮点数和锚定数的情况下可能会有用。在这样的系统中,锚定数将具有由它们的锚值22确定的有效性。可以使用浮点舍入指令FRANC来对浮点数进行舍入以例如与锚定数相加,使得它们具有与锚定数匹配的位有效性。因此,可以通过将浮点数舍入为与锚定数匹配的有效性来准备浮点数以便与锚定数一起使用,低于锚定数的最低有效部分的浮点数的有效数的部分在组合的结果中被表示为在进行组合之前在浮点数的更高有效部分上执行舍入的结果。在这些情况下,可以(直接或间接)提供浮点舍入程序指令的舍入位置输入操作数,通过希望与经舍入的浮点数(将作为浮点舍入程序指令的输出结果)相组合的锚定数的锚值22。图5是示意性示出了浮点舍入程序指令的操作的流程图。所执行的处理步骤可以使用处理电路16以各种不同的方式来实现。图5的流程图示出了作为线性操作序列执行的处理,但是本
的技术人员将认识到,替代布置是可能的,例如以不同的顺序或以重叠方式执行各个步骤。在图5的步骤24中,从寄存器存储装置18内的浮点寄存器读取浮点数。在步骤26,将浮点数的指数值x与舍入位置输入操作数进行比较,以便确定浮点数的有效数内的舍入点。步骤28使用数据处理系统2的当前舍入模式来执行将浮本文档来自技高网
...
浮点数舍入

【技术保护点】
一种用于处理数据的装置,包括:处理电路,用于在程序指令的控制下执行处理操作;和解码器,用于对程序指令进行解码以生成控制信号来控制所述处理电路执行所述处理操作;其中,所述解码器响应于给定程序指令和舍入位置输入操作数,来生成控制信号以控制所述处理电路处理具有有效数值的浮点输入操作数从而生成输出结果,该输出结果取决于来自使用由所述舍入位置输入操作数指定的所述浮点输入操作数的所述有效数内的可变舍入点对所述浮点输入操作数进行的舍入的值。

【技术特征摘要】
【国外来华专利技术】2015.10.07 US 14/877,0031.一种用于处理数据的装置,包括:处理电路,用于在程序指令的控制下执行处理操作;和解码器,用于对程序指令进行解码以生成控制信号来控制所述处理电路执行所述处理操作;其中,所述解码器响应于给定程序指令和舍入位置输入操作数,来生成控制信号以控制所述处理电路处理具有有效数值的浮点输入操作数从而生成输出结果,该输出结果取决于来自使用由所述舍入位置输入操作数指定的所述浮点输入操作数的所述有效数内的可变舍入点对所述浮点输入操作数进行的舍入的值。2.如权利要求1所述的装置,其中所述给定程序指令是指定包括所述浮点输入操作数和所述舍入位置输入操作数的输入操作数的浮点舍入程序指令。3.如权利要求2所述的装置,其中来自舍入的所述值和所述输出结果是被舍入到所述可变舍入点的所述浮点输入操作数。4.如权利要求2和3中任一项所述的装置,其中所述浮点输入操作数具有指数值,并且所述处理电路将所述舍入位置输入操作数与所述指数值进行比较以确定所述可变舍入点。5.如权利要求2、3和4中任一项所述的装置,其中所述处理电路根据由舍入模式参数指定的舍入模式执行所述舍入。6.如前述权利要求中任一项所述的装置,其中所述给定程序指令是转换和相加指令,该转换和相加指令将所述浮点输入操作数与具有可编程操作数有效性的锚定输入操作数相加。7.如权利要求6所述的装置,其中,当所述浮点输入操作数的所述有效数具有包括从所述锚定输入操作数的最低有效位延伸到低于所述锚定输入操作数的所述最低有效位的位的有效性范围时,所述处理电路生成所述输出结果,所述输出结果对应于所述锚定输入操作数和所述浮点输入操作数的所述有效数的和,所述浮点输入操作数被舍入到对应于所述锚定输入操作数的所述最低有效位的舍入点。8.如权利要求7所述的装置,其中所述处理电路执行对所述浮点输入操作数的所述有效数中在有效性方面与所述锚定输入操作数重叠的部分、所述锚定输入操作数的有效数和具有所述锚定输...

【专利技术属性】
技术研发人员:大卫·雷蒙德·鲁茨克里斯托弗·尼尔·海因兹内尔·伯吉斯
申请(专利权)人:ARM有限公司
类型:发明
国别省市:英国,GB

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

1