Flyns classification depends on Data stream and Instruction stream.
Data stream- A data stream is the operations performed by the processor on data. A data stream is sequence of data having input, partial or temporary result.
Instruction stream- A instruction stream is the fetch and execution of data stream by the machine.
Based on the multiple data and instruction streams Flynns classify the digital computers in four categories-
1. Single instruction stream-single data stream (SISD)
2. Single instruction stream-multiple data stream (SIMD)
3. Multiple instruction stream-single data stream (MISD)
4. Multiple instruction stream-multiple data stream (MIMD)
1. SISD: A classical Von Neumann computers comes under this categories.
- It has one instruction stream one data stream.
- It does one thing at a time.
- It has capability of manipulating one data stream at a time by executing a single instruction stream.
- Most serial computers are based on SISD.
- Instructions may get overlapped during their execution
- Most SISD computers are pipelined.
- SISD may have more than one functional units, which are supervised by control unit.
For example- IBM 370 computers.
2.SIMD: SIMD computers have single instruction stream to execute on multiple data stream.
- It has a single control unit to generate one instruction stream at a time.
- A single control unit have multiple ALUs (Arithmetic and logic units) to work on multiple data streams simultaneously.
- It has capability to execute a single instruction stream on multiple data streams.
- Its also known as vector or array processors machine.
- In SIMD multiple processing units are supervised by a single control unit.
For example- ILLIAC-IV
3.MISD: MISD computers have multiple instruction stream to execute on single data stream.
- This type of system is not to build practically, it’s a theoretical approach.
- It has multiple instruction stream, which operate on sama data stream.
- The output of one processor become the input of next processor.
4.MIMD– MISD computers have multiple instruction stream to execute on multiple data stream.
- It has capability of performing several programs simultaneously.
- It is similar to multiprocessor, in which multiple CPUs are operating independently to be a part of large system.
- Both multiprocessor and multi computer comes under MIMD.
- When multiple SISD works together than its called MSISD, which comes under category of MIMD.
- If number of instructions are high than it’s known as tightly coupled else known as loosely coupled.
For example- Cray-2 computers.