1)如果需要跟踪信号,可以使用dataflow,直观,缺点是后仿太慢!

http://www.cnblogs.com/asus119/archive/2011/04/01/2002525.html

ModelSim SE6..2b还有一个很好用的功能。就是可以看整个文件所形成的数据流程,各个模块之间的逻辑联系。具体方法是在仿真后执行命令  view datalflow 就可以打开dataflow文件,在dataflow的窗口菜单中点击add中的view all nets就可以观察到各个模块之间的逻辑联系,模块一般都为initial模块、always模块、assign模块等等。点击中一个模块,则这个模块变 为红色。这时候在view菜单下点击show wave就可以在窗口下方弹出wave窗口,不同的是这个wave窗口所显示的信号变量仅为点击中的模块所包括的信号变量,这时候也可以点击仿真run –all小图标来仿真有关这个模块的输入输出关系。

2)偶尔看到这个网页,介绍一些tips,感觉OK

http://wiki.fpganotes.com/doku.php/ise:sim:modelsim_tips

ModelSim Tips

Verilog FSM state name

Verilog写的状态机在仿真时状态名是数字。如果能使用状态名来调试就会方便许多。

使用virtual function。太长,方法请参考http://www.eefocus.com/tatata/blog/10-04/187728_9ef84.html

ModelSim的系统设置

ModelSim的设置信息一个是modelsim.ini,另一个在注册表[HKEY_CURRENT_USER\Software\Model Technology Incorporated\ModelSim]路径下

如果要使用两个自己编译的库

众所周知,ModelSim PE/SE是要编译Xilinx库的。如果既想要ISE8.1的库,又想要ISE8.2的库,直接编译两次会使ModelSim的lib极其混乱。

解决方案就是,保留三个modelsim.ini文件,一个8.1的,一个8.2的,一个原始的。8.1的和8.2的很好理解,什么时候要用就复制到Modelsim安装目录下去;原始的为了以后还要编译别的版本而保留。

保存所有信号记录

  1. log -r /*

可以将所有信号的翻转情况记录下来,如果需要在Wave窗口再添加信号,就不用restart,添加信号,然后再重新run了。

View VCD Files

Run command in ModelSim console:

  1. vcd2wlf xx.vcd xx.wlf

Then use File –> Open to open the wlf file.

waveform compare

比较两个wlf文件。

  1. Tools -> Waveform Compare -> Comparision Wizard

dataflow hierarchy

在dataflow窗口显示出某个信号所在的hierarchy。

  1. Dataflow窗口 -> Tools -> Options -> Show Hierarchy

udo file

将某个添加了除顶层端口信号的wave的do文件保存下来,以便下一次开启时不用重新添加信号和restart。此方法是我觉得最简单的调试方法。

  1. Wave窗口 -> File -> Save -> Format -> x.do

打开do文件并将有用的内容复制到ISE工程目录下的.udo文件中,以后每次做仿真都可以不用再添加信号了。

如果更改了源代码需要重新compile,也不需要将ModelSim关掉,只需要按向上键,执行一次xx.fdo或者xx.tdo文件即可,因为fdo和tdo文件都会自动调用udo。

Change Directory

改变当前目录,可以使用File菜单下的Change Directory,也可以在Transcript窗口中直接输入cd命令。

只不过cd命令不认windows中的反斜杠,会以为这是一个转义符。解决方法当然有很多,比如手动把所有的\都改成/。

更方便的方法是在这个用到\的路径两边加上花括号,比如:

  1. cd {F:\Project}

ModelSim仿真结果不正确

如果仿真出现在某些机器上是正确的,某些机器上不正确,或者没有出现想象中的结果又没有找到错误所在,可以尝试关掉优化选项。即在vsim命令中加 -novopt 属性。 参考:AR24776,AR24293

常用快捷键

  • F4: Wave缩小至全图
  • F5: 缩小
  • F6: 放大
  • Ctrl + 鼠标左键按住后拖动 : 放大局部

modelsim(3) - tips(zt)的更多相关文章

  1. modelsim(3) - summary ,issue,tips

    1) the OEM of modelsim is 10 times slower than offical questa 2)how to the file full path in the mod ...

  2. Solaris Tips: Repairing the Boot Archive (ZT)

    http://www.seedsofgenius.net/solaris/solaris-tips-repairing-the-boot-archive 注意以下是系统盘非镜像情况下的操作,如果系统盘 ...

  3. 加快modelsim仿真速度的方法(原创)

    ①仿真精度越高,仿真效率月底. 仿真时采用`timescale 1ns/1ns比采用1ns/100ps的仿真效率高 simulation was two billion ns. ②clock gene ...

  4. 88.modelsim仿真do文件相关技巧

    网上的关于DO文件的编写好像资料不多,比较杂,所以本人总结一下常用的简单语法,方便大家查看.其实本人也刚接触DO文件没多久,有纰漏很正常,欢迎指正批评,互相学习.PS:写得有点乱   还有一个值得注意 ...

  5. modelsim仿真中 do文件的写法技巧

    网上的关于DO文件的编写好像资料不多,比较杂,所以本人总结一下常用的简单语法,方便大家查看.其实本人也刚接触DO文件没多久,有纰漏很正常,欢迎指正批评,互相学习.PS:写得有点乱   还有一个值得注意 ...

  6. Quartus2 通过Nativelink调用modelsim进行功能仿真(转载)

    quartus2建立工程后,编译并检查语法通过后(功能仿真都不需要综合) tips:这样你的工程层次化也同时完成了. 打开Assignment -> settings, 找到Simulation ...

  7. Quartus Prime 与 Modelsim 调试 及do文件使用

    Quartus Prime 与 Modelsim 调试 及do文件使用 2019-06-28 11:12:50 RushBTaotao 阅读数 49更多 分类专栏: IntelFPGA-Softwar ...

  8. Sql server注入一些tips

    sql server环境测试: 几个特性: 1.sql server兼容性可以说是最差的. 举例: select x from y where id=1 字符串查询 select x from y w ...

  9. Mac上MySQL忘记root密码且没有权限的处理办法&workbench的一些tips (转)

    忘记Root密码肿么办 Mac上安装MySQL就不多说了,去mysql的官网上下载最新的mysql包以及workbench,先安装哪个影响都不大.如果你是第一次安装,在mysql安装完成之后,会弹出来 ...

随机推荐

  1. 【SFTP】使用Jsch实现Sftp文件下载-支持断点续传和进程监控

    参考上篇文章: <[SFTP]使用Jsch实现Sftp文件下载-支持断点续传和进程监控>:http://www.cnblogs.com/ssslinppp/p/6248763.html  ...

  2. java sdk与jdk区别

    SDK是Software Development Kit的缩写,中文意思是"软件开发工具包".这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档.范例和工具的集 ...

  3. 关于STM32的FLASH操作【转载】

    说到STM32的FLSAH,我们的第一反应是用来装程序的,实际上,STM32的片内FLASH不仅用来装程序,还用来装芯片配置.芯片ID.自举程序等等.当然, FLASH还可以用来装数据. FLASH分 ...

  4. Use Visual studio 2010 build Python2.7.10

    http://p-nand-q.com/python/building-python-27-with-vs2010.html

  5. Bash Shell 获取进程 PID

    转载地址:http://weyo.me/pages/techs/linux-get-pid/ 导读 Linux 的交互式 Shell 与 Shell 脚本存在一定的差异,主要是由于后者存在一个独立的运 ...

  6. ViewPager--左右可滑动的

    Android实现左右滑动指引效果 http://www.cnblogs.com/hanyonglu/archive/2012/04/07/2435589.html; Android实现导航菜单左右滑 ...

  7. 从感知器到SVM

    这篇文章主要是分析感知器和SVM处理分类问题的原理,不涉及求解 感知器: 感知器要解决的是这样的一个二分类问题:给定了一个线性可分的数据集,我们需要找到一个超平面,将该数据集分开.这个超平面的描述如下 ...

  8. Python基础语法(二)

    类中的方法定义前如果有 @staticmethod 则此方法通过类名调用,如:dict.fromkeys() : 如果没有,则此方法通过对象调用 三元运算 name=值1 if 条件 else 值2  ...

  9. mysql数据备份

    转载自:http://blog.chinaunix.net/uid-16480950-id-102800.html   http://www.cnblogs.com/xuejie/archive/20 ...

  10. firefox火狐浏览器过滤广告插件:Adblock Plus

    firefox火狐浏览器过滤广告插件:Adblock Plus