The design team for a simple, single-issue processor is choosing between a pipel
ID: 3781519 • Letter: T
Question
The design team for a simple, single-issue processor is choosing between a pipelined or non-pipelined implementation. Here are some design parameters for the twopossibilities:
Parameter Pipelined Version Non-Pipelined Version
Clock Rate
500MHz
350 MHz
CPI for ALU instructions
1
1
CPI for Control instructions
2
1
CPI for Memory instructions
2.7
1
(a) For a program with 20% ALU instructions, 10% control instructions and 70% memory instructions, which design will be faster? Give a quantitative CPI average for each case.
(b) For a program with 80% ALU instructions, 10% control instructions and 10% memory instructions, which design will be faster? Give a quantitative CPI average for each case.
Clock Rate
500MHz
350 MHz
CPI for ALU instructions
1
1
CPI for Control instructions
2
1
CPI for Memory instructions
2.7
1
Explanation / Answer
a)
Average CPI for Pipelined Version = (0.2*1 + 0.1*2 + 0.7*2.7) = 2.29
Average CPI for Non-Pipelined Version = (0.2*1 + 0.1*1 + 0.7*1) = 1.0
CPU execution time for Pipelined version = 2.29/(500 Mhz) = 4.58ns
CPU execution time for Non-Pipelined version = 1.0/(350 Mhz) = 2.8ns
The Non-Pipelined version is faster.
b)
Average CPI for Pipelined Version = (0.8*1 + 0.1*2 + 0.1*2.7) = 1.27
Average CPI for Non-Pipelined Version = (0.8*1 + 0.1*1 + 0.1*1) = 1.0
CPU execution time for Pipelined version = 1.27/(500 Mhz) = 2.54ns
CPU execution time for Non-Pipelined version = 1.0/(350 Mhz) = 2.8ns
The pipelined version is faster.