D Flip Flop

Post date: Nov 28, 2017 6:21:58 AM

dff1.v

module DFF1(Q,D,Clk,rst);

output Q;

input D,Clk,rst;

reg Q;//required in sequential circuits

always @(posedge Clk or negedge rst)

if(~rst)Q<=1'b0;

else Q=D;

endmodule

dff1testbench.v

module DFF1_tb;

reg D,Clk,rst;

wire Q;

integer i;

DFF1 DFF_inst(Q,D,Clk,rst);

initial

begin

D=1'b0;Clk=1'b1;rst=0;

#20 D=1'b0;Clk=~Clk;

#20 D=1'b1;Clk=~Clk;

#20 D=1'b0;Clk=~Clk;

#20 D=1'b1;Clk=~Clk;rst=1;

#20 D=1'b0;Clk=~Clk;

#20 D=1'b1;Clk=~Clk;

end

endmodule