Skip to main content

Arbitration and memory-mapped vs standard I/O

Short answer

Arbitration methods: priority arbitration uses separate Req/Ack lines, granting highest priority; daisy-chain shares Req and passes Grant serially, priority by position; network-oriented (e.g., I2C) uses wired-AND. Memory-mapped I/O places peripheral registers in memory space, accessed with normal instructions; standard I/O uses a separate I/O space and special IN/OUT instructions.

Explain arbitration systems that are implemented to communicate with peripheral devices from the microprocessor. Differentiate between memory mapped I/O and standard I/O.

Arbitration systems

When more than one peripheral wants to be bus master (or to use the bus through the microprocessor) at the same time, an arbiter decides which one gets the bus.

1. Priority arbitration: the arbiter has a Req/Ack pair for each peripheral and grants the bus to the highest-priority requester (fixed priority, or rotating round-robin priority).

 Req1,2,3 --> [Arbiter] --> Ack1,2,3

2. Daisy-chain arbitration: the devices share a common Req line and the Grant signal is passed from device to device along a chain; the first requesting device in the chain keeps the grant, so priority depends on position.

 Arbiter --Grant--> Dev1 --> Dev2 --> Dev3

3. Network-oriented arbitration: used when masters share a network bus (e.g. CAN or Ethernet). Each device checks that the bus is free before sending; collisions are resolved by priority or by retrying.

Memory-mapped I/O versus standard I/O

PointMemory-mapped I/OStandard (isolated) I/O
Address spaceShared with memorySeparate I/O space
InstructionsNormal data-transfer instructionsSpecial IN/OUT instructions
Control signalsMEMR/MEMWIOR/IOW
Memory availableReducedFull
DecodingMust decode the full memory address widthSimpler; fewer address bits for the small I/O space
Number of portsLargeLimited (e.g. 256)
ExamplesARM, MIPS8085, 8086

✓ Answer checked by Claude Opus 5.5 (high effort)

All Embedded System chapter 5 questions →