Driving a single signal with multiple interfaces

In reply to chr_sue:

Sorry about that. I was trying to simplify my sample code as much as possible, and I guess I simplified too much. Hopefully it didn’t cause too much confusion. Really what would happen is I would have two agents, with each one driving one of the two different interfaces. So I would send a sequence to agent 1 that would drive interface1 which would drive dut port x, then I would send a different sequence to agent 2 which would drive interface 2 which would drive dut port x to a different value.

I don’t really understand your statement, “Using a real UVM environment you can easily drive the same port of the DUT by different interfaces.” I’ve been working on this for a while now, and it doesn’t seem to be that simple. Would you mind giving an example of how both interfaces would be connected to the DUT? I want to have a signal x in both interface1 and interface2, with the most recently changed driving the port x on the dut. Ideally, I would like to be able to drive x in interface1 and interface2 as if the other interface didn’t exist.