vivado软件中也自带仿真工具,但用了几天之后感觉仿真速度有点慢,至少比modelsim慢挺多的。而modelsim是我比较熟悉的一款仿真软件,固然选它作为设计功能的验证。为了将vivado和modelsim关联,需要进行一些设置,下面一一介绍。

一、在vivado中设置modelsim(即第三方仿真工具)的安装路径。在vivado菜单中选择“Tools”——>“Options...”,选择“General”选项卡,将滚动条拉倒最底部,在“QuestaSim/ModelSim install path”栏中输入或选择modelsim工具的安装路径,如图1所示。

图1  设置modelsim的安装路径

二、器件库编译。首先,在modelsim安装路径中新建一个名为vivado2014_lib的文件夹(路径和文件名可改),如图2所示。

图2  在modelsim安装路径下新建vivado2014_lib文件夹

接着选择vivado菜单“Tools”——>“Compile Simulation Libraries...”命令,如图3所示。

图3  选择“Compile Simulation Libraries...”命令

在弹出的对话框中设置器件库编译参数,仿真工具“Simulator”选为ModelSim,语言“Language”、库“Library”、器件家族“Family”都为默认设置All(当然也可以根据自己的需求进行设置),然后在“Compiled library location”栏设置编译器件库的路径,这里选前面新建的vivado2014_lib文件夹,此外在“Simulator executable path”栏设置modelsim执行文件的路径,其他参数默认,如图4所示。

图4  设置器件库编译参数

设置好参数后点击“Compile”按钮开始器件库的编译。图5所示为正在编译器件库的过程中。器件库编译结束后给出编译报告,从报告中看出0个警告和0个错误,如图6所示。

图5  正在编译器件库的过程中

图6  器件库编译结束后产生编译报告

打开modelsim安装路径下的vivado2014_lib文件夹,便可以看到已经产生了器件库,如图7所示。

图7  已在vivado2014_lib文件夹中生成器件库

三、在vivado中关联了modelsim软件和编译器件库之后,就可以在vivado中调用modelsim软件对设计进行仿真了。不过,在对每一个新建的工程设计进行仿真时需要进行一些设置。选择vivado菜单“Flow”——>“Simulation Settings...”命令或点击流程向导中选择“Simulation Settings...”命令,分别如图8和图9所示。

图8  从菜单选择“Simulation Settings...”命令

图9  从流程向导中选择“Simulation Settings...”命令

在弹出的对话框中,设置仿真工具为modelsim、仿真语言为verilog或VHDL或混合,当设计中用到vivado中自带的仿真工具时,还要指定器件库的路径,如图10所示。关于仿真的其他参数在这里就不作介绍了。

图10  设置仿真参数

设置好仿真参数后,如果设计文件和仿真文件也准备好,那么就可以开始对设计的功能进行仿真了。选择菜单“Flow”——>“Run Simulation”——>选相应的仿真类型或点击流程向导中的“Run Simulation”——>选相应的仿真类型进行仿真,如图11所示。

图11  选择相应的仿真类型进行仿真

68.vivado与modelsim的关联以及器件库编译的更多相关文章

  1. modelsim编译Xilinx器件库的另一种方法(节省时间)

    以前在用modelsim对Xilinx进行器件库编译时,我用的比较多的是直接在ISE中编译器件库,感觉很方便简单,就是编译时间有点长.自从前段时间,在自己电脑装MathType,360杀毒软件将它视为 ...

  2. Modelsim编译Xilinx器件库的另一种方法

    由 xooo 于 星期五, 09/18/2015 - 15:35 发表 以前在用modelsim对Xilinx进行器件库编译时,我用的比较多的是直接在ISE中编译器件库,感觉很方便简单,就是编译时间有 ...

  3. vivado与modelsim的联合仿真

    转载: 一.在vivado中设置modelsim(即第三方仿真工具)的安装路径.在vivado菜单中选择“Tools”——>“Options...”,选择“General”选项卡,将滚动条拉倒最 ...

  4. vivado与modelsim的联合仿真(一)

    vivado软件中也自带仿真工具,但用了几天之后感觉仿真速度有点慢,至少比modelsim慢挺多的.而modelsim是我比较熟悉的一款仿真软件,固然选它作为设计功能的验证.为了将vivado和mod ...

  5. vivado与modelsim的联合仿真(二)

     最近在做Zynq的项目,曾经尝试使用ISE+PlanAhead+XPS+SDK组合和Vivado+SDK来搭建工程,使用中发现前者及其不方便后者有诸多不稳定.近期得闻Xilinx退出Vivado20 ...

  6. vivado和modelsim联合调试仿真

    vivado和modelsim联合调试仿真 0赞 发表于 2017/5/10 19:10:59 阅读(881) 评论(0) 使用vivado和modelsim联合调试仿真时,在破解完modelsim后 ...

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

    前两天在群里看到有朋友说Vivado级联Modelsim仿真出现修改设计代码后重新run do文件,波形没有随着代码修改而改变,这个问题博主之前没有注意到,因为把Vivado和Modelsim级联好后 ...

  8. Quartus调用Modelsim SE避免重复编译Altera器件库的方法

    最近用Quartus 15.0配合Modelsim SE 10.4的64位版本,简直就是闪电一般的仿真速度.但是众所周知,SE版本最大的问题就是每次由Quartus自动调用时,都要重新编译所使用的器件 ...

  9. 令新手头疼的modelsim库编译

    估计很多人买了CB哥的书来看吧,他们在学习modelsim仿真的过程中可能遇到过明明是按照书上的步骤添加器件库的了,但还是出现如下的错误: 首先,我想说的是CB哥书上的modelsim-altera1 ...

随机推荐

  1. ASP.NET的SEO: 服务器控件背后——SEO友好的Html和JavaScript

    本系列目录 假设你需要从一个页面转向其他页面,下面有很多种方式,你是如何选择的呢?你能清晰的说明理由么?         <%--链接的表现形式--%>        <asp:Hy ...

  2. Oracle 查询字段在什么表

    -- 查询字段在什么表 select * from all_tab_cols t where t.column_name='ABC'; -- 查询字段在什么表并且 判断是否是主键 select * f ...

  3. linux使用dd命令快速生成大文件

    dd命令可以轻易实现创建指定大小的文件,如 dd if=/dev/zero of=test bs=1M count=1000 会生成一个1000M的test文件,文件内容为全0(因从/dev/zero ...

  4. iOS中UIKit——UIFont得到iOS设备上的系统字体

    for (NSString *fontFamily  in [UIFont familyNames]) { NSLog(@"字体家族是:%@",fontFamily); for(N ...

  5. WCF帮助类

    using BJSW.ZTFX.Client.Silverlight.MapBusinessService; using System.ServiceModel; using System.SL.Ap ...

  6. luigi学习7--running from command line

    最简单去运行一个luigi task的方式是通过luigi命令行工具. 示例代码: # my_module.py, available in your sys.path import luigi cl ...

  7. js各种宽高(3)

    有时候项目中会用到用js获取元素位置来定位元素,首先通过图片说明scrollWidth,clientWidth,offsetWidth的关系. JS获取各种宽度.高度的简单介绍: scrollHeig ...

  8. sql分类及基本sql操作,校对规则(mysql学习笔记二)

    sql针对操作对象分为不同语言 数据操作(管理)语言 DML或者将其细分为 ( 查询  DQL 管理(增,删,改)  DML) 数据定义语言(对保存数据的格式进行定义) DDL 数据库控制语言(针对数 ...

  9. 代码分享:php对二维数组进行排序

    发布:net/PHP编程  编辑:thebaby   2013-06-28 13:12:54  [大 中 小] 转自:http://www.jbxue.com/article/9991.html本文介 ...

  10. Java实现九九乘法表的输出

    九九乘法表一般为三角形,每个数分别和从1到自身的数相乘然后把结果列出来,即要用到两层循环,外层是从1到9for(i=1;i<=9;i++),内层是当前数和从1到自身相乘for(j=1;j< ...