Questions: 1. Explain the Flynn's classification. 2. Discuss about SISD, MIMD, SIMD, SPMD and VECTOR systems. 3. Explain in detail Flynn's classification of parallel hardware. 4. Explain Flynn's classification of parallel processing with necessary diagrams. 5. Define the classes in Flynn's Taxonomy of computer architectures. Give one example for each class.
Flynn's Classification
•
Parallel processing can be classified in many ways. It can be classified
according to internal organization of processors, according to interconnection
structure used between processors or according to flow of information through the
system.
•
One such classification is introduced by M. J. Flynn. We know that a typical
processing unit operates by fetching instructions and operands from the main
memory, executing the instructions, and placing the results in the main memory.
The steps associated with the processing of an instruction form an instruction
cycle. The instruction can be viewed as forming an instruction stream flowing from
main memory to the processor, while the operands form another stream, the data
stream, flowing to and from the processor, as shown in Fig. 10.4.1.

•
In 1966, Micheal J. Flynn has made an informal and widely used classification
of processor parallelism based on the number of simultaneous instruction and
data streams seen by the processor during program execution.
•
The classification made by Micheal
J. Flynn divides computers into four major groups.
■ Single Instruction
Stream–Single Data stream (SISD).
■ Single Instruction
Stream–Multiple Data streams (SIMD).
■ Multiple Instruction
Streams–Single Data stream (MISD).
■ Multiple Instruction
Streams–Multiple Data streams (MIMD).
1. Single
Instruction stream Single Data Stream (SISD) :
Most conventional machines with one CPU containing a single arithmetic–logic
unit capable only of scalar arithmetic fall into this category. SISD computers
and sequential computers are thus synonymous. In SISD computers instructions
are executed sequentially but may overlap in their execution stages
(Pipelining). They may have more than one functional unit, but all functional
units are control by a single control unit.

2. Single
Instruction stream Multiple Data streams (SIMD) :
This category corresponds to array processors. They have multiple
processing/execution units and one control unit. Therefore, all
processing/execution units are supervised by the single control unit. Here, all
processing elements received same instruction from control unit but operate on
different data sets from distinct data streams. This category is also known as
single program, multiple data stream (SPMD).

3.
Multiple Instruction streams Single Data stream (MISD) :
Not many parallel processors fit well into this category. In MISD, there are n
processor units. Each receiving distinct instructions operating over the same
data stream and its derivatives. The results of one processor become the input
of the next processor in the micropipe. The fault–tolerant computers where
several processing units process the same data using different programs belongs
to the MISD class. The results of such apparently redundant computations can be
compared and used to detect and eliminate faulty results.

4.
Multiple Instruction streams Multiple Data streams (MIMD) : Most
multiprocessors system and multiple computers system can be classified in this
category. In MIMD, there are more than one processor unit having the ability to
execute several program simultaneously. MIMD computer implies interactions
among the multiple processors because all memory streams are derived from the
same data space shared by all processors. If the n data streams are derived
from disjointed sub spaces of the shared memories then we would have the so–called
Multiple SISD (MSISD) operation.

5. Vector
systems : A more efficient interpretation of SIMD is called a
vector architecture. Rather than having 64 ALUS perform 64 additions
simultaneously, like the old array processors, the vector architectures
pipelined the ALU to get good performance at lower cost.
•
Vector architecture consists of a set of vector registers.
•
Vector architectures collect data elements from memory, put them in order into
a large set of registers, operate on them sequentially in registers and then
write the results back to memory.
•
Table 10.4.1 shows example of machines and their Flynn's classification.

Review Questions
1. Explain the Flynn's
classification.
2. Discuss about SISD,
MIMD, SIMD, SPMD and VECTOR systems.
3. Explain in detail
Flynn's classification of parallel hardware.
4. Explain Flynn's
classification of parallel processing with necessary diagrams.
5. Define the classes
in Flynn's Taxonomy of computer architectures. Give one example for each class.
Digital Principles and Computer Organization: Chapter 10: Parallel Processing : Tag: : - Flynn's Classification
Digital Principles and Computer Organization
CS25C06 2nd Semester AIDS, CSE, IT, CSE(CY) Dept | 2025 Regulation | 2nd Semester 2025 Regulation
English Essentials II
EN25C02 2nd Semester | 2025 Regulation | 2nd Semester 2025 Regulation
Tamils and Technology தமிழர்களும் தொழில்நுட்பமும்
UC25H02 2nd Semester | 2025 Regulation | 2nd Semester 2025 Regulation
Linear Algebra
MA25C02 2nd Semester | 2025 Regulation
Applied Physics (CSIE) II
PH25C03 2nd Semester AIDS, CSE, IT, CSE(CY) Dept | 2025 Regulation | 2nd Semester 2025 Regulation
Digital Principles and Computer Organization
CS25C06 2nd Semester AIDS, CSE, IT, CSE(CY) Dept | 2025 Regulation | 2nd Semester 2025 Regulation
Basic Electrical and Electronics Engineering
EE25C01 2nd Semester | 2025 Regulation | 2nd Semester 2025 Regulation
Python for Data Science
AD25201 2nd Semester AIDS Dept | 2025 Regulation | 2nd Semester 2025 Regulation
Re-Engineering for Innovation
ME25C05 2nd Semester | 2025 Regulation | 2nd Semester 2025 Regulation
Python for Data Science - Laboratory
AD25201 2nd Semester AIDS Dept | 2025 Regulation | 2nd Semester 2025 Regulation