End of Simulation options when agents in passive mode

In reply to dave_59:

Let’s do a little thought experiment. Let’s say that you do implement objections on your output interface’s monitor. Let’s also say that you set a drain time of value 5 (whatever units, this isn’t important). What would happen if you finish your stimulus, drop your test objections and the DUT would want to do some output activity in 10 time units? Well, let’s draw it:

1   2   3   4   5   6   7   8   9   10
- x - x - x - x - x - x - x - x - x - x -
      ^                   ^           ^
      |                   |           |
   stimulus            drain        output
     ends               time          mon
     here             elapsed        would
                        here       raise obj here

Let’s say that the stimulus ends at time 2 (a silly number, but it’s easier to draw). This means that the drain time would elapse at time 7 and the simulation would just stop there. You wouldn’t even get to catch the output transaction that starts at 10, even though the monitor raises objections. What I’m trying to show here is that having objections on the other interface won’t mean that you don’t have to think about a reasonable value for your drain time. And if you already know how big to set your drain time to avoid the situation I described above, you don’t even need to add objections to the output monitor.