Главная страница

С. Н. Ан


Скачать 217.92 Kb.
НазваниеС. Н. Ан
Дата28.08.2021
Размер217.92 Kb.
Формат файлаdocx
Имя файлаquestion39.docx
ТипДокументы
#228178
страница6 из 13
1   2   3   4   5   6   7   8   9   ...   13
2.1 Конвейер
Термин "конвейер" в компьютерной архитектуре обозначает ... конвейер. Идея конвейера состоит в том, чтобы сложную операцию разбить на множество более простых, которые могут выполняться одновременно. При движении объектов по конвейеру на разных его участках выполняются разные операции, а при достижении каждым объектом конца конвейера он окажется полностью обработанным. Конвейеры применяются как при обработке команд, так и в арифметических операциях. Для эффективной реализации конвейера должны выполняться следующие условия:

системавыполняетповторяющуюсяоперацию;

этаоперацияможетбытьразделенананезависимые части,степеньперекрытия которых невелика;

трудоемкостьподопераций примерноодинакова.

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

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

Увеличение быстродействия, которое можно получить с помощью конвейера приблизительно дается следующей формулой:

где n- количество операндов, загружаемых в конвейер, d- глубина конвейера. Пусть требуется выполнить операцию сложения над двумя одномерными массивами по 200 элементов, причем выполнение сложения требует пять операций. В этом случае ускорение составит (200*5)/(200+5)=4.88. Разумеется, это идеальная ситуация, недостижимая в реальной жизни, в частности, считается, что нет "пузырей" и т.д. Это предполагает, как уже упоминалось, взаимную независимость данных.

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

зависимость между командами. Такие ситуации возникают при наличии в циклах ветвлений, то есть условных операторов.

1   2   3   4   5   6   7   8   9   ...   13


написать администратору сайта