Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」Quartusii软件仿真基本流程(使用VHDL)文章首发于我的个人博客这是VHDL系列教程的第一个教程。所谓教程,其实也就是记录我本人在学习过程中遇到的问题和学习内容的笔记,分享在这里供其他初学者参考,如果博客中出现任何错误或不严谨的地方,您可以在下方评论区指出来,您的反馈是对我最大的帮助,万分感谢。这篇博客主要介绍使用Quartusii软件进行仿真的步骤,由于是第一篇所以过程详细但有些冗余(问题不大),之后的教程应该专注于VHDL语言本身以及Quartusii的一些使用技巧。本教程将用

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

文章首发于我的个人博客

这是VHDL系列教程的第一个教程。所谓教程,其实也就是记录我本人在学习过程中遇到的问题和学习内容的笔记,分享在这里供其他初学者参考,如果博客中出现任何错误或不严谨的地方,您可以在下方评论区指出来,您的反馈是对我最大的帮助,万分感谢。

这篇博客主要介绍使用Quartus ii软件进行仿真的步骤,由于是第一篇所以过程详细但有些冗余(问题不大),之后的教程应该专注于VHDL语言本身以及Quartus ii的一些使用技巧。

本教程将用VHDL实现D触发器来走一遍Quartus ii仿真的流程。

首先,打开Quartus ii仿真软件,新建一个工程。

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

点击Next;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

这三个名称都应该相同;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

与上一步的文件名也相同;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

这里需要选择要编译对应的硬件设备。但是如果不用FPGA硬件仿真可以直接默认,对方真影响不是很大,但如果学校有FPGA板子则尽量选择板子对应的型号;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

工程新建完成之后,再创建一个VHDL文件;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

如果刚刚新建的VHDL没有保存,可以再File里选择另存为;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

VHDL文件名和工程名相同;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

在刚刚新建的VHDL文件中写入D触发器的实现代码(这里不做代码的讲解),然后点击小三角选择编译;

-- D trigger achievement

library ieee;
use ieee.std_logic_1164.all;

ENTITY Dtrigger IS PORT(
	D, clk : IN STD_LOGIC;
		 Q : OUT STD_LOGIC
	);
END ENTITY Dtrigger;

ARCHITECTURE one of Dtrigger is 
	SIGNAL sig_save : STD_LOGIC;
	BEGIN 
		PROCESS(clk)
			BEGIN 
				if clk'event and clk='1' then
				-- == rising_edge(clk) then
					sig_save <= D;
				end if;
		END PROCESS;
	Q <= sig_save;
END ARCHITECTURE one;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

新建一个波形仿真文件;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

新建波形仿真文件之后,在Edit中选择End Time设置仿真终止时间,默认为1us,时间有点短,改大一点;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

在这里我设置为51us;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

可以使用Ctrl+滚轮放缩。之后双击Name区域导入变量;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

点击list按钮就会显示出Entity(实体)定义的所有变量,之后全部导入即可;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

之后在波形文件中画出clk时序波形和输入变量D的波形,在画的时候我的经验是选择左下角的Grid,这样跟容易画;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

Processing下拉菜单的Simulator Tool里选择仿真方式;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

选择Timing,即时序仿真;选择Functional,即功能仿真;这里选择Timing;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

点击波形仿真按钮;仿真结束可以在仿真图里看到,当clk时钟信号为上升沿的时候,输出信号Q会随输入信号D的变化而变化,clk时钟信号为0的时候,保持原状态;

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

选择Tools下拉菜单里的Netlist Viewers–>RTL Viewer可以查看VHDL描述的硬件电路。(其实在VHDL编译之后就可以查看)

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

硬件电路如下图所示。

Quartus ii 软件仿真基本流程(使用VHDL)「建议收藏」

好的,以上就是本篇教程的全部内容了,以后的教程跟多的内容会是VHDL语言本身以及Quartus ii的使用技巧了。

End.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181678.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pytorch实现卷积神经网络_pytorch项目

    pytorch实现卷积神经网络_pytorch项目论文链接:https://arxiv.org/pdf/1608.06993.pdf顾名思义,DenseNet采用了高密度的跳连结构,对于每一层,使用先前所有层的输出作为输入,该层的输出将作为之后所有层的输入的一部分。因此对于一个dense模块,假设有LLL层,那么存在L(L+1)2\frac{L(L+1)}{2}2L(L+1)​直接的连接。dense模块之后会连接一个transition层,…

    2022年9月29日
    5
  • DSSM & Multi-view DSSM TensorFlow实现

    DSSM & Multi-view DSSM TensorFlow实现LearningDeepStructuredSemanticModelsforWebSearchusingClickthroughData以及其后续文章AMulti-ViewDeepLearningApproachforCrossDomainUserModelinginRecommendationSystems的实现Demo。1.数据D

    2025年8月19日
    5
  • C++11新特性之字节对齐、多参数模版、placement new

    1.内存对齐上面的代码演示了采用#pragmapack()方法实现内存对其。接下来介绍C++11中相关内存对其的方法。1.1alignasalignas指定内存对其大小,有时候我们希望不按

    2021年12月28日
    48
  • nginx做正向代理_正向代理和反向代理图

    nginx做正向代理_正向代理和反向代理图环境在一个网络环境中,只有一台服务器可以使用互联网,而其他内网服务器都可以访问到这台互联网服务器,于是,我们可以通过nginx的正向代理访问互联网地址此处举例:互联网服务器IP:192.168.1.100内网服务器IP:192.168.1.101部署安装包:nginx-1.20.2.tar.gzproxy_connect模块:gitclonehttps://github.com/chobits/ngx_http_proxy_connect_module.git操…

    2022年10月21日
    8
  • 初中数学课程与信息技术的整合[通俗易懂]

    初中数学课程与信息技术的整合[通俗易懂]2.1基本工具介绍 22.1.1滑动的梯子上的猫 22.1.2智能画笔挥洒自如 72.1.3选了再做谋而后动 92.1.4公式输入即打即现 102.1.5动态测量功能多多 152.2文本命令应有尽有 182.2.1点可不简单 182.2.2直线面面观 222.2.3圆和圆弧很重要 232.2.4圆锥曲线条件多 242.2.5函数曲线最有用 252.2.6图形变换功能强 2…

    2022年5月12日
    42
  • 经典的20道AJAX面试题[通俗易懂]

    经典的20道AJAX面试题[通俗易懂]1、什么是AJAX,为什么要使用Ajax(请谈一下你对Ajax的认识)什么是ajax:AJAX是“AsynchronousJavaScriptandXML”的缩写。他是指一种创建交互式网页应用的网页开发技术。Ajax包含下列技术:基于web标准(standards-basedpresentation)XHTML+CSS的表示;使用DOM(DocumentObjectM…

    2022年8月27日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号