retagged by
535 views
1 votes
1 votes

Wikipedia says this about DMA burst mode (https://en.wikipedia.org/wiki/Direct_memory_access#Burst_mode)

In burst mode, an entire block of data is transferred in one contiguous sequence. Once the DMA controller is granted access to the system bus by the CPU, it transfers all bytes of data in the data block before releasing control of the system buses back to the CPU, but renders the CPU inactive for relatively long periods of time. The mode is also called "Block Transfer Mode".

About % CPU consumed, this link (https://gateoverflow.in/116524/coa-dma-doubt?show=116876#a116876) says:

% CPU consumed = [ (Initial time + termination time)/ total time ] * 100

where, total time = Initial time + termination time = transfer time

OR in other words,

total time = bus grant time + bus release time + transfer time

 

This (https://gateoverflow.in/37355/dma-operation?show=63806#a63806) problem says

% of time cpu consumed is: 2/(2+64)

that is,

% CPU consumed = cycle-time / (cycle_time + transfer_time)

 

Doubts

1. Dont you think that two gateoverflow links give different formula?

2. CPU dont hold bus for full duration of (bus grant time + bus release time + transfer time). So should we consider this full duration as CPU consumed or just (bus grant time + bus release time)?

retagged by

Please log in or register to answer this question.

Related questions

7 votes
7 votes
0 answers
1
dd asked Jul 13, 2016
1,998 views
Solution : Some one please explain with correct sequence of steps in each mode and a rough timing diagram.
18 votes
18 votes
1 answer
3
ankitgupta.1729 asked Jul 29, 2017
8,254 views
Please Explain the formulae for % time of CPU blocked in both Cycle Stealing mode and Burst mode of DMA