---
title: "Flynn's classification"
subject: "Computer Organization and Architecture"
chapter: 4
key: "semester_5/computer_organization_and_architecture:flynn"
source: https://www.bctengineer.com/q/semester_5/computer_organization_and_architecture/flynn
site: BCT Engineering
---

# Flynn's classification

Computer Organization and Architecture · Chapter 4: Pipeline & Vector Processing

- Asked in: 2072 Chaitra, 4 marks
- Video: [Flynn's Taxonomy  in Computer Architecture | Flynn's Classification](https://www.youtube.com/watch?v=xBbPvBAP0dY) — Chirag Bhalodia
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_5/computer_organization_and_architecture/flynn
- Whole chapter: https://www.bctengineer.com/md/semester_5/computer_organization_and_architecture/chapter-4

## Question

Describe Flynn's classification.

## Short answer

Flynn's classification groups computers by instruction and data streams: SISD (single instruction, single data), SIMD (single instruction, multiple data, e.g., array processors), MISD (multiple instructions, single data, rare), MIMD (multiple instructions, multiple data, e.g., multicore).

## Answer

Flynn's classification groups computers by the number of instruction streams and data streams they handle at the same time.

| Class | Instruction streams | Data streams | Example |
|---|---|---|---|
| SISD | Single | Single | Conventional uniprocessor (von Neumann) |
| SIMD | Single | Multiple | Array/vector processors, GPUs |
| MISD | Multiple | Single | Rare; fault-tolerant or systolic arrays |
| MIMD | Multiple | Multiple | Multiprocessors, multicomputers, multi-core |

```text
 SISD:  CU --> PU <--> Memory
 SIMD:  CU --> PU1 <-> M1
           +-> PU2 <-> M2   (one instruction, many data)
           +-> PUn <-> Mn
 MISD:  CU1 -> PU1 \
        CU2 -> PU2  >--> one data stream through all
        CUn -> PUn /
 MIMD:  CU1->PU1<->M1 ; CU2->PU2<->M2 (independent, via network)
```
- **SISD:** one instruction executed on one data item at a time; may use pipelining.
- **SIMD:** all processing units execute the same instruction on different data, in lock step.
- **MISD:** different instructions operate on the same data stream; practically little used.
- **MIMD:** each processor runs its own program on its own data; tightly coupled (shared memory) or loosely coupled (distributed memory).

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. Flynn's classification is based on:
   A. The number of instruction streams and data streams
   B. Clock speed and word length
   C. Memory size and cache levels
   D. Number of registers and buses
   Answer: A. Computers are grouped by how many instruction and data streams they handle at once. (Key point: Basis of classification)

2. Which class has a single instruction stream and multiple data streams?
   A. SISD
   B. SIMD
   C. MISD
   D. MIMD
   Answer: B. SIMD executes the same instruction in lock step on different data, as in array/vector processors and GPUs. (Key point: SIMD)

3. Which class describes multiprocessors and multi-core systems where each processor runs its own program on its own data?
   A. SISD
   B. MISD
   C. SIMD
   D. MIMD
   Answer: D. MIMD has multiple instruction and multiple data streams, tightly or loosely coupled. (Key point: MIMD)

4. Which pairing is correct?
   A. SISD: conventional uniprocessor; MISD: rare, e.g. systolic arrays
   B. SISD: multi-core CPU; MISD: GPU
   C. SISD: array processor; MISD: uniprocessor
   D. SISD: multicomputer; MISD: multiprocessor
   Answer: A. SISD is the von Neumann uniprocessor; MISD is rarely used. (Key point: SISD and MISD)

## Related in other subjects

- [Flynn's classification of parallel computers](https://www.bctengineer.com/question.md?key=semester_4%2Fmicroprocessor%3Aflynn-classification) — Microprocessor, chapter 6, asked 4×
