作者: FPGA入门到精通
Vivado下使用Modelsim无需使用Modelsim创建工程,此处省略该部分步骤
通过阅读本文,可以快速掌握Modelsim的常用调试操作。
1、设置Vivado默认的仿真器,选择Modelsim Simulator。
打开Vivado工程后,开始设置仿真器。
2、启动行为功能仿真
直接点击左侧导航栏中,启动行为仿真,【SIMULATION】-》【Run Simulation】-》【Run Behavior Simulation】。
等待打开Modelsim软件。
启动成功后,界面如下:
3、添加要观察的模块信号
(1)关闭wave窗口中,显示信号全名的功能,方便查找信号。
(2)将不同模块的信号分组
默认窗口中会加载仿真测试激励文件信号。
先将testbench模块的信号分成一组,按shift键,鼠标点击要选中的第一个信号和最后一个信号,即可选中所有分成一组的信号。
鼠标右击,弹出右键菜单,点击【group】
输入分组名称,如下图:
最后可以看到信号已分组:
点击分组名前的“+”,可将这个分组模块的信号收起。
(3)添加测试模块信号
在【sim】窗口中,鼠标右击需要的模块,选择【Add Wave】或者按快捷键“Ctrl + W”,即可看到信号加载到【Wave】窗口中。如果是子模块,点击上一级模块的“+”,展开下一级模块。
可以看到信号已经加载到【Wave】窗口中
重复上一步操作,进行信号分组,效果如下图:
(4)保存Wave窗口设置
鼠标放到Wave窗口,按快捷键,弹出保存Wave设置,点击Browse按钮,选中当前测试激励工程名对应的".do"文件,这样下次启动modelsim,就能自动加载Wave设置。
如果弹出覆盖文件提示,点击“OK”
(5)启动仿真
一般如果没有在测试激励里加$stop语句,一旦从vivado中启动仿真,打开modelsim软件后,自动运行仿真,直到运行到$finish语句。
这里介绍下modelsim的控制仿真操作,如下图:
(6)查看仿真信号
wave窗口这里默认是不自动实时更新信号数据的,只有点击查看仿真信号操作,如下图所示:
设置信号显示数据的类型,可以鼠标单击选中一个信号或使用“shift或ctrl”键选择多个信号,在鼠标右击弹出右键菜单,选择【radix】对应的进制,如下图所示:
如何复制信号的具体数值,选择要复制的信号位置,右键打开菜单,选择【examine】,弹出数据窗口,鼠标双击数据,按快捷键[ctrl + c]: