pipelining - What is pipelining Implementation technique in...

Info iconThis preview shows pages 1–10. Sign up to view the full content.

View Full Document Right Arrow Icon
April 21, 2010 204521 Digital System 1 What is pipelining? Implementation technique in which multiple instructions are overlapped in execution Real-life pipelining examples? Laundry Factory production lines Traffic??
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
April 21, 2010 204521 Digital System 2 Instruction Pipelining (1/2) Instruction pipelining is CPU implementation technique where multiple operations on a number of instructions are overlapped . An instruction execution pipeline involves a number of steps, where each step completes a part of an instruction. Each step is called a pipeline stage or a pipeline segment. The stages or steps are connected in a linear fashion : one stage to the next to form the pipeline -- instructions enter at one end and progress through the stages and exit at the other end. The time to move an instruction one step down the pipeline is is equal to the machine cycle and is determined by the stage with the longest processing delay.
Background image of page 2
April 21, 2010 204521 Digital System 3 Instruction Pipelining (2/2) Pipelining increases the CPU instruction throughput : The number of instructions completed per cycle. Under ideal conditions (no stall cycles), instruction throughput is one instruction per machine cycle, or ideal CPI = 1 Pipelining does not reduce the execution time of an individual instruction: The time needed to complete all processing steps of an instruction (also called instruction completion latency ). Minimum instruction latency = n cycles, where n is the number of pipeline stages
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
4 Pipelining Example: Laundry A B C D Laundry Example Ann, Brian, Cathy, Dave each have one load of clothes to wash, dry, and fo ld Washer takes 30 minutes Dryer takes 40 minutes “Folder” takes 20 minutes
Background image of page 4
5 Sequential Laundry laundry take? 40 20 6 PM 7 8 9 10 11 Midnight T a s k O r d e r Time
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
April 21, 2010 204521 Digital System 6 Pipelined laundry takes 3.5 hours for 4 loads Speedup = 6/3.5 = 1.7 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 Pipelined Laundry Start work ASAP
Background image of page 6
April 21, 2010 204521 Digital System 7 Pipelining Lessons Pipelining doesn’t help latency of single task, it helps throughput of entire workload Pipeline rate limited by slowest pipeline stage Multiple tasks operating simultaneously Potential speedup = Number pipe stages Unbalanced lengths of pipe stages reduces speedup Time to “ fill ” pipeline and time to “ drain ” it reduces speedup A B C D 6 PM 7 8 9 T a s k O r d e r Time 30 40 40 40 40 20
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
April 21, 2010 204521 Digital System 8 Pipelining Example: Laundry Pipelined Laundry Observations: At some point, all stages of washing will be operating concurrently Pipelining doesn’t reduce number of stages doesn’t help latency of single task helps throughput of entire workload As long as we have separate resources , we can pipeline the tasks Multiple tasks operating simultaneously use different resources
Background image of page 8
April 21, 2010 204521 Digital System 9 Pipelining Example: Laundry Pipelined Laundry Observations: Speedup due to pipelining depends on the number of stages in the pipeline Pipeline rate
Background image of page 9

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 10
This is the end of the preview. Sign up to access the rest of the document.
  • Spring '10
  • KP
  • Central processing unit, Instruction pipeline, Instruction processing, Branch instruction Branch successor Branch

{[ snackBarMessage ]}

Page1 / 75

pipelining - What is pipelining Implementation technique in...

This preview shows document pages 1 - 10. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online