Q2Computer Architecture
Question
Q.2. Describe in detail about the bus arbitration techniques in DMA.
Answer
Bus arbitration techniques in DMA — daisy chaining, polling, and independent request/grant lines — determine which of multiple simultaneously-requesting DMA devices gains control of the shared system bus.
When multiple DMA-capable devices may need to access the system bus to transfer data with memory independently of the CPU, bus arbitration mechanisms determine which device is granted control at any moment, since only one device can drive the bus at a time.
Daisy Chaining: devices are connected in a series (chain) with respect to a single bus-grant signal originating from the bus controller. When a device requests the bus, it examines the incoming grant signal; if it needs the bus, it takes control and blocks the signal from propagating further; otherwise, it passes the grant signal on to the next device in the chain. Priority is thus fixed by physical position (devices earlier in the chain, closer to the controller, always have higher priority), which is simple and requires minimal wiring but is inflexible and vulnerable to a single device failure disrupting the entire chain.
Polling: the bus controller sequentially interrogates each device (using a set of address/poll lines) to determine which one is requesting bus access, granting the bus to the first device found to be requesting it in the polling sequence. This method allows software to dynamically alter device priority simply by changing the polling order/program, offering greater flexibility than fixed daisy chaining, but is comparatively slower since it may require several polling cycles before reaching and servicing a lower-priority device's request.
Independent Request/Grant (centralized parallel arbitration): each device is connected to the bus controller via its own dedicated request and grant line, allowing the controller to receive all requests simultaneously and use built-in priority-encoding logic to immediately grant the bus to the highest-priority requester in a single decision step. This offers the fastest arbitration response since there is no sequential propagation delay (as in daisy chaining) or repeated polling cycles, but requires significantly more wiring/hardware, scaling less economically as the number of devices grows large.
Cost/speed comparison: daisy chaining requires the least wiring (a single grant line threaded through all devices) but is the slowest to resolve arbitration for devices far down the chain and offers no priority flexibility; polling requires moderate wiring (a set of address lines shared by all devices) and offers software-configurable priority at the cost of potentially several polling cycles' delay; and independent request/grant lines offer the fastest, single-step arbitration decision but scale poorly in wiring cost as the number of devices grows, since each device needs its own dedicated pair of lines to the central arbiter. Priority schemes within arbitration: regardless of which physical arbitration technique is used, the system must also define a priority policy for resolving simultaneous requests. Fixed (static) priority always favors the same device(s) in case of conflict, which is simple but can lead to starvation of low-priority devices under heavy contention from high-priority ones. Rotating (round-robin) priority cycles which device is considered highest priority after each grant, ensuring fairer long-term access distribution among devices. The choice of arbitration technique combined with the priority scheme is an important system design decision, balancing hardware cost, arbitration speed, and fairness of access among competing DMA-capable devices such as disk controllers, network interfaces, and graphics adapters.