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

20 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#### Ступени конвейера, использующего табло. Обработка инструкции на различных ступенях.
- **Выборка инструкции (IF)** - последовательна.
- **Выдача (ID1).** Инструкция выдается, если:
- Функциональное устройство для инструкции доступно (нет структурного конфликта).
- Регистр назначения для результата инструкции не помечен для записи другой раннее запущенной инструкцией (нет конфликта WAW).
- **Чтение операндов (ID2)**
- Табло отслеживает доступность операндов.
- Когда все операнды доступны, табло указывает функциональному устройству считать все операнды из регистров (пересылка не поддерживается) и начать исполнение.
- Таким образом, конфликты RAW разрешаются динамически.
Между стадией ID2 и EX не может быть простоев. В табло хранится информация кто от кого зависит, и как только необходимые регистры появились, мы их сразу забираем.
- **Исполнение (EX).** Заменяет EX+MEM в MIPS.
- Функциональное устройство начинает исполнение, как только получит операнды.
- Когда результаты готовы, оно уведомляет табло.
- **Запись результата (WB)**
- Когда табло уведомляется о том, что функциональный блок завершил исполнение, оно выполняет проверку на конфликты WAR и приостанавливает запись результата, если необходимо.
- Функциональное устройство помечается как доступное для других инструкций после того, как ступень WB завершена.