(图片来源网络,侵删)
以Altera公司的QuartusⅡ(13.0)为主,介绍EDA工具软件的使用方法,作为EDA设计的基础通过本章的学习,读者可初步采用QuartusII软件的原理图输入法,设计数字电路和系统,掌握用试验开发系统或开发板对设计电路进行硬件验证的方法知识要点:(1)Quartus II(13.0版本)的使用方法(2)Quartus II的原理图输入法(3)University Program vwf和ModelSim-Altera的仿真方法(4)Quartus II的宏功能模块的使用方法(5)Quartus II嵌入式逻辑分析仪的使用方法(6)Quartus II嵌入式锁相环的使用方法Quartus II软件的主界面Quartus Ⅱ13.0的主界面包括菜单与工具栏、主窗口、工程引导窗口(Project Navigator)、任务窗口(Tasks)、信息(Messages)窗口等Quartus II的图形编辑输入法图形编辑输入法也称为原理图输入设计法用Quartus II的原理图输入设计法进行数字系统设计时,不需要任何硬件描述语言知识,在具有数字逻辑电路基本知识的基础上,就能可使用Quartus II提供EDA平台,设计数字电路或系统 为了方便电路设计,设计者首先应当在计算机中建立自己的工程目录(如d:\myeda)将自己的全部EDA设计文件放在文件夹中注意:工程文件夹的名称不要使用汉字,最好也不要全部使用数字在Quartus II平台上,使用图形编辑输入法设计电路的操作流程包括编辑(设计输入)、编译、仿真和编程下载等基本过程用Quartus II图形编辑方式生成的图形文件默认的扩展名为.bdf 下面以8位加法器adder8的设计为例,介绍Quartus II软件使用的基本方法设计结果用友晶公司的Altera DE2开发板(以下简称为DE2开发板)进行硬件验证编辑输入图形设计文件使用Quartus II设计电路系统之前,需要先建立设计项目(Project)例如,用图形编辑法设计8位加法器adder8时,需要先建立adder8的设计项目执行“File” →“New Project Wizard”命令,弹出新建设计项目对话框的“New Project Wizard: Directory,Name,TOP-Level Entuty [page 1 of 5]”页面,在此页面输入设计文件的地址、设计项目的名称和顶层文件实体名单击“Next”按钮,进入的新建工程对话框(第2页面)此页面用于增加设计文件,包括顶层设计文件和其他底层设计文件 单击“Next”按钮,进入新建工程对话框(第3页面),此页面用于设置编程下载的目标芯片的类型与型号单击“Next”按钮,进入新建工程对话框(第4页面),此页面用于设置第三方EDA工具软件的使用QuartusⅡ10.0及以上版本使用ModelSim软件仿真,因此在该对话框的Simulation(仿真)栏目中选择“ModelSim-Altera”为仿真工具,在格式(Format(s))中选择Verilog HDL或VHDL选择Verilog HDL则系统编译后自动生成Verilog HDL仿真输出文件(即.vo文件),选择VHDL则生成VHDL仿真输出文件(即.vho文件) 新建设计项目对话框的第5页面用于显示新建设计项目的摘要,用鼠标点击此页面下方的“Finish”按钮,完成新设计项目的建立 新的项目建立后,执行“File” →“New”命令,在弹出编辑文件类型对话框中,选择 “Block Diagram/Schematic File ”(模块/原理图文件)方式,进入Quartus II图形编辑方式的窗口界面在原理图编辑窗中的任何一个位置上用双击鼠标,弹出一个元件选择窗在8位加法器adder8的设计中,将电路设计需要的2个4位加法器74283以及输入、输出元件符号调入图形编辑框中,根据8位加法器设计的原理图,用鼠标完成电路内部的连接以及与输入、输出元件的连接,并将相应的输入元件符号名分别更改为“A[7..0]”和“B[7..0]”,把输出元件的名称分更改为“SUM[7..0]”和“COUT”(更名方法见教材)其中A[7..0]和B[7..0]是两个8位加数输入端,SUM[7..0]是8位和数输出端,COUT是向高位进位输出端电路设计完成后,用“adder8.bdf ”为文件名保存在工程目录中 编译设计图形文件 执行“Processing”→“Start Compilation”命令,或者单击“开始编译”命令按钮,对adder8.bdf文件进行编译编译的进程可以在状态(Status)或者任务(Tasks)窗口上看到编译过程包括分析与综合、适配、编程、时序分析和EDA网表文件生成等5个环节真设计文件 在Quartus II 10.0版本以后,已经将Quartus II 9.0以及低版本中自带的仿真工具(Waveform Editor)取消,采用第三方软件ModelSim进行设计仿真Quartus II 13.0版本以后,Quartus II软件中又增加了自带大学计划仿真工具(university program vwf)下面以Quartus II 13.01版本为例介绍Quartus II软件仿真的基本操作在安装Quartus II软件时就要求安装ModelSim-Altera软件,安装Quartus II 9.0时,自带的是ModelSim-Altera 6.4a版本软件;安装Quartus II 10.0时,自带的是ModelSim-Altera 6.5e版本软件;安装Quartus II 11.0时,自带的是ModelSim-Altera 6.6d版本软件;安装Quartus II 12.0时,自带的是ModelSim-Altera 10.0d版本软件;安装Quartus II 13.0时,自带的是ModelSim-Altera 10.1d版本软件ModelSim-Altera 6.4a和ModelSim-Altera 6.5e不需要单独注册,只要相应的Quartus II注册了就可以使用,而ModelSim-Altera 6.6d和ModelSim-Altera 10.0d需要单独注册(license)后才能使用各种不同版本的ModelSim使用方法基本相同,而且Quartus II软件可以调用任何ModelSim-Altera版本执行仿真,下面分别简单介绍Quartus II 13.0自带的ModelSim-Altera 10.1d和大学计划仿真工具(university program vwf)的使用方法university program vwf也是基于ModelSim仿真工具的,不过它与Waveform Editor仿真界面类似,建议读者主要使用ModelSim仿真大学计划仿真工具(university program vwf) 用Quartus II 13.0自带大学计划仿真工具(university program vwf)仿真,需要经过建立波形文件、输入信号节点、设置波形参量、编辑输入信号、波形文件存盘、运行仿真器和分析仿真波形等过程(1)建立波形文件执行Quartus II主窗口的“File”→“New”命令,在弹出编辑文件类型对话框中选择“university program vwf”方式后单击“OK”按钮,或者直接单击主窗口上的“创建新的波形文件”命令按钮,进入Quartus II波形编辑方式(2)输入信号节点在波形编辑方式下,执行“Edit”→“Insert Node or Bus…”命令,或右击波形编辑窗口的“Name”栏,在弹出的快捷菜单中执行“Insert Node or Bus…”命令,弹出插入节点或总线(Insert Node or Bus…)对话框在该对话框中,首先单击“Node Finder…”按钮,弹出节点发现者(Node Finder)对话框在该对话框的“Filter”栏中,选中“Pins:all”项后,再单击“List”按钮,这时在窗口左边的“Nodes Found”(节点建立)框中将列出该设计工程的全部信号节点(3)设置波形参量Quartus II默认的仿真时间域是1s,如果需要更长时间观察仿真结果,可执行“Edit”→“End Time…”命令,弹出 “End Time”(设置仿真时间域)对话框,在对话框中输入适当的仿真时间域(如10s),单击“OK”按钮完成设置(4)编辑输入信号编辑输入信号测试电平或数据在仿真编辑窗口的左侧列出了各种功能选择按钮,主要分为工具按钮和数据按钮两大类工具按钮(如文本工具、编辑工具等)用于完成诸如增加波形的注释、选择某段波形区域等操作,数据按钮用于为波形设置不同的数据,便于观察仿真结果2. ModelSim-Altera仿真 (1)设置ModelSim的安装路径在Quartus II 13.0版本首次使用ModelSim软件进行仿真时,需要设置ModelSim-Altera的安装路径(仅设置一次即可)在Quartus II 13.0主界面窗口执行“Tools”→“Options…”命令,在“Options”对话框单击选中“EDA Tool Options”选项,在ModelSim-Altera栏中指定ModelSim-Altera 10.1d的安装路径,其中的“D:/Altera/13.0sp1/ modelsim_ae /win32aloem”是计算机中ModelSim-Altera 10.1d的安装路径(2)设置和添加仿真测试文件用ModelSim-Altera可以进行功能仿真和时序仿真,功能仿真也叫前仿真,是不考虑设计电路内部的时间延迟的仿真,主要验证电路的功能;时序仿真也叫后仿真,是结合设计电路内部的时间延迟的仿真基于Quartus II 13.0的ModelSim-Altera 10.1d的时序仿真是将新工程建立时选择的目标芯片的传输延迟时间,加到系统生成的标准延迟(.sdo)文件中,仿真时Verilog HDL或VHDL输出网表文件(.vo或.vho)调用SDO标准延迟文件,将设计电路的输出信号与输入条件之间的延迟在ModelSim-Altera的波形窗口展示出来,实现时序仿真.vo(或.vho)和.sdo文件在Quartus II编译时自动生成,并存放在工程文件夹的“/simulation/modelsim/”路径中ModelSim-Altera仿真时需要设置和添加测试文件,添加的测试文件是输出网表文件adder8.vo在Quartus II 13.0界面执行“Assignments”→“Settings”命令,弹出如图2.22所示设置(Settings)对话框,单击选中“EDA Tool Settings”项,对“Simulation”栏下的仿真测试文件进行设置其中,在“Tool name”中选择ModelSim-Altera;在“Format for output netlist”中选择开发语言的类型Verilog(或者VHDL)(上述两项若在建立新工程时已设置,则保持默认);在“Time scale”中指定时间单位级别(时序仿真不用指定);在“Output directory”中指定测试文件的输出路径(即测试文件adder8.vo或adder8.vho存放的路径“simulation/ modelsim/”)单击“Test Benches”按钮,弹出Test Benches文件对话框在对话框中单击“New”按钮,弹出 “New Test Bench Settings”对话框,对新的测试文件进行设置在生成新的测试文件设置(Create new test bench settings)项的“Test bench name”栏中输入测试文件名“adder8”(注意不要加后缀),该测试文件名也会同时出现在“Top module in test bench”栏中在仿真周期(Simulation period)项中保持“Run simulation until all vector stimuli are used”默认,如果选中“End simulation at”(前面出现“⊙”),则需要输入仿真周期(s或ms、us、ns、ps)在测试文件(Test bench and simulation files)项的“File name”栏中找到测试文件和存放路径(如simulation/modelsim/adder8.vo),然后单击“Add”按钮,完成新的测试文件添加单击各对话框和窗口的“OK”按钮,完成测试文件的设置(3)执行仿真测试文件在Quartus II主窗口执行“Tools”→“Run Simulation Tool”→“Gate Level Simulation…”命令,开始对设计文件的门级仿真命令执行后,系统会自动打开ModelSim-Altera 10.1d主界面和相应的窗口,如结构(Structure)、命令(Transcript)、目标(Objects)、波形(Wave)、进程(Processes)等窗口,这些窗口可以用主界面上的“View”菜单中的命令打开或关闭ModelSim-Altera的时序仿真操作主要在波形(Wave)窗口进行将波形窗口从ModelSim的主界面展开成独立界面,如图所示,并将与设计电路输入、输出端口无关的信号删除,仅保留A、B、SUM和COUT,便于观察仿真过程与结果波形窗口中的主要按钮及功能已在图中标注,包括放大(Zoom In)、缩小(Zoom Out)、全程(Zoom All)、重新开始(Restart)、运行步长(Run Length)、运行(Run)、继续运行(Continue Run)、运行全程(Run -All)、停止(Break)、添加光标(Inset Cursor)、删除光标(Delete Cursor)等仿真操作步骤如下:①仿真开始前的准备首先单击“重新开始”按钮,清除波形窗口中所有波形,然后将“运行步长”中的时间单位更改为“ns”(默认时间单位为“ps”),使每按一次“运行”按钮的执行时间为100ns②创建输入波形仿真时可以预先为输入信号创建波形,然后再执行仿真右击ModelSim-Altera 10.1d主界面的目标(Objects)窗口中需要创建波形的输入信号(如“A”),弹出Objects设置快捷菜单执行菜单中的“Create Wave…”(创建波形)命令,弹出 “Create Pattern Wizard”(创建模式向导)窗口,为选中的信号创建和设置波形模式创建的波形模式包括Clock(时钟)、Constant(常数)、Random(随机)、Repeater(重复)和Counter(计数)首先为输入信号A创建Counter(计数)波形模式,并保持波形窗口中“Start Time”(开始时间)栏目的默认值“0”,将“End Time”(结束时间)栏目的值更改为“1”,将“Time Unit”(时间单位)更改为“us”(默认值是ps)单击“Next”按钮,进入输入A波形模式设置的下一个窗口,在这个窗口中,保持“Start Value”(开始值)栏目的默认值“00000000”,保持“End Value”(结束值)栏目的默认值“11111111”,将“Time Period”(周期)栏目的值更改为“10”,将“Time Unit”更改为“ns”,其他栏目保持默认单击“Finish”按钮,结束对输入A的波形创建,为输入A创建了计数型波形模式,波形自0us开始至1us结束,A中的数值自“00000000”(8位二进制数)开始至“11111111”变化,每次变化数值递增1,变化周期为10ns由于目标芯片的传输延迟在10ns左右,因此变化周期小于10ns时将无法看到设计电路时序仿真的输出波形然后为输入B创建Constant(常数)波形模式,开始时间、结束时间、时间单位与输入A相同,单击窗口下的“Next”按钮,进入Constant设置的下一个窗口(图略),将窗口中“Value”栏目中的值更改为“11110000”,单击“Finish”按钮完成输入B的波形创建,为输入B创建了常数型波形模式,波形自0us开始至1us结束,B中的数值保持“11110000”(8位二进制数)不变执行Object设置快捷菜单中的“Radix…”命令,可以为每个信号的波形选择一种显示数制,这些数制主要有“symbolic”(符号)、“binary”(二进制)、“octal”(八进制)、“decimal”(十进制)、“unsigned”(无符号十进制)、“hexadecimal”(十六进制)等本例是8位二进制的加法器设计,用十六进制(hexadecimal)显示数据便于观察,将输入A、B和输出SUM选择十六进制数制,为输出COUT选择二进制数制③运行仿真单击 “运行全程”按钮运行仿真,8位加法器的仿真结果如图所示为了从时序仿真波形中观察到电路的延迟,在波形窗口单击“添加光标”按钮,在波形窗口添加时间光标,则两根光标的时间差值表示输入信号变化到输出响应之间的传输延迟时间 2.2.4 编程下载设计文件编程下载需要可编程逻辑器件的开发板或试验开发系统支持目前,开发板或试验开发系统的种类很多,实验开发系统不同,编程选择操作也不同为了方便具有不同开发板或试验开发系统的读者学习,下面以DE2开发板为例介绍编程下载设计文件的操作过程1.选择外部设备DE2开发板有18只电平开关SW0~SW17,可以选择电平开关SW7~SW0作为8位加法器的8位加数A[7..0]的输入,选择SW15~SW8作为8位加数B[7..0]的输入DE2开发板有18只红色发光二极管LEDR17~LEDR0,可以选择LEDR7~LEDR0作为8位加法的8位和输出SUM[7..0],选择LEDR8作为向高位进位COUT输出2 .引脚锁定根据外部设备的选择,,确定8位加法器的输入输出端口与目标芯片的连接关系见表所示执行Quartus II的“Assignments”→“Pin”命令,在弹出的引脚策划对话框中,根据表中的内容完成8位加法器设计电路的引脚锁定例如,由于用电平开关SW0作为A加数的A[0]输入端,而SW0是与目标芯片的PIN_25引脚连接的,因此将A[0]锁定在PIN_25引脚,以此类推3 .编程下载 在Quartus II软件界面上选择“Tools”的编程器“Programmer”命令或者用鼠标左键直接点击“Programmer”命令按钮,弹出设置编程方式窗口下载设计文件之前需要设定编程方式单击“Hardware Setup…” 按钮,弹出“Hardware Setup”硬件设置对话框如果USB下载硬件驱动程序已安装,而且计算机通过电缆与开发板连接,则在对话框的“Available hardware items”(可用硬件项目)框内出现硬件驱动程序的名称“USB-Blaster[USB-0]”,双击“USB-Blaster[USB-0]”名称,则在“Currently selected hardware”(当前选中的硬件)栏内出现“USB-Blaster[USB-0]”,单击“Close”按钮关闭硬件设置对话框后,在 “Hardware Setup…”按钮右边出现“USB-Blaster[USB-0]”,完成硬件设置“Mode”栏保持原有的“JTAG”模式完成上述操作后,在Quartus II主窗口执行“Processing”→“Stare”命令,或者单击设置编程方式窗口的“Start”按钮,实现设计电路到目标芯片的编程下载4 .硬件验证完成8位加法器的编程下载后,在DE2开发板上通过扳动SW15~SW0电平开关,组成加数A和加数B的不同组合,在红色发光二极管LEDR7~LEDR0和LEDR8上观察A数与B数相加的和数SUM与向高位的进位COUT的结果,验证8位加法器的设计
0 评论