Vivado 设置关联使用第三方仿真软件 Modelsim

目录

  • 1.前言
  • 2.Vivado 设置关联使用第三方仿真软件 Modelsim

微信公众号获取更多FPGA相关源码:
在这里插入图片描述

1.前言

Vivado 软件自带有仿真功能,该功能使用还是比较方便的,初学者可以直接使用自带的仿真功能。

Modelsim仿真工具是Model公司开发的。它支持Verilog、VHDL以及他们的混合仿真,它可以将整个程序分步执行,使设计者直接看到他的程序下一步要执行的语句,而且在程序执行的任何步骤任何时刻都可以查看任意变量的当前值,可以在Dataflow窗口查看某一单元或模块的输入输出的连续变化等,比vivado自带的仿真器功能强大的多,是目前业界最通用的仿真器之一。

对于初学者,modelsim自带的教程是一个很好的选择,在Help->SE PDF Documentation->Tutorial里面.它从简单到复杂、从低级到高级详细地讲述了modelsim的各项功能的使用,简单易懂。但是它也有缺点,就是它里面所有事例的初期准备工作都已经放在example文件夹里,直接将它们添加到modelsim就可以用,它假设使用者对当前操作的前期准备工作都已经很熟悉,所以初学者往往不知道如何做当前操作的前期准备。

Modelsim的关联需要参考Vivado的版本,具体信息可以去官网查看,Vivado 2018.3适配的是Modelsim 10.6d可以公众号后台回复Modelsim获得下载链接。

Vivado 2018.3也可以在后台回复Vivado获得下载链接。

2.Vivado 设置关联使用第三方仿真软件 Modelsim

对于想使用 Modelsim 进行关联仿真的,下面将提供 Vivado 设置关联使用第三方仿真软件 Modelsim 的方法步骤,具体如下。

1、打开 vivado 2018.3 软件,在 Tools 下点击 Settings…

启动仿真器关联的设置界面

2、进入 Settings 界面,在界面左侧窗口找到 3nd Party Simulations,然后找到设置第三
方仿真工具安装路径和编译库文件目录的地方。

仿真器选择窗口

3、在 Install Paths 下的 Modelsim 通过点击右侧“…”,选择已经安装好 modelsim 的路径,在 Default Compiled Library Paths 下的 Modelsim 通过点击右侧“…”,选择设置一个目录文件夹,这里我在 modelsim 安装目录下新建了 vivado_lib 的文件夹,并指定到这里。读者可根据自己的情况进行设置。这里设置的路径是 Vivado 仿真编译库文件存放的地址,目前还没有对库文件进行编译生成仿真所需的文件,所以可自己指定(注意不要指向带空格的路径),后面编译库文件生成仿真所需文件时,将目录再设置到这个目录就行。然后点击 OK。

选择仿真器及其存放路径

4、 编译 Vivado 的库供第三方仿真工具 Modelsim 仿真使用。 在 Tools 下点击 Compile
Simulation Libraries…

启动编译仿真库文件

5、进入 Complile Simulation Libraries 界面,需要进行如下一些设置。

(1) 我们使用的第三方仿真工具是 modelsim,在 Simulator 处选择 Modelsim Simulation;

(2) Language 默认选择 All,这里可以根据实际使用情况选择,也可以选择 Verilog 或
VHDL;

(3) Library 默认选择 All;

(4) 器件就根据实际使用情况进行选择,这里选择的器件系列越多,Compile 生成库的时间越长,若需要选择全部的器件,建议可以选择在空闲时间进行编译。

(5) 编译库存放路径,这里路径默认是我们在前面 3nd Party Simulations 上设置的路径,
前面设置过了,这里默认就可以。

(6) 仿真软件 Modelsim 路径,这里路径默认是我们在前面 3nd Party Simulations 上设置
的路径,前面设置过了,这里默认就可以。

设置仿真库文件的相关信息

其他地方保持默认,点击 Compile,出现如下界面,开始编译 vivado 库生成 modelsim仿真库了,这个过程大概需要 40 分钟,如果选择全部器件,时间会更长。

开始编译仿真库

6、仿真库编译完成后,想要使用 Vivado 自动关联调用 Modelsim 进行仿真,还需在 Tool-
->Setting–>Simulation 下对仿真进行如下设置。这里的设置需要在打开一个工程后,打开工
程后才会在 Settings 下有 Simulation 选项。需进行如下设置。

(1) 选择仿真我们使用的第三方仿真软件 modelsim

(2) 语言根据实际情况进行选择,这里可供选择的有 Verilog、 VHDL、 Mixed,保持默认
即可。

(3) 保持默认就 OK

(4) 仿真的顶层文件,选择你要仿真的 testbench 文件,一般在你去点击 vivado 软件的
Run Simulation 时它会默认选择要仿真的顶层 testbench 文件,自己在仿真时可核对下是否
有误。

(5) 选择我们存放编译 Vivado 仿真库的路径,这里会根据之前生成编译库默认为编译库
的路径,我们只要核对下是否有误,有问题就改一下,没有问题就保持默认就 OK。

调用仿真库的存放位置

7、整个设置就完成了,在需要进行仿真时,点击 Run Simulation -->Run behavioral
Simulation 或其他类型仿真就会自动弹出 Modelsim 界面。

启动仿真窗口

8.打开后就可以正常使用

Modelsim 10.6dwave界面

至此, Vivado 设置关联使用第三方仿真软件 Modelsim 就完成了,可以比较方便的通过
Vivado 调用 Modlsim 进行仿真。对于初学者,建议可以直接使用 Vivado 自带的仿真功能。
后面的例程基本也是采用 Vivado 自带的仿真功能进行仿真验证。

微信公众号获取更多FPGA相关源码:
在这里插入图片描述

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

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

相关文章

springboot+vue+mybatis房屋租贷系统+PPT+论文+讲解+售后

本论文系统地描绘了整个网上房屋租赁系统的设计与实现,主要实现的功能有以下几点:管理员;首页、个人中心、房屋类型管理、房屋租赁管理、会员管理、订单信息管理、合同信息管理、退房评价管理、管理员管理,系统管理,前…

分布式ID生成方式

1.UUID uuid方式存在问题:占用字节数比较大;ID比较随机,作为MySQL主键写入库时,为了保证顺序性将导致BTree节点分裂比较频繁,影响IO性能。 2.数据库方式 步长step 3,即为机器的数量。 第一台机器&#x…

2024 Q1企业级SSD市场暴涨,国产努力追赶!

在2024年第一季度,由于对高容量存储需求的激增,企业级固态硬盘(SSD)市场的收入实现了显著增长,达到了37.58亿美元,与上一季度相比增长了62.9%。这一增长主要得益于供应商减产导致的高容量订单需求未得到满足…

大模型高级 RAG 检索策略之混合检索

古人云:兼听则明,偏信则暗,意思是要同时听取各方面的意见,才能正确认识事物,只相信单方面的话,必然会犯片面性的错误。 在 RAG(Retrieval Augmented Generation)应用中也是如此&…

LeetCode 算法:合并区间c++

原题链接🔗:合并区间 难度:中等⭐️⭐️ 题目 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰…

Nginx编译安装+nginx模块

一、I/O模型 处理高并发的时候用 1.1I/O模型简介 同步/异步(消息反馈机制):关注的是消息通信机制,即调用者在等待一件事情的处理结果时,被调用者是否提供完成状态的通知。 同步:synchronous,…

java第二十课 —— 面向对象习题

类与对象练习题 编写类 A01,定义方法 max,实现求某个 double 数组的最大值,并返回。 public class Chapter7{public static void main(String[] args){A01 m new A01();double[] doubleArray null;Double res m.max(doubleArray);if(res !…

Mysql8安装教程与配置(超详细图文)

MySQL 8.0 是 MySQL 数据库的一个重大更新版本,它引入了许多新特性和改进,旨在提高性能、安全性和易用性。 1.下载MySQL 安装包 注:本文使用的是压缩版进行安装。 (1)从网盘下载安装文件 点击此处直接下载 &#…

JavaWeb3 Ajax+Axios+Element+Nginx部署

Ajax 异步JS和XML 1.数据交换&#xff1a;给服务器发送请求&#xff0c;并获取服务器相应的数据 2.异步交互&#xff1a;在不重新加载整个页面的情况下&#xff0c;与服务器交换数据并更新部分网页 同步与异步 原生Ajax <!DOCTYPE html> <html> <body><…

Android——热点开关演讲稿

SoftAP打开与关闭 目录 1.三个名词的解释以及关系 Tethering——网络共享&#xff0c;WiFi热点、蓝牙、USB SoftAp——热点(无线接入点)&#xff0c;临时接入点 Hostapd——Hostapd是用于Linux系统的软件&#xff0c;&#xff0c;支持多种无线认证和加密协议&#xff0c;将任…

Java集合的迭代操作,Set Map接口以及工具类方法

1、集合元素迭代 1.1 集合元素遍历 集合的遍历&#xff1a;把集合中的每一个元素获取出来 使用for遍历 使用迭代器遍历 Iterator表示迭代器对象&#xff0c;迭代器中拥有一个指针&#xff0c;默认指向第一个元素之前&#xff0c; . boolean hasNext()&#xff1a;判断指针后是…

任务3.7 开发名片管理系统

本实战项目以Java语言为基础&#xff0c;精心打造了一个功能全面的名片管理系统。系统采用面向对象的设计原则&#xff0c;通过Card类来封装每张名片的详细信息&#xff0c;如姓名、单位、职位和联系电话等&#xff0c;并提供了标准的访问器和修改器方法以确保数据的安全访问。…

ROS学习记录:自定义消息类型

前言 当我们需要传输一些特殊的数据时&#xff0c;且官方的消息包无法满足需求&#xff0c;我们便可以自己定义一个消息类型。 实验步骤 一、在终端输入cd ~/catkin_ws1/src进入工作空间中src目录 二、输入catkin_create_pkg qq_msgs roscpp rospy std_msgs message_generati…

windows10子系统wsl ubuntu22.04下GN/ninja环境搭建

打开windows10子系统 ubuntu22.04 ubuntu22.04: 首先需要 安装ninja $sudo apt install ninja-build $ ninja --version 1.10.0 安装clang $sudo apt install clang $clang --version Ubuntu clang version 14.0.0-1ubuntu1.1安装gn Github: https://github.com/timniederh…

SDXL终于有了足够好的 Openpose 和 Scribble 模型可以使用了。

SDXL终于有了足够好的 Openpose 和 Scribble 模型可以使用了。 xinsir 发布的Openpose 和 Scribble 模型质量相当好&#xff0c;尤其是 Openpose。不过只支持姿态不支持面部。 再加上前几天的 Anyline 线条预处理器和 Canny 模型。SDXL 的生态在发布快一年的时候成熟了。 模…

太阳能语音警示杆在户外的应用及其作用

一、太阳能语音警示杆的主要应用领域 交通管理&#xff1a;在城市道路、乡村公路、高速公路等交通要道&#xff0c;太阳能语音警示杆可以用于提醒驾驶员注意前方路况、减速慢行或者避让施工区域。例如&#xff0c;在临时施工路段&#xff0c;警示杆可以播放“前方施工&#xf…

Orange Pi AI Pro 开箱 记录

香橙派 AIpro&#xff08;OrangePi AIpro&#xff09;是一款面向AI开发的强大开发板&#xff0c;提供了高性能和多功能的开发环境。我将结合自己的开发经验&#xff0c;详细介绍这款开发板的性能、适用场景及使用体验。 一、产品概述 香橙派 AIpro配备了强大的硬件配置&#…

详解 Flink 的运行架构

一、组件 1. JobManager 作业管理器是一个 Flink 集群中任务管理和调度的核心&#xff0c;是控制应用执行的主进程 1.1 JobMaster JobMaster 是 JobManager 中最核心的组件&#xff0c;负责处理单独的作业&#xff08;Job&#xff09;。JobMaster 和具体的 Job 是一一对应的&…

通过 SFP 接口实现千兆光纤以太网通信4

Tri Mode Ethernet MAC 与 1G/2.5G Ethernet PCS/PMA or SGMII 的连接 在设计中&#xff0c;需要将 Tri Mode Ethernet MAC 与 1G/2.5G Ethernet PCS/PMA or SGMII 之间通过 GMII 接口互联。Tri Mode Ethernet MAC IP 核的工作时钟源为 1G/2.5G Ethernet PCS/PMA or SGMII …