aputcha Posted September 7, 2011 Report Share Posted September 7, 2011 I tried setting the default seq from command line: +uvm_set_config_string=uvm_test_top.evt1_top_env0.axi_top.axi_system_env.master[0].sequencer.run_phase,default_sequence,axi_intermediate_master_sequence::type_id::get() I also tried escaping the string as -s_opt \+uvm_set_config_string\=uvm_test_top\.evt1_top_env0\.axi_top.axi_system_env.master[0]\.sequencer\.run_phase,default_sequence,axi_intermediate_master_sequence\:\:type_id\:\:get\(\). None of them work. I get the error.. no matches found: +uvm_set_config_string=uvm_test_top.evt1_top_env0.axi_top.axi_system_env.master[0].sequencer.run_phase,default_sequence,axi_intermediate_master_sequence::type_id::get. Does anybody see what's wrong with this? Quote Link to comment Share on other sites More sharing options...
jadec Posted September 7, 2011 Report Share Posted September 7, 2011 For set_config_string, you need to give the string name of the sequence that is "axi_intermediate_master_sequence" not "axi_intermed iate_master_sequence::type_id::get()" Quote Link to comment Share on other sites More sharing options...
vishal.jain Posted September 8, 2011 Report Share Posted September 8, 2011 uvm_set -config *axi_top.axi_system_env.master[0].sequencer.main_phase default_sequence axi_intermediate_master_sequence Quote Link to comment Share on other sites More sharing options...
aputcha Posted September 8, 2011 Author Report Share Posted September 8, 2011 Do you know for sure that I can set the default sequence from command line by specifying the name itself with set_config_string? I was reading in a document which said that String based default sequence, set_config_string(<inst>,”default_sequence”,<seq>) is deprecated. Instead type is used. change to uvm_config_db#(uvm_object_wrapper)::set(this, “seqr.run_phase”,“default_sequence”, myseq::type_id::get()); Do you know how to set it from command line? Quote Link to comment Share on other sites More sharing options...
aputcha Posted September 8, 2011 Author Report Share Posted September 8, 2011 For anybody who might have the questions... For now I found a work around for my problem, by passing the name of the sequence on the cmdline as a plus arg and using that with factory.find_by_name(var) as in uvm_config_db#(uvm_object_wrapper)::set(this, "*.sequencer.run_phase", "default_sequence", factory.find_by_name(default_seq)); Quote Link to comment Share on other sites More sharing options...
uwes Posted September 9, 2011 Report Share Posted September 9, 2011 hi, there is a pending mantis http://eda.org/svdb/view.php?id=3741. this highlights an issue that one cannot set the default sequence from via a string (and therefore from the cmdline) together with the new phase hooks. to make it clear: - "set_config_string(<inst>,”default_sequence”,<seq>)" is not deprecated at all. neither set_config_string nor the string way. - what is deprecated is to setting the default_sequence WITHOUT specifiying the phase (that means the path without the ".xyz_phase" postfix) - setting the default sequence via the type or seq-instance has benefits (type safety, param types) but in some areas the string is legit, valid and the best way to go. /uwe Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.