EDA技术与应用(陈新华)第6章_第1页
EDA技术与应用(陈新华)第6章_第2页
EDA技术与应用(陈新华)第6章_第3页
EDA技术与应用(陈新华)第6章_第4页
EDA技术与应用(陈新华)第6章_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第6章 数字集成软件 Quartus II 及其应用6.1 Quartus II 简介6.2 Quartus II 的设计流程6.3 Quartus II 的设计应用6.4 时序分析 6.5 基于PowerPlay Power Analyzer Tool 的功耗估算 6.6 调用带参数的库文件 6.7 SignalTap II嵌入逻辑分析仪 本章内容6.1 Quartus II 简介 Quartus II 是Altera公司推出的CPLD/FPGA结构化ASIC开发设计软件。其具有完全集成且与电路结构无关的开发包环境,功能强大的逻辑综合工具,完备的电路功能仿真与时序逻辑仿真工具,能进行时序分析

2、与关键路径延时分析等多种工作。还可利用第三方仿真工具Modelsim进行仿真,综合工具Synplify进行综合,来完成数字电路系统设计;其内部还有嵌入式的SignalTap II逻辑分析工具,可用来进行系统的逻辑测试和分析等。Quartus II软件可提供以下具体功能:NativeLink 集成EDA仿真工具;生成输出网表文件;在EDA仿真工具中的设计仿真;功能与时序仿真库;PowerGauge 功耗估算;生成测试台模板和内存初始化文件。可以对设计进行时序分析。QuartusII一般的设计流程为:设计输入设计综合布局布线验证、仿真下载 6.2 Quartus II 的设计流程Quartus I

3、I 的设计流程Quartus II 的设计步骤:创建项目设计输入设计综合适配设计编译仿真与验证设计下载6.3 Quartus II 的设计应用创建项目中主要完成以下工作:生成一个新的项目文件将设计文件加入新项目指定项目所针对的目标器件指定第三方EDA软件注:(1)设计文件如果在生成项目文件时没有,需要在后续工作中完成。(2)可以根据需要适当的指定第三方EDA软件,没有要求可使用Quartus II自带工具。一、创建项目新建一个项目:QuartusII只对项目进行编译、综合、下载编程。选择File/New Project Wizard命令在对话框中操作 二、设计输入 由于Quartus II带有

4、图表和原理图编辑器,设计输入分为:原理图设计输入文本输入层次化设计输入设计输入的多种格式 图表模块编辑是顶层设计的主要方法,原理图编辑是传统的设计输入方法,用户可以利用Quartus II提供的LPMs、MegaFunction以及用户自己的库函数来设计,提供“智能”的模块链接和映射。 1、原理图设计输入Quartus II 的原理图输入步骤 实例:一位半加器实现详见教材原理图输入举例 原理图输入法实现一位半加法器的步骤:在Quartus II软件下,执行“File NewBLock Diagram/Schematic File命令 从库中调入元件及引脚符号 在原理图编辑器的空白处选择一个任意

5、位置,双击鼠标左键,会弹出一个库元器件符号及接口元件符号选择窗口,选择库名和库元件名,调入该元件符号放在原理图编辑器中,在原理图编辑器中按照自己预先设计的电路原理图,将已经放在里面的元件及引脚符号,用工具栏中的的直角图表,连完线之后得到如下图 将原理图设置成可调用的元件 在打开半加器原理图的情况下,选择菜点FileCreate/UpdateCerate Symbol File For Current File项,即可将当前文件half_adder.bdf变成一个元件模块符号存盘,等待在高层次的设计中调用。 2、文本输入文本输入流程一位半加法器文本输入设计 文本编辑输入法与原理图输入法设计步骤基

6、本相同:首先建立一个项目,然后在Quartus II中执行“File”菜单下的“New”命令,在弹出的对话框中选择“Verilog HDL File”或者“Verilog File”,然后单击“OK”,进入文本编辑的页面。 由于很多工程都是有很多的功能模块互联而成。而有的模块构成复杂,使用的硬件描述语言也不完全相同的情况。Quartus II的层次化设计就是解决这个问题的好方法。它的设计输入可以是:绘制的原理图、硬件描述语言描述、原理图绘制与硬件描述语言混合。层次化设计可以是:自底向上也可以自顶向下。自底向上的模块化设计流程中,用户可以将设计分割成为多个模块,单个低层模块可以单独开发,为每个模

7、块建立单独的工程,并使用为顶层设计而开发分配。低层模块完成后,将它们导入顶层设计中,顶层设计将进行最终编译和验证。3、层次化设计输入 层次化设计输入是在前面的原理图设计输入和文本输入的基础上实现的。不管是使用Quartus II提供的LPMs、MegaFunction还是用户自己的库函数及其一些设计的模块。基本上都是采用例化的思想来完成的。通过对设计本身功能及数据流方向的划分,将设计分为各个层次的模块。 实例中我们对一位全加器、四位全加器的设计实现来讲解了层次化设计输入的实现。详细过程请参考教材。四位全加器层次化设计 把前面一位半加器half_adder.bdf的元件模块符号做为底层模块调出来

8、,设计全加器顶层文件 ,并设计出一位全加器的元件模块符号 四位全加器层次化设计 把前面一位全加器full_adder.bdf的元件模块符号做为底层模块调出来,设计全加器顶层文件 将原理图设置成可调用的元件再用上述同样的方法,选择FileSave as保存上述图形。然后选择菜点FileCreate/UpdateCerate Symbol File For Current File项,把当前的四位全加器原理图变成一个元件模块符号,组成新的模块存盘生成Verilog HDL文本调用Select one design file,点击OK即可得到对应的一位全加器Verilog HDL文本。与之相对应的文

9、本编辑如图 逻辑综合是把设计的高层次描述转换成优化的门级网表的过程。也可以说是把用HDL语言或图形方式描述的电路设计转换为实际门级电路(如触发器、逻辑门等),得到一个网表文件,用于进行适配(在实际器件中进行布局和布线)的过程称为综合 。三、设计综合QuartusII 综合设计流程 Quartus II作为一个集成的EDA软件,带有集成的综合器,可以使用分析综合模块分析综合设计文件及建立工程数据库。Quartus II的分析综合调用VHDL设计文件(.vhd)或Verilog设计文件(.v)。可以使用其它EDA综合工具综合VHDL或 Verilog HDL设计文件,然后再生成可以与Quartus

10、 II软件配合使用的EDIF网表文件 (.edf) 或VQM文件(.vqm)。可以在包含Analysis & Synthesis模块的Quartus II软件中启动全编译,也可以单独启动 Analysis & Synthesis。Quartus II 软件还允许设计者在不运行Integrated Synthesis的情况下执行Analysis & Elaboration。综合编译结果报告 以四位全加器为例进行层次化设计综合,在这里我们采用全编译的方式进行编译。通过菜单Processing选择Start Compilation 选项启动全编译。得出综合编译结果的报告如图 项目综合RTL级网表电路

11、 Quartus II经过Analysis和Elabortion之后可以生成RTL级网表,通过“RTL Viewer”可以观察设计项目对应的RTL电路结构。通过菜单Tools选择 “RTL Viewer”选择,可以打开设计项目中各个层次的电路结构。 把前面综合设计的网表内容,通过设计编译实现对 可编程逻辑器件底层内部逻辑电路进行编程(布局与布线),即完成预定的ASIC设计的过程,称为适配设计编译。四、适配设计编译Quartus II只对项目进行编译前必要的设置:方法1:先借助于New Project Wizard创建一个新项目,再创建设计输入文件(前面已介绍)。方法2:先建立设计输入文件,再将

12、其设置为顶层文件,进一步确定其为项目。适配设计编译布局布线,是对有关的门电路进行设计。由于门的传输与时间有关,因此会有延迟,必须需进行检验和验证,即进行时序仿真。仿真是验证系统设计功能的重要环节。功能仿真是验证系统设计功能的正确性,时序仿真验证则必须是系统设计经过综合编译,因此称之为时序仿真。五、仿真与验证Netlist Writer仿真工具 :Quartus II 软件的 EDA Netlist Writer 模块,生成用于功能仿真(前仿真)或时序仿真(后仿真)的文本输出文件。 Quartus II可以生成VHDL输出文件(.vho)或Verilog输出文件(.vo),以及使用 EDA 仿真

13、工具进行时序仿真所需的标准延时格式输出文件 (.sdo)。Quartus II 软件在Standard Delay Format 2.1 版中生成 SDF 输出文件。EDA Netlist Writer 将仿真输出文件放在当前工程目录下的工具特定目录中。此外,Quartus II 软件通过NativeLink 功能使时序仿真与EDA 仿真工具实现集成。NativeLink功能允许Quartus II软件将信息传递至EDA仿真工具并具有从Quartus II 软件中启动EDA仿真工具的功能。 功能仿真:使用Quartus II仿真工具进行功能仿真,执行以下操作:在Quartus II 仿真工具中

14、设置工程。建立工作库。使用EDA仿真工具编译相应的功能仿真库。使用EDA仿真工具编译设计文件和测试激励文件。使用Quartus II 仿真工具NativeLink进行仿真。时序仿真:时序仿真一般在系统分析、综合、适配之后进行,如果要加强对仿真的控制,可以在 Quartus II 软件中手工生成 Verilog HDL 或VHDL 输出文件以及相应的 SDF 输出文件,然后手工启动仿真工具,进行仿真。使用 EDA 仿真工具执行 Quartus II 设计时序仿真所采用的基本流程:通过Settings对话框(Assignments 菜单)或在工程设置期间使用New Project Wizard(F

15、ile 菜单),在Quartus II 软件中进行 EDA 工具设置。在EDA软件中编译设计,生成输出网表文件。Quartus II 软件将该文件放置在特定的目录中。使用 EDA 仿真工具执行 Quartus II 设计时序仿真所采用的基本流程(续):启动EDA仿真工具。使用EDA仿真工具设置工程和工作目录。编译并映射到时序仿真目录,使用 EDA 仿真工具编译设计和测试激励文件。使用EDA仿真工具进行仿真。仿真器进行仿真设计 使用 Quartus II 仿真器,可以进行功能仿真用于测试设计的逻辑运算,也可以进行时序仿真,用于在目标器件中测试设计的逻辑运算和最差时序。Quartus II 软件可

16、以仿真整个设计,或仿真设计的任何部分。可以在工程中将任何设计实体指定为仿真焦点。在仿真设计时,仿真器仿真焦点实体及其所有附属设计实体。 仿真步骤:指定仿真器设置建立波形文件仿真举例 仿真实例中我们针对层次化设计时的四位全加器进行仿真,其过程如下:仿真激励文件的生成功能和时序仿真 仿真举例的详细内容参考教材。下载是指将生成的配置文件通过EDA软件输入到具体的可编程逻辑器件中的过程。对于CPLD来说是下载JED文件,对于FPGA来说是下载位流数据文件。在Quartus II软件中,下载是通过Programmer来完成的。 六、设计下载下载编程模式 Programmer 具有四种编程模式:被动串行模

17、式JTAG模式主动串行编程模式套接字内编程模式下载的流程物理实现确定电路的输入/输出端口和引脚的对应关系。将设计结果下载到可编程器件中,使之变成所希望的集成电路,这个过程称为编程(Programming)。引脚分配下载编程命令Tools/Programmer打开编程模块窗口,点击HardwareSetup按钮,目标器件名和编程文件名必须正确地显示在窗口中 。到编程器窗口,在窗口中操作,启动编程。 Quartus II 时序分析器是用户用来分析设计中的所有逻辑性能,并协助引导适配器满足设计中的时序要求。在软件执行编译的过程中,时序分析器自动执行时序分析,并在编译报告中给出时序分析结果,如建立时间

18、(tSU)、保持时间(tH)、时钟到输出的延时(tCO)、引脚到引脚延时(tPD)、最大时钟频率(fMAX)、延缓时间(slack times)以及设计中的其它时序特征。6.4 时序分析TimeQuest Timing Analyzer 以十进制计数器为例TimeQuest Timing Analyzer的使用方法:新建一个工程,并将已经写好的.v(counter.v)文件加入工程中。启动 Time Quest时序分析器生成时钟信号设置时钟延时设置时钟偏移设置输入延时设置输出延时生成.sdc文件实例的详细内容请参考教材。选择使用TimeQuest时序分析工具 在Quartus II 7.1中执

19、行Assignments/Settings,在出现的界面中选中Timing Analysis Setting,选择使用TimeQuest时序分析工具 。如下图时序分析设置 执行Processing/Start Compilation,对工程进行编译、分析综合、适配以及时序进行分析。可以在编译窗口的TimeQuest Timing Analyzer文件夹中查看时序分析结果如下图所示:时序分析报告 6.5 基于PowerPlay Power Analyzer Tool 的功耗估算 低功耗设计在系统设计中已经成为一个必须考虑的因素,在系统未完成设计之前如果能够进行功耗的分析估算,对于系统的设计有一个

20、很重要的指导意义。 Quartus II 软件集成的功耗分析工具 PowerPlay Power Analyzer Tool 可以估算在时序仿真期间基于仿真激励的功耗。1. 功耗估算的准备 在进行时序仿真时,通过对仿真选项的设置输出一个后缀名为.vcd的文件,用于PowerPlay Power Analyzer Tool 进行功耗估算时的输入 。 使用命令Assignments/Settings.打开项目设置窗口 (如下图),在仿真器设置中将仿真模式“Simulation mode”设为“Timing”即时序仿真。仿真输入“Simulation input”为已经建立的波形矢量文件“*.vwf

21、”。 仿真输出文件设置 选择“Simulation Output Files”(如下图)设定用于功耗分析的仿真输出文件名“*.vcd”。 2. 功耗分析估算 使用命令Processing/PowerPlay Power Analyzer Tool 打开功耗分析工具窗口(如下图) 。功耗输入文件设置 选择输入文件选项“Input File”将时序仿真时生成的*.vcd文件加入功耗分析工具中。(如下图)功耗输入文件设置 选择输入文件选项“Input File”将时序仿真时生成的*.vcd文件加入功耗分析工具中。 单击“OK”完成功耗分析工具的设置,单击功耗分析工具窗口 中的“Start”,开始功耗

22、分析,可以通过“Report”查看功耗分析报告。 6.6 调用带参数的库文件 在EDA的设计中还会经常的使用到一些带参数的库,通过调用这些带参数的库可以方便的实现自己的设计。因为这些参数库都是经过验证和一些经验实践积累得到的经典设计,所以,通过调用带参数的库文件,可以调高设计的水平和质量。在Quartus II 软件中使用带参数的库文件: 在原理图编辑器中我们以调用库元件lpm_ram_d 为例,说明在Quartus II软件中带参数库元件调用的过程和方法。其中字长为8位,地址码长度为5位(存储容量位32字)调用lpm_ram_d库元件:1、按照前面介绍的方法新建一项目,使用原理图编辑器为其中

23、新建一设计文件:2、在编辑器中双击鼠标左键(或使用命令EditInsert Symbol),在出现的对话框中选择库元件 3、指定输出文件类型和名称 4、指定元件lpm_ram_dq0的参数 5、判断是否为存储器元件赋初值(选择RAM初始化文件 )6、生成文件设置选项 7、在原理图编辑器中创建一个存储器:在完成前面工作几步的基础上,自动返回到原理图编辑器,原理图编辑器中出现被调用的元件lpm_ram_dq0 8、指定存储器参数并完成存储单初始值的设定以生成存储单元的初始化文件ram_5.mif 指定存储器参数 存储单元初始值的指定9、存储器的仿真结果 6.7 SignalTap II嵌入逻辑分析

24、仪 SignalTap是内嵌的逻辑分析仪,集成到Quartus II设计软件中,能够捕获和显示可编程单芯片系统(SOPC)设计中实时信号的状态。SignalTap可以实时测试FPGA中的信号波形。 SignalTap II的使用使用SignalTapII的一般流程是:设计人员在完成设计并编译工程后,建立SignalTapII(.stp)文件并加入工程- 配置STP文件-编译并下载设计到FPGA-在QuartusII软件中显示被测信号的波形-在测试完毕后将该逻辑分析仪从项目中删除。SignalTapII的使用流程如图 :Simulator:显示的波形(包括延时)是计算所得,与实际波形难免有差异。

25、SignalTap:显示的波形(包括延时)是实际波形。利用FPGA中的资源形成嵌入式逻辑分析仪( Embedded Logic Analyzer,ELA),用以捕捉目标芯片内部信号节点的信息,而不影响原硬件系统的正常工作。ELA把采集的数据从JTAG口经ByteBlaster送往主机,显示有关信号的实测波形。 SignalTap与Simulator的比较 在SignalTap II的设计举例中,我们所采用的是可调信号发生器,其由三部分组成:地址指针,数据ROM和D/A。地址指针用来产生地址,数据ROM中存放波形数据,包括正弦波、方波、三角波和锯齿波,D/A用来将波形数据转换为模拟波形。设计的详

26、细内容请参考教材。SignalTap II的设计举例 QuartusII允许对整个设计项目进行仿真测试,也可以对该设计中的任何子模块进行仿真测试。方法是设定“Simulation focus”。仿真设定单元(Simulation Settings)允许设计者指定该模块的仿真类型,仿真覆盖的时序和矢量激励源等。Time/Vectors仿真参数设定窗口允许设定仿真时间区域以及矢量激励源。 波形仿真1、建立Vector Waveform File 打开波形编辑器:仿真步骤2、设置仿真时间区域 3、存盘波形文件。 4、输入信号节点。5、编辑输入波形(输入激励信号)。点击时钟名inclock,使之变蓝色,再点击左列的时钟设置键,在Clock窗中设置CLK的周期为3us;所示的Clock窗中的“Duty cycle”是占空比,可选50,即50%占空比,再对文件存盘。 6、总线数据格式设置7、仿真器参数设置。选择菜单Assignment中的Setti

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论