VL2 异步复位的串联T触发器

VL2 异步复位的串联T触发器

设有一个输入T和输出Q,当时钟上升沿时,如果T和Q不相同时,其输出值会是1。(异或 )

这时:Q为1:

mux(T == 1,Q = ~Q,Q = Q)

以上是一个T触发器

verilog代码:

c 复制代码
timescale 1ns/1ns
module Tff_2 (
input wire data, clk, rst,
output reg q  
);
//*************code***********//
reg a ;

always @(posedge clk or negedge rst )begin
if (!rst)begin
    a <= 1'b0;
    q <= 1'b0;
end else begin
    a <= data ^ a;
    q <= a ^ q ;
end
end
//*************code***********//
endmodule

testbench:

复制代码
````timescale  1ns / 1ps

module tff_2_tb();

// Tff_2 Parameters
parameter PERIOD  = 10;


// Tff_2 Inputs
reg        data_T  ;
reg        clk   ;
reg        rst   ;

// Tff_2 Outputs
wire  q           ;    


initial
begin
    clk = 0;
    forever #(PERIOD/2)  clk=~clk;
end

initial
begin
     rst  =  0;
     data_T = 1'd0;
    #(PERIOD*2) rst  =  1; 
    #50 data_T = 1'd0;
    #50 data_T = 1'd1;
    #50 data_T = 1'd0;
    #50 data_T = 1'd1;
    #50 data_T = 1'd0;
    $finish;
end

Tff_2  Tff_2_TB (
   .data(data_T),
    .clk(clk),
    .rst(rst),
    .q(q)
);

endmodule


波形:

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/4a8b34ea2f8649569acc6c47148e31a5.png)
相关推荐
国科安芯9 小时前
ASC0101S自动双向电平转换原理深剖
单片机·嵌入式硬件·fpga开发·云计算·信息与通信
落chen10 小时前
7 Series FPGAs Clocking Resources
fpga开发
落chen1 天前
基于FPGA的IIC协议通信-强化篇
fpga开发
梦开始的地方 �1 天前
实例化和句柄
fpga开发
lf2824814311 天前
11 FM调制与解调的仿真
fpga开发
蓝悦无人机1 天前
Altium Designer 2024 PCB高级功能:不同Pitch的BGA设计要求
fpga开发·pcb·硬件设计·ad2024
ALINX技术博客2 天前
【黑金云课堂】FPGA技术教程Linux开发:系统定制
linux·运维·fpga开发
塔能物联运维2 天前
**塔能两相液冷:量化交易场景下的硬核验证,±1.5℃控温如何转化为真金白银**
人工智能·fpga开发·两相液冷
西安景驰电子3 天前
PCIe 授时卡原理及应用
运维·服务器·windows·单片机·嵌入式硬件·fpga开发
落chen3 天前
基于Vivado的FIFO-IP核-强化篇
fpga开发