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....
即可解决。
Modelsim仿真新手入门最详细教程的更多相关文章
- SpringBoot(1)-新手入门(详细教程+理解)
前话:很多人刚学java没多久就开始学springboot,毕竟springboot屏蔽了很多框架的配置,导致搭建一个项目变得比以前简单很多.但建议还是先把基础的框架都熟悉一遍,再用springboo ...
- discuz插件开发新手入门 超详细
作为一个新手,目前也是刚刚玩转discuz的插件功能,好东西不敢独享,就拿出来大家一起分享入门的过程.现在网上很多关于discuz的插件教程都是很简单的教程,原因可能是这个东西是商业化的东西,本着分享 ...
- c++ 网络编程课设入门超详细教程 ---目录
原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/9663167.html c++ 网络编程(一)TCP/UDP windows/linux 下入门 ...
- 最适合新手入门的SpringCloud教程 6—Ribbon负载均衡「F版本」
SpringCloud版本:Finchley.SR2 SpringBoot版本:2.0.3.RELEASE 源码地址:https://gitee.com/bingqilinpeishenme/Java ...
- SpringBoot入门最详细教程
monkey01 关注 2017.08.08 13:36* 字数 1479 阅读 34248评论 0喜欢 15 网上有很多springboot的入门教程,自己也因为项目要使用springboot,所以 ...
- 利用python 数据分析入门,详细教程,教小白快速入门
这是一篇的数据的分析的典型案列,本人也是经历一次从无到有的过程,倍感珍惜,所以将其详细的记录下来,用来帮助后来者快速入门,,希望你能看到最后! 需求:对obo文件进行解析,输出为json字典格式 数据 ...
- burp suite 基础入门超详细教程
介绍: 都是我个人了解到的信息,,分享给大家 欢迎指正 burp suite 被誉为web安全工具中的瑞士军刀. 大家知道,瑞士军刀,都是体积小,功能强悍,.西方军队的标配.说这么多,只是想强调这款工 ...
- sqlmap基础入门超详细教程
前言: 总算进入了自己喜欢的行业. 要时刻记得当初自己说过的话, 不忘初心. Come on! 资料: 感谢超哥分享的干货.. sqlmap干货点击直达 学习环境: 本次学习使用的是kali集成的s ...
- 前端错误监控,sentry入门配置详细教程
一.前言 最近经理说要把公司项目结合sentry用起来,然后组长不想做,老员工也不想做,分配任务就这么分配给我了,很荣幸接锅,摸索了几天,了解了一些基本配置,深一点的玩法可能还得实践一段时间,这里对于 ...
随机推荐
- 深入浅出WPF-11.Template(模板)01
模板 在WPF中,模板可以分为两大类: 控件模板(ControlTemplate)是算法内容的表现形式,一个控件怎么组织其内部的结构才能让它更符合业务逻辑,让用户操作更舒服,都是由她控制的.它决定了控 ...
- github注册教程最新版(十年程序员保姆级教程)
您可以在墨抒颖的网站体验本文章的纯净版 准备 拥有一个可以接受信息的邮箱即可 开始 点击github官网github step1.进入注册页面 点击Sign Up进入注册流程 step2.输入邮箱 这 ...
- oracle dg failover灾难切换
oracle dg failover灾难切换SQL> alter database recover managed standby database finish force;SQL> a ...
- hexo访问优化之--------gulp压缩
hexo访问优化之--------gulp压缩 hexo生成的博客是静态html页面,当有很多静态资源时,加载速度会非常慢,且github服务器在国外,导致网页加载速度非常差 gulp压缩 gulp是 ...
- 题解 SP6779 【GSS7 - Can you answer these queries VII】
题目传送门 题目大意 给出一个\(n\)个点的树,每个点有权值.有\(m\)次操作,每次要么查询一条链上的最大子段和,要么把一条链的权值都修改为一个常数. \(n,m\le 10^5\) 思路 如果是 ...
- 洛谷2151[SDOI2009]HH去散步(dp+矩阵乘法优化)
一道良好的矩阵乘法优化\(dp\)的题. 首先,一个比较\(naive\)的想法. 我们定义\(dp[i][j]\)表示已经走了\(i\)步,当前在点\(j\)的方案数. 由于题目中限制了不能立即走之 ...
- Kubernetes Job Controller 原理和源码分析(一)
概述什么是 JobJob 入门示例Job 的 specPod Template并发问题其他属性 概述 Job 是主要的 Kubernetes 原生 Workload 资源之一,是在 Kubernete ...
- OSI模型与TCP/IP模型
OSI模型与TCP/IP模型 OSI参考模型: ---开放式系统互联参考模型 OSI/RM ISO ---国际标准化组织 --1979 应用层 ---- 通过应用进程间的交互来完成特定网络应用 表 ...
- 按键检测GPIO输入
1. 项目 通过按键控制开关LED灯,按下按键灯亮,再按一下灯灭. 2. 代码 mian.c #include "stm32f10x.h" //相当于51单片机中的 #includ ...
- 2020年OO助教工作总结
随着这学期课程的落幕,我一学期的OO助教工作也宣告结束.这学期我的工作主要在系统组,和OO后台的数据库打交道. 作业查重 我几乎每周都会做的例行工作,是对每周的homework进行查重管理.由于使用了 ...