1.变量的头部定义
set CLK 4
set clk_H [expr 0.5*$CLK]
2.设断点停下来做事情
stop -create -condition {#%x TB.cpm.fsm == 'h2 && #%xTB.reset ==1}
run
stop -delete *
run $clk_H
3.force语句格式
force TB.a.b..c.status 1
4.task调用(verilog写)。调用后的run时间是系统去做事情去了。必须要留一部分时间去供系统调度使用。
task -schedule TASK
deposit TASK.a 4'b0001
deposit TASK.b 18
run 5000ns
5.循环的写法,最后得到的是16位的DATA。
set DATA [value %x TB.OUT_H]
for{set i 0}{$i < 15}{incr i}{
run 100ns
set DATA2 [value %x TB.OUT_H]
set DATA [expr($DATA<<1)+$DATA2]
}