Files

17 lines
1.8 KiB
Markdown
Raw Permalink Normal View History

#### Структура ВТВ.
Эффективное предсказание переходов требует наличие цели перехода на ранней стадии конвейера, можно использовать доп. сумматоры на стадии ID, чтобы цель могла быть выбрана, но будет 1 такт простоя. Проблему решает буфер целей перехода (ВТВ).
**ВТВ** - аппаратный механизм, снижающий число тактов простоя при корректно предсказанном переходе до 0.
**ВТВ** - буфер целей перехода, доп. набор логики, который располагается на стадии IF и который помогает предсказывать переходы.
Цель: переходы без простоев.
Если мы угадали с помощью ВТВ, значит после выполнения IF мы знаем адрес следующей инструкции.
**Простейший вариант** - когда в ВТВ хранится целевой адрес. Вид ВТВ:
| Адрес перехода | Цель перехода, если он предсказан выполняющимся. | Бит валидности |
| :-- | :-- | :-- |
| ... | ... | ... |
Бит валидности - признак актуальности строки.
Кэш полностью ассоциативный. Адрес текущей инструкции ищется в первом столбце. Если он там есть, тогда текущая инструкция - условный переход, причем выполняющийся. Тогда считываем адрес из второго столбца.