Процессоры с конвейеризацией команд
Сущность конвейера команд состоит в выполнении последовательности повторов операций. Например: 1. Выборка команды. 2. Декодирование команды. 3. Преобразование адреса операнда. 4. Выборка операнда. 5. Выполнение операции. 6. Сохранение результата.
Одновременно может выполняться до 6-и операций управления. Длительности выполнения операций должны быть равны (обычно 1-му такту). Для каждой из стадий используются специальные аппаратные средства. Конвейер применяется, чтобы повысить производительность. Операционные устройства обработки данных также должны быть конвейерного типа. Проблемы, возникающие при работе конвейера: - при использовании результата предыдущей операции в последующей возникают проблемы, связанные с пересылкой этих результатов; - определение адреса операнда для данной команды с помощью предыдущей; - проблема изменения последовательности выполнения команд (с условным переходом); - совпадают стадии выборки операндов для разных стадий; - конфликты в доступе к памяти; - проблемы при прерываниях; - если конвейер рассчитан на одно тактовые стадии, то возникает проблема при выполнении более длительных стадий. Меры, принимаемые для устранения проблем в современных микропроцессорах: - вводятся дополнительные шины связи; - при появлении условных переходов осуществляется прогнозирование и оцениваются вероятности по каждому пути, накапливается статистика по каждому пути; если путь выбран неправильно, сохраняются данные для осуществления возврата, происходит прерывание, движение идет по другому пути.
|