Все теоритические билеты по Архитектуре ЭВМ в основном были написаны, кроме: 8.4; 13.4; 14.4; 15.4. Задачи будут позже.
2.3 KiB
2.3 KiB
Описание двухуровневого механизма динамического предсказания ветвлений с учетом корреляции.
Соседние переходы могут коррелировать: поведение недавно выполненных переходов влияет на предсказание текущего перехода. Это имеет место в ветвлениях, использованных для реализации конструкций if-then-else. Предполагается, что есть 2 уровня предсказаний:
- Глобальный
Запись истории поведения m последних переходов как выполнившихся или нет. Обычно используется m -битный регистр сдвига.
- На один адрес ветвления
2^m
таблиц предсказания, каждая запись таблицы - это n-битный счетчик с насыщением.- Запись истории
1^{го}
уровня используется для выбора соответствующей из таблиц предсказания2^{го}
уровня. Таким образом каждая с2^m
таблиц содержит2^N
записей и каждая запись - 2-битный (к примеру счетчик). - Общее количество необходимых для
2^{го}
уровня бит:2^m \times n \times 2^N
. n - количество бит, используемое для предсказания. GAp - Global Adaptive per address. Используется обозначение GAp(m,n)
, которое означает: - Записываются последние
m
ветвлений для выбора между2^m
таблицами истории. - Каждая таблица истории
2^{го}
уровня использует n-битные счетчики (имеет разрядность n бит). - Одноуровневая схема бимодальной ВНТ с 2-битными счетчиками обозначается как предсказатель
(0,2)