Alpha Mpu Project: General Information
Alpha Mpu Project: General Information
Author: Prathap
Date: 8/1/11
1. INTRODUCTION:
2. General information
[Ev6] 3rd Generation Cpu
600 MHz operation in 0.35u CMOS
RISC Architecture
30+ Performance levels
3. Architectural Techniques:
Out-of-order and speculative execution
4-way integer issue
2-way floating-point issue
Sophisticated tournament branch prediction
High-bandwidth memory system
4. Goal:
Performance leadership through unique combination of advance
circuit and architectural techniques.
Enablers
The 64 KB two-way associative instruction cache supplies
Four instructions every cycle
The next-fetch and set predictors provide the fast cache access
times of a direct-mapped cache and eliminate bubbles in
nonsequential control flows
The instruction fetcher speculates through up to 20 branch predictions
to supply a continuous stream of instructions
The tournament branch predictor dynamically selects between Local
and Global history to minimize mispredicts.
Instruction stream:
The general overall explanation can be understand from following
diagram
Fetch stage:
The fetch depends on two co-relations either local or global correlation.
ICACHE:
Large 64 k byte, two-way set associative instruction cache.
Each fetch block of four instructions includes a line and set prediction.
Prediction indicates where to fetch the next block of instructions from,
including which set should be used.
Remove the bubble if the branch is predicted to be taken by the branch
predictor.
On cache fills, the line predictor value at each fetch line is initialized with
the index of the next sequential fetch line, and later retrained by the
branch predictor if necessary.
The line predictor does not train on every mispredict.
The mispredict cost is typically a single cycle bubble.
Line predictor is also trained for jumps that use direct register addressing.
Things still to be explored:
Training algorithms
Saturated calculation