Presentation is loading. Please wait.

Presentation is loading. Please wait.

No Pipeline IFIDEXMEMWB IFIDEXMEMWB IFIDEXMEMWB instr time IFIDEXMEMWB 1 2 3 4 Assuming 1 cycle for IF/ID/EX/MEM/WB, Total # cycles for n instructions:

Similar presentations


Presentation on theme: "No Pipeline IFIDEXMEMWB IFIDEXMEMWB IFIDEXMEMWB instr time IFIDEXMEMWB 1 2 3 4 Assuming 1 cycle for IF/ID/EX/MEM/WB, Total # cycles for n instructions:"— Presentation transcript:

1 No Pipeline IFIDEXMEMWB IFIDEXMEMWB IFIDEXMEMWB instr time IFIDEXMEMWB 1 2 3 4 Assuming 1 cycle for IF/ID/EX/MEM/WB, Total # cycles for n instructions: n*5 For n = 5 => (25 cycles) add r3, r1, r2 add r6,r4, r5 add r9, r7, r8 add r12, r10,r11 add r15, r13,r14

2 5-stage Pipeline instr time 1 2 3 4 Assuming 1 cycle for IF/ID/EX/MEM/WB, Total # cycles for n instructions = 5 + (n-1) = n + 4 For (n = 5) => (9 cycles) IFIDEXMEMWB IFIDEXMEMWB IFIDEXMEMWB IFIDEXMEMWB 5 IFIDEXMEMWB add r3, r1, r2 add r6,r4, r5 add r9, r7, r8 add r12, r10,r11 add r15, r13,r14

3 Pipeline Forwarding instr time 1 2 3 4 Assuming 1 cycle for IF/ID/EX/MEM/WB, Total # cycles for n instructions = 5 + (n-1) = n + 4 For (n = 5) => (9 cycles) IFIDEXMEMWB IFIDEXMEMWB IFIDEXMEMWB IFIDEXMEMWB 5 IFIDEXMEMWB add r3, r1, r2 add r5,r4, r3 add r7, r6, r5 add r10, r7,r8 add r12, r10,r9 Forwarding: To communicate deps between stage of earlier inst to following insts

4 Superscalar with Issue Width = 2 instr time 1 2 3 4 Assuming 1 cycle for IF/ID/EX/MEM/WB, Total # cycles for n instructions = 5 + ceil[(n-2)/2] For (n = 5) => (7 cycles) IFIDEXMEMWB 5 IFIDEXMEMWB IFIDEXMEMWB IFIDEXMEMWB IFIDEXMEMWB add r3, r1, r2 add r6,r4, r5 add r9, r7, r8 add r12, r10,r11 add r15, r13,r14

5 SIMD Pipeline IFIDEXMEMWB EX instr 1 2 3 time EX Fewer instructions operate on more elements in parallel addv v3, v1, v2 Single vector instr takes 5 cycles (5 scalar insts in 7 cycles on superscalar) Assume 5-element vector v1 = [r1, r4, r7,r10,r13] v2 = [ r2, r5, r8, r11, r14] (Total of 15 scalar adds in 7 cycles) vs (4 scalar adds in 7 cycles) addv v6, v5, v4 addv v9, v8, v7 EX IFIDEXMEMWB EX IFIDEXMEMWB EX

6 What if you had dependencies between vector insts ? addv v3, v1, v2 addv v5, v4, v3 addv v7, v6, v5

7 Vector SIMD Pipeline: Chaining IFIDEXMEMWB EX instr 1 2 3 time EX Vector SIMD Pipeline (Chaining): Composition of SIMD with Pipeline Forwarding EX IFIDEXMEMWB EX IFIDEXMEMWB EX

8 Vector SIMD Pipeline: Chaining IFIDEXMEMWB EX IF/EXID/EXEXMEMWB 1 2 3 time IFID/EXEXMEMWB IF/EXID/EXEXMEMWB EX


Download ppt "No Pipeline IFIDEXMEMWB IFIDEXMEMWB IFIDEXMEMWB instr time IFIDEXMEMWB 1 2 3 4 Assuming 1 cycle for IF/ID/EX/MEM/WB, Total # cycles for n instructions:"

Similar presentations


Ads by Google