Bus contention is an undesirable state in
computer design where more than one device on a
bus attempts to place values on it at the same time.
Bus contention is the kind of
telecommunication contention that occurs when all communicating devices communicate directly with each other through a single shared channel, and contrasted with "network contention" that occurs when communicating devices communicate indirectly with each other, through point-to-point connections through routers or bridges.
Bus contention can lead to erroneous operation, excess power consumption, and, in unusual cases, permanent damage to the hardware—such as burning out a
MOSFET
upright=1.3, Two power MOSFETs in amperes">A in the ''on'' state, dissipating up to about 100 watt">W and controlling a load of over 2000 W. A matchstick is pictured for scale.
In electronics, the metal–oxide–semiconductor field- ...
.
[
Ian Sinclair; John Dunton]
"Practical Electronics Handbook"
2013.
section "Three-state control".
p. 208.
Description
Most bus architectures requires devices sharing a bus to follow an arbitration protocol carefully designed to make the likelihood of contention negligible.
[.] However, when devices on the bus have logic errors, manufacturing defects, or are driven beyond their design speeds, arbitration may break down and contention may result. Contention may also arise on systems which have a programmable
memory mapping when illegal values are written to the
registers controlling the mapping.
Most small-scale computer systems are carefully designed to avoid bus contention on the
system bus. They use a single device, called
bus arbiter, that controls which device is allowed to drive the bus at each instant, so bus contention never happens in normal operation. The standard solution to bus contention between memory devices, such as
EEPROM and
SRAM, is the
three-state bus with a bus arbiter.
Some networks, such as
Token Ring, are also designed to avoid bus contention, so bus contention never happens in normal operation.
Most networks are designed with hardware robust enough to tolerate occasional bus contention on the network.
CAN bus,
ALOHAnet
ALOHAnet, also known as the ALOHA System, or simply ALOHA, was a pioneering computer networking system developed at the University of Hawaii. ALOHAnet became operational in June 1971, providing the first public demonstration of a wireless pack ...
,
Ethernet
Ethernet ( ) is a family of wired computer networking technologies commonly used in local area networks (LAN), metropolitan area networks (MAN) and wide area networks (WAN). It was commercially introduced in 1980 and first standardized in 198 ...
, etc., all experience occasional bus contention in normal operation, but use some protocol (such as
Multiple Access with Collision Avoidance,
carrier-sense multiple access with collision detection, or
automatic repeat request
Automatic repeat request (ARQ), also known as automatic repeat query, is an error-control method for data transmission that uses acknowledgements (messages sent by the receiver indicating that it has correctly received a message) and timeout ...
) to minimize the times that contention occurs, and to re-send data that was corrupted in a
packet collision.
See also
*
Network on a chip
*
Parallel communication
In data transmission, parallel communication is a method of conveying multiple binary digits ( bits) simultaneously using multiple conductors. This contrasts with serial communication, which conveys only a single bit at a time; this distinction ...
*
Serial communication
References
{{Computer-bus
Computer buses