wilsony Posted January 4, 2013 Report Share Posted January 4, 2013 I ran into a problem that my sequence's pre_body() is not executed. Tracing the problem indicates it is not called on purpose (by setting call_pre_post=0) because this is a sub-sequence( this sequence is invoked from a sequence_library). Can anyone suggest a good solution to force this "sub-sequence"'s pre_body() to be executed? I see one possible solution of overriding 'task uvm_sequence_library::execute(...)" to manually start/rand/finish instead of `uvm_rand_send(). I'm hoping for a simpler solution. Thanks! Quote Link to comment Share on other sites More sharing options...
jadec Posted January 4, 2013 Report Share Posted January 4, 2013 You could use pre_start() which is always called. Quote Link to comment Share on other sites More sharing options...
wilsony Posted January 4, 2013 Author Report Share Posted January 4, 2013 That works. Thanks!! Confusing... pre_body() is mentioned in uvm_user_guide everywhere while there is no mention of pre_start(). I see that for most applications, users should put their code in pre_start(). pre_body() seems to be a more advance topic. Also wish they were named more intuitively, something like pre_body() and optional_pre_body()... Quote Link to comment Share on other sites More sharing options...
jadec Posted January 5, 2013 Report Share Posted January 5, 2013 You should read the uvm_sequence_base section of the reference guide that gives a detailed list of all the sequence methods called. 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.