《第三章 QuartusII设计流程》由会员分享,可在线阅读,更多相关《第三章 QuartusII设计流程(71页珍藏版)》请在金锄头文库上搜索。
1、,第三章 QuartusII设计流程,1、QUARTUSII简介 2、QUARTUSII下载与安装 3、QUARTUSII设计流程 4、QUARTUSII实例演示,本课程的目标 通过教学使学生了解QUARTUSII的特点,掌握在QUARTUSII软件平台上进行文本输入及仿真的基本方法,掌握设计项目的编译、模拟与仿真等常规操作技术。,1、QUARTUSII简介,QUARTUSII是美国Altera公司提供的可用于可编程片上系统(SOPC)开发的综合开发环境,是进行SOPC设计的基础.集成环境包括以下内容:系统级设计,嵌入式软件开发,可编程逻辑器件(PLD)设计,综合,布局和布线,验证和仿真其应用
2、方法与设计流程对于其他流行的EDA工具的使用具有一定的典型性和一般性。,图1.1 Quartus II6.0用户界面,2、QUARTUSII下载与安装,公司网址,注册/登录,下载,下载中心,网络版,6.0版,点击go,点击,右键单击此处选择下载方式,从Altera网站下载QUARTUSII6.0后,即可安装软件,使用时需要安装许可文件(license.dat),因此需要从Altera网站再下载许可文件。,从Altera网站下载许可文件之前,需要知道当前电脑的物理地址(NIC)。获得NIC的方法有2种:,第一种获得NIC的方法: (1)打开安装好的QuartusII软件,选择Tools/lice
3、nse setup 命令,在出现的界面里NIC所指的信息 ,即为需要的。 例如: 6c626d058a9c,具体的步骤如下:,点击,选择,第二种获得NIC的方法:,在Windos界面下,使用命令 开始 | 运行 | cmd ,然后回车出现DOS命令提示符; 在DOS命令提示符下键入命令: ipconfig /all;在屏幕显示的结果中,在 physical address 后面有一串12位的16进制数,这就是本计算机的NIC(每2个数字之间有连字符隔开)。 例如:6C-62-6D-05-8A-9C。,下载中心,从Altera网站下载QUARTUSII6.0许可文件,点击此处,输入注册时的用户名
4、,输入注册时的密码,点击,输入机器的NIC数字,选中Yes,选中,点击,之后就可下载license到注册时使用的邮箱。因为每个许可文件含有不同计算机的物理地址码,所以不同的计算机只能用含有他NIC码的那个许可文件。并且在计算机上安装好QUARTUSII6.0 软件后,注意license文件应该首先复制到QUARTUSII6.0的安装路径下面,如:如果QUARTUSII6.0安装在C:Altera QUARTUSII6.0下面,那么license文件也必须存在C:Altera QUARTUSII6.0这个路径下面,然后再在QUARTUSII6.0软件下面导入license文件,如果不安装lice
5、nse文件,在计算机上的程序不能下载到实验箱上显示实际的实验效果。,3、QUARTUSII设计流程,3、QUARTUSII设计流程,4、QUARTUSII实例演示,Project: 项目,工程,设计 Quartus2只对项目进行编译,模拟,编程. 而不对单独的文件,除非把该文件设置为项目,任何一项设计都是一个项目(Project),都必须为此项目建立一个放置与此项目相关文件的文件夹,如果各个设计都不加整理地放在默认的目录下,势必造成文件管理的混乱。此文件夹被默认为工作库(Work library)。设计输入的源文件(.vhd)以及包括编译过程中自动产生的一系列后续文件均放在该工作库中。,注意事
6、项,QuartusII软件的具体设计步骤,模拟仿真 电路观察器 引脚分配 下载与配置,建立文件夹,在实验室上机时,要求在D盘建立一个自己姓名拼音的文件夹,每次实验内容都在此文件夹下再建立一个文件夹,在这个二级文件夹里存放相应项目、程序文件、仿真波形文件等。 例如:D:fanliand_2,建立新工程,(1)双击桌面上 Quartus II6.0 的图标,启动 Quartus II6.0 软件。,(2)通过 File = New Project Wizard 菜单命令启动新项目向导。,(3)在随后弹出的对话框上点击 Next 按钮,继续。,点击此处,(4)在 What is the workin
7、g directory for this project 栏目中设定新项目所使用的路径;在 What is the name of this project 栏目中输入新项目的名字: vote ,点击 Next 按钮。,4.点击此处,建议顶层文件名与顶层 Entity 同名; 建议顶层文件名与项目名称相同。,(5)在这一步,向导要求向新项目中加入已存在的设计文件。因为我们的设计文件还没有建立,所以点击 Next 按钮,跳过这一步。,点击此处,(6)为本项目指定目标器件,3.点击此处,(7)在这一步,可以为新项目指定综合工具、仿真工具、时间分析工具。在这个实验中,我使用 Quartus II6.
8、0 的默认设置,直接点击 Next 按钮,继续。,点击此处,(8)确认相关设置,点击 Finish 按钮,完成新项目创建。,点击此处,设计输入,(9)接下来,我们建立一个VHDL文件。通过 File = New 菜单命令,在随后弹出的对话框中选择 VHDL File选项,点击 OK 按钮。通过 File = Save As 命令,将其保存,并加入到项目中。,4.点击此处,(10)在VHDL界面输入两输入与门程序,然后通过 File = Save As 命令保存,,注意事项: (1)保存的文件一定要存到指定、正确 的文件夹下。例如本例一定要存在 D:fanliand_2文件夹目录下 (2)保存的
9、文件名必须和实体名一致.即 保存时只能用and_2这个文件名。,综合和编译,(11)选择Processing =Start Compilation,检查程序语法错误,并生成RTL图,(12)执行Tools =Netlist Viewer =RTL Viewe, 生成RTL图,容易出现的错误 错将设计文件存入了根目录,并将其设定成工程,找 不到工作库时,报错为: Error:Cant open VHDL “WORK” 文件后缀名不是.vhd,在设定工程后编译时,报错为 Error : Line1 , File e:half_adderhalf_adder.tdf:TDF syntax error
10、 设计文件名与实体名不符时,如写成adder.vhd,编译 时,报错为: Error:Line1,VHDL Design File “adder.vhd“ must contain 设计文件描述的语法错误,如每一个句子后没加分号 Error VHDL syntax error at and_2.vhd(5) near text :; expecting ;, or ),发现并纠正VHDL代码中的错误 故意制造一个错误:例如将第4行末尾处的分号删 除 然后执行 Processing =Start Compilation ; 编译器将产生出错报告 ; 点击确定。,点击确定,发现并纠正VHDL代码中
11、的错误 在消息窗口中找到第1条出错信息:它告诉我们与第5行 的文字缺少1个分号。 鼠标双击该消息,文本编辑器中的出错位置被高亮度显示; 纠正该错误 重新编译 通过; 本例说明出错消息的不准确性,应首先纠正第1个错误,纠 正一个,编译一次。,编译的成功为项目创建一个编程文件,能够保证了设计输入的基本正确性,不能保证该项目的逻辑关系的正确性,也不能保证时序的正确性。,设计输入和 编译成功,设 计 成 功,模拟仿真,仿真过程不涉及任何具体器件的硬件特性。在综合后即可进行。会使用命令 Processing=Generate Functional Simulation Netlist,就是接近真实器件运
12、行特性的仿真,仿真文件中己包含了器件硬件特性参数,因而,仿真精度高。必须在全程编译后进行。,无论是功能仿真还是时序仿真,都需要准备好波形文件,(13)在 File 菜单下,点击 New 命令。在随后弹出的对话框中,切换到 Other Files 页。选中 Vector Waveform File 选项,点击 OK 按钮。,3.点击OK,(14) 进入波形编辑器窗口工具条,(15)指定模拟终止时间,在对话框中操作,选择命令 Edit=End Time (本例为300 ns),(16)现在,我们已经进入到波形编辑界面。在 Edit 菜单下,点击 Insert Node or Bus 命令,或在结点
13、名字区连续双击鼠标左键两次,出现如下框图,点击框 图中的Node Finder出现结点查找器窗口搜索结点名,(17)在上面一个框图中点击 Node Finder 按钮后,打开 Node Finder 对话框。点击 List 按钮,列出电路所有的端子。点击 按钮,全部加入。点击 OK 按钮,确认。,(18)回到 Insert Node or Bus 对话框,点击 OK 按钮,确认。,(19) 编辑输入激励信号波形.选中 a 信号,在 Edit 菜单下,选择 Value = Clock 命令。在随后弹出的对话框的 Period 栏目中设定参数为50ns,点击 OK 按钮。,强调此处设置的周期必须大
14、于网格上的最小时间间隔。,(2)点击此符号,(20)重复之前的操作,设置输入信号b的参数,(20)重复之前的操作,设置输入信号b的参数,(21)输入激励信号波形编辑完毕后的结果,(22)功能仿真,(2)使用命令Processing=Simulator Tool ,出现模拟器窗口,(1)Processing=Generate Functional Simulation Netlist,功能仿真波形,此处已提示,(23)时序仿真,(1)选择Timing,(2)使用命令Processing=Simulator Tool ,出现模拟器窗口,(1)Processing=Generate Function
15、al Simulation Netlist,此处已提示,时序仿真波形,功能仿真没有时间延迟,时序仿真会产生时间延迟及毛刺 VHDL语言正确,时序仿真不一定正确。 时序仿真和器件的真实特性相接近,必须在全程编译后才 能进行时序仿真。 一般情况,我们只进行时序仿真,而不进行功能仿真。因 此在波形文件的输入设定好后,直接点击工具按钮 或使用Processing=start simulation命令,即可进 行时序 仿真。,注意事项:,引脚分配,(1)确定电路的输入/输出端口和引脚的对应关系; (2)将设计结果下载到可编程器件中,使之变成所 希望的集成电路,这个过程称为编程,引脚分配的目的,如果设计者
16、未明确地指定端口和引脚对应关系, 则是把引脚分配的权力交给了编译器; 如果设计者部分地指定了引脚分配关系,则未指 定的引脚分配由编译器自动处理; 如果设计者完全规定了引脚的分配关系,则编译 器将严格遵照设计者的指定形成编程文件。,引脚分配的原则,一般都要求设计者自己完全规定了引脚的分配关系,(24)在 Assignments 菜单下,点击 Pin Planner 命令,出现如下图示。在这个工具中,我们可以为我们的电路的端子分配器件的引脚。在 All Pins 表格中,双击 Node Name 列的 new node 单元,选择所有端口的名字。在同一行的 Location 列,选择要分配的位置。重复操作,为每个端子都分配适当的脚位。,(25)在 Assignments 菜单下,点击 Device 命令。在随后弹出的对话框中点击 Device & Pin Options 按钮,进入 Device & Pin Options 对话框。切