Types of Pipeline
Types of Pipeline
Types of Pipeline
1. According to the levels of processing, Handler (1977) has proposed the following
Arithmetic Pipeline :
The arithmetic logic units of acomputercan be segmentized for pipelineoperations in
6 various data formats. Well-known arithmetic pipeline examples are the four-stage
pipesused in Star-100, the eight-stage pipes used in the TI-ASC, the up to 14 pipelines
stages used in theCray-1, and up to 26 stages per pipe in the Cyber-205.
Instruction Pipelining :
0
The execution of a stream of instruction can be pipelined by overlapping theexecution of
the current instruction with the fetch, decode, and operand fetch of subsequentinstruction.
This technique is also known as instruction lookahead. Almost all high-
performancecomputers are now equipped with instruction-execution pipelines.
Processor Pipelining :
This refers to the pipeline processing of the same data stream by a cascadeof processors,
each of which processes a specific task. The data stream passes the
firstprocessorwithresults stored in a memory block which is also accessible by the second
M
processor. The secondprocessor then passes the refined results to the third, and so on. The
pipelining of multiple processorsis not yet well aecepted as a common practice.According
to pipeline configurations and controlstrategies, Ramamooorthy and Li (1977)
haveproposed the following three pipeline classification schemes:
o
Unifunction Vs. Multifunction Pipelines :
A pipeline unit with a fixed and dedicated function, suchas the floating-point adder is called
unifunctional. The Cray-1 has 12 unifunctional pipeline units forvarious scalar, vector,
fixed-point, and floating-point operations. A multifunction pipe may performdifferent
d
subsets of stages in the pipeline. The TI-ASC. has four multifunction pipeline
processors,each of which is reconfigurable for a variety of arithmetic logic operations at
different times
Static Vs. Dynamic Pipelines:
e
A static pipeline may assume only one functional configuration at atime. Static pipelines
can be either unifunctional or multi-functional. Pipelining is made possible instatic pipes
only if instructions of the same type are to be executed continuously. The
functionperformed by a static pipeline should not change frequently. Otherwise, its
performance may be verylow. A dynamic pipeline processor permits several functional
9
sequence of scalar
operands under the control of DO gh loop. Instructions in a small DO loop are
often prefetched into the
instruction buffer. The required scalar operands for repeated scalar instructions
1
are moved into a data
cache in order to continuously supply the pipeline with operands. The IBM
typical example of a machine equipped with scalar pipelines. However, the
Model 91 does not have a cache.
Vector pipelines are specially designed to handle vector instructions over
vector operands. Computers having vector instructions are often called vector
processors. The design of a vector pipeline is expended from that of a scalar
pipeline.The handling of vector operands in vector pipelines is
underfirmwareand hardware controls (rather than undersoftwarecontrols as in
scalar pipelines.
3. Types of pipelines