题解 | 异步复位的串联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_reg = 0 ; always@(posedge clk or negedge rst)begin if(!rst) q<=0; else begin data_reg <= data ^ data_reg ; q <= data_reg ^ q ; end end //*************code***********// endmodule
1、要熟悉T触发器的表达式:Q* = T 异或 Q;
2、要注意是异步复位,复位信号低有效;故用always@(posedge clk or negedge rst)begin
if(!rst).....end
3、是两级T触发器串联,故需要定义一个中间变量,寄存第一个T触发器的输出。reg data_reg = 0 ;
查看8道真题和解析