ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Modelsim独立仿真教程,仿真Vivado IP核

Modelsim独立仿真教程,仿真Vivado IP核 相比于Vivado自带的仿真器我一直很推崇用Modelsim进行独立仿真。对于复杂工程Modelsim在编译和仿真速度上都是Vivado不能比拟的。本文结合几个关键博客仅供学习梳理一下如何用Modelsim进行独立仿真同时如何仿真Vivado自带的IP核。1. 软件准备安装Modelsim软件版本是Modelsim 2020.4 SE安装教程modelsim 2020.4SE安装教程超详细仅供学习使用_modelsim安装教程-CSDN博客。注意教程中需要添加一条环境变量LM_LICENSE_FILE。安装Vivado软件相关的安装教程网上很多各个版本的安装大致相同。作者安装了一个最新的版本Vivado 2026.1选择了必要的器件后大小约为80G左右。作者在网络上也找到了2026.1版本的License【新提醒】vivado 2026.1许可license文件 - EDA资源使用讨论 - EETOP 创芯网论坛 (原名电子顶级开发网) - Powered by Discuz!。获得Vivado的License后按照下图指定License文件位置即可不要修改LM_LICENSE_FILE的值最后点击Set即可。2. 编译Vivado的IP核Modelsim之所以能够仿真Vivado的IP核需要基于IP核的仿真库文件。打开任意的Vivado工程点击Tools-Compile Simulation Libraries图中Family选择自己常用的器件类型如果选择默认的All后续的编译时间会比较长生成的仿真库文件也比较大。其余的Simulator、Language和Library和我选择一样即可。红色框中Compiled library location是生成的仿真库文件的位置大家可以在Vivado安装目录下新建文件夹放进去。Simulator executable path选择到Modelsim安装路径下的win64文件夹。最后点击Compile等待一段时间生成相应的仿真库如下图所示。生成的仿真库中有一个modelsim.ini文件复制该文件中的有关IP核的所有路径信息部分路径如下图所示。进入Modelsim的安装目录D:\modeltech64_2020.4目录下也有一个同名文件modelsim.ini属性取消勾选只读将复制的路径信息粘贴到modelsim_lib xxx下方保存后并重新勾选只读。打开Modelsim软件可以看到Library中显示了Vivado IP核的相关内容。3. 独立仿真过程先明确Modelsim的作用是进行功能仿真而设计的Synthesis和Implementation则由Vivado来完成。所以大部分情况下Modelsim和Vivado往往是同时使用的。新建一个文件夹用于放置Modelsim的工程。打开Modelsim软件在主界面上依次点击File-New-Project指定工程名和路径并点击OK完成。添加设计和激励文件在Project空白处点击鼠标右键点击添加Existing File将Vivado工程中的文件添加到Modelsim中来。将Vivado工程xxx.srcs目录下涉及到的设计和激励文件全部添加到Modelsim工程中。此外将Vivado工程xxx.gen\sources_1\ip\xxx\sim\xxx.v等IP仿真文件也添加到Modelsim工程中。同时选择Reference from current location这样ModelSim会直接引用原始源文件无需维护两份代码。在Vivado中对设计和激励文件进行修改保存后Modelsim中的文件同步被修改。添加完文件后点击Compile All对所有的文件进行编译检查保证所有文件不存在报错如下图所示。下面进行仿真在主界面上点击Simulate-Start Simulation。如下图所示勾选Enable optimization点击Optimization Options并选择Apply full visibility to all modules(full debug mode)。在work中选择要进行仿真的顶层tb文件并点击OK开始仿真。如果使用到了IP核正常情况下肯定会报错报错信息就是Module fifo_generator_v13_2_15 is not defined。因为之前添加的xxx.gen下的IP核仿真文件会例化仿真库文件。我们回到上一步在主界面上点击Simulate-Start Simulation。如下图所示在Libraries部分中点击Add在Select Library框中输入上面报错的模块名fifo_generator_v13_2_15来添加对应的仿真库。最后回到Design部分在work中选择顶层tb文件并点击最下方的OK进行仿真。一般情况下能够进行正常仿真。在sim中可以选择对应的模块并在右侧选择想要查看的信号右键Add Wave添加到波形窗口。在波形窗口点击Restart接着点击Run -All跑出仿真波形如下图所示。后续的仿真操作变得更加容易不需要关闭当前的仿真界面和窗口。修改代码并保存后在Modelsim端重新Compile All并在波形窗口点击Restart然后点击Run -All即可查看新的波形。4. 总结上文就是Modelsim独立仿真的步骤。工欲善其事必先利其器希望Modelsim能加快每一个工程师的仿真速度
返回列表