I am having a lot of trouble trying to simulate an OpenCollector line.
Basically I have a design with a Xilinx' IOB driver which is supposed to connect to an OpenDrain line. My goal is to have multiple modules all connected to the same line (which should also have a pullup) so that when one modules pulls the line low all other modules can see it. Ideally I would also like to model collisions, in other words, if more than one module drive the lines in a Push&Pull fashion (the behaviour of the IOB is configurable) I would like to see that in the simulation with an X or U.
Moreover, I would also like to model delays. In other words, I would like to be able to model how long it takes for the signal to propagate from one port to another.
What does SV offer for this purposes?