eh3 Posted June 23, 2012 Report Share Posted June 23, 2012 For some of the non-standard functionality of my DUT, particularly error testing and watchdog timeouts, i'd like to be able to simply declare the test as PASSING, and end it. I know this isn't the 'proper' way to do things, but writing the code and components that will allow my tb to handle some of these behaviors gracefully will take a lot more time than the schedule allows. My plan is to use a fairly directed sequence for each of these behaviors. The sequence would do any special setup it needs in order to cause the behavior, then watch for it. When it sees it, however, it'll need to find all the raised objections in the system, and drop them before exiting. It'll also have to set some special flags to keep some post-sim checks from failing the test. Sound like i'm on the right track? It seems like it should be very doable, but i haven't looked at what it takes to hunt down and drop all other objections. Is there another way to do this? Perhaps a global method like uvm_declare_victory_and_exit_the_field() ? Quote Link to comment Share on other sites More sharing options...
janick Posted June 24, 2012 Report Share Posted June 24, 2012 Use the uvm_report_catcher to catch/see the non-standard functionality and prevent it from generating an error and thus fail the simulation. This should allow the simulation to run and terminate normally. Alternatively, you can jump to the report_phase() or simply call $finish(). 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.