Quartus 实现 D 触发器及时序仿真

目录

Quartus 实现 D 触发器及时序仿真

一.Quartus 输入原理图及时序仿真

1.创建工程

2.创建方框文件

3.编译原理图文件

4.创建 vwm 格式波形文件

5.时序波形仿真

二.用 Verilog 语言实现 D 触发器及时序仿真

1.编写Verilog 文件

2.查看生成的电路图

3.利用 Verilog 语言编写测试代码实现时序仿真

Quartus 实现 D 触发器及时序仿真

一.Quartus 输入原理图及时序仿真

1.创建工程

File->New Project Wizard

芯片选择为 EP4CE115F23C7

创建完成

2.创建方框文件

NEW->Block Diagram/Schematic File

依次添加四个 and2 和一个非门 not

并选择连线工具

完成图如下:

然后保存。

3.编译原理图文件

Processing->Start compilation

然后查看硬件电路图

硬件电路图如下:

4.创建 vwm 格式波形文件

选择 Edit->Insert->Insert Node or Bus

添加 Node or Bus

效果图如下:

编辑输入 Clk,产生时钟信号

鼠标选择 D,Q 信号 Q_n,,进行编辑

5.时序波形仿真

返回 vwm 文件中,点击时序仿真,仿真结果如下

二.用 Verilog 语言实现 D 触发器及时序仿真

1.编写Verilog 文件

创建 Verilog 文件

点击 File->New,选中 Verilog

代码如下:

//dwave 是文件名** module dwave(d,clk,q); input d; input clk; **output q;

//dwave 是文件名** module dwave(d,clk,q); input d; input clk; **output q;
reg q;

always @ (posedge clk)//我们用正的时钟沿做它的敏感信号
begin
    q <= d;//上升沿有效的时候,把d捕获到q
end
endmodule

保存文件并编译。

2.查看生成的电路图

使用 rtl viewer 查看硬件电路图\硬件电路图

3.利用 Verilog 语言编写测试代码实现时序仿真

测试代码:


`timescale 1ns / 1ns

module dwave_tb;reg clk,d;wire q;
dwave u1(.d(d),.clk(clk),.q(q));

initial
begin
    clk = 1;
    d <= 0;
    forever
    begin
        #60 d <= 1;//人为生成毛刺
        #22 d <= 0;
        #2  d <= 1;
        #2  d <= 0;
        #16 d <= 0;//维持16ns的低电平,然后让它做周期性的循环
    end
end

always #20 clk <= ~clk;//半周期为20ns,全周期为40ns的一个信号

仿真效果如下:

参考------Quartus-II13.1三种方式实现D触发器及时序仿真_quartusd触发器的怎么输出q非-CSDN博客

  • 15
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值