- •Архитектура вычислительных систем (Часть 1)
- •Введение
- •Лабораторная работа № 1 Принципы управления конвейерными процессорами
- •1.1. Общие сведения
- •1.1.1. Условия эффективной реализации конвейера
- •1.1.2. Таблицы занятости
- •1.1.3. Диаграмма состояний
- •1.1.4. Термины и определения
- •1.2. Порядок работы с программой имитационного моделирования
- •1.2.1. Запуск программы
- •1.2.2. Пункт меню «Входные данные»
- •1.2.3. Пункт меню «Инструменты»
- •1.2.4. Подпункт «Просмотреть схему конвейера»
- •1.2.5. Подпункт «Анализировать статический
- •1.2.6. Подпункт «Имитировать работу динамического конвейера»
- •1.3. Порядок выполнения лабораторной работы
- •1.4. Варианты заданий
- •1.4. Содержание отчета о выполненной работе
- •2.2. Порядок работы с программой имитационного моделирования.
- •2.3. Порядок выполнения лабораторной работы
- •2.4. Содержание отчета о выполненной работе
- •2.5. Контрольные вопросы
- •Лабораторная работа № 3 Исследование конфликтов при работе конвейера
- •3.1. Общие вопросы
- •3.1.1. Структурные конфликты
- •3.1.2. Конфликты по данным
- •3.1.3. Конфликты по управлению
- •3.2. Порядок работы с программой имитационного моделирования
- •3.3. Порядок выполнения лабораторной работы
- •2) С одинаковым количеством команд, изменяющейся длительностью первого этапа и постоянным положением начала "пузыря " в конвейере.
- •3) С одинаковым количеством команд, изменяющейся длительностью последнего этапа и постоянным положением начала "пузыря " в конвейере.
- •3.4. Содержание отчета о выполненной работе
- •3.5. Контрольные вопросы
- •Лабораторная работа № 4 Принципы организации и функционирования систолических массивов
- •4.1. Общие сведения
- •4.2. Пример применения систолического массива
- •4.3. Описание работы с программой имитационного моделирования
- •4.3.1. Запуск программы
- •4.3.2. Пункт меню «Создание конфигурации»
- •4.3.3. Пункт меню «Моделирование работы»
- •4.4. Модель систолического массива
- •4.5. Расчет контрольного примера
- •4.6. Порядок выполнения лабораторной работы
- •4.7. Варианты заданий
- •4.8. Содержание отчета о выполненной работе
- •4.9. Контрольные вопросы
- •Содержание
4.2. Пример применения систолического массива
Особенности функционирования систолической массива рассмотрим на следующем примере.
Систолический массив применяется для умножения типа Y=AX, где A-ленточная матрица (матрица nxn), ширина полосы =p+q-1, а Х – вектор (см. рис.)
В данном случае p=2 и q=3. Управление операциями производится следующим образом. В начальном состоянии значения всех yi равно нулю. На основные операционные элементы РЕ с интервалом в два такта в порядке возрастания индекса i подаются xi и yi соответственно вправо и влево с интервалом в один такт. Элементы а ленточной матрицы перемещаются сверху вниз. Таким образом, в следующем по отношению к показанному на рисунке состоянию (через один такт) y1 перемещается в РЕ2, у2- в РЕ4, х1- в РЕ2, а11 –в РЕ2. В процессорных элементах поступившие значения х и а перемножаются, а результаты суммируются с поступившими значениями у (т. е. имеет место операция умножения с суммированием). При этом в процессорном элементе РЕ2 у1 принимает значение а11х1, а в РЕ4 значение у2 остается равным нулю. Далее, в состоянии через два такта в процессорном элементе РЕ1 производятся операции умножения и суммирования поступивших х2, а12 и у1 в соответствии с выражением у1у1+а12х2, т.е. у1 принимает значение а11х1+а12х2. В процессорных элементах РЕ2 и РЕ4 операции не производятся из-за отсутствия в них
а11 а12 0 х1 y1
а21 а22 а23 . . . х2 y2
а31 а32 а33 а34 х3 = y3
0 а42 а43 а44 . . . х4 y4
0 0 а53 . . . . . .
A X Y
а)
Рис. 4.3 Ленточный процесс на основе систолических массивов и схема векторного умножителя
данных. В РЕ3 операции умножения и суммирования осуществляются над имеющимися в нем данными х1, а21 и у2 в соответствии с выражением у20+а21х1. В состоянии через три такта у1 выдается в виде значения а11х1+а12х2, а в РЕ2 производятся умножение и суммирование элементов х2, а22 и у2 в соответствии с выражением у2 у2+а22х2, в результате чего у2 принимает значение а21х1+а22х2, в результате чего у2 принимает значение а21х1+а22х2. В это время в РЕ4 значение у3 становится равным а31х1. В РЕ1 и РЕ3 операции не производятся из-за отсутствия в них данных. В дальнейшем подобные операции повторяются, и с левого конца конвейера с процессорного элемента РЕ1 выдаются через каждые два такта значения уi в порядке возрастания индекса, начиная с у1. Если при ширине ленточной матрицы в структуре, аналогичной показанной на рис 6.3 управлять процессорными элементами, то все расчеты завершаются через 2n+ тактов. При выполнении всех вычислений для умножения АХ в обычной последовательной машине потребовалось бы время, пропорциональное n. В структуре на рис. 4.3.
Анализ функционирования систолических массивов показывает, что такие массивы имеют черты как процессорных матриц (совокупность связанных ПЭ, выполняющих единую команду), так и явные признаки конвейерного вычислителя (результат формируется по тактам).