ВУЗ:
Составители:
- 23 -
4.2 Структура конвейера данных
Создание конвейера предполагает выполнение следующих действий:
1) Деление машиной команды на этапы;
2) Аппаратная реализация этапов в виде конвейерных блоков (сегмен-
тов);
3) Создание входных / выходных регистров блоков для передачи ре-
зультатов.
Таким образом каждый сегмент конвейера имеет структуру, показанную
на рис 4.3, где ОР1 и ОР 2 - входные
и выходные операнды блока (регистры), а
R - поле результата
Структура конвейерного сегмента
Рис 4.3
Последовательно соединяя конвейерные блоки (сегменты) в порядке сле-
дования этапов выполнения машинной команды мы получаем конвейер данной
машинной операции для обработки потока данных, в связи с чем такие конвей-
еры получили название конвейеров данных.
4.3 Сокращение времени при использовании
конвейера данных
Пусть при конвейерной обработке машинная команда, как показано на
рис. 4.2, разбивается на несколько (допустим, n) блоков, и каждая пара операн-
дов последовательно обрабатывается в каждом таком блоке, начиная с первого
по n-й, причем, как только одна пара операндов заканчивает обрабатываться на
некотором операционном блоке, то этот блок
начинает обрабатывать пару дру-
гую пару операндов, переданных с предыдущего блока. Таким образом, все
блоки операционного конвейера работают одновременно и выполняют n раз-
ных этапов обработки для n разных пар операндов. Допустим, что конвейер
спроектирован таким образом, что время прохождения одной пары операндов в
обычном АЛУ и конвейере одинаково и равно
Т, а число пар операндов, кото-
рые можно последовательно пропускать через конвейер, достаточно велико и
Входные регистры
Конвейерный блок
Выходные регистры
ОР1 ОР2 R
ОР1 ОР2 R
- 23 -
4.2 Структура конвейера данных
Создание конвейера предполагает выполнение следующих действий:
1) Деление машиной команды на этапы;
2) Аппаратная реализация этапов в виде конвейерных блоков (сегмен-
тов);
3) Создание входных / выходных регистров блоков для передачи ре-
зультатов.
Таким образом каждый сегмент конвейера имеет структуру, показанную
на рис 4.3, где ОР1 и ОР 2 - входные и выходные операнды блока (регистры), а
R - поле результата
Структура конвейерного сегмента
Входные регистры ОР1 ОР2 R
Конвейерный блок
Выходные регистры ОР1 ОР2 R
Рис 4.3
Последовательно соединяя конвейерные блоки (сегменты) в порядке сле-
дования этапов выполнения машинной команды мы получаем конвейер данной
машинной операции для обработки потока данных, в связи с чем такие конвей-
еры получили название конвейеров данных.
4.3 Сокращение времени при использовании конвейера данных
Пусть при конвейерной обработке машинная команда, как показано на
рис. 4.2, разбивается на несколько (допустим, n) блоков, и каждая пара операн-
дов последовательно обрабатывается в каждом таком блоке, начиная с первого
по n-й, причем, как только одна пара операндов заканчивает обрабатываться на
некотором операционном блоке, то этот блок начинает обрабатывать пару дру-
гую пару операндов, переданных с предыдущего блока. Таким образом, все
блоки операционного конвейера работают одновременно и выполняют n раз-
ных этапов обработки для n разных пар операндов. Допустим, что конвейер
спроектирован таким образом, что время прохождения одной пары операндов в
обычном АЛУ и конвейере одинаково и равно Т, а число пар операндов, кото-
рые можно последовательно пропускать через конвейер, достаточно велико и
Страницы
- « первая
- ‹ предыдущая
- …
- 21
- 22
- 23
- 24
- 25
- …
- следующая ›
- последняя »
