The idea is to use so-called open-collector transistors as the sole connection to the bus. While the output transistor is conducting, the voltage on the bus is actively driven to a low value. As soon as the output transistor is switched off, the gate is effictively disconnected from the bus and the bus is not driven at all. Additionally, a pullup transistor or a similar device (like SCSI active terminators) is used to generate a logically well-defined but weak high voltage on the bus. Note that it does not hurt if many transistors are active at the same time, because they can only drive compatible (low) values.This structure is also called a WIRED-AND, because the logical function is implicit in the wiring and the value on the bus in only 1 if all device outputs are 1. Naturally, the complementary structure, called wired-OR, is possible too. Such buses are often used in practice, because the open-collector outputs are very cheap and there is no risk of short-circuits. For example, the SCSI interface bus found on many workstation and server computers is based on open-collector circuits in all devices. The two devices at both ends of the bus are configured to 'terminate' the bus, which means to activate internal circuitry that generates the weak high bus state.
Run the applet | Run the editor (via Webstart)