Arch: chore
This commit is contained in:
@ -6,18 +6,14 @@
|
||||
Позволяет обрабатывать случаи, когда зависимости между инструкциями неизвестны во время компиляции.
|
||||
|
||||
**Концепции:**
|
||||
|
||||
- Инструкциям разрешается исполняться неупорядоченно, как только становятся доступны их операнды.
|
||||
- Разрешение инструкциям неупорядоченно завершаться.
|
||||
|
||||
**Реализация динамического планирования:**
|
||||
|
||||
- Ступень декодирования инструкций ID делится на 2 ступени:
|
||||
|
||||
1. **Выдача** - декодирование инструкций, проверка структурных конфликтов. Всегда выполняется в порядке, указанном в программе.
|
||||
Зависимости под данными записываются по мере того, как инструкции выдаются (динамически создается эквивалент графа зависимостей для множества инструкций, которые находятся в ЦП)
|
||||
2. **Чтение операндов** - ожидание разрешения конфликтов данных, если они есть, и последующее чтение операндов по мере их доступности. Может происходить в порядке, отличном от указанного в программе.
|
||||
|
||||
1. **Выдача** - декодирование инструкций, проверка структурных конфликтов. Всегда выполняется в порядке, указанном в программе.
|
||||
Зависимости под данными записываются по мере того, как инструкции выдаются (динамически создается эквивалент графа зависимостей для множества инструкций, которые находятся в ЦП)
|
||||
1. **Чтение операндов** - ожидание разрешения конфликтов данных, если они есть, и последующее чтение операндов по мере их доступности. Может происходить в порядке, отличном от указанного в программе.
|
||||
- На ступени выборки инструкции IF производится выборка дополнительной инструкции в специальный регистр или нескольких инструкций в очередь в каждом такте.
|
||||
- Увеличивается число функциональных устройств для исполнения большего числа инструкций на ступени EX без структурных конфликтов.
|
||||
- Два подхода к реализации:
|
||||
|
Reference in New Issue
Block a user