FPGA Vivado环境下实现D触发器

题目要求:使用Verilog HDL语言设计一个D触发器。请提交程序源代码和Word格式的作业文档,作业文档中应给出程序源代码及RTL分析原理图。

D触发器的工作原理:

初始状态下,触发器处于复位状态,输出为复位信号的稳定状态(通常为0)。使能信号 EN 和输入数据 D 的值不会影响触发器的状态。

当使能信号 EN 为高电平时,D触发器处于使能状态,可以根据时钟信号 CLK 的变化来接收和存储输入数据。

当使能信号 EN 为低电平时,D触发器处于禁止状态,不论时钟信号 CLK 如何变化,都不会对输入数据进行接收或存储。

当时钟 CLK 发生上升沿或下降沿时(取决于D触发器的类型),且使能信号 EN 为高电平时,D触发器根据输入数据 D 来更新其状态。

如果是上升沿触发的D触发器,在时钟上升沿时,输入数据 D 的值将被传递到触发器的输出端 Q 中,即 Q = D。

如果是下降沿触发的D触发器,在时钟下降沿时,输入数据 D 的值将被传递到触发器的输出端 Q 中,即 Q = D。

当复位信号 RESET 为高电平时,无论时钟 CLK 和使能信号 EN 的状态如何,触发器均处于复位状态,输出为复位信号的稳定状态。

1.新建一个工程:

2.选芯片的时候任选,不需要管具体的芯片型号,因为原理是一样的

3.双击打开DFF文件

4.可以在工作区写代码了(代码如下)

复制代码
module DFF(
    input RSTn,
    input CLK,
    input En,
    input D,
    output Q
    );
    wire d,en;
    reg q;
    assign d=D;
    assign Q=q;
    assign en=En;
    always @(posedge CLK or negedge RSTn)begin
        if(!RSTn) begin
        q <= 1;
        end else
            if(en) begin
                q <= d;
            end else
                q <= q;
         end
endmodule

3.点击 RTL ANALYSIS→Open Elaborated Design→Schematic 项,可以查看 RTL 描述后的结构,如下所示:

最后,如有帮助,动动小手点个赞呗

相关推荐
Saniffer_SH9 小时前
【高清视频】Gen6 服务器还没到,Gen6 SSD 怎么测?Emily 现场演示三种测试环境
人工智能·驱动开发·测试工具·缓存·fpga开发·计算机外设·压力测试
zlinear数据采集卡13 小时前
双核架构深度解析:ARM+FPGA如何让数据采集卡实现500Ksps高性能?
arm开发·fpga开发·架构
9527华安13 小时前
FPGA实现GTH Transceivers Wizard传输2路视频,基于aurora 8b10b编解码架构,提供4套工程源码和技术支持
fpga开发·gth·aurora 8b10b·transceivers
FPGA小徐1 天前
FPGA 数字信号处理(二):并行 FIR 滤波器的 Verilog 全流程设计与实现
fpga开发
国科安芯2 天前
基于AS32S601ZIT2型抗辐照MCU的商业航天卫星姿态确定与控制系统研究
单片机·嵌入式硬件·安全·fpga开发·架构·risc-v
ALINX技术博客2 天前
【黑金云课堂】FPGA技术教程FPGA基础:I2C 总线通信技术
fpga开发·i2c
Hello-FPGA2 天前
Xilinx KU040 FPGA Camera Link 图像采集
c++·fpga开发
明德扬2 天前
AD采集卡应用示例交流:从传感器采集到高速信号验证
fpga开发
傻童:CPU2 天前
PS与PL之间的交互
fpga开发
神奇元创2 天前
商用级光路加速卡:大模型推理的极速落地方案
python·神经网络·fpga开发·dsp开发