Lecture-10

advertisement
Very Long Instruction Word
(VLIW) Architecture
VLIW Machine
• It consists of many functional units connected
to a large central register file
• Each functional unit have two read ports and
one write port
• Register file would have enough memory
bandwidth to balance the operand usage rate
of functional units
Ideal VLIW Machine
VLIW characteristics
• VLIW contains multiple primitive instructions
that can be executed in parallel
• The compiler packs a number of primitive,
independent instructions into a very long
instruction word
• The compiler must guarantee that multiple
primitive instructions which group together
are independent so they can be executed in
parallel.
Example of a single VLIW instruction:
F=a+b; c=e/g; d=x&y; w=z*h;
VLIW instruction
c=e/g
F=a+b
a
d=x&y
w=z*h
F
PU
b
e
c
PU
g
x
d
PU
y
z
w
PU
h
5
VLIW Principles
1.The compiler analyzes dependence of all instructions
among sequential code and extracts as much
parallelism as possible.
2.Based on analysis, the compiler re-codes the sequential
code in VLIW instruction words.(One VLIW instruction
word contains maximum 8 primitive instructions)
3.Finally VLIW hardware
– Fetch the VLIWs from cache,
– Decode them,
– Dispatch the independent primitive instructions to
corresponding functional units and
– Execute
Advantages of VLIW architecture
• Reduces Complexity:
– Due to parallelism among their primitive
instructions
• Higher possible clock rate because of reduced
complexity
Drawbacks of VLIW Architecture
• Compiler has to be aware of technology
dependent parameters-like latencies and
repetition rate. This restricts the use of same
compiler for a family of VLIW processors.
• Wasted memory space and bandwidth when
some EUs are not used
• Performance is dependent on how the
compiler produces VLIW words.
Comparison
Data Flow Computers
Data Flow Computers
• They are based on the concept of data driven
computation
• Conventional computers is under program
flow control.
Features of Control Flow Model
• Data is passed between instructions via
shared memory
• Flow of control is implicitly sequential
• Program counters are used to sequence the
execution of instruction
Features of Data Flow Model
• Intermediate or final results are passed
directly as data token between instructions
• There is no concept of shared data storage
• Program sequencing is constrained only by
data dependency among instructions
Download