MCA Computer Organization and Architecture 14
MCA Computer Organization and Architecture 14
14 SIMD Architecture
Names of Sub-Units
Overview
This unit begins by discussing about the concept of SIMD architecture and parallel processing. Next,
the unit discusses the classification of parallel processing. Further the unit explains the fine-grained
SIMD architecture. Towards the end, the unit discusses the coarse-grained SIMD architecture.
Learning Objectives
Learning Outcomes
http://cs.ucf.edu/~ahmadian/pubs/SIMD.pdf
14.1 INTRODUCTION
SIMD (single-instruction multiple-data streams) is an abbreviation that stands for single-instruction
multiple-data streams. As indicated in the diagram, the SIMD parallel computing paradigm consists of
two parts: a von Neumann-style front-end computer and a processor array.
The processor array is a group of synchronised processing units that may conduct the same operation
on many data streams at the same time. While being processed in parallel, the dispersed data is stored
in a small piece of local memory on each processor in the array.
The processor array is coupled to the front end’s memory bus, allowing the front end to build local
processor memories at random as if it were another memory. Figure 1 depicts SIMD architecture model:
Von Neumann
Computer
Virtual Processors
2
UNIT 14: SIMD Architecture
Simultaneous operations across huge amounts of data are employed in SIMD architecture to take
advantage of parallelism. This paradigm works well when dealing with challenges that require the
improvement of a significant amount of data at once. It’s got a lot of dynamism.
In SIMD machines, there are two major configurations. Each CPU has its own local memory in the
first scheme. The interconnectivity network allows processors to communicate with one another. If
the interconnection network does not allow for a direct link between two groups of processors, the
information might be exchanged through an intermediary processor.
Processors and memory modules communicate with each other via the interconnection network in the
second SIMD architecture. Two processors can communicate with one another via intermediate memory
modules or, in some cases, intermediary processors (s). The BSP (Burroughs’ Scientific Processor) used
the second SIMD scheme.
Adder-Subtractor
Integer Multiply
Logic unit
Shift Unit
Incrementer
To memory
Processor
registers Floating-point add-
subtract
Floating-point multiply
Floating-point divide
3
Computer Organization and Architecture
The integer multiplier and adder are used to execute arithmetic operations on integer numbers. The
floating-point operations are divided into three circuits that work in tandem. On distinct data, the logic,
shift, and increment operations can all be run at the same time. Because all units are independent of
one another, one number can be moved while another is increased.
IS DS
Control Processing Memory
Unit Unit Unit
IS
SIMD
Processing
Unit 1 DS Memory Unit 1
Processing
Control FS DS Memory Unit 2
Unit 2
Unit .. ..
..
..
..
Processing DS Memory Unit N
Unit n
FS
4
UNIT 14: SIMD Architecture
Data
Bus 1
Control PE 1 Memory 1
Bus Data
Bus 2
PE 2 Memory 2
Control
Unit
Data
Bus n
PE n Memory n
5
Computer Organization and Architecture
IS 1
C.U.1 P.S.1
C.U.2 IS 2
P.S.2
DS MU1 MU2 MUn
C.U.n IS n P.S.n
IS 1 IS 1 DS 1
C.U.1 P.S.1 MU1
IS 2 IS 2 DS 2
C.U.2 P.S.2 MU2
IS n DS n
C.U.n P.S.n MUn
IS n
IS 3
IS 2
IS 1
6
UNIT 14: SIMD Architecture
7
Computer Organization and Architecture
Parallel processing is a set of techniques that allows a computer system to perform multiple data-
processing tasks at the same time.
SISD architecture is the structure of a single computer, which includes a control unit, a processor
unit, and a memory unit.
SIMD symbolises an organization with a large number of processing units overseen by a central
control unit.
Multiple processing units work on a single data stream in MISD.
MIMD (Multiple Instruction, Multiple Data) states to a parallel architecture, which is the most
fundamental and well-known type of parallel processor.
14.7 GLOSSARY
Parallel processing: It is a set of techniques that allows a computer system to perform multiple
data-processing tasks at the same time.
SISD architecture: It depicts the structure of a single computer, which includes a control unit, a
processor unit, and a memory unit.
SIMD architecture: It symbolises an organization with a large number of processing units overseen
by a central control unit.
MISD architecture: The multiple processing units work on a single data stream in MISD.
MIMD architecture: It states to a parallel architecture, which is the most fundamental and well-
known type of parallel processor.
https://www.geeksforgeeks.org/computer-organization-and-architecture-pipelining-set-1-
execution-stages-and-throughput/
https://www.geeksforgeeks.org/difference-between-simd-and-mimd/
Discuss with your friends and classmates about the concept of SIMD architecture. Also, try to find
some real world examples of SIMD architecture.