Question: Question 1 : Loop unrolling and Static Multi - issue ( 2 5 points ) Assume that you are given a dual - issue pipeline
Question : Loop unrolling and Static Multiissue points
Assume that you are given a dualissue pipeline for RISCV ISA. You can schedule ALU or branch instruction in the first issue slot, and loadstore instruction in the second issue slot of the issue package. You are given the following sequence of instructions.
Loop:
tablelwxx#read from memoryaddx x x#update valueswxx#store it back to memoryaddix xx#update the addressbnex x Loop,#Loop until the address is not equal to the content of x
a points Assume that the loop index for the given loop above is divisible by Unroll the given loop times. Use register renaming as necessary to avoid any name dependencies.
b points How would the unrolled loop in a be scheduled on the given static dualissue pipeline? You may use the following template to show the schedule.
tabletablest SlotALU or branchtablend Slotload or storePackage Package Package Package Package Package
c points Calculate and report the IPC of the system after the loop unrolling, separately. How much speedup achieved after loop unrolling?
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
