我正在尝试访问模拟器配置参数run_mode
,此值存储为BRUN变量。我使用以下代码访问specman中的参数。
simulator_command(" sn $ env(BRUN_RUN_MODE)")
然而,返回的内容(例如:interactive_debug)被解释为一个显然不存在的specman命令。有没有办法将此参数发送回specman?
答案 0 :(得分:1)
请尝试
var run_mode:= get_symbol(" BRUN_RUN_MODE");
答案 1 :(得分:0)
simulator_command
尝试与模拟器的CLI进行交互。即verilog / vhdl模拟器TCL CLI。你在那里做的是进入模拟器的CLI,然后使用sn [...]
命令回调到specman,同时使用TCL' $env
来获取环境变量。像这样的调用图:
假设BRUN_MODE
设置为FOO
Specman Runtime Verilog/VHDL CLI
| *
| --> simulator_command( ------>|
* |
* sn $env(BRUN_RUN_MODE)
* | (TCL interpreter string transform)
* v
* sn "FOO"
* |
|<-------- "FOO" <--------------|
| *
|------->(end of `sn` call) --->|
* |
|<--(end of simulator_command)--|
| *
你希望使用get_symbol
作为Thorsten回答,除非确实确实需要模拟器命令而不是环境变量。在这种情况下,调用simulator_command
然后从模拟器中提取输出可能是合适的。但是,这需要查看与Specman文档分开的特定模拟器文档。