Содержание
- 2. Конвейер инструкций Стадии: Выборка инструкций. Выборка данных из регистров и декодирование инструкции. Исполнение инструкции (вычисление адреса).
- 3. Диаграмма конвейерного исполнения I n s t r. O r d e r Time (clock cycles)
- 4. Что препятствует эффективному исполнению инструкций на конвейере? Зависимости между инструкциями. Наличие зависимостей приводит к возникновению конфликтов
- 5. Конфликт Конфликты – это некоторая ситуация, при которой не возможно запустить следующую инструкцию непосредственно за предыдущий,
- 6. Типы конфликтов. Структурные конфликты Разным инструкциям требуется доступ к одному ресурсу процессора. Конфликты по данным Следствие
- 7. Конфликты по данным. RAW (read after write). Чтение поле записи. i.R2 Возможен для скалярных и суперскалярных
- 8. Способы разрешения конфликтов. Программные Обнаружение конфликтов в процессе компиляции и добавление инструкций nop. Статическое планирование конвейера.
- 9. Структурные конфликты и механизмы их устранения. I n s t r. O r d e r
- 10. Структурные конфликты и механизмы их устранения. I n s t r. O r d e r
- 11. Структурные конфликты и механизмы их устранения. Второй способ устранения приводит к добавлению второго канала к памяти,
- 12. Конфликт RAW Time (clock cycles)
- 13. Конфликт RAW Time (clock cycles)
- 14. Устранение RAW конфликтов методом bypass Метод Bypass сводиться к возможности передачи данных между стадиями конвейера напрямую.
- 15. Пример механизма bypass. Time (clock cycles)
- 16. Аппаратные изменения для работы bypass MEM/WR ID/EX EX/MEM Data Memory mux mux Registers NextPC Immediate mux
- 17. Ограничения bypass (проблема загрузки) Time (clock cycles)
- 18. Ограничения bypass Данные могут быть переданы на другую стадию, только в том случае, если они реально
- 19. Решение проблемы загрузки остановкой конвейера Time (clock cycles) or r8,r1,r9 I n s t r. O
- 20. Статическое планирование конвейера Это программный подход, который сводиться к перестановке инструкций внутри программы для того, чтобы
- 21. Конфликт управления Time (clock cycles)
- 22. Как уменьшить количество тактов простоя Adder Memory Access Write Back Instruction Fetch Instr. Decode Reg. Fetch
- 23. Динамическое планирование исполнения инструкций Идея динамического планирования в том, что инструкции запускаются не по порядку их
- 24. Конфликты связанные с внеочередным исполнением Пример: DIV.D F0,F2,F4 ADD.D F6,F0,F8 SUB.D F8,F10,F14 MULT.D F6,F10,F8 Несмотря на
- 26. Скачать презентацию