image1 image2 image3

HELLO I'M LiNuS|WELCOME TO MY PERSONAL BLOG|I LOVE TO DO CREATIVE THINGS|I PRESENT MY WORKS ON VLSI AND EMBEDDED

Wallace Multiplier


Wallace Multiplier
Wallace Multiplier

The Multipliers are used in various applications like DSP applications, Graphical Video processing, in core units(arithmetical) of processors etc., The Column compression Multipliers have gained popularity because of their High-computational speed. Wallace and Dadda Multipliers are the well renowned Column compression Multipliers. The Wallace Multiplier was proposed by Chris Wallace, a Australian computer scientist in 1964. The Dadda Multiplier was proposed by Luigi Dadda, an Italian computer Engineer by altering the Wallace Multiplier. Both these Wallace and Dadda Multipliers are reduction based. The reduction is achieved by compressing the columns with a (3,2) counter (Full adder) and a 
(2,2) counter (Half adder). 

In this(here), we have focused on 8bit Wallace Multiplier. 
input a = a[7:0] -> 8bit bus
input b = b[7:0] ->  8bit bus
operation = a X b = 8bit  X  8bit
resultant = a X b = r = r[15:0] -> 16 bit result

Procedure :
Step 1 :  We obtain the partial products by doing "and" logic operation. The partial products are represented as . dot in below image.  pp (partial products) = (a[i] & b[j]) , where i,j = 0,1,2,...7
partialProducts

Step 2 :  reduction of 8 rowed partial products to 6 rows is performed by using (3,2) & (2,2) compressor.
part1 reducton

Step 3 : reduction from 8row to 6row.
part2 reductions

Step4 : reduction from 6row to 4row.
part 3 reductions

Step5 : reduction from 4row to 3 row
part4 reductions

Step6: final reduction 3 to 2 & using ripple carry adder obtaining the result 16bit
final reduction


The verilog code is developed for a 8bit wallace multiplier & implemented.
The basic modules used in construction of the 8bit muliplier are (2,2) compressor - a Half Adder & (3,2) compressor - Full Adder.
                Top Module
top block

The top module has 8bit inputs a & b. The output is the multiplication results 16bit r.

halfAdder module
half Adder block

full Adder module
full adder module

overall rough schematic
overall scehmatic


SIMMULATION
(carried on a = 255 X b = 255 (in unsigned decimal) = 65025 result)
simmulation result


Share this:

CONVERSATION

0 comments:

Post a Comment