LEZIONE #05 del 12-Mag-2008 (2 ore) - Dipartimento di Ingegneria ...
LEZIONE #05 del 12-Mag-2008 (2 ore) - Dipartimento di Ingegneria ...
LEZIONE #05 del 12-Mag-2008 (2 ore) - Dipartimento di Ingegneria ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
P4 – Pre<strong>di</strong>zione <strong>di</strong>namica dei branch<br />
• Il pre<strong>di</strong>tt<strong>ore</strong> e’ 8 volte piu’ grande <strong>di</strong> quello <strong>del</strong> P6 (4KB)<br />
• L’algoritmo preciso non e’ stato <strong>di</strong>vulgato<br />
• Il pre<strong>di</strong>tt<strong>ore</strong> si combina con la Trace Cache<br />
• La Trace Cache sostituisce la Cache Istruzioni<br />
• Componenti<br />
• Return Address Stack – 16 elementi (v. [Kaeli91])<br />
• In<strong>di</strong>rect Branch Pre<strong>di</strong>ctor (v. slide successiva)<br />
• Loop detector (v. due slide avanti)<br />
Roberto Giorgi, Universita’ <strong>di</strong> Siena, C208L05, Slide 35<br />
In<strong>di</strong>rect Branch Pre<strong>di</strong>ctor<br />
• Risolve i branch in<strong>di</strong>retti <strong>di</strong>pendenti dai dati<br />
• Sono molto frequenti nei programmi object-oriented (Java, C++)<br />
• Ci sono due casi<br />
• Branch in<strong>di</strong>retti con 1 target (piu’ facili da pre<strong>di</strong>rre)<br />
• Branch in<strong>di</strong>retti con piu’ target (es. statement “case”)<br />
in cui il target <strong>di</strong>pende dai dati <strong>del</strong> programma<br />
• Il pre<strong>di</strong>tt<strong>ore</strong> <strong>di</strong>fferenzia fra questi due casi<br />
• Data-independent<br />
- Viene usato solo l’IP per selezionare il branch target<br />
- Si memorizza il target in una tabella in<strong>di</strong>cizzata dall’IP<br />
• Data-dependent<br />
- Si usa la storia globale degli esiti per selezionare il branch target<br />
- Si memorizza il target in una tabella in<strong>di</strong>cizzata dalla storia globale<br />
Roberto Giorgi, Universita’ <strong>di</strong> Siena, C208L05, Slide 36