基于Quartus Prime18.1的安装与FPGA的基础仿真(联合Modelsim)教程

Quartus是一种美国科技公司Intel(英特尔)公司开发的FPGA(现场可编辑门阵列)设计编译软件,用作设计、仿真、综合和布局、支持多种编程语言,包括VHDL、Verilog等,并具有丰富的功能和工具库,可广泛应用于各种数字电路设计和实现。

一、 Quartus Prime 18.1 的下载

剑指官网:Intel® Quartus® Prime Lite Edition Design Software Version 18.1 for Windows

选择好相应安装包、版本号、相应操作系统

对应下载即可,大约24GB大小下载后打开安装包

二、安装教程

2.1 quartus程序的安装

完成上述下载操作后点击如上图所框选的运行文件,打开点next

同意安装使用协议,点Next;

选择安装路径后,继续下一步;

选择需要安装的内容,进行下一步

下一步直到设备驱动程序完成

2.2 ModelSim的安装

此安装影响后续的仿真模拟,所以仍需要安装调制,打开setup,点Next

无协议,选择License is not required,选择Next

接受条款选择路径,next

默认安装内容,继续下一步直到设备驱动程序完成

三、基于Quartus 的 CPLD/FPGA 应用开发

3.1. 建立工程

打开 Quartus Prime Lite 18.1 开发环境。菜单 File->New Project
Wizard.
Directory, Name, Top-Level Entity 页选择合适的工程存储路径(路
径不要有中文,最好 不要在桌面 ),输入工程名和顶层实体名。
例如:
     工程存储路径 D:/zhidao
     工程名 zhidao
     顶层实体名 zhidao
接下来 Project Type 选 Empty project,即建立一个空的工程
Add Files 页直接 Next
Family, Device & Board Settings 页里器件 Family 选择 Cyclone IV E,在下方选择 EP4CE15F17C8 (不要选成 EP4CE15F17C8L,最后带 L为低电压版)
EDA Tool Settings 页里,Simulation 选择 ModelSim- Altera 不要选 ModelSim )和 VHDL
Summary 页点 Finish,完成工程的建立
菜单 New -> Design Files -> VHDL File。
贴入 zhidao_vhdl.txt 中的代码
下面给出自己学习当中的课程实验相关代码:三八译码器
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;

ENTITY zhidao IS
PORT(
    x: IN STD_LOGIC_VECTOR(7 DOWNTO 0);
    y: OUT STD_LOGIC_VECTOR(2 DOWNTO 0)
);
END zhidao;

ARCHITECTURE tt OF zhidao IS
BEGIN
    PROCESS(x)
    BEGIN
        CASE x IS
            WHEN "11111110" => y <= "000";
            WHEN "11111101" => y <= "001";
            WHEN "11111011" => y <= "010";
            WHEN "11110111" => y <= "011";
            WHEN "11101111" => y <= "100";
            WHEN "11011111" => y <= "101";
            WHEN "10111111" => y <= "110";
            WHEN "01111111" => y <= "111";
            WHEN OTHERS     => y <= "XXX";
        END CASE;
    END PROCESS;
END tt;

(注意:实体名保持一致)保存文件为 zhidao.vhd 到之前选择的工程目录下(D:/zhidao)

3.2 编译

如果编译只是为了做功能仿真来验证逻辑,可以直接编译。 但如果编译是为了最后下载至硬件器件中运行,则在编译前还需要做如下操作:
菜单 Assignments->Device,点击 Device and Pin Options
在 Unused Pins 里,选择 As input tri-stated, 将其它未使用的引脚 状态设置为三态输入
在 Task 栏里双击 Compile Design,全部绿色对勾编译通过

3.3 仿真

菜单 Tools->Options,General->EDA Tool Options 中设置好 ModelSim Altera 可执行程序的路径 注意不要设置为倒数第三项 ModelSim)

菜单 Processing->Start->Start Test Bench Template Writer,在工程文件夹 simulation/modelsim下自动生成了Test Bench 模 板 zhidao.vht

直接用 Quartus 打开上一步生成的文件 zhidao.vht。(File->Open 找到 并打开文件,需要选择 All Files 才能看到 .vht 文件)
将 init:PROCESS 和 always:PROCESS 两个进程删除(从 init:PROCESS一直到 END PROCESS always)
将 zhidao_vht.txt 中的 init:PROCESS 和 always:PROCESS 两个进程的代码复制到原处,保存文件。
(进程 init 用来描述一般的输入信号,按顺序书写各个输入信号的变化即可,需要等待一段时间则利用 wait for 语句)
(进程 always 用来描述时钟信号之类的周期信号,在此进程中添加语句后需要删除最后的一句 wait,从而使此进程能够反复循环执行)
菜单 Assignments->Settings,EDA Tool Settings->Simulation 中,在 NativeLink settings 里选中 Compile test bench,点击后面的 Test Benches 按钮
在弹出的 Test Benches 选项卡里点 New

Test bench name 输入 zhidao_vhd_tst、End simulation at 设置为 1ms

最下方 Test bench files 里把 simulation/modelsim 下的 zhidao.vht 添加进去。点击 OK 设置完毕

菜 单 Tools->Run RTL Simulation 会自动打开 ModelSim 并 运 行TestBench 得到仿真结果

注意

是不是有手就行?

注意!!!!

每进行一个项目,必须按照相应的流程重新操作,切不可复制新代码到源文件,否则将会报错

(本文源于学校课程学习研究总结内容)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/716087.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

游戏中插入音效

一、背景音乐 准备&#xff1a;素材音乐 方法&#xff1a; 1、方法1&#xff1a; (1) 将背景音乐 bgAudio 拖放到Hierarchy面板 (2) 选中 bgAudio&#xff0c;勾选开始运行就播放、循环播放。调节音量&#xff08;volume) 2、方法2&#xff1a; (1) Create Empty&#x…

日志通关(一)

转载&#xff1a;https://mp.weixin.qq.com/s/eIiu08fVk194E0BgGL5gow 一、 日志体系 日志发展到今天&#xff0c;被抽象成了三层&#xff1a;接口层、实现层、适配层&#xff1a; 接口层&#xff1a;或者叫日志门面&#xff08;facade&#xff09;&#xff0c;就是interfa…

Aspice介绍——测试流程

文章目录 ASPICE简介一、V字模型的示意二、测试领域2.1 SWE.6&#xff1a;软件合格性测试过程目的过程成果基本实践&#xff08;BP&#xff09; 2.2 SYS.4:系统集成和集成测试过程目的过程成果基本实践&#xff08;BP&#xff09; 2.3 SYS.5&#xff1a;系统合格性测试过程目的…

【linux网络(四)】传输层协议详解(上)

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:Linux从入门到精通⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学更多操作系统知识   &#x1f51d;&#x1f51d; Linux网络 1. 前言2. UDP协议…

备忘录怎么插入文件和附件 备忘录插入文件附件方法

在繁忙的工作与生活中&#xff0c;我们时常需要记录各种信息&#xff0c;而备忘录则成为了我们不可或缺的得力助手。然而&#xff0c;当备忘录中需要包含的文件或附件越来越多时&#xff0c;如何高效、便捷地管理这些文件&#xff0c;便成为了一个亟待解决的问题。 想象一下&a…

深入剖析 Laravel 框架:构建高效PHP应用的最佳实践

引言 随着互联网的高速发展&#xff0c;PHP 作为一门广泛使用的服务器端脚本语言&#xff0c;始终备受开发者青睐。而在众多 PHP 框架中&#xff0c;Laravel 凭借其优雅的设计和高效率&#xff0c;成为了构建现代 Web 应用的热门选择。本文将从零开始&#xff0c;探讨如何使用 …

arcgis portal安装教程(含ECP授权文件)

本文介绍Portal 在windows环境下的安装部署过程&#xff0c;为了顺利进行Portal的安装&#xff0c;建议安装环境是windows server 2016。所以在操作之前首先保证有符合条件的安装机器或虚拟机&#xff0c;安装环境的存储空间建议不低于100G。 安装环境及软件 1、环境&#xff…

o.upload.addEventListener is not a function

o.upload.addEventListener is not a function 在本地的开发环境是可以正常上传的&#xff0c;但是到测试环境&#xff0c;上传就报了这么一个错 在网上寻找的方法 一、 在 node_modules/mockjs/dist/mock.js 第8308行 和 node_modules/mockjs/src/xhr/xhr.js 第216行 添加…

用一个ESP32S3-Zero把有线键盘变为无线

三脚猫最近一直琢磨&#xff0c;那些喜欢买剪线键盘&#xff0c;以及自制键盘瞎折腾的人都是怎么搞的。经过不懈努力&#xff0c;终于想明白除了直接的硬件一个个pin针的高低电压判断后转给蓝牙&#xff0c;拿到现成的古董剪线键盘还有一个方式其实是在usb host转发给蓝牙类似这…

通过iDrac8.0安装Windows Server 2022

1:登录iDrac。 2&#xff1a;启动虚拟控制台。 3&#xff1a;点击虚拟机介质。 4&#xff1a;连接虚拟介质。 5&#xff1a;映射CD/DVD 6: 找到本地的安装镜像。映射设备。 7&#xff1a;在下次引导中选择虚拟CD/DVD/ISO引导。 8&#xff1a;可以在电源中选择重置设备启动&…

替换掉的文件怎么恢复?5个方法,找回数据!

“怎么办呀&#xff1f;刚刚在操作电脑的时候一不小心替换了一个文件&#xff0c;现在根本不知道应该怎么操作才能恢复文件&#xff0c;希望大家可以帮帮我&#xff01;” 在数字化办公和日常生活中&#xff0c;我们时常会面临文件被意外替换的情况。或许是不小心将新版本的文…

据说可以防静电和浪涌的P6KE30CA

公司有些变送器之前在最后一道校准时&#xff0c;经常发生烧毁的情况。所以在电路的防反接的M7二极管前面又增加了一个TVS二极管&#xff0c;型号P6KE30CA。但愿加了这个好使把。今天又研究了一下这个TVS管子&#xff0c;把搜索到的东西记录一下。放这里备忘把&#xff0c;忘记…

Spring5依赖注入(DI)Set方式注入收录

Spring5依赖注入&#xff08;DI&#xff09;Set方式注入收录 依赖注入&#xff08;Dependency Injection&#xff0c;DI&#xff09;。 依赖 : 指Bean对象的创建依赖于容器&#xff0c;Bean对象的依赖资源。 注入 : 指Bean对象所依赖的资源 , 由容器来设置和装配。 Set方式…

用java代码实现一个函数,反转一个整数

import java.util.Scanner; public class Test_A25 {public static int reverseInte(int num){int reverse0;while(num!0){int digitnum%10;reversereverse*10digit;num/10;}return reverse;}public static void main(String[] args){System.out.print("请输入你要反转的…

【图书推荐】《Hive入门与大数据分析实战》

本书重点 Hive的网站流量分析项目、旅游酒店评价大数据分析项目&#xff0c;两个案例&#xff08;均包括SQL和Java编程两种解决方法&#xff0c;SQL实现不用编程&#xff09;可用于课题研究和毕业论文素材。 内容简介 Hive是基于Hadoop的一个数据仓库工具&#xff0c;用来进…

【Android】安Android Studio环境搭建注意点

人不走空 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌赋&#xff1a;斯是陋室&#xff0c;惟吾德馨 目录 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌…

通过python操作redis(windows)

注意在连接之前要确保 redis 服务已经安装。 更多的安装信息请查看&#xff1a;https://blog.csdn.net/sinat_20471177/article/details/132042779?spm1001.2014.3001.5501 redis 模块 Python 要使用 redis&#xff0c;需要先安装 redis 模块。如果要做数据导入/导出操作的…

VMware虚拟机-Ubuntu设置共享文件夹(超详细)

目录 前言1. 其他教程2. 创建共享文件夹3. VMware 设置4. Ubuntu 设置4.1 创建 hgfs 目录:4.2 挂载共享目录4.3 验证是否挂载成功4.4 设置开机自动挂载创作不易,禁止转载抄袭!!!违者必究!!! 创作不易,禁止转载抄袭!!!违者必究!!! 创作不易,禁止转载抄袭!!!违…

elasticsearch过滤器filter:原理及使用

码到三十五 &#xff1a; 个人主页 目录 一、引言二、Elasticsearch的过滤器概述三、使用DSL进行过滤操作术语过滤范围过滤复合过滤 四、优化策略五、结语 一、引言 Elasticsearch是一个功能强大的开源搜索引擎&#xff0c;广泛应用于各种数据检索和处理场景。在Elasticsearch…

jetson nano音频驱动代码分析

jetson nano音频驱动代码分析 英伟达audio框架(abub) Platform和Codec驱动程序的功能是 tegra210-admaif&#xff1a;代表音频 DMA (ADMA) 和音频集线器 (AHUB) 之间接口的内核驱动程序 tegra210-xxxx&#xff1a;代表AHUB中各种硬件加速器的内核驱动 tegra210-ahub&#xff1…