retagged by
3,452 views
3 votes
3 votes
Consider a non- pipelined machine with 10 ns clock cycle. It uses 4 cycles for ALU operations and branches and 5 cycles for memory operations. Assume that the relative frequencies of these operations are 40%, 20% and 40% respectively. Let due to clock skew and pipelining setup, the machine adds 1 ns of overhead to the clock. How much speed in instruction execution rate will we gain from pipelining?
retagged by

3 Answers

Best answer
5 votes
5 votes

First of all average cycles for one instruction :  $4*0.4 \ + 4*0.2 \ + 5*0.4 \ = 4.4$ cycles.

Without using pipeline processor one instruction takes = $10ns \ *4.4 = 44 ns$ = tn

With Pipeline processor considering CPI as one ( because questions does not provide any other stalls or delay) pipeline clock speed = 10ns + overhead = 11ns = tp

SpeedUp = $\frac{44}{11} = 4$

Ref : https://www.udacity.com/wiki/hpca/problem-set-solutions/pipelining/problem6a

selected by
0 votes
0 votes
For executing one instruction Tavg=0.4*4+0.2*4+0.4*5=44

Twp=44;

Tp=Tc+Toverhead=10+1=11ns

Now;

Speedup=Twp/Tp=44/11=4
–1 votes
–1 votes

speedup=Time(non-pipelined)/Time(pipelined)

Time(non-pipelined)=10ns 

Time(pipelined)=0.4*4+0.2*4+0.4*5=4.4 ns (plus 1ns overhead)=5.4ns

speed up= 10/5.4=1.85

Related questions

0 votes
0 votes
1 answer
4
kathan Mistry asked Aug 9, 2022
605 views
In a pipelined architecture Static branch prediction is used with branch taken assumption. Assume that 30% of the instructions executed for a program are branch instructi...