【问题标题】:modelsim/questa ERROR: UI-Msg: (vish-4014) No objects found matching '/*'modelsim/questa 错误:UI-Msg:(vish-4014)找不到匹配“/*”的对象
【发布时间】:2021-10-07 17:52:00
【问题描述】:

关于如何让 modelsim/questa 包含所有“对象”以便它们在 WLF 中的任何想法?我试过 -novopt 和 +acc 都没有成功??

我的 questasim/modelsim "do script" 提前退出,因为我尝试使用以下命令将所有信号记录到 wlf 文件中:

#Log all objects in the design.
log -r /*
run -all

日志文件生成的错误信息如下:

W ** UI-Msg: (vish-4014) No objects found matching '/*'.
# Error in macro ./simout.width.sim.do line 3

有没有办法让 questa/modelsim 在“log -r */”上出现找不到对象的错误时退出 do 脚本?我想为每个设计重用相同的“do script”,即使是优化器删除所有对象的设计。

我所做的只是像这样简单,当我在 questa 中编译此源时,我没有找到匹配“*/”的对象:


module test_width;
    reg  [3:0] addr;
    wire [3:0] addr2 = addr;
    reg ntfy_reg_p;
    reg ntfy_reg_n;

    specify
            //$width(reference_event, limit, width_threshold, notifier);
        $width(posedge addr2, 50, 30, ntfy_reg_p);
        $width(negedge addr2, 50, 30, ntfy_reg_n);
    endspecify

    always @(ntfy_reg_p or ntfy_reg_n) begin
        $display("Error: width violation at %0t", $time);
    end

    initial begin
        $monitor("addr2 = %b, %0t", addr2, $time);
        #100 addr = 4'b0000;
        #40  addr = 4'b0100;    // get violation here
        #100 addr = 4'b0000;
        #100 addr = 4'b1111;
        #10 $finish;
    end
endmodule

这是我的模拟脚本:

C:/questasim64_2020.4/win64/vlib.exe work
C:/questasim64_2020.4/win64/vlog.exe  -work work  +acc  ./vlog/test_setup.v || exit 1
C:/questasim64_2020.4/win64/vsimk.exe -c test_setup -wlf simout.setup.wlf -l simout.setup.log  -voptargs=+acc -t 1fs -debugdb  -do "do simout.setup.sim.do"


【问题讨论】:

    标签: verilog modelsim questasim


    【解决方案1】:

    找到了使用 TCL 来阻止“log -r *”停止 do 文件的解决方案:

    #Record Modelsim/Questasim WLF waveform file
    if {[catch {log -r /*} e]} {
        puts "WLF-ERROR: $e"
    }
    

    但是不知道如何解决 wlf 中不包含任何对象的问题。

    更新,我不知道为什么,但是如果您转储 VCD 文件而不是 WLF 文件,它可以正常工作,而且您甚至不需要 catch 块:

    vcd file simout.width.vcd
    vcd add -r /*
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-22
      • 2021-01-06
      • 2018-04-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多