Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Презентации / Конвейер команд.ppt
Скачиваний:
40
Добавлен:
11.04.2015
Размер:
1.18 Mб
Скачать

Суперконвейер

Cуперконвейер ведет не только к увеличению скорости вычислений, но и к возникновению дополнительных сложностей. Возрастает вероятность конфликтов. Дороже встает ошибка предсказания перехода - приходится сбрасывать весь длинный конвейер, на что требуется дополнительное время. Усложняется логика взаимодействия ступеней. Однако за счет использования новых архитектур удается справиться с большинством проблем.

Задержки конвейера

1.Задержка работы устройств – выполнение некоторых шагов более чем за один такт

2.Конфликт по ресурсам

3.Явный конфликт по данным

4.Скрытый конфликт по данным (побочные эффекты)

Задержка работы устройств

Выполнение любого из шагов четырёхступенчатого конвейера может затянуться и тогда одна команда задерживает все остальные.

Задержка чтения

Показан

случай, когда на чтение уходит более 1 такта (нужной команды не оказалось в кэше)

Этап декодирования и извлечения операндов также может затянуться.

Задержка на втором шаге

Шаг D второй команды выполняется в течение трёх тактов… В конвейере образуется «пузырь»

Выполнение арифметических операций в устройстве Е тоже происходит за разное время. Умножение, а тем более деление требуют нескольких тактов. «Пузырь» продвигается сверху вниз.

Задержка на третьем шаге

На время работы устройств F,D,W большое влияние оказывает эффективное использование кэш памяти.

Очень полезное усовершенствование конвейера – увеличение размеров буфера и организация в нём очереди команд. Устройство F, может не считаться с тем, что следующее устройство ещё не закончило работу и не освободило буфер. F вызывает следующую команду и записывает её в конец очереди – упреждающая выборка.

Другие методы:

1.Разработка процессоров с несколькими конвейерами команд

2.Разработка процессоров с такой системой команд, в которой все операции выполняются за равное число тактов (RISC-процессоры) или процессоров с RISC-ядром.

Конфликты по ресурсам

Схема конвейера с указанием ресурсов

Конфликт при одновременном обращении к регистрам возникает из-за того, что доступ ко всем регистрам происходит через один общий порт

Меры по уменьшению:

1.Введение раздельных кэшей данных и команд

2.В процессорах с двумя портами регистров можно одновременно обращаться к двум регистрам

3.Расслоение памяти создаёт возможность одновременного обращения к ячейкам из разных блоков.