How to get virtual interface in sequence

In reply to chr_sue:

Personally, I’ve tried using TLM for these kinds of operations, and it’s always clunky and bloated.

Lets say I’ve got a sequence, and the very first thing it has to do is wait for the DUT to initialize. This happens at 7ms.

I could…

  1. Just have the seq wait 7.5 ms, then start.
  2. Use a virtual interface to detect a DUT signal going high (assuming it exists)
  3. Go make a new transaction, agent, the previous interface, detect that init is done, broadcast the transaction, somehow connect this to the sequence? All in the name of TLM?

I think a better approach would be to use TLM for things it is good at, and VI for what it’s good at.