System and method for providing a double adder for decimal floating point operations

    公开(公告)号:US20060179103A1

    公开(公告)日:2006-08-10

    申请号:US11054687

    申请日:2005-02-09

    IPC分类号: G06F7/50

    摘要: A system for performing decimal floating point addition. The system includes input registers for inputting a first and second operand for an addition operation. The system also includes a plurality of adder blocks, each calculating a sum of one or more corresponding digits from the first operand and the second operand. Output from each of the adder blocks includes the sum of the corresponding digits and a carry out indicator for the corresponding digits. The calculating is performed during a first clock cycle. The system also includes an intermediate result register for storing the sums of the corresponding digits output from each of the plurality of adder blocks, the storing during the first clock cycle. The system further includes a carry chain for storing the carry out indicator output from each of the plurality of adder blocks, the storing occurring during the first clock cycle. The system further includes an incrementer for adding one to each of the sums stored in the intermediate result register, the incrementing occurring during a second clock cycle. In addition, a mechanism is provided for selecting between each of the sums and the sums incremented by one. The input to the mechanism includes the carry chain. The output includes the final sum of the first operand and the second operand. The selecting occurs during the second clock cycle.

    System and method for reduction of leading zero detect for decimal floating point numbers
    22.
    发明申请
    System and method for reduction of leading zero detect for decimal floating point numbers 审中-公开
    用于减小十进制浮点数的前导零检测的系统和方法

    公开(公告)号:US20060179098A1

    公开(公告)日:2006-08-10

    申请号:US11054234

    申请日:2005-02-09

    IPC分类号: G06F7/38

    摘要: A method for leading zero detection. The method includes receiving DPD encoded data representing a three digit BCD number and determining directly from the DPD encoded data if the BCD number represented by the DPD encoded data contains at least one leading zero digit. A group one switch is set to zero if it was determined that the BCD number represented by the DPD encoded data contains at least one leading zero digit and set to one otherwise. The method also includes determining directly from the DPD encoded data if the BCD number represented by the DPD encoded data contains at least two leading zero digits. A group two switch is set to zero if it was determined that the BCD number represented by the DPD encoded data contains at least two leading zero digits and set to one otherwise. The method further includes determining directly from the DPD encoded data if the BCD number represented by the DPD encoded data contains three leading zero digits. A group three switch is set to zero if was determined that the BCD number represented by the DPD encoded data contains three leading zero digits and set to one otherwise.

    摘要翻译: 一种引导零检测的方法。 如果由DPD编码数据表示的BCD数字包含至少一个前导零数字,则该方法包括接收表示三位BCD号码的DPD编码数据,并直接从DPD编码数据确定。 如果确定由DPD编码数据表示的BCD数字包含至少一个前导零数字并且另外设置为一个,则将一组开关设置为零。 如果由DPD编码数据表示的BCD数字包含至少两个前导零数字,则该方法还包括直接从DPD编码数据确定。 如果确定由DPD编码数据表示的BCD数字包含至少两个前导零数字并且另外设置为一个,则组二开关被设置为零。 如果由DPD编码数据表示的BCD数字包含三个前导零数字,则该方法还包括直接从DPD编码数据确定。 如果确定由DPD编码数据表示的BCD数字包含三个前导零数字并且另外设置为一个,则组三开关被设置为零。

    System and method for a floating point unit with feedback prior to normalization and rounding
    23.
    发明申请
    System and method for a floating point unit with feedback prior to normalization and rounding 失效
    在归一化和舍入之前具有反馈的浮点单元的系统和方法

    公开(公告)号:US20060179097A1

    公开(公告)日:2006-08-10

    申请号:US11054110

    申请日:2005-02-09

    IPC分类号: G06F7/38

    摘要: A system for performing floating point arithmetic operations including an input register adapted for receiving an operand. The system also includes a mechanism for performing a shift or masking operation in response to determining that the operand is in an un-normalized format. The system also includes instructions for performing single precision incrementing of the operand in response to determining that the operand is single precision, that the operand requires the incrementing based on the results of a previous operation and that the previous operation did not perform the incrementing. The operand was created in the previous operation. The system further includes instructions for performing double precision incrementing of the operand in response to determining that the operand is double precision, that the operand requires the incrementing based on the results of the previous operation and that the previous operation did not perform the incrementing.

    摘要翻译: 一种用于执行浮点算术运算的系统,包括适于接收操作数的输入寄存器。 该系统还包括响应于确定操作数处于非归一化格式而执行移位或掩蔽操作的机制。 该系统还包括用于响应于确定操作数是单一精度来执行操作数的单精度递增的指令,操作数需要基于先前操作的结果而增加,并且先前的操作未执行递增。 操作数是在以前的操作中创建的。 该系统还包括响应于确定操作数是双精度来执行操作数的双精度递增的指令,操作数需要基于先前操作的结果而增加,并且先前的操作不执行递增。

    System and method for a fused multiply-add dataflow with early feedback prior to rounding
    24.
    发明申请
    System and method for a fused multiply-add dataflow with early feedback prior to rounding 审中-公开
    在舍入前采用早期反馈的融合乘法加法数据流的系统和方法

    公开(公告)号:US20060179096A1

    公开(公告)日:2006-08-10

    申请号:US11055232

    申请日:2005-02-10

    IPC分类号: G06F7/38

    摘要: A system for performing floating point arithmetic operations including an input register adapted for receiving an operand. The system also includes computer instructions for performing single precision incrementing of the operand in response to determining that the operand is single precision, that the operand requires the incrementing based on the results of a previous operation and that the previous operation did not perform the incrementing. The operand was created in the previous operation. The system further includes instructions for performing double precision incrementing of the operand in response to determining that the operand is double precision, that the operand requires the incrementing based on the results of the previous operation and that the previous operation did not perform the incrementing.

    摘要翻译: 一种用于执行浮点算术运算的系统,包括适于接收操作数的输入寄存器。 该系统还包括用于响应于确定操作数是单精度来执行操作数的单精度递增的计算机指令,操作数基于先前操作的结果需要增加,并且先前的操作未执行递增。 操作数是在以前的操作中创建的。 该系统还包括响应于确定操作数是双精度来执行操作数的双精度递增的指令,操作数需要基于先前操作的结果而增加,并且先前的操作不执行递增。

    Decimal rounding mode which preserves data information for further rounding to less precision
    25.
    发明申请
    Decimal rounding mode which preserves data information for further rounding to less precision 审中-公开
    十进制舍入模式,保留数据信息进一步舍入到较少的精度

    公开(公告)号:US20060047738A1

    公开(公告)日:2006-03-02

    申请号:US10930129

    申请日:2004-08-31

    IPC分类号: G06F7/38

    摘要: A method of processing data employs a new rounding mode called “round for reround” on the original arithmetic instruction in the hardware precision, and then 2) invoking an instruction which specifies a variable rounding precision and possibly explicitly sets the rounding mode which we have called the ReRound instruction. The precise result of the arithmetic operation is first truncated to the hardware format precision “p”, forming an intermediate result. If only zeros are dropped during truncation, then the intermediate result is equal to the precise result, and this result is said to be “exact”, otherwise, it is “inexact”. When the intermediate result is inexact and its least significant digit is either zero or five, then that digit is incremented to one or six respectively forming the rounded result. Thus, when the least significant digit of a rounded result is zero or five the result could be construed to be exact or exactly halfway between two machine representations if it were later rounded to one less digit of precision. For all other values, it is obvious that the result is inexact and not halfway between two machine representations for later roundings to fewer than “p” digits of precision. A nice mathematical property of this rounding mode is that results stay ordered and in a hardware implementation it is guaranteed that the incrementation of the least significant digit does not cause a carry into the next digit of the result.

    摘要翻译: 处理数据的方法采用在硬件精度上对原始算术指令称为“round for reround”的新的舍入模式,然后2)调用指定变量舍入精度的指令,并可能明确地设置我们称之为舍入模式 ReRound指令。 算术运算的精确结果首先被截断为硬件格式精度“p”,形成中间结果。 如果在截断期间仅删除零,则中间结果等于精确结果,并且该结果被称为“精确”,否则为“不精确”。 当中间结果不精确,其最低有效位为零或五时,则该数字分别增加到一个或六个,分别形成舍入结果。 因此,当舍入结果的最低有效数字为零或五时,如果结果被稍后舍入为一个较小的精度数字,则结果可以被解释为两个机器表示之间的精确或准确的中间。 对于所有其他值,很明显,结果是不精确的,而不是两个机器表示之间的中间,以便稍后的舍入少于“p”位精度。 这种舍入模式的一个很好的数学属性是结果保持有序,并且在硬件实现中,保证最低有效位的递增不会导致结果的下一个数字的进位。

    Decimal Floating-Point Quantum Exception Detection
    26.
    发明申请
    Decimal Floating-Point Quantum Exception Detection 审中-公开
    十进制浮点量子异常检测

    公开(公告)号:US20120278374A1

    公开(公告)日:2012-11-01

    申请号:US13544338

    申请日:2012-07-09

    IPC分类号: G06F11/00

    摘要: A system and method for detecting decimal floating point data processing exceptions. A processor accepts at least one decimal floating point operand and performs a decimal floating point operation on the at least one decimal floating point operand to produce a decimal floating point result. A determination is made as to whether the decimal floating point result fails to maintain a preferred quantum. The preferred quantum indicates a value represented by a least significant digit of a significand of the decimal floating point result. An output is provided, in response to the determining that the decimal floating point result fails to maintain the preferred quantum, indicating an occurrence of a quantum exception. A maskable exception can be generated that is immediately trapped or later detected to control conditional processing.

    摘要翻译: 用于检测十进制浮点数据处理异常的系统和方法。 一个处理器接受至少一个十进制浮点运算符,并在至少一个十进制浮点运算符上执行十进制浮点运算,以产生一个十进制浮点运算结果。 确定十进制浮点结果是否不能保持优选的量子。 优选的量子表示由十进制浮点结果的有效位的最低有效位表示的值。 提供输出,响应于确定十进制浮点结果不能保持优选量子,指示量子异常的发生。 可以生成立即捕获或稍后检测到的可屏蔽异常以控制条件处理。

    Decimal floating-pointing quantum exception detection
    27.
    发明授权
    Decimal floating-pointing quantum exception detection 有权
    十进制浮点量子异常检测

    公开(公告)号:US08219605B2

    公开(公告)日:2012-07-10

    申请号:US12789765

    申请日:2010-05-28

    IPC分类号: G06F11/00

    摘要: A system and method for detecting decimal floating point data processing exceptions. A processor accepts at least one decimal floating point operand and performs a decimal floating point operation on the at least one decimal floating point operand to produce a decimal floating point result. A determination is made as to whether the decimal floating point result fails to maintain a preferred quantum. The preferred quantum indicates a value represented by a least significant digit of a significand of the decimal floating point result. An output is provided, in response to the determining that the decimal floating point result fails to maintain the preferred quantum, indicating an occurrence of a quantum exception. A maskable exception can be generated that is immediately trapped or later detected to control conditional processing.

    摘要翻译: 用于检测十进制浮点数据处理异常的系统和方法。 一个处理器接受至少一个十进制浮点运算符,并在至少一个十进制浮点运算符上执行十进制浮点运算,以产生一个十进制浮点运算结果。 确定十进制浮点结果是否不能保持优选的量子。 优选的量子表示由十进制浮点结果的有效位的最低有效位表示的值。 提供输出,响应于确定十进制浮点结果不能保持优选量子,指示量子异常的发生。 可以生成立即捕获或稍后检测到的可屏蔽异常以控制条件处理。

    DECIMAL FLOATING-POINTING QUANTUM EXCEPTION DETECTION
    28.
    发明申请
    DECIMAL FLOATING-POINTING QUANTUM EXCEPTION DETECTION 有权
    十进制浮点数量子例外检测

    公开(公告)号:US20110296229A1

    公开(公告)日:2011-12-01

    申请号:US12789765

    申请日:2010-05-28

    IPC分类号: G06F11/07

    摘要: A system and method for detecting decimal floating point data processing exceptions. A processor accepts at least one decimal floating point operand and performs a decimal floating point operation on the at least one decimal floating point operand to produce a decimal floating point result. A determination is made as to whether the decimal floating point result fails to maintain a preferred quantum. The preferred quantum indicates a value represented by a least significant digit of a significand of the decimal floating point result. An output is provided, in response to the determining that the decimal floating point result fails to maintain the preferred quantum, indicating an occurrence of a quantum exception. A maskable exception can be generated that is immediately trapped or later detected to control conditional processing.

    摘要翻译: 用于检测十进制浮点数据处理异常的系统和方法。 一个处理器接受至少一个十进制浮点运算符,并在至少一个十进制浮点运算符上执行十进制浮点运算,以产生一个十进制浮点运算结果。 确定十进制浮点结果是否不能保持优选的量子。 优选的量子表示由十进制浮点结果的有效位的最低有效位表示的值。 提供输出,响应于确定十进制浮点结果不能保持优选量子,指示量子异常的发生。 可以生成立即捕获或稍后检测到的可屏蔽异常以控制条件处理。

    System and method for performing floating point store folding
    29.
    发明申请
    System and method for performing floating point store folding 失效
    执行浮点存储折叠的系统和方法

    公开(公告)号:US20060179100A1

    公开(公告)日:2006-08-10

    申请号:US11054686

    申请日:2005-02-09

    IPC分类号: G06F7/38

    摘要: A system for performing floating point arithmetic operations including a plurality of stages making up a pipeline, the stages including a first stage and a last stage. The system also includes a register file adapted for receiving a store instruction for input to the pipeline, where the data associated with the store instruction is dependent on a previous operation still in the pipeline. The system further includes a store register adapted for outputting the data associated with the store instruction to memory and a control unit having instructions. The instructions are directed to inputting the store instruction into the pipeline and to providing a path for forwarding the data associated with the store instruction from the last stage in the pipeline to the store register for use by the store instruction if the previous operation immediately precedes the store operation in the pipeline and if there is a data type match between the store instruction and the previous operation. In addition, the instructions are directed to inputting the store instruction into the pipeline and to providing a path for forwarding the data associated with the store instruction from the first stage in the pipeline to the store register for use by the store instruction if the previous operation precedes the store operation by one or more stage in the pipeline and if there is a data type match between the store instruction and the previous operation.

    摘要翻译: 一种用于执行浮点算术运算的系统,包括构成流水线的多个级,所述级包括第一级和最后级。 该系统还包括适于接收用于输入到流水线的存储指令的寄存器文件,其中与存储指令相关联的数据依赖于仍在流水线中的先前操作。 该系统还包括适于将与存储指令相关联的数据输出到存储器的存储寄存器和具有指令的控制单元。 这些指令旨在将存储指令输入到流水线中,并且提供一个路径,用于将与流水线中的最后一级相关联的存储指令的数据转发到存储寄存器以供存储指令使用,如果先前的操作紧接在 存储操作在流水线中,并且存储指令与先前操作之间存在数据类型匹配。 此外,该指令旨在将存储指令输入到流水线中,并且提供用于将与流水线中的第一级相关联的存储指令的数据转发到存储寄存器以供存储指令使用的路径,如果先前的操作 在存储操作之前在流水线中的一个或多个阶段,以及存储指令和先前操作之间是否存在数据类型匹配。

    System and method for performing decimal to binary conversion
    30.
    发明申请
    System and method for performing decimal to binary conversion 有权
    用于执行十进制到二进制转换的系统和方法

    公开(公告)号:US20060179091A1

    公开(公告)日:2006-08-10

    申请号:US11054233

    申请日:2005-02-09

    IPC分类号: G06F7/00

    CPC分类号: H03M7/12

    摘要: A method for converting from binary to decimal. The method includes receiving a binary coded decimal (BCD) number made up of one or more sets of three digits. A running sum and a running carry are set to zero. The following steps are performed for each set of three digits in the BCD number in order from the set of three digits containing the three most significant digits of the BCD number to the set of three digits containing the three least significant digits of the BCD number. The steps include: creating six partial products based on the set of three digits, the running sum and the running carry; combining the six partial products into two partial products; and storing the two partial products in the running sum and the running carry. After the loop has been performed for each set of three digits in the BCD number, the running sum and the running carry are combined into a final binary result.

    摘要翻译: 一种从二进制转换为十进制的方法。 该方法包括接收由一个或多个三位数字组成的二进制编码十进制(BCD)号码。 运行总和和运行进位设置为零。 对于BCD号码中的每一组三位数字,按照从包含BCD号码三个最高有效数字的三位数字到包含BCD号码三个最低有效位数字的三位数组的顺序执行以下步骤。 步骤包括:根据三位数字,运行总和和运行进位创建六个部分产品; 将六部分产品合并成两部分产品; 并将两个部分乘积存储在运行和运行中。 在对BCD号码中的每组三位数进行了循环之后,运行总和和运行进位被组合成最终的二进制结果。