swathi92 Posted August 25, 2014 Report Share Posted August 25, 2014 i have a sequence lib. i created a base_seq in which i used pre_body() and post_body() to raise and drop objections. but my code is not executing pre and post body. im getting an error indicating time out. how can i resolve it. all the sequences extending base_seq must raise and drop objection......... Quote Link to comment Share on other sites More sharing options...
tudor.timi Posted August 25, 2014 Report Share Posted August 25, 2014 I guess you're using `uvm_do, which inhibits the call of pre/post_body() in sub-sequence (if you look at what the code expands to, the last argument to start(...) is 0, which means don't call pre/post_body()). Either don't use the `uvm_do macro and just call sub_seq.start(...) manually or move your objection raising to pre_start(). In any case, if you raise objections in your virtual sequence (the one that starts these sequences), then you shouldn't need to raise objections in your sub-sequences, as the virtual sequence will anyway have its objection raised throughout the time your sub-sequences execute. This is what Mentor Graphics technologists would recommend, as it costs performance to raise and drop objections because they have to propagate across the whole UVM hierarchy. 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.