MPMC Module 5
MPMC Module 5
MICROCONTROLLERS – UNIT 5
B Y S ON A L G U P TA
THE STORED-PROGRAM COMPUTER
• Not all instructions will require every step, but most instructions will
require most of them.
• These steps tend to use different hardware functions, for instance the
ALU is probably only used in step 4.
• Therefore, if an instruction does not start before its predecessor has
finished, only a small proportion of the processor hardware will be in
use in any step.
• An obvious way to improve the utilization of the hardware resources,
and also the processor throughput, would be to start the next
instruction before the current one has finished.
• This technique is called pipelining, and is a very effective way of
exploiting concurrency in a general-purpose processor.
PIPELINES
• Taking the above sequence of operations, the processor is organized so that as soon as one instruction
has completed step 1 and moved on to step 2, the next instruction begins step 1.
• This is illustrated in Figure 1.13.
• In principle such a pipeline should deliver a six times speed-up compared with non-overlapped
instruction execution; in practice things do not work out quite so well for reasons we will see below.
PIPELINE HAZARDS
• A higher performance.
• This is the tricky one! The previous two advantages are easy to accept,
but in a world where higher performance had been sought through
ever-increasing complexity, this was a bit hard to swallow.
• Simple processor allow a high clock rate.
RISC IN RETROSPECT