我是靠谱客的博主 爱笑鸵鸟,最近开发中收集的这篇文章主要介绍Quartus-II入门--D触发器及时序仿真,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

      • 一、Quartus-ll 的安装及使用
        • (一)、Quartus II的下载
        • (二)、Quartus II的安装
        • (三)、Quartus II的注册
      • 二、认识触发器
        • (一)D触发器结构
        • (二)D触发器的波形图
      • 三、Quartus-II输入原理图及时序仿真
        • (一)创建工程
        • (二)创建方框文件
        • (三)编译原理图文件
        • (四)创建vwm格式波形文件
        • (五)时序波形仿真
      • 四、Quartus-II调用D触发器及时序仿真
        • (一)创建工程
        • (二)创建方框文件
        • (三)编译原理图文件
      • 五、Quartus-II用Verilog语言实现D触发器及时序仿真
        • (一)创建工程
        • (二)编写Verilog文件
        • (三)查看生成的电路图
        • (四)利用Verilog语言编写测试代码实现时序仿真
      • 参考资料

一、Quartus-ll 的安装及使用

(一)、Quartus II的下载

百度网盘下载链接:
https://pan.baidu.com/s/1a9d-bq9RZmWrRV542X4IEA
提取码:ifte

说明: 本链接来自于正点原子官方资料下载

(二)、Quartus II的安装

下载后,解压压缩包。在这里插入图片描述
2.运行可执行程序

3.进入安装导向过程
①进入welcom界面
在这里插入图片描述
②勾选“I accept the agreement”,然后点击Next
在这里插入图片描述③选择相应安装的位置,然后点击Next
在这里插入图片描述
④选择安装的内容,然后点击Next
在这里插入图片描述
⑤点击Next
在这里插入图片描述
⑥安装过程(此过程时间可能比较久)
在这里插入图片描述
⑦点击Finish
在这里插入图片描述
⑧这时,会弹出一个小窗口,选择OK
在这里插入图片描述

(三)、Quartus II的注册

1.下载破解器文件
百度网盘链接:
https://pan.baidu.com/share/init?surl=6GnGbr4v-EFKF0VZYUArsg
提取码:766d
2.破解器的使用
①将Quartus_13.0_x64破解器.rar文件放在 ******quartusbin64 下面,并且解压将文件放到该目录下,运行可执行文件
②查找到 sys_cpt.dll 文件,然后双击此文件
③在安装目录下方生成一个“license”文件,点击“保存”
在这里插入图片描述
④破解器显示如下,点击“退出”就可以
在这里插入图片描述
⑤运行Quartus II 13.1,选择第二个,点击“ok”
在这里插入图片描述
在这里插入图片描述
⑥进入后,选择“tools”下方的“license setup”后,会弹出如下窗口,将ID复制即可
在这里插入图片描述
在这里插入图片描述
⑦在“ 安装目录中的quartusbin64”下找到“license”文件,并以记事本打开,如下图,画红色框的地方,将上一步所复制的 NIC ID替换掉 “XXXXXXXXX” 就完成了注册
在这里插入图片描述
⑧再打开 Quartus II ,按照下面的步骤查看: Tool --> License Setup,这样就成功注册
在这里插入图片描述

二、认识触发器

D触发器是一个具有记忆功能的,具有两个稳定状态的信息存储器件,是构成多种时序电路的最基本逻辑单元,也是数字逻辑电路中一种重要的单元电路。

(一)D触发器结构

在这里插入图片描述
从图中可以发现D触发器有四个管脚,分别是输入信号D,输出信号Q,时钟信号CLK以及复位信号RESET。
其功能是当RESET为低电平(0),Q处于低电平状态;当RESET为高电平(1),通过观察CLK状态,当CLK信号由0变1(上升沿)的时候,若D为低电平,Q就为低电平,若D为高电平,Q就为高电平。

(二)D触发器的波形图

理想状态
在这里插入图片描述
初始状态:
设置复位信号(rst_n)为1,d为0,q为1
变化过程:
rst_n为0的时候,q的值始终为0;rst_n为1的时候,当clk由0变为1,q的值根据d值而发生变化(值同)
实际状态
在这里插入图片描述
q值发生变化的时候,存在一定的延时(上升沿的时候q的值为变化之前的值)

三、Quartus-II输入原理图及时序仿真

(一)创建工程

File->New Project Wizard
在这里插入图片描述
填写工程名称
在这里插入图片描述
根据使用的FPGA,进行选择芯片系列及类型
在这里插入图片描述
直接Next
在这里插入图片描述
完成工程创建,点击Finish
在这里插入图片描述

(二)创建方框文件

选择New
在这里插入图片描述
选择Block Diagram/Schematic File
在这里插入图片描述
选择nand2,二个输入的与非门,依次添加四个and2和一个非门not
在这里插入图片描述
添加完成
在这里插入图片描述
选择连线工具
在这里插入图片描述
连线效果
在这里插入图片描述
保存电路图
在这里插入图片描述

(三)编译原理图文件

启动分析与综合(全编译)
rtl viewer,查看硬件电路图
在这里插入图片描述
硬件电路图
在这里插入图片描述

(四)创建vwm格式波形文件

选择VWF
在这里插入图片描述
选择Edit->Insert->Insert Node or Bus
在这里插入图片描述
添加Node or Bus
在这里插入图片描述
添加效果
在这里插入图片描述
编辑输入Clk,产生时钟信号
在这里插入图片描述
鼠标选择D,Q信号Q_n,,进行编辑
在这里插入图片描述

(五)时序波形仿真

功能仿真后的波形,满足D latch的时序(全编译后,也可以运行时序仿真)
可能会出现下图错误(如果没有提前设置)
在这里插入图片描述
解决方法
选择tools->Launch Simulation Library Compiler
在这里插入图片描述
返回vwm文件中,点击时序仿真,仿真结果如下
在这里插入图片描述

四、Quartus-II调用D触发器及时序仿真

(一)创建工程

方法同第三大点一样

(二)创建方框文件

调用D触发器
在这里插入图片描述
添加完成效果
在这里插入图片描述

(三)编译原理图文件

启动分析与综合(全编译),使用rtl viewer查看硬件电路图
硬件电路图
在这里插入图片描述
(四)创建vwm格式波形文件及时序仿真
创建文件方法同上
编辑好的波形
在这里插入图片描述
功能仿真结果
在这里插入图片描述
时序仿真结果
在这里插入图片描述

五、Quartus-II用Verilog语言实现D触发器及时序仿真

(一)创建工程

方法同第三大点一样

(二)编写Verilog文件

创建Verilog文件
点击File->New,选中Verilog
在这里插入图片描述
代码如下

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

    reg q;

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

保存文件并编译

(三)查看生成的电路图

使用rtl viewer查看硬件电路图
硬件电路图
在这里插入图片描述

(四)利用Verilog语言编写测试代码实现时序仿真

具体仿真过程,参考链接:
Modelsim SE版本的安装及使用方法
测试代码

//测试代码
`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的一个信号
endmodule

仿真效果
在这里插入图片描述

结论:通过三种方式实现D触发器及时序仿真的过程,可以发现D触发器的基本功能是在复位信号为1的时候,CLK的上升沿会引起Q值的变化。由此,可以得出次态方程为Qn + 1 = D
三种方式来说对于输入原理图可以更加清楚D触发器的结构,直接调用实际上就是不用自己了解D触发器的组成,Verilog语言实现会要求对语言有所掌握。三种方式来说,要想对结构有所了解,输入原理图会更好,对于元件比较多的来说,采用Verilog语言编程会更好。

参考资料

https://blog.csdn.net/qq_43279579/article/details/115176423
https://blog.csdn.net/qq_43279579/article/details/115286467

最后

以上就是爱笑鸵鸟为你收集整理的Quartus-II入门--D触发器及时序仿真的全部内容,希望文章能够帮你解决Quartus-II入门--D触发器及时序仿真所遇到的程序开发问题。

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

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

评论列表共有 0 条评论

立即
投稿
返回
顶部