题解 | #异步复位的串联T触发器#
异步复位的串联T触发器
http://www.nowcoder.com/practice/9c8cb743919d405b9dac28eadecddfb5
这算是我认为最标准的设计了,先设计单独的t触发器,然后通过例化的方式串起来。 注意哦 output reg q 改成output wireq 。这是因为连线 都要用wire 型
`timescale 1ns/1ns
module Tff_2 (
input wire data, clk, rst,
output wire q
);
//*************code***********//
wire q1;
TFF TFF_inst1(
.data (data),
.clk (clk),
.rst (rst),
.q (q1)
);
TFF TFF_inst2(
.data (q1),
.clk (clk),
.rst (rst),
.q (q)
);
//*************code***********//
endmodule
//T触发器设计
module TFF(
input wire data, clk, rst,
output reg q
);
always @(posedge clk or negedge rst)begin
if(!rst)
q <= 1'b0;
else if(data == 1'b0)
q <= q;
else if(data == 1'b1)
q <= ~q;
end
endmodule