Experiment Name: Top-Down Design of VLSI Circuits Using Verilog Hardware Description
Experiment Name: Top-Down Design of VLSI Circuits Using Verilog Hardware Description
Objective:
The objectives of this experiment are:
a.) Learn the basics of behavioral, dataflow, gate and switch level Verilog HDL.
b.) Define digital devices such as adders and multiplexers in behavioral, dataflow and gate level
Verilog HDL, simulate them with ISE Simulator (ISIM) (Xilinx) and synthesize them with XST
8.2 (Xilinx) in ISE WebPack IDE (Xilinx).
c.) Define digital devices such as adders and multiplexers in gate-level and switch level Verilog
HDL, generate physical layout using a silicon compiler Microwind (Microwind), Electric VLSI
Design System, LEdit (Tanner Tools).
2 to 1 MUX:
Circuit Diagram:
Verilog code:
Module
2_to_1MUX(B,A,SEL,Y);
Input A,B,SEL;
Output Y;
Wire SEL_BAR,P,Q;
NOT Inv(SEL_BAR,SEL);
AND AND1(P,A,SEL_BAR);
AND AND2(Q,SEL,B);
OR
Output-Y(Y,P,Q);
endmodule
2 to 2 MUX:
Verilog code:
Module
2_to_1MUX(A0,B0,A1,B1,SEL,Y0,Y1);
Input A0,B0,A1,B1,SEL;
Output Y0,Y1;
Wire SEL_BAR0,P0,Q0,SEL_BAR1,P1,Q1;
NOT Inv0(SEL_BAR0,SEL);
NOT Inv1(SEL_BAR1,SEL);
AND AND_01(P0,A0,SEL_BAR0);
AND AND_02(Q0,SEL,B0);
AND AND_11(P1,A1,SEL_BAR1);
AND AND_12(Q1,SEL,B1);
OR
Output-Y0(Y0,P0,Q0);
OR
Output-Y1(Y1,P1,Q1);
endmodule
VERILOG Schematic Diagram:
Full Adder:
Verilog code:
Module
FULL_adder(A,B,CIN,SUM,CARRY);
Input A,B,CIN;
Output SUM,CARRY;
Wire P,Q,R;
XOR XOR_1(P,A,B);
XOR XOR_2(SUM,P,CIN);
AND AND1(Q,P,CIN);
AND AND2(R,A,B);
OR
CARRY_OUT(CARRY,Q,R);
endmodule
Verilog code:
Module
2bitFULLadder(A0,B0,A1,B1,SUM_0,SUM_1,Carry_Out);
Input A0,B0,A1,B1;
Output SUM_0,SUM_1,Carry_Out;
Wire P,Q,R,S;
AND AND1(P,A0,B0);
AND AND2(R,P,Q);
AND AND3(S,A1,B1);
XOR XOR_3(Q,A1,B1);
XOR XOR_1(SUM_0,A0,B0);
XOR XOR_2(SUM_1,P,Q);
OR
CARRY_OUT(Carry_Out,R,S);
endmodul