Browse Prior Art Database

Introduction of 'Hot Ones' to Carry Save Adder Tree for Twos Complement Inputs

IP.com Disclosure Number: IPCOM000099737D
Original Publication Date: 1990-Feb-01
Included in the Prior Art Database: 2005-Mar-15
Document File: 2 page(s) / 47K

Publishing Venue

IBM

Related People

Norris, LR: AUTHOR

Abstract

Described is a method of adding a binary 1 value ('Hot One') to a complemented binary number to form a twos com- plement value of a number within a carry save adder (CSA) tree for an iterative multiplication algorithm. The method predicts all of the 'Hot Ones' that are needed for all iterations prior to a first iteration added with operands during the first iteration.

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

Introduction of 'Hot Ones' to Carry Save Adder Tree for Twos Complement Inputs

       Described is a method of adding a binary 1 value ('Hot
One') to a complemented binary number to form a twos com- plement
value of a number within a carry save adder (CSA) tree for an
iterative multiplication algorithm.  The method predicts all of the
'Hot Ones' that are needed for all iterations prior to a first
iteration added with operands during the first iteration.

      The figure illustrates a typical CSA tree used for iterative
multiply algorithms.  To do the multiplication, various positive and
negative multiples of the multiplicand are gated onto M1 through M7
inputs.  Generation of negative multiples is done by complementing
the multiple and adding a 1 into the least significant bit position.
This 1 added is the 'Hot One'.

      For each negative multiple in a given iteration, there is a
'Hot One' added in the corresponding least significant bit position.
In many cases, these 'Hot Ones' are collapsed into other unused
inputs to 2 the tree, but certainly not in all cases.  At the least,
these 'Hot Ones' require that the 1-bit position of the CSA tree have
a 10th input.

      The CSA tree inputs fed by a carry register and a halfsum
register are not used functionally in the first iteration of the
operation since their main purpose is to feed the results from one
iteration into the next.  One of these extra inputs is used during
the first iteration for the i...