edited by
18,647 views
43 votes
43 votes
The size of the data count register of a $\text{DMA}$ controller is $16\;\text{bits}$. The processor needs to transfer a file of $29,154$ kilobytes from disk to main memory. The memory is byte addressable. The minimum number of times the $\text{DMA}$ controller needs to get the control of the system bus from the processor to transfer the file from the disk to main memory is _________.
edited by

6 Answers

0 votes
0 votes
Since nothing is mentioned about the mode of DMA working whether it is cycle stealing mode or burst mode, we consider it as burst mode by default.
As the data count register of the DMA is 16 bits long in burst mode DMA transfers 216 Bytes (= 64KB) once it gets the control.
To transfer 29,154 KB, no. of times DMA needs to take control
= (29,154 KB / 64KB)
= 29,154/64
= 455.53, means 456 times.
0 votes
0 votes
  1. Convert file size to bytes:

    • 29,154 kilobytes * 1024 bytes/kilobyte = 29,805,568 bytes
  2. Calculate maximum transfer size per DMA request:

    • 2^16 - 1 = 65,535 bytes (16-bit data count register)
  3. Divide total file size by maximum transfer size:

    • 29,805,568 bytes / 65,535 bytes/request = 455.99 requests
  4. Round up to the nearest whole request:

    • 455.99 requests ≈ 456 requests
Answer:

Related questions

23 votes
23 votes
4 answers
2
Sandeep Singh asked Feb 12, 2016
12,520 views
A processor can support a maximum memory of $4\;\textsf{GB}$, where the memory is word-addressable (a word consists of two bytes). The size of address bus of the processo...
85 votes
85 votes
18 answers
4
Sandeep Singh asked Feb 12, 2016
35,429 views
Let $G$ be a complete undirected graph on $4$ vertices, having $6$ edges with weights being $1, 2, 3, 4, 5,$ and $6$. The maximum possible weight that a minimum weight s...