Files
Kirill 3a96c27c48 Arch: new
Все теоритические билеты по Архитектуре ЭВМ в основном были написаны,
кроме: 8.4; 13.4; 14.4; 15.4. Задачи будут позже.
2025-01-14 19:40:01 +03:00

2.2 KiB
Raw Blame History

Статические методы обработки условных переходов.

Задержанный/отложенный переход - инструкция, след. после перехода (из слота задержки перехода) исполняется независимо от того, произошел переход или нет (введена частью ISA).

  • Предположение, что переход никогда не происходит.

Продолжается выполнение инструкций, начиная с инструкции, след. за инструкцией перехода, но состояние машины не меняется до тех пор, пока рез-тат перехода точно не определен. Если переход не произошел - состояние сохраняется, если произошел - рез-таты отбрасываются, фактически произошел простой.

  • Предположение, что переход всегда происходит.

Продолжается выполнение инструкций, начиная с места перехода, ... Труднее реализовать, чем предыдущий вариант.

Пример: схема предсказания «переход не произойдет»:

Переход не произошел, нет простоя:

I (untaken branch instruction) IF ID EX MEM WB
I+1 IF ID EX MEM WB
I+2 IF ID EX MEM WB
I+3 IF ID EX MEM WB
I+4 IF ID EX MEM WB

Переход произошел, простой:

I (taken branch instruction) IF ID EX MEM WB
I+1 IF Idle Idle Idle idle
Branch target IF ID EX MEM WB
Branch target +1 IF ID EX MEM WB
Branch target +2 IF ID EX MEM WB