【问题标题】:How to add compile option for ModelSim using VUnit?如何使用 VUnit 为 ModelSim 添加编译选项?
【发布时间】:2017-03-21 08:52:13
【问题描述】:

使用 ModelSim 和 VUnit 我尝试编译一些 UVVM,但这会给出一些警告,例如:

** 警告:C:\work\Qtec\SVN_sim\Design\uvvm\uvvm_util\src\methods_pkg.vhd(1159): (vcom-1346) 接口对象的默认表达式不是全局静态的。

所以我想抑制这些警告,所以我尝试根据VUnit Python Interface 使用add_compile_option 更新VUnit“run.py”文件:

uvvm_util = prj.add_library('uvvm_util')
uvvm_util.add_source_files(join(root, '../../uvvm/uvvm_util/src/*.vhd'))
uvvm_util.add_compile_option('modelsim.vcom_flags', ['-suppress 1346'])

但是在编译时,我得到了错误:

编译 ....\uvvm\uvvm_util\src\types_pkg.vhd 成 uvvm_util ...

** 错误(可抑制):(vcom-1902) 选项“-suppress 1346”要么未知,要么需要参数,要么参数错误。

【问题讨论】:

    标签: vhdl modelsim vunit


    【解决方案1】:

    您可以编辑modelsim.ini 文件中的suppress 条目。 source

    可能是带有空格的 python/TCL 错误。 See this link。 所以-suppress1346之间的空格没有正确转发。

    VUnit ui.py 显示

    modelsim.vcom_flags 传递给 ModelSim vcom 命令的额外参数。 必须是字符串列表。

    我无法测试它,但这种情况下该行应该是:

    uvvm_util.add_compile_option('modelsim.vcom_flags', ['-suppress', '1346'])
    

    编辑:经过一番阅读......对我来说,add_compile_optionset_compile_option 之间的区别并不清楚。也许你可以试试另一个?

    【讨论】:

    • 将列表中的字符串拆分为['-suppress', '1346'] 使其工作。其实挺奇怪的,因为我之前成功用过prj.set_sim_option('modelsim.vsim_flags', ['-suppress 8684']),所以看来add_compile_option比较挑剔。关于setadd,然后set 清除所有以前的选项,其中add 附加到任何以前的选项。
    • @EquipDev 感谢您将我指向 VUnit。我还不知道,但我真的很感兴趣。
    猜你喜欢
    • 2015-02-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-19
    • 2019-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多