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)
相关推荐
ShiMetaPi9 小时前
操作【GM3568JHF】FPGA+ARM异构开发板 使用指南:蓝牙
arm开发·嵌入式硬件·fpga开发·rk3568
知识充实人生16 小时前
静态时序分析详解之时序路径类型
fpga开发·时序路径·关键路径
9527华安1 天前
Xilinx系列FPGA实现DP1.4视频收发,支持4K60帧分辨率,提供2套工程源码和技术支持
fpga开发·音视频·dp1.4·4k60帧
cycf2 天前
高速接口基础
fpga开发
forgeda2 天前
从Vivado集成Lint功能,看FPGA设计的日益ASIC化趋势
fpga开发·vivado·lint·eco·静态检查功能
hexiaoyan8272 天前
国产化FPGA开发板:2050-基于JFMK50T4(XC7A50T)的核心板
fpga开发·工业图像输出·vc709e板卡·zynq 通用计算平台·模拟型号处理
雨洛lhw2 天前
The Xilinx 7 series FPGAs 设计PCB 该选择绑定哪个bank引脚,约束引脚时如何定义引脚电平标准?
fpga开发·bank·电平标准
红糖果仁沙琪玛2 天前
FPGA ad9248驱动
fpga开发
minglie13 天前
XSCT/Vitis 裸机 JTAG 调试与常用命令
fpga开发
沐欣工作室_lvyiyi3 天前
基于FPGA的电梯控制系统设计(论文+源码)
单片机·fpga开发·毕业设计·计算机毕业设计·电子交易系统