- •Архитектура вычислительных систем (Часть 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.5. Расчет контрольного примера
В качестве контрольного примера рассчитаем результат следующего выражения:
Matrice A Matrice B Matrice C Result
( 1 4 0 0 0 0 ) ( 2 3 3 0 0 0 ) ( -1 -22 -14 -7 +0 +0 ) ( 5 5 5 5 0 0 )
( 6 2 3 0 0 0 ) ( 1 6 4 3 0 0 ) ( -9 -49 -24 -4 -1 +0 ) ( 5 5 5 5 5 0 )
( 4 1 1 3 0 0 ) X ( 0 8 1 1 2 0 ) + ( -4 -21 -18 -2 -3 +2 ) = ( 5 5 5 5 5 5 )
( 0 3 6 4 1 0 ) ( 0 0 2 1 2 1 ) ( +2 -61 -21 -15 -18 -2 ) ( 5 5 5 5 5 5 )
( 0 0 2 2 3 2 ) ( 0 0 0 1 3 3 ) ( +0 -11 -1 -2 -16 -18 ) ( 0 5 5 5 5 5 )
( 0 0 0 2 2 1 ) ( 0 0 0 0 2 6 ) ( +0 +0 +2 +1 -7 -9 ) ( 0 0 5 5 5 5 )
6 x 6 6 x 6 6 x 6 6 x 6
Как видно из расчётов, размерности всех операндов и результата равны 6х6. Ширина ленты матриц А и В равна четырём, ширина ленты матриц С и результата равна семи.
Систолический массив для расчёта такого выражения имеет следующую конфигурацию, показанную на рис. 6.10.
Фигурными стрелками на схеме обозначены входные потоки данных. Потоки с номерами 1..4 содержат элементы диагоналей матрицы А, потоки с номерами 5..8 содержат элементы диагоналей матрицы В, потоки с номерами 9..15 содержат диагонали матрицы С.
Элементы систолического массива пронумерованы от 1 до 16. Результирующие значения считываются с «С»-выходов элементов 1, 2, 3, 4, 8, 12, 16 (обозначены на схеме тёмными стрелками). На каждом выходе появляются элементы одной диагонали результирующей матрицы.
Рассмотрим протокол выходных значений массива к моменту опустошения всех входных потоков (т.е. все элементы входных матриц обработаны):
Шаг 1: 0 0 0 0 0 0 0
Шаг 2: 0 0 0 0 0 0 0
Шаг 3: 0 0 0 0 0 0 0
Шаг 4: 0 0 0 5 0 0 0
Шаг 5: 0 0 5 0 5 0 0
Шаг 6: 0 5 0 0 0 5 0
Шаг 7: 5 0 0 5 0 0 5
Шаг 8: 0 0 5 0 5 0 0
Шаг 9: 0 5 0 0 0 5 0
Шаг 10: 5 0 0 5 0 0 5
Шаг 11: 0 0 5 0 5 0 0
Шаг 12: 0 5 0 0 0 5 0
Шаг 13: 5 0 0 5 0 0 5
Шаг 14: 0 0 5 0 5 0 0
Шаг 15: 0 5 0 0 0 5 0
Шаг 16: 0 0 0 5 0 0 0
Шаг 17: 0 0 5 0 5 0 0
Шаг 18: 0 0 0 0 0 0 0
Шаг 19: 0 0 0 5 0 0 0
Шаг 20: 0 0 0 0 0 0 0
Шаг 21: 0 0 0 0 0 0 0
Легко заметить, что начиная с четвёртого шага на выходах массива появляются элементы матрицы результата. На каждом выходе появляются значения одной диагонали результирующей матрицы (впрочем, пример не позволяет это оценить должным образом) с интервалом в два такта. Значения приходят на выходы не одновременно – смещаясь относительно главной диагонали он запаздывают каждый раз на один такт.
4.6. Порядок выполнения лабораторной работы
Порядок выполнения лабораторной работы заключается в следующем:
1) ознакомиться с разделами методических указаний к данной лабораторной работе;
2) запустить программу моделирования систолического массива«Sistolic.exe» из соответствующего каталога;
3) изучить работу программы на контрольном примере;
4) получить у преподавателя вариант задания на исследование систолического массива);
5) провести исследование систолического массив, соответствующего варианту задания;
6) в результате исследования определить временные и загрузочные характеристики массива (например, число тактов, необходимое для получения результата, коэффициент загрузки операционных элементов и т.д.)