- •Конвейерная и суперскалярная обработка
- •Двух позиционный конвейер выполнения
- •Причины, которые не позволяют достичь увеличения скорости обработки вдвое на практике :
- •Временная диаграмма работы конвейера операций
- •Влияние команды условного перехода на работу конвейера операций
- •Алгоритм управления конвейером из шести рабочих позиций
- •ВЫВОДЫ
- •Сложность схем управления памятью и регистрами, оптимизации работы конвейера резко возрастает с увеличением
- •Производительность конвейера операций
- •Производительность конвейера операций
- •Производительность конвейера операций
- •Обработка команд перехода.
- •Предварительное извлечение команды в точке перехода
- •Организация буфера цикла
- •Предсказание переходов
- •Диаграмма состояний автомата предсказаний перехода
- •Схема обработки команд условного перехода по правилу " всегда предсказывать отсутствие перехода"
- •Конвейр операций в микропрцессоре Intel 80486
- •Диаграммы прохождения разных последовательностей команд через конвейер операций
- •Выполнение программы в суперскалярном процессоре
- •Требования к аппаратным средствам, реализующим суперскалярную концепцию:
- •Процесс выполнения программы в Pentium II протекает следующим образом.
- •Узлы извлечения и расшифровки команд
- •Узел диспетчирования/выполнения
Требования к аппаратным средствам, реализующим суперскалярную концепцию:
Стратегия извлечения команд, которая реализует параллельное считывание нескольких команд и прогнозирование ветвления после команд условного перехода.
Логика выявления зависимостей между командами по данным, включая содержимое регистров и механизм обмена этими данными в тех случаях, когда они необходимы для корректного выполнения команд.
Механизм параллельного инициирования нескольких команд.
Включение в состав процессора ресурсов, необходимых для параллельного выполнения нескольких команд, в том числе функциональных узлов конвейера и узлов иерархической памяти, способных обслуживать одновременно несколько обращений к памяти.
Механизм обратного преобразования свободного потока команд в последовательный при фиксации результатов.
Процесс выполнения программы в Pentium II протекает следующим образом.
Процессор извлекает команды в той последовательности, в которой они расположены в исходной программе.
Каждая команда преобразуется в последовательность микрокоманд фиксированной длины, аналогичных командам RISC-процессора.
Микрокоманды выполняются с помощью конвейеров операций, реализующих принцип суперскалярной организации, т.е. микрооперации могут выполняться в порядке, отличном от исходного.
Процессор фиксирует результаты выполнения отдельных микроопераций в регистрах в том порядке, который соответствует исходному потоку команд.