2019-09-10 00:08:03 -05:00
|
|
|
module adff
|
|
|
|
( input d, clk, clr, output reg q );
|
|
|
|
initial begin
|
|
|
|
q = 0;
|
|
|
|
end
|
|
|
|
always @( posedge clk, posedge clr )
|
|
|
|
if ( clr )
|
|
|
|
q <= 1'b0;
|
|
|
|
else
|
|
|
|
q <= d;
|
|
|
|
endmodule
|
|
|
|
|
|
|
|
module adffn
|
|
|
|
( input d, clk, clr, output reg q );
|
|
|
|
initial begin
|
|
|
|
q = 0;
|
|
|
|
end
|
|
|
|
always @( posedge clk, negedge clr )
|
|
|
|
if ( !clr )
|
|
|
|
q <= 1'b0;
|
|
|
|
else
|
|
|
|
q <= d;
|
|
|
|
endmodule
|
|
|
|
|
2019-09-11 09:01:19 -05:00
|
|
|
module dffs
|
2019-09-10 00:08:03 -05:00
|
|
|
( input d, clk, pre, clr, output reg q );
|
|
|
|
initial begin
|
|
|
|
q = 0;
|
|
|
|
end
|
2019-09-11 09:01:19 -05:00
|
|
|
always @( posedge clk )
|
|
|
|
if ( pre )
|
2019-09-10 00:08:03 -05:00
|
|
|
q <= 1'b1;
|
|
|
|
else
|
|
|
|
q <= d;
|
|
|
|
endmodule
|
|
|
|
|
2019-09-11 09:01:19 -05:00
|
|
|
module ndffnr
|
2019-09-10 00:08:03 -05:00
|
|
|
( input d, clk, pre, clr, output reg q );
|
|
|
|
initial begin
|
|
|
|
q = 0;
|
|
|
|
end
|
2019-09-11 09:01:19 -05:00
|
|
|
always @( negedge clk )
|
2019-09-10 00:08:03 -05:00
|
|
|
if ( !clr )
|
|
|
|
q <= 1'b0;
|
|
|
|
else
|
|
|
|
q <= d;
|
|
|
|
endmodule
|