Advertisement

PARALLEL PROCESSING & PIPELINING

PARALLEL PROCESSING

Parallel Processing is the way to provide  continues data processing task to increase the conceptual speed of computer system. The system may have two or more Arithmetic Logical Units (ALUs) for executing more instructions at the same time. The purpose of Parallel Processing is to speed up the computer processing capacity and increase its task performance. i.e. it is called Parallel Computing.


FLYNN'S CLASSIFICATION OF COMPUTERS

In Flynn's classification there are four groups of computers based on the number of instruction stream and data stream. the normal operation of a computer is to get instructions from memory and execute them in a processor.

AN INSTRUCTION STREAM reads sequence of instructions from memory constitutes.

A DATA STREAM on the data performs operation in the processor constitutes.

Parallel Processing may take place in the instruction stream, in the data stream, or in both. The Flynn's classification of computer are:

I. single instruction stream, single data stream (SISD)

II. single instruction stream, multiple data stream (SIMD)

III. multiple instruction stream, single data stream (MISD)

IV. multiple instruction stream, multiple data stream (MIMD)

-> SISD has a processor, a control unit and memory unit. There is a single processor in this system which executes a single instruction stream to operate on the data stored in a single memory. 

-> SIMD executes a single instruction on different set of data by different processors.

-> MISD has many functional units which performs different operations on the same data. it is the theoretical model of computer.

-> MIMD consist of a set of processors which continuously execute different instruction arrange on different set of data.


PIPELINING

Pipelining is the process of breaking down the sequential process into sub operation, with each sub process being executed in a dedicated segment that operates all segments together. each segment performs partial processing required by the divided tasks. In this sequential process the several calculations can be in progress in specific segments at the same time. The registers provide isolation between each segments so that each can operate on definite data continuously. 

Suppose, we want to perform combined multiply and add operations with a stream of numbers.

E.g. A1*B1+C1               for 1=1,2,3,....,7 

The sub operations performed in each pipeline segment are as follow:

R1<-A1,R2<-B1              Input A1 and B1

R3<-R1*R2,R4<-C1        Multiply and input C1

R5<-R3+R4                    Add C1 to product





 


Post a Comment

0 Comments