uvm_cmdline_processor
get_arg_value( string match, ref string value )
Function:
get_arg_value
This function finds the first argument which matches the match arg and
returns the suffix of the argument. This is similar to the $value$plusargs
system task, but does not take a formating string. The return value is
the number of command line arguments that match the match string, and
value is the value of the first match.
使用例子:
uvm_cmdline_processor clp = uvm_cmdline_processor::get_inst();
等價于:
uvm_cmdline_processor clp;
clp=new();
program automatic test;
import uvm_pkg::*;
class hello_world extends uvm_test;
uvm_cmdline_processor clp;
int arg_value;
string arg;
`uvm_component_utils(hello_world);
function new (string name, uvm_component parent);
super.new(name, parent);
clp=new();
if(clp.get_arg_value("+arg_value=",this.arg)) begin
this.arg_value=this.arg.atoi();
`uvm_info("test_arg", $sformatf("input value = %d", arg_value), UVM_DEBUG);
end
else begin
`uvm_info("test_arg", "no input arg_value", UVM_DEBUG);
end
endfunction
endclass
initial begin
run_test();
end
endprogram
運作:
./simv +UVM_TESTNAME=hello_world +UVM_VERBOSITY=UVM_DEBUG +arg_value=100
結果:
UVM_INFO hello.sv(19) @ 0: uvm_test_top [test_arg] input value = 100
參考:
http://www.dvteclipse.com/uvm-1.1-HTML_API/uvm_pkg-uvm_cmdline_processor.html
http://forums.accellera.org/topic/1322-uvm-cmdline-processor-get-arg-values-to-receive-hex/