zoukankan      html  css  js  c++  java
  • [笔记]modelsim前仿后仿各种问题

    2013-12-16 14:09:58周一

    http://hi.baidu.com/renmeman/item/fff4b3145c38e97f2a3e22de

    1。我在ISE中启动modelsim时出现了下面的错误
    Loading work.tb_ic1_func
    # ** Error: (vsim-19) Failed to access library 'xilinxcorelib_ver' at "xilinxcorelib_ver".
    # No such file or directory. (errno = ENOENT)
    # ** Error: (vsim-19) Failed to access library 'unisims_ver' at "unisims_ver".
    # No such file or directory. (errno = ENOENT)
    # Loading work.fifoctlr_ic_v2
    # ** Error: (vsim-19) Failed to access library 'xilinxcorelib_ver' at "xilinxcorelib_ver".
    # No such file or directory. (errno = ENOENT)
    # ** Error: (vsim-19) Failed to access library 'unisims_ver' at "unisims_ver".
    # No such file or directory. (errno = ENOENT)
    # ** Error: (vsim-3033) fifoctlr_ic_v2.v(126): Instantiation of 'BUFGP' failed. The design unit was not found.
    是什么原因?
    “点到仿真模式,在source里面选中你建立工程选择的芯片,然后看Processes,点开,有个compile HDL simulation library,运行一下就OK了”
    2.ISE用modelsim仿真提示:# ** Error: (vish-4014) No objects found matching '*'.结果仿真时老是报错:
    # ** Error: (vish-4014) No objects found matching '*'.
    # Error in macro ./test_top_tb.fdo line 10
    # (vish-4014) No objects found matching '*'.
    # while executing
    # "add wave *"
    解决办法,改modelsim.ini文件中的一个参数:VoptFlow = 0

    倘若不行,后来又搜到一种方法,我试了一下,可以解决问题:

    点击工具栏中的“simulate”按钮,或用菜单中的命令“simualte->start simulation”调出start smulation窗口,关键是把窗口中最下边optimization栏中的Enable optimization项目前的钩钩去掉,然后选择仿真的文件,点击OK,就一切正常了,能看到objects了。

    3.当对IP核修改后,用Modelsim仿真显示:No entity is bound for inst 或 CE is not in the entity。(CE是改动后添加的一个管脚),从而仿真无结果。

    解决办法:首先选中该IP核的.xco文件点击右键->属性 将属性改为 "Synthesis/Imp + Simulation."
    然后将其对应的.v或.vhd文件的属性也改为 "Synthesis/Imp + Simulation."

    4.启动modelsim后,没有出错,但是有warning:(vsim-3009) [TSCALE] - Module 'ODDR' does not have a `timescale directive in effect, but previous modules do.输入信号均正确,调用的IP core或原语的输出为高阻态。

    解决办法:modelsim中调用该IP core或原语的库不匹配,在xilinx中找到其所在的库unisims,并重新编译至modelsim的UNISIMS_VER库中。问题可得到解决。

    2013-06-28   08:59:44周五

    来源:http://blog.csdn.net/jbb0523/article/details/7932026

    在ModelSim中执行View---FSM list命令,代码中所有状态机会生成一个列表。如何你想观察哪个状态机,直接双击就可以打开它。

    这时观察生成的状态转换图发现,所有的状态都在复位的情况下返回了状态IDLE,这是我们不期望的,仔细观察这时的菜单栏可以发现,有一个FSM View项。将Show Transitions to "Reset"项前面的对勾去掉,就会发现不显示复位情况下返回状态IDLE了。


    来源:http://wjfblack.blog.163.com/blog/static/18005148420117240336431/

    保存仿真用了很长时间的波形,方便下次打开直接看,无需再花时间去跑一趟。且也可以用于比较。

    1、在wave界面,将仿真波形保存为 .do文件(信号文件)。

     

    2、切换左边任务栏至“sim”,,点击保存,给将要保存的 .wlf文件(波形文件)命名。

     

    3、保存,OK,关闭modelsim.

     

    4、重启modelsim,open 之前保存的 .wlf文件,然后 load 对应的 .do文件。

     

    5、enjoy。

     

     

    来源:http://www.cnblogs.com/nanoty/archive/2012/10/29/2745463.html

    关于Modelsim仿真时不能编译`include文件解决办法【Verilog】【Modelsim】

    问题描述:

        只要用到include,编译就出错,抱怨Cannot open `include file "params.v",但是在使用params.v文件中定义的参数时,已经在调用文件中使用了“`include params.v”命令,如果在其他文件夹中进行编译,仿真器就会报出“cannot open。。。”或者找不到params.v中定义相应的参数。

    解决办法:

    1. 将所有要编译文件放在同一个文件夹中,且编译时在该文件夹中进行编译;
    2. 使用include命令时,使用绝对路径对文件进行引用;

    2013-02-23     08:32:06

    来源:http://www.cnblogs.com/emouse/archive/2012/07/08/2581223.html 此博客描写了QuartusII调用ModelsimSE的两种方法,第一种是修改系统产生的*.vt测试激励,对仿真产生的DO文件(含库文件编译、设计文件编译、运行参数及开始)。同时还讲解了DO文件的修改,可以添加中间信号进行考察,可以免去库文件的编译。在免去库文件的编译时,首先在QII上一次性编译库(tool-launch EDA simulation Library Compiler ),然后返回QII的仿真设计界面(Assignment-settingèsimulation-more Nativelink setting )设定好刚才编译好的库路径。

    但针对激励是多个文件时,仿真功能的设计并没有说明,所以问题暂时没解决,不过它也间接解决了问题,你可以采用上面这种方法来直接调用modelsim,省去库的编译。


    2013-02-22    16:20:01

    问题:在用QuartusII直接调用ModelsimSE进行仿真时,当测试激励是由多个文件组成时,就仿真不通过,提示的错误信息如下所示:

    # ** Error: F:/guangbao/i2c_quartus/hardware/EEPROM_I2C/top.v(23): (vopt-2135) Too many port connections. Expected 5, found 7.

    # Optimization failed

    # Error loading design

    # Error: Error loading design

    #        Pausing macro execution

    # MACRO ./i2c_test_run_msim_rtl_verilog.do PAUSED at line 22

    答案:

    停止在22句上,第22句是vsim -t 1ps -L altera_ver -L lpm_ver -L sgate_ver -L altera_mf_ver -L altera_lnsim_ver -L arriav_ver -L arriav_hssi_ver -L arriav_pcie_hip_ver -L rtl_work -L work -voptargs="+acc" top

    手动修改成 vsim -novopt work.top就可以仿真,不知道上面那句有什么错误,???待解答。


    来源:http://www.ourdev.cn/thread-4814017-1-1.html

    问题:

    1、直接用Modelsim做仿真用.v文件,在Quartus下调用modelsim-altera仿真确是调用.vt文件。尝试了下直接把后缀改了交换用,不行!这很不方便啊,有没有什么好办法?

    2、做功能仿真时要把Simulate->start simulate ->Design里的enable optimization设成无效,否则出不来波形。为什么?

    3、做时序仿真时出现如下错误:Error:(vsim-SDF-3250)E:/.../counter_v.sdo(0):Failed to find INSTANCE 'counter_tb/counter'.
    这貌似是个老问题了,试了网友说的各种办法,无效!添加SDF时Apply to Region也试了各种写法。比如:在“/”前写测试文件名,后写顶层例化名。
    (我的测试文件名是counter_tb.v,模块名是counter_tb;功能实现文件是counter.v,模块名是counter在测试文件里的例化名是counter)。我试了这样写:counter_tb/counter这样写:counter/counter或这样写:/counter,都不行!
    如果把Disable SDF warnings和Reduce SDF errors to warnings 都选上,波形倒能出来,但没有逻辑延时信息,也就是说.sdo里的信息没参与仿真,相当于只做了功能仿真。

    回答:

    modelsim 的默认testbench 后缀就是.vt的,要不就手动打开modelsim自己做编译。
    1、优化过后一般都会综合掉一些软件认为中间多余的寄存器,所以波形出不来

    2、将SDF 文件复制到和网表同一个目录就行。

    3、重点是作用区域的命名规范,我在这花了很长时间,信息来源:http://wenku.baidu.com/view/46d3e14d2b160b4e767fcf88.html

  • 相关阅读:
    SQL注入攻击
    新手指引,php什么是常量、变量、数组、类和对象及方法?
    JQuery坑,说说哪些大家都踩过的坑
    利用Jsonp实现跨域请求,spring MVC+JQuery
    【实用】需要收藏备用的JQuery代码片段
    【动画】JQuery实现冒泡排序算法动画演示
    【基础】26个命令玩转linux,菜鸟及面试必备
    【收藏】8段JQuery处理表单的代码片段,很实用
    【实用】Html5实现文件异步上传
    【基础】新手任务,五分钟全面掌握JQuery选择器
  • 原文地址:https://www.cnblogs.com/zlh840/p/2490053.html
Copyright © 2011-2022 走看看