A device that initiates data transfers on the bus at any given time is called a bus master.
In a computer system, there may be more than one bus master such as a DMA controller or a processor etc.
These devices share the system bus and when a current master bus relinquishes another bus can acquire the control of the processor.
Bus arbitration is a process by which next device becomes the bus controller by transferring bus mastership to another bus.
There are two types of bus arbitration namely
Only single bus arbiter performs the required arbitration and it can be either a processor or a separate DMS controller.
There are three arbitration schemes which run on centralized arbitration.
a) Daisy Chaining − It is a simple and cheaper method where all the masters use the same line for making bus requests.
b) Polling Method − In this method, the controller is used to generate address lines for the master. For example, if there are 8 masters connected in a system at least 3 address lines are required.
c) Independent Request − In this scheme, each bus has its own bus request and a grant. The built-in priority decoder selects the highest priority requests and asserts the system.
Here, all the devices participate in the selection of the next bus master.
Each device on the bus is assigned a4 bit identification number.
When one or more devices request control of the bus, they assert the start arbitration signal and place their 4-bit identification numbers on arbitration lines through ARB3.
Each device compares the code and changes its bit position accordingly.
It does so by placing a 0 at the input of their drive.
The distributed arbitration is highly reliable because the bus operations are not dependant on devices.