Modelsim仿真新手入门最详细教程
2021年11月15日
00 安装包/版本
我是提前在网上下好的(但这一点也给我的实验造成了“麻烦”),用的是Modelsim SE-64 2020.4版本的,学校实验室的似乎不同。但最终没有太大影响。
01 配置环境步骤
学校有一个文档,在机房电脑照做就行。我因为是自己下载的,配置与机房软件有所不同,所以又平添了很多麻烦。
01-0 verilog文件
这个代码可以在很多地方编写:Visual Studio Code里有Verilog的插件;还可以有更强大的语言编辑器:Nodepad++。
这里我使用的是Nodepad++,因为看上去专业一点。
Nodepad++的页面效果如图:
其实第一次上机,老师会给大家示例文件(包括设计代码与测试代码),跑出来示例波形就行。
01-1 具体步骤
-
新建一个用于安放project的文档,放在哪里都行。
把前面做出的.v文件添加到这个文档。
留意一下路径。
-
打开modelsim,在jumpstart中create a new project。
-
在弹出的提示框里browse,找到刚才的文件夹。选中。
填写project 名,注意要与.v文件里的module名保持一致。点击ok。
-
进入页面后会是这样子:
注意此处两个文件后面应当都有问号,代表没有编译。先逐个右击文件add to this project确保加入。
-
在上方提示栏中complie->compile all。
稍等些许会看到文件后问号全部变为对勾,表示代码编译通过,没有问题。
如果此步出错则代表代码有bug。在下面的Transcript中上翻查找错误。
-
点击上方Simulate->start simulation。
由于注意与实验室不同的,选中下面的Enable optimization,再在右侧Optimization Options中的Visibility中选中Apply full visibility....
-
接着在work里找到测试代码的文件,选中。
-
在弹出页面中的Object栏目(此处会有测试代码中设置的一些变量)中右击空白处,add to ->wave ->Signals in Region.
-
可见最右侧wave模块中出现这几个变量。
-
点击上方simulate -> run -> run all。即可出现波形图。
10 问题解决
这里记录一下配置过程中遇到的一些问题及其解决。
10-0 与nodepad++绑定
网上的办法是在控制面板中直接输入
proc external_editor {filename linenumber} { exec "I:/notepad++/notepad++.exe" $filename }
回车后
set PrefSource(altEditor) external_editor
其实也可以在创建的那个文件夹里,选中.v文件,右击打开方式,找到nodepad++并设为默认即可。
10-1 modelsim 仿真后object区没有变量
解决方案上面提到了。
就是在点击仿真后弹出的窗口中,选中Enable optimization,再在右侧Optimization Options中的Visibility中选中Apply full visibility....