《EDA技术及应用》课件1第4章.ppt

上传人(卖家):kld 文档编号:8234147 上传时间:2025-01-18 格式:PPT 页数:357 大小:62.33MB
下载 相关 举报
《EDA技术及应用》课件1第4章.ppt_第1页
第1页 / 共357页
《EDA技术及应用》课件1第4章.ppt_第2页
第2页 / 共357页
《EDA技术及应用》课件1第4章.ppt_第3页
第3页 / 共357页
《EDA技术及应用》课件1第4章.ppt_第4页
第4页 / 共357页
《EDA技术及应用》课件1第4章.ppt_第5页
第5页 / 共357页
点击查看更多>>
资源描述

1、第4章 常用EDA工具软件操作指南4.1 常用常用EDA工具软件安装指南工具软件安装指南 4.2 常用常用EDA工具软件操作用例工具软件操作用例 4.3 Altera Quartus操作指南操作指南 4.4 Xilinx ISE Design Suite操作指南操作指南 4.5 Lattice ispLEVEL操作指南操作指南4.6 Synplicity Synplify PRO操作指南操作指南 4.7 Mentor Graphics ModelSim操作指南操作指南 4.1 常用常用EDA工具软件安装指南工具软件安装指南 1硬件配置的选择硬件配置的选择EDA软件随着功能越来越多,性能越来越好

2、,相应地对计算机硬件配置的要求也越来越高,包括硬盘容量、内存容量、显示器、通信接口、操作系统等。如果安装软件的计算机硬件配置低于软件安装与运行的最低要求,就会使系统无法完成安装或无法正常运行。因此在安装计算机软件前,先要阅读有关说明,应满足系统安装与运行的最低配置要求。虽然现在计算机有包括USB接口在内的很多通信接口方式,但是很多EDA实验开发系统仍然需要计算机的并行打印机接口进行编程下载。因此为了自己使用方便,购买计算机时选择含并行打印机接口的主板是必需的。2按说明进行安装按说明进行安装有关EDA软件的安装方法一般放在readme文件中。根据说明运行安装程序,并依照提示进行安装过程中的各种选

3、择,最后完成软件程序的安装。3授权文件的准备授权文件的准备EDA软件的授权,除了使用传统的软件序列号进行授权外,更多的是采用授权文件的形式进行合法使用,因此购买EDA软件时请索取授权文件,或通过网络获取授权。对于EDA软件的网络版或浮动授权,必须根据需要修改授权文件中的有关参数。例如安装Quartus 网络版时,需要先进行网络版授权文件的修改,修改方法就是将license.dat以文本方式打开,再把文件中的【HOSTID=xxxxxxxxxxxx】主机网卡物理地址使用替换的方式替换为自己网卡的物理地址(如00E04C1EA996),替换完毕将license.dat重新存盘。网卡物理地址的查找方

4、法:【程序】【附件】【C:命令提示符】【X:IPconfig/all】。图4.1是网卡物理地址获取示意图。(a)进入DOS操作状态(b)网卡物理地址获取操作及结果图4.1 网卡物理地址获取示意图4软件授权的设置软件授权的设置软件授权的设置就是根据系统的要求选择授权方式及设定授权文件。授权方式一般有评估授权、固定授权和浮动授权三种。软件安装好后,运行软件,根据提示进行授权设置,或选择授权的子菜单项进行授权设置。图4.2是Quartus安装时选择授权类型的示意图;图4.3是Quartus安装时设置授权文件的示意图。图4.2 Quartus安装时选择授权类型示意图 图4.3 Quartus安装时设置

5、授权文件示意图 5环境变量的设置环境变量的设置有的EDA软件安装好后必须设置环境变量才能正常使用。同时安装有多个EDA软件,必须修改环境变量才能正常使用。因此安装好EDA软件后,需要设置或修改环境变量。环境变量的设置/修改方法是:首先选中【我的电脑】,用鼠标右点后选中【属性】,在【属性】设置框中选择【高级】属性;接着在弹出的高级属性设置框中点击【环境变量】设置项,在弹出的【环境变量】设置框中选择新建环境变量或编辑【环境变量】;最后输入变量名、变量值。若系统需设置多个授权文件,则编辑系统变量值时应用“;”分隔各个授权文件。图4.4是设置环境变量的操作示意图。6驱动程序的安装驱动程序的安装有的ED

6、A软件,在安装时就把有关硬件的驱动程序一起安装了,但是有的EDA软件安装好后还要单独进行有关硬件驱动程序的安装。驱动程序安装好后,还要运行EDA软件进行有关硬件的设置,之后硬件才能真正使用。图4.4 设置环境变量操作示意图 4.2 常用常用EDA工具软件操作用例工具软件操作用例4.2.1 4位十进制计数器电路位十进制计数器电路【例4.1】用VHDL设计一个计数范围为09999的4位十进制计数器电路CNT9999。为了简化设计并便于显示,该计数器分为两个层次,底层电路包括四个十进制计数器模块CNT10,再由这四个模块按照图4.5所示的原理图构成顶层电路CNT9999。其中,底层和顶层电路均采用V

7、HDL文本输入。图4.5 CNT9999电路原理图 有关VHDL程序如下:(1)CNT10的VHDL源程序。-CNT10.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT10 IS PORT(CLK:IN STD_LOGIC;CLR:IN STD_LOGIC;ENA:IN STD_LOGIC;CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);CO:OUT STD_LOGIC);END ENTITY CNT10;ARCHITECTURE ART OF

8、CNT10 IS SIGNAL CQI:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN PROCESS(CLK,CLR,ENA)IS BEGIN IF CLR=1 THEN CQI=0000;ELSIF CLKEVENT AND CLK=1 THEN IF ENA=1 THEN IF CQI=1001 THEN CQI=0000;ELSE CQI=CQI+1;END IF;END IF;END IF;END PROCESS;PROCESS(CLK,CQI)IS BEGIN IF CLKEVENT AND CLK=1 THEN IF CQI1001 THEN CO=0;EL

9、SE CO=1;END IF;END IF;END PROCESS;CQ=CQI;END ARCHITECTURE ART;(2)CNT9999的VHDL源程序。-CNT9999.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CNT9999 IS PORT(CLR:IN STD_LOGIC;CLK:IN STD_LOGIC;ENA:IN STD_LOGIC;DOUT:OUT STD_LOGIC_VECTOR(15 DOWNTO 0);END ENTITY CNT9999;ARCHITECTURE ART OF CNT9999 IS COM

10、PONENT CNT10 IS PORT(CLK,CLR,ENA:IN STD_LOGIC;CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);CO:OUT STD_LOGIC);END COMPONENT CNT10;SIGNAL S0,S1,S2,S3:STD_LOGIC;BEGIN U0:CNT10 PORT MAP(CLK,CLR,ENA,DOUT(3 DOWNTO 0),S0);U1:CNT10 PORT MAP(S0,CLR,ENA,DOUT(7 DOWNTO 4),S1);U2:CNT10 PORT MAP(S1,CLR,ENA,DOUT(11 DOWNTO

11、8),S2);U3:CNT10 PORT MAP(S2,CLR,ENA,DOUT(15 DOWNTO 12),S3);END ARCHITECTURE ART;4.2.2 计数动态扫描显示电路计数动态扫描显示电路【例4.2】用VHDL设计一个计数范围为09999的计数器,并将计数结果使用动态扫描的方式进行显示。为了简化设计并便于显示,该计数动态扫描显示电路分为两个层次,底层电路包括四个十进制计数器模块CNT10、动态显示控制信号产生模块CTRLS、数据动态显示控制模块DISPLAY等六个模块,再由这六个模块按照图4.6所示的原理图构成顶层电路DTCNT9999。图4.6 09999计数动态显示

12、电路原理图 其中,底层的六个模块用VHDL文本输入,顶层的电路系统则采用原理图输入。DTCNT9999中的CLK1是计数时钟信号;CLK2是动态扫描控制时钟信号,要求在24Hz以上;CLR为清零信号;ENA为计数时钟信号;COM为数码管公共端控制信号;SEG为数码管的显示驱动端,分别接ag。十进制计数器模块CNT10的VHDL程序见例题4.1,其余两个模块的VHDL程序如下:(1)CTRLS的VHDL源程序。-CTRLS.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CTRL

13、S IS PORT(CLK:IN STD_LOGIC;SEL:OUT STD_LOGIC_VECTOR(2 DOWNTO 0);END ENTITY CTRLS;ARCHITECTURE ART OF CTRLS IS SIGNAL CNT:STD_LOGIC_VECTOR(2 DOWNTO 0);BEGIN PROCESS(CLK)IS BEGIN IF CLKEVENT AND CLK=1 THEN IF CNT=111 THEN CNT=000;ELSE CNT=CNT+1;END IF;END IF;END PROCESS;SEL COM COM COM=11111111;END CA

14、SE;END PROCESS P1;-LEDW DATA DATA DATA DATA DATA SEG SEG SEG SEG SEG SEG SEG SEG SEG SEG SEGCLK,CLR=CLR,ENA=ENA,CQ=CQ,CO=CO);PROCESS BEGIN CLK=0;LOOP CLK=1,0 AFTER 5 NS;WAIT FOR 10NS;END LOOP;END PROCESS;CLR=1,0 AFTER 20 NS,1 AFTER 1000 NS;ENA CLK,CLR=CLR,ENA=ENA,DOUT=DOUT);PROCESS BEGIN CLK=0;LOOP

15、CLK=1,0 AFTER 5 NS;WAIT FOR 10NS;END LOOP;END PROCESS;CLR=1,0 AFTER 20 NS,1 AFTER 1600 NS;ENA=0,1 AFTER 40 NS,0 AFTER 1600 NS;END ARCHITECTURE ART;4.3 Altera Quartus操作指南操作指南 4.3.1 Quartus的初步认识的初步认识1Quartus的主界面介绍的主界面介绍Quartus 8.0的主菜单包括:【File】菜单,主要功能是新建、打开和保存一个工程或资源文件;【Edit】菜单,主要包含了一些与文本编辑相关的功能选项;【Vie

16、w】菜单,主要功能是隐藏或显示工程管理器、管脚查找器等操作视图;【Project】菜单,主要功能是进行工程的一些操作;【Assignment】菜单,主要功能是对工程进行相关设置操作;【Processing】菜单,包含了对工程的一些操作命令或子菜单项;【Tools】菜单,包含了进行设计的一些操作工具;【Window】菜单,主要功能是排列规划窗口,使读者容易阅读和管理。图4.8是Quartus 8.0的主界面及工程信息分布图。图4.8 Quartus 8.0的主界面及工程信息分布图 2文件及工程建立文件及工程建立先执行【File】【New】命令,新建源程序,新建文件类型的选择界面如图4.9所示。再

17、执行【File】【New Project Wizard】命令,如图4.10所示,打开新建工程向导,根据提示进行有关设置或选择,创建一个新的工程,并要求工程名与顶层文件名一致。对于已经建立的文件或工程,需要使用时打开即可。图4.9 新建文件类型的选择界面 图4.10 新建工程向导操作 3工程实现的设置工程实现的设置工程实现设置主要包括指定目标器件、编译过程设置、EDA工具选择、Analysis&Synthesis设置、Fitter(适配)设置、仿真设置等。工程设置既可在建立工程的过程中根据提示进行设置,也可在建立工程的过程中跳过某些设置项,而在工程建立后对工程实现进行设置或修改。图4.11是在已

18、建立工程的基础上对工程实现设置的一个操作界面。图4.11 工程实现设置的一个操作界面 4工程编译及分析工程编译及分析工程编译及分析包括编译方式选择、启动编译器和查看编译结果。查看编译结果包括查看逻辑适配资源报告、RTL视图、时序分析结果等。图4.12是工程编译的形式的操作选择图。图4.12 工程编译的形式的操作选择图 5工程仿真及分析工程仿真及分析工程仿真及分析步骤为:建立仿真波形文件或仿真测试文本程序;设置仿真器;运行有关仿真器,以进行仿真;进行仿真结果分析(包括查看仿真波形报告,分析仿真波形)。图4.13是仿真操作选择界面。图4.13 仿真操作选择界面 6芯片的管脚锁定芯片的管脚锁定芯片的

19、管脚锁定就是将设计实体的管脚与目标芯片特定的可输入输出管脚建立一一映射的过程。它包括两个方面:一是需设定未用的管脚;二是根据需要进行管脚的锁定。图4.14是管脚锁定的操作界面。图4.14 管脚锁定操作界面 7编程下载及验证编程下载及验证编程下载及验证步骤包括:编程下载硬件准备;打开编程器窗口;建立被动串行配置链;器件编程下载。图4.15是编程下载的操作界面。对于只含一个模块的系统,其设计与测试过程可按上述步骤进行,但对含有多个模块多个层次的设计与测试,通常按照自底向上的方法进行设计与测试,因此往往是25步交错在一起先进行低层次各模块的设计,待低层次各模块的设计与测试完毕后,再按照27步进行顶层

20、模块的设计与测试。图4.15 编程下载的操作界面 4.3.2 Quartus的基本操作的基本操作【例4.4】使用Quartus设计和测试例4.1中的CNT9999电路。1文件及工程建立文件及工程建立首先为该设计(工程)建立一个目录,如F:EDA115EDA115CX4.3CNT9999,然后运行Quartus 8.0,进入Quartus 8.0集成环境。1)新建文件在Quartus 8.0集成环境屏幕上方选择“新建文件”按钮,或选择菜单【File】【New】,出现如图4.16所示的对话框,在框中选中【VHDL File】,单击【OK】按钮,即选中了文本编辑方式。在出现的文本编辑窗口中输入例4.

21、1所示的CNT10.VHD源程序。图4.16 Quartus 8.0新建文件类型的选择框 输入完毕后,选择菜单【Flie】【Save As】,即出现文件保存对话框。首先选择存放本文件的目录F:EDA115EDA115CX4.3CNT9999,然后在【文件名】框中输入文件名CNT10,然后单击【保存】按钮,即把输入的文件保存在指定的目录中。图4.17是新建的文件CNT10.VHD。根据同样的方法输入并保存CNT9999.VHD。图4.17 新建的文件CNT10.VHD 2)新建工程 Quartus 将每项设计均看成是一个工程。由于本设计分为两个层次,根据自底向上的设计与调试原则,因此需要先将底层

22、的模块设计分别建立各自的工程并将其调试好,最后才进行顶层的电路系统的设计。下面以CNT9999模块工程的建立为例来说明工程建立方法。执行【File】【New Project Wizard】命令,打开新建工程向导(见图4.18),将出现如图4.19所示的对话框。图4.18 新建工程操作子菜单 图4.19中最上面一栏指示工作目录,可单击最上面一栏右侧的按钮,找到相应目录下的文件(一般为顶层设计文件)。这里选择CNT9999.VHD,将其打开,图中的第二栏为项目名称,可以为任何名字,推荐为顶层设计的文件名。第三栏为顶层设计的实体名。设置完后,可直接单击【Finish】按钮结束工程建立。若单击【Nex

23、t】按钮,则接着会出现添加项目文件、器件选择、EDA工具选择等操作选择提示框,可根据需要进行有关设置。图4.19 新建工程工程参数设置 3)将文件添加到对应的工程执行图4.20所示的添加文件到工程操作子菜单,弹出如图4.21所示的添加文件操作界面,最上面的一栏【File Name】用于加入设计文件,可单击按钮,找到相应的目录下的文件并加入。单击【Add All】按钮,将设定目录下的所有VHDL文件加入到此工程中。设置完成后,单击【OK】按钮即可。图4.20 添加文件到工程操作子菜单 图4.21 添加文件操作界面 2工程实现的设置工程实现的设置在对工程进行编译前,需要进行有关工程实现的设置。若工

24、程编译后对工程有关设置进行了修改,需重新进行编译,有关修改设计才能真正有效。1)目标器件设置(1)选择目标芯片。单击【Assignments】菜单下的【Device】,打开如图4.22所示的对话框,先选择目标芯片系列,再选择目标芯片型号规格。首先在【Family】栏中选择Cyclone系列;然后在【Target device】选项框中选择【Specific device selected in Available deviceslist】,即选择一个确定的目标芯片。再在【Available devices】列表中选择具体芯片EP2C8Q208C8N。图4.22 目标芯片选择(2)选择配置器件的

25、工作方式。单击图4.22中的【Device&Pin Options】按钮,进入如图4.23所示的选择窗口。首先选择【General】项,在【Options】栏中选中【Auto-restart configuration after error】,使对FPGA配置失败后能自动重新配置,并加入JTAG用户编码。当鼠标选中相应的项目时,下面的【Description】栏将有相应的说明。图4.23 选择配置器件的工作方式(3)选择配置器件的编程方式。PC机对FPGA的在系统编程通常采用JTAG下载方式。如果应用系统需要脱离PC机工作,则需要将配置数据存放在Flash中,通过主动串行模式(AS Mode

26、)和被动串行模式(PS Mode)进行配置。按照图4.24所示选择合适的配置器件的编程方式。图4.24 选择配置器件的编程方式(4)选择输出设置。单击图4.24中的【Programming Files】栏,打开【Programming Files】页,选中【Hexadecimal(Intel-Format)output Files】,此时在生成下载文件的同时,产生二进制配置文件*.hexout。此文件用于单片机与EPROM构成的FPGA配置电路系统。(5)选择目标芯片的闲置引脚的状态。点击图4.24中的【Unused Pins】栏,出现如图4.25所示的窗口。对设计中未用到的器件引脚,有三种处

27、理方式:输入引脚(呈高组态)、输出引脚(呈低电平)或输出引脚(输出不定状态)。为了避免未用到的引脚对应用系统产生影响,甚至损坏芯片,通常情况下选择第一项。图4.25 目标芯片未用引脚的设置 2)编译过程设置根据图4.26所示的编译过程设置选项进行合适的选择。图4.26 编译过程设置 3)EDA工具选择根据图4.27所示的EDA工具设置选项进行合适的选择。图4.27 EDA工具选择图 4)Analysis&Synthesis设置根据图4.28所示的Analysis&Synthesis设置选项进行合适的选择。图4.28 Analysis&Synthesis设置 5)Fitter(适配)设置根据图4

28、.29所示的Fitter设置选项进行合适的选择。图4.29 Fitter(适配)设置 6)仿真设置根据图4.30所示的仿真设置选项进行合适的选择。图4.30 仿真设置 3工程编译及分析工程编译及分析Quartus 的编译器由一系列处理模块构成,这些模块完成对设计项目的检错、逻辑综合、结构综合、输出结果的编译配置、时序分析等功能。在这个过程中将设计项目适配到FPGA/CPLD目标器件中,同时产生各种输出文件编译报告,包括器件使用统计、编译设置、RTL级电路显示、期间资源利用率、状态机的实现、方程式、延时分析结构、CPU使用资源等。编译器首先从工程设计文件间的层次结构描述中提取信息,包括每个低层次

29、文件中的错误信息,供设计者排除。然后将这些层次构建产生一个结构化的、以网表文件表达的电路原理图文件,并把各层次中所有的文件结合成一个数据包,以便更有效地处理。在编译前,设计者可以通过各种不同的设置,指导编译器使用各种不同的综合和适配技术,以便提高设计项目的工作速度,优化器件的资源利用率。在编译过程中及编译完成后,可以从编译报告窗口中获得所有相关的详细编译结果,以利于设计者及时调整设计方案。1)编译操作的种类对工程的编译,可以选择三种操作形式即全编译形式、分步编译形式和流程编译形式,如图4.31所示。(1)全编译形式。全程编译是指Quartus 对设计输入的多项处理操作,如检错、数据网表文件提取

30、、逻辑综合、适配、装配文件(仿真文件与编程配置文件)生成以及基于目标器件的工程时序分析等。编译时下面的【Processing】窗口会显示编译过程中的相关信息,如果发现警告和错误,会以深色标记条显示。警告不影响编译通过,但是错误编译不能通过,必须进行修改。双击【Processing】栏中的错误显示条文,会弹出对应的VHDL文件,光标指示到错误处。在对错误进行分析修改后,再次进行编译,直至排除所有错误。图4.31 三种编译形式的操作选择(2)分步编译形式。分步编译形式是指按照逻辑分析、逻辑综合、逻辑适配等步骤分步研究有关设计。(3)流程编译形式。流程编译形式是将编译过程的各步用图形工具的形式表现出

31、来,它实际上还是一种全编译的形式,只不过表现形式不同而已。2)编译结果的查看(1)编译结果报告。全编译后,先后执行主菜单【Processing】下的【Compilation report】和【Classic Timing Analyzer Tool】子菜单,会分别出现编译结果报告窗口和典型时序分析窗口,可选择查看有关编译结果或执行【Start】进行典型时序分析。再执行主菜单【Window】下的级联、水平、垂直等多窗口排列方式子菜单项,就会出现如图4.32所示的编译结果报告和时序分析报告。图4.32 编译结果报告和时序分析报告(2)电路网表结果。经过逻辑综合适配后,可以使用网表查看器查看有关电路

32、网表信息。图4.33是使用网表查看器查看有关网表信息的操作子菜单。图4.34是有关网表查看结果。图4.33 查看有关网表信息的操作子菜单 图4.34 RTL视图和工艺映射视图 4工程仿真及分析工程仿真及分析当工程编译通过之后,必须对其功能和时序进行仿真测试,以了解设计结果是否满足原设计要求。1)打开波形编辑器执行【File】【New】命令,在弹出的窗口中选择【Vector Waveform File】项,打开空白的波形编辑器,如图4.35所示。图4.35 新建仿真波形文件的操作 2)设置仿真时间区域和最小时间周期将仿真时间设置在一个比较合理的时间区域。选择【Edit】菜单中的【End Time

33、】项,在弹出窗口的【Time】栏处输入【100】,单位选择【ms】,将多个仿真区域的时间设为100ms,单击【OK】按钮,结束设置。选择【Edit】菜单中的【Grid Size】项,在弹出窗口的【Time Period】栏处输入【20】,单位选择【ns】。3)在波形编辑器中引入信号节点在新建的波形窗口空白处,用鼠标左键双击,弹出插入节点或总线的操作窗口,再点击【Node Finder】按钮,弹出【Node Finder】窗口。在此窗口的【Filter】框中选择【Pins:all】,然后单击【List】按钮,于是在下面的【Nodes Found】窗口中出现了工程CNT9999中的所有端口引脚名。

34、如果此时没有出现端口引脚名,则可以重新编译一下。选择需要仿真观察的信号波形,并移到窗口右边。在这里,把所有的端口引脚名CLK、CLR、ENA、DOUT15.0全部插入,如图4.36所示。或者执行【View】【Utility Windows】【Node Finder】命令,弹出【Node Finder】对话框。在此窗口中的【Filter】框中选择【Pins:all】,然后单击【List】按钮,于是在下面的【Nodes Found】窗口中会出现工程CNT9999中的所有端口引脚名。如果此时没有出现端口引脚名,则可以重新编译一下。用鼠标将需要仿真观察的信号拖到波形编辑器窗口。在这里把所有的端口引脚名

35、CLK、CLR、ENA、DOUT15.0全部插入,如图4.37所示。图4.36 引入信号节点操作方法之一示意图 图4.37 引入信号节点操作方法之二示意图 4)编辑输入波形波形观察窗口中的左排按钮是用于设置输入信号的,使用时只要先用鼠标在输入波形上拖一下需要改变的黑色区域,或选中整个信号,然后点击左排相应按钮,根据弹出的设置选择框进行有关设置即可。选中按钮,按鼠标左键或右键可以放大或缩小波形显示,以便在仿真时能够浏览波形全貌。波形设置过程如图4.38所示。图4.38 编辑输入波形及设置数据格式 5)设定数据格式单击信号【CLK】、【CLR】、【ENA】、【DOUT15.0】旁边的【+】号,可以

36、打开该信号的各个分量,查看信号的每一位。如果双击【+】号左边的信号标记,可以打开信号格式设置的对话框,如图4.38所示。通过【Radix】窗口可以设置信号的格式,此处将信号【CLK】、【CLR】、【ENA】、【DOUT15.0】全部设定为十六进制。6)波形文件存盘选择【File】菜单下的【Save】命令,将默认名为CNT9999.vwf的波形文件存入当前工程所在的文件夹中。本操作根据要求将各输入信号【CLK】、【CLR】、【ENA】的波形设置成如图4.39所示的波形。图4.39 设置好并存盘的波形图 7)仿真器参数设置仿真器参数设置选择【Assignment】菜单下的【Settings】项,在

37、【Settings】窗口中左侧【Category】栏中选择【Simulator Settings】项,打开如图4.40所示的窗口。在【Simulation mode】项目下选择【Timing】,即时序仿真,在【Simulation input】栏中,单击按钮,找到并选择仿真激励文件【CNT9999.vwf】。在【Simulation period】栏中选择【Run simulation until all vector stimuli are used】,即全程仿真。根据仿真的要求还可选择功能仿真等其它仿真形式以及进行其它的设置。图4.40 仿真器参数设置 8)启动仿真器选中【Processi

38、ng】菜单下的【Start Simulation】,如图4.41所示,或者直接单击工具栏上的快捷方式,直到出现【Simulation was successful】对话框为止。图4.41 启动仿真器 9)观察仿真结果仿真成功后,仿真波形文件【Simulation Report】通常会自动弹出。CNT9999的时序仿真结果如图4.42所示。注意,Quartus的波形编辑文件(*.vwf)与波形仿真报告文件(Simulation Report)是分开的。如果没有弹出仿真完成后的波形文件,可以通过【Processing】菜单下的【Simulation Report】命令,打开波形报告。如果无法在窗口

39、展开时间轴上的所有波形图,可以在仿真报告窗口中单击鼠标右键,选择【Zoom】项下的【Fit in Window】选项,并通过按钮,调节波形的比例。通过观察仿真结果,发现达到了预定的要求。可按照同样的方法进行其它模块的仿真。图4.42 CNT9999的时序仿真结果 5芯片管脚的锁定芯片管脚的锁定工程编译和有关仿真都通过后,就可以将配置数据下载到应用系统进行验证。下载之前首先要对系统顶层模块进行引脚锁定,保证锁定的引脚与实际的应用系统相吻合。1)目标芯片的确认及闲置引脚的设定管脚锁定前,先进行芯片的确定或修改,如图4.43所示。单击图4.43中的【Device&Pin Options】按钮,在弹出

40、的【UnusedPins】设置框中进行闲置引脚的设定,详见图4.25所示。对设计中未用到的器件引脚,有三种处理方式:输入引脚(呈高组态)、输出引脚(呈低电平)或输出引脚(输出不定状态)。通常情况下选择第一项,避免未用到的引脚对应用系统产生影响。图4.43 管脚锁定前目标芯片的确认或修改 2)引脚锁定本设计系统的顶层模块CNT9999拟选用EP2C8Q208C8芯片,根据需使用的EDA实验开发系统(板)的有关输入和输出的资源情况进行引脚锁定(一般应事先列出一个管脚锁定表,表格格式可参考第5章关于EDA实验开发系统的使用实例中的引脚锁定表格式样),并将闲置引脚设定为三态门状态。引脚的锁定方法有三种

41、:一是使用引脚锁定窗口进行锁定;二是使用计事本或其他文本编辑工具直接编辑.qsf文件进行引脚锁定;三是通过输入TCL脚本语言文件进行。下面介绍前两种方法。(1)使用引脚锁定窗口进行锁定。打开【Assignments】菜单下的【Pins】命令,打开引脚锁定窗口,如图4.44所示。先用鼠标指到要锁定的端口信号名与【Location】栏交汇的地方,这时此处呈蓝色,然后双击对应的交汇处,在出现的下拉栏中选择对应端口信号名的器件引脚号(例如对应ENA,选择PIN_99),引脚锁定后将下拉菜单复原,则系统自动保存该锁定。在如图4.44所示的窗口中,还能对引脚作进一步的设定,如在Reserved栏,可对某些

42、空闲的I/O引脚的电气特性进行设置。图4.44 引脚锁定窗口的打开及管脚的锁定(2)直接编辑.qsf文件进行引脚锁定。引脚的锁定信息保存在工程文件夹中与工程同名的*.qsf文件中,可以通过编辑*.qsf文件来改变或设定引脚。本例子中,关于引脚的锁定信息就存在F:EDA115EDA115CX4.3 CNT9999(工程CNT9999目录)下的CNT9999.qsf文件中。可以用计事本或其他文本编辑工具打开CNT9999.qsf,输入信息并保存,如图4.45所示。图4.45 编辑.qsf文件进行引脚锁定 6编程下载及验证编程下载及验证1)编程下载硬件准备先阅读有关EDA实验开发系统(板)手册,了解

43、EDA实验开发系统(板)到计算机的连接方式。在断电的情况下将有关硬件设备进行正确的物理连接,经检查无误后打开EDA实验开发系统(板)的电源开关。2)FPGA的编程下载连接好下载电缆,打开电源。在菜单【Tool】中选择【Programmer】,或直接单击工具栏上的快捷键,可以打开如图4.46所示的编程下载窗口。若是初次安装的Quartus,在下载编程前需要选择下载接口方式。在图4.46所示窗口中单击【Hardware Setup】,在打开的设置窗口根据实际情况进行设置。在这里,选择【ByteBlaster】,双击鼠标后,关闭该窗口。在图4.46所示的【Mode】栏中有四种编程模式可以选择:JTA

44、G、Passive Serial、Active Serial和In-Socket。为了直接对FPGA进行配置,在编程窗的编程模式【Mode】中选择【JTAG】,并选中下载文件右侧的第一个小方框Program/Configure。核对下载路径与文件名,如果此文件没有出错或者有错,单击左侧的【Add File】按钮,找到要下载的文件CNT9999.sof。单击【Start】按钮,即进入对目标器件FPGA的配置下载操作。当【Progress】显示为100%时,编译成功,可以观察实验面板,进行硬件测试验证。图4.46 编程下载设置及过程 3)对配置器件编程为了使应用系统能在脱离计算机的情况下工作,就必

45、须将配置数据存放在非易失的器件中,通常我们将配置数据存放在专用的配置器件中,如EPCS1、EPCS4等。EPCS1和EPCS4等是Cyclone系列器件的专用配置器件,Flash存储结构,重复编程可达10万次。先选择编程模式和编程目标文件。在图4.46所示窗口的【Mode】栏中,选择【Active Serial Programming】编程模式。添加编程文件CNT9999.pof,并选中Program/Configure,再将下载电缆连至AS模式端口并加电。接着单击【Start】按钮,当【Progress】显示为100%时,编译成功。此后每次实验装置加电后,配置数据将自动从EPCS1加载,之后

46、FPGA开始工作,而不需要重新下载配置数据。最后保存编程信息。编程完毕后,如果希望将此次设置的所有结果保存起来,以便能够很快调出以进行编程,可以选择保存。所有的信息都存在Chain Description File(.cdf)文件CNT9999.cdf中。以后编程只需打开此文件即可。4.3.3 Quartus的综合操作的综合操作【例4.5】使用Quartus设计和测试例4.2中的计数器,并将计数结果使用动态扫描的方式进行显示。要求底层的模块采用VHDL文本输入,顶层的电路系统则采用原理图输入。1文件及工程建立文件及工程建立1)新建文件(1)三个底层模块图形符号的建立。首先建立存放本工程文件的文

47、件夹F:EDA115EDA115CX4.3DTCNT9999。按照4.3.2节阐述的方法分别输入CNT10、CTRLS和DISPLAY三个模块的VHDL程序,并保存在指定的文件夹中。为了生成模块图形符号供后述的顶层原理图设计文件使用,应将这三个模块建立对应的工程,并进行工程设置、工程编译,然后按照图4.47的操作选择创建元件图形符号。(2)顶层原理图模块的建立。DTCNT999.GDF是4位十进制计数动态显示电路设计中顶层的图形设计文件,需调用CNT10、CTRL、DISPLAY三个功能元件,用原理图的方式组装成一个完整的设计实体。执行【File】【New】命令,在弹出的对话框中选择【Bloc

48、k Diagram/Schematic File】,单击【OK】按钮,即出现原理图编辑器窗口。再根据例4.2中的图4.6或后续的图4.49进行原理图的设计,并将该原理图文件DTCNT9999.GDF存放在指定位置。图4.47 创建元件图形符号操作 图4.48 原理图绘制的主要操作示意图 图4.49 计数动态显示电路顶层设计原理图 原理图设计的主要操作有:添加元件、移动元件、添加连线、添加网络名、添加输入/输出端口,其操作方法如下:添加元件:先点击添加元件快捷工具,在弹出的操作对话框中选择欲添加的元件,或直接在【Name】框中输入元件符号名(已设计的元件符号名与原VHDL文件名相同),单击【OK

49、】按钮之后,再单击【OK】按钮关闭操作对话框,将出现的元件移动到欲放置的位置,点击鼠标左键即可。移动元件:选中需移动的元件,按住鼠标左键把它拖到指定的位置后松手即可。添加连线:将鼠标箭头移到元件的输入/输出引脚上,鼠标箭头形状会变成【+】字形,然后可以按着鼠标左键并拖动鼠标,绘出一条线,松开鼠标按键完成一次操作。将鼠标箭头放在连线的一端,鼠标光标也会变成“+”字形,此时可以接着画这条线。细线表示单根线,粗线表示总线。改变连线性质的方法是:先点击该线,使其变红,然后选顶行的选项【Options】【Line Style】,即可在弹出的窗口中点选所需的线段。添加网络名:先用鼠标左键点击欲添加网络名的

50、连线,再在弹出的操作子菜单中选择属性,最后在弹出的属性设置操作对话框中输入节点网络名,并关闭该对话框。添加输入/输出端口:先点击添加元件快捷工具,在弹出的操作对话框中,直接在【Name】文本框中输入【Input】或【Output】,或是在【Primitives】库中找出【Input】或【Output】元件,再单击【OK】按钮关闭操作对话框,将出现的端口符号移动到欲放置的位置,点击鼠标左键即可。2)新建工程并添加源程序执行【File】【New Project Wizard】命令,打开新建工程向导,建立名字为DTCNT9999的工程,并根据需要进行有关设置,将工程中的CNT10.VHD、CTRS.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《EDA技术及应用》课件1第4章.ppt)为本站会员(kld)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|