视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
QuartusII 数字逻辑电路实验开发流程
2025-09-30 01:43:50 责编:小OO
文档
Quartus II设计入门

一、前言

随着可编程逻辑器件应用的日益广泛,许多IC制造厂家涉足PLD/FPGA领域。目前世界上有十几家生产CPLD/FPGA的公司,最大的三家是:Altera,Xilinx,Lattice,其中Altera和Xilinx占有了60%以上的市场份额。

Altera公司是全球最大的可编程逻辑器件供应商之一。主要产品有:MAX3000/7000,MAXⅡ,FLEX6000,FLEX8000,APEX20K,ACEX1K,Cyclone,Stratix,CycloneⅡ,StratixⅡ等。Altera公司针对FPGA/CPLD器件推出了相应的设计软件,目前主要是第三代的MAX+plusⅡ和的QuartusⅡ。作为Altera公司的最新一代集成设计环境,QuartusⅡ支持Altera公司目前流行的所有主流FPGA/CPLD的设计开发,并引入了一系列的新特性,如支持RLTView,综合效率更高,可以进行功耗估算等等。

应用数字逻辑电路的基本知识,使用Quartus II原理图输入法可非常方便地进行数字系统的设计。应用Quartus II原理图输入法,还可以把原有的使用中小规模的通用数字集成电路设计的数字系统移埴到FPGA或CPLD中。

二、Quartus II界面介绍

     启动Quartus II软件,显示界面如下图1。该界面包括标题栏、菜单栏、工具栏、工程管理窗、编译状态显示窗、信息显示窗和工程工作区。

2、Status window(状态窗口)

1、Project Navigator(工程管理窗)

3、Message window(信息窗口)

                               图1

(1)标题栏

第一栏标题栏显示当前工程项目的路径和工程项目的名称。

(2)菜单栏

菜单栏由文件(File)、编辑(Edit)、视窗(View)、工程(Project)、资源分配(Assignments)、操作(Processing)、工具(Tools)、窗口(Window)和帮助(Help)等9个下拉菜单组成。

"QuartusⅡ"菜单:可以完成新建文件、工程、编译、仿真、下载等操作。各个菜单的功能的简单阐述如下:

●"File"菜单:可以完成有关文件、工程的打开、新建、保存等操作;

●"Edit"菜单:可以完成文件的修改、编辑等操作;

●"View"菜单:可以完成有关视图的一些操作;

●"Project"菜单:可以完成有关工程的一些操作,如向工程中添加或删除文件等;

●"Assignments"菜单:可以完成器件的选择、引脚锁定、综合时的优化、约束的设置等;

●"Processing"菜单:可以启动编译、仿真等操作;

●"Tools"菜单:菜单可以打开相关的调试工具;

●"Window"菜单:可以进行窗口的操作;

●"Help"菜单:可以进行各种帮助的查询等操作。

(3)工具栏(Tool Bar)

工具栏中包含了常用命令的快捷图标,将鼠标移到相应图标时,在鼠标下方出现此图标对应的含义,而且每种图标在菜单栏均能找到相应的命令菜单。设计者可以根据需要将自己常用的功能定制为工具栏上的图标。

*若QuartusII界面上一些默认的按钮被关闭,影响使用,可按下面的操作步骤来复原。

To reset views: 

•    Tools → Customize →Toolbars →Reset All

•    Restart   Quartus II

(4)工程管理窗

工程管理窗用于显示当前工程中所有相关的资源文件。结构层次窗口在工程编译前只显示顶层模块名,工程编译后,此窗口按层次列出了工程中所有的模块,并列出了每个源文件所用资源的具体情况。顶层可以是设计者生成的文本文件,也可以是图形编辑文件。文件窗口列出了工程编译后所有的文件。

(5)工程工作区

在Quartus II中实现不同的功能时,此区域将打开相应的操作窗口,显示不同的内容,进行不同的操作。

(6)编译状态显示窗

编译状态显示窗是显示模块、布局布线过程及时间。模块(Module)列出工程模块,过程(Process)显示综合、布局布线进度条,时间(Time)表示综合、布局布线所耗费的时间。

(7)信息显示窗

信息显示窗显示Quartus II软件综合、布局布线过程中的信息,如开始综合时调用源文件、库文件、综合布局布线过程中的定时、告警、错误等,如果是告警和错误,则会给出具体的原因,方便设计者查找及修改错误。

三、Quartus II原理图设计基础

以下介绍Quartus II原理图设计文件的建立、编辑、编译和仿真方法。操作流程如下:

一、具体步骤如下:

Step 1:在计算机中建立一个文件夹(如在D盘新建Test文件夹,文件夹的名字最好不要用中文)作为工程项目文件夹,该文件夹中将放置此工程相关的所有设计文件。

这是因为,QuartusII是通过“工程(Project)”来管理所有设计文件的。

Step 2:使用New Project Wizard (File 菜单) 建立新工程。建立新工程时,可以为工程指定工作文件夹、工程名称以及顶层设计实体的名称。具体演示如下:

首先,左键点击菜单“File”→“New Project Wizard”,如下图(2)

                    图(2)

其次,在下面图3对话框中,点击“Next”,弹出工程设置对话框。如图4

   

图3                    

基于已有项目创建工程(一般 不使用)

                           图4

*说明:任何一项设计都是一项工程 (project) ,必须首先为此工程建立一个放置与此工程相关的所有文件的文件夹,此文件夹将被QuartusII 默认为工作库 (Work Library) 。一般,不同的设计项目最好放在不同的文件夹中,而同一工程的所有文件都必须放在同一文件夹中。

不要将文件夹设在计算机已有的安装目录中,更不要将工程文件直接放在安装目录中。文件夹所在路径名和文件夹名中不能用中文,不能用空格,不能用括号( ),可用下划线 _ ,最好也不要以数字开头。

Step 3:完成上述操作后,按Next按钮将会弹出加入文件对话框,(如图5),直接点击“Next”。

可以在File空白处选择添入已存在的设计文件加入到这个工程中,选中待添加的文件后点击“Add”后,直接点击“Next”。

由于本设计是新建的项目工程,还没有输入文件,所以可以不做任何操作,直接点击“Next”。

 图5

                 

Step 4:完成上面的操作后,会弹出:选择可编程逻辑器件对话框(图6)

  在Family栏选择目标芯片系列,在此选择Cyclone系列,选择此系列的具体芯片EP1C6Q240C8,这里EP1C6表示Cyclone系列及此器件的规模,Q表示PQFP封装,C8表示速度级别。

选择器件的封装形式、引脚数目和速度级别约束可选器件的范围。

选择CPLD/FPGA器件型号

选择CPLD/FPGA器件所属系列

                       图6

Step 5:完成上面操作后,点击“Next”会弹出如下图7对话框。

可从窗口中选择仿真器和综合器类型,如果都选None,表示选QuartusII中自带的仿真器和综合器。

仿真器和综合器选择界面

图7

Step 6: 在上图对话框中,按“Next”进入工程的信息总概对话框如下图8。

按Finish按钮就建立了一个空的工程项目,并出现fuallAdd的工程管理窗口(亦称Compilation Hierarchies窗口)(图9),该窗口主要显示该工程项目的层次结构和各层次的实体名。完成设置后可以看到窗口左上角显示所设工程路径的变化。

QuartusII将工程信息文件存储在工程配置文件(.qsf)中。它包括设计文件、波形文件、SignalTapII文件、内存初始化文件,以及构成工程的编译器、仿真器的软件构建设置等有关QuartusII工程的所有信息。

              

“工程设置统计”窗口

图8                                                图9

  

1、具体步骤如下:

Setp 1: 建立原理图文件

首先,在Quartus II中,执行File | New命令,弹出新建文件对话框如图10。

图10

★补充说明:Quatrus II支持多种设计输入法文件,如上图10所示,其中

a)AHDL File”是AHDL文本文件;

b)“Block Diagram/Schematic File”是流程图和原理图文件,简称原理图文件;

c)“EDIF File”是网表文件;

d)“Verilog HDL File”是Verilog HDL文本文件;

e)“VHDL File”是VHDL文本文件。

…………………..

然后,在图10里面选中Block Diagram/Schematic File,单击“OK”,就弹出图形文件编辑界面(图11)

绘图工具条

工程文件名

绘图工作区

                             图11

说明:绘图工作区是设计者绘制原理图的区域,绘图工具条包含了绘图所需要的一些工具。这些工具分别是:

(红色为常用工具)

•选择工具:          器件选择及画线工具。

•原理图符号工具:    添加元件Symbol

•放大按钮:          按鼠标左键放大显示绘图工作区,按鼠标右键缩小显示绘图工作区

•全屏显示工具:         窗口全屏显示,按“ESC”退出

•文本工具:          用于加入文本,进行文本编辑;

•正交线工具:        用于绘制水平和垂直方向的直线条

•直线工具:          用于绘制任意方向的直线条

•弧线工具:          用于绘制任意度数的弧线

•圆形工具:          用于绘制任意直径的圆

•与窗口适配:        将绘图工作区与窗口大小适配

•连接点接/断:       在所选连线上取消或添加接点

•打开橡皮筋连接功能:当该连接功能打开时,移动元件侧连接在元件上的连线跟着移动。

•关闭橡皮筋连接功能:当橡皮筋连接功能关闭时,移动元件侧元件也移走,不再维持同其它元件的连接关系。

Setp 2: 在原理图绘制工作区放置元件(以输入全加器原理图为例),原理图如下:

说明:编辑/输入原理图文件包括3个步骤:(a)元件的选择与放置;(b)连接各个元件符号;(c)设定各输入输出管脚名;

首先,在绘图区双击鼠标左键,即弹出添加符号元件的窗口(Symbol选择窗)(或单击右键选择Inster→Symbol…),出现元件对话框图12如下所示。

在此输入已知的元件名,可以快速地调出元件

在此可选择查看库中所有的元件

    图 12

说明:一位全加器包括元件:input(3个)、output(2个)、与门AND2(2个)、异或门XOR(2个)和或门OR(1个)。放置好所有元件后,再按照原理图连线连接好各元件。

其次,分别在 input和output的PIN NAME上双击使其变黑,再用键盘分别输入各引脚名:A、B(一位二进制加数输入)、Ci(低位进位输入)和S(和输出)、Co(向高位进位输出)。

最后,输入的原理图如下图13。

                                      图13

Setp 3:文件存盘

从菜单File中选择Save as…命令,把它另存为文件名是FullAnd(这个文件名与图4的文件名一样)的原理图文件,后缀名为.bdf

完成原理图编辑输入后,保存设计图形文件,就可进行编译。

首先,执行Processing —> Start Compilation,进行编译。 

其次,编译结束后,会出现如下图14对话框,对话框会显示编译的错误和警告的情况。若有错误, 则可先双击编译器界面下方信息窗口中出现的第一个错误提示,可使第一个错误处改变颜色。检查纠正第一个错误后保存再编译,如果还有错误,重复以上操作,直至最后通过。最后通过时应没有错误提示但可有警告提示。

图14

    

最后,编译成功后,会弹出编译报告,显示相关编译信息。可以通过查看编译报告了解有关情况,如单击Flow Summary,将在右栏显示此工程的硬件耗用报告;Timing Analyzer项,则能看到当前工程所有相关时序特性的报告,知道每个输出信号对输入信号的延迟时间,如下图15。 

                                图15

1、工程编译通过后,必须对输入的原理图功能和时序性能进行仿真测试,以验证设计结果是否满足设计要求。

2、现给出以.vwf文件方式的仿真测试流程的具体步骤如下:

Step 1: 建立仿真测试波形文件

选择 “File”-> “New” ,在“New” 窗口中选择 “Verification/Debugging Files”中的 “Vector Waveform File” 选项(如图16),点击 “OK” ,即出现空白的波形编辑器(如图17)。

    

图16                                           图17

Step2: 添加需要的输入输出信号节点

在图17窗口的左侧点击鼠标右键 ->Insert Node or Bus … ( 或直接双击 ) ,在对话框中选择 Node Finder ,导入输入输出端。(也可以在菜单栏中选择 “ View ” - >“ Utility Windows ” -> “ Node Finder ” 项,或 单击Edit→Insert→Insert Node or BUS…,)即可弹出如下图的对话框18,单击Node Finder选项,在Node Finder对话框Filter项中选择Pins:All,然后单击List按钮,在下方的窗口中出现设计中的工程的所有端口的引脚名,选择欲观察信号节点,用中间的“>>”健将需要观察的信号选到右边,如图19所示,单击OK按钮,回到Insert Node or BUS对话框,再单击OK按钮即可,如图20所示。

图18

                                 图19

                                 图20

Step 3:设置仿真时间和栅格的大小

选择 “Edit” 菜单中的“End Time” 选项,在弹出的窗口中的 Time 窗口中输入1 ,单位选择 “us” ,点击 “OK” ,结束设置,即设置完成。(如图21)

                                图21

Step 4:设置输入信号的波形

单击窗口的输入信号A使之变成蓝色条,再单击右键,选择Value设置中的Clock对话框(如图22所示),设置其周期为100ns,同理分别设置输入信号B和C,周期分别设置为200ns和300ns(这里面输入信号A、B、C的周期不是固定的哪个数值,只要这三个输入信号的周期设置之间有间隔即可,比如:将A、B、C的周期分别设置为50ns、100ns、150ns都可以)。

波形编辑结果如图23所示。

                                 图22 

                 

                             图23

Step 5:保存文件,保存名为默认名

    所有设置完成后,选择“File”中的“Save As”项,将波形文件以默认名存盘(图24)

图24

设置仿真参数

选择Assigment中的Settings对话框,可以进行如仿真激励文件、毛刺检测、攻耗估计、输出等设置,一般情况下选默认值。如图25所示:

    

图25

本例设计中整个仿真时间区域设为1μs在选择仿真类型“Simulation mode”时,” timing”代表考虑延时,“functional”表示功能型的仿真。单击OK按钮,设置结束。

Step 6: 执行器Processing | Start Simulation ,直到出现Simulation was successful ,仿真结束。(时序仿真结果如下图26)

        

                        图26

说明:Quartus II 有两种仿真模式。一种是时序仿真(Timing),另一种是功能仿真。

功能仿真是进行设计逻辑功能上的仿真,验证代码逻辑是否有问题,不考虑门电路或布线的延时影响,仿真的结果让人感到世界如此美好。

时序仿真不仅对电路的逻辑功能进行仿真,还会考虑门电路或布线的延时影响,仿真的结果让人感觉到这个世界如此真实。

Quartus II中默认的Simulation mode 为Timing(时序仿真)。仿真波形输出文件Simulation Report将自动弹出,通过该图可查看实际设计的电路运行时是否满足延时要求。

 

★关于仿真的补充说明

仿真的目的是检查输入的原理图逻辑或时序是否正确,如果不正确,需要重新检查原理图。譬如全加器仿真,需要仿真全加器的输入信号在各种可能组合情况下,仿真后,检查模拟的输出信号是否正确。

分析仿真结果正确无误后,可将本设计电路封装生成一个元件符号,供以后在原理图编辑器下进行层次设计时调用。

(1)具体操作步骤:选择File→Create /update→Create Symbol Files for CurrentFile,将当前文件变成了一个包装好的单一元件(FuallAdd.bsf),并放置在工程路径指定的目录中以备后用。

(2)调用方法:在原理图绘图区,选择『Insert』→『Symbol』→通过“浏览”将已经生成的新元件FuallAdd.bsf加入到当前原理图中。

下载本文

显示全文
专题