有什么通用的方法可以将注释(或可能的任何字符串)插入到VCD转储中吗?
例如在下面的代码中,我想在a
更改为1
时插入一些注释:
module test;
reg a;
initial begin
$dumpfile("dump.vcd");
$dumpvars(1,test.a);
end
initial begin
a = 0;
#10;
// insert_vcd_string("MY_STRING", dump.vcd);
a = 1;
#10;
end
endmodule
最佳答案
尽管$comment
是用于创建注释部分的vcd关键字,但没有标准的系统任务可将注释字符串写入vcd文件。
从IEEE Std 1800-2012 LRM:
$comment This is a single-line comment $end
$comment This is a
multiple-line comment
$end
我将尝试$ dumpoff,$ dumpflush和$ dumpon。 $ dumpoff和$ dumpoon在带有时间戳的VCD文件中留下一个标记,即
#time $dumpoff ... $end
:来自IEEE Std 1800-2012 LRM的示例:
#1000
$dumpoff
x*@
x*#
x*$
bx (k
bx {2
$end
#2000
$dumpon
z*@
1*#
0*$
b0 (k
bx {2
$end
每当
a
更改为1
时,都可以在dumpoff / on之间切换,并对vcd文件进行后期处理以在它们之间插入$comment ... $end
。关于verilog - 将字符串或注释插入VCD转储文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27288729/