1 Principles of linear pipelining
Assembly lines have been used in automated industrial plants in order
to increase productivity. Their original form is a flow line (pipeline) of
assembly stations where items are assembled continuously from separate
parts along a moving conveyor belt. Ideally, all the assembly stations should
have equal processing speed. Otherwise, the slowest station becomes the
bottleneck of the entire pipe. This bottleneck problem plus the congestion
caused by improper buffering may result in many idle stations waiting for
new parts. The subdivision of the input task into a proper sequence of
subtasks becomes a crucial factor in determining the performance of the
pipeline.
In a uniform-delay pipeline, all tasks have equal processing time in all
station facilities. The stations in an ideal assembly line can operate
synchronously with full resource utilisation. However, in reality, the
3
successive stations have unequal delays. The optimal partition of the
assembly line depends on a number of factors, including the quality
(efficiency and capability) of the working units, the desired processing speed,
and the cost effectiveness of the entire assembly line.
The precedence relation of a set of subtasks {T,...,T } 1 k for an T implies
that some task Ti cannot start until some earlier task T i j j( < ) finishes. A linear
pipeline can process a succession of subtasks with a linear precedence graph.
A linear pipeline consists of cascade of processing stages. High-speed
interface latches separate the stages. The latches are fast registers for holding
the intermediate results between the stages. Information flows between
adjacent stages are under the control of a common clock applied to all the
latches simultaneously.
* The main difference is that pipeline processing is a category of techniques that provide simultaneous, or parallel, processing within the computer and serial processing is sequential processing by two or more processing units.
A hydrophore system is a system comprising a powerful pump unit and a pipeline that is designed to increase the pressure of water from the urban mains so that water can be supplied to the higher storeys of a tall building.
Nonlinear Pipeline  Dynamic  Multifunction  Allows feed back and feed forward connections,in addition to the streamline connections.  More than one output; the output of the pipelineis not necessarily from the last stage.
static pipelining - it is composition of stages one after another means that the output of one stage is become input to the next stage we also called it linear pipelining. it is further divided in two types synchronous and asynchronous. dynamic pipeling- in it stages are connected in a liner fashion but this kind of pipeling used feedforward and feed backword connections as a input to the stages.it perform variable function but static perform fixed functions. in dynamic pipelining we can take intermediate outputs.
Different CPU designs use many different pipelining models with varying numbers of stages. The more stages, the more powerful your CPU is likely to be, but it is also much more complicated to design. Typical stages go like this: 1. Calculate next execution address (often just incrementing the address pointer, and not needing a separate pipeline stage) 2. Fetch instruction 3. Decode instruction 4. Calculate operand address(es) 5. Fetch operands 6. Perform operation. Some of these stages may be absorbed into a single step. If an instruction in the pipeline is conditional (such as branch if zero), the condition may not be known for a while, because the calculation that produces it can be still in the pipeline when the result is needed. Then the pipe has to be "stalled" until the test can be completed (inefficient!) or a guess is made as to the outcome and if it later turns out wrong then the pipe has to be cleared and some of the instructions re-executed. This is very messy! In a modern CPU this is further complicated by such things as cache memory where recently used instructions and data are kept to save having to fetch them from main memory, also pre-fetch which gets several extra instructions from memory ready to be executed when needed. Hyper-threading can also be provided; broadly, this looks for execution cycles that can't be used because the pipeline is stalled, and runs a different program to take advantage of the spare time. It looks a bit like a second CPU with 30% or so of additional performance. So the answer to your question is: it depends on the CPU, but typically the first stage is to fetch the next opcode from memory
good example for RISC processors is DSP (Digital signal processing) processors. simillarly for cisc processors is microprocessor.we can understand the difference between these two by a simple example. here it is, Convolution in terms of DSP is nothing but continuous multiplication. cisc processor performs multiplication by continious addition.but risc processor perform continious multiplication in a single pipeline architecture.
Kung's taxonomy is a classification system proposed by Henry S. Kung for computer architecture design. It categorizes computer architectures based on characteristics such as instruction set complexity, pipeline depth, memory access characteristics, and overall performance. Kung's taxonomy provides a framework for understanding and comparing different computer architectures.
Vassilios John Georgiou has written: 'A parallel pipeline computer architecture for speech processing' -- subject(s): Parallel processing (Electronic computers), Speech processing systems
Added multiple pipelines
Efficiency=Ratio of actual speedup to the maximum speedup =speedup/length of pipeline
It allows many intsrunctions to be fetched -decode and executed once
Reduced Instruction Set Computer
No. Pipeline processors are faster because they do not have to wait to fetch the next instruction, because the next instruction was "pre-fetched" already.
Discarding the contents of a computer's instruction pipeline when they have become invalid due to events during program execution (e.g. branch, interrupt, exception, trap, error detection). Once flushed the pipeline must refill with instructions from the new path of control before the computer can continue running.
is a cascade of processing stages which are linearly connected to perform a fixed function over a stream of data flowing from one end to the other.
in 8086, there is instruction queue of 6 byte. It is one of the reason behind giving name. 8086 was introducing pipeline architecture.
The clock speed, architectural design, and socket types are different between these three types of processor. Making the transition to dual pipeline architecture and integrated cache happened during this as well. In essence, these processors are basically nothing alike. They look different, behave different, perform different, and handle internal functions differently.