目录
一、仿真设置二、波形仿真三、修改代码重新仿真仿真之前参考博客设置 ModelSim 连接:/ssj925319/article/details/115333028
如果是 ModelSim-Altera 的话,路径要设置到 win32aloem,比如:D:\modelsim_ase\win32aloem
一、仿真设置
首先模块文件为 led_run.v,仿真文件为 tb_led.v,准备好这两个文件后在【Files】导航界面,双击下图所指的【Files】打开工程设置在大概中间位置选择【Simulation】,选择仿真工具(根据自己安装的选择)下方勾选【Compile test bench】,并点击【Test Benches…】
点击【New…】
设置 Test bench 名和顶层模块名,再点击【…】选择仿真文件,再点击【Add】添加
注意: Test bench 名和顶层模块名要和仿真文件的模块名相同,否则仿真的时候找不到文件,如仿真文件为 tb_led.v,两个名字都设为 tb_led
然后连续点击【OK】即可
二、波形仿真
点击【Tools】→【Run Simulation Tool】→【RTL Simulation】运行仿真,这样点击或许有点麻烦,可以在工具栏添加快捷方式,参考博客:Quartus 在工具栏设置功能快捷方式初始界面(也可能是很多个小窗口的界面,右上角【-】可以缩小窗口)
右上角的【+】可以设置窗口满屏化,就如上图所示了
在 Wave 窗口中已有仿真文件的几个信号
Wave 界面白底黑字设置,参考博客:ModelSim 相关实用设置
在【sim】窗口,右键想添加的模块,点击【Add Wave】添加到仿真界面 Wave 中
添加完毕后,可以点击左下角的小按钮【Toggle leaf names <-> full names】显示或隐藏信号路径
上图初始值为【-No Data-】是因为初始一小段时间没有值,之后才有,这我也不太清楚,重新仿真之后初始值又有了工具栏常用仿真工具介绍如下:
我是点击第三个按钮【Run -All】一直仿真(半秒时间就够了),然后点击【Stop】(如果仿真文件中设置了断点处,就不用点击【Stop】),再点击【Zoom Full】让信号充满屏幕,再点击放大镜或者缩小查看波形的某段数值进制设置:右键要设置的信号,点击【Radix】设置相对应的进制,一般十进制设置为无符号型,也就是【Unsigned】选项即可,如下图所示
三、修改代码重新仿真
如果仿真发现有问题,需要修改代码,修改之后需要重新仿真,不需要关掉仿真窗口重新打开,步骤如下在 Wave 界面点击【Ctrl + S】保存仿真文件,记住路径,只点击【OK】即可找到刚刚生成的 do 文件,保存为副本,并重命名(不能有空格、汉字)
重命名后,打开这个 do 文件
将最后四行的前三行删除
添加命令 do wave.do 并保存
修改完代码后,在【Transcript】命令行执行 do led_run.do 命令,输入过程中可以看到有个命令提示弹出
执行命令后,Wave 界面的相关设置还在,如果修改了代码导致信号改变,这里的波形也会改变