1. 环境准备:选对版本,事半功倍
搞FPGA开发的朋友,估计没人能绕开仿真这一步。写好的RTL代码,不跑个仿真心里总是不踏实,就像炒菜没尝咸淡就直接上桌。Vivado自带的仿真器不是不能用,但对于复杂设计,尤其是需要反复迭代调试的时候,它的速度和波形查看的便捷性,总让人觉得差那么点意思。这时候,老牌的ModelSim(或者Questasim)就成了很多人的首选,波形分析功能强大,操作也顺手。
但问题来了,怎么让Vivado这个“设计中心”和ModelSim这个“测试平台”高效地协同工作呢?我见过不少新手,第一步就卡在了版本兼容性上,折腾半天,编译库都生成不了,非常打击积极性。所以,咱们的第一步,也是最关键的一步,就是把“地基”打牢——确保Vivado和ModelSim的版本是匹配的。
这可不是随便装个最新版就完事了。Xilinx(现在是AMD了)官方对于不同版本的Vivado,有推荐甚至强制要求的ModelSim版本。如果你用的版本太老或者太新,Vivado在生成预编译仿真库的时候,就可能直接报错,提示找不到对应的编译器或者库文件,联调根本无从谈起。
我个人的经验是,直接去查官方的版本对应表最靠谱。虽然网上有很多博客总结了对应关系,但官方文档永远是第一手信息。通常,在Vivado的安装文档或者发布说明里,会有一个“Supported Third-Party Tools”的章节,里面明确列出了兼容的ModelSim/QuestaSim版本。比如,Vivado 2020.2官方可能推荐的是QuestaSim 2020.1或ModelSim 2020.4。我实测过,用Vivado 2020.2搭配ModelSim 2020.4是完全可行的,整个流程很顺畅。
这里有个小坑需要注意:如果你的电脑上已经安装了一个旧版本的ModelSim,想升级到新版本,最好先彻底卸载旧的。不仅仅是卸载程序,还要检查一下环境变量(比如PATH里有没有旧的modelsim.exe路径)和注册表残留。否则,新旧版本混在一起,Vivado可能会调用到错误的执行文件,导致一些莫名其妙的错误。我的做法是,用专业的卸载工具清理一遍,或者手动删除安装目录和用户目录下的相关文件夹,再安装新版本。
安装好ModelSim后,别忘了还有一步——破解(学习用途)或添加有效的License。这一步如果没做,ModelSim会运行在“Starter”版本,有代码行数限制,仿真稍微大点的工程就跑不动了。网上针对不同版本的破解教程很多,核心就是替换mgls.dll之类的文件并正确设置LICENSE.TXT的环境变量MGLS_LICENSE_FILE。这一步一定要仔细,确保License生效,可以打开ModelSim独立运行一个简单仿真测试一下。
当版本确定、软件都安装妥当后,我们才算真正拿到了进入“Vivado-ModelSim联调俱乐部”的入场券。接下来,才是具体的配置环节。
2. 核心配置:在Vivado中“牵线搭桥”
环境准备好了,接下来就要在Vivado里进行设置,告诉它:“嘿,我不用你自带的仿真器,我要用我电脑上那个ModelSim。”这个配置过程并不复杂,但有几个关键点一旦设错,后面就会全盘报错。
首先,打开Vivado,我们不需要打开具体工程,在Tools -> Settings这个全局设置里操作就行。找到Tool Settings下的Simulation选项。这里就是联调的“总开关”。
第一个要设置的是Target Simulator。点开下拉菜单,你会看到Vivado Simulator、ModelSim Simulator、Questa Simulator等选项。这里一定要选择ModelSim Simulator(如果你装的是Questa,就选Questa)。这个选项决定了Vivado


423

被折叠的 条评论
为什么被折叠?



