edited by
13,562 views
42 votes
42 votes

A non pipelined single cycle processor operating at $100\;\text{MHz}$ is converted into a synchro­nous pipelined processor with five stages requiring $2.5\;\text{nsec}, 1.5\;\text{nsec}, 2\;\text{nsec}, 1.5\;\text{nsec}$ and $2.5\;\text{nsec}$, respectively. The delay of the latches is $0.5\;\text{nsec}$. The speedup of the pipeline processor for a large number of instructions is:

  1. $4.5$
  2. $4.0$
  3. $3.33$
  4. $3.0$
edited by

4 Answers

Best answer
67 votes
67 votes

Here we have to keep in mind the phrase: 

A non-pipelined single cycle processor

This signifies that instruction in a non pipelined scenario is incurring only a single cycle to execute entire instruction. Hence no concept of stage comes in case of single cycle non pipelined system.

The cycle time can be calculated from clock frequency given in non pipelined system $=100\text{ MHz}$

Therefore clock cycle time in non pipelined system $=\dfrac{1}{(100\times 10^6)} \text{s} =10 \text{ ns}$

Now cycle time in pipelined system $=\text{max(stage delay + interface delay)}$

$=2.5 + 0.5 =3\text{ ns}$

Therefore, 

Speedup $=\dfrac{\text{CPI}_{\text{non pipeline}}\times \text{Cycle time}_{\text{non pipeline}}}
{(\text{CPI}_{\text{pipeline}}\times \text{Cycle time}_{\text{pipeline}})}$

$=\dfrac{1\times 10}{(1\times 3)} =3.33$

 [Since in case of non pipeline we have single cycle processor, so $\text{CPI}_{\text{non pipeline}}=1 \text{ and } \text{CPI}_{\text{pipeline}}$ by default $=1$]

Hence, (C) is the correct answer.

edited by
29 votes
29 votes
Answer is C.

explanation:

for non pipeline system time required $= 2.5 + 1.5 + 2.0 + 1.5 + 2.5 = 10$

for pipelined system $=\text{max(stage delay) + max(latch delay)} = 2.5 + 0.5 = 3$

speedup $=\dfrac{\text{time in non pipelie}}{\text{time in pipeline}}=\dfrac{10}{3}=3.33$
edited by
5 votes
5 votes
Answer C.

Synchronous pipeline - take longest time period

So in pipeline processor t= (3*5)+3*(n-1)

in non-pipeline - 2.5+1.5+2+1.5+2.5 = 10 ns

so speed-up = 10 n / t = 3.333
4 votes
4 votes
we know that speed up = Time taken by non pipeline / Time taken by Pipeline

=ntn/(k+n-1)*tp

where Tn is time  taken by task to complete in non pipleine sytem

and n is no of instructio

k = no of stages

Tp= max ( 2.5+3 . 1.5+.5,2+.5,1.5+.5,2.5+.5) = 3

Now they said that we need to exceute for large number of instrustion so assume n --> infinity

so term (k+n-1) boils down to n

So speed up now beacome ntn/ntp=10/3=3.33
Answer:

Related questions

21 votes
21 votes
4 answers
1