《Modelsim后仿真》由会员分享,可在线阅读,更多相关《Modelsim后仿真(17页珍藏版)》请在金锄头文库上搜索。
1、ModelSim+Synplify+Quartus 的 Altera FPGA 的仿真与验证(1)技术分类:EDAX具与效劳 | 2021-08-07chenhongyi软件要求:ModelSimSE、Synplify Pro、Quartus II 适用人群:初学者源代码: mux4_to_1.v工作内容:1、设计一个多路选择器,利用 ModelSimSE做功能仿真;2、利用SynplifyPro 进行综合,生成 xxx.vqm文件;3、利用 QuartusII 导入xxx.vqm进行自动布局布线,并生成 xxx.vo(Verilog4、利用ModelSimSE做后仿真,看是否满足要求。注:1
2、 .仿真器(Simulator)是用来仿真电路的波形。2 .综合工具(Synthesizer)的功能是将 HDL转换成由电路所组成的Netlist 。3 . 一般而言,在电路设计的仿真上可分为Pre-Sim和Post-Sim 。Pre-Sim是针而Post-Sim那么是针对综合过且做完成了 AutoPlaceandRoute (APR两电路进行仿真,以确保所设计的电路实现在FPGA时,与Pre-Sim的功能一样。1、前仿真(Pre-Sim )步骤一:翻开 ModelSimSE,然后建立一个 Project ;建立 Project 的方式为点选 File Nea Project;设定 Proje
3、ctName 与 Projectlocation ,按 OK即可建立 Project 。步骤二:新增设计文档或参加文档。新增文档的方式为点选File Ne SourceVerilog ,然后对文档进行编辑并储存为xxx.v ;参加文档的方式为点选File 一AddtoProject 一 File,然后点选 xxx.v ;步骤三:编译(Compile)。编译文档的方式为点选Compile f CompileAll ,即可编译所有的文档。如果编译时发生错误,在显示错误的地方(红字)点两下,即可跳到错误。it Reading C:/ED A_Talsyklcideltech_S.S/tcl/vsim
4、/pref tel# Loading protecttt Compile offailed with 1 errors.ModeJS im| ,e-immux_4_to l v - Unsuccessful Compilevbg -ork work DWLS1/alt eia/mu_4_to_1 /pre-siri/muH_4_to_1 .vModel Technology ModelSimSE vlog 5.6 Compiler 2002.03 Mar 15 2002 Compiling module rnux_4_to_1ERFlOFl: D:A/LS/altera/rx_4_ta_1 /
5、pre-sim/rnux_4_ta_ 1.v(10): Undefined vfiable: v.xxERROR: D:LSi/altera/mus(_4_tc_1 /presim/mjx_4_to_1.v(10): Identier must be declared with a 口 oft mode:视步骤四:新增或参加测试平台(Testbench)。当设计完电路后,为了确定所设计的电路是否符合要求,我们会写一个测试平台(Testbench);新增或参加测试平台,然后编译它。步骤五:仿真(Simulate)。仿真的方式为点选 Simulate Simulate;翻开Design里面的wor
6、k,然后点选 mux_4_to_1_tb并Add它,最后按Load即可跳到仿真窗口。步骤六:参加信号线。在窗口上按右键,然后点选AdcR AddtoWave;步骤七:看波形。在工具列上按 Run,然后就会显示波形;慢慢看波形吧,没有波形就没有真相!以上就是使用 ModelSim做Pre-Sim的根本流程,在此要特别强调的是, ModelSim所有的功能并不仅仅于 此,如果你想要了解更多的话,一切都要靠自己花时间去问去试,只有努力的人才能有丰富的收获,加油!2、综合(Synthesis )步骤一:翻开 SynplifyPro ,然后建立一个 Project先点选 File ,再点选 New选择
7、ProjectFile ,并设定 FileName 与 FileLocation步骤二:参加设计文件。点选欲参加的xxx.v ,然后按Add,再按OK后就可以将档案参加。-MdAH |* Add |Remove All嗒案名档CO: Imiix 4 to 1 v檎案SI型:HDL File? (*.vha.;*.7:iFiles To Add To ProjectD:WL5I eguu)(_4_m_l 刈n加uk_4oJ wRemoveCancel步骤三:选择 FPGA的Device与其它相关设定。先点选 Project ,再点选 Implementationoptions 。在 Device
8、 的设定如下:Technology 为 Altera Stratix , Part 为 EP1S10 Speed 为-6 , Package 为 FC780b在 Options 的设定是将 FSMCompiler 与 ResourceSharing 打勾。在 Constraints 的设定是将 Frequency设定至100Mh互在ImplementationResults 的设定是将 ResultFileName 填入与电路模块相同的名称,而xxx.vgm这个文件会在Quartus II做APR寸被使用。然后将以下两个选项打勾(WriteVendorConstraintFile 与Write
9、MappedVerilogNetlist) 。在 TimingReport 的设定是将 NumberofCriticalPaths 与 NumberofStart/EndPoints者B设为 11。在Verilog 里是将TOPLevelModule填入与电路模块相同的名称,然后将 UseVerilog2001打勾。步骤四:综合(Synthesis)。点选RUNSynthesize ,最后出现Done!就是已经综合完毕。步骤五:检查综合后的电路。先点选 HDLAnalyst ,再点选 RTL,最后点选 HierarchalView ,画面会出现综合后的电路Netlist的10之固口rCJlO以
10、上就是使用Synplify 将HDL程序合成为电路 Netlist的根本流程,值得注意的是,当你针对不同要求而 设定的Constraints 不同时,你就会得到不同的电路Netlist ,所要付出的硬件代价也不同,这就需要大家多花点心思来了解其中的微妙之处。3、自动布局布线(APR步骤一:开启 Quartus II ,然后建立一个 Project 。先点选 File ,再点选 NewProjectWizard。设定 WorkDirectory , ProjectName 与 Top-LevelEntityName ,再按 Next。New Project Wiaaid: Dinectoiy,
11、Name, and Top-Level Entity page 1 of 6困What is the wcrking: directory for this projecP This directory 中ill contain design file? said other relateOites associated with thi$ project. If you type idirectoiy nne that does rwt exist; Quartus II tan create it for youD:VLSIalie ramux_4_to i aprWhat 册 the n
12、ame of this rojecP If you wish, you can use the name of the projects top-level entity.| JtoWhat is the nanie of the top-level erdity in jnom project? Entity names are case sensitive, so the capitalisation musl exactly mafch 血t of the of the entity in the fifemux 4 to 17| Nixt Finish 取消 步骤二:点选Add -参加
13、设计文件。,将Synplify 合成出来的xxx.vqm 参加,再按 Next。步骤三:设定相关的 EDATools。在 ToolType 点选 Simulation , ToolName 点选 ModelSim。点选 Settings ,将 TimeScale 设定为 1ns。步骤四:设定Family。设定 Family 为 Stratix ,再按 Next。New Project Wissid : Device FoMly pse 4 of 6Which device family do you wish to tax骅伴改mly JDo tdu 姬*nt 忙 assign 4 speci
14、fic devict?C No, I want to eJIav the Compiler to ehcose adevxeBackNct | Finish | 取消步骤五:设定Device。设定 Device为EP1S10F780C6再按Finish ,即可完成 Project 的设定。步骤六:编译。点选 Processing f Startcompilation ,即可开始编译。步骤七:完成编译。弹出下面窗口即代表编译完毕。以上就是使用 QuartusII对电路Netlist 做APR的根本流程,并且利用设定仿真工具所产生的xxx.vo(VerilogOutputFile) 与 xxx.sdo(StandardDelayOutputFile) 做后仿真。4、后仿真(Post-Sim )步骤一:启动 ModelSim,然后建立一个 Project 。建立Project 的方式为点选 File 一 New Project。设定 ProjectName 与 Projectlocation ,按 OK即可建立 Project 。步骤二:参加设计文档。将xxx.vo更改为xxx.v ,然