Question: 1. (20 pts) Suppose we are using scoreboarding to dynamically schedule code. We have five functional units: 2 ALU's for integer operations (including loads and

1. (20 pts) Suppose we are using scoreboarding to dynamically schedule code. We have five functional units: 2 ALU's for integer operations (including loads and stores for both integer as well as floating point values), 1 floating point addition and subtraction unit, 1 FP multiplication unit, and 1 FP division unit. The execution stage latencies for the various functional units are shown below. Consider the following program: Function units cycles instructions instruction type instruction no. Il FUI (ALU integer) FU2 (ALU integer) FU3 (FP add subtract) FU4 (FP multiplication) FU5 (FP division) 13 ADDI R4, R4, #4 ADDF F5, F3, FO LF F3, 400(R4) MULTF F5, F3, FO DIVF F2, F4, F5 Integer Float Integer Float Float 14 ion 15 Suppose that the first instruction (II) is currently in the execute stage. The second instruction (12) has issued but its operands have not yet been read. Assume that at the start of this code fragment, no functional unit is computing values targeted for FO and F3 (so 12's operands are ready). (a.l) For each of the remaining instructions (13, 14, 15), determine whether the instruction can be issued. If it cannot be issued, explain why not. NO Can 13, "LF F3, 400(R4)", be issued? YES If not, why not? NO_ Can 14, "MULTF F5, F3, FO", be issued? YES_ If not, why not? Can 15, "DIVF F2, F4, F5", be issued? YES_NO__ If not, why not
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
