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

2.3 KiB
Raw Permalink Blame History

Ступени конвейера, использующего табло. Обработка инструкции на различных ступенях.

  • Выборка инструкции (IF) - последовательна.
  • Выдача (ID1). Инструкция выдается, если:
  • Функциональное устройство для инструкции доступно (нет структурного конфликта).
  • Регистр назначения для результата инструкции не помечен для записи другой раннее запущенной инструкцией (нет конфликта WAW).
  • Чтение операндов (ID2)
  • Табло отслеживает доступность операндов.
  • Когда все операнды доступны, табло указывает функциональному устройству считать все операнды из регистров (пересылка не поддерживается) и начать исполнение.
  • Таким образом, конфликты RAW разрешаются динамически.

Между стадией ID2 и EX не может быть простоев. В табло хранится информация кто от кого зависит, и как только необходимые регистры появились, мы их сразу забираем.

  • Исполнение (EX). Заменяет EX+MEM в MIPS.
  • Функциональное устройство начинает исполнение, как только получит операнды.
  • Когда результаты готовы, оно уведомляет табло.
  • Запись результата (WB)
  • Когда табло уведомляется о том, что функциональный блок завершил исполнение, оно выполняет проверку на конфликты WAR и приостанавливает запись результата, если необходимо.
  • Функциональное устройство помечается как доступное для других инструкций после того, как ступень WB завершена.