Computer Architecture Unit 3
Computer Architecture Unit 3
Unit 3
Parallelism
Parallelism in computer architecture is a method of breaking down tasks
into smaller parts that can be processed simultaneously by multiple
processors. This increases the speed and efficiency of computation.
Types of parallelism:
i)Instruction-level parallelism (ILP)
ii)Task parallelism
iii)Multiple instruction, multiple data (MIMD)
SUPERSCALAR ARCHITECTURE
Definition: The main principle of superscalar approach is that it executes
instruction independently in different instruction pipelining which leads to
parallel processing thereby speeding up the processing of instruction.
In the above diagram, there is a processor with two execution units; one for
integer and one for floating point operations. The instruction fetch unit is
capable of reading the instructions at a time and storing them in the
instruction queue. In each cycle, the dispatch unit retrieves and decodes up
to two instructions from the front of the queue. If there is one integer, one
floating point instruction and no hazards, both the instructions are
dispatched in the same clock cycle.
Advantages:
• The compiler can avoid many hazards through judicious selection and
ordering of instructions.
6
SUPERPIPELINED ARCHITECTURE
Definition: An alternative approach in achieving greater performance
(throughput) is referred to as super pipelining.
❖ In super pipelining processor, many pipeline stages perform tasks that
require less than a half clock cycle. So, the number of executed
instructions will be doubled.
❖ A super pipelined architecture is one that makes use of more and more
small stages of a pipeline in attempt to shorten the clock period. With
more stages more instructions can be in the pipeline at the same time,
increasing parallelism (throughput). That mean instructions are
overlapped.
It issues two instructions per clock cycle & is capable of executing two
instances of each stage in parallel, so that no instances have to be idle in any
time.
7
VLIW
❖ Very long instruction word (VLIW) refers to instruction set
architectures that are designed to exploit instruction-level
parallelism (ILP).
❖ The limitations of the Superscalar processor are prominent as the
difficulty of scheduling instruction becomes complex. The intrinsic
parallelism in the instruction stream, complexity, cost, and the branch
instruction issue get resolved by a higher instruction set architecture
called the Very Long Instruction Word (VLIW) or VLIW Machines.
8
Advantages:
• Reduces hardware complexity.
• Reduces power consumption.
• Simplifies decoding and instruction issues.
• Increases potential clock rate.
• Functional units are positioned corresponding to the instruction pocket
by compiler.
Disadvantages:
• Complex compilers are required.
• Increased program code size.
• Larger memory bandwidth and register-file bandwidth.
• Unscheduled events, for example, a cache miss could lead to a stall that
will stall the entire processor.
• In case of un-filled opcodes in a VLIW, there is waste of memory space
and instruction bandwidth.