http://wenku.baidu.com/view/8363d40003d8ce2f006623e9.html  另外一个博客

生成Xilinx库

先调用ISE的simulation library compilation wizard,用Modelsim编译xilinx库单元。编译好后我放在E:\Xilinx\13.4\ISE_DS\ISE\sim_lib目录下,同时有一个modelsim.ini文件,指定library:

secureip = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/secureip

unisim = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/unisim

unimacro = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/unimacro

unisims_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/unisims_ver

unimacro_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/unimacro_ver

simprim = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/simprim

simprims_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/simprims_ver

xilinxcorelib = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/xilinxcorelib

xilinxcorelib_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/xilinxcorelib_ver

uni9000_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/uni9000_ver

cpld = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/cpld

cpld_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/cpld_ver

Modelsim仿真

写好testbench,里面加一段代码:

initial

begin

$fsdbDumpfile("..\\wave\\tb_ShearInterpPerc.fsdb");

$fsdbDumpvars(0,tb_ShearInterpPerc);

end

tb_ShearInterpPerc是testbench顶层模块,意味着该模块内所有变量都被记录在fsdb文件里。在仿真目录下建立Modelsim用的DOS脚本文件run.bat:

vlib work

vlog ../../ShearInterpPerc.v

vlog ../testbench/tb_ShearInterpPerc.v

vsim -L xilinxcorelib_ver -L unisims_ver -L unimacro_ver -L secureip -lib work -voptargs=\"+acc\" -t 1ps -c -do "run 10us" -pli D:/pli/novas.dll work.tb_ShearInterpPerc glbl

修改仿真目录下的modelsim.ini,把前面指定库路径的命令粘贴进去。

Novas.dll有自己手动放置在指定目录,文件来自于Debussy安装目录E:\EDA\Novas\Debussy\share\PLI\modelsim_fli54\WINNT,支持如下:

在DOS命令行模式下转到仿真目录,输入run.bat即可仿真。

Debussy观察波形

结束后打开Debussy,在nTrace界面中导入HDL源文件,然后点New Waveform,在打开的nWave界面中open生成的fsdb 文件,按g或点get signal,选择需要观察的信号确定即可开始观察。

Modelsim, Debussy联合仿真Xilinx的更多相关文章

  1. Xilinx ISE如何调用Modelsim进行联合仿真

    图: 在对设计的芯片进行测试时,经常要用到FPGA,可是里面的仿真工具却不如Modelsim那么好用,且在规模比较大时,ISE在仿真时,软件经常会报告内存限制的问题,此时一般会切换到Modelsim软 ...

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

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

  3. 通过文件读写方式实现Matlab和Modelsim的联合仿真

    虽然Modelsim的功能非常强大,仿真的波形可以以多种形式进行显示,但是当涉及到数字信号处理的算法的仿真验证的时候,则显得有点不足.而进行数字信号处理是Matlab的强项,不但有大量的关于数字信号处 ...

  4. (转)Quartus II和Modelsim的联合仿真(详细)

    这篇文章不需要在modelsim中建库.映射.建工程等一些繁琐的步骤,直接使用modelsim中的默认work库.使用quartus+modelsim联合仿真. 首先推荐一篇文章 http://www ...

  5. Vivado关联Modelsim进行联合仿真

    Vivado自带仿真工具,但是有点慢,关联Modelsim联合仿真是最好的,注意Modelsim必须是10.7以上版本. 1.安装并成功破解Modelsim 10.7. 2.打开Vivado,点击 T ...

  6. vivado与modelsim的联合仿真

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

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

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

  8. Matlab/Modelsim图像联合仿真平台

    FPGA图像仿真平台 1 引言 在使用modelsim进行图像算法的功能仿真时,无法得到图像的实时预览,因此直观性有所欠缺.因此可配合matlab使用,通过modelsim读出txt格式的图像,利用m ...

  9. vivado2013.4和modelsim联合仿真

    vivado2013.4和modelsim联合仿真                           Hello,Panda        最近在做Zynq的项目,曾经尝试使用ISE+PlanAhe ...

随机推荐

  1. Pascal运行错误表

    (A)DOS错误代码 1:错误的功能代码尝试错误的操作系统调用.2:文件未找到程序试图删除.重命名和打开一个不存在的文件.3:目录未发现目录不存在或是错误,也有可能是访问一个不存在的文件.4:打开太多 ...

  2. CentOS进行yum操作时不能访问国外镜像的解决方案

    1. 例如执行yum update,经常报错“Cound not resolve host: xxxxx”,一般都是yum源是使用的国外镜像,国内访问很不好.这时可以将源手动替换为国内的清华大学源,或 ...

  3. windows中Read函数引发数据异常的问题

    [摘要] 在Window C/S开发中少不了客户端与服务端数据通信的情况,每当客户端从服务端获取数据时会将数据读到本地本件或缓存中,例如通过CInternetFile类的Read函数会将网卡缓存中的数 ...

  4. 获取url参数(jq 扩展包)

    (function($){ $.extend({ urlGet:function(url) { var getUrl = url ? url.split("?") : window ...

  5. Network Initialization: Fan-in and Fan-out

    https://github.com/pytorch/pytorch/blob/master/torch/nn/init.py @weak_script def _calculate_fan_in_a ...

  6. 树莓派中安装ubuntu及相关设置

    一.下载并烧录系统 首先准备好我们要烧录的ubuntu_meta系统,可以在树莓派官网中下载https://www.raspberrypi.org/downloads/ 这里我们选择 Raspberr ...

  7. Java时间格式字符串与Date的相互转化

    目录 将Date转化为格式化字符串 时间格式字符串转化为Date @ 将Date转化为格式化字符串 将Date转化为格式化字符串是利用SimpleDateFormat类继承自 java.text.Da ...

  8. spring aop使用,spring aop注解,Spring切面编程

    ================================ ©Copyright 蕃薯耀 2020-01-21 https://www.cnblogs.com/fanshuyao/ 一.第一步, ...

  9. 修改json数据中key(键值)

    //方法一:修改JSONObject的键 public static JSONObject changeJsonObj(JSONObject jsonObj,Map<String, String ...

  10. 数组的concat连接

    let arr1 = [1,3,5],arr2 = [2,32,78],arr3 = [];arr3 = arr1.concat(arr2);// arr1 = [1,3,5] arr2 = [2,3 ...