In 1966, Michael Flynn proposed a classification for computer architectures based on the number of instruction steams and data streams (Flynn’s Taxonomy).
· Flynn uses the stream concept for describing a machine's structure.
· A stream simply means a sequence of items (data or instructions).
· The classification of computer architectures based on the number of instruction steams and data streams (Flynn’s Taxonomy).
· SISD: Single instruction single data
– Classical von Neumann architecture
· SIMD: Single instruction multiple data
· MISD: Multiple instructions single data
– Non existent, just listed for completeness
· MIMD: Multiple instructions multiple data
– Most common and general parallel machine
· SISD (Singe-Instruction stream, Singe-Data stream)
· SISD corresponds to the traditional mono-processor ( von Neumann computer). A single data stream is being processed by one instruction stream
· A single-processor computer (uni-processor) in which a single stream of instructions is generated from the program.
· SIMD (Single-Instruction stream, Multiple-Data streams)
· Each instruction is executed on a different set of data by different processors i.e multiple processing units of the same type process on multiple-data streams.
· This group is dedicated to array processing machines.
· Sometimes, vector processors can also be seen as a part of this group.
· MISD (Multiple-Instruction streams, Singe-Data stream)
· Each processor executes a different sequence of instructions.
· In case of MISD computers, multiple processing units operate on one single-data stream .
· In practice, this kind of organization has never been used
· MIMD (Multiple-Instruction streams, Multiple-Data streams)
· Each processor has a separate program.
· An instruction stream is generated from each program.
· Each instruction operates on different data.
· This last machine type builds the group for the traditional multi-processors. Several processing units operate on multiple-data streams