You can emulate that in std_logic with a single driver
driving an "H"
(the "pull-up"), and everyone else drives either "0" or
"Z".
Yes. You can write that. But the synthesis tool - if it eats that -
will generate
many ORs... So avoid it. In the company I have worked a bit for, MANY
constructs
were simply forbidden. Thinks like Z, H, L in std_logic are suspicious
:-)
What you say is true for FPGA-internal signals but the output drivers
_can_ be switched to high-impedance.
The open-collector driver you were asking about originally can be
emulated by assigning "Z" directly to the IOB, switching it to high-z.
That will only work if the signal you use is routed directly to the IOB
=> use only in top level entity to be sure.
Yes, of course... IOBs can also be
controlled "manually" using the output enable...
The discussion was about the on-chip (!!) wiring of the OMNIBUS. the original OMNIBUS is
an
open collector thing.
Ph :-)
--