不枉初心,砥砺前行

皮皮祥的博客

欢迎留言,评论

导航

Vivado关联Modelsim进行仿真

Vivado自带的仿真工具Vivado Simulator使用体验不佳,使用当前最流行的Verilog仿真工具Modelsim更加高效便捷。Vivado支持多种第三方仿真工具,包括Modelsim,Questasim等,本文将介绍如何在Vivado中使用Modelsim进行仿真。

不同版本的Vivado需要搭配对应版本的modelsim,否则在运行仿真时会报错:

WARNING: [Vivado 12-5495] Detected incompatible modelsim simulator installation version ‘2019.4’! The supported simulator version for the current Vivado release is ‘10.6c’.

之前我在Vivado 2018.3中使用Modelsim 2019.4,就会报版本不兼容的错误,提示支持的Modelsim版本是10.6c。实测Vivado 2018.3 + Modelsim 10.6e也完全OK。

具体Vivado版本对应的Modelsim版本可参考xilinx官网:

Vivado Simulation-主要的Vivado Design Suite版本支持的第三方模拟器

Vivado与Modelsim软件下载可参考我的专栏:软件安装

Vivado 2020.2Modelsim SE 2020.4 联合仿真,具体步骤如下:

一. 编译Vivado仿真库

打开Vivado,Tools -> Compile Simulation Libraries

image-20210306223746509

image-20210306225618191

勾选Compile Xilinx IP,此选项表示此次将会编译Vivado中所有的Xilinx IP,以后使用IP时不需要再次编译

注意:

1.这里的指定GCC可执行文件路径是Vivado 2020.2版本新加入的,Vivado 2018.3中没有这部分。此GCC路径不能不填,否则会有如下提示:

gcc error

2.指定GCC路径是用作编译SystmC IP用的,如果没用到SystemC IP,可随意指定一个路径,例如桌面C:\Users\xu\Desktop,也可以进行编译。

3.推荐的做法是指定GCC路径为D:\Xilinx\Vivado\2020.2\tps\win64\msys64\mingw64\bin,这是Vivado自带的GCC.exe文件,指定此路径没什么问题。

4.Command中会有TCL命令,复制此命令到Tcl Console窗口中运行和设置完点击Compile效果相同。
点击Complie,等待编译完成。在左下角的Tcl Console窗口可以看到编译过程,编译时间和编译结果。编译耗时取决于电脑处理器性能,我的AMD Ryzen 7 3800X用了27分钟才编译完。编译完成后TCL窗口会显示下图所示表格,注意检查是否有Error,有个别error也不要紧,出错的IP可能根本用不上。
Vivado compilation summary

二. 设置仿真工具和库路径

因为新建工程的默认仿真工具是Vivado Simulator,所以要使用Modelsim仿真,每个新工程都要设置一次,方法如下:

image-20210306231907811

image-20210306231110428

image-20210306231658149

三. 启动modelsim仿真

设置完成后,在vivado中点仿真会自动调用modelsim。Run Simulation -> Run Behavioral Simulation

image-20210306232212596

image-20210306232140502

如果仿真一直卡在上图所示界面而不打开modelsim窗口,可能是仿真出错了,注意检查Tcl Console窗口看是否有error。

image-20210306232414491

如果没有Error,将会打开ModelSim窗口,如下图所示。

image-20210306232243720

三. 另外需要注意的点

3.1 不需要新增环境变量

网上说要配置这个环境变量, 实测是不需要的(win10系统), 而且设置了这个变量后, Modelsim原本安装路径中的modelsim.ini文件被代替了, 这不是我们要的. 故这一步不需要做。

变量名:MODELSIM

值(编译库所在位置下的modelsim.ini文件):F:\Modelsim_Vivado_Lib\modelsim.ini

3.2 编译库路径更改后需要修改modelsim.ini

如果你不想编译库而把别人编译好的库拷贝过来,需要注意不仅要在Vivado中指定库路径,还需要更改库文件夹中的modelsim.ini文件,这个文件是编译库时生成的,它指定了特定的库文件路径,注意改成现在库文件的路径。

image-20210306233524119

之前的库放在E盘,现在换到了F盘,需要修改此modelsim.ini文件中的路径才能让Vivado正确调用Modelsim。

image-20210306233933778

posted on 2022-05-10 17:59  皮皮祥  阅读(1119)  评论(0编辑  收藏  举报