Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter One Introduction to Pipelined Processors

Similar presentations


Presentation on theme: "Chapter One Introduction to Pipelined Processors"— Presentation transcript:

1 Chapter One Introduction to Pipelined Processors

2 Pipelining It is a technique of decomposing a sequential process into sub-operations which can be executed in a special dedicated segment that operates concurrently with all other segments It improves processor performance by overlapping the execution of multiple instructions

3 Example

4 Pipelining: Its Natural!
Laundry Example 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

5 Sequential Laundry Sequential laundry takes 6 hours for 4 loads
6 PM 7 8 9 10 11 Midnight Time 30 40 20 30 40 20 30 40 20 30 40 20 T a s k O r d e A B C D Sequential laundry takes 6 hours for 4 loads If they knew pipelining, how fast their laundry would be?

6 Pipelined Laundry starts work ASAP
6 PM 7 8 9 10 11 Midnight Time 30 40 20 T a s k O r d e A B C D Pipelined laundry takes 3.5 hours for 4 loads

7 Observations on Pipeline Processing
It works well if time taken by each stage is nearly the same If this time is T seconds, then the pipeline produces output at every T seconds If time taken by each stage varies, then the slower stage becomes a bottleneck in the progress

8 Pipelined Laundry Suppose each stage takes 30 minutes
6 PM 7 8 9 PM Suppose each stage takes 30 minutes Time to wash, dry, and fold one load is still the same (90 minutes) Then the work will get over in 3 hours C 30 A 30 B 30 Time D 30 30 30

9 Pipelined Laundry Here 40 minutes takes over the pipeline cycle 6 PM 7
8 9 10 11 Midnight Time 30 40 20 T a s k O r d e A B C D Here 40 minutes takes over the pipeline cycle

10 Pipelining in 8086 ?

11 Example for pipeline in computer
Consider that the process of execution of an instruction involves four major steps: Instruction Fetch (IF): from main memory Instruction Decoding (ID): which identifies the operation to be performed Operand Fetch(OF): if needed in execution Execution(EX): of the decoded arithmetic/logic operation

12 Example for pipeline in computer
In a non-pipelined computer, these four steps must be completed before the next instruction can be issued

13 Example for pipeline in computer
In a pipelined computer, successive stages are executed in an overlapped fashion

14 Example for pipeline in computer
Theoretically a k-stage linear pipeline could be k-times faster. But this ideal speedup cannot be achieved due to factors like : Data dependency Branch and Interrupts

15 Principles of Linear Pipelining

16 Principles of Linear Pipelining
In pipelining, we divide a task into set of subtasks. The precedence relation of a set of subtasks {T1, T2,…, Tk} for a given task T implies that the task Tj cannot start until some earlier task Ti finishes. The interdependencies of all subtasks form the precedence graph.

17 Principles of Linear Pipelining
With a linear precedence relation, task Tj cannot start until earlier subtasks { Ti} for all (i < j) finish. A linear pipeline can process subtasks with a linear precedence graph.

18 Basic Linear Pipeline L: latches, interface between different stages of pipeline S1, S2, etc. : pipeline stages

19 Basic Linear Pipeline It consists of cascade of processing stages.
Stages : Pure combinational circuits performing arithmetic or logic operations over the data flowing through the pipe. Stages are separated by high speed interface latches. Latches : Fast Registers holding intermediate results between stages Information Flow are under the control of common clock applied to all latches

20 Basic Linear Pipeline L: latches, interface between different stages of pipeline S1, S2, etc. : pipeline stages

21 Basic Linear Pipeline The flow of data in a linear pipeline having four stages for the evaluation of a function on five inputs is as shown below:

22 Basic Linear Pipeline The vertical axis represents four stages
The horizontal axis represents time in units of clock period of the pipeline.


Download ppt "Chapter One Introduction to Pipelined Processors"

Similar presentations


Ads by Google