Browse Prior Art Database

Floating-Point Align Unit that Allows for Integer-To-Floating-Point Converts

IP.com Disclosure Number: IPCOM000118821D
Original Publication Date: 1997-Jul-01
Included in the Prior Art Database: 2005-Apr-01
Document File: 2 page(s) / 55K

Publishing Venue

IBM

Related People

Uhlmann, GJ: AUTHOR

Abstract

The floating-point align unit presented in this disclosure allows integer-to-floating-point convert operands to be passed through the main floating-point arithmetic pipeline. This saves the area required to have separate hardware to handle non-arithmetic operations. In this invention, convert operands fall through the dataflow as the true action of the convert takes place later in the pipeline.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 79% of the total text.

Floating-Point Align Unit that Allows for Integer-To-Floating-Point
Converts

      The floating-point align unit presented in this disclosure
allows integer-to-floating-point convert operands to be passed
through the main floating-point arithmetic pipeline.  This saves the
area required to have separate hardware to handle non-arithmetic
operations.  In this invention, convert operands fall through the
dataflow as the true action of the convert takes place later in the
pipeline.

      This new Align Unit, shown in the Figure, has a Multiplexer
(MUX) that operates simultaneously with the Align Shifter.  The
Shifter is for standard floating-point data.  The multiplexer, shown
in the Figure as "Float/Int MUX", lines up the convert operand to
pass through to the next partition.  Otherwise, it lines the input up
as a floating-point number which could either be placed in an
addend-leading or addend-trailing position.  The data from the
Shifter and the data from the Float/Int MUX meet in the Final MUX.
The data from the shifter is chosen if a normal math operation is
taking place and the addend exponent is close to the product
exponent.  The data from the Float/Int MUX is placed in the final 53
bits of the MUX_Output  if a normal math operation is taking place,
but the addend exponent is  much less than the product exponent.
This is the Addend_Trailing case.  The data from the Float/Int MUX is
placed in the first 64 bits of  the MUX_Output in two cases: 1) if
th...