我是靠谱客的博主 羞涩樱桃,最近开发中收集的这篇文章主要介绍Quartus 实现D触发器及仿真Quartus 实现D触发器及仿真,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Quartus 实现D触发器及仿真

文章目录

  • Quartus 实现D触发器及仿真
    • 1. D触发器
    • 2. 创建D触发器[原理图](https://so.csdn.net/so/search?q=原理图&spm=1001.2101.3001.7020)并仿真
      • 2.1创建工程
      • 2.2新建原理图文件
      • 2.3 编译
      • 2.4仿真波形图
      • 2.5 功能仿真
      • 2.6 时序仿真
    • 3. 调用D触发器并仿真
      • 3.1 创建工程
      • 3.2 新建原理图文件
      • 3.3 编译
      • 3.4 仿真波形图
    • 4. 用Verilog语言实现D触发器及时序仿真
      • 4.1 创建工程
      • 4.2 新建Verilog HDL 文件
      • 4.3 编译
      • 4.4 仿真波形图
    • 5. 总结
    • 6. 参考资料

1. D触发器

D触发器是一个具有记忆功能的,具有两个稳定状态的信息存储器件,是构成多种时序电路的最基本逻辑单元,也是数字逻辑电路中一种重要的单元电路。
因此,D触发器在数字系统和计算机中有着广泛的应用。触发器具有两个稳定状态,即"0"和"1",在一定的外界信号作用下,可以从一个稳定状态翻转到另一个稳定状态。
D触发器有集成触发器和门电路组成的触发器。触发方式有电平触发和边沿触发两种,前者在CP(时钟脉冲)=1时即可触发,后者多在CP的前沿(正跳变0→1)触发。
D触发器的次态取决于触发前D端的状态,即次态=D。因此,它具有置0、置1两种功能。
对于边沿D触发器,由于在CP=1期间电路具有维持阻塞作用,所以在CP=1期间,D端的数据状态变化,不会影响触发器的输出状态。
D触发器应用很广,可用做数字信号的寄存,移位寄存,分频和波形发生器等等。

image-20221108155120752

方程
在这里插入图片描述

功能表

DCLKQQN
0时钟上升沿01
1时钟上升沿10
x0last Qlast QN
x1last Qlast QN

时序图

image-20221108155620340

2. 创建D触发器原理图并仿真

2.1创建工程

File->New Project Wizard:

image-20221108182914153

image-20221108182847348

设置工程的存储位置和项目名称

image-20221108183018759

选择空项目

image-20221108183239723

没有要添加的文件,点击next

image-20221108183343186

选择目标芯片:cycloneIVE系列的EP4CE115F29C7

image-20221108183550206

EDA Tool Setting设置,直接点击next

image-20221108183642089

检测项目信息,点击finish

image-20221108183712007

此时界面上会出现顶层文件名和项目名:

image-20221108183820599

2.2新建原理图文件

打开QuartusII,选菜单“File”一“New”,在弹出的“New-”对话框中选择“ Design Files” 的原理图文件编辑输入项“Block block diagram/schematic File"按"OK"后将打开原理图编辑窗。

image-20221108183945512

image-20221108184009603

点击按纽“ Symbol Tool”或直接双击原理图空白处,从“ Symbol”窗中选择
需要的符号,或者直接在“name”文本框中键入元件名

image-20221108184151270

输入nand2,右边会出现对应的两输入的与非门,依次添加4个与门nand2、1个非门not、两个input、两个output

image-20221108184233143

可以按ctrl+鼠标滚轮放大,更好连线

image-20221108194411230

保存

image-20221108192300743

2.3 编译

进行编译,若无错误则可进行下一步,若有错进行原理图修改。

image-20221108195116432

查看硬件电路图:点击【Tools】→【Netlist Viewers】→【RTL Viewer】。

image-20221108195417448

image-20221108195435071

2.4仿真波形图

新建波形文件。如上面新建图形文件的方法,从“file”中选择“new”,然后从出现的对话框中选择“university program VWF”。
image-20221108200028095

输入波形文件。在波形文件编辑器左端大片空白处双击,出现“insert node or bus”对话框,点击“node finder”按钮。如图。

image-20221108200904406

然后在随后出现的“node finder”对话框中点击“list”按钮,则半加器中所有的输入输出引脚全部出现在对话框左边。再在该界面上点击“>>”,则把左边所有的端口都选择到右边,进入波形.

image-20221108201038003

点击两次“OK”后,出现如图的波形文件。

image-20221108201140346

image-20221108201154043

image-20221108201221799

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

image-20221108201703375

输入D设置低电平和高电平

image-20221108202116193

image-20221108202130840

保存文件:【File】→【Save】。

2.5 功能仿真

进行相关设置:

image-20221108202844269

image-20221109140131551

image-20221108202701856

image-20221108202812565

点击功能仿真编译按钮:

image-20221108205017440

如果出现下面的错误

image-20221108205210363

Tools -> Options -> General -> EDA Tool Options

image-20221109140058803

仿真结果如下:

image-20221109140233533

可以看到每次D输入发生变化时,在下一个上升沿Q输出会跟着发生变化。

2.6 时序仿真

点击时序仿真按钮会报错:

image-20221109140852902

进行相关设置:
主界面Processing→Start→Start Fitter

image-20221109145615803

无报错:

image-20221109145731523

点击Start TimeQuest Timing Analyzer

image-20221109145826842

无报错:

image-20221109150046561

返回VMF界面,再次点击时序仿真按钮

image-20221109150805507

输出变化延迟了一个时钟

3. 调用D触发器并仿真

3.1 创建工程

与上面创建工程一致

注意工程名不能与用到的器件名相同,如dff等。

3.2 新建原理图文件

方法同新建原理图文件一致

直接调用dff模块

image-20221109155333869

加入输入输出

image-20221109155532737

3.3 编译

保存并编译,然后查看原理图:

image-20221109160738610

image-20221109161031681

3.4 仿真波形图

具体步骤与2.4 仿真波形图相同。

image-20221109161919612

结果如下:

功能仿真:

image-20221109161822643

在下个上升沿输出改变。

时序仿真:

image-20221109162210519

延后一个时钟周期。

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

4.1 创建工程

与上面创建工程一致

4.2 新建Verilog HDL 文件

File→New→Verilog HDL File

image-20221109162519274

编写代码:

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

4.3 编译

硬件电路图

image-20221109163144018

4.4 仿真波形图

image-20221109163608943

功能仿真:

image-20221109163624932

时序仿真:

image-20221109163704080

与前面的波形相同。

5. 总结

第一种方式可以直接看到D触发器内部结构,清楚明了的了解触发器的原理。

第二种直接调用的方法十分的简单方便,但是只能通过名字知道它是什么,其内部对应我们来说是个黑盒,不利于了解其是实现的。

第三种Verilog语言编写,由我们写出D触发器的工作原理,软件直接生成器件。

通过这三种方法实现D触发器,我们可以发现D触发器的基本功能是输入发生改变后,在时钟上升沿时改变输出的信号。

6. 参考资料

Quartus II实现D触发器及时序仿真_WOOZI9600L²的博客-CSDN博客_quartus 时序图

最后

以上就是羞涩樱桃为你收集整理的Quartus 实现D触发器及仿真Quartus 实现D触发器及仿真的全部内容,希望文章能够帮你解决Quartus 实现D触发器及仿真Quartus 实现D触发器及仿真所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部