如何用ModelSim对Xilinx ISE产生的网表进行仿真
图:
在对设计的芯片进行测试时,经常要用到FPGA,可是里面的仿真工具却不如Modelsim那么好用,且在规模比较大时,ISE在仿真时,软件经常会报告内存限制的问题,此时一般会切换到Modelsim软件中去做仿真,这样便不会出现内存限制的问题,且仿真器也更加好用。
下面以综合后仿真为例,讲一下如何用ModelSim对Xilinx ISE综合后产生的网表进行仿真。
在用Xilinx ISE综合后,如果想用Modelsim对它综合后产生的网表进行综合后仿真,总共需要3个*.v文件。一个是testbench文件,一个是ISE生成的xxx_ synthesis.v,另一个是glbl.v文件(这个文件在Xilinx安装目录:ISE\verilog\src下)。
步骤如下:
假设顶层设计名为main_1,双击Syntiesize - XST下的Generate Post-Synthesis Simulation Model,则在ISE项目目录内的./netgen目录里面会产生synthesis文件夹,生成main_1_synthesis.v文件以及main_1_synthesis.nlf文件。
在ModelSim项目中加入main_1_synthesis.v、testbench.v、Xilinx ISE安装目录/opt/Xilinx/ISE_DS/ISE/verilog/scr/目录内的glbl.v(必须加上glbl.v文件,否则会报下面Q1所示的glbl问题)。
然后在仿真中加入Xilinx编译的几个库文件(见文章Xilinx ISE如何调用Modelsim进行联合仿真),把testbench.v和glbl.v同时选中后进行仿真(必须都选上,否则仿真会报错)
仿真设置以下面的方式加入:
在Simulation中加入Xilinx ISE中编译的库文件(编译库的方法见Xilinx ISE如何调用Modelsim进行联合仿真):
点击Libraries,点击Add添加:
在Design下找到work库,在里面选中测试平台文件和glbl.v,则在Design Unit(s)中会出现work.glbl和work.tb。同时要在Optimization下取消勾选Enable optimization,否则有些信号可能会被仿真器优化掉。如下图所示:
之后双击Simulation 1即可开始仿真。
同样,在执行Implement Design下面的Translate以及其下面的Generate Post-Translate Simulation Model后,在netgen目录下会生成Translate文件夹,里面有main_1_translate.v文件。同样的方法可以进行翻译/转化后仿真。
Q1:"ERROR: ../<project>/<module.v>: Unresolved reference to 'glbl' in 'glbl.GSR'"
A1:在仿真工程中添加glbl.v文件(一般在~/ise/verilog/src/glbl.v,同理Quartus),把testbench.v和glbl.v同时选中后进行仿真,即vsim -t 1ps -L unisims_ver work.glbl work.tb。
如果喜欢本公众号也请多多分享哟,谢谢您的关注
如何用ModelSim对Xilinx ISE产生的网表进行仿真的更多相关文章
- 87.在ModelSim中添加Xilinx ISE仿真库
在ModelSim中添加Xilinx ISE仿真库 说明: l ModelSim一定要安装在不带空格的目录下,即不要安装在“Program Files”目录下.如作者是安装在D:\softwares\ ...
- Xilinx ISE如何调用Modelsim进行联合仿真
图: 在对设计的芯片进行测试时,经常要用到FPGA,可是里面的仿真工具却不如Modelsim那么好用,且在规模比较大时,ISE在仿真时,软件经常会报告内存限制的问题,此时一般会切换到Modelsim软 ...
- modelsim编译Xilinx器件库的另一种方法(节省时间)
以前在用modelsim对Xilinx进行器件库编译时,我用的比较多的是直接在ISE中编译器件库,感觉很方便简单,就是编译时间有点长.自从前段时间,在自己电脑装MathType,360杀毒软件将它视为 ...
- Modelsim编译Xilinx器件库的另一种方法
由 xooo 于 星期五, 09/18/2015 - 15:35 发表 以前在用modelsim对Xilinx进行器件库编译时,我用的比较多的是直接在ISE中编译器件库,感觉很方便简单,就是编译时间有 ...
- 每天进步一点点------Modelsim添加Xilinx仿真库的详细步骤
Modelsim,可以选型SE和XE两个版本.Modelsim XE可以直接被ISE调用,而Modelsim SE需要手动添加仿真库.但SE版和OEM版在功能和性能方面有较大差别,比如对于大家都关心的 ...
- Ubuntu 14.04 安装 Xilinx ISE 14.7 全过程
生命在于折腾. 这个帖子作为我安装xilinx ISE 14.7版本一个记录.希望给需要的人一些帮助,这些内容绝大部分也是来源于互联网. 软硬件: lsb_release -a No LSB modu ...
- Ubuntu 14.04 安装 Xilinx ISE 14.7 全过程(转)
reference:https://www.cnblogs.com/tracyone/p/3561781.html 按照ISE后,建立ISE启动连接: 这个帖子作为我安装xilinx ISE 14.7 ...
- Xilinx ISE Design Suite 14.7 ISim 简单仿真
1.创建完项目(以Xilinx ISE Design Suite 14.7开发流程的例子 led例子 为例),编译通过,我们就可以对这个项目进行仿真: 2.然后切换到simulation,然 ...
- Xilinx ISE中Synplicity.ucf无法加上去的问题
在Xilinx ISE中使用Synplify pro进行综合时,有时出现无法将synplicity.ucf添加进工程的问题.这时可以在其它目录下备份synplicity.ucf, 然后使用clean ...
随机推荐
- 读BeautifulSoup官方文档之与bs有关的对象和属性(3)
上一节说到.string的条件很苛刻, 如果某个tag里面包含了超过一个children, 就会返回None, 但是这里提供另外一种方式 .strings, 它返回的是一个generator, 比如对 ...
- C# API 获取系统DPI缩放倍数跟分辨率大小
原文:C# API 获取系统DPI缩放倍数跟分辨率大小 using System; using System.Drawing; using System.Runtime.InteropServices ...
- 深入理解Amazon Alexa Skill(一)
语音助手(Virtual Personal Assistants, VPA)是物联网智能家居中很火的一个领域,用户可以通过语言作为入口来控制家里各种各样的设备,而亚马逊的Alexa(echo,echo ...
- 隐藏system窗口你也行(就是那个cmd窗口,好多方法)
新process的启动,可以通过system(const char*)函数启动另外一个程序,但是有一个小问题,就是每次执行system函数的时候,都会弹出dos窗口(命令行嘛~~~),有没有什么方法能 ...
- dotnetspider
http://www.cnblogs.com/modestmt/p/5525467.html nuget :DotnetSpider2.Core
- Android零基础入门第48节:可折叠列表ExpandableListView
原文:Android零基础入门第48节:可折叠列表ExpandableListView 上一期学习了AutoCompleteTextView和MultiAutoCompleteTextView,你已经 ...
- SqlServer判断数据库、表、字段、存储过程、函数是否存在
原文:SqlServer判断数据库.表.字段.存储过程.函数是否存在 判断数据库是否存在 if exists (select * from sys.databases where name = '数据 ...
- C#函数参数前的修饰符
函数的形参前可以带三种修饰符,分别的out.ref.param. out:让函数可以输出“多个值”,并不是真正的输出多个值. ref:相当于引用传递,在函数内部赋值会影响变量的值. params:可变 ...
- Morris 轻量级 图表
Morris.js 是基于 jQuery 和 Raphaël 的轻量级矢量图形库,帮助开发人员轻松绘制各种形式的图表.示例: HTML: <div id="myfirstchart&q ...
- spring+rabbitmq+stomp搭建websocket消息推送(非spring boot方式)
前言: 两年前做过spring+activemq+stomp的ws推送,那个做起来很简单,但现在公司用的mq中间件是rabbitmq,因此需要通过rabbitmq去做ws通信.仔细搜了搜百度/谷歌,网 ...