1 votes 1 votes please draw chart for this question tiger asked Dec 26, 2015 tiger 993 views answer comment Share Follow See all 0 reply Please log in or register to add a comment.
Best answer 1 votes 1 votes $10$ cycles are required. amarVashishth answered Dec 26, 2015 • selected Dec 26, 2015 by tiger amarVashishth comment Share Follow See all 9 Comments See all 9 9 Comments reply Show 6 previous comments amarVashishth commented Dec 27, 2015 reply Follow Share @Weird_Boy use NPTEL lectures(one of those is delivered by Ajit Pal, IIT Kgp) to procure the following in pipeline: RISC Pipeline Pipeline Hazards Ways to Reduce Stall cycles (i.e tackling hazards) --just introduction is required. In this operand forwarding is must; Do NOT go in-depth on topics like compiler rearrangements, tomasulo's algorithm. Performance evaluation of a pipelined processor. It could be the case, we could have done that and that may be a latest update in technology too, But problem is that it is not discussed in NPTEL lectures(if found by anyone, please inform the GATEOverflow community about it), so we should avoid doing that by default. 0 votes 0 votes mcjoshi commented Oct 4, 2016 reply Follow Share @Kapilp @vijaycs @habibkhan Why there is stall at MA of first instruction ? 0 votes 0 votes Habibkhan commented Oct 4, 2016 reply Follow Share There is a stall at MA of 1st instruction because the ADD operation is going to be done successfully only if we have the values of r2 and r0 .Here we have no issue with r2 since it is being used for the 1st time but for r0 it will be available only after the MA stage of load instruction. So even though the operand forwarding mechanism is enabled , the operand buffer which is just after the MA stage is going to forward the value of r0 to the next cycle once the MA stage of load instruction is going to be completed.That is why we are not able to write EX of add instruction directly under the MA of load instruction since the operand forwarding takes place by the buffer after the MA stage only. In short , execute stage of ADD is only possible only if we get the value of r0 which we can get after MA stage of load instruction.So 1 stall is necessary. Had there been no operand forwarding , then there would be 2 stalls instead of 1 since in that case execution is possible , as we know if we get the values of both r0 and r2 and r0 value will be obtained only after the WB(writeback) stage in that case. 3 votes 3 votes Please log in or register to add a comment.