题解 | #异步复位的串联T触发器#
异步复位的串联T触发器
https://www.nowcoder.com/practice/9c8cb743919d405b9dac28eadecddfb5
`timescale 1ns/1ns
module Tff_2 (
input wire data, clk, rst,
output reg q
);
//*************code***********//
reg data_1;
always @(posedge clk or negedge rst) begin
if(! rst)begin
data_1 <= 1'b0;
end
else if(data)
begin
data_1 <= ~data_1 ;
end
else
data_1<=data_1;
end
always @(posedge clk or negedge rst) begin
if(! rst)begin
q <= 1'b0;
end
else if(data_1)
begin
q <= ~q ;
end
else
q<=q;
end
//*************code***********//
endmodule
参考了讨论组里大佬的思路,讲讲结构
(起始一开始打算用例化写的,但是发现这个代码貌似只能一个文件?)
所以代码的思路和例化相同,两个模块重复未两个always复位,复位采用异步复位
两个模块之间本身需要连线,因为是一个文件,所以采用一个寄存器存放值
然后两个触发器就连一起了
没了QvQ

