Quartus II教程

Quartus II教程
Quartus II教程

第3章 Altera Quartus II软件开发向导

基于Altera Quartus II软件的设计方法有模块编辑法、文本编辑法、宏模块编辑法和包含前三种方法的混合编辑法。宏模块设计法放在第6章讲述,本章通过实例简单介绍使用Quartus II软件的模块原理图编辑法、文本编辑法和包含前两种方法的混合编辑法。

3.1模块编辑及设计流程

Quartus II软件的模块编辑器以原理图的形式和图标模块的形式来编辑输入文件。每个模块文件包含设计中代表逻辑的框图和符号。模块编辑器可以将框图、原理图或符号集中起来,用信号线、总线或管道连接起来形成设计,并在此基础上生成模块符号文件(.bdf)、AHDL Include文件(.inc)和HDL 文件。

3.1.1 原理图输入文件的建立

在这里我们设计非常简单一个二输入的或门电路。它只包含一个或门、两个输入引脚和一个输出引脚。首先创建一个原理图形式的输入文件。步骤如下:

(1)打开模块编辑器

单击【File】|【New】,弹出新建文件对话框,如图3.1所示。

图3.1 新建文件对话框

选择文件类型【Block Diagram/Schematic File】,打开模块编辑器,如图3.2所示。使用该编辑器可以编辑图标模块,也可以编辑原理图。

·217·

图3.2 模块编辑器

Quartus II提供了大量的常用的基本单元和宏功能模块,在模块编辑器中可以直接调用它们。在模块编辑器要插入元件的地方单击鼠标左键,会出现小黑点,称为插入点。然后鼠标左键,弹出【Symbol】对话框,如图3.3所示。或者在工具栏中单击图标,也可打开该对话框。

图3.3 Symbol对话框

在Symbol对话框左边的元件库【Libraries】中包含了Quartus II提供的元件。它们存放在\altera\quartus60\libraries\的子目录下,分为primitives、others、megafunctions三个大类。

基本逻辑函数(primitives)

基本逻辑函数存放在\altera\quartus60\libraries\ primitives\的子目录下,分别为缓冲逻辑单元(buffer)、基本逻辑单元(logic)、其它单元(other)、引脚单元(pin)和存储单元(storage)五个子类。Buffer子类中包含的是缓冲逻辑器件,如alt_in buffer、alt_out_buffer、wire等;logic子类中包含的是基本逻辑器件,如and、or、xor等门电路器件;other子类中包含的是常量单元,如constant、vcc和gnd等;pin子类中包含的是输入、输出和双向引脚单元;storage子类中包含的是各类触发器,如dff、tff等。

·218·

?宏模块函数(megafunctions)

宏模块函数是参数化函数,包括LPM函数MegaCore AMPP函数。这些函数经过严格的测试和优化,用户可以根据要求设定其功能参数以适应不同的应用场合。这些函数存放在\altera\quartus60\libraries\ megafunctions\的子目录下,包含arithmetic、gates、I/O和storage四个子类。arithmetic子类中包含的是算法函数,如累加器、加法器、乘法器和LPM算术函数等;gates子类中包含的是多路复用器和门函数;I/O子类中包含的是时钟数据恢复(CDR)、锁相环(PLL)、千兆位收发器(GXB)、LVDS接收发送器等;storage子类中包含的是存储器、移位寄存器模块和LPM存储器函数。

?其他函数(others)

其他函数包含了MAX+Plus 所有的常用的逻辑电路和Opencore_plus函数,这些函数存放在\altera\quartus60\libraries\ others\的子目录下。这些逻辑函数可以直接应用到原理图的设计上,可以简化许多设计工作。

在模块编辑器的左边是工具栏,熟悉这些工具按钮的性能,可以大幅度提高设计速度。下面详细介绍这些按钮的功能。

?选择工具:选取、移动、复制对象,是最基本且常用的功能。

?文字工具:文字编辑工具,设定名称或批注时使用。

?符号工具:用于添加工程中所需要的各种原理图函数和符号。

?图标模块工具:用于添加一个图表模块,用户可定义输入和输出以及一些相关参数,用于自顶向下的设计。

?正交节点工具:用于画垂直和水平的连线,同时可定义节点的名称。

?正交总线工具:用于画垂直和水平的总线。

?正交管道工具:用于模块之间的连线和映射。

?橡皮筋工具:使用此项移动图形元件时引脚与连线不断开。

?部分连线工具:使用此项可以实现局部连线。

?放大/缩小工具:用于放大或缩小原理图。

?全屏工具:用于全屏显示原理图编辑窗口。

?查找工具:用于查找节点,总线和元件等。

?元件翻转工具

:用于图形的翻转,分别为水平翻转,垂直翻转和90度的逆时针翻

转。

?画图工具、、、:画图工具,分别为矩形、圆形、直线和弧线工具。

(2)添加元件符号

打开Symbol对话框左边的元件库【Libraries】,选择【primitives】|【logic】|【or2】,弹出Symbol 对话框,如图3.4所示。

·219·

图3.4 在Symbol对话框选择元件

单击【OK】按钮。鼠标变为+和选中的符号,将目标元件移动到合适位置单击左键,编辑器窗口就出现了该元件,如图3.5所示。

图3.5 在编辑器窗口添加或门

同理,在【Libraries】中,选择【primitives】|【pin】|【input】,放两个输入引脚到编辑器窗口;选择【primitives】|【pin】|【output】,放一个输出引脚到编辑器窗口。如图3.6所示。

·220·

图3.6 在编辑器窗口添加输入/输出引脚

(3)连接各元件并给引脚命名

放置好元件后,接下来的就要连接各个功能模块,通过导线将模块间的对应管脚直接连接起来。其具体做法如下:将鼠标移到其中一个端口,待鼠标变为“+”形状后。一直按住鼠标左键,将鼠标拖到到待连接的另一个端口上。放开左键,则一条连线画好了。如果需要删除一根线,单击这根连线并按Del键。这里分别将两个输入引脚连接到或门的两个输入端,将输出引脚连接到或门的输出端。

连线完成后可以给输入/输出引脚命名。在引线端子的PIN_NAME处双击鼠标,弹出Pin Properties 对话框,在【Pin name】栏中填入名字。这里三个引脚分别命名为A、B、C。如图3.7所示。

图3.7 连接元件并命名

引脚名称可以使用26个大写英文字母和26个小写英文字母,以及10个阿拉伯数字,或是一些特殊符号“/”“_”来命名,例如AB, /5C,a_b都是合法的引脚名。引脚名称不能超过32个字符;大小写的表示相同的含义;不能以阿拉伯数字开头;在同一个设计文件中引脚名称不能重名。

总线(Bus)在图形编辑窗口中显示为的是一条粗线,一条总线可代表2~256个节点的组合,即可以同时传递多路信号。总线的命名必须在名称后面加上[a …b],表示一条总线内所含的节点编号,其中a和b必须是整数,但谁大谁小并无原则性的规定,例如A[3..0]、B[0..15]、C[8..15]都是合法的总线

·221·

名称。

(4)保存文件

最后如需要保存文件,选择【File】菜单中的【Save As 】项或单击按钮,弹出Save As对话框,如下图3.8所示,在File Name 对话框内输入设计文件名my_or_2,然后选择【OK】,即可保存文件。

图3.8 保存文件

原理图和图表模块设计的文件名称与引脚命名规则相同,长度必须在32个字符以内,不包含扩展名“.bdf”。

3.1.2 图表模块输入

图表模块输入是自顶向下的设计方法。首先在顶层文件中划出图形块或器件符号,然后在图形块上设置端口和参数信息,用信号线、总线和管道把各个组件连接起来。下面以3-8译码器为例介绍图表模块输入法。

打开模块编辑器,单击工具栏上的图表模块工具,将该模块拖到右边的空白处,用鼠标在需作图的地方画矩形框,在所画的矩形框范围就会出现图表模块,如图3.9所示。

·222·

图3.9 生成的图表模块

在图表模块上单击鼠标右键,弹出如图3.10左图所示的菜单,选择【Block Properties 】选项,弹出模块属性设置对话框,如图3.10右图所示。

图3.10 模块属性设置对话框 模块属性设置对话框有四个属性标签页.。在【General 】标签页中的【Name 】栏设置模块名称为decode3_8;在【I/Os 】标签页设置3-8译码器的端口信息,在【Name 】栏中输入端口名称A ,【Type 】栏输入INPUT ,设定为输入端口。单击【Add 】按钮,即可将输入端口A 添加到模块属性设置对话框下面的【Existing Block I/Os 】列表中,如图3.11左图所示。以此类推,添加另外两个输入信号B 、C ,添加三个使能信号G1、G2a 、G2b ,添加八个输出信号y0、y1、y2、y3、y4、y5、y6、y7。如图3.11右图所示。

·223·

图3.11 添加输入端口

单击【确定】,就生成了图标模块。使用鼠标选中图标模块,调整其大小,以便显示所有的端口。如图3.12所示。

图3.12 生成的图标模块

单击,保存设计的图标模块文件,将该文件的后缀名定义为.bdf。

以上的设计过程只是规定了设计的图标模块的外部端口,图标模块的功能由硬件描述语言或图形文件实现。Quartus II软件支持的设计文件格式有:AHDL语言格式、VHDL语言格式、Verilog HDL 语言格式、Schematic图形格式。在图标模块单击鼠标右键,在弹出的菜单中选择【Create Design File from Selected Block】选项,弹出创建设计文件对话框,如图3.13所示。

·224·

图创建设计文件对话框

选择文件设计类型,这里选VHDL,确定是否把将要生成的文件添加到当前工程中。单击【OK】,就生成了设计文件decode3_8.vhd。如图所示。

图3.13 生成设计文件decode3_8.vhd

单击【确定】,弹出包含端口声明的VHDL文本编辑窗口,如图3.14所示。

图包含端口声明的VHDL文本编辑窗口

在该窗口中,已经自动生成了包含端口定义的VHDL程序的实体部分,用描述模块功能的结构体部分是个空白,需要插入相应的语句,完成设计。

如果在图创建设计文件对话框选择Schematic,则弹出包含已经定义的输入输出端口原理图编辑窗口,如图3.15所示。

·225·

图3.15 已经定义的输入输出端口原理图编辑窗口

在原理图编辑窗口左边,是输入端口;在原理图编辑窗口右边,是输出端口。下面我们要做的工作就是在中间插入元件,以构成自动decode3_8的原理图。

在生成图标模块的设计文件之后,如果需要对顶层图标模块的端口名或端口数目进行修改,那么在修改后,在模块上单击右键,在弹出的菜单中选择【Update Design File from Selected Block】选项,Quartus II软件会自动更新底层设计文件。

在设计较为复杂的电路时,顶层文件中需要包含多个图标模块和多个元件符号,而且需要把它们连接起来。,一般来说,连接元件符号的是信号线或总线,连接图标模块的既可以是信号线或总线,也可以是管道。

当用管道连接两个图标模块时,如果两边端口名称相同,如图所示则不必在管道上加标注,两者能够智能连接。在连接两个图标模块的管道上单击右键,在弹出的菜单中选择【Properties】选项,弹出Conduct Properties对话框,如图3.16所示。选择【Signal】属性页,可在【Connections】列表中看到对应的连接关系。如图3.17所示。

图3.16 具有相同端口名称的两图标模块

·226·

图3.17 Conduit Properties 对话框

当需要连接的两个图标模块端口名称不同时,或者是图标模块和元件符号相连时,使用端口映射的方法将两个模块的端口连接起来。以如图3.18所示的电路为例。

图3.18 图标模块和元件符号相连

图3.18中显示的时一个图标模块和一个二输入的与门,首先用两条信号线分别从与门的两个输入端引向图标模块,在图标模块会产生一个连接器端点。选中连接的信号线,在弹出的菜单中选择【Properties 】选项,弹出Conduct Properties 对话框,对该信号线命名,例如这里为wire01和wire02。

选中图标模块中需要映射的连接器端点,在连接器端点上单击右键,在弹出的菜单中选择【Mapper

Properties 】选项,弹出Mapper Properties 对话框,如图3.19所示。

图3.19 Mapper Properties 对话框

·227·

在Mapper Properties 对话框中选择【Mapping】属性页,该属性页用于设置模块I/O端口和连接器上的信号映射。例如,这里在【I/O on block】填入M,在【Signal in node】填入单击wire01,单击【Add】按钮,就将映射关系添加到了下面的【Existing mapping】列表中,表示将图标模块的输出端连接到信号线wire01上,而信号线wire01又连接在与门的一个输入端上,这样就实现了图标模块和元件符号的相连。依此类推,将其它映射关系也添加进来。完成映射后,在图表模块连接器端点处可以看到相关信息,如图3.20所示。

图3.20 映射后的连接图

如果连接的是两个图标模块,用类似同样地办法设置。

3.1.3原理图设计流程

本节以上节建立的二输入或门输入文件为顶层文件,通过全部流程,实现设计。详细介绍基于Quartus II软件的原理图设计方法,具体实现步骤如下。

1.建立工程

(1)单击【File】|【New Project Wizard】选项,弹出工程向导的基本信息对话框,如图3.7所示,在此对话框中,第一栏填入新工程的文件夹名,这里单击,弹出Select Directory对话框,找到上节建立的输入文件(my_or2.bdf),单击【打开】,在第一栏就出现新工程的文件夹名,第二栏出现工程名,第三栏出现顶层实体名。注意工程名要和顶层实体名相同。

·228·

图3.7 工程向导的基本信息

(2)选择需要加入的文件和库

单击图3.7所示对话框中的【Next】按钮进行下一步操作。此时如果文件夹不存在的话,系统会自动提示用户是否创建该文件夹,选择【Yes】按钮后会自动创建。已经创建就弹出添加文件对话框,如

图3.8所示。如果此设计中还需要其他设计文件,可以单击【File name

】栏右边的,选择要添加的文件,单击【Add All】按钮就将该文件加入到上面的工程中。或者直接单击【Add All】按钮加入在该目录下的所有文件,如果需要用户自定义的库,单击【User Libraries】按钮进行选择。选中已加入的文件,单击【Remove】可以将其移除。这里不需要添加任何其它文件,直接单击【Next】。

图3.8 添加文件对话框

3)选择目标器件

单击图3.8所示对话框中的【Next】按钮后,弹出器件类型设置的对话框,如图3.9所示。在【Target device】选项中选择【Auto device selected by the Fitter】选项,系统会自动给所设计的文件分配目标器件。选择【Specific device selected in ‘Available devices’list】选项,用户可以根据实验条件指定目标器件。在右侧的选项中,可以选择目标器件的封装类型(Package),引脚数量(Pin count)和速度等级(Speed grade)以便快速查找用户所需的器件范围。

·229·

图3.9 器件类型设置

(4)选择第三方EDA工具

单击图3.9中的【Next】按钮,弹出EDA工具设置对话框,如图.10所示。在此选择使用的第三方EDA工具。本例中不需要第三方EDA工具,直接单击【Next】按钮。

图3. 10 EDA工具设置

(5)结束工程设置

最后弹出新工程确认对话框,如图3.11所示。从对话框中可以看到建立的工程名称,选择的器件等信息,如确认无误后,单击【Finish】按钮,创建新工程。

·230·

图3.11 工程信息概要

2. 编译工程

单击工具栏上的按钮,对工程文件进行编译,这时Quartus II界面不断变化,编译结束后产生的界面如图3.12所示,这是编译成功的情况。单击【确定】,生成的编译结果界面如图3.13所示。该界面显示了编译时的各种信息。如果编译不成功,在信息显示窗口给出错误和警告,可根据提示错误和警告进行相应的修改后重新编译,直到没有错误提示为止。

图3.12 编译完成时界面

·231·

图3.13 编译结果

3. 建立仿真矢量波形文件

(1)创建文件

在工具栏中单击【File】|【New】,弹出新建对话框,如图3.14所示。在出现的【New】对话框中选择【Other Files】页面,在该页面选择【Waveform Editor File】选项,单击【OK】按钮,弹出矢量波形文件编辑窗口,如图3.15所示。

图3.14 建立矢量波形文件

·232·

图3.15 矢量波形编辑窗口

(2)添加引脚或节点

双击图3.15中【Name

】下方空白处,弹出Insert Node or Bus 对话框,如图3.16所示。

图 3.16 Insert Node or Bus 对话框

点击【Node Finder 】按钮,弹出Node Finder 对话框,如图3.17所示。

·233·

图3.17 Node Finder对话框

单击【Filter】栏的下拉菜单选择【Pins:all】选项后,点击【List】按钮,弹出设计文件引脚列表窗口,如图3.18所示。在【Node Found】栏中列出了设计文件的列表。

图3.18 输入/输出引脚列表

在列表中双击需要的引脚,选中的信号将出现在右边的一侧,或者单击按钮,也可以如此,如图3.19所示。

·234·

图3.19 选择输入/输出节点

单击【OK】按钮。返回insert Node or Bus对话框,如图3.20所示。

图 3.20 查找节点后的“Insert Node or Bus”对话框

单击【OK】按钮后,选中的输入/输出引脚就出现在波形编辑窗口的【Name】栏下,引脚添加成功,如图3.21所示。

·235·

图3.21 添加节点后的矢量波形编辑窗口

(3)编辑输入波形并保存

波形观察窗的左边是输入引脚,在同行的右边可以编辑波形。使用时,先选中左边的输入引脚名,再在右边用鼠标在输入波形上拖一条需要改变的黑色区域,然后单击左边工具栏的有关按钮,即可进行低电平、高电平、任意、高阻态、反相和总线数据等各种设置。若是时钟信号,用鼠标点时钟信号的,出现时钟信号设置对话框,按下【OK 】即可设置时钟信号。这时时钟信号的波形区域全部变成黑色,按集成环境窗左边上的时钟按钮,根据要求将各输入信号A 、B 的波形设置成如图3.22

所示。然后单击

保存文件,文件取名为my_or_2 .vwf 。

图3.22 编辑输入信号

quartusII图形设计过程教程

Quartus II 的使用 (2) 1 工程建立 (2) 2 原理图的输入 (5) 3 文本编辑(verilog) (15) 4 波形仿真 (16)

Quartus II 的使用 在这里,首先用最简单的实例向读者展示使用Quartus II软件的全过程。进入WINDOWS XP后,双击Quartus II图标,屏幕如图1.1所示。 图 1.1 Quartus II 管理器 1.1 工程建立 使用New Project Wizard,可以为工程指定工作目录、分配工程名称以及指定最高层设计实体的名称。还可以指定要在工程中使用的设计文件、其它源文件、用户库和EDA 工具,以及目标器件系列和器件(也可以让Quartus II 软件自动选择器件)。 建立工程的步骤如下:

(1)选择File菜单下New Project Wizard ,如图1.2所示。 图 1.2 建立项目的屏幕 (2)输入工作目录和项目名称,如图1.3所示。可以直接选择Finish,以下的设置过程可以在设计过程中完成。 图 1.3 项目目录和名称

(3)加入已有的设计文件到项目,可以直接选择Next,设计文件可以在设计过程中加入,如图1.4所示。 图 1.4 加入设计文件 (4)选择设计器件,如图1.5所示。 图 1.5 选择器件

(5)选择第三方EDA综合、仿真和时序分析工具,如图1.6所示。 图 1.6 选择EDA 工具 (6)建立项目完成,显示项目概要,如图1.7所示。 图 1.7 项目概要 1.2 原理图的输入 原理图输入的操作步骤如下:

(1)选择File 菜单下New ,新建图表/原理图文件,如图1.8 所示。 图 1.8 新建原理图文件 (2)在图1.9的空白处双击,屏幕如图1.10所示: (3)在图1.10的Symbol Name 输入编辑框中键入dff后,单击 ok按钮。此时可看到光标上粘着被选的符号,将其移到合 适的位置(参考图 1.11)单击鼠标左键,使其固定; (4)重复(2)、(3)步骤,给图中放一个input、not、output 符号,如图1.11所示;在图1.11中,将光标移到右侧input 右侧待连线处单击鼠标左键后,再移动到D触发器的左侧 单击鼠标左键,即可看到在input和D触发器之间有一条 线生成;

Quartus_II使用教程-完整实例

Quartus Ⅱ入门教程 (一个Verilog 程序得编译与功能仿真) Quartus Ⅱ 就是Altera 公司推出得专业EDA 工具,支持原理图输入、硬件描述语言得输入等多种输入方式。硬件描述语言得输入方式就是利用类似高级程序得设计方法来设计出数字系统。接下来我们对这种智能得EDA 工具进行初步得学习。使大家以后得数字系统设计更加容易上手。 第一步:打开软件 快捷工具栏:提供设置(setting),编译(pile)等快捷方式,方便用户使用,用户也可以在菜单栏得下拉菜单找到相应得选项。● 菜单栏:软件所有功能得控制选项都可以在其下拉菜单中找到。 ● 信息栏:编译或者综合整个过程得详细信息显示窗口,包括编译通过信息与报错信息。 第二步:新建工程( Project Wizard ) 1 工程名称: 快捷工具栏 菜单栏 所建工程得保存路径 工作区 资源管理窗口 任务管理窗口

dqgxo 。 2添加已有文件(没有已有文件得直接跳过next ) 3 选择芯片型号(我们选择MAX3000A 系列下得EPM3256AQC208-10芯片) (注:如果不下载到开发板上进行测试,这一步可以不用设置) 工程名称 顶层模块名(芯片级设计为实体名),要求与工程名称相同 如果有已经存在得文 件就在该过程中添加, 软件将直接将用户所添加得文件添加到工程中。

4 选择仿真,综合工具(第一次实验全部利用quartus 做,三项都选None,然后next) 5 工程建立完成(点finish ) 所选得芯片得系列型号 快速搜索所需得芯片 选择芯片 选择第三方综合工具,如果使用Quartus 内部综合工具则选择none 选择第三方仿真工具,如果使用Quartus 内部仿真工具则选择none 选择时序分析仪

QuartusII教程(完整版)

Quartus II 的使用 (1) 1 工程建立 (1) 2 原理图的输入 (4) 3 文本编辑(verilog) (14) 4 波形仿真 (17)

Quartus II 的使用 在这里,首先用最简单的实例向读者展示使用Quartus II软件的全过程。进入WINDOWS XP后,双击Quartus II图标,屏幕如图1.1所示。 图 1.1 Quartus II 管理器 1.1 工程建立 使用New Project Wizard,可以为工程指定工作目录、分配工程名称以及指定最高层设计实体的名称。还可以指定要在工程中使用的设计文件、其它源文件、用户库和EDA 工具,以及目标器件系列和器件(也可以让Quartus II 软件自动选择器件)。 建立工程的步骤如下:

(1)选择File菜单下New Project Wizard ,如图1.2所示。 图 1.2 建立项目的屏幕 (2)输入工作目录和项目名称,如图1.3所示。可以直接选择Finish,以下的设置过程可以在设计过程中完成。 图 1.3 项目目录和名称

(3)加入已有的设计文件到项目,可以直接选择Next,设计文件可以在设计过程中加入,如图1.4所示。 图 1.4 加入设计文件 (4)选择设计器件,如图1.5所示。 图 1.5 选择器件

(5)选择第三方EDA综合、仿真和时序分析工具,如图1.6所示。 图 1.6 选择EDA 工具 (6)建立项目完成,显示项目概要,如图1.7所示。 图 1.7 项目概要 1.2 原理图的输入 原理图输入的操作步骤如下:

(1)选择File 菜单下New ,新建图表/原理图文件,如图1.8 所示。 图 1.8 新建原理图文件 (2)在图1.9的空白处双击,屏幕如图1.10所示: (3)在图1.10的Symbol Name 输入编辑框中键入dff后,单击ok按钮。此时可看到光标上粘着被选的符号,将其移到合适的位置(参考图 1.11)单击鼠标左键,使其固定;(4)重复(2)、(3)步骤,给图中放一个input、not、output 符号,如图1.11所示;在图1.11中,将光标移到右侧input 右侧待连线处单击鼠标左键后,再移动到D触发器的左侧单击鼠标左键,即可看到在input和D触发器之间有一条线生成;

FPGA入门及Quartus II使用教程(内部资料)

FPGA入门及Quartus II使用教程FPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列,它是在可编程阵列逻辑PAL(Programmable Array Logic)、门阵列逻辑GAL(Gate Array Logic)等可编程器件的基础上上进一步发展的产物。 可以这样讲,ASIC(Application Specific Integrated Circuit )内部的所有资源,是用积木堆积起来的小房子,可以是一个欧美风情的房子,还可以是一个北京四合院…….而FPGA内部就可以说是一个个小积木,也就是内部有大量的资源提供给我们,根据我们的需求进行内部的设计。并且可以通过软件仿真,我们可以事先验证设计的正确性。 第一章FPGA的基本开发流程 下面我们基于Altera 公司的QuantusII 软件来说明FPGA 的开发流程。 下图是一个典型的基于Quartus II的FPGA开发整体流程框图。

1、建立工程师每个开发过程的开始,Quartus II以工程为单位对设计过程进行管 理。 2、建立顶层图。可以这样理解,顶层图是一个容器,将整个工程的各个模块包 容在里边,编译的时候就将这些模块整合在一起。也可以理解为它是一个大元件,比如一个单片机,内部包含各个模块,编译的时候就是生成一个这样的大元件。 3、采用ALTERA公司提供的LPM功能模块。Quartus软件环境包含了大量的常 用功能模块,比如计数器、累加器、比较器等等。 4、自己建立模块。由于有些设计中现有的模块功能不能满足具体设计的要求, 那就只能自己设计。使用硬件描述语言,当然也可以用原理图的输入方法,可以独立的把它们当成一个工程来设计,并且生成一个模块符号(Symbol),类似于那些LPM功能模块。这里可以理解为,如果我们需求的滤波器,没有现成的合适的,那我们可以通过LC自己来搭建一个滤波器。 5、将顶层图的各个功能模块连线起来。这个过程类似电路图设计,把各个芯片 连起来,组成电路系统。 6、系统的功能原理图至此已经基本出炉了,下一步就是选择芯片字载体,分配 引脚,设置编译选项等等。 7、编译。这个过程类似软件开发里德编译,但是实际上这个过程比软件的编译 复杂的多,因为它最终要实现硬件里边的物理结构,包含了优化逻辑的组合,综合逻辑以及布线等步骤。 8、编译后会生成2个文件,一个是*.sof文件,一个是*.pof文件,前者可以通过 JTAG方式下载到FPGA内部,可以进行调试,但断电后数据丢失;后者通过AS或者PS方式下载到FPGA的配置芯片里边(EEPROM或者FLASH),重新上电后FPGA会通过配置将数据读出。 9、对于复杂的设计,工程编译好了,我们可以通过Quartus软件或者其他仿真 软件来对设计进行反复仿真和验证,直到满足要求。(主要是时序仿真)。 第二章基于Quartus II的实例 一、建立工程 首先,打开Quartus II软件。

QuartusII入门详细教程实例讲解

Quartus II入门详细教程实例讲解 写在前面: 1.本教程适合以前没有接触过QuartusII开发软件的新手,本教程是基础的入门,后续的学习还得大家自己努力。 2.本教程非常详细手把手带大家入门,网上现存的很多教程,有的过于跳跃,难以跟上;有的遇到错误,但教程没有指出,导致我们不知道怎么做。 3.本教程首先通过简单的仿真实验带大家入门。VHDL源代码会附在文档最后。 4.本教程使用Quartus II 9.1版本进行演示,其他版本的操作差别不是太大,也可以进行学习。 目录 一、Quartus II开发软件基本介绍 1.1 Quartus Ⅱ简介 Quartus Ⅱ是Altera公司推出的专业EDA工具,支持原理图输入、硬件描述语言的输入等多种输入方式。硬件描述语言的输入方式是利用类似高级程序的设计方法来设计出数字系统。 1.2 Quartus Ⅱ开发流程 使用Quartus II 软件进行开发的流程如图1.2.1所示。需注意的是,Quartus II还可以使用命令行模式的TCL批处理脚本进行自动流程控制。

图1.2.1 Quartus Ⅱ开发流程 二、用3-8译码器的设计介绍QuartusⅡ的基本使用方法(VHDL仿真) 1.1打开软件 双击桌面安装好的QuartusⅡ 9.1图标,打开软件,主页面如图1所示。 图1 在图1中,1区为菜单栏:软件所有功能的控制选项都可以在其下拉菜单中找到。2区为快捷工具栏:提供设置(setting),编译(compile)等快捷方式,方便用户使用,用户也可以在菜单栏的下拉菜单找到相应的选项。3区为资源管理窗口。4区为编译及综合的进度栏:编译和综合的时候该窗口可以显示进度,当显示100%是表示编译或者综合通过。5区为工作区。6区为信息栏:编译或者综合整个过程的详细信息显示窗口,包括编译通过信息和报错信息。

Quartus_II简明教程

Quartus II简明教程 Altera公司的Quartus II设计软件是用来进行SOPC(System-on-a-programmable-chip)设计的综合的设计环境。本教程适用于Quartus II软件的新用户,介绍使用Quartus II软件的进行FPGA设计的基本方法。需要注意,本教程并不是Quartus II软件的详尽的参考手册。 本教程包含的主要内容: 1、典型的FPGA设计流程; 2、开始 3、新建project 4、设计输入 5、编译 6、引脚分配 7、仿真 8、编程、配置FPGA器件 9、板级调试

1、 典型的FPGA 设计流程 计算机辅助设计(Computer Aided Design ,CAD )软件的使用使得使用可编程逻辑器件(Programmable Logic Device ,PLD)器件(比如Field Programmable Gate Array ,FPGA)进行数字逻辑电路设计变得非常容易。使用CAD 软件进行FPGA 设计的典型流程如图1所示。 图1 FPGA 设计的典型设计流程 Quartus II 软件支持以上设计流程的所有阶段。本教程介绍Quartus II 软件的基本特征。 2、 开始 在Quartus II 软件中设计的每个电路或者子电路都叫做项目(Project )。Quartus II 软件每次只能打开一个Project ,并且一个Project 的所有信息都必须保存在同一个文件夹。为了开始一个新逻辑电路的设计,首先第一步就是新建一个文件夹来保存此Project 的文件。为了保存本教程的设计项目Project ,新建文件夹D:\introtutorial 。本教程运行的例子是一个简单两路开关控制电路。 启动Quartus II 软件,会打开如图2所示启动画面。启动画面中包含了使用Quartus II 软件所需要的

Quartus_II_9.0_使用初级教程

Quartus Ⅱ 9.0 使用教程(初级) Quartus Ⅱ 是Altera 公司推出的专业EDA 工具,支持原理图输入、硬件描述语言的输入等多种输入方式。硬件描述语言的输入方式是利用类似高级程序的设计方法来设计出数字系统。接下来我们对这种智能的EDA 工具进行初步的学习。使大家以后的数字系统设计更加容易上手。 第一步:打开软件 ● 快捷工具栏:提供设置(setting ),编译( compile )等快捷方式,方便用户使用,用户也可以在菜单栏的下拉菜单找到相应的选项。 ● 菜单栏:软件所有功能的控制选项都可以在其下拉菜单中找到。 ● 编译及综合的进度栏:编译和综合的时候该窗口可以显示进度,当 显示100%是表示编译或者综合通过。 ● 信息栏:编译或者综合整个过程的详细信息显示窗口,包括编译通过信息和报错信息。

第二步:新建工程(file>new Project Wizard ) 1 工程名称: 2添加已有文件(没有已有文件的直接跳过next )

3 选择芯片型号(我们选择MAX3000A 系列下的EPM3256AQC208-10芯片) 4 选择仿真,综合工具(第一次实验全部利用quartus 做,三项都选None ,然后next )

5 工程建立完成(点finish) 第三步:添加文件(file>new> VHDL file),新建完成之后要先保存。

第四步:编写程序 3-8译码器的VHDL描述源文件如下: library ieee; use ieee.std_logic_1164.all; entity decoder3_8 is port( A:in std_logic_vector(2 downto 0); EN:in std_logic; Y:out std_logic_vector(7 downto 0)); end decoder3_8; architecture example_1 of decoder3_8 is signal sel:std_logic_vector(3 downto 0); begin sel<=A & EN; with sel select Y <= "11111110" when "0001", "11111101" when "0011", "11111011" when "0101", "11110111" when "0111", "11101111" when "1001", "11011111" when "1011",

QuartusII10.0简明教程

Quartus ii 10.0教程 说明 本文的部分章节,来源于本人翻译的Terasic DE2-115的英文入门文档。 平台 硬件:艾米电子EP2C8-2010增强版套件 软件:Quartus II 10.0 + ModelSim-Altera 6.5e (Quartus II 10.0) Starter Edition 内容 ?典型的CAD流程 ?开始 ?新建工程 ?录入Verilog设计 ?编译设计 ?引脚分配 ?仿真设计电路 ?编程及配置到FPGA器件 ?测试设计电路 典型的CAD流程 计算机辅助设计(CAD)软件,使得运用可编程逻辑器件实现所需逻辑电路,变得容易。比如现场可编程门阵列(FPGA)。典型的FPGA CAD设计流程如图1所示。

图1 典型的FPGA CAD设计流程 CAD流程包含以下步骤: ?设计输入——所需电路可通过原理图方式或硬件描述语言方式(如Verilog或VHDL)进行设计。 ?综合——输入的设计被综合进入由逻辑元素(LEs,FPGA芯片提供)组成的电路中。 ?功能仿真——综合电路被测试以验证其功能是否正确,次仿真不考虑时序因素。 ?布局布线——CAD Fitter工具决定网表中定义的LEs如何布置成FPGA芯片中的实际LEs。 ?时序分析——分析已布局布线电路中的不同路径的传播延迟,用以指示所需电路的性能。 ?时序仿真——测试已布局布线电路,验证其是否在功能和时序上都正确。 ?编程及配置——设计的电路,通过编程配置开关,被实现到一个物理的FPGA芯片。 配置开关用于配置LEs和建立所需线路连接。 本指南介绍Quartus II软件的基本特征。展示如何使用Verilog硬件描述语言来设计和实现电路。使用GUI来实现Quartus II指令。通过本份指南,读者将学习到: ?新建工程 ?使用Verilog代码录入设计 ?将综合的电路布局到Altera FPGA ?分配电路的输入输出到FPGA上的指定引脚 ?仿真设计电路 ?编程配置艾米电子EP2C8核心板上的FPGA芯片 1. 开始 在Quartus II中设计的每个逻辑电路或子电路,叫做一个工程。软件每次运行一个工程,并将所有信息保存在单一文件夹中。欲开始一个新的逻辑电路设计,第一步就是新建一个文件夹来保存文件。为了保存本指南的设计文件,在D盘新建introtutorial文件夹。指南者运行的范例为一个简单的双路灯控电路。 打开Quartus II软件,将看到类似于图2的画面。该显示画面包括若干窗口,用户可使用鼠标选择,以访问Quartus II软件的相关功能。Quartus II提供的大多数命令都可用菜单形式来访问。例如,在图2中,在File标签下点击左键,可打开如图3所示的菜单。用左键单击Exit可退出Quartus II软件。

Quartus II教程

第3章 Altera Quartus II软件开发向导 基于Altera Quartus II软件的设计方法有模块编辑法、文本编辑法、宏模块编辑法和包含前三种方法的混合编辑法。宏模块设计法放在第6章讲述,本章通过实例简单介绍使用Quartus II软件的模块原理图编辑法、文本编辑法和包含前两种方法的混合编辑法。 3.1模块编辑及设计流程 Quartus II软件的模块编辑器以原理图的形式和图标模块的形式来编辑输入文件。每个模块文件包含设计中代表逻辑的框图和符号。模块编辑器可以将框图、原理图或符号集中起来,用信号线、总线或管道连接起来形成设计,并在此基础上生成模块符号文件(.bdf)、AHDL Include文件(.inc)和HDL 文件。 3.1.1 原理图输入文件的建立 在这里我们设计非常简单一个二输入的或门电路。它只包含一个或门、两个输入引脚和一个输出引脚。首先创建一个原理图形式的输入文件。步骤如下: (1)打开模块编辑器 单击【File】|【New】,弹出新建文件对话框,如图3.1所示。 图3.1 新建文件对话框 选择文件类型【Block Diagram/Schematic File】,打开模块编辑器,如图3.2所示。使用该编辑器可以编辑图标模块,也可以编辑原理图。

·217· 图3.2 模块编辑器 Quartus II提供了大量的常用的基本单元和宏功能模块,在模块编辑器中可以直接调用它们。在模块编辑器要插入元件的地方单击鼠标左键,会出现小黑点,称为插入点。然后鼠标左键,弹出【Symbol】对话框,如图3.3所示。或者在工具栏中单击图标,也可打开该对话框。 图3.3 Symbol对话框 在Symbol对话框左边的元件库【Libraries】中包含了Quartus II提供的元件。它们存放在\altera\quartus60\libraries\的子目录下,分为primitives、others、megafunctions三个大类。 基本逻辑函数(primitives) 基本逻辑函数存放在\altera\quartus60\libraries\ primitives\的子目录下,分别为缓冲逻辑单元(buffer)、基本逻辑单元(logic)、其它单元(other)、引脚单元(pin)和存储单元(storage)五个子类。Buffer子类中包含的是缓冲逻辑器件,如alt_in buffer、alt_out_buffer、wire等;logic子类中包含的是基本逻辑器件,如and、or、xor等门电路器件;other子类中包含的是常量单元,如constant、vcc和gnd等;pin子类中包含的是输入、输出和双向引脚单元;storage子类中包含的是各类触发器,如dff、tff等。

QuartusII简明教程(完整版)

目录 : Quartus II 的使用 (1) 1 工程建立 (1) 2 原理图的输入 (4) 3 文本编辑(verilog) (14) 4 波形仿真 (16)

Quartus II 的使用 在这里,首先用最简单的实例向读者展示使用Quartus II软件的全过程。进入WINDOWS XP后,双击Quartus II图标,屏幕如图1.1所示。 图 1.1 Quartus II 管理器 1.1 工程建立 使用 New Project Wizard,可以为工程指定工作目录、分配工程名称以及指定最高层设计实体的名称。 还可以指定要在工程中使用的设计文件、其它源文件、用户库和 EDA 工具,以及目标器件系列和器件(也可以让Quartus II 软件自动选择器件)。 建立工程的步骤如下:

(1) 选择File菜单下New Project Wizard ,如图1.2所示。 图 1.2 建立项目的屏幕 (2) 输入工作目录和项目名称,如图1.3所示。可以直接选择Finish,以下的设置过程可以在设计过程中完成。 图 1.3 项目目录和名称

(3) 加入已有的设计文件到项目,可以直接选择Next,设计文件可以在设计过程中加入,如图1.4所示。 图 1.4 加入设计文件 (4) 选择设计器件,如图1.5所示。 图 1.5 选择器件

(5) 选择第三方EDA综合、仿真和时序分析工具,如图1.6所示。 图 1.6 选择EDA 工具 (6) 建立项目完成,显示项目概要,如图1.7所示。 图 1.7 项目概要 1.2 原理图的输入 原理图输入的操作步骤如下:

Quartus II FPGA烧写教程

在Quartus II中使用JTAG模式固化程序到EPCS中的方法.[Quartus II]范例 流水灯 图1 流水灯范例 实现步骤 步骤1: 在Quartus II中,单击File->Convert Programming Files..。打开编程文件转换程序,如图2所示。

图2 编程文件转换程序界面 在此界面中。在Programming file type:标签后选择JTAG Indirect Configuration File (.jjc);在C onfiguration device:标签后选择你所使用的EPCS型号,此外我选择EPCS4。在Input file to conv ert方框中,单击Flash Leader,再单击Add Device..,如图3一样选择EP2C8(请根据自己的FPG A型号自行选择);单击SOF Data,再单击Add File..,选择Quartus II编译后的sof文件。配置完成界面如图4所示。

图3 Add Device

图4 配置完成界面 单击Generate,开始生成jjc文件。成功界面如图5。 图5 成功界面 关闭Convert Programming Files界面,进入下一步骤。

步骤2: 在Quartus II中,单击Tools->Programmer,进入下载界面,如图6所示。 图6 下载界面 在此界面,单击Hardware Setup,选择下载线缆。双击选择Usb-Blaster,如图7所示。

图7 选择Usb-Blaster 回到下载界面,单击led_water.sof,再单击Change File..,选择刚才转换的output_file.jjc。添加完成后,安装图8所示勾选选项,选择jjc文件。 图8 选择jjc文件 单击Start,开始下载。下载完成后,请点击复位键或者重启开发板,就会看见固化的程序了。 友情提示:EPCS擦写次数有限(请自行查询),请尽量采用JTAG模式下载sof文件测试程序。

Quartus-II使用教程-完整实例2

Quartus □入门教程 (一个Verilog 程序的编译和功能仿真) Quartus n 是Altera 公司推出的专业 EDA 工具,支持原理图输入、硬件描述语言的输 入等多种输入 方式。硬件描述语言的输入方式是利用类似高级程序的设计方法来设计出数字 系统。接下来我们对这种智能的 EDA 工具进行初步的学习。使大家以后的数字系统设计更 加容易上手。 \ £JJ 訓闿./ FYQcessho Ejdra Ihlo Inlo Wartimj —Citic-al Wairphj —入 E IKM A 5申卩旧貝6?:1 A Flaci / [Mswage: 快捷工具栏:提供设置(setting ),编译(compile )等快捷方式,方便用户使用,用户也可 以在菜单栏的下拉菜单找到相应的选项。 菜单栏:软件所有功能的控制选项都可以在其下拉菜单中找到。 信息栏:编译或者综合整个过程的详细信息显示窗口,包括编译通过信息和报错信息。 For Help, press, Fl Idb 恤 UM 菜单栏 第一步:打开软件 快捷工具栏 Ale Proje

QuartusII教程(完整版)

Quartus II 的使用......................................... 错误!未定义书签。 1 工程建立 ................................................... 错误!未定义书签。 2 原理图的输入 ........................................... 错误!未定义书签。 3 文本编辑(verilog) ............................. 错误!未定义书签。 4 波形仿真 ................................................... 错误!未定义书签。

Quartus II 的使用 在这里,首先用最简单的实例向读者展示使用Quartus II软件的全过程。进入WINDOWS XP后,双击Quartus II图标,屏幕如图1.1所示。 图 1.1 Quartus II 管理器 1.1 工程建立 使用New Project Wizard,可以为工程指定工作目录、分配工程名称以及指定最高层设计实体的名称。还可以指定要在工程中使用的设计文件、其它源文件、用户库和EDA 工具,以及目标器件系列和器件(也可以让Quartus II 软件自动选择器件)。 建立工程的步骤如下: (1)选择File菜单下New Project Wizard ,如图1.2所示。 图 1.2 建立项目的屏幕 (2)输入工作目录和项目名称,如图1.3所示。可以直接选择Finish,以下的设置过程可以在设计过程中完成。 图 1.3 项目目录和名称 (3)加入已有的设计文件到项目,可以直接选择Next,设计文件可以在设计过程中加入,如图1.4所示。 图 1.4 加入设计文件 (4)选择设计器件,如图1.5所示。 图 1.5 选择器件

(笔记)QuartusII9.1完全操作教程

(笔记)Quartus II 与DE2 入门指导(Digital Logic) (DE2) 作者:yf.x来源:博客园发布时间:2010-03-04 21:18 阅读:1218 次原文链接[收藏] Version 1.0 By yf.x 03/03/2010 Abstract 通过一个简单的实例介绍Quartus II 9.1和DE2基本使用方法。 Introduction 典型的计算机辅助设计流程 开始 新建一个项目(project) Verilog设计输入 编译设计 管脚分配 仿真设计电路 规划、配置FPGA器件 测试设计的电路 一个典型的FPGA计算机辅助设计流程如图1所示。

图1 FPGA CAD设计流程 设计流程的步骤: ?设计输入(Design Entry)-- 用原理图或者硬件描述语言说明设计的电路。 ?综合(Synthesis)-- 将输入的设计综合成由FPGA芯片的逻辑元件(logic elements)组成的电路。 ?功能仿真(Functional Simulation)-- 测试、验证综合的电路功能正确与否,不考虑延时。

?适配(Fitting)-- 将工程的逻辑和时序要求与器件的可用资源相匹配。它将每个逻辑功能分配给最佳逻辑单元位置,进行布线和时序分析,并选定相应的互连路径和引脚分配。 ?时序分析(Timing Analysis)-- 通过对适配电路的传播延迟的分析,提供电路的性能指标。 ?时序仿真(Timing Simulation)-- 验证电路的功能和时序的正确性。 ?编程和下载配置(Programming and Configuration)-- 在FPGA上实现设计的电路。 本文主要介绍Quartus II 的基本特性。演示如何用Verilog HDL在Quartus II平台设计和实现电路。包括: ?创建一个项目(project) ?用Verilog代码设计输入 ?综合 ?适配 ?分配管脚 ?仿真 ?编程与下载 1 创建一个项目 (1)启动Quartus II ,选择File > New Project Wizard,弹出窗口(图2)

超简明Quartus_II教程(CPLD篇)

超简明QuartusII教程 (CPLD篇) 黄俊 2007-9-29 https://www.360docs.net/doc/5f7352715.html,/index.php/2599 huangjun5927@https://www.360docs.net/doc/5f7352715.html,

在很多设计中,CPLD仅作为电路中的辅助元件,坦白地说,对大多数硬件开发工程师来说,CPLD部分的设计并不是他们主要的工作,并不想花太多时间去学习。QuartusII功能强大,但很多工具并不需要在CPLD设计中使用。 QuartusII使用极其方便,可简可繁,本文力争让读者在两小时内就掌握基本的使用方法。本文同样适用于FPGA设计的一部分,FPGA设计中涉及更深一些的时序分析、时序约束、逻辑分区,逻辑锁定,逻辑分析仪,功耗分析等等功能,所需工具较多,请参看其它教程。本文图片配合文字和箭头为主要讲解方式,所以需多用一下放大功能,在200%左右看插图时,可以清晰看到文字。 引子 CPLD基本设计流程如下: z工程管理——新建工程、工程管理; z源文件输入——VHDL/Verilog程序或原理图的设计,Altera内嵌模块的调用(对CPLD而言,只有MAXII还有内嵌模块可调); z综合、编译——检查语法、连接错误,生成综合后网表; z功能仿真——综合后的功能仿真(可选); z简单的约束——管脚分配、I/O特性约束(电平标准,驱动能力等)、简单的时序约束; z全编译——软件自动完成布局布线、生成最终编程文件; z时序仿真——带延时的和实际情况非常相近的时序仿真(推荐使用); z编程——下载到硬件中。

实战 1、工程管理 a)新建工程 i.输入工程名, ii.选源文件 iii.选器件 iv.设置第三方工具 具体方法见下图。 在此有一个重要的设置需了解,即未用I/O的状态。

quartusii教程

Q u a r t u s I I教程-CAL-FENGHAI.-(YICAI)-Company One1

第3章 Altera Quartus II软件开发向导 基于Altera Quartus II软件的设计方法有模块编辑法、文本编辑法、宏模块编辑法和包含前三种方法的混合编辑法。宏模块设计法放在第6章讲述,本章通过实例简单介绍使用Quartus II软件的模块原理图编辑法、文本编辑法和包含前两种方法的混合编辑法。 模块编辑及设计流程 Quartus II软件的模块编辑器以原理图的形式和图标模块的形式来编辑输入文件。每个模块文件包含设计中代表逻辑的框图和符号。模块编辑器可以将框图、原理图或符号集中起来,用信号线、总线或管道连接起来形成设计,并在此基础上生成模块符号文件 (.bdf)、AHDL Include文件(.inc)和HDL文件。 3.1.1 原理图输入文件的建立 在这里我们设计非常简单一个二输入的或门电路。它只包含一个或门、两个输入引脚和一个输出引脚。首先创建一个原理图形式的输入文件。步骤如下: (1)打开模块编辑器 单击【File】|【New】,弹出新建文件对话框,如图所示。 图新建文件对话框 选择文件类型【Block Diagram/Schematic File】,打开模块编辑器,如图所示。使用该编辑器可以编辑图标模块,也可以编辑原理图。

图模块编辑器 Quartus II提供了大量的常用的基本单元和宏功能模块,在模块编辑器中可以直接调用它们。在模块编辑器要插入元件的地方单击鼠标左键,会出现小黑点,称为插入点。然后鼠标左键,弹出【Symbol 】对话框,如图所示。或者在工具栏中单击图标,也可打开该对话框。 图 Symbol对话框 在Symbol对话框左边的元件库【Libraries】中包含了Quartus II提供的元件。它们存放在\altera\quartus60\libraries\的子目录下,分为primitives、others、megafunctions三个大类。 基本逻辑函数(primitives) 基本逻辑函数存放在\altera\quartus60\libraries\ primitives\的子目录下,分别为缓冲逻辑单元(buffer)、基本逻辑单元(logic)、其它单元(other)、引脚单元(pin)和存储单元(storage)五个子类。Buffer子类中包含的是缓冲逻辑器件,如alt_in buffer、alt_out_buffer、wire等; 217

相关主题
相关文档
最新文档