Quartus中D触发器入门
Quartus中D触发器入门
- 一、软件准备
- 二、D触发器简介
- 三、创建并设计D触发器原理图并仿真
- 1.创建工程
- 2.新建原理图文件
- 3.编译
- 4.仿真波形图
- 5.仿真测试
- 功能仿真
- 时序仿真
- 四、调用D触发器进行仿真
- 1.创建一个新工程,同上
- 2.直接调用D触发器,元件名:dff
- 3.保存编译
- 4.查看功能仿真和时序仿真的波形图
- 5.功能仿真波形图(延时半个时钟周期):
- 6.时序仿真波形图(延时一个时钟周期):
- 五、使用verilog语言编写D触发器实现仿真
- 1.新建Verilog HDL 文件
- 2.编译
- 3.仿真测试
- 六、总结
一、软件准备
Quartus
modelsim
安装Quartus、modelsim教程
二、D触发器简介
D触发器是一个具有记忆功能的,具有两个稳定状态的信息存储器件,是构成多种时序电路的最基本逻辑单元,也是数字逻辑电路中一种重要的单元电路。
因此,D触发器在数字系统和计算机中有着广泛的应用。触发器具有两个稳定状态,即"0"和"1",在一定的外界信号作用下,可以从一个稳定状态翻转到另一个稳定状态。
D触发器有集成触发器和门电路组成的触发器。触发方式有电平触发和边沿触发两种,前者在CP(时钟脉冲)=1时即可触发,后者多在CP的前沿(正跳变0→1)触发。
D触发器的次态取决于触发前D端的状态,即次态=D。因此,它具有置0、置1两种功能。
对于边沿D触发器,由于在CP=1期间电路具有维持阻塞作用,所以在CP=1期间,D端的数据状态变化,不会影响触发器的输出状态。
D触发器应用很广,可用做数字信号的寄存,移位寄存,分频和波形发生器等等。
三、创建并设计D触发器原理图并仿真
1.创建工程
点击New Project Wizard
选择一个储存位置并设置名称
先不用添加文件
选择芯片:cycloneIVE系列的EP4CE11529C7
2.新建原理图文件
选菜单“File”一“New”,在弹出的“New-”对话框中选择“ Design Files” 的原理图文件编辑输入项“Block block diagram/schematic File"按"OK"后将打开原理图编辑窗。
如图,使用4 个 nand2 与非门,1 个 not 非门,2个输入管脚和2个输出管脚,并连线组成电路,然后保存在该目录下
3.编译
进行编译,若无错误则可进行下一步,若有错进行原理图修改。
查看硬件电路观察建造了电路是否正确:
点击【Tools】→【Netlist Viewers】→【RTL Viewer】。
4.仿真波形图
新建波形文件。如上面新建图形文件的方法,从“file”中选择“new”,然后从出现的对话框中选择“university program VWF”。
点击“OK”。
输入波形文件。在波形文件编辑器左端大片空白处双击,出现“insert node or bus”对话框,点击“node finder”按钮。如图。
然后在随后出现的“node finder”对话框中点击“list”按钮,则半加器中所有的输入输出引脚全部出现在对话框左边。再在该界面上点击“>>”,则把左边所有的端口都选择到右边,进入波形,如图。
编辑输入CLK,产生时钟信号
输入D随便设置几个低电平和高电平
将其保存
5.仿真测试
功能仿真
仿真结果如下(延迟了半个时钟周期):
时序仿真
时序仿真,延迟了一个时钟周期。
四、调用D触发器进行仿真
1.创建一个新工程,同上
2.直接调用D触发器,元件名:dff
再添加输入和输出管脚。最终原理图如下:
3.保存编译
编译成功后,查看原理图是否正确
4.查看功能仿真和时序仿真的波形图
方法同上
5.功能仿真波形图(延时半个时钟周期):
6.时序仿真波形图(延时一个时钟周期):
五、使用verilog语言编写D触发器实现仿真
1.新建Verilog HDL 文件
编写代码
//dwave是文件名
module dwave(D,CLK,Q);input D;input CLK;output Q;reg Q;always @ (posedge CLK)//我们用正的时钟沿做它的敏感信号beginQ <= D;//上升沿有效的时候,把d捕获到qend
endmodule
2.编译
编译成功后查看硬件电路图
3.仿真测试
延迟了半个周期
延迟一个周期
六、总结
三种方式的比较:
- 输入原理图能更清楚的了解D触发器的内部结构。
- 调用D触发器最方便,但无法清晰的看到D触发器的内部结构。
- 使用Verilog语言可以更好加强我们对D触发器的工作原理的理解。
Quartus中D触发器入门相关推荐
- oracle中创建触发器
从csdn上面看到一个如何创建触发器的问题,感觉自己很有必要保存学习,特写下来: 条件: 现有A.B两张表 A: 工号 姓名 密码 性别 年龄 ... B: 工号 姓名 密码 当对A表中的" ...
- java触发器如何创建表_在java 中执行触发器代码、创表语句
由于程序的需要,在SQLServer 中创建触发器及建表,碰到了在java 代码中执行创建触发器及表. /**建立中间表*/ public static final String createMidd ...
- c# mysql 触发器 实时,C#-.Net SqlDataAdapter和SQL Server中的触发器
我在SQL Server中使用触发器,该触发器在SQL Server Management Studio的查询窗口中执行查询时按要求工作.触发器的目的是从一个表中获取最新值(其中一个ID对应于插入的I ...
- 如何在SQL Server中使用触发器
触发器是一种特殊的存储过程,在使用触发器之前可以与存储过程进行比较,触发器主要是通过事件进行触发而被执行的,而存储过程可以通过存储过程名称而被直接调用. 触发器主要优点如下: 触发器是自动的:当对表中 ...
- oracle触发器比较,Oracle使用触发器和mysql中使用触发器的比较
一.触发器 1.触发器在数据库里以独立的对象存储, 2.触发器不需要调用,它由一个事件来触发运行 3.触发器不能接收参数 --触发器的应用 举个例子:校内网.开心网.facebook,当你发一个日志, ...
- figma设计_如何在Figma中构建设计入门套件(第1部分)
figma设计 Figma教程 (Figma Tutorial) Do you like staring at a blank canvas every time you start a new pr ...
- WPF中的触发器(Trigger)
这节来讲一下WPF中的触发器--Trigger.触发器,是指在既定条件或者特殊场景下被触发,从而去执行一个操作.在WPF中,触发器可以分为以下几类:基本触发器(Trigger):事件触发器(Event ...
- Quartus 中快速分配器件管脚
在quartus中分配器件管脚最笨的方法是对于器件手册一个一个的敲进去,这样做如果用到的管脚很好还没有发觉什么不好,但是当用到的器件管脚很多的时候就会发现很麻烦,而且容易出错.接下来我来介绍一种很方便 ...
- ACM中java快速入门
2019独角兽企业重金招聘Python工程师标准>>> ACM中java快速入门 附: Chapter I. Java的优缺点各种书上都有,这里只说说用Java做ACM-ICPC的特 ...
最新文章
- Open×××的Linux内核版,鬼魅的残缺 part I:The PROTOCOL
- ArtRage中文版
- stm32 定时器初步
- 8086CPU常见汇编指令、debug命令
- 计算机网络信息安全理论与实践教程-蒋建春
- vSwitch报文转发分析
- 网络操作 回调函数 http
- VC++中CEdit控件实现回车换行
- 每个计算机主机有且只能有一块硬盘对不对,电子科技大学计算机基础试卷.doc...
- Mac下使用数据库将Excel数据转换存入.plist
- 广西2021各校高考成绩查询入口,2021广西高考成绩查询时间广西高考分数查询入口和查分方式_高三网...
- 如何突破网盘限速?获取下载链接的三种方法
- CSDN博文精选:最受欢迎的系列专栏博客推荐
- js视频封面(截帧)
- C++ 查重(码蹄集 新手村)
- PCIe系列专题之一:PCIe技术概述
- 我的linux系统怎么输入pv,如何在Linux系统中使用pv命令
- kubernetes国内镜像代理
- 你只是想学好linux而已
- 四十三、迎接挑战,苦练内功,迎接春天的到来