收藏 分享(赏)

Quartus简介.doc

上传人:j35w19 文档编号:7570309 上传时间:2019-05-21 格式:DOC 页数:16 大小:1.10MB
下载 相关 举报
Quartus简介.doc_第1页
第1页 / 共16页
Quartus简介.doc_第2页
第2页 / 共16页
Quartus简介.doc_第3页
第3页 / 共16页
Quartus简介.doc_第4页
第4页 / 共16页
Quartus简介.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、1第 3 章 Quartus使用入门31 Quartus 简介Quartus可编程逻辑开发软件是 Altera 公司为其 FPGACPLD 芯片设计的集成化专用开发工具,是 Altera 最新一代功能更强的集成 EDA 开发软件。使用 QuartusII 可完成从设计输入,综合适配,仿真到下载的整个设计过程。Max+plus是 Altera 公司早期的开发工具,曾经是最优秀的 PLD 开发平台之一,现在正在逐步被 Quartus代替。并且 Max+plus已经不再支持 Altera 公司的新器件,同时,QuartusH 也放弃了对少数较老器件的支持。QuattusII 界面友好,具有 MAX+

2、PLUS界面选项,这样 MAX 的老用户就无须学习新的用户界面就能够充分享用 Quartus软件的优异性能。所以,无论是初学者,还是 Max+plus的老用户,都能较快的上手。Quartus根据设计者需求提供了一个完整的多平台开发环境,它包含蕞个 FPGA 和CPLD 设计阶段的解决方案。Quarms软件提供的完整,操作简易的图形用户界面可以完成整个设计流程中的各个阶段。Quartus集成环境包括以下内容:系统级设计,嵌入式软件开发,可编程逻辑器件(PLD)设计,综合,布局和布线,验证和仿真。Quartus也可以直接调用 Synplify Pro,LeonardoSctmm 以及 ModelS

3、im 等第三方EDA 工具来完成设计任务的综合与仿真。Qualtus与 MATLAB 和 DSPBuilder 结合可以进行基于 FPGA 的 DSP 系统开发,方便且快捷,还可以与 SOPCBuilder 结合,实现 SOPC 系统的开发。32 Quartus 设计流程Quanus设计的主要流程有:创建工程、设计输入、编译、仿真验证、下载,其进行数字电路设计的一般流程如图 31 所示。图 31 Quartus一般设计流程输入设计项目:原理图VHDL 代码建立工作库文件夹创建工程存盘,注意原理图文本取名选择目标器件启动编译建立仿真波形文件仿真测试和波形分析引脚锁定并编译编程、下载配置硬件测试2

4、321 创建工程当我们安装完成 Quartus后,双击桌面上的 Quartus图标,迎接我们的就是图 32所示的开发环境。图 32 Quartus开发界面我们看到这个环境包含了几部分内容:最上面的菜单项和工具栏,左边的两个窗口为工程浏览窗口和进度窗口,下面的窗口为信息窗口。那么我们怎样使用这样一个开发环境呢?其实和其它的集成开发环境一样,使用 Quartus进行开发首先要创建一个工程。图 33 工程基本信息对话框工程浏览窗口信息窗口工作区3在菜单中选择 File 一New Project Wizard 将会出现一个信息框,这个对话框是向我们介绍创建工程步骤的。我们可以直接选择 Next,这时会

5、出现如图 33 的对话框。这里我们将要输入的是我们将要创建的工程的基本信息,三个输入栏中分别输入的是工程将被保存的路径,工程的名称,和顶层实体的名称。建议工程名与顶层实体名称保持一致。输入完毕我们就可以点击 Next 了。然后会有提示说是否创建这一工程路径,直接点 Yes 即可。然后出现图 34 所示的添加工程文件对话框。图 34 添加工程文件对话框在这里我们需要做的是将已经写好的 VItDL 文件加入到工程中。当然,我们也可以直接点击 Next,以后再完成添加 VHDL 文件的工作。接着会出现如图 35 中的对话框。图 35 FPDA 工具选择对话框和目标器件选择对话框这里要选择的是其它 E

6、DA 工具,我们不需要选择,所以直接点击 Next。于是就出现了图 36 的对话框。4图 36 目标器件选择对话框这里我们需要完成的是选择器件的工作。我们以 ACEX 系列的器件为例进行说明。下面的问题是关于是否接下来选择详细的芯片类型。我们选择 YES。点击 Next,出现如图37 的对话框。右面的三个下拉框用来限制芯片的封装形式、管脚数和速度。图 37 芯片型号选择对话框我们选择 FPGA 目标芯片 EPlK30QC208-3,它具有 144 管脚,速度为 6。选择完成后,点击 Next,出现如图 38 所示的对话框。图 38 中的对话框给出了所生成工程的信息。点击 Finish 就完成了

7、通过向导生成一个工程的工作。5图 38 生成工程的信息以上就是在创建一个工程所需要做的主要工作,完成了以上步骤我们就可以进行设计输入了。下面简要介绍两种不同的输入方式。322 设计输入(1) 原理图输入利用 EDA 工具进行原理图设计的优点是,设计者不必具有许多诸如编译技术、硬件语言等新知识就能迅速入门,完成较大规模的电路系统设计。当然,由于原理图方式的输入本身不如代码输入方便,所以在逻辑比较复杂的情况下通常不被采用,但原理图方式本身非常直观,有利于理解,更适合初学者使用。(2) 硬件描述语言输入硬件描述语言是 EDA 技术的重要组成部分, VHDL 是作为电子设计主流的硬件描述语言。VHDL

8、 语言具有很强的电路描述和建模能力,能从多层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了设计效率和可靠性VHDL 具有与具体硬件电路无关和设计平台无关的特点,并且具有良好的电路行为描述和系统描述的能力,并在语言易读性和层次结构化设计方面,表现了强大的生命力和应用潜力。323编译 当原理图输入或者文本输入完成后,就需要对工程文件进行编译,检查在输入过程中所存在的错误。这是所设计的工程文件能否实现所期望的逻辑功能的重要步骤,直接确定工程 36 的步骤能否继续。所以在这一过程一定要认真细心,发现错误后按照提示信息认真读图或者源代码,修改源文件,重新编译,直到编译通过。324仿真验证

9、编译通过并非就万事大吉了,接下来要进行的就是仿真验证。仿真,也称为模拟,是对所设计电路的功能验证。用户可以在设计的过程中对整个系统和各个模块进行仿真,即在计算机上用所使用的软件验证功能是否正确,各部分的时序分配是否准确。如果有问题,可以随时进行修改,从而避免了逻辑错误。高级的仿真软件还可以对整个系统设计的性能进行评估。规模越大的设计,越需要进行仿真。仿真不消耗资源,不浪费时间,可避免不必要损失。325编程下载编译和仿真验证通过后,就可以进行下载步骤了。在下载前首先要通过综合器产生的网表文件配置于指定的目标器件中,是之产生最终的下载文件。把适配后生成的下载或配置文件通过编译器或编程电缆向 FPG

10、A 或 CPLD 进行下载,以便进行硬件调试和验证。并通过硬件测试来最终验证设计项目在目标系统上的实际工作情况,以排除错误,进行设计修正。通过以上步骤的简要介绍,我们对一个逻辑电路的设计流程有了一个初步清晰的了解。接下来我们通过两个具体的示例来详细说明其过程。33 Quartus :工程示例331 原理图输入方式利用 EDA 工具进行原理图设计的优点是,设计者不必具有许多诸如编译技术、硬件语言等新知识就能迅速入门,完成较大规模的电路系统设计。当然,由于原理图方式的输入本身不如代码输入方便,所以在逻辑比较复杂的情况下通常不被采用。但原理图方式本身非常直观,有利于理解,更适合初学者使用。下面就以建

11、立一个与门的实例来说明其使6用方法。1创建原理图文件我们新建一个工程 Project。在 file 菜单中选 New Project Wizard。输入工程路径、工程名、顶层实体名称。建议为你的新工程单独创建一个文件夹,名为 mycont。保持工程名、顶层实体名均为 mycont。如图 39。图 39 建立 lessonl 工程点击 Finish 完成新工程的建立。现在,为该工程创建新的文件。在 File 菜单中选择 New,然后选择 Block DiagramSchematicFile。便打开一个原理图编辑窗口,如图 310。7图 310 原理图编辑窗口可将原理图编辑窗口最大化后,在该窗口双

12、击鼠标左键开始插入新的 symbol。在Symbol 对话窗的中的 Libraries 栏里选择 Primitives 项,选择 logic,选择 and2,右面就出现了一个二输入与门。如图 311。8图 311 插入元件点击 OK 关闭 Symbol 对话窗,回到原理图编辑窗口中。然后在合适位置上点击鼠标左键,一个二输入与门就被加到了原理图上了。同样的方法在 Primitivespin 中我们可以加入一些 Pin,注意 Pin 是分输入和输出的。完成 Symbol 添加后我们使用左边快捷工具栏的连线将这些 Symbol 连接起来。双击 pin name 更改管脚名。输入为 inputa 和

13、inputb,输出为 outputz,如图 312 所示。完成添加和连接后,将输入的图形文件取名为mycont bdf 存盘9图 312 连接好的原理图选 ProcessingStartStartAnalysis&Synthesis 菜单命令进行编译。如果编译没通过,错误信息在信息窗口会以红字显示出来。分析错误原因并改正错误。2创建一个波形图文件原理图输入完成后我们可以通过波形图仿真来验证我们的设计。在 File 菜单中选择 New。如图 313 所示。出现名为 New 的对话窗。在 Other Files页中选中 Vector Waveform File。点击 OK 按钮。出现一个空的波形图

14、文件。如想改变仿真结束时间,可选 End Time(在 Edit 菜单中 )。我们这里设为 40ns。改完点OK 关闭 End 窗口。在 File 菜单中选择 Save As。在 Save As 窗口中,输入文件名。点击 Save 将文件保存。10图 313 建立波形文件3输入信号节点选 ViewUtility WindowNode Finder 菜单。在 Node Finder 对话框中的 Filter 里,用下拉菜单选 Pins:all ,点 List 钮,出现信号节点列表(图 314) 在 Node Found 列表中,选与门两输入和输出。并将他们用鼠标拖到波形文件的 Name栏中(可用

15、 Ctrl+Click 多选) 。关闭 Node Finder。图 314 列出并选择需要观察的信号节点4编辑输入波形在 Name 栏中选输入端口的名称。此端口所在行被高亮。点击右键。在右键菜单中的 Value 子菜单中,可对波形作各种设定。也可在左边垂直的工具栏中,使用他们的快捷按钮。如图 315 所示。这里,对于 inputa,我们可选“Clock”类型的波形。在 Clock 窗口中的 period 里设置方波的周期为 40ns。点 OK 关闭 Clock 窗口。对于 inputb,我们可用 Forcing High 设为高电平。分别将两输入端口的波形设置好,并将波形图文件存盘。11图 3

16、15 编辑输入波形5观察输出波形选 Start Simulation(在 Processing 菜单中) ,开始仿真。仿真完毕后在 Simulation Report 的 Simulation Waveforms 窗口中可以看到输出波形图(图 316) 。分析波形,如与理想波形不符,思考原因。图 316 与门仿真结果通过仿真,我们对所做设计确认无误后,便可以考虑开始下载。332 硬件描述语言输入方式下面就以建立一个两位 16 进制计数器的实例来说明其使用方法。1创建工程首先建立一个工程文件,取名为 Counter,方法如前所述。填写了工程信息后出现如图317 的界面。我们看到左上角窗口中的内容

17、已经发生了改变,这个窗口的下面有三个页选项。Hierarchy 页中的内容是实体的层次结构,Files 页中的内容是工程包含的文档。这两个都是很常用的。12图 317 Counter 工程界面2添加创建新文件建立了一个 Quartus 工程文件后,下面要做的是添加 VHDL 源文件。如果我们已经完成了 VHDL 源文件的编写工作,我们只需要将它加进工程中,方法如图 318。图 318添加设计文件我们在 File 页中的 Device Design File 上点击鼠标右键,然后在AddRemove Files in Project 上点击鼠标左键,打开添加文件对话框,就可以添加文件了。当然,我

18、们也可以在 Quartus中创建新的 VHDL 文件。方法为在 File 菜单中选择 new,在弹出的对话框中 Device Design File 页选择 VHDL File(图 320) ,点击 OK 将在工作区弹出一文本编辑窗口,输入 VHDL 程序,编辑完毕另存为 counter.vhd。13图 320 选择 VHDL 文件类型在工程浏览窗口中选择 File 页,双击 counter.vhd 文件,右面的工作空间区就会出现counter.vhd 的代码。3编译完成对 VHDL 文件的编辑后,我们可以选择 File 菜单中的 Save。假如我们已经完成了整个 Project 的编辑,我们

19、就可以编译了。我们可以点击屏幕上放的按钮来完成编译的工作,如图 321 所示。14图 321 开始编译工程下图显示的是编译过程中的状态。图 322 编译过程状态显示15图 322 中,下面窗口显示的是编译过程中的各种提示信息。左下的窗口显示的编译的进程。右面的窗口显示的是编译报告。因为编译本身是需要相当长的科学计算时间的,而且编译的时间随工程复杂程度的增加而增加。当编译成功后,就会出现图 323 的提示信息。图 323 编译完成提示我们点击确定就可以了。这时我们可以通过右面的窗口来观察我们的资源占用情况。从图 223 可以看出,我们的工程逻辑单元使用小于 1,管脚使用 9,芯片内存储器使用 0

20、,PLL 没有使用。如果编译过程中出现错误,那么 Quartus 会在下面的编译信息窗口用红字显示出来,我们可以通过在错误信息上双击鼠标左键来定位错误。4生成 FPGA 下载文件经过了上面的步骤,我们已经完成了 VHDL 代码的编译。这就是说我们已经在逻辑上完成了一个实现了我们所需要功能的芯片,当然,前提是我们的代码是正确的。我们知道,我们编写 VHDL 进而进行编译的目的是为了能够最终使我们的 FPGA 芯片具有我们所需要的功能,那么这就需要将我们实现的那个逻辑上的芯片与实际的 FPGA 芯片结合起来。这就是我们这一节要讨论的问题。其实完成上面的工作很简单,只需要将我们的那个逻辑上的实体的管脚与 FPGA 芯片的管脚进行绑定就可以了。我们继续以前面生成的那个计数器的工程为例进行说明。在前面的过程中我们生成了一个实体叫做 counter。那么我们如何将 counter 这个实体与我们的 FPGA 结合起来呢。我们看到,counter 有 3 组管脚 reset、clk 和 number,共 1+1+8=10 个管脚。我们只需要为这10 个管脚各自绑定一个 FPGA 的管脚就可以了。这一过程我们通常称作“管脚锁定” 。那么在 Quartus中如何进行管脚锁定呢?下面以 counter 为例进行介绍。16

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报