SISD, SIMD, MISD, MIMD

harsh verma
6 min readDec 9, 2022

Hello everyone today we are going to talk about Flynn’s classification (1966) which comes under architectural classification schemes. architectural classification schemes also have Feng’s classification (1972) and handlers classification (1977). But this blog will only talk about Flynn’s classification (1966). So you all must be wondering what is Flynn's classification. Well in computers there are two types of streams instruction stream and data stream Flynn’s variety is based on these. We are going to learn about the instruction stream and data stream in detail. There are 4 categories of Flynn’s classification SISD(‘Single Instruction and Single Data Stream’), SIMD(Single instruction, multiple data), MISD(Multiple Instruction and Single Data stream), MIMD(‘Multiple Instruction and Multiple Data Stream’). things classification is based on serial versus parallel processing. It has four categories Word serial bit serial (WSBS) (Word serial bit-parallel) (WSBP),(Word parallel bit serial )(WPBS),(and Word parallel bit-parallel) (WPBP). handler’s classification is based on the degree of parallelism and pipelining in different subsystem levels. There is three categories of handlers classification Processor control unit (PCU), • Arithmetic logic unit (ALU), • Bit-level circuit (BLC).

Flynn’s Classification

flynn’s classification has been one of the most popular taxonomies in computer architecture. flynn’s classification is based on a stream of information and by a stream of information, we mean instruction stream and data stream. Now you guys must be thinking about what this instruction stream is and what data stream that we are talking about so much in this classification instruction stream is defined by the sequence of instructions executed by the processor while a data stream is defined as the sequence of data inputs which can be partial or temporary results called by the instruction stream. According to this Flynn's classification, the instruction and the data stream can be single or multiple.

Flynn’s Taxonomy is a classification system for computer architectures. It was proposed by Michael J. Flynn in 1966 and has been widely used since then.

The taxonomy classifies architectures into four main categories: SISD, SIMD, MISD, and MIMD. Each category has its own strengths and weaknesses, which makes it suitable for different types of applications.

SISD (Single Instruction Single Data) architectures are the simplest and most common type of architecture. They are designed to execute one instruction on one data element at a time. This makes them well-suited for sequential applications such as office productivity software or compilers. However, they are not very efficient at handling parallel tasks such as video processing or image rendering.

SIMD (Single Instruction Multiple Data) architectures are more complex than SISD architectures and can execute one instruction on multiple data elements simultaneously. This makes them much more efficient at handling parallel tasks such as video processing or image rendering. However, they are not well suited for sequential applications such as office productivity software or compilers.

MISD (Multiple Instruction Single Data) architectures are even more complex than SIMD architectures and can execute multiple instructions on one data element simultaneously. This makes them very well suited for highly parallel applications such as scientific computing or database management. However, they are not well suited for sequential applications such as office productivity software or compilers.

SISD(‘Single Instruction and Single Data Stream’)

Now let us study sisd(‘Single Instruction and Single Data Stream’) sisd is a uniprocessor machine which means it has one processor and can work on 1 task at a time. Sisd is only capable of executing a single instruction that operates on a single data stream. These instructions are sequential which means only one process or instruction can be performed at a time. Memory is where all the instructions are stored.

Advantages of SISD

Less power.

Disadvantages of SISD

The speed of single-core processor is limited same is the case of sisd.

Examples: PC, SINGLE CPU workstation, minicomputer, mainframes

SIMD(Single instruction, multiple data)

Simd is capable of executing the same instruction (which means it has the same instruction but different data) on all the CPUs but operating on different data streams. Simd has a single CU(control unit) and multiple ALU’S. now you must be wondering what does control unit and ALU do. So control unit issues one instruction at a time. ALU carries out on multiple data. Simd is well suited to matrix and vector operations.

Example: Array processors: ILLIAC

sand vector pipeline:IBM9000

Advantages of SIMD

Using one instruction we can perform the same operation on multiple elements

Faster than SISD

Throughput can be increased.

Disadvantages of SIMD

Higher cost than SISD.

Complex communication

MISD(Multiple Instruction and Single Data stream)

On a single data stream, many instructions can be executed. This topic is theoretical and practically useless. Misd is capable of executing various instructions on separate CPUs while functioning on the same dataset.

Advantages of MISD

can be used in high-end parallel environment.

Disadvantages of MISD

might remain idle.

MIMD(‘Multiple Instruction and Multiple Data Stream’)

It has the capacity to carry out numerous instructions across various datasets. When processing multiple instructions, each processor can be working with a different data stream and executing a different stream of instructions. These operate similarly to parallel computers, which may run many programmes concurrently. MIMD can be characterised as loosely coupled or tightly linked based on how control and data are shared.

MIMD stands for Multiple Instruction, Multiple Data. It is a type of computer architecture where multiple processors are used to execute multiple instructions on multiple pieces of data. This contrasts with SISD, which uses a single processor to execute a single instruction on a single piece of data, and SIMD, which uses multiple processors to execute a single instruction on multiple pieces of data.

MIMD architectures can be further classified as shared memory or distributed memory. In shared memory systems, all the processors have access to the same physical memory. This allows them to easily share data and instructions. Distributed memory systems have each processor with its own private memory. Processors communicate with each other by sending messages over a network.

MIMD architectures have several advantages over SISD and SIMD architectures. They can handle more complex problems because they can break the problem down into smaller tasks that can be executed in parallel. They are also more scalable because additional processors can be added as needed.

Multiple Instruction and Multiple Data Stream (MIMD) computers are those that have multiple processors that can each follow their own program. These computers can be used for parallel processing, which is where several computations are carried out at the same time. This type of computer is often used in scientific and engineering applications.

Advantages of MIMD

The information is accessible to the user process from the location where the manufacturer saved it.

Disadvantages of MIMD

Beyond 32 processors, scaling becomes challenging, as shared memory is less adaptable than distributed memory.

Example: supercomputers,IBM-370,Cray-2,Cray-X-MP.

--

--