Flynns classification

Web Designer , Trainer , Manager em Cswo, QUEST
18 de Dec de 2014
1 de 10

Flynns classification

• 1. Flynn’s Classification Of ComputerFlynn’s Classification Of Computer ArchitecturesArchitectures  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 theFlynn uses the stream conceptstream concept for describing afor describing a machine's structuremachine's structure  A stream simply means a sequence of items (data orA stream simply means a sequence of items (data or instructions).instructions).  The classification of computer architectures based onThe classification of computer architectures based on the number of instruction steams and data streamsthe number of instruction steams and data streams (Flynn’s Taxonomy).(Flynn’s Taxonomy).
• 2. 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 Flynn Classification OfFlynn Classification Of Computer architecturesComputer architectures
• 3. SISDSISD  SISDSISD ((SSinge-inge-IInstruction stream,nstruction stream, SSinge-inge-DDataata stream)stream)  SISD corresponds to the traditional mono-SISD corresponds to the traditional mono- processor ( von Neumann computer). A singleprocessor ( von Neumann computer). A single data stream is being processed by onedata stream is being processed by one instruction streaminstruction stream OROR  A single-processor computer (uni-processor) inA single-processor computer (uni-processor) in which a single stream of instructions iswhich a single stream of instructions is generated from the program.generated from the program.
• 4. SISDSISD where CU= Control Unit, PE= Processing Element, M= Memory
• 5. SIMDSIMD  SIMDSIMD ((SSingle-ingle-IInstruction stream,nstruction stream, MMultiple-ultiple- DData streams)ata streams)  Each instruction is executed on a different setEach instruction is executed on a different set of data by different processorsof data by different processors i.e multiplemultiple processing units of the same type process onprocessing units of the same type process on multiple-data streams.multiple-data streams.  This group is dedicated to array processingThis group is dedicated to array processing machines.machines.  Sometimes, vector processors can also be seenSometimes, vector processors can also be seen as a part of this group.as a part of this group.
• 6. SIMDSIMD where CU= Control Unit, PE= Processing Element, M= Memory
• 7. MISDMISD  MISDMISD ((MMultiple-ultiple-IInstruction streams,nstruction streams, SSinge-inge- DData stream)ata stream)  Each processor executes a different sequenceEach processor executes a different sequence of instructions.of instructions.  In case of MISD computers, multipleIn case of MISD computers, multiple processing units operate on one single-dataprocessing units operate on one single-data stream .stream .  In practice, this kind of organization has neverIn practice, this kind of organization has never been usedbeen used
• 8. MISDMISD where CU= Control Unit, PE= Processing Element, M= Memory
• 9. MIMDMIMD  MIMDMIMD ((MMultiple-ultiple-IInstruction streams,nstruction streams, MMultiple-ultiple-DData streams)ata 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 theThis last machine type builds the group for the traditional multi-processors. Severaltraditional multi-processors. Several processing units operate on multiple-dataprocessing units operate on multiple-data streams.streams.