Dismiss
InnovationQ will be updated on Sunday, Jan. 21, from 9am - 11am ET. You may experience brief service interruptions during that time.
Browse Prior Art Database

Floating Point Adder Leading Zero Predictor

IP.com Disclosure Number: IPCOM000122388D
Original Publication Date: 1991-Dec-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 2 page(s) / 56K

Publishing Venue

IBM

Related People

Hilker, SA: AUTHOR

Abstract

Described is a method of predicting the leading zeros in the fraction result generated by a floating-point adder by analyzing the two fractions that are to be added instead of the addition result itself.

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

Floating Point Adder Leading Zero Predictor

      Described is a method of predicting the leading zeros in
the fraction result generated by a floating-point adder by analyzing
the two fractions that are to be added instead of the addition result
itself.

      Assume two fractions to be added or subtracted, A and B.  Each
fraction is N bits in length.  The bits in each fraction are numbered
from I = 1 to N, with bit 1 being the most significant bit and
bit N being the least significant bit.  A buffer C is set to B if
addition is to occur, and is set to the complement of B if
subtraction is to occur. Assume XOR means the logical exclusive-or,
AND means the logical and, and OR means the logical or.  Then for
every bit position, I = 1 to N, a half sum term (H(I)), a carry
generate term (G(I)), and a carry propagate term (P(I)), can be
defined as follows:
H(I) = A(I) XOR C(I), G(I) = A(I) AND C(I), P(I) = A(I)  OR C(I)

      Then the method utilizes the following two equations which
describe for the general case when the 1st K bits of the result,
where I = 1 to K, will be all zeros.

      Assume  -  means invert (ones complement), CIN means the
carry-in to a particular bit position, and COUT means the carry-out
from a particular bit position.  For the case where A is greater than
or equal to B, there will be zeros (Z1(K)) in the first K bit
positions when:
Z1(K) = (-P(1) AND -P(2) AND -P(3) AND ... AND -P(K) AND -CIN(K)) OR
( G(1) AND -P(2) AND -P(3) A...