代码之家  ›  专栏  ›  技术社区  ›  user405725

是否有办法通过TCL API在ModelSim中切换叶名称?

  •  12
  • user405725  · 技术社区  · 12 年前

    我正在寻找一种在GUI模式下在ModelSim视图中切换网络的叶名称的方法。换句话说,相当于按下“切换叶名<->全名”按钮:

    enter image description here

    我知道添加短名称的方法。例如,我一直在使用这样的代码:

    add wave -group "stimulus" -label "valid" ${sim_module}/aso_src0_valid
    add wave -group "stimulus" -label "ready" ${sim_module}/aso_src0_ready
    add wave -group "stimulus" -label "data" -radix ascii ${sim_module}/aso_src0_data
    add wave -group "stimulus" -label "begin" ${sim_module}/aso_src0_startofpacket
    add wave -group "stimulus" -label "end" ${sim_module}/aso_src0_endofpacket
    add wave -group "stimulus" -label "error" ${sim_module}/aso_src0_error
    

    然而,为了快速模拟脚本,当我想为一个似乎太多而无法键入的模块添加所有信号时,我只需要这样做:

    add wave -group "stimulus" "/aso_src0_*"
    

    默认情况下,它显示“刺激”组下的全名。我找不到的参数 add 函数或在叶和全名之间切换的另一个函数。考虑到ModelSim的强大功能,很难相信它没有这个API或其他简单的方法来实现我想要的。那么有办法吗?是什么?

    1 回复  |  直到 12 年前
        1
  •  13
  •   RDT2    12 年前
    config wave -signalnamewidth 1
    

    来自ModelSim参考手册,v6.5e:

    -signalnamewidth [<value>] 
    

    (可选)控制作为路径名窗格中显示的信号名称的一部分显示的层次区域的数量。相关的Tcl变量是PrefWave(SignalNameWidth)。也可以使用modelsim.ini文件中的WaveSignalNameWidth变量进行设置。

    <值>默认值为0的任何非负整数(显示完整路径。例如,1只显示叶路径元素,2显示最后两个路径元素,依此类推。