Specman E中System verilog的 $ value $ plusargs 选项的等效语法或实现是什么?
我正在将源代码从System verilog转换为Specman E,我坚持在Specman E中实现$ value $ plusargs()系统函数。如何将命令行或Makefile中的参数传递给源代码在Specman E?中。 这是我想在Specman E环境中转换并实现的System verilog示例代码,
function load_testname();
if($value$plusargs("test=%s",test_name_s)) begin
$display(“Running testcase is %s”,test_name_s);
end
endfunction
在Specman E中,我可能还需要 $ test $ plusargs() 实现。
答案 0 :(得分:3)
对于$value$plusargs(...)
,有一种sn_plusarg_value(arg: string): string
方法。对于$test$plusargs(...)
,有sn_plusarg_exists(arg: string): bool
。
您可以使用+plusarg[=value]
命令行参数将plusargs传递给Specman。
示例 :
var test_name := sn_plusarg_value("test");
var number_i := sn_plusarg_value("number").as_a(int);