Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1выч+.pdf
Скачиваний:
7
Добавлен:
10.02.2016
Размер:
230.97 Кб
Скачать

Преимущества:

1.Время цикла процессора уменьшается, таким образом увеличивая скорость обработки инструкций в большинстве случаев.

2.Некоторые комбинационные логические элементы, такие как сумматоры или умножители могут быть ускорены путем увеличения количества логических элементов. Использование конвейера может предотвратить ненужное наращивание количества элементов.

Недостатки:

1.Бесконвейерный процессор исполняет только одну инструкцию за раз. Это предотвращает задержки веток инструкций (фактически, каждая ветка задерживается), и проблемы, связанные с последовательными инструкциями, которые исполняются параллельно. Следовательно, схема такого процессора проще и он дешевле для изготовления.

2.Задержка инструкций в беcконвейерном процессоре слегка ниже, чем в конвейерном эквиваленте. Это происходит из-за того, что в конвейерный процессор должны быть добавлены дополнительные триггеры.

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

Примеры

Общий конвейер

Общий четырёхуровневых конвейер; цветные квадраты символизируют независимые друг от друга инструкции

Справа изображён общий конвейер с четырьмя стадиями работы:

1.Получение (англ. Fetch)

2.Раскодирование (англ. Decode)

3.Выполнение (англ. Execute)

4.Запись результата (англ. Write-back)

Верхняя серая область — список инструкций, которые предстоит выполнить. Нижняя серая область — список инструкций, которые уже были выполнены. И средняя белая область является самим конвейером.

Выполнение происходит следующим образом:

Цикл

 

Действия

0Четыре инструкции ожидают исполнения

1

 

Зелёная инструкция забирается из памяти

 

 

 

 

 

 

 

Зелёная инструкция раскодируется

2

 

Фиолетовая инструкция забирается из памяти

 

 

 

 

 

 

Зелёная инструкция выполняется (то есть исполняется то действие, которое она

 

 

 

кодировала)

3

 

Фиолетовая инструкция раскодируется

 

 

Синяя инструкция забирается из памяти

 

 

 

 

 

 

 

 

Итоги исполнения зелёной инструкции записываются в регистры или в память

 

 

Фиолетовая инструкция выполняется

4

 

Синяя инструкция раскодируется

 

 

Красная инструкция забирается из памяти

 

 

 

 

 

 

 

 

 

 

Зелёная инструкция завершилась

 

 

Итоги исполнения фиолетовой инструкции записываются в регистры или в

5память

Синяя инструкция выполняется

Красная инструкция раскодируется

Фиолетовая инструкция завершилась

6

 

Результаты исполнения синей инструкция записываются в регистры или в память

 

Красная инструкция выполняется

 

 

 

 

 

 

 

 

 

 

 

 

Синяя инструкция завершилась

7

 

Итоги исполнения красной инструкции записываются в регистры или в память

 

 

 

 

 

 

 

 

8

 

Красная инструкция завершилась

 

 

 

 

 

 

 

9Все инструкции были выполнены