Modelsim使用指南
Modelsim使用指南
本文讲述Modelsim的使用步骤.
添加一个测试文件,比如modulename.v。
编辑这个Verilog模块。
为了方便讲述,顶层模块名命名为“top”。
Modelsim的参考文档可从:Help > PDF Documentation >选择下载。
1. 设置
如同之前建议的文件组织结构所述,条理清晰的目录会给设计带来很多方便。建议建立一个文件夹,包含以下子文件夹:
l hdl/ 硬件的Verilog设计文件
l simulation/ Modelsim相关文件
l synthesis/ Quartus相关文件
l testbench/ Verilog测试文件
运行SystemBuilder建立一个Quartus工程。顶层模块的设计文件放到hdl/目录下,其他文件放到synthesis/目录下。
2. Modelsim的操作步骤
1. 从开始菜单或桌面快捷方式打开Modelsim。
2. Modelsim会自动打开上一次的工程。如果不新建工程,跳过第4步。
3. Simulate > Runtime Options… > Defaults 标签 > Default Radix:binary 这样波形以二进制的形式显示。
4. File > New > Project …
a) 输入工程名:top。
b) 打开simulation/目录。
c) 缺省的库名用“work”。
d) 单击“Reference Library Mapping”
e) 单击OK.
f) 弹出Add items to the Project窗口
i. 单击Add Existing File(添加硬件设计的Verilog文件)
ii. Browse …切换至hdl/目录,选中所有的*.v的文件,单击Open
iii. 单击Reference from current location
iv. 单击OK
g) Add Existing File(添加Verilog测试文件)。把testbench/目录里的测试文件添加到当前工程。
h) Close
i) 现在在窗口可以看到所有的文件。
5. 若稍后要添加更多的*.v文件。在Project窗口右击 > Add to Project > Existing File …
6. Compile 〉Compile All …
7. 如果有错误信息提示,双击红色的错误信息,查看问题所在。
8. Simulate > Start Simulation > 弹出仿真窗口
a) 单击work前的+
b) 单击测试文件top_tb
c) OK
9. 如果没有看到波形窗口,View > 选择Wave
10. 在窗口左边,单击底部的sim标签,选中测试文件拖拽到波形窗口,这样就把所有的信号添加到波形窗口。
11. Simulate > Run > Run –All(也可用工具栏的按钮).
12. 右侧的窗口会在底部有好几个标签页:Wave和测试文件*.v.单击Wave标签。
13. 按下f键把波形缩放至全屏,或者右击波形窗口,选择相应的缩放项。
14. 右击波形窗口里的信号名,选择合适的Radix便于观测。
15. 如果某些信号没有在波形窗口出现,或者模块修改之后,需要重新仿真。
a) Simulate > Restart
b) 选择全部。
c) OK
d) Simulate 〉Run〉Run –All
e) 如果修改了设计,需要先重新编译,在Project页,右击问号图标的文件,选择Compile out-of Date,然后再执行Compile All,变成绿色的勾后,执行d).
References
1.A Guide for Using Modelsim. EEC 180 • UC Davis • B. Baas . https://www.ece.ucdavis.edu/~bbaas/180/tutorials/modelsim.guide.pdf
Written by YongfengXie
2022/5/25 Written
Modelsim使用指南的更多相关文章
- FPGA/SOPC学习转载
转自小時不識月http://www.cnblogs.com/yuphone/archive/2010/08/27/docs_plan.html 新网址为:http://andrewz.cn [连载计划 ...
- 用ModelSim仿真SDRAM操作
之前写了两篇关于Modelsim仿真的blog,其中模块管脚的命名可能让人觉得有些奇怪,其实不然,之前的两篇内容都是为了仿真SDRAM操作做铺垫的. 由于SDRAM的仿真过程相对比较复杂,也比较繁琐. ...
- modelsim脚本文件的编写
第一章 ModelSim介 绍 本指南是为 ModelSim5.5f版本编写的,该版本运行于UNIX和Microsoft Windows 95/98/Me/NT/2000的操作系统环境中.本指南覆盖了 ...
- modelsim使用命令
1. 常用仿真命令 vlib work // 建立work仿真库 vmap work wrok // 映射库 vlog -cover bcest *.v // 加覆盖率分析的编 ...
- 【黑金原创教程】【Modelsim】【第一章】Modelsim仿真的扫盲文
声明:本文为黑金动力社区(http://www.heijin.org)原创教程,如需转载请注明出处,谢谢! 黑金动力社区2013年原创教程连载计划: http://www.cnblogs.com/al ...
- (转)新手学习System Verilog & UVM指南
从刚接触System Verilog以及后来的VMM,OVM,UVM已经有很多年了,随着电子工业的逐步发展,国内对验证人才的需求也会急剧增加,这从各大招聘网站贴出的职位上也可以看出来,不少朋友可能想尽 ...
- JavaScript权威指南 - 函数
函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...
- UE4新手之编程指南
虚幻引擎4为程序员提供了两套工具集,可共同使用来加速开发的工作流程. 新的游戏类.Slate和Canvas用户接口元素以及编辑器功能可以使用C++语言来编写,并且在使用Visual Studio 或 ...
- JavaScript权威指南 - 对象
JavaScript对象可以看作是属性的无序集合,每个属性就是一个键值对,可增可删. JavaScript中的所有事物都是对象:字符串.数字.数组.日期,等等. JavaScript对象除了可以保持自 ...
- JavaScript权威指南 - 数组
JavaScript数组是一种特殊类型的对象. JavaScript数组元素可以为任意类型,最大容纳232-1个元素. JavaScript数组是动态的,有新元素添加时,自动更新length属性. J ...
随机推荐
- Flume入门操作
十一.Flume 1)开启Flume的监控端口 bin/flume-ng agent -c conf/ -n a1 -f job/flume-netcat-logger.conf -Dflume.ro ...
- 敏捷MVP面面观
在过去的十年中,软件开发经历了许多阶段.从使流程敏捷高效到使用DevOps简化IT服务,已经有了许多突破,MVP是对软件开发过程产生了根本性影响的进步之一.本文将深入探讨MVP在软件开发中怎样起作用. ...
- 15 CSS总结
15 CSS总结 到此,css的知识就结束了,掌握这些知识,搞爬虫足够了.如果朋友还有兴趣可以去css其他学习网站去看看其他的一些属性用法,(菜鸟教程 https://www.runoob.com/c ...
- JDK14性能管理工具:jmap和jhat使用介绍
目录 简介 jmap clstats finalizerinfo histo dump jhat 总结 简介 我们在写代码的过程中,经常会遇到内存泄露的问题,比如某个集合中的对象没有被回收,或者内存出 ...
- [IOI2000]邮局 题解
简要题意 线段上有 \(V\) 个村庄,现在要建 \(P\) 个邮局,使每个村庄到最近的邮局的距离之和最小. 50分做法 设\(dp[i][j]\) 表示第一个村庄到第 \(i\) 个村庄,建了 \( ...
- [一本通1681]统计方案 题解(Meet in mid与逆元的结合)
题目描述 小\(B\)写了一个程序,随机生成了\(n\)个正整数,分别是\(a[1]-a[n]\),他取出了其中一些数,并把它们乘起来之后模\(p\),得到了余数\(c\).但是没过多久,小\(B\) ...
- Linux忘记root密码修改方法
1. 再开机启动的时候按键盘上的"e"键会出现如下界面.再次按"e"键进行选择相应的内核. 2. 选择相应的内核,再次按"e". 3.经过第 ...
- 使用Helm部署Wikijs
使用 Helm 部署 Wiki.js ️ 参考文档: Wiki.js 官方文档 - 安装 - Kubernetes Wiki.js 使用 Helm 安装 Wiki.js 官方文档 - 安装 - 侧加载 ...
- HarmonyOS Connect FAQ第三期
原文:https://mp.weixin.qq.com/s/YpI9-k4yQvNhaMfg7Li82g,点击链接查看更多技术内容. 在开发HarmonyOS Connect生态产品时,你是否对设 ...
- 本周三晚19:00 Hello HarmonyOS进阶课程第6课—短视频应用开发
短视频应用软件的开发一直保持着快速发展,在用户流量增长和规模扩大的同时,短视频行业的受欢迎程度也在持续上升.在生活节奏不断加快的今天,人们过着越来越充实的生活,碎片化已经渐渐成为人们习以为常的节奏,比 ...