800 likes | 1.24k Views
PIPELINING. Santosh Lakkaraju CS 147 Dr. Lee. Pipelining. What is it? How does it work? What are the benefits? What could go wrong?. What is pipelining?. Pipelining is a design feature that allows individual common processor tasks to run simultaneously, such as: Fetch Decode Execute.
E N D
PIPELINING Santosh Lakkaraju CS 147 Dr. Lee
Pipelining • What is it? • How does it work? • What are the benefits? • What could go wrong?
What is pipelining? Pipelining is a design feature that allows individual common processor tasks to run simultaneously, such as: FetchDecodeExecute
What is pipelining? Or, more specifically in modern computers, Instruction readDecodeOperand readExecuteOperand write
What is pipelining? • No more “one instruction at a time” processing • Processor works simultaneously on multiple instructions • The cycle time of the processor is reduced, thus increasing instruction issue-rate in most cases.
How does pipelining work? • First instruction is fetched from memory
How does pipelining work? • First instruction is fetched from memory • First instruction is decoded;second instruction is fetched
How does pipelining work? • First instruction is fetched from memory • First instruction is decoded;second instruction is fetched • First instruction’s operands are fetched;second instruction is decoded;third instruction is fetched
How does pipelining work? • First instruction is fetched from memory • First instruction is decoded;second instruction is fetched • First instruction’s operands are fetched;second instruction is decoded;third instruction is fetched • And on, and on, and on…
How does pipelining work? • Because each instruction demands one stage of the processor, the maximum number of simultaneous instructions is the number of stages in the processor
How does pipelining work? A short animation of simple processor routines
How does pipelining work? A short(er) animation of pipelined processor routines