QuartusII教程Word下载.docx
《QuartusII教程Word下载.docx》由会员分享,可在线阅读,更多相关《QuartusII教程Word下载.docx(61页珍藏版)》请在冰点文库上搜索。
logic子类中包含的是根本逻辑器件,如and、or、xor等门电路器件;
other子类中包含的是常量单元,如constant、vcc和gnd等;
pin子类中包含的是输入、输出和双向引脚单元;
storage子类中包含的是各类触发器,如dff、tff等。
❑宏模块函数〔megafunctions〕
宏模块函数是参数化函数,包括LPM函数MegaCoreAMPP函数。
这些函数经过严格的测试和优化,用户可以根据要求设定其功能参数以适应不同的应用场合。
这些函数存放在\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所示。
图3.4在Symbol对话框选择元件
单击【OK】按钮。
鼠标变为+和选中的符号,将目标元件移动到适宜位置单击左键,编辑器窗口就出现了该元件,如下图。
图3.5在编辑器窗口添加或门
同理,在【Libraries】中,选择【primitives】|【pin】|【input】,放两个输入引脚到编辑器窗口;
选择【primitives】|【pin】|【output】,放一个输出引脚到编辑器窗口。
如图3.6所示。
图3.6在编辑器窗口添加输入/输出引脚
〔3〕连接各元件并给引脚命名
放置好元件后,接下来的就要连接各个功能模块,通过导线将模块间的对应管脚直接连接起来。
其具体做法如下:
将鼠标移到其中一个端口,待鼠标变为“+〞形状后。
一直按住鼠标左键,将鼠标拖到到待连接的另一个端口上。
放开左键,那么一条连线画好了。
如果需要删除一根线,单击这根连线并按Del键。
这里分别将两个输入引脚连接到或门的两个输入端,将输出引脚连接到或门的输出端。
连线完成后可以给输入/输出引脚命名。
在引线端子的PIN_NAME处双击鼠标,弹出PinProperties对话框,在【Pinname】栏中填入名字。
这里三个引脚分别命名为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]都是合法的总线名称。
〔4〕保存文件
最后如需要保存文件,选择【File】菜单中的【SaveAs】项或单击
按钮,弹出SaveAs对话框,如下列图3.8所示,在FileName对话框内输入设计文件名my_or_2,然后选择【OK】,即可保存文件。
图3.8保存文件
原理图和图表模块设计的文件名称与引脚命名规那么相同,长度必须在32个字符以内,不包含扩展名“.bdf〞。
图表模块输入
图表模块输入是自顶向下的设计方法。
首先在顶层文件中划出图形块或器件符号,然后在图形块上设置端口和参数信息,用信号线、总线和管道把各个组件连接起来。
下面以3-8译码器为例介绍图表模块输入法。
翻开模块编辑器,单击工具栏上的图表模块工具
,将该模块拖到右边的空白处,用鼠标在需作图的地方画矩形框,在所画的矩形框范围就会出现图表模块,如下图。
图生成的图表模块
在图表模块上单击鼠标右键,弹出如下图的菜单,选择【BlockProperties】选项,弹出模块属性设置对话框,如下图。
图模块属性设置对话框
模块属性设置对话框有四个属性标签页.。
在【General】标签页中的【Name】栏设置模块名称为decode3_8;
在【I/Os】标签页设置3-8译码器的端口信息,在【Name】栏中输入端口名称A,【Type】栏输入INPUT,设定为输入端口。
单击【Add】按钮,即可将输入端口A添加到模块属性设置对话框下面的【ExistingBlockI/Os】列表中,如图左图所示。
以此类推,添加另外两个输入信号B、C,添加三个使能信号G1、G2a、G2b,添加八个输出信号y0、y1、y2、y3、y4、y5、y6、y7。
如下图。
图添加输入端口
单击【确定】,就生成了图标模块。
使用鼠标选中图标模块,调整其大小,以便显示所有的端口。
图生成的图标模块
单击
,保存设计的图标模块文件,将该文件的后缀名定义为.bdf。
以上的设计过程只是规定了设计的图标模块的外部端口,图标模块的功能由硬件描述语言或图形文件实现。
QuartusII软件支持的设计文件格式有:
AHDL语言格式、VHDL语言格式、VerilogHDL语言格式、Schematic图形格式。
在图标模块单击鼠标右键,在弹出的菜单中选择【CreateDesignFilefromSelectedBlock】选项,弹出创立设计文件对话框,如下图。
图创立设计文件对话框
选择文件设计类型,这里选VHDL,确定是否把将要生成的文件添加到当前工程中。
单击【OK】,就生成了设计文件decode3_8.vhd。
图
单击【确定】,弹出包含端口声明的VHDL文本编辑窗口,如下图。
图包含端口声明的VHDL文本编辑窗口
在该窗口中,已经自动生成了包含端口定义的VHDL程序的实体局部,用描述模块功能的结构体局部是个空白,需要插入相应的语句,完成设计。
如果在图创立设计文件对话框选择Schematic,那么弹出包含已经定义的输入输出端口原理图编辑窗口,如下图。
图3.15已经定义的输入输出端口原理图编辑窗口
在原理图编辑窗口左边,是输入端口;
在原理图编辑窗口右边,是输出端口。
下面我们要做的工作就是在中间插入元件,以构成自动decode3_8的原理图。
在生成图标模块的设计文件之后,如果需要对顶层图标模块的端口名或端口数目进行修改,那么在修改后,在模块上单击右键,在弹出的菜单中选择【UpdateDesignFilefromSelectedBlock】选项,QuartusII软件会自动更新底层设计文件。
在设计较为复杂的电路时,顶层文件中需要包含多个图标模块和多个元件符号,而且需要把它们连接起来。
,一般来说,连接元件符号的是信号线或总线,连接图标模块的既可以是信号线或总线,也可以是管道。
当用管道连接两个图标模块时,如果两边端口名称相同,如下图那么不必在管道上加标注,两者能够智能连接。
在连接两个图标模块的管道上单击右键,在弹出的菜单中选择【Properties】选项,弹出ConductProperties对话框,如下图。
选择【Signal】属性页,可在【Connections】列表中看到对应的连接关系。
图具有相同端口名称的两图标模块
图ConduitProperties对话框
当需要连接的两个图标模块端口名称不同时,或者是图标模块和元件符号相连时,使用端口映射的方法将两个模块的端口连接起来。
以如下图的电路为例。
图图标模块和元件符号相连
图中显示的时一个图标模块和一个二输入的与门,首先用两条信号线分别从与门的两个输入端引向图标模块,在图标模块会产生一个连接器端点。
选中连接的信号线,在弹出的菜单中选择【Properties】选项,弹出ConductProperties对话框,对该信号线命名,例如这里为wire01和wire02。
选中图标模块中需要映射的连接器端点,在连接器端点上单击右键,在弹出的菜单中选择【MapperProperties】选项,弹出MapperProperties对话框,如下图。
图MapperProperties对话框
在MapperProperties对话框中选择【Mapping】属性页,该属性页用于设置模块I/O端口和连接器上的信号映射。
例如,这里在【I/Oonblock】填入M,在【Signalinnode】填入单击wire01,单击【Add】按钮,就将映射关系添加到了下面的【Existingmapping】列表中,表示将图标模块的输出端连接到信号线wire01上,而信号线wire01又连接在与门的一个输入端上,这样就实现了图标模块和元件符号的相连。
依此类推,将其它映射关系也添加进来。
完成映射后,在图表模块连接器端点处可以看到相关信息,如下图。
图映射后的连接图
如果连接的是两个图标模块,用类似同样地方法设置。
3.1.3原理图设计流程
本节以上节建立的二输入或门输入文件为顶层文件,通过全部流程,实现设计。
详细介绍基于QuartusII软件的原理图设计方法,具体实现步骤如下。
1.建立工程
〔1〕单击【File】|【NewProjectWizard】选项,弹出工程向导的根本信息对话框,如下图,在此对话框中,第一栏填入新工程的文件夹名,这里单击
,弹出SelectDirectory对话框,找到上节建立的输入文件〔my_or2.bdf〕,单击【翻开】,在第一栏就出现新工程的文件夹名,第二栏出现工程名,第三栏出现顶层实体名。
注意工程名要和顶层实体名相同。
图3.7工程向导的根本信息
〔2〕选择需要参加的文件和库
单击图3.7所示对话框中的【Next】按钮进行下一步操作。
此时如果文件夹不存在的话,系统会自动提示用户是否创立该文件夹,选择【Yes】按钮后会自动创立。
已经创立就弹出添加文件对话框,如图3.8所示。
如果此设计中还需要其他设计文件,可以单击【Filename】栏右边的
,选择要添加的文件,单击【AddAll】按钮就将该文件参加到上面的工程中。
或者直接单击【AddAll】按钮参加在该目录下的所有文件,如果需要用户自定义的库,单击【UserLibraries】按钮进行选择。
选中已参加的文件,单击【Remove】可以将其移除。
这里不需要添加任何其它文件,直接单击【Next】。
图3.8添加文件对话框
3〕选择目标器件
单击图所示对话框中的【Next】按钮后,弹出器件类型设置的对话框,如图3.9所示。
在【Targetdevice】选项中选择【AutodeviceselectedbytheFitter】选项,系统会自动给所设计的文件分配目标器件。
选择【Specificdeviceselectedin‘Availabledevices’list】选项,用户可以根据实验条件指定目标器件。
在右侧的选项中,可以选择目标器件的封装类型〔Package〕,引脚数量〔Pincount〕和速度等级〔Speedgrade〕以便快速查找用户所需的器件范围。
图3.9器件类型设置
〔4〕选择第三方EDA工具
单击图3.9中的【Next】按钮,弹出EDA工具设置对话框,如图.10所示。
在此选择使用的第三方EDA工具。
本例中不需要第三方EDA工具,直接单击【Next】按钮。
图3.10EDA工具设置
〔5〕结束工程设置
最后弹出新工程确认对话框,如图3.11所示。
从对话框中可以看到建立的工程名称,选择的器件等信息,如确认无误后,单击【Finish】按钮,创立新工程。
图工程信息概要
2.编译工程
单击工具栏上的
按钮,对工程文件进行编译,这时QuartusII界面不断变化,编译结束后产生的界面如图3.12所示,这是编译成功的情况。
单击【确定】,生成的编译结果3所示。
该界面显示了编译时的各种信息。
如果编译不成功,在信息显示窗口给出错误和警告,可根据提示错误和警告进行相应的修改后重新编译,直到没有错误提示为止。
图3.12编译完成时界面
图3.13编译结果
3.建立仿真矢量波形文件
〔1〕创立文件
在工具栏中单击【File】|【New】,弹出新建对话框,如图3.14所示。
在出现的【New】对话框中选择【OtherFiles】页面,在该页面选择【WaveformEditorFile】选项,单击【OK】按钮,弹出矢量波形文件编辑窗口,如图3.15所示。
图3.14建立矢量波形文件
图3.15矢量波形编辑窗口
〔2〕添加引脚或节点
双击图3.15中【Name】下方空白处,弹出InsertNodeorBus对话框,如图3.16所示。
图3.16InsertNodeorBus对话框
点击【NodeFinder】按钮,弹出NodeFinder对话框,如图3.17所示。
图3.17NodeFinder对话框
单击【Filter】栏的下拉菜单项选择择【Pins:
all】选项后,点击【List】按钮,弹出设计文件引脚列表窗口,如图3.18所示。
在【NodeFound】栏中列出了设计文件的列表。
图3.18输入/输出引脚列表
在列表中双击需要的引脚,选中的信号将出现在右边的一侧,或者单击
按钮,也可以如此,如图3.19所示。
图3.19选择输入/输出节点
返回insertNodeorBus对话框,0所示。
图0查找节点后的“InsertNodeorBus〞对话框
单击【OK】按钮后,选中的输入/输出引脚就出现在波形编辑窗口的【Name】栏下,引脚1所示。
图3.21添加节点后的矢量波形编辑窗口
〔3〕编辑输入波形并保存
波形观察窗的左边是输入引脚,在同行的右边可以编辑波形。
使用时,先选中左边的输入引脚名,再在右边用鼠标在输入波形上拖一条需要改变的黑色区域,然后单击左边工具栏的有关按钮,即可进行低电平、高电平、任意、高阻态、反相和总线数据等各种设置。
假设是时钟信号,用鼠标点时钟信号的
,出现时钟信号设置对话框,按下【OK】即可设置时钟信号。
这时时钟信号的波形区域全部变成黑色,按集成环境窗左边上的时钟按钮,根据要求将各输入信号A、B的波形设置成如图3.22所示。
然后单击
保存文件,文件取名为my_or_2.vwf。
图3.22编辑输入信号
4.波形仿真
〔1〕功能仿真
在QuartusII的工具栏中选择【Processing】|【GenerateFunctional….】,生成功能仿真网表,然后选择【Assignments】|【Setting】,弹出设置仿真类型对话框,点击“SimulatorSettings〞选项,在“simulationmode〞中选择“Functional〞命令,3所示。
3设置功能仿真类型
后点击
按钮进行功能仿真,检查设计的逻辑错误。
仿真结果如图3.24所示。
图3.24功能仿真
〔2〕时序仿真
选择QuartusII的工具栏中【Assignments】|【Setting】|【SimulatorSettings】|【simulationmode】选择“Timing〞命令,然后单击工具栏的
按钮,开始时序仿真,验证时序是否符合要求,仿真过程在后台进行,计算机能够同时作其他的工作。
结果如图3.25所示。
图3.25时序仿真
观察波形,发现输出端C的波形产生了一些延时。
5.引脚分配
分配引脚是为了对所设计的过程进行硬件测试,将输入/输出引脚信号锁定在目标器件的引脚上。
单击工具栏【Assignments】|【Pins】选项,弹出选择要分配的分配引脚的对话框,如图3.26所示。
在下方的列表中列出了本设计的所有输入\输出引脚名。
图3.26选择要分配的分配引脚
在图3.26中,双击输入端A对应的【Location】选项,弹出引脚列表,从中选择适宜的引脚,这时输入A的引脚分配完毕,同理完成其他所有引脚的指定,结果如图3.27所示。
图3.27完成所有引脚的分配
6.下载验证
下载验证是将所做设计生成的文件通过计算机下载到实验电路板上,用来验证本次设计是否符合要求的一道流程,其步骤如下:
〔1〕编译
分配完引脚后必须经过再次编译,这样才能存储引脚锁定的信息,单击编译按钮
执行再次编译。
如果编译出现问题,可以对器件重新设置。
〔2〕配置下载电缆
在【Tools】|【Progammer】命令,弹出未经配置的下载窗口,如图3.28所示。
图3.28未经配置的下载窗口
单击【HardwareSetup】按钮,弹出HardwareSetup对话框。
图3.29HardwareSetup对话框
单击【AddHardware】按钮,弹出下载电缆选择对话框,如图3.30所示。
在【HardwareType】一栏中选择【ByteBlasterMVorByteBlasterII】,单击【OK】按钮,完成设置。
如果下载电缆一直保持不变,不需每次都要设置。
图3.30下载电缆选择对话框
〔3〕JTAG模式下载
JTAG模式是QuartusII软件默认的下载模式,其相应的下载文件为.sof格式,勾选下载文件右侧的小方框,如图3.31所示.。
图3.31选择下载文件
将下载电缆连接好后,单击【Start】按钮,计算机就开始下载编程文件。
下载完后结果如图3.32所示。
图2JTAG模式下载完毕
〔4〕ActiveSerial模式
ActiveSerial模式的下载文件为“.pof〞格式,在【Mode】一栏中选择ActiveSerial】,弹出提示框,点击【是】,然后在“AddFile〞里添加选择文件“〞,勾选下载文件右侧的小方框,将下载电缆连接好后,单击【Start】按钮,开始下载编程文件。
下载完后结果如图3.33所示。
图3.33ActiveSerial模式
对于大多数设计来说,到此就完成了。
7.QuartusII的几个常用功能。
〔1〕使用RTLViewer分析综合结果
单击【Tools】|【NetlistViewers】|【RTLViewer】,弹出RTLViewer对话框,如图4所示。
可以看到综合后的RTL结构图,发现该图与原理图相同。
图3.34RTLViewer对话框
〔2〕使用TechnologyMapViewer分析综合结果
单击【Tools】|【NetlistViewers】|【TechnologyMapViewer】,弹出TechnologyMapViewer对话框,如图5所示。
图5TechnologyMapViewer对话框
〔3〕创立图元符号
单击【File】|【Create/Update】|【CreateSymbolFilesforCurrentFile】,生成“.bsf〞格式的图元符号文件,如图3.36所示。
。
从图中可以看出生成的是只有输入输出的元件。
在原理图编辑窗口单击按钮,在弹出的“Symbol〞对话框的“Project〞栏里出现