收藏 分享(赏)

第6章 常用EDA工具软件.ppt

上传人:tangtianxu1 文档编号:3103549 上传时间:2018-10-03 格式:PPT 页数:76 大小:2.83MB
下载 相关 举报
第6章 常用EDA工具软件.ppt_第1页
第1页 / 共76页
第6章 常用EDA工具软件.ppt_第2页
第2页 / 共76页
第6章 常用EDA工具软件.ppt_第3页
第3页 / 共76页
第6章 常用EDA工具软件.ppt_第4页
第4页 / 共76页
第6章 常用EDA工具软件.ppt_第5页
第5页 / 共76页
点击查看更多>>
资源描述

1、2018年10月3日3时30分,1,第6章 常用EDA工具软件,6.1 Altera MAX+plus II的使用 6.2 Xilinx Foundation的使用 6.3 ModeSim 的使用本 章 小 结,2018年10月3日3时30分,2,6.1 Altera MAX+plus II的使用,Max+plus是Altera公司提供的FPGA/CPLD开发集成环境,界面友好、使用便捷,被誉为业界最易用易学的EDA软件。在Max+plus上可以完成设计输入、元件适配、时序仿真和功能仿真、编程下载整个流程,支持原理图、VHDL和Verilog语言文本文件、以及波形与EDIF等格式的文件作为设计

2、输入。它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。MAX+plusII支持主流的第三方EDA工具,如Synopsys、Cadence、Synplicity、Mentor、Vi ewlogic、Exemplar和Model Technology等。MAX+plus II支持除APEX20K系列之外的所有Altera FPG/CPLD大规模逻辑器件。,2018年10月3日3时30分,3,6.1.1 Max+plusII功能简介 理图输入(Graphic Editor) 硬件描述语言输入(Text Editor) 波形编辑器(aveform Editor) 管

3、脚(底层)编辑窗口(Floorplan Editor) 5. 自动错误定位 逻辑综合与适配 设计规则检查 多器件划分(Partitioner) 编程文件的产生 仿真 分析时间(Analyze Timing) 12. 器件编程,2018年10月3日3时30分,4,6.1.2 MAX+plus II设计流程 MAX+plus软件设计流程如图6.8所示,由以下几部分组成。,图6.8 MAX+plus设计流程图,2018年10月3日3时30分,5,(1) 设计输入:可以采用原理图输入、HDL语言描述、EDIF网表输入及波形输入等几种方式。(2) 编译:先根据设计要求设定编译参数和编译策略,如器件的选择

4、、逻辑综合方式的选择等。然后根据设定的参数和策略对设计项目进行网表提取、逻辑综合和器件适配,并产生报告文件、延时信息文件及编程文件,供分析仿真和编程使用。(3) 仿真:仿真包括功能仿真、时序仿真和定时分析,可以利用软件的仿真功能来验证设计项目的逻辑功能是否正确。(4) 编程与验证:用经过仿真确认后的编程文件通过编程器(Programmer)将设计下载到实际芯片中,最后测试芯片在系统中的实际运行性能。在设计过程中,如果出现错误,则需重新回到设计输入阶段,改正错误或调整电路后重复上述过程。,2018年10月3日3时30分,6,6.1.3 Max+plusII设计举例一位全加器的整个设计包括3个模块

5、,即底层2输入或门模块ORM2.VHD、半加器模块H_ADDER.VHD以及顶层全加器模块F_ADDER.GDF。其中ORM2.VHD和H_ADDER.VHD是用VHDL编写的,F_ADDER.GDF则是原理图。全加器是通过调用一个ORM2.VHD和两个H_ADDER.VHD组装成一个完整的设计实体F_ADDER。1.源文件的编辑1)ORM2.VHD、H_ADDER.VHD的编辑及对应的元件符号图的生成首先为该设计(工程)建立一目录,如e:maxexam,然后启动进入MAX+plusII集成环境,如图6.9所示。,2018年10月3日3时30分,7,图6.9 MAX+plus II集成环境,2

6、018年10月3日3时30分,8,图6.10 New对话框,单击屏幕上方的“新建文件”按钮,或执行File|New命令,出现如图6.10所示的对话框,选中Text Editor file单击按钮,单击OK按钮,即选中了文本编辑方式。在出现的“Untitled TextEditor”文本编辑窗口中输入例6.1所示的源程序。,2018年10月3日3时30分,9,【例6.1】 两输入或门的源程序ORM2.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC-1164.ALL;ENTITY ORM2 ISPORT(A,B:IN STD_LOGIC;C:OUT STD_LOGIC);EN

7、D OR2;ARCHITECTURE ART1 OF ORM2 ISBEGINC=A OR B;END ARCHITECTURE ART1;,2018年10月3日3时30分,10,图6.11 保存ORM2.VHD,输入完毕后,执行Flie|Save命令,即出现如图6.11所示的对话框。把输入的文件存在目录e:maxexam中。,2018年10月3日3时30分,11,文件存盘后,为了能在图形编辑器中调用ORM2,需要为ORM2创建一个元件图形符号。执行File|Create Default Symbol命令,MAX+plus II出现如图6.12所示的对话框,询问是否将当前工程设为ORM2,可单

8、击“确定”按钮。这时MAX+plus II调出编译器对ORM2.VHD进行编译,编译后生成ORM2的图形符号。如果源程序有错,要对源程序进行修改,重复上面的步骤,直到此元件符号创建成功。成功后出现如图6.13所示的对话框。退出编译器,再退出编辑器,回到主窗口。,图6.12 询问当前工程的设置 图6.13 元件符号创建成功,2018年10月3日3时30分,12,H_ADDER.VHD的编辑及对应的元件符号的创建过程同上,文件存放在同一目录e:maxexam内,其源程序如例6.2所示。 【例6.2】 半加器的VHDL源程序H_ADDER.VHD。 LIBRARY IEEE; USE IEEE.ST

9、D_LOGIC_1164.ALL; ENTITY H_ADDER ISPROT(A,B:IN STD_LOGIC;CO,SO:OUT STD_LOGIC); END ENTITY H_ADDER; ARCHITECTURE ART2 OF H_ADDER ISBEGINSO=(A OR B) AND (A NAND B);CO=NOT (A NAND B); END ARCHITECTURE ART2;,2018年10月3日3时30分,13,2) F _ADDER.GDF的编辑F_ADDER.GDF是全加器设计中最顶层的图形设计文件,调用了前面两步创建的两个功能元件,将一个ORM2.VHD和两

10、个H_ADDER.VHD组装成一个完整的设计实体。执行File|New命令,在如图6.10所示的对话框中选中Graphic Editor file单选按钮,单击OK按钮,出现图形编辑器窗口Graphic Editor。按照以下给出的方法在“Graphic Editor”中绘出如图6.14所示的原理图。,2018年10月3日3时30分,14,图6.14 顶层设计原理图,2018年10月3日3时30分,15,(1) 往图中添加元件。先在图形编辑器Graphic Editor中的任何位置双击鼠标,将出现如图6.15所示的Enter Symbol对话框。通过鼠标选择一个元件符号,或直接在Symbol

11、Name框中输入元件符号名。单击OK按钮,选中的元件符号立即出现在图形编辑器中双击过鼠标的位置上。 现在,Symbol Files窗口已有两个元件符号ORM2和H_ADDER,其即为刚才输入的两个VHDL文件所对应的元件符号。用鼠标选择其中一个元件,再单击OK按钮,此元件即进入原理图编辑器。然后重复此过程,将一个ORM2、两个H_ADDER元件调入原理图编辑器。用鼠标按在元件上拖动,即可移动元件。如图6.14所示,排好它们的位置。接着可为一个ORM2、两个H_ADDER元件接上输入输出接口。输入输出接口符号名为INPUT和OUTPUT。,2018年10月3日3时30分,16,图6.15 输入元

12、件,2018年10月3日3时30分,17,(2) 在符号之间进行连线。先按如图6.14的方式,放好输入/输出元件符号,再将鼠标箭头移到符号的输入/输出引脚上,鼠标箭头形状会变成“+”字形,然后可以按着鼠标左键并拖动鼠标,绘出一条线,松开鼠标按键完成一次操作。将鼠标箭头放在连线的一端,鼠标光标也会变成“+”字,此时可以接着画这条线。细线表示单根线,粗线表示总线,它的根数可从元件符号的标示上看出。改变连线的性质的方法是:先点击该线,使其变红,然后执行Options|Line Style命令,即可在弹出的窗口中选所需的线段。(3) 设置输入/输出引脚名。在INPUT或OUTPUT符号的引脚上双击鼠标

13、左键,可以在端口中输入新的引脚名。F_ADDER.GDF中有3个输入引脚:AIN、BIN和CIN。两个输出引脚:SUM和COUT。按图6.14的方式分别输入端口符号,完成的顶层原理图设计如图6.14所示。最后执行File|Save命令,将此顶层原理图文件取名为F_ADDER.GDF,并写入File Name中,存入同一目录中。,2018年10月3日3时30分,18,2. 系统的编译、综合、适配(1)设置顶层文件在编译系统文件F_ADDER.GDF之前,需要设置EADDER文件为顶层文件(工程文件) Project。执行File|Project|Set Project to Current Fi

14、le命令,当前的工程即被设为F_ADDER。(2) 选择目标器件及锁定引脚先选择用于编程的目标芯片。执行Assign|Device命令,在弹出的对话框中的Device Family下拉栏中选择FLEX10K,然后在Devices列表框中选择芯片型号EPF10K10LC84-3,单击OK按钮。执行Assign|Pin/Location/Chip命令弹出一个对话框来设置引脚。在Node Name右边的文本框中输入引脚名。引脚号设定可按照表6.1的方式来定义。,2018年10月3日3时30分,19,表6.1 引脚号设定表,全部设定结束后,单击OK按钮完成。以上是假定最后将设计下载进GW48-CK系统

15、,并选择实验电路结构模式NO.6,设定AIN、BIN和CIN信号分别由键3、键4、键5产生,SUM和COUT分别接PIO16和PIO17,并分别接至发光二极管D1、D2。,2018年10月3日3时30分,20,图6.16 工程项目编译综合器,(3) 编译、综合、适配执行MAX+plusII|Compiler执行,可运行编译器,此时将出现如图6.16所示的界面。编译器将一次性完成编译、综合、优化、逻辑分割和适配/布线等操作。,2018年10月3日3时30分,21,下面进行综合器的有关优化设置。执行Assign|Global Project Logic Synthesis命令,进入此窗后,在右侧的

16、小窗口Optimize中将“滑块”放在适当位置。若为CPLD目标器件,要对窗口中间的MAX Device Synthesis Options作相应的选择。然后按键“Define Synthesis Style”,选综合方式(Style)为Normal;Minimization可选Full;Slow Slew Rate可根据需要选,若希望减少I/O输出口的信号噪声,可选此项,但这是以牺牲信号速度为代价的;对于7128S,可选XOR Synthesis,这对于某些组合逻辑有很好的优化功能。选好后,单击OK按钮,关闭此窗口,然后执行Assign|Global Project Device Synth

17、esis命令,选定是否加密芯片(选Security Bit加密),并选择Enable JTAG Suport,以能利用JTAG方式对目标器件进行编程下载。最后在Compiler窗口中单击Start按钮,启动编译过程,直到编译结束。如果源程序有错误,用鼠标双击红色的错误信息即可返回图形或文本编辑器进行修改,然后再次编译,直到通过。,2018年10月3日3时30分,22,3系统的有关仿真(1) 建立仿真波形文件执行File|New命令,在出现的New对话框中选择Waveform Editor File(如图6.10所示),单击OK按钮后将出现波形编辑器子窗口。执行Node|Enter Nodes

18、from SNF命令,出现如图6.17所示的选择信号结点对话框。单击右上侧的List按钮,左边的列表框将立即列出所有可以选择的信号结点,然后按中间的“=”按钮,将左边列表框的结点全部选中到右边的列表框。单击OK按钮,选中的信号将出现在波形编辑器中。其中有全加器的输入信号AIN、BIN、CIN,输出信号SUM、COUT。最后执行File|Save命令在弹出的窗口中将波形文件存在以上的同一目录中,文件取名为f_adder.scf。,2018年10月3日3时30分,23,图6.17 往波形编辑器中添加信号结点,2018年10月3日3时30分,24,(2)设置输入信号波形波形观察窗口内左排按钮是用于设

19、置输入信号的,使用时只要先用鼠标在输入波形上拖一需要改变的黑色区域,然后点击左排相应按钮即可。其中,0、l、X、Z、INV、G分别表示低电平、高电平、任意、高阻态、反相和总线数据设置。若是时钟信号,用鼠标点时钟信号的Value区域,可以将时钟信号选中。这时时钟信号的波形区域全部变成黑色,单击环境窗口边上的时钟按钮,出现时钟信号设置对话框,单击按钮设置时钟信号。按集成环境窗口的“缩小”按钮,可以缩小波形显示,以便在仿真时能够浏览波形全貌。根据要求将各输入信号AIN、BIN和CIN的波形设置成如图6.18所示。,2018年10月3日3时30分,25,图6.18 设置了输入信号的波形编辑器,2018

20、年10月3日3时30分,26,图6.19 仿真参数设置与仿真启动窗,(3)运行仿真器进行仿真执行MAX+plus II|Simulator命令,出现仿真参数设置与仿真启动窗(如图6.19所示),单击Start按钮,即刻进行仿真运算。,2018年10月3日3时30分,27,图6.21 F_ADDER仿真结果,时序仿真波形结果如图6.21所示,观察波形后,可以确认设计正确。,2018年10月3日3时30分,28,4.系统的编程下载如果MAX+plus II是安装后第一次调用编程器,则MAX+plus II将弹出对话框选择型号,以便调用正确的编程器驱动程序。如果用FLEX或ISP型MAX系列器件,通

21、常选择ByteBlaster编程器。ByteBlaster实际上是指连接在并行打印口使用的下载电缆。编程器型号的选择方法是启动Programmer,执行Options|Hardware Setup命令,在“Hardware Type”下拉栏中选ByteBlaster,单击OK按钮即可。 用鼠标双击如图6.22所示的编译器子窗口的下载图标,或执行MAX+plusII|Programmer命令,可调出编程器(Programmer)窗口。,2018年10月3日3时30分,29,图6.22 编程器子窗口,2018年10月3日3时30分,30,本例使用FLEX10K系列中的10K10器件,一切连接就绪后

22、,方可单击编程器窗口中的Configure按钮,若一切无误,即可将所设计的内容下载到10K10芯片中。下载成功后将在一弹出的小窗中显示Configuration Complete。接下去就可以在实验系统上进行实验验证:按“模式选择键”,使“模式指示”显示“6”,表明此时实验系统已进入NO.6电路结构。然后按动“键3”、“键4”、“键5”输入相应的信号,则发光二极管D1、D2显示全加器的运算结果,所有结果与仿真的情况完全一致则表明全加器的设计是成功的。如果希望改变某引脚,可以这样操作:执行File|Open命令,在open窗口中点击Graphic Editor,双击弹出的原理图文件,进入原理图编

23、辑器;执行Assign|Pin/Location/Pin命令,在左下栏中点击需要改变引脚的项目,然后在Pin的下拉菜单中选定引脚号,单击Change|OK按钮即完成。执行MAX+plus II|Compiler|Start命令开始编译综合,最后进行下载测试。,2018年10月3日3时30分,31,6.2 Xilinx Foundation的使用,Foundation是Xilinx公司最新集成开发的EDA工具,支持XC3000A/L、XC3100A/L、XC4000E/L/EX/XL/XV/XLA、XC5200、XC9500、XC9500XL Spartan和SpartanXL Virtex等芯

24、片。Foundation可提供真正的混合语言(VHDL和Verilog-HDL)的综合和优化,从而为支持第三方的IP(知识产权)核提供了有利条件。它的JTAG编程器支持CPLD/FPGA的下载和配置。Foundation采用自动化的、完整的集成设计环境,包含了强大的Synopsys FPGA Express综合系统,并将它完美地集成到了Foundation Series统一的项目管理器中。Foundation项目管理器集成了Xilinx的各种实现工具,是业界最强大的EDA设计工具之一。Foundation增强了逻辑优化和适配技术方面的能力,生成的逻辑可以工作在更快的系统时钟频率下。由于按钮化的

25、操作和时序驱动实现技术,连同更快的编译速度,使得设计系统的平均性能显著提高。,2018年10月3日3时30分,32,6.2.1 Foundation设计流程Foundation 有原理图和HDL两种设计方式,相对应的有两种设计流程。1原理图输入方式设计流程原理图主输入方式的设计流程如图6.23所示,各步工作由项目管理器统一管理。(1) 编辑原理图和生成网表:利用Xilinx提供的符号库,在原理图编辑器中设计系统原理图。原理图设计好后,在原理图编辑器选择菜单“Options”“Create Netlist”即可生成网表。若省略这一步,在进行下一步操作时,项目管理器会询问是否生成网表。,2018年

26、10月3日3时30分,33,图6.23 原理图输入方式设计流程,2018年10月3日3时30分,34,(2) 软件到硬件的实现:要将设计的软件系统实现到具体芯片,包括一系列的操作。其具体的顺序是:转换(Translate)映射(Map)放置和布线(Place & Route)时序分析(Timing)配置(Configure)。最后生成可以写到具体芯片的目标文件中。 (3) 有关仿真及分析:逻辑仿真器(Logic Simulator)支持4种类型的仿真。其中功能仿真用来验证系统的逻辑功能是否正确;时序仿真是经适配到选定的芯片后进行的仿真验证,它将模拟芯片的实际动作,其仿真时间模型很严格,模型将门

27、级延时计算在内,可以分析出竞争和冒险,经过时序仿真验证过的设计基本上与实际电路相一致;时序分析是验证芯片中电路可能的工作速度,分析引脚之间及内部信号之间的时间延时,初步确定芯片中电路的工作性能。(4) 芯片编程:在经过各种仿真验证之后,可以将生成的目标文件写到芯片中去,以实现对芯片的实际配置,实现所需要的功能。,2018年10月3日3时30分,35,2. 硬件描述语言输入方式设计流程硬件描述语言(HDL)作为主设计输入的流程如图6.24所示。该主设计输入方式的设计流程中仅有一项与原理图主设计输入流程不同。在HDL主设计输入流程中的“逻辑综合”,对应地在原理图主设计流程中是“生成网表”。,201

28、8年10月3日3时30分,36,图6.24 HDL主设计输入流程,2018年10月3日3时30分,37,6.2.2 Foundation设计举例为了使读者掌握Foundation的VHDL设计操作,下面介绍一个4位二进制的加法器的VHDL设计和测试的全过程。本设计采用的目标器件为低成本、高性能的Spartan系列芯片,容量等效于5 000个逻辑门的XCS05-3-PC84。1. 创建新工程设新工程为ADDER4B,在创建新工程ADDER4B之前,首先需为本设计工程建立一个空的目录,如E:XLINEXAM。运行Foundation,进入Foundation项目管理器后,会出现一个项目管理器对话框

29、。在对话框中选中Create a New Project单选按钮,然后单击OK按钮,出现如图6.25所示的新工程设置对话框。在此对话框中输入工程名“ADDER4B”及目录名,然后选中HDL单选按钮。单击OK按钮,新工程设置完毕。建立新工程也可直接执行File|New Project命令,产生New Project。,2018年10月3日3时30分,38,图6.25 设置新工程信息对话框,2018年10月3日3时30分,39,2创建HDL源文件(1)进入HDL编辑器在Foundation项目管理器中,选中Flow按钮后在显示的流程图中选中Design Entry栏中最左侧的按钮,进入HDL单击辑

30、(HDL Editor)。出现如图6.26所示的对话框,选中Create Empty(创建空文档),单击OK按钮后进入HDL编辑器主界面。(2)输入VHDL源程序并将其保存在HDL编辑器中输入例6.3所示的源程序,然后执行File|Save命令,在对话框中填入文件名ADDER4B.VHD,单击“保存”按钮,ADDER4B.VHD立即保存到工程所在的目录中。,2018年10月3日3时30分,40,图6.26 进入HDL编辑器后显示的对话框,2018年10月3日3时30分,41,【例6.3】四位二进制加法器的源程序ADDER4B.VHD。 LIBRARY IEEE; USE IEEE.STD_LO

31、GIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY ADDER4B IS PORT(A: IN STD_LOGIC_VECTOR(3 DOWNTO 0); B: IN STD_LOGIC_VECTOR(3 DOWNTO 0); C: OUT STD_LOGIC_VECTOR(4 DOWNTO 0); END ADDER4B; ARCHITECTURE ART OF ADDER4B ISSIGNAL AA,BB: STD_LOGIC_VECTOR(4 DOWNTO 0);BEGIN AA=0 & A; BB=0 & B; C=AA+BB E

32、ND ARCHITECTUR EART;,2018年10月3日3时30分,42,(3) 将源程序文件加到工程中执行Project|Add to Project命令,可将ADDER4B.VHD添加到工程文件中。关闭HDL编辑器,回到Foundation项目管理器中,可以发现层次浏览窗口中已经存在ADDER4B.VHD。对于由多个VHDL文件组成的设计也是以上述相同的方式进入HDL编辑器,然后存进同一目录中,并通过Add to Project选项加入到同一工程中。必须保证输入的VHDL源程序的正确性,因为在发送添加到工程命令时,Foundation管理器自动调用语法检查器对当前新加入的源程序文件A

33、DDER4B.VHD进入语法检查。如果语法检查通不过,需修改源程序,以排除其中的错误,然后再执行Synthesis|Check Syntax命令,再次进行语法检查。,2018年10月3日3时30分,43,3逻辑综合逻辑综合的作用是将ADDER4B.VHD编译后,为ADDER4B选择一个电路实现方案,然后为此方案生成一个电路网表。(1) 启动综合过程在Foundation项目管理器中,选中Flow单选,在显示的流程图中选中Synthesis栏中最左侧的按钮,启动综合器。此时,首先会弹出如图6.27所示的对话框,提示设置综合时需要的信息。后面需要为ADDER4B的输入/输出端指定芯片引脚,因此对话

34、框中的选项Edit Synthesis/Implementation Constraints一定要选中。Version栏中填入恰当的ver1、ver2或ver3等,此外,对于Speed和Area项要作恰当的选择。,2018年10月3日3时30分,44,图6.27 设置综合信息,2018年10月3日3时30分,45,(2) 目标器件的选择及引脚锁定首先要选择目标器件,可以作如图6.27所示的选择。结束后,单击Run按钮,会出现如图6.28所示的窗口,可以在其中定义芯片引脚。将下面的滚动条拖到右边Pad Loc一栏,即可进行引脚定义。鼠标单击要设置的输出名所对应的方格,可以输入引脚号,双击则可以修

35、改。引脚号码的格式是“P号码”,如P5表示芯片封装的第5引脚。,2018年10月3日3时30分,46,图6.28 定义芯片引脚,2018年10月3日3时30分,47,4功能仿真综合后生成的网表可供功能仿真用。这里简要说明仿真器进行功能仿真的操作过程。(1) 启动仿真器 在Foundation项目管理器中,选中Flow按钮,在显示的流程图中单击Simulation按钮,即进入逻辑仿真器,此时逻辑仿真自动设置为功能仿真状态。(2)加入信号在逻辑仿真器中,执行Signal|Add Signal命令,出现如图6.29所示的子窗口。首先用鼠标选中“Signal Selection”一栏中信号名,然后单击

36、Add按钮,选中的信号会立即加到Waveform Viewer 子窗口中,重复操作直到加完所有所需信号。,2018年10月3日3时30分,48,图6.29 加入信号窗口如图6.29所示,加入了信号(A3,A0)、(B3,B0)和(C4,C0)。注意,这里的信号表示形式是总线形式,(A3,A0)表示由A3、A2、A1、A0组成的总线信号。,2018年10月3日3时30分,49,(3) 设置输入波形执行Waveform|Edit命令,出现如图6.30所示的标题为Test Vector State Selection”的工具窗口。,图6.30 编辑输入波形,2018年10月3日3时30分,50,图6

37、.31 功能仿真的输入/输出波形,(4) 单步仿真如图6.31所示,用鼠标重复单击Simulation Step按钮进行单步仿真,每单击一下,仿真过程执行一步,仿真器即画出输出信号的波形。,2018年10月3日3时30分,51,图6.32 实现选项对话框,5软件到硬件的设计实现(1) 启动实现过程在Foundation 项目管理中,单击Flow,在显示的流程图单击Implementation按钮,启动实现过程。首先出现如图6.27所示的对话框,在此对话框中单击Options按钮,出现图6.32所示的Options(选项)对话框。,2018年10月3日3时30分,52,(2) 设置实现选项在如图

38、6.32所示的对话框中, Optional Targets一组中的两个选项“Produce Timing Simulation Data”(产生时序仿真数据)和Produce Configuration Data(产生配置数据)都要选上。然后在此对话框中单击OK”按钮,返回如图6.27所示的对话框。(3) 进入流程引擎在如图6.27所示的对话框中单击Run按钮,进入流程引擎(Flow Engine),流程引擎负责完成整个实现过程,如图6.33所示。,2018年10月3日3时30分,53,图6.33 处理流程显示窗,在完成上面的步骤后,Foundation出现流程引擎(Flow Engine)窗

39、口,表示已经进入实现过程。实现过程的步骤如表6.2所示。在执行一个子过程时,其图标下面的状态框显示Running,表示正在运行。每完成一个子过程,相应子过程下面的状态框会显示“Completed”,其右面的箭头变成黑色。当如图6.33所示的Configure子过程下面的状态显示为Completed时,表示实现过程已经正常结束,生成了供时序仿真和编程用的文件。,2018年10月3日3时30分,54,表6.2 实现过程步骤,在实现过程中,如果前面的原理图输入不正确,实现过程将终止,并提示用户查看出错信息。出错信息种类很多,在本例中一旦遇到出错,请检查并修正原理图。排错之后,重新执行上面所示的全过程

40、。,2018年10月3日3时30分,55,6系统的时序仿真在Foundation项目管理器中,单击流程图中Verification栏中左边的按钮,进入时序仿真器。时序仿真与功能仿真的操作方法相同,仿真的结果如图6.31所示。ADDER4B经过时序仿真验证之后,若确认已经达到所期望的逻辑功能,就可以对目标芯片进行编程了。,2018年10月3日3时30分,56,7. 芯片编程下载以上各步骤通过后,单击流程图中的Programming栏中左边的按钮,项目管理器运行硬件调试器(Hardware Debugger)对芯片进行编程。在此之前,下载线应该连好。硬件调试器在运行时首先检测下载线,如果检测不到,

41、会弹出对话框让用户选择一种。一般使用并行打印机口连接方式配置下载线“Parallel”。正常进入硬件调试器主界面后,执行Download|Download Design命令,硬件调试器立即将配置文件下载到器件中去。,2018年10月3日3时30分,57,6.3.1 ModelSim的使用方法ModelSim是Unix下的QuickHDL发展来的,Windows版本的ModelSim保留了部分Unix风格,可以使用键盘完成所有操作,但也提供了用户图形界面接口。ModelSim有交互命令方式(即在ModelSim的主窗口通过输入命令实现编辑、编译和仿真操作)、图形用户交互方式(即通过菜单进行交互)

42、和批处理方式(类似DOS批处理或Unix的shell工作方式)等3种执行方式。ModelSim启动后,首先呈现出如图6.34所示的主窗口(Main Windows)界面,主窗口中包括命令窗口(Transcript)、工作区(Workspace)和工具栏。在命令窗口中可以输入ModeSim的命令,并获得执行信息;在工作区中用树状列表(Tree List)的形式来观察库(Library)、项目源文件(Project)和设计仿真的结构。,6.3 ModeSim 的使用,ModelSim是一种快速而又方便的HDL编译型仿真工具,支持VHDL和Verilog HDL的编辑、编译和仿真。,2018年10月

43、3日3时30分,58,在使用ModelSim之前,应事先建立用户自己的工程文件夹,用于存放各种设计文件和仿真文件,然后还要建立work库。在VHDL中work是默认的工作库,因此ModelSim中必须首先建立一个work库。,2018年10月3日3时30分,59,在ModelSim的主窗口,执行File|Project命令,弹出建立新项目的对话框,图6.35所示,在对话框中填入要建立的新项目名称及所在的文件夹,单击OK按钮确定后,项目已被建立,在工作区中出现Project标签页。一般说来,所有源代码都要编译到同一个库(包括VHDL和Verilog HDL)。,图6.35 建立新项目对话框,2018年10月3日3时30分,60,1. ModelSim编辑在ModelSim的主窗口界面,执行File|New|Source|VHDL命令,如图6.35所示,进入ModelSim的VHDL编辑方式。ModelSim的编辑方式(source)界面如图6.36所示,输入十进制加法计数器的VHDL源程序,并用cnt4m.vhd为文件名,存入用户自己的工程文件夹中。,图6.35 进入ModelSim编辑方式界面,2018年10月3日3时30分,61,图6.36 ModelSim编辑方式的界面,

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

当前位置:首页 > 高等教育 > 专业基础教材

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报