QuartusII.docx

上传人:b****4 文档编号:26990950 上传时间:2023-06-24 格式:DOCX 页数:8 大小:22.77KB
下载 相关 举报
QuartusII.docx_第1页
第1页 / 共8页
QuartusII.docx_第2页
第2页 / 共8页
QuartusII.docx_第3页
第3页 / 共8页
QuartusII.docx_第4页
第4页 / 共8页
QuartusII.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

QuartusII.docx

《QuartusII.docx》由会员分享,可在线阅读,更多相关《QuartusII.docx(8页珍藏版)》请在冰豆网上搜索。

QuartusII.docx

QuartusII

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

它支持Altera的IP核包含了LPM/MegaFunction宏功能模块库使用户可以充分利用成熟的模块简化了设计的复杂性、加快了设计速度。

对EDA第三方工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。

在本教程中使用的QuartusII的版本为5.0。

411设计工作流程QuartusII的设计流程图如图所示。

图QuartusII的设计流程图用户首先对所做项目进行设计明确设计目的、设计要求。

然后利用原理图输入方式或文本输入方式进行设计输入。

输入完成后进行编译若编译过程中发现错误则应检查设计输入以修改错误直至没有错误产生。

编译完成后进行仿真检查是否达到了设计要求若未达到要求需重新检查设计输入及编译过程不断迭代、收敛直至满足设计要求。

最后将设计配置到目标器件中进行硬件验证与测试。

412QuartusII的图形用户界面QuartusII的图形用户界面如图所示从图中可以看出共有以下几个子窗口。

图QuartusII软件的图形用户界面编辑输入窗口项目导航窗口状态窗口消息窗口设计输入设计编译功能仿真时序仿真硬件配置与验证1Projectnavigator项目导航窗口项目导航窗口包括3个可以切换的标签Hierarchy标签用于层次显示提供了逻辑单元、寄存器、存储器使用等信息File和DesignUnits提供了工程文件和设计单元的列表。

2编辑输入窗口设计输入的主窗口无论原理图还是硬件描述语言编译、仿真的报告都显示在这里。

3Status窗口状态窗口用以显示各系统运行阶段的进度。

4Message窗口消息窗口实时提供系统消息、警告和错误等信息。

5TclConsole窗口Tcl命令窗口可以直接输入Tcl命令或教本文件。

42QuartusII软件使用本节我们以一个D触发器的设计为例详细介绍QuartusII的使用方法引导读者快速入门同时对每一步骤包括设计输入包括文本输入和原理图输入、编译、仿真合器件配置等作了较为详细的说明便于读者理解设计流程。

421设计输入QuartusII支持多种设计输入方法既允许用户使用多种方法描述设计常用的设计输入方式有原理图输入、文本输入和第三方EDA工具输入。

输入方法不同生成的文件格式也不同。

QuartusII5.0版本软件中的设计输入支持的文件格式有VHDL、Verilog-HDL、AHDL、BlockDesignFile原理图输入、EDIF网表文件输入。

本例中主要介绍文本输入方法和原理图输入方法。

VHDL.vhd文件IEEE标准描述语言。

有美国国防部的逻辑描述标准发展而来因而系统性、结构性较好。

支持从系统级到门级的描述方式是目前最常用的HDL描述语言之一可移植性较好。

Verilog-HDL.v文件IEEE标准描述语言。

拥有和C语言类似的格式和语法在ASIC设计领域应用广泛。

支持行为级描述并在门级描述方面拥有独特的优势也是目前最常用的HDL描述语言之一可移植性较好。

AHDL.tdf文件Altera公司自有的HDL描述语言。

在Altera公司的软件工具及提供的设计资源中应用广泛。

虽然并不是主流的HDL描述方式可移植性也不是很好只能用于Altera的综合器但是使用它在描述一些逻辑尤其是与Altera器件底层相关的设计时结合的很好。

BlockDesignFile.bdf文件原理图输入方式。

几乎所有的EDA工具都会提供原理图输入方式这种方式简单易用而且非常直观缺点时直观的图形背后调用的模块库不兼容导致了这种描述方式的可移植性不好。

值得一提的是QuartusII的原理图输入方式实现了从原理图模块到HDL描述语言的双向自动转换功能即可以实现原理图和HDL的混合输入这在进行大型设计时是相当有意义的。

EDIFNetlist.edf文件网表文件输入。

网表记录的是设计的组成以及连接方式由第三方综合工具产生或者IP供应商提供。

这种输入方式与上述四种的层次是不同的可以理解为是已经综合完成的设计QuartusII会根据网表的描述进行布局布线将设计具体部署到确定的Altera器件中。

下面开始进行设计输入的工作此部分分为文本输入设计和原理图输入审计分别对进行D触发器的设计输入进行说明下面首先打开QuartusII软件点击QuartusII5.0的图标打开QuartusII的图像用户设计软件如图所示。

图打开QuartusII软件4211文本输入法设计输入1创建工程QuartusII有工程的概念所谓工程就是当前设计的描述、设置、数据以及输出的集合QuartusII会将这些存储在不同类型的文件中并置于同一文件夹吓。

所以在开始设计之前必须创建工程具体的步骤如下1在启动的QuartusII软件下执行FilegtNewProjectWizard…命令如图所示。

QuartusII会启动新建工程向导向导的第一个页面是说明页面介绍了向导所包含的步骤与相关的说明直接点击【Next】按钮继续。

图NewProjectWizard菜单命令图设置工程名称及顶层实体名2向导的第一页用以设置工程文件夹、工程名称以及顶层实体名称如图顶层实体名工程文件夹工程名称所示。

顶层实体名称必须与设计顶层文件的文件名一致与VHDL设计中的顶层实体名一致这一点需要特别注意。

另外实体名称也不能为中文不能使用VHDL的关键字或者与QuartusII设计库中的模块名称相同如现在建立的设计就不能命名为DFF因为QuartusII设计库中包含有名为DFF的D触发器设计。

一般情况下推荐工程文件夹、工程名称以及顶层实体名使用相同的名称。

3点击【Next】按钮如果工程文件夹不存在QuartusII会弹出如图所示的对话框询问是否新建该工程文件夹。

图新建工程文件夹点击【是】按钮确认进入下一步骤添加设计文件对话框如图所示。

如果已有完成的设计文件可以点击【…】按钮或者【AddAll】将其添加到工程中。

这里并没有预先编辑D触发器的描述所以直接点击【Next】按钮继续。

图添加设计文件4选择目标芯片的对话框如图所示这里选择的目标芯片是Cyclone系列的EP1C6Q240C8。

如果用户没有确定的目标芯片可以仅在Family栏中选择合适的器件系列由QuartusII自动选择。

图选择目标芯片5点击【Next】按钮进入EDA工具设置页面如图所示用以设置第三方的综合器、仿真器和时序分析工具。

默认值为不使用第三方EDA工具在本工程中保持默认值不变直接点击【Next】按钮继续。

图设置第三方EDA工具6在新建工程向导的最后一步QuartusII会给出新建工程的摘要信息点击【Finish】按钮即可完成向导。

图新建工程摘要2文本输入1执行FilegtNew…菜单命令打开新建对话框如图所示。

选中DeviceDesignFiles选项卡中的VHDLFile后点击【OK】按钮新建一个空白的VHDL文档。

QuartusII会自动将其命名为Vhdl.vhd这时执行FilegtSave命令将其保存保存为对话框如图所示。

第三发综合工具第三发仿真工具第三发时序分析工具图新建对话框图保存设计文件2在新建的VHDL文档中进行设计输入D触发器的VHDL描述如下所示ENTITYDFF_REGisPORTCLKDCLR:

inBIT――定义端口QQN:

outBITENDENTITYDFF_REGARCHITECTUREbehaviouralofDFF_REGisSIGNALQi:

BIT――定义信号BEGINQltQiQNltNOTQiPROCESSclkclrBEGINIFclr1thenQilt0ELSIFclkeventandclk0then时钟下降沿触发QiltdENDifENDPROCESSENDARCHITECTUREbehavioural3完成VHDL语言输入之后执行ProcessgtAnalysisCurrentFile菜单命令启动QuartusII的语法检查功能对当前文件进行分析。

如果在Message窗口中出现Error在修改之后再次执行分析直至没有错误提示为止。

图语法检查没有错误结果由于VHDL的语法较为生硬、格式化在手工输入中常常会出现错误。

QuartusII的文本编辑器会将VHDL的关键字高亮来帮助用户在输入过程中避免错误并且提供了语法检查功能进行完整的分析检错。

需要注意的是在阅读QuartusII错误报告时应该先从第一个错误开始检查后面的错误大多数情况下都是由前面的错误导致的。

直接在消息框中的错误信息上双击即可在源代码中定位错误位置。

3分配引脚分配引脚的目的是为设计指定输入输出引脚在目标芯片上的位置。

分配引脚的方法有许多种这里介绍的AssignmentEditor工具是一种比较常用的引脚分配方法。

QuartusII支持预先的I/O分配和确认操作这样可以在整个设计流程中尽早进行印刷电路板的布线设计工作。

同样设计人员可以在任何时间对引脚的分配进行修改和确认无需再进行一次设计编译。

AssignmentEditor是QuartusII提供的综合性的约束编辑器除了分配引脚之外在进行逻辑锁定、时序约束以及SignalProbe等功能时都会使用到AssignmentEditor。

引脚分配和最终的硬件平台是密不可分的读者需要根据自己的硬件连接进行这里仅作方法的介绍并不限制具体的分配结果具体步骤如下1在分配引脚之前必须首先对设计进行分析及语法检查。

在QuartusII主界面中执行ProcessinggtStartgtStartAnalysisampElaboration命令启动QuartusII的分析与语法检查。

如果发现错误QuartusII会在下方的消息框给出提示信息修改后再次执行检查直至没有错误为止。

2执行AssignmentsgtAssignmentEditor打开点击窗口左上角的Pin按钮进行引脚分配在左侧的工具栏中选中ShowAllKnownPinName按钮列出所有已知的引脚名称所得的界面如图所示。

主窗口中主要列的解释如下To进行分配的目标端口。

Location引脚名称使用PIN_前缀表示。

I/OBank引脚所属的I/O区域。

I/OStandardI/O电平标准。

图分配引脚3在Location列中点击鼠标可以打开所有未使用引脚的下拉列表从中选择需要分配给端口的引脚即可完成引脚分配。

也可以直接输入引脚名称即PIN_前缀后面的部分输入完成后按回车继续AssignmentEditor会自动完成换行操作。

另外AssignmentEditor还支持复制、粘贴功能用户可以将引脚分配表通过剪贴板从文本文件、剪贴板或是另外的AssignmentEditor复制进来。

显示所有可用引脚显示设计中的已知引脚4212原理图输入法下面以原理图输入法来进行设计输入原理图输入方式也是一种常用的设计输入手段。

在此介绍在QuartusII中如何使用原理图的方式完成D触发器的设计输入。

1.使用NewProjectWizard新建一个工程工程文件夹、工程名、顶层实体名均为DFF_BDF。

2.打开DFF_BDF工程在QuartusII界面中执行FilegtNew…菜单命令打开新建对话框如图所示。

图新建对话框图保存设计文件选中DeviceDesignFile选项卡中的BlockDiagram/SchematicFile后点击【OK】按钮新建一个空白的原理图文档。

QuartusII会自动将其命名为Block1.vhd这时执行FilegtSaveAs…命令将其保存保存对话框如图所示。

QuartusII会自动将保存位置定位到工程目录并默认命名为lt顶层实体名gt.bdf在这里只有一个实体故DFF_BDF就是顶层。

保持默认不变直接点击【保存】按钮保存文件。

3.执行EditgtInsertSymbol…菜单命令或者在原理图的空白处双击打开图所示的Symbol对话框。

图Symbol对话框库位置符号模块库符号模块预览重复输入以块形式插入宏功能模块实例化宏功能模块管理器对话框左侧的Library列表是Altera提供符号模块库原理图输入方式就是利用这些符号模块来搭建设计的。

从图中可以看到库列表分为以下3个部分MegaFunctions宏功能函数库其中包含Altera提供的LPM/MegaFunction宏功能模块是参数可定制的已经完成设计与验证的复杂逻辑模块如果同时选中宏功能模块实例化复选框QuartusII会自动调用MegaWizardPlugInManager功能进行定制。

Oterhs其他库中包含了与MaxplusII兼容的中等规模符号模块如常用的74系列逻辑的符号模块。

Primitives基本符号模块库包含所有基本符号模块比如各种逻辑门、触发器、输入输出端口等。

使用鼠标点击primitives前面的“”展开primitives库再点击storage前面的“”可以看到以一个符号模块dff就是D触发器。

选中它之后可以在右侧的符号模块预览窗口中看到dff的原理图如图所示。

这时如果选中Repeat-insertmode复选框即可以在原理图中重复复制多个dff。

图dff符号模块点击【OK】按钮后QuartusII会将窗口切换回原理图编辑器鼠标变成十字并跟随一个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。

在这个过程中综合器会根据用户的约束与本身的算法优化生成网表目的是让生成的设计拥有更快的速度并占有更好的资源。

完成综合后需要根据目标器件进行布局布线利用芯片内的可用逻辑资源最终将设计在物理层次上实现。

QuartusII将编译划分为AnalysisampSynthesis、Fitters、Assembler和TimingAnalyzer4个阶段。

其中AnalysisampSynthesis就是综合Fitters为布局布线后面的Assembler用于生成编译输出文件而TimingAnalyzer是时序分析流程。

用户可以分别进行编译的这4个阶段也可以直接执行完全编译让QuartusII自动完成整个编译工作。

在我们这里举的例子中使用的是完全编译方式进行编译。

1启动编译在QuartusII界面上执行菜单ProcessinggtStartCompilation或者使用CtrlL快捷键启动QuartusII的完全编译。

可以在状态窗口中看到当前编译的运行状态如图所示。

图完全编译状态图完成编译在编译的过程中QuartusII会在消息框中显示编译中的警告、错误和消息并在编译结束后给出完成的综合报告。

遇到编译错误QuartusII会立即终止编译流程并给出错误信息双击错误名称QuartusII会自动在HDL代码等设计源描述中定位出错位置。

2完成编译编译完成后QuartusII会给出如图所示的对话框提示并给出编译报告如图所示。

其中包括了设计的资源占有信息、时序分析报告等综合信息用户可以通过阅读这个报告了解QuartusII的编译结果。

图编译报告3查看RTL试图通过执行ToolgtRTLViewer菜单命令可以观察到设计的RTL试图如图所示。

在QuartusII中执行完AnalysisandElaboration流程后即可以观察RTL电路图所以RTL电路图是在综合及布局布线前生成的并非设计的最终电路结构。

RTL试图是设计的寄存器资源占用编码报告传输级展现作为设计输入最忠实的体现RTL试图的主要作用是帮助设计者检查设计输入中的问题。

图RTL视图从图中可以看到一个典型的D触发器的原理图这与本例中的设计是一致的。

423仿真对工程的编译通过后必须对其功能和时序性质进行仿真测试以了解设计结果是否满足原设计要求。

再把设计配置到器件之前可以通过仿真对设计进行全面测试保证设计是在各种条件下都能有正确的响应。

仿真分为功能仿真和时序仿真功能仿真仅仅测试设计的逻辑功能而时序仿真不仅测试逻辑功能而且测试设计的目标器件处在最差情况下的时序关系。

本例中是在编译后进行仿真已经包含了设计的延时信息属于时序仿真具体的操作步骤如下1新建波形文件在QuartusII界面中执行FilegtNew菜单命令在弹出的新建对话框中选择OtherFile选项卡选择VectorWaveformFile项目如图所示。

图新建仿真波形文件图另存仿真波形文件点击【OK】按钮可以看到QuartusII创建的名为Waveform1.vmf的仿真波形文件使用FilegtSaveAs…命令将其另存为DFF_REG如图所示。

2添加仿真信号在进行仿真之前必须添加仿真信号即仿真中的激励以及所要观察的信号。

在QuartusII中添加仿真信号有多种方法这里可以通过执行EditgtInsetNodeorBus菜单命令打开InsertNodeorBus对话框如图所示。

图添加仿真信号在Name栏中填入设计中需要观察的端口信号QuartusII会自动给出其输入输出类型与其他参数点击【OK】即可将其添加到波形文件中。

图所示的是添加输入信号D的过程同理将CLK、CLR、Q、QN也添加到波形文件中完成的波形文件窗口如图所示。

图完成信号添加的波形栏QuartusII默认的仿真时间为1s这里执行EditgtEndTime菜单命令将其更改为10s如图所示。

图设置仿真时间图设置时钟激励3设置仿真激励根据VHDL描述本例是一个边沿触发型的D触发器输出Q在每个时钟CLK的上升沿响应输入D的变换。

CLK、D和异步清零端CLR作为设计的输入信号在仿真过程中需要赋予激励。

QuartusII提供了多种方式来设置信号的仿真激励选中所需要的信号后点击鼠标右键在弹出的快捷菜单中打开Value子菜单便可以看到QuartusII提供的仿真激励类型。

以设置CLK时钟为例选中Value子菜单中的Clock…项目打开Clock对话框设置时钟如图所示。

在Period栏设置时钟的周期为100ns即10MHzPhase栏保持默认的0相位偏移不变占空比DutyCycle设置为50最后点击【OK】按钮完成设置。

除了使用快捷菜单还可以直接使用工具栏进行仿真激励的设置工具栏如图所示。

按钮功能解释参加帮助文件。

图仿真工具栏最终设置完成的仿真激励如图所示。

图设置完成的仿真激励4启动仿真执行QuartusII菜单中的ProcessinggtStartSimulation命令或者CtrlI快捷键即可启动仿真。

QuartusII会在状态窗口显示仿真的运行状态并在消息窗口给出仿真过程中出现的警告、错误和信息。

完成仿真后弹出的对话框如图所示。

图完成仿真在完成仿真后QuartusII会自动弹出仿真报告如果没有自动弹出也可以执行PrecessinggtSimulationReport手动打开。

这个报告中的波形窗口与刚才输入仿真激励的波形文件窗口是不同的本例给出的仿真报告如图所示。

从波形图中可以清晰地看到输出Q及QN在CLK地上升沿跟随输入D变化满足设计要求。

图仿真波形需要注意的是QuartusII并不允许直接在仿真报告的波形图中修改仿真激励如果用户进行了修改QuartusII会弹出编辑输入向量对话框。

该对话框提供两个单选框解释如下1Iwanttooverwrite…使用仿真报告波形窗口中的内容覆盖仿真文件窗口中的波形。

2Idon’twanttooverwrite…跳回仿真文件窗口进行修改。

424配置器件在完成设计输入及成.

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1