Which of the following DMA transfer modes and interrupt-handling mechanisms…
2006
Which of the following DMA transfer modes and interrupt-handling mechanisms enables the highest I/O bandwidth?
Answer: C. Block transfer and Vectored interrupts — ConceptDMA bandwidth depends mainly on how efficiently the controller uses the system bus. A burst or block transfer amortizes bus-arbitration and setup…
- A.
Transparent DMA and Polling interrupts
- B.
Cycle-stealing and Vectored interrupts
- C.
Block transfer and Vectored interrupts
- D.
Block transfer and Polling interrupts
Attempted by 415 students.
Show answer & explanation
Correct answer: C
Concept
DMA bandwidth depends mainly on how efficiently the controller uses the system bus. A burst or block transfer amortizes bus-arbitration and setup overhead across many consecutive words.
Interrupt-handling overhead is separate from data movement. In vectored handling, the interrupting device provides the service-routine vector, avoiding a polling search for the source.
Application
Suppose a device has a block of N words ready. In block mode, DMA acquires the bus once and transfers the N words in consecutive cycles, so arbitration and setup are not repeated for every word.
After the block completes, a vectored interrupt directs the CPU to the device-specific service routine without repeatedly reading device-status registers to identify the source.
Thus the data path uses long consecutive transfers, while the completion path uses direct interrupt dispatch. These two effects reduce overhead on both parts of the I/O operation.
Contrast
Transparent DMA waits for CPU-idle bus slots, so its transfer opportunity depends on gaps in CPU bus use.
Cycle-stealing repeatedly alternates bus ownership for small transfers, incurring more arbitration activity than one block burst.
Polling makes the CPU repeatedly inspect status registers, whereas vectored dispatch identifies the service routine directly.
Cross-check and result
The pair that minimizes repeated bus setup and avoids a polling search is block transfer with vectored interrupts. Therefore, Block transfer and Vectored interrupts enables the highest I/O bandwidth among the given choices.