Arithmetic for Digital Systems Butterflys Page 1 Arithmetic for Digital Systems Contents Multioperand Adders General Principle Wallace Trees Overturned Stairs (OS) Trees Multiplication Introduction Booth Algorithm Serial-Parallel Multiplier Braun Parallel Multiplier Baugh-Wooley Multiplier Dadda Multiplier Mou's Multiplier Logarithmic Multiplier Addition and Multiplication in Galois Fields, GF(2n)
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
When taking into account the regularity of the interconnections, Wallace trees are the most
irregular.
Figure-31: A 7-inputs Wallace tree
Overturned Stairs (OS) Trees
To circumvent the irregularity, an alternative way to build multi-operand adders is
proposed. The method uses basic cells called branch, connector or root. These basic elements(see Figures 32 and 33) are connected together to form n-input trees. One has to take care
about the weight of the inputs. Because in this case the weights at the input of the 18-input OS
tree are different.
The regularity of this structure is better than with Wallace trees but the construction of
This is the simplest one, the multiplication is considered as a succession of additions.
If A = (a n an-1 ……a0) and B = (b n bn-1 ……b0)
The product A.B is expressed as :
A.B = A.2n.bn + A.2n-1 .bn-1 +…+ A.20.b0
The structure of Figure 37 is suited only for positive operands. If the operands are negative
and coded in 2’s -complement:
1. The most significant bit of B has a negative weight, so a subtraction has to be
performed at the last step.
2. Operand A.2 k must be written on 2N bits, so the most significant bit of A must be
duplicated. It may be easier to shift the content of the accumulator to the right instead
of shifting A to the left.
Figure-37: Serial-Parallel multiplier
Braun Parallel Multiplier
The simplest parallel multiplier is the Braun array. All the partial products A.B k arecomputed in parallel, then collected through a cascade of Carry Save Adders. At the bottom of
the array, the output is noted in Carry Save, so an additional adder converts it (by the mean of
a carry propagation) into the classical notation (Figure 38).
The completion time is limited by the depth of the carry save array, and by the carry
propagation in the adder. Note that this multiplier is only suited for positive operands.
Negative operands may be multiplied using a Baugh-Wooley multiplier.
Figure-38: A 4-bit Braun Multiplier without the final adder
Figure 38 and Figure 40 use the symbols given in Figure 39 where CMUL1 and CMUL2 are
two generic cells consisting of an adder without the final inverter and with one input
connected to an AND or NAND gate. A non optimised (in term of transistors) multiplier wouldconsist only of adder cells connected one to another with AND gates generating the partial
products. In these examples, the inverters at the output of the adders have been eliminated
and the parity of the bits has been compensated by the use of CMUL1 or CMUL2.
Figure-40: A 8-bit Braun Multiplier without the final adder
Let F be a set of elements on which two binary operations called addition "+" and
multiplication".", are defined. The set F together with the two binary operations + and . is a
field if the following conditions are satisfied:
1. F is a commutative group under addition +. The identity element with respect toaddition is called the zero element or the additive identity of F and is denoted by 0.
2. The set of nonzero elements in F is a commutative group under multiplication . .The
identity element with respect to multiplication is called the unit element or the
multiplicative identity of F and is denoted 1.
3. Multiplication is distributive over addition; that is, for any three elements, a, b, c in F:
a . ( b + c ) = a . b + a . c
The number of elements in a field is called the order of the field.
A field with finite number of elements is called a finite field.
Let us consider the set {0,1} together with modulo-2 addition and multiplication. We can
easily check that the set {0,1} is a field of two elements under modulo-2 addition and modulo-
2 multiplication field is called a binary field and is denoted by GF(2).
The binary field GF(2) plays an important role in coding theory and is widely used in digitalcomputers and data transmission or storage systems.
Another example using the residue to the base is given below. Table 11 represents the values
of N, from 0 to 29 with their representation according to the residue of the base (5, 3, 2).The
addition and multiplication of two term in this base can be performed according to the next
example:
Table-11: N varying from 0 to 29 and its representation in the residue number system