官方论坛
官方淘宝
官方博客
微信公众号
点击联系吴工 点击联系周老师

明德扬至简设计法原理与应用--1.4QUARTUS开发工具

发布时间:2021-08-22   作者:admin 浏览量:

这是本文的文档编号:001500000031

需要看对应的视频,请点击视频编号:001200000073

1、本章主要介绍FPGA的两大制造商——Xinlinx和Altera,基于每个厂商生产的FPGA芯片都要在对应的开发工具上才能进行设计,其中Xilinx芯片的开发工具包括vivado,Altera的开发工具是Quartus。

2、本章通过一个上板例程来介绍quartus prime软件的使用方法。
3、这是ALTERA文档

第一阶段设 计基础

第四章 QUARTUS开发工具


1 软件介绍

Quartus prime Altera公司的综合性PLD/FPGA开发软件,原理图、VHDLVerilogHDL以及AHDLAltera Hardware 支持Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。

Altera Quartus prime 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。当前官方提供下载的最新版本是v17.0

Altera Quartus prime 15.1和更高版本)设计软件是业界唯一提供FPGA和固定功能HardCopy器件统一设计流程的设计工具。工程师使用同样的低价位工具对 Stratix FPGA进行功能验证和原型设计,又可以设计HardCopy Stratix器件用于批量成品。系统设计者现在能够用Quartus prime软件评估HardCopy Stratix器件的性能和功耗,相应地进行最大吞吐量设计。

AlteraQuartus prime可编程逻辑软件属于第四代PLD开发平台。该平台支持一个工作组环境下的设计要求,其中包括支持基于Internet的协作设计。Quartus平台与CadenceExemplarLogicMentorGraphicsSynopsysSynplicityEDA供应商的开发工具相兼容。改进了软件的LogicLock模块设计功能,增添了FastFit编译选项,推进了网络编辑性能,而且提升了调试能力。


2 第一个上板例程

软件:Quartus prime 15.1

本教材及案例,均使用Quartus prime 15.1。其他版本的软件,在界面上略有不同,为了避免未知的错误,强烈推荐使用此版本。

本章介绍Quartusprime软件的基本特征,展示如何使用Verilog硬件描述语言来设计和实现电路。使用GUI来实现Quartus prime指令。通过本份章,读者将学习到:

新建工程

使用Verilog代码录入设计

将综合的电路布局到Altera FPGA

分配电路的输入输出到FPGA上的指定引脚

编程配置教学板上的FPGA芯片


2.1 开始

Quartus prime中设计的每个逻辑电路或子电路,叫做一个工程。软件每次运行一个工程,并将所有信息保存在单一文件夹中。欲开始一个新的逻辑电路设计,第一步就是新建一个文件夹来保存文件。为了保存本指南的设计文件,在D盘新建introtutorial文件夹。指南者运行的范例为一个简单的双路灯控电路。

打开Quartus prime软件,将看到类似于图2的画面。该显示画面包括若干窗口,用户可使用鼠标选择,以访问Quartus prime软件的相关功能。Quartus prime提供的大多数命令都可用菜单形式来访问。例如,在图2中,在File标签下点击左键,可打开如图3所示的菜单。用左键单击Exit可退出 Quartus prime软件。

49

图2 Quartus prime主体显示

50

3 File菜单一例

对于有些命令,需要连续访问两个或以上的菜单才可以使用。


2.2 新建工程

按如下步骤新建工程:

1. 选择File>New Project Wizard,以打开图4所示窗口,可通过Don't show me this introduction again跳过此窗口步骤。单击Next,出现图51所示窗口。

51

4 引导的任务显示

52

5 创建新的工程

2. 选择工作文件夹introtutorial,也可以使用您自己设定的文件夹。工程必须有一个名字,通常情况下,与顶层设计实体的名字相同。如图5所示,选择light作为工程名和顶层实体名。单击Next。因为还没有创建introtutorial文件夹,Quartus prime弹出一个对话框,询问是否新建所需文件夹,如图6所示。单击Yes,将会引出图7所示的窗口。

53

6 创建新的工程文件夹与否?

54

7 工程类型

55

8 添加用户指定设计文件

3. 如果没有已存在的设计文件,单击Next,将会打开如图8所示的画面。

56

8 选择器件家族和指定的器件

4. 教学板采用的器件为Cyclone E EP4CE15F23C8。此处选择Cyclone ⅣE器件家族。单击Next,出现图9所示画面。

57

9 指定第三方EDA工具

5. 用户可指定一些第三方EDA工具。默认不改变。单击Next,出现图10所示窗口。

6. 设置一览如图10所示。单击Finish,返回Quartus prime主体窗口。标题栏将显示light工程,如图11所示。

58

10 工程设置一览

59

11 Quartus prime显示已建工程


2.3 使用Verilog代码设计输入

作为一个设计范例,我们将采用双路的灯控电路,如 60所示。此灯可由两个按键中的任一按键来控制,x1x2,按键按下的为0。真值表也同时在图中给出。注意输入x1x2是异或的关系,但是我们仍然用门来显示。

图 60

12 灯控电路

所需电路,如图13所示,使用Verilog代码来描述。注意,Verilog模块叫做 light,这个图5所示的名称是一致的。此代码的编辑可以使用任何可存储ASCprime码的文本编辑器,或者使用Quartus prime自带的编辑器。当然,文件的名称可以任意取;而和顶层Verilog模块的名称一致,是一个设计惯例。文件名称必须带.v扩展名,用以指示此文件为 Verilog文件。所有,我们使用light.v这个名称。

61

13 12所示电路的Verilog代码

2.3.1 使用Quartus prime文本编辑器

本节将展示如何使用Quartus prime文本编辑器。如果你喜欢使用其他文本编辑器来创建Verilog源文件,可以逃过此节。选择File>New打开图14所示窗口,选择 Verilog HDL File,并单击OK。这将打开文本编辑器窗口。第一步是指定所创建的文件的名称。选择File>Save As,打开图15所示的对话框。选择存储类型为Verilog HDL File,填写名称为light.v。单击Save,打开图16所示窗口。输入图13所示的代码。使用Ctrl+s保存该文件。

62

14 选择新建的文件类型

63

15 命名文件

64

16 文本编辑器窗口


2.3.2 使用Verilog模板

对于设计者来说,Verilog的语法有时很难被记住。为了解决问题,文本编辑器提供了Verilog模板集。这些模板提供了不同类型的Verilog表达的范例,譬如module声明、always块和设置语句的陈述。可以通过Edit>Insert Template>Verilog HDL来浏览这些模板,以熟悉这些资源,这是相当值得的。

2.3.3 添加设计文件到工程中

正如图7所讨论的那样,我们可以告诉Quartus prime软件,哪些文件是当前工程的一部分。要查看当前的light工程中已包含的文件列表,选择 Assignment>Setting>File,这将打开图17所示画面。另外一个可用的方法是选择标签 Project>Add/Remove Files in Project

使用Quartus prime文本编辑器创建文件时,勾上Add file to current project选项,所创建文件即自动加入到工程文件列表。如果使用的不是Quartus prime自带的文本编辑器,那么图17,列表中就没有所创建的文件,此时必须手动添加文件到工程文件列表中。欲添加文件到工程文件列表中,单击图17中的 File Name:的按钮,弹出图18所示对话框,选择light.v,单击Open。再次查看图17画面,此时所添加的文件就已经在文件列表了。需要注意的是,在大多数案例中,Quartus prime软件可根据各个实体自动找到正确的文件,即使某些文件没有被认真地添加到工程中。

然而,对于包含许多文件的复杂工程,按照上述方法,添加指定所需文件到工程中,是一个很好的设计惯例。

65

17 设置窗口

66

18 选择文件


2.4 编译设计电路

light.vVerilog代码,要经过几个Quartus prime工具的处理:分析代码、综合电路以及生成目标芯片的实现内容。这些应用程序被聚集在一起,且被称作编译器。

选择Processing>Start Compilation运行编译器,或者单击按钮运行。在编译过程中,Quartus prime的左边会显示不同阶段的进度。全部100%即表示编译成功。

当编译成功后,可以通过按钮手动打开编译报告。

67

19 编译报告

在此窗口的左面,列出了许多信息的列表。如图19所示,本工程使用了1个LE和3个引脚。

2.4.1 错误

在编译期间,Quartus prime在消息窗口,会显示生成的消息。如果此Verilog设计正确,其中一条消息就会显示编译成功及无错误。

如果编译不是零错误,那么在Verilog代码中,至少有一个错误。在这种情况下,与错误对应的消息就会在消息窗口显示。双击某条错误信息,该信息将会滚动显示完整;并且打开Quartus prime自带文本编译器,Verilog代码中的某行将被高亮显示。类似的,编译器也会显示许多警告消息。同样的方法也适用于查看完整的警告消息。针对于某条错误或警告消息,想得到更多信息,可选住此条消息,然后按住F1功能键,即可查看。

我们将light.v的最后一行改成endmodules,重新编译。Quartus prime弹出对话框,报告编译错误;单击OK,以确认。编译报告如图20所示。在消息窗口,单击Error标签,显示图21所示消息。双击第一条错误信息,Quartus prime文本编辑器打开light.v,最后一行被高亮,如图22所示。修正代码,重新编译,直至成功为止。

68

20 编译报告

69

21 错误信息

70

22 指示错误代码的位置


2.5 引脚分配

我们使用LED6(连接的信号线为LED1_NET)代表fsw0sw1分别代表x1x2,所需引脚如图23所示。选择Assignments>Pin Planner(或单击按钮),打开图26所示窗口,在下方Location下面输入要配置的管脚

71

72

23 所需引脚

73

图24引脚分配

2.6 编程及配置FPGA器件

2.6.1 安装下载电缆驱动

USB-Blaster用户,请参考http://www.altera.com.cn/literature/ug/ug_usb_blstr.pdf

ByteBlaster prime用户,请参考http://www.altera.com.cn/literature/ug/ug_bbprime.pdf

EthernetBlaster用户,请参考http://www.altera.com.cn/literature/ug/ug_ebcc.pdf


2.6.2 JTAG编程

USB-BlasterFPGA开发板连接在一起,打开FPGA开发板电源,回到Quartus prime主题窗口。选择Tools>Progrmmer或单击按钮,打开图35所示窗口。选择ModeJTAG。缺省情况下,USB-Blaster没有被选中,单击Hardware Setup按钮,在弹出的窗口选择USB-Blaster,如图36所示,单击Close退出。

74

36 编程器窗口

75

37 硬件设置窗口

如图37所示,light.sof已被列入窗口。如果没有列入的话,单击Add File,选择light.sof文件加入。这是一个由编译器的汇编模块生成的二进制文件,它包含配置FPGA器件的数据。.sof文件后缀,表示 SRAM目标文件(SRAM Object File)。同时可以注意到,选中的器件为EP4CE15F23。勾上Program/Configure,单击 Start开始下载。

76

38 下载SRAM目标文件


2.7 测试设计电路

下载完毕后,就可以测试实现的电路了。使用sw0sw1]输入所有可能值,观察LED亮灭是否和预期一致。

如果与预期不致,那么就需要去定位问题,此时将使用到SINGNALTAP工具,请看下一章内容。

上一篇:2.16 AD采集
   拓展阅读