Branch Instructions Sima, Fountain and Kacsuk Chapter 8

2/22/00


Click here to start


Table of Contents

Branch Instructions Sima, Fountain and Kacsuk Chapter 8

Major Chapter Goals

Types of branch instructions

Types of branch instructions

Why worry about different types of branches?

Ways of checking condition

Result State

Result state disadvantages

Result state disadvantages ...

Direct Check

Comparison of conditional branches

The effect of branches

Branch statistics ...

Branch Handling

Branch Handling

Delayed branching

Delayed branching ...

Delayed branching options

Code migration to fill slots

Does this work with conditional branches/?

Optimisations - Annulment

Annul delay slot if branch not taken

Annul delay slot if branch not taken ...

Annul delay slot if branch is taken

Annul delay slot if branch is taken

Branch detection

Early branch detection

Conditional branches

Handling unresolved conditional branches

Blocking branch processing

Speculative branch processing

Branch prediction schemes

Fixed Prediction (Guess Not Taken)

Fixed Prediction (Guess Not Taken)

Fixed Prediction (Guess Not Taken)

Fixed Prediction (Guess Taken)

Static Prediction

Static Prediction ...

Dynamic prediction

Dynamic Prediction Techniques

Branch History Bits

State transitions in 2 bit scheme

State transitions in 2 bit scheme

Implicit Dynamic Scheme

BTAC and BTIC implementation

BTAC implementation ...

Performance differences in BTAC and BTIC

Implementation of History bits

I-Cache and BHT (Power PC 604)

Prediction Accuracy

Prediction Accuracy ….

Recovery from Misprediction

Recovery from Misprediction ...

Schemes to shorten mis-prediction recovery

Schemes to shorten mis-prediction recovery...

Schemes to shorten mis-prediction recovery…..

Multiway Branching

Multiway branching ...

Guarded Execution

General form of Guarded Execution

Effectiveness of Guarded Execution

Author: David Abramson

Email: davida@csse.monash.edu.au

Home Page: http://www.csse.monash.edu.au/~davida


Disclaimer