题目: alt

分析:做题之前首先需要知道T触发器的特点:输入为1时,输出进行翻转。

另外需要注意异步复位。

`timescale 1ns/1ns
module Tff_2 (
input wire data, clk, rst,
output reg q  
);
//*************code***********//
reg tmp;
    always@(posedge clk or negedge rst) begin
        if(~rst)
            tmp <= 0;
        else if(data)
            tmp <= ~tmp;
        else
            tmp <= tmp;
    end
    
    always@(posedge clk or negedge rst) begin
        if(~rst)
            q <= 0;
        else if(tmp)
            q <= ~q;
        else
            q <= q;
    end

//*************code***********//
endmodule