文档介绍:Computer Architecture ----A Quantitative Approach
计算机体系结构
计算机体系结构
Chapter 3 PIPELINING Basic and Intermediate Concepts流水线:基本概念
王奕
Estelle.******@gmail. com
A. 流水线基本定义
What is pipelining?
(什么是流水线)
How is the pipelining Implemented?
(流水线是怎么实现的)
What makes pipelining hard to implement?
(流水线实现的困难是什么)
Basic methods improving pipelining
(提高流水线性能的一些基本方法)
What is Pipelining ?
Pipelining(流水线定义):
“A technique designed into puters to increase speed by starting the execution of one instruction pleting the previous one.”
----Modern English-Chinese Dictionary
implementation technique whereby different instructions are overlapped in execution at the same time.(多条指令同时重叠执行)
implementation technique to make fast CPUs
Why Pipelining: Its Nature(流水线的本质)
Laundry(洗衣店)
Ann, Brian, Cathy, Dave each have one load of clothes to wash, dry, and fold
Washer(洗衣机) takes 30 minutes
Dryer(干衣机) takes 40 minutes
“Folder”(叠衣人) takes 20 minutes
A
B
C
D
顺序执行的洗衣
Sequential laundry takes 6 hours for 4 loads
If they learned pipelining, how long would laundry take?
A
B
C
D
30
40
20
30
40
20
30
40
20
30
40
20
6 PM
7
8
9
10
11
Midnight
Time
T
a
s
k
O
r
d
e
r
流水线的洗衣 ----开始工作越快越好
Pipelined laundry takes hours for 4 loads
A
B
C
D
6 PM
7
8
9
10
11
Midnight
T
a
s
k
O
r
d
e
r
Time
30
40
40
40
40
20
Why pipelining : overlapped(重叠)
Latches(锁存器), called pipeline registers break putation into 5 stages
Deal 5 tasks at the same time.
Only deal one task each time.
This task takes
“ such a long time”
ns: nanosecond 纳秒即十亿分之一秒
Why pipelining: more faster
Can “launch(开始)” a putation every 100ns in this structure
Can finish putations per second
Can launch a putation every 20ns in pipelined structure
Can finish 5×putations per second
Why pipelining : conclusion
The key implementation technique used to Make fast CPU: decrease CPUtime.(减少CPU时间的关键技术)
Improving of Throughput ( rather than individual execution time) (提高吞吐量,而不是单条指令的执行时间)
Improv