Question: 2. Suppose that in a certain mix of code: 16% of instructions are conditional branches. 60% ofconditional branches are taken. 1%of instructions are jumps (unconditional

 2. Suppose that in a certain mix of code: 16% of

2. Suppose that in a certain mix of code: 16% of instructions are conditional branches. 60% ofconditional branches are taken. 1%of instructions are jumps (unconditional branches, always taken). There is no source of stalling other than stalling related to branches. . A heavily pipelined architecture with fifteen pipeline stages calculates branch addreses (for both unconditional and conditional branches) in the fourth stage, storing the address in the pipeline stage register between the fourth and fifth stages before it can be used. It calculates the condition for conditional branches in the ninth stage, storing the condition bit in the pipeline stage register between the ninth and tenth stages before it can be used. (Throughout, be sure you clearly state how many cycles of stall are needed for conditional and unconditional branches, respectively.) a) If a freeze-the-pipeline strategy is used, what is the CPl? b) c) d) If a predict-not-taken strategy is used, what is the CPl, and what is the speed-up relative to the freeze-the pipeline strategy? If a predict-taken strategy is used, what is the CPI, and what is the speed-up relative to the freeze-the pipeline strategy? What is the theoretical best speed-up that could be achieved if the machine were able to use branch prediction to eliminate all (conditional and unconditional) branch hazards

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!