Lesson 1--Review of Computer Architecture Flashcards
Instruction Level Parallelism (ILP)
- -Executes multiple operations simultaneously in a given cycle.
- -Program’s property. # of instructions exectuted per cycle depends on the program.
- -Independent of hardware
Low Instructions Per Cycle (IPC) is a result of…
- -strict sequential semantics
- -instructions stalled for data or resource release by other instructions
Pipelining
Used to overlap instructions
Pipelines in modern CPUs have the following characteristics
- -execution stages are divided into several steps
- -a later operation can share the resources used by the first operation in previous cycles
- -shared hardware can be pipelined
Given a programs function unit cycles and the percentage of program’s percentage of instructions using each function unit how would the Cycles Per Instruction (CPI) be calculated?
((FU1cycles x FU1percentage) + (FU2cycles x FU2percentage) + (FU3cycles x FU3percentage) + …)/100
For a pipeline that is k stages deep, how many cycles does it take to fill the pipeline?
k - 1
VLIW stands for.
Very Long Instruction Word
How many operations can a VEX processor have in each cycle using VLIW?
4
In a VEX processor, what are the requirements for the instructions in a single word?
–cannot have dependencies
–cannot share resources
–only one memory access per word
Read After Write (RAW)
True dependency
Write After Write (WAW)
False dependency
Write After Read (WAR)
False dependency
3 Minimizing Dependencies Techniques
- -Branch prediction/ Speculation
- -Predication
- -Register Renaming
Branch prediction
Predict which branch might be taken
Predication
Use conditional moves
execute all the branch condition’s statements, but don’t commit them to memory until the branch conditions are known