Gunther Posted January 7, 2013 Report Share Posted January 7, 2013 Hello, I've got an object which over the course of a test raises one or more objections. At some point, I need to drop all outstanding objections. It could be any amount outstanding, including none at all. To drop all outstanding objections, I thought I could just use the count paramter of drop_objection(), like so: drop_objection (this, .count (get_objection_count(this))); This works fine except when there are no outstanding objections on that object. A drop_objection (.count(0)) will result in an UVM_FATAL [OBJTN_ZERO] Object "..." attempted to drop objection count below zero. I have not found anything in the UVM documentation that I am not allowed to do this. (It does say must not go below 0, but I'm not doing that.) I have put the drop_objection() inside an if statement, that works fine. But should I really have to do this? I think a better solution would be to do this check inside function void m_drop() in uvm_objection.svh. Comments appreciated... Cheers Gunther Quote Link to comment Share on other sites More sharing options...
uwes Posted January 11, 2013 Report Share Posted January 11, 2013 hi, why not just "objection-instance.clear()" /uwe Quote Link to comment Share on other sites More sharing options...
Gunther Posted March 20, 2013 Author Report Share Posted March 20, 2013 Fair point, I hadn't known about this. On the other hand: Why should I not be allowed to do what I did? I still think this should work. And I am certainly NOT dropping the objection count below 0, so at the very least the error message is misleading. Gunther Quote Link to comment Share on other sites More sharing options...
mastrick Posted March 21, 2013 Report Share Posted March 21, 2013 There is a Mantis already filed to fix this problem http://www.eda-stds.org/mantis/view.php?id=3901 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.