Verilog学习之路(1)— Quartus II 13.0下载安装和HelloWorld

Verilog学习之路(1)— Quartus II 13.0下载安装和HelloWorld

一、前言

Quartus II是Altera的FPGA设计工具,

二、安装包下载

百度云链接地址:https://pan.baidu.com/s/1VtDVKaiUDgbZI1vICS9jlw 提取码:ac9r

其他相关资料下载:http://www.corecourse.cn/forum.php?mod=viewthread&tid=27539

三、软件安装

安装包下载好后解压
在这里插入图片描述
点击进入【Quartus-13.0.0.156-windows】文件夹中,其中包含了开发 FPGA 所需的所有工具, 包括 Quartus
II13.0 主程序、 仿真工具 modelsim-altera, Dspbuilder 以及帮助文档。然后点击【setup.bat】右键选择【以管理员身份运行】
在这里插入图片描述
等待一会后会出现如下安装界面,点击【Next】即可
在这里插入图片描述
然后勾选【I accept the agreement】后依然点击【Next】
在这里插入图片描述
接下来选择安装路径,默认安装在C盘,按照自己的习惯我安装在D盘
在这里插入图片描述
接下来选择安装的内容,第 1 项为 quartus 软件主包,为必装选项; 第 2 项为 quartus 软件 64 位系统支持包, 64 位系统需要安装此包,第 3 项为 quartus的帮助选项,建议安装。 第 4 项为 modelsim–altera 的初学者版本,基础的学习和仿真安装初学者版本即可完全满足条件,就不需要选择安装第 5 项了, 且第 5 项使用需要 license,没必要安装。 第 6 项为 dspbuilder,需要和 matlab 2012b 或更高版本配合使用,没有需求不用安装。勾选完成后,就可以点击 next 直接运行下一步了。

在这里插入图片描述
接下来是对安装选项的一个汇总报告,直接点击 【next】 即可开始安装,
在这里插入图片描述
接下来等待安装,比较漫长,可能需要 几十分钟的时间。
在这里插入图片描述
安装完成后点击【finish】即可
在这里插入图片描述

四、运行软件

安装完后会自动打开软件,如果没有自动打开,从开始菜单或桌面上找到 Quartus II13.0 软件打开即可, 首次运行,会弹出以下界面, 提示我们安装 license。这里我们选择最后一项, 然后点击【OK】进入下一个页面。
在这里插入图片描述
接下来跳出如下窗口,我们复制网卡号,然后点击【Cancel】关闭即可,然后将 quartus 主程序一并关闭。如果没有跳出,则在 Quartus II 中依次点击【Tools】 ->【License Setup】 来打开以下窗口。
在这里插入图片描述
然后回到安装包所在的目录,进入【许可工具】目录,我的是64位系统,将【Quartus_13.0_SP1_x64许可工具】解压出来
在这里插入图片描述
然后将其复制粘贴到你软件安装目录的 bin64 文件夹下, 如我的对应就是D:\software\altera\13.0\quartus\bin64
在这里插入图片描述
接下来选中它右键,选择以管理员身份运行, 则会出现以下界面:
在这里插入图片描述
然后我们点击应用,就会弹出如下所示的界面,即会生成一个 licens.dat 的文件,要求我们保存,我们先将其保存在桌面上。保存完成以后, 就可以关闭该工具了。
在这里插入图片描述
接下来,我们需要对刚刚生成的 license.dat 文件进行修改,找到先前复制的网卡号(NIC ID),将此 license 中的所有“XXXXXXXXXXXX”都用你的网卡号替换,然后保存此文件。
在这里插入图片描述
然后将其复制到一个不易被误删的文件夹下,一般选择保存在软件安装目录下,这里即【D:\software\altera\13.0】文件夹下。
(注意,这个地方一定要注意!!!!! 该路径千万不能再向下了,否则软件将不能正常识别 license)
在这里插入图片描述
然后再次运行 Quartus II 软件, 在弹出的页面中接着再次选择最后一项,点击OK,在打开的页面中,将 license file 指向你刚刚保存好的 license.dat,当出现图中所示的内容,即表明破解成功了。
在这里插入图片描述

五、安装器件库

安装器件库需要关闭Quartus II 软件,然后回到安装包的 Device 文件夹下,运行 DeviceInstall-13.0.0.156.exe 文件,
在这里插入图片描述
点击 next 即可,
在这里插入图片描述
在接下来弹出的页面中,为选择器件安装目录,这里必须和软件安装目录一致,所以这里修改为 D:\software\altera\13.0
在这里插入图片描述
将【Cyclone, Cyclone II/III/IV】勾选即可,然后点击【Next】
在这里插入图片描述
同样点击【Next】
在这里插入图片描述
等待其安装完成,安装完成后点击【Finish】即可。
在这里插入图片描述

六、新建Hello工程

打开安装好的 Quartus II 软件,点击【File】->【New project Wizard】来新建一个工程
在这里插入图片描述
直接单击 Next 即可,
在这里插入图片描述
选择新建工程所在路径、设置工程命名以及顶层设计实体名称。在输入顶层设计实体时默认与工程名称一致,此处可根据具体情况来自行修改, 如下图所示。
在这里插入图片描述
没有已有的设计文件需要添加, 直接点击 Next,
在这里插入图片描述

选择器件,随便选择一个即可,这里我选择Cyclone IV E 系列的EP4CE10F17C8,然后点击【Next】
在这里插入图片描述
这里将仿真工具设置为 ModelsimAltera ,语言选择 Verilog HDL,其他选项可暂时不做处理,然后点击【Next】
在这里插入图片描述
点击【Finish】即可
在这里插入图片描述

六、新建设计

单击 【File】->【New】,弹出如图选择框,选择 Design Files 中的 【Verilog HDL File】,然后点击【OK】
在这里插入图片描述
输入代码如下所示,然后以hello.v 命名保存到工程目录下

在这里插入图片描述

在这里插入图片描述
然后单击工具栏中的 Start Analysis & Synthesis 来进行分析和综合,
在这里插入图片描述
分析综合成功后点击【RTL Viewer】
在这里插入图片描述
可以看到为一个二选一多路选择器
在这里插入图片描述

七、功能仿真

新建如下所示hello_tb.v 文件保存到工程目录下
在这里插入图片描述
单击标题栏的 Assignments→Settings→Simulation,选中 Compile test bench,单击 Test Benches 后点击 OK。
在这里插入图片描述
点击 New, 弹出如图 所示的 Test Bench 设置文件对话框,找到已经编写好的激励文件,单击 Add。在 Test bench name 中填写对应的激励名称。点击 OK 后回到主界面。
在这里插入图片描述单击 Tools→Run Simulation Tool→RTL Simulation 来进行功能仿真,如图所示
在这里插入图片描述
然后就会发现报错如下所示,这是因为默认设置的仿真工具路径不对
在这里插入图片描述
点击Tools→Options→EDA Tool Options 设置对应的仿真软件的路径,注意,和原来的仿真路径相比,多了一层【modelsim_ase】目录
在这里插入图片描述

然后我们再次启动仿真,可以看到,启动了【ModelSim-Altera】软件,并可以在输出中看到打印了“Hello world", 同时我们还可以看到波形的变化。
,

  • 115
    点赞
  • 599
    收藏
    觉得还不错? 一键收藏
  • 35
    评论
目 录 译者序 前言 第1章 简介 1 1.1 什么是Verilog HDL? 1 1.2 历史 1 1.3 主要能力 1 第2章 HDL指南 4 2.1 模块 4 2.2 时延 5 2.3 数据流描述方式 5 2.4 行为描述方式 6 2.5 结构化描述形式 8 2.6 混合设计描述方式 9 2.7 设计模拟 10 第3章 Verilog语言要素 14 3.1 标识符 14 3.2 注释 14 3.3 格式 14 3.4 系统任务和函数 15 3.5 编译指令 15 3.5.1 `define和`undef 15 3.5.2 `ifdef、`else 和`endif 16 3.5.3 `default_nettype 16 3.5.4 `include 16 3.5.5 `resetall 16 3.5.6 `timescale 16 3.5.7 `unconnected_drive和 `nounconnected_drive 18 3.5.8 `celldefine 和 `endcelldefine 18 3.6 值集合 18 3.6.1 整型数 18 3.6.2 实数 19 3.6.3 字符串 20 3.7 数据类型 20 3.7.1 线网类型 20 3.7.2 未说明的线网 23 3.7.3 向量和标量线网 23 3.7.4 寄存器类型 23 3.8 参数 26 第4章 表达式 28 4.1 操作数 28 4.1.1 常数 28 4.1.2 参数 29 4.1.3 线网 29 4.1.4 寄存器 29 4.1.5 位选择 29 4.1.6 部分选择 29 4.1.7 存储器单元 30 4.1.8 函数调用 30 4.2 操作符 30 4.2.1 算术操作符 31 4.2.2 关系操作符 33 4.2.3 相等关系操作符 33 4.2.4 逻辑操作符 34 4.2.5 按位操作符 35 4.2.6 归约操作符 36 4.2.7 移位操作符 36 4.2.8 条件操作符 37 4.2.9 连接和复制操作 37 4.3 表达式种类 38 第5章 门电平模型化 39 5.1 内置基本门 39 5.2 多输入门 39 5.3 多输出门 41 5.4 三态门 41 5.5 上拉、下拉电阻 42 5.6 MOS开关 42 5.7 双向开关 44 5.8 门时延 44 5.9 实例数组 45 5.10 隐式线网 45 5.11 简单示例 46 5.12 2-4解码器举例 46 5.13 主从触发器举例 47 5.14 奇偶电路 47 第6章 用户定义的原语 49 6.1 UDP的定义 49 6.2 组合电路UDP 49 6.3 时序电路UDP 50 6.3.1 初始化状态寄存器 50 6.3.2 电平触发的时序电路UDP 50 6.3.3 边沿触发的时序电路UDP 51 6.3.4 边沿触发和电平触发的混合行为 51 6.4 另一实例 52 6.5 表项汇总 52 第7章 数据流模型化 54 7.1 连续赋值语句 54 7.2 举例 55 7.3 线网说明赋值 55 7.4 时延 55 7.5 线网时延 57 7.6 举例 57 7.6.1 主从触发器 57 7.6.2 数值比较器 58 第8章 行为建模 59 8.1 过程结构 59 8.1.1 initial 语句 59 8.1.2 always语句 61 8.1.3 两类语句在模块中的使用 62 8.2 时序控制 63 8.2.1 时延控制 63 8.2.2 事件控制 64 8.3 语句块 65 8.3.1 顺序语句块 66 8.3.2 并行语句块 67 8.4 过程性赋值 68 8.4.1 语句内部时延 69 8.4.2 阻塞性过程赋值 70 8.4.3 非阻塞性过程赋值 71 8.4.4 连续赋值与过程赋值的比较 72 8.5 if 语句 73 8.6 case语句 74 8.7 循环语句 76 8.7.1 forever 循环语句 76 8.7.2 repeat 循环语句 76 8.7.3 while 循环语句 77 8.7.4 for 循环语句 77 8.8 过程性连续赋值 78 8.8.1 赋值—重新赋值 78 8.8.2 force与release 79 8.9 握手协议实例 80 第9章 结构建模 83 9.1 模块 83 9.2 端口 83 9.3 模块实例语句 83 9.3.1 悬空端口 84 9.3.2 不同的端口长度 85 9.3.3 模块参数值 85 9.4 外部端口 87 9.5 举例 89 第10章 其他论题 91 10.1 任务 91 10.1.1 任务定义 91 10.1.2 任务调用 92 10.2 函数 93 10.2.1 函数说明部分 93 10.2.2 函数调用 94 10.3 系统任务和系统函数 95 10.3.1 显示任务 95 10.3.2 文件输入/输出任务 97 10.3.3 时间标度任务 99 10.3.4 模拟控制任务 99 10.3.5 定时校验任务 100 10.3.6 模拟时间函数 101 10.3.7 变换函数 102 10.3.8 概率分布函数 102 10.4 禁止语句 103 10.5 命名事件 104 10.6 结构描述方式和行为描述方式的 混合使用 106 10.7 层次路径名 107 10.8 共享任务和函数 108 10.9 值变转储文件 110 10.9.1 举例 111 10.9.2 VCD文件格式 112 10.10 指定程序块 113 10.11 强度 114 10.11.1 驱动强度 114 10.11.2 电荷强度 115 10.12 竞争状态 116 第11章 验证 118 11.1 编写测试验证程序 118 11.2 波形产生 118 11.2.1 值序列 118 11.2.2 重复模式 119 11.3 测试验证程序实例 123 11.3.1 解码器 123 11.3.2 触发器 124 11.4 从文本文件中读取向量 126 11.5 向文本文件中写入向量 127 11.6 其他实例 128 11.6.1 时钟分频器 128 11.6.2 阶乘设计 130 11.6.3 时序检测器 132 第12章 建模实例 136 12.1 简单元件建模 136 12.2 建模的不同方式 138 12.3 时延建模 139 12.4 条件操作建模 141 12.5 同步时序逻辑建模 142 12.6 通用移位寄存器 145 12.7 状态机建模 145 12.8 交互状态机 147 12.9 Moore有限状态机建模 150 12.10 Mealy型有限状态机建模 151 12.11 简化的21点程序 153 附录 语法参考 157 参考文献 172

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 35
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值