Quartus - II

更新时间:2023-10-07 22:35:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Quartus II 软件的使用入门 41Quartus II 简介 Quautus II是Altera 公司的综合性PLD开发软件支持原理图、VHDL、Verilog-HDL以及AHDL等多种设计输入形式内嵌自有的综合器以及仿真器可以完成从设计输入到硬件配置的完整的PLD设计流程。它支持Altera的IP核包含了

LPM/MegaFunction宏功能模块库使用户可以充分利用成熟的模块简化了设计的复杂性、加快了设计速度。对EDA第三方工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。在本教程中使用的Quartus II的版本为5.0 。 411 设计工作流程 Quartus II 的设计流程图如图 所示。 图 Quartus II 的设计流程图 用户首先对所做项目进行设计明确设计目的、设计要求。然后利用原理图输入方式或文本输入方式进行设计输入。输入完成后进行编译若编译过程中发现错误则应检查设计输入以修改错误直至没有错误产生。编译完成后进行仿真检查是否达到了设计要求若未达到要求需重新检查设计输入及编译过程不断迭代、收敛直至满足设计要求。最后将设计配置到目标器件中进行硬件验证与测试。 412 Quartus II 的图形用户界面 Quartus II 的图形用户界面如图 所示从图中可以看出共有以下几个子窗口。 图 Quartus II软件的图形用户界面 编辑输入窗口 项目导航窗口 状态窗口 消息窗口 设计输入 设计编译 功能仿真 时序仿真 硬件配置与验证 1 Project

navigator 项目导航窗口 项目导航窗口包括3个可以切换的标签Hierarchy标签用于层次显示提供了逻辑单元、寄存器、存储器使用等信息File和Design Units 提供了工程文件和设计单元的列表。 2 编辑输入窗口 设计输入的主窗口无论原理图还是硬件描述语言编译、仿真的报告都显示在这里。 3 Status窗口 状态窗口用以显示各系统运行阶段的进度。 4 Message窗口 消息窗口实时提供系统消息、警告和错误等信息。 5 Tcl Console窗口 Tcl命令窗口可以直接输入Tcl命令或教本文件。 42 Quartus II 软件使用 本节我们以一个D触发器的设计为例详细介绍Quartus II 的使用方法引导读者快速入门同时对每一步骤包括设计输入包括文本输入和原理图输入、编译、仿真合器件配置等作了较为详细的说明便于读者理解设计流程。 421设计输入 Quartus II 支持多种设计输入方法既允许用户使用多种方法描述设计常用的设计输入方式有原理图输入、文本输入和第三方EDA工具输入。输入方法不同生成的文件格式也不同。QuartusII5.0版本软件中的设计输入支持的文件格式有VHDL、Verilog-HDL、AHDL、Block Design File原理图输入、EDIF网表文件输入。本例中主要介绍文本输入方法和原理图输入方法。 VHDL.vhd文件IEEE标准描述语言。有美国国防部的逻辑描述标准发展而来因而系统性、结构性较好。支持从系统级到门级的描述方式是目前最常用的HDL描述语言之一可移植

性较好。 Verilog-HDL.v文件IEEE标准描述语言。拥有和C语言类似的格式和语法在ASIC设计领域应用广泛。支持行为级描述并在门级描述方面拥有独特的优势也是目前最常用的HDL描述语言之一可移植性较好。 AHDL.tdf文件Altera 公司自有的HDL描述语言。在Altera公司的软件工具及提供的设计资源中应用广泛。虽然并不是主流的HDL描述方式可移植性也不是很好只能用于Altera的综合器但是使用它在描述一些逻辑尤其是与Altera器件底层相关的设计时结合的很好。 Block Design File.bdf文件原理图输入方式。几乎所有的EDA工具都会提供原理图输入方式这种方式简单易用而且非常直观缺点时直观的图形背后调用的模块库不兼容导致了这种描述方式的可移植性不好。值得一提的是Quartus II的原理图输入方式实现了从原理图模块到HDL描述语言的双向自动转换功能即可以实现原理图和HDL的混合输入这在进行大型设计时是相当有意义的。 EDIF Netlist.edf文件网表文件输入。网表记录的是设计的组成以及连接方式由第三方综合工具产生或者IP供应商提供。这种输入方式与上述四种的层次是不同的可以理解为是已经综合完成的设计Quartus II会根据网表的描述进行布局布线将设计具体部署到确定的Altera器件中。 下面开始进行设计输入的工作此部分分为文本输入设计和原理图输入审计分别对进行D触发器的设计输入进行说明下面首先打开Quartus

II软件点击QuartusII5.0的图标打开Quartus II的图像用户设计软件如图 所示。 图 打开 Quartus II 软件 4211文本输入法设计输入 1 创建工程 Quartus II有工程的概念所谓工程就是当前设计的描述、设置、数据以及输出的集合Quartus II会将这些存储在不同类型的文件中并置于同一文件夹吓。所以在开始设计之前必须创建工程具体的步骤如下 1 在启动的Quartus II软件下执行FilegtNew Project Wizard…命令如图 所示。Quartus II会启动新建工程向导向导的第一个页面是说明页面介绍了向导所包含的步骤与相关的说明直接点击【Next】按钮继续。 图 New Project Wizard 菜单命令 图 设置工程名称及顶层实体名 2 向导的第一页用以设置工程文件夹、工程名称以及顶层实体名称如图 顶层实体名 工程文件夹 工程名称 所示。顶层实体名称必须与设计顶层文件的文件名一致与VHDL设计中的顶层实体名一致这一点需要特别注意。另外实体名称也不能为中文不能使用VHDL的关键字或者与Quartus II设计库中的模块名称相同如现在建立的设计就不能命名为DFF因为Quartus II设计库中包含有名为DFF的D触发器设计。 一般情况下推荐工程文件夹、工程名称以及顶层实体名使用相同的名称。 3 点击【Next】按钮如果工程文件夹不存在Quartus II会弹出如图 所示的对话框询问是否新建该工程文件夹。 图 新建工程文件夹 点击【是】按钮确认进入下一步骤添加设计文件对话框如图 所

示。如果已有完成的设计文件可以点击【…】按钮或者【Add All】将其添加到工程中。这里并没有预先编辑D触发器的描述所以直接点击【Next】按钮继续。 图 添加设计文件 4 选择目标芯片的对话框如图 所示这里选择的目标芯片是Cyclone系列的EP1C6Q240C8。如果用户没有确定的目标芯片可以仅在Family栏中选择合适的器件系列由Quartus II自动选择。 图 选择目标芯片 5 点击【Next】按钮进入EDA工具设置页面如图 所示用以设置第三方的综合器、仿真器和时序分析工具。默认值为不使用第三方EDA工具在本工程中保持默认值不变直接点击【Next】按钮继续。 图 设置第三方EDA工具 6 在新建工程向导的最后一步Quartus II会给出新建工程的摘要信息点击【Finish】按钮即可完成向导。 图 新建工程摘要 2 文本输入 1执行FilegtNew…菜单命令打开新建对话框如图 所示。选中Device Design Files选项卡中的VHDL File后点击【OK】按钮新建一个空白的VHDL文档。 Quartus II会自动将其命名为Vhdl.vhd这时执行FilegtSave命令将其保存保存为对话框如图 所示。 第三发综合工具 第三发仿真工具 第三发时序分析工具 图 新建对话框 图 保存设计文件 2在新建的VHDL文档中进行设计输入D触发器的VHDL描述如下所示 ENTITY DFF_REG is PORTCLKDCLR: in BIT ――定义端口 QQN: out BIT END ENTITY DFF_REG ARCHITECTURE

behavioural of DFF_REG is SIGNAL Qi : BIT ――定义信号 BEGIN Qlt Qi QNlt NOT Qi PROCESSclkclr BEGIN IF clr1 then Qilt0 ELSIF clkevent and clk0 then 时钟下降沿触发 Qiltd END if END PROCESS END ARCHITECTURE behavioural 3完成VHDL语言输入之后执行Processgt Analysis Current File菜单命令启动Quartus II的语法检查功能对当前文件进行分析。如果在Message窗口中出现Error在修改之后再次执行分析直至没有错误提示为止。 图 语法检查没有错误结果 由于VHDL的语法较为生硬、格式化在手工输入中常常会出现错误。Quartus II的文本编辑器会将VHDL的关键字高亮来帮助用户在输入过程中避免错误并且提供了语法检查功能进行完整的分析检错。需要注意的是在阅读Quartus II错误报告时应该先从第一个错误开始检查后面的错误大多数情况下都是由前面的错误导致的。直接在消息框中的错误信息上双击即可在源代码中定位错误位置。 3 分配引脚 分配引脚的目的是为设计指定输入输出引脚在目标芯片上的位置。分配引脚的方法有许多种这里介绍的Assignment Editor工具是一种比较常用的引脚分配方法。 Quartus II支持预先的I/O分配和确认操作这样可以在整个设计流程中尽早进行印刷电路板的布线设计工作。同样设计人员可以在任何时间对引脚的分配进行修改和确认无需再进行一次设计编译。 Assignment Editor是Quartus II提供的综

合性的约束编辑器除了分配引脚之外在进行逻辑锁定、时序约束以及Signal Probe等功能时都会使用到Assignment Editor。引脚分配和最终的硬件平台是密不可分的读者需要根据自己的硬件连接进行这里仅作方法的介绍并不限制具体的分配结果具体步骤如下 1 在分配引脚之前必须首先对设计进行分析及语法检查。在Quartus II主界面中执行ProcessinggtStartgtStart Analysis amp Elaboration命令启动Quartus II的分析与语法检查。如果发现错误Quartus II会在下方的消息框给出提示信息修改后再次执行检查直至没有错误为止。 2 执行AssignmentsgtAssignment Editor打开点击窗口左上角的Pin按钮进行引脚分配在左侧的工具栏中选中Show All Known Pin Name按钮列出所有已知的引脚名称所得的界面如图 所示。主窗口中主要列的解释如下 To进行分配的目标端口。 Location 引脚名称使用PIN_前缀表示。 I/O Bank引脚所属的I/O区域。 I/O Standard I/O电平标准。 图 分配引脚 3 在Location列中点击鼠标可以打开所有未使用引脚的下拉列表从中选择需要分配给端口的引脚即可完成引脚分配。也可以直接输入引脚名称即PIN_前缀后面的部分输入完成后按回车继续Assignment Editor会自动完成换行操作。另外Assignment Editor还支持复制、粘贴功能用户可以将引脚分配表通过剪贴板从文本文件、剪贴板或是另外的Assignment Editor复制进来。 显示所有可用引脚 显示设计

中的已知引脚 4212原理图输入法 下面以原理图输入法来进行设计输入原理图输入方式也是一种常用的设计输入手段。在此介绍在Quartus II中如何使用原理图的方式完成D触发器的设计输入。 1. 使用New Project Wizard新建一个工程工程文件夹、工程名、顶层实体名均为DFF_BDF。 2. 打开DFF_BDF工程在Quartus II界面中执行FilegtNew…菜单命令打开新建对话框如图 所示。 图 新建对话框 图 保存设计文件 选中Device Design File选项卡中的Block Diagram/Schematic File后点击【OK】按钮新建一个空白的原理图文档。Quartus II会自动将其命名为Block1.vhd这时执行FilegtSave As… 命令将其保存保存对话框如图 所示。 Quartus II会自动将保存位置定位到工程目录并默认命名为lt顶层实体名gt.bdf在这里只有一个实体故DFF_BDF就是顶层。保持默认不变直接点击【保存】按钮保存文件。 3. 执行EditgtInsert Symbol…菜单命令或者在原理图的空白处双击打开图 所示的Symbol对话框。 图 Symbol对话框 库位置 符号模块库 符号模块预览 重复输入 以块形式插入 宏功能模块实例化 宏功能模块管理器 对话框左侧的Library列表是Altera提供符号模块库原理图输入方式就是利用这些符号模块来搭建设计的。从图 中可以看到库列表分为以下3个部分 MegaFunctions宏功能函数库其中包含Altera提供的LPM/MegaFunction宏功能模块是参数可定制的已经完成设

计与验证的复杂逻辑模块如果同时选中宏功能模块实例化复选框Quartus II会自动调用Mega Wizard PlugIn Manager功能进行定制。 Oterhs其他库中包含了与MaxplusII兼容的中等规模符号模块如常用的74系列逻辑的符号模块。 Primitives基本符号模块库包含所有基本符号模块比如各种逻辑门、触发器、输入输出端口等。 使用鼠标点击primitives前面的“”展开primitives库再点击storage前面的“”可以看到以一个符号模块dff就是D触发器。选中它之后可以在右侧的符号模块预览窗口中看到dff的原理图如图 所示。这时如果选中Repeat-insert mode复选框即可以在原理图中重复复制多个dff。 图 dff符号模块 点击【OK】按钮后Quartus II会将窗口切换回原理图编辑器鼠标变成十字并跟随一个dff的符号模块略图。将鼠标移动到需要放置dff的位置后点击左键即可完成放置如图 所示。 图 放置dff符号模块 4. 在原理图中添加了dff符号模块后需要为其搭配上输入输出模块。添加输入输出模块的方法与添加dff的方法相同。在Symbol对话框中的primitives库中找到input和output模块并完成放置即可完成添加并放置好的原理图如图 所示。 5. 在input和output符号模块上双击打开属性对话框如图 所示。按照D触发器的输出、输入对其进行重命名并点击【确定】按钮确认。 图 添加输入输出符号模块 图 重命名符号模块 6. 点击工具栏重的按钮连接模块将各个模块的输入输出端

口对应连接到一起构成完整的原理图。最终完成的D触发器原理图如图 所示。 图 最终完成的D触发器原理图 7. 至此已经完成了原理图方式的D触发器设计输入接下来的编译、仿真和配置器件流程与文本输入方式设计相同。 422 编译 在标准PLD设计流程中编译Compilation包括综合Synthesis和布局布线PlaceampRoute两个阶段。在综合阶段综合器将HDL语言描述翻译成基本的逻辑门、存储器、触发器等基本逻辑单元的连接关系称为网表Netlist。在这个过程中综合器会根据用户的约束与本身的算法优化生成网表目的是让生成的设计拥有更快的速度并占有更好的资源。完成综合后需要根据目标器件进行布局布线利用芯片内的可用逻辑资源最终将设计在物理层次上实现。 Quartus II将编译划分为Analysis amp Synthesis、Fitters、Assembler和Timing Analyzer 4个阶段。其中Analysis amp Synthesis就是综合Fitters为布局布线后面的Assembler用于生成编译输出文件而Timing Analyzer是时序分析流程。用户可以分别进行编译的这4个阶段也可以直接执行完全编译让Quartus II自动完成整个编译工作。在我们这里举的例子中使用的是完全编译方式进行编译。 1 启动编译 在Quartus II界面上执行菜单ProcessinggtStart Compilation或者使用CtrlL快捷键启动Quartus II的完全编译。可以在状态窗口中看到当前编译的运行状态如图 所示。 图 完全编译状态 图 完成编译 在编译

本文来源:https://www.bwwdw.com/article/7yud.html

Top