S24CSEU0117 Assignment4
S24CSEU0117 Assignment4
Lab Assignment 4:
Q1. Write the table for conversion of Decimal Numbers from (0-11) to its equivalent Binary, Gray,
BCD, and Ex-3.
//Aviral_Srivastava
//S24CSEU0117
endmodule
Testbench:
//Aviral_Srivastava
//S24CSEU0117
module tb_q3;
initial begin
$finish;
end
initial begin
end
endmodule
Q4. Write a Verilog code to implement the given Boolean expressions and its Testbench.
//Aviral_Srivastava
//S24CSEU0117
assign Z = ~D;
endmodule
Testbench:
//Aviral_Srivastava
//S24CSEU0117
module tb_q4;
reg A, B, C, D;
wire W, X, Y, Z;
initial begin
A = 0; B = 0; C=0; D=0;#10;
A = 0; B = 0; C=0; D=1;#10;
A = 0; B = 0; C=1; D=0;#10;
A = 0; B = 0; C=1; D=1;#10;
A = 0; B = 1; C=0; D=0;#10;
A = 0; B = 1; C=0; D=1;#10;
A = 0; B = 1; C=1; D=0;#10;
A = 0; B = 1; C=1; D=1;#10;
A = 1; B = 0; C=0; D=0;#10;
A = 1; B = 0; C=0; D=1;#10;
A = 1; B = 0; C=1; D=0;#10;
A = 1; B = 0; C=1; D=1;#10;
A = 1; B = 1; C=0; D=0;#10;
A = 1; B = 1; C=0; D=1;#10;
A = 1; B = 1; C=1; D=0;#10;
A = 1; B = 1; C=1; D=1;#10;
end
initial begin
$dumpfile("dump.vcd");
$dumpvars(1);
end
initial begin
end
endmodule
Q5. Write a Verilog code to implement a 4-bit Gray to Binary code converter and its Testbench.
//Aviral_Srivastava
//S24CSEU0117
assign B1 = A;
endmodule
Testbench:
//Aviral_Srivastava
//S24CSEU0117
module tb_q5;
reg A, B, C, D;
A = 0; B = 0; C=0; D=0;#10;
A = 0; B = 0; C=0; D=1;#10;
A = 0; B = 0; C=1; D=0;#10;
A = 0; B = 0; C=1; D=1;#10;
A = 0; B = 1; C=0; D=0;#10;
A = 0; B = 1; C=0; D=1;#10;
A = 0; B = 1; C=1; D=0;#10;
A = 0; B = 1; C=1; D=1;#10;
A = 1; B = 0; C=0; D=0;#10;
A = 1; B = 0; C=0; D=1;#10;
A = 1; B = 0; C=1; D=0;#10;
A = 1; B = 0; C=1; D=1;#10;
A = 1; B = 1; C=0; D=0;#10;
A = 1; B = 1; C=0; D=1;#10;
A = 1; B = 1; C=1; D=0;#10;
A = 1; B = 1; C=1; D=1;#10;
end
initial begin
$dumpfile("dump.vcd");
$dumpvars(1);
end
initial begin
$monitor("Time = %0t |A = %b, B = %b, C=%b, D=%b| B1=%b, B2=%b, B3
= %b, B4=%b", $time, A, B, C, D, B1, B2, B3, B4);
end
endmodule