`timescale 1ns/100ps
module nand4(d1, d2, d3, d4, out);
input d1, d2, d3, d4;
output out;
wire out1, out2;
nand nd1(out1, d1, d2);
nand nd2(out2, d3, d4);
nand nd3(out, out1, out2);
endmodule
module nand4_tb();
reg w1, w2, w3, w4;
wire out;
nand4 dut(.d1(w1), .d2(w2), .d3(w3), .d4(w4), .out(out));
initial begin
w1=0; w2=0; w3=1; w4=0;
#10 w1=0; w2=0; w3=1; w4=1;
#20 $finish;
end
initial begin
$fsdbDumpfile("top.fsdb");
$fsdbDumpvars(0, dut);
end
initial $my_timing(nand4_tb.dut.nd2, 10, 10);
endmodule