Организация компьютерных систем. Орлов С.П - 74 стр.

UptoLike

Разновидность BTB – кэш-память команд в точке перехода (BTIC
Branch Target Instruction Cache). На рис. 4.7. приведена структура
BTIC с данными из предыдущего примера.
Счетик команд
Адрес точки
перехода
Адрес команды
перехода
Данные
Теги
Ассоциативный
поиск по признаку –
адресу А1 из
счетчика команд
Код команды в точке
перехода
А3
С6
А1
А3
С6
Р и с. 4.7. Буфер BTIC
При нахождении в буфере BTIC команды перехода сразу извле-
кается не только адрес перехода, но и код команды и адреса операн-
дов в этой точке перехода. Это позволяет не считывать команду из
кэш-памяти, а сразу перейти к ее декодированию.
При выполнении команд условного перехода IF(L) возникает до-
полнительная сложность. Требуется несколько тактов, чтобы вычис-
лить логическое условие L и целевой адрес перехода при выполнении
этого условия. Возникает вопрос: какую ветвь B1 или B2 программы
(рис. 4.8) загружать в конвейер сразу после загрузки команды IF.
Если не угадать с выбором, то конвейер придется перезагружать.
Основные способы сокращения простоев конвейера:
использование буферов предвыборки;
задержка переходов;
предсказание (прогноз) переходов.
76