What is a Pipelining?
Pipelining is a technique for breaking down a sequential process into various sub-operations and executing each sub-operation in its own dedicated segment that runs in parallel with all other segments.
Pipeline Strategy
Instruction pipelining is similar to the use of an assembly line in a manufacturing plant. An assembly line takes advantage of the fact that a product goes through various stages of production. By laying the production process out in an assembly line, products at various stages can be worked on simultaneously.
Design of a Basic Pipeline
- In a pipelined processor, a pipeline has two ends, the input end and the output end. Between these ends, there are multiple stages/segments such that output of one stage is connected to input of next stage and each stage performs a specific operation.
Performance Analysis with Pipeline
Instructions in a pipelined processor:
ETpipeline = k + n – 1 cycles
= (k + n – 1 )Tp
Instructions in a non-pipelined processor:
ETnon-pipeline = n * k * Tp
So, speedup(s) of the pipelined processor over non-pipelined processor
S = Performance of pipelined processor/Performance of non-pipelined processor
S = ETnon-pipeline / ETpipeline
S = [n * k * Tp] / [(k + n – 1) * Tp]
S = [n * k] / [k + n – 1]
<< Previous | Next >>
Must Read: What is Computer Organization and Architecture?