Vivado&ISE&Quartus II调用Modelsim级联仿真
博主一直致力寻找高效的工作方式,所以一直喜欢折腾软件,从刚开始只用软件IDE自带的编辑器,到Notepad++,再到后来的Vim,从用ISE14.7自带的Isim仿真,到发现更好的Modelsim,再到使用do脚本自动化仿真,乐此不疲。之前一直使用Modelsim独立仿真,虽然好用,但是对于IP Core的仿真可真是麻烦,需要找到对应的IP Core库文件,所以博主一直在寻找把FPGA开发工具和Modelsim级联起来的方法,终于被我找到,分享出来!
Vivado2017.3与Modelsim级联仿真
首先在Modelsim的安装目录下新建一个文件夹,命名随意,知道是Vivado的库文件就行了。
打开一个Vivado工程,点击上方菜单栏Tools——>Compile Simulation Libraries
按上图所示选择,上面是刚才新建好要综合到的Vivado的库文件,下面是Modelsim的安装路径。设置完成后点击Compile,综合Vivado的库文件。
这个过程应该是持续半个小时或者更长,依个人电脑性能而定。
综合完成后会在Tcl Console打印出这样的信息,这都是综合好的库文件,可以看到是0Errors 警告可以忽略。
打开刚才Modelsim安装路径下新建的库文件可以看到生成了很多文件夹。
回到Vivado,点击左边Flow Navigtor的Setting——>Simulation,选择仿真工具为Modelsim,综合库文件路径指定到刚才生成好的路径。Apply。
选择3rdParty Simulators,按如图所示添加Modelsim安装路径和仿真库路径。Apply。
打开编译好的库文件夹,下面有一个modelsim.ini的文件,打开
找到如图所示部分,复制,如果你全编译了,得好老一大段呢。
然后打开Modelsim安装路径下的modelsim.ini这个文件
把刚才那段粘贴到这里。
点击Run Simulation——>Run Behavioral Simlation进行行为级仿真。
如果一直卡在这个界面,这个时候就要看下Tcl Console,窗口打印的信息了,应该是有错误或警告,Modelsim仿真时,变量必须定义在代码使用这个变量中出现之前,这个如果用过Modelsim的朋友应该会深有体会。自行解决。
一切都没有问题后,当然就会出仿真波形了。下面是重点了。
Vivado会在仿真时候在如图工程路径里生成这么几个do文件,关于do文件我前面介绍过,即自动化仿真脚本,我们只需要修改这些do文件,在Modelsim中的Transcript窗口输入do xxx.do命令即可。
键入do再按键盘↑键会自动弹出可以运行的do文件,按下Enter即可运行。
这里的后缀为udo的这个文件是Xilinx提供的用户do文件,要添加do文件的内容应该是在这里面添加,比如需要在Wave里添加其他模块的波形,直接在这个udo文件里添加相应的代码就好了。
Vivado定制一键操作工具
这里还有一个小技巧,就是Viado自定义一键操作工具,这里自定义一个Modelsim的一键仿真图标,点击就可以直接进入仿真。
点击Tools——>Custom Cpmmands——>Customzie Commands弹出如下界面。
点击如图所示+号,键入modelsim_sim,回车。
找一个Modelsim的图标图片保存在modelsim的安装路径下,图片格式为png。
按如图所示设置,从上到下,Shorcut可以设置快捷键,这里需要添加一个Tcl脚本(如下),添加modelsim图标路经,Apply。
脚本中个人要修改的是刚才编译的Vivado库文件的路径。
完成后就会在菜单栏生成一个Modelsim的图标,点击图标便可以直接进入仿真界面。
ISE14.7级联Modelsim仿真
折腾完了Vivado,咱们来继续折腾一下ISE,我们知道ISE到14.7版本就停更了,虽说最近出了个Win10版本,但是我装了下,打开就跟打开了个虚拟机似的,不习惯。虽然ISE14.7在Win10上有多个兼容性问题,不过博主都一一找到了解决办法,一直用着感觉还可以。下来整整它和Modelsim联合仿真吧。
在ISE14.7安装路径下,找到compxlibgui.exe这个可执行文件,点击运行。
如果出现上图错误,这可能是在解决win10兼容性问题的时候修改了一些文件,可以在开始菜单里,找到simulation library compilation打开。
接下来会弹出如上窗口,选择Modelsim SE,和Modelsim安装路径。
语言选择Both没准啥时候还会用到。
这里选择需要编译的库文件,可以全选,也可以吧CPLD器件勾选掉,应该不会用到了吧。
Next~
在Modelsim安装路径下新建一个ISE14.7的库文件夹,把要编译的路劲指向这个文件夹。
看网上一个博主说这个过程得快一个小时,我的电脑不到十分钟,七代I7-7700果然强悍(逃)。
Finish编译完成。
打开编译好的库文件夹,下面有一个modelsim.ini的文件,打开
找到如图所示部分,复制,我这里编译的库较少,所以只有这些,如果你全编译了,得好老一大段呢。
然后打开Modelsim安装路径下的modelsim.ini这个文件
把刚才复制的那段粘贴到这里。
打开ISE点击Edit——>Preferences——>设置Modelsim的运行路径
点击设置配置,将仿真工具设置为Modelsim SE。
然后就可以点击如图所示,弹出的窗口选择No直接仿真了。
接下来还是要提的是,ISE同样会生成自动仿真脚本。在ISE的工程目录下。在Transcript下面按↑键可自动弹出do xxx.fdo脚本命令,Enter运行。同样用户也是修改udo脚本,来添加波形。
QuartusII级联Modelsim进行仿真
顺带也折腾下QuartusII吧,其实对于QuartusII,博主是一直使用Modelsim独立仿真的,因为QuartusII的IP Core在设置的时候会告诉你用到了哪个库文件,只需要在仿真的时候把对应的库文件添加到工程里就可以了。不过调用起来其实也不麻烦,干起来。
点击上方菜单栏Tools——>Options,在EDA Tools Options中选择Modelsim软件的运行路径。
OK
上方菜单栏点击Assignments——>Setting按图所示,选择仿真工具为Modelsim。然后添加test bench文件。
点击New~
将写好的测试文件添加进来,上面的命名必须与testbench文件一致,否则会报错。
设置完成后点击OK。
OK
OK~
点击Tools——>Run Simulation Tool——>RTL Simulation,可直接运行仿真。
运行过程中如果弹出这个Error,是因为Modelsim没有破解成功,需要重新破解,破解完成后,重启软件即可。
同样的QuartusII在工程目录下也会生成一个do文件,用户可直接修改进行仿真了。
关于do文件的使用和模板,可以看我之前发的一片博文。Modelsim中使用TCL脚本编写do文件实现自动化仿真
转载请注明出处:NingHeChuan(宁河川)
个人微信订阅号:开源FPGA
如果你想及时收到个人撰写的博文推送,可以扫描左边二维码(或者长按识别二维码)关注个人微信订阅号
知乎ID:NingHeChuan
微博ID:NingHeChuan
原文地址:http://www.cnblogs.com/ninghechuan/p/8999078.html
Vivado&ISE&Quartus II调用Modelsim级联仿真的更多相关文章
- 【转】Quartus II调用modelsim无缝仿真
Quartus II调用modelsim无缝仿真 ★emouse 思·睿博客文章★ 原创文章转载请注明:http://emouse.cnblogs.com 本篇文章为转载,写的不错,最近在学mode ...
- Quartus II调用modelsim无缝仿真
本篇文章为转载,写的不错,最近在学modelsim仿真,网上的教程很乱,把自己认为不错的整理贴出来,后面有机会会写个详细点的. Quartus 中调用modelsim的流程 1. 设定仿真工具 ass ...
- [原创][FPGA]Quartus中调用Modelsim波形仿真步骤说明
0. 简介 在使用QuartusII软件的过程中,经常地需要跑仿真,那么说到仿真就不得不说Modelsim这个仿真软件了,我们这里介绍下该软件在QuartusII中的使用方法. 1. 建立Quartu ...
- Quartus II 与 Modelsim 联调【转】
Quartus II 9.0版本的时候软件还有自带的仿真工具,现在安装的是11.0以上版本,才发现 Quartus II 11.0以上取消了软件自带的波形仿真工具,因此需要波形仿真就要调用专业的仿真工 ...
- Viavdo&ISE&Quartus II级联Modelsim级联仿真
博主一直致力寻找高效的工作方式,所以一直喜欢折腾软件,从刚开始只用软件IDE自带的编辑器,到Notepad++,再到后来的Vim,从用ISE14.7自带的Isim仿真,到发现更好的Modelsim,再 ...
- Quartus II 使用 modelsim 仿真
转自:http://www.cnblogs.com/emouse/archive/2012/07/08/2581223.html Quartus 中调用modelsim的流程 1. 设定仿真工具 as ...
- Quartus 中调用modelsim的流程及*.vt或*.vht自动生成
一.自动生成验证程序testbench的方法,setting-EDA Tool->simylation->选择对应的语言(verilog对应*.vt,VHDL对应*.vht)process ...
- Quartus II 与modelsim连接不上的问题
在Quartus II 中tools>options>General>EDA Tool Options 设置modelsim 路径 说明:不管是Quartus II 与modelsi ...
- (转)Quartus II和Modelsim的联合仿真(详细)
这篇文章不需要在modelsim中建库.映射.建工程等一些繁琐的步骤,直接使用modelsim中的默认work库.使用quartus+modelsim联合仿真. 首先推荐一篇文章 http://www ...
随机推荐
- jquery 绘图工具 flot 学习笔记
今天想做一个统计图表,像163博客的流量统计一样的,借助 flot 实现了,而且很简单. flot网址:http://code.google.com/p/flot/ 下载 JS 文件,使用方法和 jq ...
- 建立SSH隧道从外网访问内网服务器
http://blog.trackets.com/2014/05/17/ssh-tunnel-local-and-remote-port-forwarding-explained-with-examp ...
- bzoj 3879: SvT
Description (我并不想告诉你题目名字是什么鬼) 有一个长度为n的仅包含小写字母的字符串S,下标范围为[1,n]. 现在有若干组询问,对于每一个询问,我们给出若干个后缀(以其在S中出现的起始 ...
- JVM体系结构之三:方法区之2(jdk1.6,jdk1.7,jdk1.8下的方法区变迁)
方法区 方法区存储虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据.HotSpot中也称为永久代(Permanent Generation),(存储的是除了Java应用程序创建的对象之 ...
- linux下,一个运行中的程序,究竟占用了多少内存
linux下,一个运行中的程序,究竟占用了多少内存 1. 在linux下,查看一个运行中的程序, 占用了多少内存, 一般的命令有 (1). ps aux: 其中 VSZ(或VSS)列 表示,程序占用 ...
- F5 源地址保持
Virtusl Server: Web Portal 建议选择成Source_Addr(源地址保持).因为Web Portal提供WEB服务给用户访问,压力比较大,而源地址保持的方式处理速度比Cook ...
- java之RestTemplate的访问应用
一.REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格.它是 ...
- java之Jsch实现Linux的文件上传与下载
一.JSch是Java Secure Channel的缩写.JSch是一个SSH2的纯Java实现.它允许你连接到一个SSH服务器,并且可以使用端口转发,X11转发,文件传输等,当然你也可以集成它的功 ...
- CentOS-7设置开机进入命令行界面(不进入图形界面)
[root@localhost ~]# systemctl get-default graphical.target [root@localhost ~]# systemctl set-default ...
- 常见的JS和CSS问题
事件冒泡 DOM的事件冒泡机制和WPF很相似,DOM事件机制包含冒泡和捕获两种,按照topmost element->innermost element方向传递事件被称为捕获方式,而从inner ...