- •Учебное пособие
- •Глава 2 Характеристики и классификация эвм и систем
- •2.1 Основные технические характеристики эвм . . . . . . . . . . 17
- •Глава 3. Организация систем памяти
- •Глава 4. Организация процессоров
- •Глава 5 Организация систем ввода-вывода.
- •Глава 6 Параллельные вычислительные системы
- •1 Принципы организации эвм.
- •1.1 Факторы, определяющие принципы организации эвм
- •1.2 Области применения вт и основные типы эвм
- •1.2.1 Эвм общего назначения
- •1.2.2 Малые эвм
- •1.2.3. Микропроцессоры и микро-эвм
- •1.3. Понятие об архитектуре и структуре эвм
- •1.4. Принцип действия эвм
- •1.5. Аппаратные и программные средства реализации алгоритмов
- •2.1 Основные технические характеристики эвм
- •2.2 Общая классификация вычислительных машин
- •1. По способу представления информации :
- •2. По назначению (степени специализации):
- •4. По количеству вычислительных устройств и степени распределенности:
- •2.3 Основные пути повышения производительности эвм
- •3.2. Организация адресной памяти
- •3.3. Безадресная стековая память
- •3.4. Ассоциативная память
- •3.5. Системы памяти с расслоением
- •3.6. Понятие о виртуальной памяти
- •4.1. Назначение и классификация процессоров
- •4.2. Логическая организация процессора общего назначения
- •4.3. Операционные устройства процессоров
- •4.3.1. Операционные устройства процедурного типа и с жесткой структурой. Понятие об I-процессорах и m-процессорах
- •4.3.2. Блочные операционные устройства
- •4.3.3. Конвейерные операционные устройства
- •4.4 Архитектура системы команд. Risc и cisc процессоры
- •4.5. Устройства управления процессоров
- •4.5.1 Назначение и классификация устройств управления
- •4.5.3 Конвейер команд
- •1. Структурные или ресурсные.
- •3. Выделяют несколько вариантов конфликтов по данным:
- •4.5.4 Суперскалярные архитектуры
- •4.5.5 Процессоры с длинным командным словом (vliw).
- •4.6 Обзор архитектур процессоров Intel
- •5.1 Назначение и состав системы ввода-вывода.
- •5.2. Структуры систем ввода-вывода.
- •5.3 Основные режимы ввода-вывода.
- •5.4 Основные принципы организации передачи информации в вычислительных системах.
- •6.1. Классификация параллельных вс
- •1. По взаимодействию потоков команд (инструкций) и потоков данных.
- •2. По управляющему потоку
- •3. По использованию памяти :
- •4. По способу обмена между процессорами:
- •5. По используемому типу параллелизма :
- •6.3 Понятие о систолических структурах и алгоритмах
- •6.4 Масштабируемые параллельные системы мкмд.
- •6.5 Потоковые вычислительные системы
4.3.2. Блочные операционные устройства
Для повышения производительности процессора при выполнении операций его операционное устройство может строиться по блочному принципу. В таких блочных О У реализуется несколько функционально независимых исполнительных устройств, выполняющих различные операции (или различные группы операций, например, три блока целочисленного сложения, два - целочисленного умножения, по одному блоку деления, сложения и умножения с плавающей запятой и т.д.).
Эти устройства работают параллельно, обрабатывая каждое свои операнды. Управление этими устройствами осуществляется с помощью так называемых длинных командных слов (Very Long Instruction Word - VLIW). Командные слова включают инструкции для каждого их исполнительных устройств, а также операнды или указатели на них.
Преимуществом блочных ОУ является более высокая производительность, достигаемая за счет распараллеливания вычислений. В то же время, использование таких устройств не всегда эффективно, поскольку не всегда есть возможность загрузить все исполнительные устройства в каждом такте, в результате часть из них простаивает. Более эффективными часто оказываются конвейерные операционные устройства, поскольку конвейеризовать вычисления в ряде случаев проще, чем распараллелить, что связано с повторением однотипных вычислений в алгоритмах.
4.3.3. Конвейерные операционные устройства
Для конвейеризации вычислений необходимо:
- разбить вычисления на последовательность одинаковых по времени этапов;
реализовать каждый этап аппаратно в виде ступени конвейера;
обеспечить фиксацию промежуточных результатов вычислений на выходе каждой ступени в регистрах-защелках.
Напомним, что эффективность конвейера будет тем выше, чем больше задач будет поступать на его вход. Типичным примером конвейерных операционных устройств могут служить так называемые матричные умножители. Свое название они получили, во-первых, потому, что включают фактически матрицу операционных элементов (сумматоров), а во-вторых, поскольку одной из наиболее очевидных сфер их применения является умножение матриц.
Рассмотрим процесс умножения двух двоичных четырехразрядных положительных чисел:
По косвенной схеме умножения на устройстве с одним сумматором и набором регистров для реализации этого умножения необходимо в общем случае выполнить 4 шага, на каждом их которых выполняется умножение A на очередной разряд bi, сложение A bi с текущей суммой частичных произведений и сдвиг новой полученной суммы на 1 разряд вправо. Таким образом, время на выполнение этого умножения можно приближенно оценить как :
,
где t& -задержка на 1 логическом вентиле (при умножении A на bi), В формуле не присутствуют затраты на сдвиги, так как они задаются жестко путем соединений линеек сумматоров, кроме того, считаем, что все частичные произведения формируются за 1 логическое умножение. Для нашего случая время на умножение оказывается равным 13 t&. Таким образом, быстродействие умножителя по сравнению с обычной схемой примерно в 3 раза выше. Кроме того, умножитель может работать в режиме конвейера. В данном случае число его ступеней равно 6 (так как в сумматоре с последовательным переносом придется организовывать три отдельные ступени). Пиковая производительность конвейера при полной загрузке - 1 результат за 2t&, то есть в 20 раз выше, чем в обычной схеме. Такой выигрыш достигается за счет дополнительных аппаратных затрат, которые выше, чем в первом случае примерно в 4-5 раз.
В умножителе Брауна используются несколько основных способов повышения производительности:
распараллеливание вычислений (одновременное вычисление всех Abi);
конвейеризация вычислений (цикл умножения разворачивается в последовательность ступеней, межразрядные переносы сохраняются и передаются на следующую ступень);
аппаратная реализация и специализация вычислений позволяет избежать расходов на сдвиг, который задается жестко, сохранение переноса также диктуется выбранным для аппаратной реализации алгоритмом.
Как уже упоминалось, основным элементом матричного умножителя является сумматор с сохранением переноса (ССП или Carry Save Adder - CSA). Его используют не только в умножителях, но и везде, где необходимо ускорить сложение N чисел. Так, на рис. 4.4. показан сумматор для сложения 3 чисел на базе ССП. Остановимся на принципе построения подобных устройств. Полный сумматор (ПС) позволяет складывать 3 одноразрядных числа. Обычно в качестве третьего слагаемого выступает перенос, поступающий либо с предыдущего сумматора, либо со схемы передачи переноса. Но если в качестве третьего слагаемого использовать соответствующий разряд третьего n-разрядного числа и не передавать перенос в следующий одноразрядный сумматор, то на выходе сумматора сформируется сумма в данном разряде и перенос.
На выходе линейки таких сумматоров формируются два числа - собственно сумма разрядов трех n-разрядных слагаемых и сумма переносов при сложении этих слагаемых. Сумма этих двух чисел и представляет собой значение суммы трех слагаемых:
S = X + Y + Z = Sxyz+ Cxyz.
Линейка полных сумматоров, обведенная на рис. 4.5 пунктиром - это и есть сумматор с сохранением переноса (ССП). Данная схема имеет 3 входа и два выхода (имеются в виду n-разрядные входы и выходы), поэтому в литературе можно встретить для нее обозначение ССП3-2.
Рис. 4.4
Если подать два полученных числа на обычный параллельный сумматор, то на выходе мы получим сумму 3 чисел. Если использовать не один ССП3-2, а дерево таких сумматоров, как показано на рис.4.5 (ССП8-2), то выполняется сложение 8 чисел, и так далее - для N чисел мы используем схему ССПN-2. Фактически мы имеем схему, похожую на пирамидальную, но с одной общей
с
хемой
передачи и ускорения переноса.
Ускорение схемы на базе ССП по сравнению с пирамидальным включением сумматоров зависит от времени задержки параллельного сумматора со схемой ускоренного переноса (СУП):
где tсум - время задержки параллельного сумматора с СУП,
tзс - задержка полного одноразрядного сумматора.
П
Рис. 4.5
соответственно растет tсум, а tзсне меняется. На базе быстродействующего сумматора на N чисел, аналогичного представленному на рис. 4.5, можно построить древовидный умножитель Уоллеса.
В
Рис.4.5
Рис.4.6
