A system transfer data blocks of 2000 bytes with programmed I/O, each byte…

2026

A system transfer data blocks of 2000 bytes with programmed I/O, each byte transfer takes 6 CPU cycles, with direct memory access (DMA), the block transfer takes 3000 Cycles total, with CPU setup overhead of 200 cycles. The CPU clock is 1 GHZ.

How many CPU cycles are spent with DMA?

  1. A.

    200 Cycles

  2. B.

    3000 Cycles

  3. C.

    3200 Cycles

  4. D.

    4000 Cycles

Attempted by 66 students.

Show answer & explanation

Correct answer: A

In Programmed I/O (PIO), the CPU handles every byte transfer, consuming significant cycles. However, with Direct Memory Access (DMA), the CPU initiates the transfer and then performs other tasks while the DMA controller handles the data movement. The question asks for the CPU cycles spent with DMA. This includes only the setup overhead required to configure the DMA controller, not the actual data transfer time which is handled by the DMA hardware. Given a setup overhead of 200 cycles, the CPU spends exactly 200 cycles managing this transfer.

Explore the full course: Mppsc Assistant Professor