碎碎念:

想要之后尽量将更新频率提高一些!_(:з)∠)_

众所周知Vivado其实自带了仿真工具Vivado Simulator,但是使用起来有些卡顿和延迟(尽管UI非常好看)。

由于Vivado本身支持多种第三方仿真工具,我们可以自己配置所需要的仿真环境。本文介绍Vivado2018.3 & Modelsim DE-64 10.6c来实现更高效的代码仿真。

目录

1 软件安装

1.1 Modelsim 10.6 c的安装

2 仿真配置

3 新建工程时的仿真设置

4 仿真测试

5 修改代码并再次仿真

6 参考博客


1 软件安装

这里不对Vivado 2018.3 的安装进行介绍,具体可以参考正点原子提供的安装教程(或者参考其他教程),默认大家已经安装好了Vivado软件。

在Xilinx官网中明确写出了不同版本的Vivado所对应的第三方仿真工具,大家一定要注意安装对应的版本,否则会报错。

Xilinx Customer Community

我的电脑系统是Windows 10,使用的软件版本是Vivado 2018.3,因此有上图可知需要安装ModelSim 10.6c。

1.1 Modelsim 10.6 c的安装

下载链接:可以关注公众号“Alex的书桌与实验室”,回复“3MS”获取下载链接。

下载后解压文件:

右键点击第三个安装文件,以管理员身份运行,点击下一步,注意安装路径下不能出现中文或者空格。

如果提示目标路径不存在,点击“是”,创建即可。

当出现Add Modelsim To Path选择是。

当出现Install Hardware Security Key Driver时选择否。

出现Modelsim License Wizard时选择Close。

安装完成后,进入modelsim安装目录:

将安装包下的crack.bat、MentorKG.exe复制到win64pe这个目录下。

win64pe目录下的mgls64.dll重命名为mgls.dll。(tips:键盘上的F2是重命名的快捷键)

如下图是修改前:

修改后:

双击运行我们复制进来的crack.bat,等待20s左右,会弹出如下的界面:

我们将所生成的LICENSE.TXT另存为到modelsim的安装目录下,这里我的路径是:D:\ProgramFiles\modelsim_dlx64_10.6c

之后将win64pe目录下修改过名称的mgls.dll文件名字改回到mgls64.dll

在桌面点击“此电脑”-“属性”-“高级系统设置”-“环境变量”。在系统变量下点击新建。

添加系统变量:

变量名:MGLS_LICENSE_FILE

变量值:D:\ProgramFiles\modelsim_dlx64_10.6c\LICENSE.TXT

点击确定,就完成了环境变量的配置。

此时可以打开桌面的图标,(前提是安装过程中选择了在桌面创建快捷方式),验证是否完成了破解。

如果成功打开,证明安装完成。

2 仿真配置

打开Vivado 2018.3。

点击:

之后会弹出如下的界面,对于2018.3来说,我们需要修改这4处:

1:选择仿真器为ModelSim Simulator

2:这个表示编译库的存放位置,我这里在Vivado2018的安装目录下,新建了一个名为Modelsim_Vivado_Lib的文件夹,用来存储编译库。因此路径设置为 D:/ProgramFiles/Xilinx2018/Modelsim_Vivado_Lib

3:这里用来填写modelsim.exe的路径。 D:/ProgramFiles/modelsim_dlx64_10.6c/win64pe

4:这里表示将会编译所有的Xilinx IP核,以后再次使用IP的时候就不需要再次编译了。

设置完成后点击“Compile”即可,Vivado会开始编译,这里花费的时间会比较长,我们可以通过Tcl Console窗口看到编译的过程。

在我的电脑上花费了30分钟的时间进行编译,编译完成后如下:

可以看到遇到了一个问题,经过查找由于很可能不会用到出现问题的IP核,因此直接忽略这个错误提示即可。至此编译完成。

3 新建工程时的仿真设置

对于Vivado来说,每次新建的工程都会默认仿真工具为Vivado Simulator,因此每个新工程都要重新设置一次。

这里我们以正点原子ZYNQ7000系列视频中FPGA例程1_led_twinkle为例进行设置(对于任何工程的设置方法是一样的),设置好之后也可以使用另存为来作为新工程的模板。

首先打开正点原子的例程1_led_twinkle。

点击Tools-Settings...

在弹出的界面选择Simulation标签页,分别设置Target simulator 为 ModelSim Simulator;将Compiled library location 设置为我们之前存储编译库的文件夹路径。

之后选择3rd Party Simulators标签页,分别设置ModelSim的路径为win64pe的路径,并将其默认编译库的位置设置为我们之前存储编译库的文件夹路径。

完成后点击“OK”即可。

4 仿真测试

继续在上面的步骤进行仿真测试,由于工程中正点原子已经提供了tb文件和模块代码,我们直接点击左侧的:SIMULATION-Run Simulation-Run Behavioral Simulation即可。

经过短暂的等待,成功弹出了ModelSim的仿真界面,证明安装配置完成。

5 修改代码并再次仿真

那么如何发挥出Modelsim仿真速度更快的优势呢?通过咨询@公子哥大佬,假设我们已经进行过一次仿真,弹出了modelsim的界面,我们可以按照如下流程实现:

1.修改代码,并保存:

2.在ModelSim DE-64 10.6c 的Library部分找到这库xil_defaultlib。(一定是存在的,并且会对应着你所打开的Vivado工程):

3.选中其中的三个文件重新编译:

Transcript显示编译成功:

 4.打开波形界面Wave,点击重新Restart即可:

6 参考博客

FPGA学习之路—Vivado与Modelsim联合仿真_modelsim和vivado_日拱一卒_未来可期的博客-CSDN博客

https://blog.csdn.net/weixin_42837669/category_10559725.html

modelsim安装小结_add modelsim to path_嵌入式程序员Alpha的博客-CSDN博客


有没有感觉瞬间效率提高了很多?这就是本期的全部内容啦,如果你喜欢我的文章,不要忘了点赞+收藏+关注,分享给身边的朋友哇~

Vivado:【1】Vivado 2018.3 配置ModelSim仿真相关推荐

  1. Vivado级联Modelsim仿真Re-launch问题

    Vivado级联Modelsim仿真出现修改设计代码后重新run do文件,波形没有随着代码修改而改变,这个问题博主之前没有注意到,因为把Vivado和Modelsim级联好后还没有试过仿真过,不过用 ...

  2. Vivado联合ModelSim仿真设置(附图步骤)

    目录 1.在Vivado中生成lib 2.生成库的选择 3.点击Compile,即可开始生成库文件 4.在Vivado中添加ModelSim调用设置 5.将Vivado的仿真库添加到ModelSim中 ...

  3. vivado使用modelsim仿真

    vivado使用modelsim仿真 vivado 修改vivado默认仿真器 将vivado中的IP编译成modelsim库 modelsim 效果 vivado 修改vivado默认仿真器 将to ...

  4. Vivado使用技巧(18):仿真功能概述

    仿真功能概述 仿真FPGA开发中常用的功能,通过给设计注入激励和观察输出结果,验证设计的功能性.Vivado设计套件支持如下仿真工具:Vivado Simulator.Questa.ModelSim. ...

  5. Modelsim仿真操作指导

    目录 一.前言 二.仿真分类 三.RTL级仿真 3.1创建库 3.2 仿真配置设置 3.3 运行仿真 四.常见问题 4.1 # Error loading design 4.2 运行仿真时报错&quo ...

  6. Xilinx MIG DDR3 控制器 Modelsim 仿真

    项目上用到图像拼接,输入的视频流要存DDR3,做个DDR3的Modelsim仿真.软件版本用的Vivado2017.3,这个版本生成的Modelsim仿真库好像跟Modelsim10.6版本才兼容.常 ...

  7. FPGA配合debussy、modelsim仿真环境搭建

    FPGA配合debussy.modelsim仿真环境搭建 一.软件环境搭建 1,modelsim. 2,debussy 二.工程环境搭建 1,生成testbench 2.生成.fsdb波形文件 第一步 ...

  8. ModelSim仿真入门之一:软件介绍

     http://www.cnblogs.com/xd-elegant/p/4093645.html 编写这个教程之前,为了让不同水平阶段的人都能阅读,我尽量做到了零基础入门这个目标,所有的操作步骤 ...

  9. modelsim仿真quartus软件IP核错误及解决办法

    本人作为萌新.在这个寒假第一次接触FPGA,并且在仿真的过程中遇到了很多问题,并且通过互联网发现csdn上有许多大佬分享的心得与资料.虽然很多大佬的思路给了我启发,但是实现过程不够细致,导致仿真过程出 ...

最新文章

  1. 学习Python不错的网站
  2. FPGA 的I/O BANK介绍
  3. Objective - C基础: 第一天 - 5.对象和类
  4. leetcode 209. Minimum Size Subarray Sum | 209. 长度最小的子数组(Java)
  5. Rational Rose 2003 下载、破解及安装方法(图文)
  6. ListView(2)
  7. 什么舱位_把“订舱位”说成book warehouse position,外企不会要你
  8. Share Favorites
  9. NumPy————NumPy广播机制的学习笔记
  10. Windows下后台运行cmd启动的程序
  11. mysql数据库任务计划_MySQL计划任务(事件调度器) Event Scheduler介绍
  12. Wind安装python插件遇到问题怎么办
  13. 金士顿服务器内存条怎么看型号,区分内存条型号的方法
  14. Flex TLF 相关知识
  15. 搜狗公众号爬虫学习系列一公众号的biz
  16. uva10056(概率+等比求和)
  17. 【二叉树前/先序DLR中序LDR后序LRD遍历及镜像翻转,so esay~】
  18. Tetris项目总结
  19. DevExpress中动态设置主题、皮肤
  20. mysql 事务机制

热门文章

  1. 果集数据:从化妆镜切入“她”赛道,Amiro如何挖掘科技美护市场新机会?
  2. Javascript中四舍六入五成双
  3. 个人家用nas_家庭私有云盘系列教程-本地搭建家庭NAS方案
  4. 【最短路径树】 [USACO09JAN]Safe Travel G
  5. 运动图像目标检测与跟踪简述
  6. otg烧写linux内核,Linux——OTG方式烧写镜像文件步骤总结
  7. Object.assign方法的使用和splice方法用法
  8. 计算机专业排名211大学排名,计算机专业大学排名,计算机专业强的211!
  9. get the sack
  10. python curl 获取返回值_python-将curl查询转换为请求