Step-1: Speed Up= Time without Pipeline / Time with Pipeline
Step-2: It is given that without pipeline it takes 12ns to execute one instruction. Assuming there are n-instructions, time without pipeline = (12*n) ns.
Step-3: For time with pipeline, when there are k-stages in the pipeline, time taken to execute n-instructions is = (k+n-1) clock cycles.
Step-4: There are six stages in the pipeline, so k=6.
Time with pipeline = (6+n-1) clock cycles
= (n+5) clock cycles.
Step-5: It is also given that very large number of instructions are to be executed. So in the time with pipeline, (n+5) clock cycles, we can ignore 5. So time with pipeline for running large number of instructions = n clock cycles.
Step-6: 1 clock cycle time in pipeline = max. of all stage delays
= max(3, 2, 5, 4, 6, 2)
= 6ns
Now, time with pipeline= (n*6) ns
Asymptotic speedup = (12*n) / (6*n)
= 2