Professional Documents
Culture Documents
instantiation)
In 10 bit array multiplier, two inputs are taken (such as A,B) of 10 bits each.
Using the method given in the figure, we took two 10 bits inputs and multiplied
them…
After multiplication, we come to know that the total number minterms formed
are 100. ( As in the above figure the total number of minterms are 6*6=36. In
10 bits case it is 10*10=100). After multiplication the main thing that occurs is
the addition of the minterms to form the main product. The answer will be of
20 bits.
As it was shown, in this pic that first we had to made the And gates in the block
diagram. The total
number of And gates
was equal to the
number of minterms,
therefore, firstly we
made 100 And gates
according to our minterms. After doing this we had to use half adders and full
adders in order to add the minterms and form a product output. The block
diagram is given blow
1)
2)
3)
4)
5)
Source Code
module HA (cary, sm, A, B); //half adder
input A,B;
output cary, sm;
and j1 (cary,A,B);
xor j2 (sm, A, B);
endmodule
endmodule
module testbench_project();
reg [9:0]n,s;
wire [19:0]h;
Project dld(h, n, s);
initial
begin
n=10'b 0010101001; s=10'b1010100100;
#20 n=10'b1100011110; s=10'b0001011101;
#20 n=10'b10000001101; s=10'b1110111001;
end
endmodule
Simulation Waveform
Conclusion/Lesson Learnt
The lesson we learnt in making of this project was that we come to know how
to use full adders and half adders in the case of multipliers. We also come to
know that when we have to use a half adder and when to use a full adder in
making of a multiplier.
Problems Faced
The only problem that we faced was during the simulation of the program. The
error was coming like that
Loading program error…
Then we checked the program thoroughly and we come to know that we were
having a problem in the sequence of the inputs of the full adders. Then we
arranged them and the problem was solved easily.