Quartus71使用文档Word文件下载.docx
《Quartus71使用文档Word文件下载.docx》由会员分享,可在线阅读,更多相关《Quartus71使用文档Word文件下载.docx(20页珍藏版)》请在冰豆网上搜索。
![Quartus71使用文档Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-11/23/5afb84d2-f928-4055-a495-87fe7216a838/5afb84d2-f928-4055-a495-87fe7216a8381.gif)
本文用一个简单例子来介绍QuartusII的使用方法,本实例使用QuartusII7.1版本的软件,实现c=a&
b的功能,a、b是两路输入信号,c为输出信号,即输出等于两路输入相与的结果。
本文将从建立工程、编写代码、编译、仿真、分配引脚、下载等方面介绍QuartusII7.1的使用方法。
2.1工程的建立
运行quartusII7.1软件,左侧projectNavigator为项目管理区,Status为操作状态区,最下面为Message消息显示区,其余为工作区,如图1所示。
图1
选择File|NewProjectWizard新建一个工程,在对话框中的第一行选择工程路径,并为该工程新建一个文件夹,本例更改路径为F:
/program/FPGA/project/fpga1。
第二行输入工程名fpga1;
第三行是工程顶层设计文件名,该顶层设计文件名一定要与设计文件中模块名module一致,可以与工程名不同,但一般都和工程名一致,(注意:
在QuartusII中区分大小写)这里输入fpga1;
如图2所示。
图2
单击“Next”,此对话框是向工程中添加设计文件。
现在还没有写设计文件,所以没有文件可以添加;
直接单击“Next”,进入器件选择对话框。
在Family下拉菜单中选择CycloneII系列。
然后在Filters下的Package下拉菜单中选择封装形式PQFP,Pincount下拉菜单中选择管脚数208,Speedgrade下拉菜单中选择速度级别Any;
然后在Availabledevices中选择EP2C8Q208C器件,如图3所示。
图3
单击“Next”进入选择其他EDA工具对话框,这里都不选,直接单击“Next”进入工程信息对话框,列出了工程名,模块名和器件名等信息,如图4所示。
图4
最后单击Finish完成工程的建立。
新建设计文件,选择File|New,在New对话框中选择DeviceDesignFiles下的VerilogHDLFile,单击OK,完成新建设计文件。
如图5所示。
图5
2.2编写代码
在新建设计文件中输入VerilogHDL程序,如图6所示。
图6
输入代码如下:
modulefpga1(a,b,c);
inputa,b;
outputc;
assignc=a&
b;
endmodule
建立顶层原理图文件。
选择File|New,在New对话框中选择DeviceDesignFiles下的BlockDiagram/SchematicFile,单击OK,完成新建设计文件。
如图7所示。
图7
使用File/Saveas命令将原理图文件改名为fpga,注意原理图文件明不能和模块名相同,否者在放置模块是将不能放置。
如图8所示:
图8
生成顶层模块。
点击.V文件,单击右键,选择CreatSymbolFilesforCurrentFile,如图9所示:
图9
放置原理图。
在工作区双击左键,选择Project下的模块fpga1,放置到原理图文件,如图10所示,再选择…/primitives/pin将输入、输出引脚放置到原理图中,并用导线连接(引脚属性可以双击后修改),完成后如图11所示。
图10
图11
编译文件。
在编译之前要先将原理图文件设为顶层文件,方法是右键单击.bdf文件,选择SetasTop-LevelEntity命令,如图12所示。
选择使用Processing/StartCompilation编译工程,也可以用快捷键Ctrl+L或者工具栏的三角符号进行编译如图13所示。
编译过程中如果报错使编译不成功,要仔细查看报错的信息,解决问题,直到无误为止。
编译完成后如图14所示。
图12
图13
图14
2.3仿真
在编译完成之后就可以进行仿真。
仿真可以用Quartus自带的仿真工具进行,也可以使用其他工具比如modelsim进行仿真。
这里只介绍Quartus自带的工具。
仿真可以分为功能仿真和时序仿真,功能仿真容易看出仿真结果,时序仿真不但可以得到结果,还可以看出时序正确与否。
1.建立仿真文件
选择File|New,在New对话框中选择OtherFiles下VectorWaveformFile,点击OK完成文件建立,如图15所示。
图15
2.导入输入输出信号
在建立文件后得到如图16的界面,在Name区双击鼠标左键,弹出InsertNodeorBus对话框,点击NodeFinder选项,进入NodeFinder对话框,如图17所示,将Filter菜单选取为‘pin:
all’,点击list选项,在Node对话框左边会显示出所有的引脚信号如图18所示,选定需要仿真查看的引脚,使用‘》’键一个一个导入右边的方框,也可以用‘》》’一次导入多个引脚,如果导入错误,可以用‘《’和‘《《’导出,本例将a、b、c引脚导入,如图19所示。
点击OK返回InsertNodeorBus对话框,再点击OK,完成仿真文件的建立,如图20所示。
(注意:
如果需要查看模块中间变量在仿真中的状态,可以将其设置为输出,并在原理图中分配引脚)
图16
图17
图18
图19
图20
3.修改仿真属性
仿真文件建立完成后,需要修改输入的属性,以及仿真时间。
(1)修改输入属性。
点击输入信号,侧边工具栏会显示修改属性的工具,如图21所示:
图21
其中
键表示撤销初始化,
将信号变为未知信号,
将信号变为低电平,
将信号变为高电平,
表示高阻信号,
表示弱未知信号,
表示弱低电平,
表示弱高电平,
表示无关信号,
表示信号倒置,
表示计数器赋值,
表示时钟赋值,
表示任意赋值,
表示随机赋值。
本例中分段将a、b设置为高低电平,结果如图22所示。
图22
(2)修改仿真时间。
如图23所示,打开菜单…Edit/EndTime,进入EndTime对话框,如图24所示,可以修改结束时间。
注意仿真时间不能太长,否者软件仿真时间会很长。
仿真时间由时钟信号和仿真周期决定,设置时要考虑时钟周期和运行时间,一般仿真几个周期即可。
图23
图24
(3)设置仿真模式
Quartus具有功能仿真和时序仿真两种,点击菜单…Assignment/setting,弹出如图25的对话框,点击SimulatorSetting,在菜单Simulationmode的下拉菜单中选择Functional(功能仿真)或Timing(时序仿真),
本例中选择功能仿真,如图26所示,点击OK,完成设置。
图25
图26
(4)生成仿真网表
点击菜单…Processing/GenerateFunctionalSimulationNetlist,生成网表,如图27所示。
完成后点击Success,完成网表生成。
图27
(5)仿真
生成网表后,开始仿真。
如图28所示,点击菜单…Processing/StartSimution或使用快捷键CTRL+T,或者点击上边工具栏的
键开始仿真。
仿真完成后结果如图29所示
图28
图29
通过仿真结果可以看出,c=a&
b,和设计意图吻合。
可以重新设置仿真模式,生成网表,进行时序仿真。
如果仿真结果不对,则重新检查代码,修改代码,在重新仿真,直到仿真结果和设计意图相吻合为止。
2.4配置管脚
在仿真无误后,就可以配置引脚。
分配引脚有两种方式。
一种是选择Assignments中的Pins选项,出现如图30所示的对话框,在里面编辑定义管脚。
注意,指定管脚是可以任意配置IO管脚,芯片的一些专用管脚不能配置,在设计DXP原理图是必须小心,不能占用FPGA的专用管脚。
本例配置完成后如图31所示。
图30
图31
另外的一种方法是修改qsf文件,在Quartus文件下利用文本文件打开.qsf文件,可以就直接添加管脚,在fpga1.qsf文件中添加如下代码:
set_location_assignmentPIN_30-toa
set_location_assignmentPIN_31-tob
set_location_assignmentPIN_33-toc
不管用哪种方法,在定义完管脚后都要重新编译一遍。
配置完成后,原理图文件变成如图32所示
图32
2.5配置芯片
管脚配置完成后,在重新编译一次,可以配置芯片,下载到FPGA中。
一般有AS下载和JTAG下载两种。
在连接好电源与下载线后,单击QuartusII中tools/programmer或者点击工具栏的
键,得到如图33所示的对话框,在对话框的Mode菜单中选取下载方式,本例中选取AS下载。
在连接下载器时,如果是第一次使用需要安装驱动程序,否则不能识别下载器。
安装时选择指定路径安装,选择Quartus安装路径…/quartus/drivers/usb-blaster/x32,如图34所示,点击确定进行安装。
安装完成后,单击HardwareSetup,选择下载线类型,然后确定,选中programmerconfiger。
如图35所示。
图33
图34
图35
最后单击Start,执行下载操作。
3小结
本文通过一个例子讲解Quartus7.1软件的使用方法,从建立工程到最后下载。
希望能对初学FPGA的同学有所帮助。
但是由于本人能力有限,有很多地方没有考虑好,欢迎大家给与指证。
FPGA的学习需要大家共同努力,希望大家在以后的学习中多多交流,学好FPGA。
谢谢!
黄连上芯片牛黄解毒片/三黄片菊花百多邦