
347
15.1 Processors and parallel processing
15
15.1.1 RISC and CISC processors
Early computers made use of the Von Neumann architecture (see Chapter 4).
Modern advances in computer technology have led to much more complex
processor design. Two basic philosophies have emerged over the last few years
» developers who want the emphasis to be on the hardware used: the hardware
should be chosen to suit the high-level language development
» developers who want the emphasis to be on the software/instruction sets to
be used: this philosophy is driven by ever faster execution times.
The first philosophy is part of a group of processor architectures known as
CISC
(complex instruction set computer). The second philosophy is part of a group
of processor architectures known as
RISC (reduced instruction set computer).
CISC processors
CISC processor architecture makes use of more internal instruction formats
than RISC. The design philosophy is to carry out a given task with as few
lines of assembly code as possible. Processor hardware must therefore be
capable of handling more complex assembly code instructions. Essentially,
CISC architecture is based on single complex instructions which need to be
converted by the processor into a number of sub-instructions to carry out the
required operation.
For example, suppose we wish to add the two numbers A and B together, we
could write the following assembly instruction:
This methodology leads to shorter coding (than RISC) but may actually lead to
more work being carried out by the processor.
RISC processors
RISC processors have fewer built-in instruction formats than CISC. This can lead
to higher processor performance. The RISC design philosophy is built on the
Key terms
CISC – complex instruction set computer.
RISC – reduced instruction set computer.
Pipelining – allows several instructions to be
processed simultaneously without having to wait for
previous instructions to finish.
Parallel processing –operationwhichallowsaprocess
to be split up and for each part to be executed by a
different processor at the same time.
SISD – single instruction single data, computer
architecture which uses a single processor and one
data source.
SIMD – single instruction multiple data, computer
architecture which uses many processors and different
data inputs.
MISD – multiple instruction single data, computer
architecture which uses many processors but the same
shared data source.
MIMD – multiple instruction multiple data, computer
architecture which uses many processors, each of
which can use a separate data source.
Cluster – a number of computers (containing SIMD
processors) networked together.
Super computer – a powerful mainframe computer.
Massively parallel computers – the linking together
of several computers effectively forming one machine
with thousands of processors.
ADD A, B – this is a single instruction that requires several sub-instructions (multi-
cycle) to carry out the ADDition operation