我需要在运行模拟后从SystemVerilog数据结构中提取一些值。我想这样做而不改变SystemVerilog代码。
下面是我在Synopsys DVE环境中使用的TCL脚本示例,用于将某些SystemVerilog信号添加到DVE波形。我需要编写相同的东西,但不是在波形上添加signlas,而是需要使用TCL“puts”(类似于C printf或Verilog $ display)来打印信号值:
gui_open_db -file ./vcdplus.vpd
gui_open_window Wave
gui_sg_create abc
gui_list_add_group -id Wave.1 { abc }
gui_sg_addsignal -group abc {
top.dut_inst.xyz.mno
{top.dut_inst.xyz.pqr[3][7:0]}
}
gui_zoom -window Wave.1 -full
像下面这样的东西应该工作:
puts [get top.dut_inst.xyz.mno]
如果您使用的是后处理模式,则会有命令进入特定时间。只需在GUI中执行此操作并检查DVEFiles / dve_history.log以获取命令。