Bus Arbitration
Bus Arbitration
Bus Arbitration is the mechanism used to manage access to a shared bus when multiple
devices or components request to use it simultaneously. Since a bus is a shared resource,
arbitration is necessary to determine which device gets control of the bus at any given time.
Centralized Arbitration involves a single central arbiter that controls access to the bus. This
arbiter is responsible for deciding which device gets to use the bus based on requests from all
devices.
Key Components:
Advantages:
Disadvantages:
Single Point of Failure: If the arbiter fails, the entire system is affected.
Scalability Issues: May become a bottleneck as the number of devices increases.
Example:
Here all bus masters use the same line for bus request.
Here controller generate binary address for the master. (To connect 8 bus master we
need 3 address lines 2^3 = 8).
In response to a bus request, the controller “polls” the bus masters by sending a
sequence of bus master address on address lines.
When requesting master recognizes its address, it activates the bus busylines and
takes control of the bus.
Advantage:
a) Priority flexible.
b) One module fails, entire system does not fail.
Disadvantage:
a) Adding bus masters is different as increases the number of address lines of the
circuit.
3) Independent request method:-
All bus masters have their individual bus request and bus grant lines.
The controller thus knows which master has requested, so bus is granted t that master.
Priorities of the masters are predefined so on simultaneous bus requests, the bus is
granted based on the priority, provided the bus busy line is not active.
The controller consists of encoder and decoder logic for priorities.
Advantages:
a) Bus arbitration is fast.
b) Speed independent of no. of devices connected.
Disadvantages:
a) No. of control lines required is more. Hence connecting a large number of bus
masters is difficult.
Distributed Arbitration
Distributed Arbitration is a method where the responsibility for managing bus access is
distributed among the devices or nodes on the bus rather than being controlled by a single
central arbiter. This approach contrasts with centralized arbitration, where a single arbiter
controls bus access.
Distributed Arbitration is used to enhance scalability and fault tolerance in systems where
multiple devices need to share a common bus. Instead of relying on a central unit to grant
access, each device participates in the arbitration process.
Key Features:
2. Arbitration Methods
Distributed arbitration methods vary based on the protocol and system requirements. Here are
common approaches:
In Token-Based Arbitration, a unique token circulates among the devices. Only the device
holding the token can access the bus.
Process:
Token Passing: The token is passed from one device to another in a predefined order.
Bus Access: Only the device with the token can access the bus.
Advantages:
Simple Management: Only one device can access the bus at a time, reducing
conflicts.
Fairness: Ensures each device gets a turn to access the bus.
Disadvantages:
Token Loss: If the token is lost or corrupted, the system can become inoperative until
the token is restored.
Overhead: Passing the token adds communication overhead.
Example:
In Arbitration by Priority, devices are assigned priorities, and access is granted based on
these priorities. Devices with higher priorities are given access before those with lower
priorities.
Process:
Advantages:
Disadvantages:
Example: