in CO and Architecture
5,378 views
9 votes
9 votes

A processor is fetching instructions at the rate of $1$ MIPS. A DMA module is used to transfer characters to RAM from a device transmitting at $9600$ bps. How much time will the processor be slowed down due to DMA activity?

  1. $9.6$ms
  2. $4.8$ms
  3. $2.4$ms
  4. $1.2$ms
in CO and Architecture
by
1435 1865 2328
5.4k views

2 Comments

Please provide some good solution to this question.
0
0

Subscribe to GO Classes for GATE CSE 2022

5 Answers

9 votes
9 votes
 
Best answer

 External Device sends data to DMA module in 1 sec =9600 bits

                                                                              =9600/8=1200 Bytes

Now Processor runs instructions in 1 second= 1 Million  (because 1 MIPS means 1 million instructions per second)

                                                                = 10 ^ 6

So time will the processor be slowed down due to DMA activity =  1200 / (10^6)= 0.0012 seconds

                                                                                                                                = 1.2 ms

selected by
by
32 57 81

4 Comments

how  do we know that it is 9600 bit per second bcz it may be 9600 byte per sec
0
0
bps -> bits per sec

Bps -> bytes per sec
3
3
How you divide two time unit and get msec as time unit? can you pls explain?
2
2
How can we divide cancel out Bytes and Instructions?

I mean as per the formula the unit of answer will be

Bytes * seconds / Instructions

How are we cancelling out bytes and instructions? Is it assumed 1 Instruction is of 1 Byte?
1
1
5 votes
5 votes

DMA usually operates in cycle stealing mode, where it transfers 1 byte per cycle. //Default assumption.

So, given DMA bandwidth = 9600bps = 1200 bytes per sec.

1 MIPS = 1 Million Instructions Per Second.

So, normally, CPU fetches $10^6$ instructions each second.

Now, CPU can fetch $10^6 - 1200$ instructions per second. //Assumption 1 instruction = 1B

Rate of change = $\frac{10^6-(10^6-1200)}{10^6}$ = $\frac{1200}{10^6}$ = $1.2*10^{-3}$

 

Option D

by
4 8 39

1 comment

thanx for the right concept
0
0
3 votes
3 votes

Assuming Data Width of the System bus is Byte,DMA Will run every Cycle for every Byte.which has arrived.

So,

10^6 bits  in   1 second
1 bit   in 1/10^6 second
9600 bits in    9600* 1/10^6 seconds
9600/8 bytes in    9600/8* 1/10^6 seconds

Which gives 1.2 ms  or 1MIPS..

Option D)

 

by
18 31 76

2 Comments

How did u get "10^6 bits  in   1 second" ?

0
0
1 Million Instruction per second 10^6
0
0
0 votes
0 votes
Assuming Instruction size = 1 byte.

Processor speed = 1MIPS

 It can fetech in 1 sec 10^6 byte.

With DMA it can fetech in 1 sec 1200 byte.

% of slow down = 1200*100/10^6 = .12%
by
18 45 72
0 votes
0 votes
Given data,
A processor is fetching instructions at the rate=1 MIPS.
DMA module transferring characters=9600 bps
Step-1: DMA module transferring characters= 9600/8 bps
= 1200 bps
Step-2: Here, we have to find out slow down in milliseconds.
Slowdown = 1200/106
= 12*1000/104ms
= 1.2 ms
by
2 5 7
Answer:

Related questions