【FPGA入门】第三篇、modelsim软件的仿真与应用

news2025/1/10 23:55:43

目录 

第一部分、写在前面

第二部分、关于modelsim软件的相关使用

1、modesim软件新建工程

2、文件报错的解决办法

3、仿真的办法

4、仿真的软件上面的功能按键丢失

5、不同波形颜色的仿真代表的问题

5.1、红色的波形:不定态信号(X态)

5.2、蓝色的波形:高阻态(Z态)

6、更改仿真代码后,如何重新仿真

7、打开仿真工程的办法

8、添加内部模块和添加外部模块观看波形的区别

9、modesim仿真文件脚本的建立及使用

10、modelsim窗口被关闭,恢复默认的状态

11、用ISE软件打开modelsim时,更改了文件重新输入指令

 第三部分、总结


第一部分、写在前面

        本篇博客主要我在使用modelsim软件时做的一些笔记,我认为这些对于初学者还是有比较大的帮助,很多错误都是用了好久才出现了,这里全部整理在这里。

        其次这篇博客可能关于modelsim软件的使用还不够齐全,我后面会逐渐补充完整。

第二部分、关于modelsim软件的相关使用

1、modesim软件新建工程

第一步、File——New——Project

 第二步、输入名称,选择仿真文件的路径

        work文件夹用来保存RTL网表,其他的保持默认。

 第三步、添加需要仿真的.v文件,添加模块文件

 添加成功后显示一个问号

 第四步、编译文件的方式

2、文件报错的解决办法

第一步、编译文件后报错,一般是添加的.v文件代码错误,双击错误,看一下出错的地方

 3、仿真的办法

第一步、点击左下角的Library,work文件夹下面有两个文件

 第二步、右键写好的Testbench文件,右键选择第一个sim

 第三步、分别将object中的端口添加到波形窗口去观察波形

 第四步、弹出的波形窗口

第五步、运行仿真,查看波形

 第六步、更改代码后重新载入的方式

 第七步、波形缩放的方式

第八步、端口分组的方式

 第九步、只关注端口变量名称的方式

 Tools下的window preference更改

 更改后的结果

4、仿真的软件上面的功能按键丢失

5、不同波形颜色的仿真代表的问题

5.1、红色的波形:不定态信号(X态)

问题的原因:出现这样的情况,有一种可能的原因就是没有对这些信号进行初始化(未初始化表示高阻态),所以在modelsim中认为输入信号为高阻态(z),输出信号为不定态(x)。

注意:reg类型的变量可以赋初始值(reg 是时序逻辑才可以 在fpga里赋值初始值),wire类型的不可以。

 5.2、蓝色的波形:高阻态(Z态)

问题的原因:出现这样的情况,表示设计者不驱动这个信号(既不给0也不给1),表示“不驱动总线”这个行为。也就是这个信号你用都没用。

6、更改仿真代码后,如何重新仿真

7、打开仿真工程的办法

第一步、File——Open

第二步、选择.mpf文件

8、添加内部模块和添加外部模块观看波形的区别

内部模块包含了所有信号且表明的输入输出,而顶层模块只包含了输入输出端口信号

9、modesim仿真文件脚本的建立及使用

        注意:如果使用脚本,更改代码后,都只能从新运行脚本

第一步、新建一个.txt文件,输入名称,修改后缀为.tcl

 第二步、在.tcl文件中,编写如下代码

        注意:少一个空格都报错,格式要求有点高 

quit -sim

.main clear

vlib work

vlog ./"仿真文件名".v
vlog ./../design/*.v

vsim -voptargs=+acc work."modelsim工程名称"

add wave /"modelsim工程名称"/"顶层例化名称"/*

run 1us

第三步、modelsim软件中设置新建.tcl文件的路径,选择存放.tcl文件的文件夹

 第四步、在.tcl文件所在的文件夹

第五步、在modelsim的命令行:输入指令do rundo.tcl。这里软件会自动补全,按下键盘的⬇,选中补全内容。

 10、modelsim窗口被关闭,恢复默认的状态

11、用ISE软件打开modelsim时,更改了文件重新输入指令

do 仿真文件名称.fdo

 第三部分、总结

        以上为使用modelsim软件遇到的相关问题,希望我的记录对你有帮助。😛😛😛

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/655885.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【前端 - CSS】第 18 课 - 背景属性

欢迎来到博主 Apeiron 的博客,祝您旅程愉快 ! 时止则止,时行则行。动静不失其时,其道光明。 ​​​​​​​ 目录 1、缘起 2、背景属性 2.1、背景图 2.2、背景图平铺方式 2.3、背景图位置 2.4、背景图缩放 2.5、背景图…

软件开发人员必须阅读的20本书

本文翻译自国外论坛 medium,原文地址:https://irina-seng.medium.com/top-20-books-a-software-developer-must-read-updated-b24bcc9ee3d 持续学习的心态是软件开发人员想要保持专业相关性并增长自身价值的关键品质。 在这篇博文中,我将推荐…

dp算法篇Day6

"垂死坚持啊" 26、环绕字符串中唯一的子字符串 (1) 题目解析 (2) 算法原理 class Solution { public:int findSubstringInWraproundString(string s) {int n s.size();vector<int> dp(n,1);for(int i1; i<n; i){if(s[i-1]1 s[i] || (s[i-1]z && …

JS 刷新保持iframe页面并支持浏览器前进后退

参考资料 html5新特性&#xff1a;利用history的pushState等方法来解决使用ajax导致页面后退和前进的问题击按钮切换iframe的src&#xff0c;这个路径如何不会被记录到history中&#xff1f;iframe 后退 浏览器history 问题ajax与HTML5 history pushState/replaceState实例 目…

Matlab论文插图绘制模板第104期—带缺口的分组箱线图

在之前的文章中&#xff0c;分享了Matlab分组箱线图的绘制模板&#xff1a; 进一步&#xff0c;再来分享一下带缺口的分组箱线图的绘制模板。 先来看一下成品效果&#xff1a; 特别提示&#xff1a;本期内容『数据代码』已上传资源群中&#xff0c;加群的朋友请自行下载。有需…

PyQT5介绍及基本使用

文章目录 PyQt51. PyQt5的下载与安装1.1 PyQt5介绍1.2 windows PyQt5的安装 2.PyQt5基本UI2.1 第一个PyQt程序2.2 argv2.3 模块介绍 3.基本UI3.1 按钮QPushButton3.2 文本QLabel3.3 输入框3.4 调整窗口大小3.5 调整窗口显示屏幕中间3.6 设置窗口icon 4.布局4.1 QBoxLayout4.1.1…

Spring Security系列之授权(Authorization)架构

文章目录 AuthorizationManagerAuthorizationFilterRequest Matcher AuthorizationManager AuthorizationManager 被授 AuthorizationFilter 调用&#xff0c;负责做出最终的访问控制决定。AuthorizationManager 接口包含两个方法。 default void verify(Supplier<Authent…

ABBYY FineReader15最新版图片文字识别转换软件

在日常生活中&#xff0c;我们会遇到需要将各种文字、图片、扫描图片等转换为文字的情况。想要轻松解决这些问题&#xff0c;需要使用到OCR文字识别。但对于许多新手来说&#xff0c;OCR文字识别是陌生的。今天小编就给大家介绍一下&#xff0c;OCR文字识别怎么使用&#xff0c…

RabbitMQ如何保证消息幂等性

用户对于同一操作发起的一次请求或者多次请求的结果是一致的&#xff0c;不会因为多次点击而产生副作用。 举个简单的例子&#xff0c;那就是支付&#xff0c;用户购买商品后支付&#xff0c;支付扣款成功&#xff0c;但是返回结果的时候网络异常&#xff0c;此时钱已经扣了&am…

DJ8-4 shell 语句的分类、shell 的结构性语句

目录 8.7 shell 编程 8.7.1 shell 编程的基本过程 8.7.2 实例 8.7.3 shell 程序和语句 8.8 说明性语句和功能性语句 8.8.1 说明性语句&#xff08;注释行&#xff09; 8.8.2 常用的功能性语句 8.9 结构性语句 8.9.1 条件语句 if 8.9.2 测试语句 test 8.9.…

什么牌子的电容笔质量好耐用?平板第三方电容笔了解下

苹果的电容笔和普通的电容笔有何区别&#xff1f;其实&#xff0c;就书写情况而言&#xff0c;两者相差不多。只是苹果电容笔生在重量上&#xff0c;更加的沉重&#xff0c;而且还配备了一个特殊的重力传感器&#xff0c;能够准确的感觉到重力对线条的粗细变化。由于苹果这款产…

手机操作系统的沉浮往事(上)

移动终端操作系统&#xff0c;也就是指手机、平板电脑等设备所使用的操作系统。 在移动互联网高度发达的今天&#xff0c;我们使用移动终端操作系统的时长&#xff0c;可能已经远远超过了Windows等桌面操作系统。 那么&#xff0c;你真正了解这些移动终端操作系统吗&#xff1f…

抖音seo源码开发部署技术解析

抖音seo源码开发是一项非常重要的技术&#xff0c;开发需要深入了解抖音平台的特点和用户需求&#xff0c;积累丰富的SEO经验&#xff0c;并不断学习和更新SEO技能&#xff0c;才能不断提高视频在搜索引擎中的曝光率和播放量。 抖音seo开发需要哪些技术 了解抖音的算法和规则&…

浏览器被2345劫持了怎么搞

起因我下载了某些修改东西&#xff0c;然后就被2345篡改了浏览器的数据。我是在虚拟机里下载的&#xff0c;但是虚拟机其实也是物理机的一部分&#xff0c;实际上下载的还是到了物理机里面&#xff0c;于是浏览器打开就变成了2345的导航页面 1 解决方案&#xff1a; 浏览器主页…

DJ8-2 shell 的命令形式、shell 的变量、shell 的内部命令

目录 8.3 shell 可识别的命令形式 8.3.1 单条命令 8.3.2 多条命令 8.3.3 复合命令 8.3.4 后台命令 8.4 shell 变量和引用符 8.4.1 环境变量 plus. echo 命令的使用 8.4.2 系统变量 8.4.3 局部变量&#xff08;用户变量&#xff09; 8.4.4 单引号、双引号、…

跨境电商领域的ChatGPT使用攻略

今天分享一个电商领域的ChatGPT应用指南! 一、写谷歌广告词 提示词: 现在你是一名谷歌广告的编写人员&#xff0c;你需要为xxx产品写10条谷歌广告标题和谷歌广告描述。要求是: 1.用英文输出你的答案 2.广告的标题和广告描述的字数等要符合谷歌的标准 3.广告要引人入胜&#xf…

OceanBase—01(入门篇——使用docker安装OceanBase以及介绍连接OB的几种方式)

OceanBase—01&#xff08;入门篇——使用docker安装OceanBase以及介绍连接OB的几种方式&#xff09; 1. 前言1.1 安装部署参考1.1.1 安装前提1.1.2 参考 1.1 修改数据库用户名密码1.2 总结常见连接命令 2. 安装部署OceanBase2.1 启动 OceanBase 数据库实例2.1.1 默认拉取最新版…

代码审计——XSS详解

为方便您的阅读&#xff0c;可点击下方蓝色字体&#xff0c;进行跳转↓↓↓ 01 漏洞描述02 审计要点03 漏洞特征04 漏洞案例05 修复方案 01 漏洞描述 跨站脚本攻击&#xff08;Cross Site Script&#xff09;是一种将恶意JavaScript代码插入到其他Web用户页面里执行以达到攻击…

没网络的CentOS7的Docker容器安装Java诊断神器Arthas

操作过程 1. 先把jar包下载到本地的windwos2. 打包复制到服务器3. 启动容器设置4.重启容器并使用Arthas 1. 先把jar包下载到本地的windwos 下载地址 下载好后jar&#xff0c;然后CMD执行命令 java -jar arthas-boot.jar 然后随便进入某个jvm进程查看&#xff0c;会见到Conso…

【技术新趋势】面向图像文档的版面智能分析与理解

目录 一、什么是OCR&#xff1f;什么是版面分析理解&#xff1f;二、文档版面分析2.1、版面布局类型2.2、面向文档图像版面分析的实例分割2.3、逻辑结构分析 三、文档版面理解3.1、位置嵌入3.2、表格数据提取 四、智能文档处理技术新解决方案 人类撰写文档是为了记录和保存信息…