FPGA设计技巧与案例开发详解
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第3章 Quartus II软件安装与Verilog HDL简介

3.1 Quartus II软件安装

3.1.1 写在前面的话

大千世界,瞬息万变,唯一不变的是变化。但一本持久服务于FPGA业界的书,真的很难一直采用最新版本Quartus II来作为开发的基础。Altera公司以每年1个版本及多个补丁的节奏更新着Quartus II,一方面不断提升性能与优化界面,提供更好的操作体验;另一方面也随着新器件、工具的发布,更新版本的功能。

要追逐Quartus II的版本,是一个很惊喜又苦恼的事情,好在该软件近几年版本兼容性比较好。笔者于2009年开始学习FPGA时,最先接触的是Quartus II 5.1版本,随后专注FPGA开发,先后体验过Quartus II 6.0~18.0版本。以下介绍Quartus II版本进化带来的问题。

(1)Quartus II 9.1版本之前的软件自带仿真组件,而之后的软件不再包含此组件,因此必须通过第三方安装Modelsim。

(2)Quartus II 9.1版本之前的软件自带元件库,不需要额外下载安装,而Quartus II 10.0及之后版本需要额外元件库,即Device组件,优点是可以有针对性地选择安装。

(3)如果设计涉及Nios II,则Quartus II 11.0版本之前的软件需要额外下载安装Nios II,而Quartus II 11.0及之后版本自带Nios II组件,即安装Quartus II的同时默认安装Nios II。

(4)Quartus II 9.1版本之前的软件自带SOPC组件,而Quartus10.0版本自带SOPC及Qsys两个组件,但从Quartus II 10.1版本开始,Quartus II只包含Qsys组件,不再有SOPC。

(5)Quartus II 9.1及之前的版本软件包括自动时序分析,即Settings中包含Classic-TimingAnalyzer,但从Quartus II 10.1版本开始只有TimingAnalyzer,即只能手动添加时序约束,也就是SDC文件。

(6)更奇怪的是Quartus II编辑对中文的支持。

① Quartus II 8.0以前的版本,既可以输入中文,也可以显示中文。

② Quartus II 8.0~9.1的版本可以显示中文,但不能输入中文。

③ Quartus II 9.1~ II 11的版本不能输入中文,同时也不可以显示中文。

④ 从Quartus II 11.0开始既能显示中文字符,同时也能输入中文。

⑤ 从Quartus II 13.0版本开始,软件没在有较大的改变,兼容性都较好。

⑥ 从Quartus II 16.0版本开始,由于Altera公司被Intel公司收购,所以更名为Quartus Prime;截至目前,最新的版本为Quartus II 18.0(出于版本的一致性及业界称呼的习惯,本书继续沿用“Quartus II”,而非“Quartus Prime”)。

笔者刚开始写这本书时用的还是Quartus II 12.0版本,然而快写完时已经是Quartus II 13.0版本,因此建议用户尽快更新;在2015年修订第二版时,最新版本为Quartus II 15.1版本,但由于和Quartus II 13.0版本没有太大差距,因此在Quartus II 13.0支持X86和X64的基础上,勉强延续了Quartus II 13.0;然而当下,正当笔者修订第三版时,最新的版本已经是Quartus II 18.0。每一次更新也给开发人员带来了一定问题,因为这不仅涉及Quartus II开发工程的更新,更是关系软件界面方面修正的巨大工作量。“我们总是一边在努力,一边在放弃”,为了更好地适应新时代,本书最终选择了当下最新的Quartus II 18.0。

3.1.2 Quartus II 18.0软件下载

目前,Quartus II最新版本为18.0,包括三个软件版本,分别为专业版(Pro Edition)、标准版(Standard Edition)和精简版(Lite Edition)。这三个版本的比较如表3.1所示。

表3.1 Quartus II 18.0专业版、标准版和精简版的比较

本书使用的软件版本为Quartus II 18.0套件的精简版,无须License即支持Cyclone V系列器件,其对应地址为:http://download.altera.com/akdlm/software/acdsinst/18.0std/614/ib_tar/Quartus-lite-18.0.0.614-windows.tar

3.1.3 Quartus II 18.0软件安装

Quartus II 18.0软件下载完成后,对安装包进行解压缩,解压后的安装包内容如图3.1所示(以前的版本可以是*.iso格式,可虚拟光驱打开直接安装;而Quartus II 16.0版本开始却只能解压后安装)。

图3.1 Quartus II 18.0安装包内容

Quartus II 18.0软件安装步骤如下。

(1)双击如图3.1所示中的setup图标,启动Quartus II安装界面,单击【Next】按钮,选择接受协议,继续单击【Next】按钮,如图3.2所示。

图3.2 安装步骤1

(2)选择软件安装目录。完全安装Quartus II 18.0大约需要13GB的硬盘可用空间,笔者一般直接将软件安装在D盘(担心C盘容量不够),当然,用户可根据自己的计算机情况修改安装路径,如图3.3所示。但要注意,安装路径不要出现中文或空格,否则会出错。设置好安装路径后,单击【Next】按钮。

图3.3 安装步骤2

(3)选择安装组件,单击【Next】按钮,如图3.4所示(用户根据需要选择性状Device器件库)。

图3.4 安装步骤3

(4)继续单击【Next】按钮,开始Quartus II 18.0的安装。等待Quartus II 18.0安装完毕,如图3.5所示。

图3.5 安装步骤4

(5)单击【Finish】按钮,如图3.6所示。此时,我们已经完成了软件的安装。

图3.6 安装步骤5

(6)可在“开始”→“程序”或桌面查看Quartus II 18.0软件安装是否正确,如图3.7所示。

图3.7 安装步骤6

(7)第一次打开Quartus II 18.0时,系统弹出供用户选择的界面,提供用户三个选项,如图3.8所示。由于我们安装的是Lite版本(免费版本),因此选择第二项后直接运行软件即可,如果需要更多功能则可选择购买License或Add已有的License。

图3.8 用户选择界面

3.1.4 USB Blaster下载器驱动程序的安装

在3.1.3节中,已经完成了Quartus II 18.0套件的安装。对于FPGA的开发而言,除需要安装Quartus II软件外,还需要安装USB Blaster下载器的驱动程序。

USB Blaster下载器为Altera产品的FPGA/CPLD程序下载器,通过计算机的USB接口可对Altera的FPGA/CPLD及配置芯片进行编程、调试等操作。USB Blaster下载器的驱动来自Quartus II软件,Altera产品在每一个新版本的软件中均提供驱动的安装包。USB Blaster下载器通过PC USB接口的连接,实现对Altera产品器件进行配置或编程,以及其他一些功能。

USB Blaster下载器有多种实现方式,包括采用CPLD、STM32、CY7C68013等多种方案。这里以Terasic提供的官方USB Blaster下载器为例,如图3.9所示。该下载器支持电压为2.5~3.3V,具有防干扰性强、下载速度快的优势,与Altera USB Blaster相容(Terasic为Altera产品全球官方代理商)。

图3.9 Terasic推出的官方USB Blaster下载器

USB Blaster下载器在功能上支持以下基本功能。

1.支持Altera公司全系列器件,包括CPLD与FPGA

(1)CPLD:MAX3000、MAX7000、MAX9000和MAXII。

(2)FPGA:Stratix II、Stratix III、Cyclone、Cyclone II、Cyclone III、Cyclone IV、ACEX1K、APEX20K和FLEX10K。

2.支持SignalTap II嵌入式逻辑分析仪功能

在用户的开发过程中,只有安装了USB Blaster的驱动,才能实现FPGA的配置或编程,才能支持SignalTap II逻辑分析功能及Nios II的在线Debug功能等。在Windows XP与Windows 7操作系统中,USB Blaster下载器的驱动程序安装流程基本一致,因此此处以Windows 7操作系统为例。

(1)将USB Blaster下载器与FPGA板卡进行连接,以Terasic的USB Blaster手册中提供的USB Blaster下载连接示意图为例,如图3.10所示。

图3.10 USB Blaster下载器连接示意图

(2)首次连接PC时,在PC端会出现“正在安装设备驱动程序软件”的USB Blaster“驱动程序软件安装”对话框,如图3.11所示。当然,此时搜索不到驱动程序软件,毕竟USB Blaster下载器的驱动不是Windows提供的。用户可以等待一段时间,直到搜索失败,或者强制选择“跳过从Windows Update获得驱动程序软件”,再转入手动设置。

图3.11 USB Blaster“驱动程序软件安装”对话框

(3)单击“我的电脑”→“管理”→“设备管理器”,可在其他设备中看到标有黄色感叹号的未安装驱动的USB Blaster设备,如图3.12所示。

图3.12 未安装驱动的USB Blaster设备

(4)选择USB Blaster设备,单击鼠标右键,选择“更新驱动程序软件”→“浏览计算机以查找驱动程序软件”→“手动查找并安装驱动程序软件”,如图3.13所示。

图3.13 选择“手动查找并安装驱动程序软件”

(5)浏览Quartus II软件安装目录,选择“D:\intelFPGA_lite\18.0\quartus\drivers\usb-blaster”目录(用户可根据自己的情况选择安装目录,此处未必相同),如图3.14及图3.15所示。

图3.14 USB Blaster驱动程序目录指定1

图3.15 USB Blaster驱动程序目录指定2

(6)单击“下一步”按钮,等待USB Blaster驱动程序安装完毕,如图3.16所示。

图3.16 USB Blaster驱动程序安装完毕

(7)返回设备管理器中,用户可在通用串行总线控制器中查找到Altera USB-Blaster设备。Altera USB Blaster驱动程序识别界面如图3.17所示。

图3.17 Altera USB Blaster驱动程序识别界面

至此便完成了USB Blaster下载器驱动的安装程序,此时可以通过计算机完成FPGA的配置、调试等功能。但是,USB Blaster下载器的使用有一定的顺序,否则很有可能会烧坏FPGA。笔者一般按照以下顺序来使用。

(1)关闭板卡电源,通过USB Blaster下载器连接PC与硬件平台。

(2)开启板卡电源,通过Quartus II软件完成下载与调试。

注意,不要在上电期间插拔USB Blaster,否则很可能由于静电或其他原因烧坏板卡。严格遵循上述USB Blaster的使用顺序,养成良好的开发习惯非常重要。