Автор: Пользователь скрыл имя, 16 Ноября 2011 в 16:09, курс лекций
Тема 1. Основные характеристики, области применения ЭВМ различных классов.
Определение производительности ЭВМ.
Тема 2.
Функциональная и структурная организация процессора.
Алгоритм работы процессора.
Потоки команд и потоки данных. Общепринята удачная классификация ВС, которую предложил в 1966 г. М.Флинн (США). Основным определяющим архитектурным параметром он выбрал взаимодействие потока команд и потока данных (операндов и результатов).
В ЭВМ классической архитектуры ведется последовательная обработка команд и данных. Команды поступают одна за другой (за исключением точек ветвления программы), и для них из ОЗУ или регистров так же последовательно поступают операнды. Одной команде (операции) соответствует один необходимый ей набор операндов (как правило, два для бинарных операций). Этот тип архитектуры — "один поток команд — один поток данных", ОКОД (SISD - "Single Instruction, Single Data") условно изображен на рис. 1.1.
Рис. 1.1. ВС типа ОКОД (SISD)
МАТРИЧНЫЕ СИСТЕМЫ
Наиболее
распространенными из систем класса
ОКМД являются матричные системы, которые
лучше всего приспособлены для
решения задач, характеризующихся
параллелизмом независимых
Если не считать машины Унгера (1958 г.), которая была узкоспециализированной и предназначалась только для решения задач распознавания образов, то, по-видимому, первой матричной системой следует считать систему SOLOMON упрощенная структура которой представлена на рис. 3.4. Система содержит 1024 ПЭ, соединенных в виде матрицы 32X32. Каждый ПЭ в матрице соединен с четырьмя соседними и включает в себя процессор, обеспечивающий выполнение последовательных поразрядных арифметических и логических операций, а также оперативное ЗУ емкостью 16 Кбит, разбитое на модули по 4 Кбит каждый. Длина слова переменная – от 1 до 128 разрядов. Разрядность слов устанавливается программно. По каналам связи от УУ передаются команды и общие константы. В ПЭ используется так называемая многомодальная логика, которая позволяет каждому ПЭ выполнять (т. е быть активным) или не выполнять (быть пассивным) общую операцию в зависимости от значений обрабатываемых данных.
Рис. 3.4. Система типа ОКМД
В
каждый момент все активные ПЭ выполняют
одну и ту же операцию над данными,
хранящимися в собственной
Система SOLOMON оказалась нежизнеспособной вследствие громоздкости, недостаточной гибкости и эффективности. Однако идеи, заложенные в ней, получили развитие в системеILLIAC-IV, разработанной Иллинойсским университетом и изготовленной фирмой «Барроуз».
Рис. 3.5. Система ILLIАС-IV (проект)
По
первоначальному проекту
Рис. 3.6. Квадрант системы ILLIAC-IV
В каждом квадранте 64 ПЭ образуют матрицу размером 8x8. Схема связей между ПЭ (рис. 3.6) похожа на схему системы SOLOMON, но связь с внешней средой имеют все ПЭ без исключения. Реально действующая система ILLIAC-IV состоит, таким образок, из двух частей: центральной с устройством управления и 64 ПЭ, а также подсистемы ввода – вывода, включающей в себя универсальную ЭВМ В-6700, файловые диски и лазерную архивную память большой емкости. Каждый ПЭ состоит из собственно процессора и ОЗУ. Процессор оперирует с 64-разрядными числами и выполняет универсальный набор операций. Быстродействие процессора достаточно высокое, операция сложения 64-разрядных чисел выполняется за 240 нс, а умножения – за 400 нс. Таким образом, процессор выполняет в среднем 3 млн. операций в секунду, а следовательно производительность системы равна 3X64≈200 млн. операций в секунду.
Емкость ОЗУ каждого ПЭ составляет 2048 64-разрядных слов, длительность цикла обращения к памяти 350 нс. Память выполнена на интегральных схемах. Каждый процессор имеет счетчик адресов и индексный регистр, так что конечный адрес в каждом процессоре может формироваться как сумма трех составляющих: адреса, содержащегося в команде для данного ПЭ, кода, содержащегося в центральном индексном регистре УУ, и кода, содержащегося в собственном индексном регистре. Это существенно повышает гибкость системы по сравнению с системойSOLOMON, где все ПЭ выбирают информацию по одному адресу. Каждый процессор кроме индексного регистра имеет в своем составе пять программно-адресуемых регистров: накапливающийся сумматор, регистр для операндов, регистр пересылок, используемый при передачах от одного ПЭ к другому, буферный регистр на одно слово и регистр управления состоянием ПЭ (аналогичный регистру моды в системе SOLOMON). Регистр управления имеет 8 разрядов. В зависимости от содержимого этого регистра ПЭ становится активным или пассивным, а также выполняет ряд пересылочных операций. Если вычисления не требуют полной разрядности, то процессор может быть разбит на два 32-разрядных подпроцессора или даже восемь 8-разрядных. Это позволяет в случае необходимости обрабатывать векторные операнды из 64, 2X64=128 и 8X64=512 элементов.
Как видно из рис. 3.6, каждый i-й ПЭ связан с четырьмя другими: и м. При такой связи передача данных между любыми двумя ПЭ осуществляется не более, чем за 7 шагов, а среднее число шагов равно 4.
По шине состояния ПЭ могут передавать сигналы о состоянии в УУ, которое таким образом всегда определяет состояние системы. Оперативное ЗУ каждого процессорного элемента связано со своим процессором, устройством управления центральной частью и подсистемой ввода – вывода.
Подсистема ввода – вывода включает в себя стандартную ЭВМ В-6700 (первоначально В-6500) и два уровня внешней памяти: на магнитных дисках с фиксированными дорожками и лазерную память. Накопители на дисках имеют магнитные головки для каждой дорожки (128 головою на диск), и обмен данными осуществляется по 256-разрядной шине. Емкость каждого диска – около 1 млрд. бит. Для того чтобы согласовать скорость передачи информации с дисков и работу управляющей ЭВМ, в систему включено буферное ОЗУ, состоящее из четырех модулей памяти.
Лазерная память представляет собой одностороннее ЗУ очень большой емкости (1012 бит). Информация записывается на тонкой металлической пленке путем прожигания микроотверстий лазерным лучом. Емкость ЗУ – 1200 млрд. бит. Время доступа к данным от 0,2 до 5 с.
Машина В-6700 выполняет и различные другие функции: транслирует и компонует программы, управляет запросами на ресурсы, производит предварительную обработку информации и т. д.
Следует подчеркнуть, что сверхвысокая производительность системы достигается только на определенных типах задач, таких, например, как операции над матрицами, быстрое преобразование Фурье, линейное программирование обработка сигналов, где как раз имеет место параллелизм данных или параллелизм независимых объектов. Необходимо отметить также и то, что разработка программ для систем ILLIAC-IV, обеспечивающих высокую производительность, является весьма сложным делом. Для упрощения этой работы были разработаны специальные алгоритмические языки.
Система ILLIAC-IV была
включена в состав вычислительной сети ARPA.
В результате усовершенствования программного
обеспечения производительность системы
выросла до 300 млн. операций в секунду.
В начале 80-х годов в Советском Союзе в классе систем ОКМД была создана «Параллельная система 2000» (ПС-2000), которая также может быть отнесена к матричным [5]. Эта система ориентирована на решение задач, характеризующихся параллелизмом данных, независимых ветвей и объектов. Разработчики системы считают, в частности, что ПС-2000 найдет особенно широкое и эффективное применение для обработки геофизической информации, получаемой при поиске нефти и газа, решения задач плазменной кинетики, расчетов устойчивости летательных аппаратов, обработки гидролокационных сигналов и изображений, решения задач в частных производных и др.
Рис. 3.7. Система ПС-2000
Укрупненная
структура системы ПС-2000 изображена
на рис. 3.7. Центральная часть системы
– мультипроцессор ПС-2000, состоящий
из решающего поля и устройства управления
мультипроцессором. Решающее поле строится
из одного, двух, четырех или восьми устройств
обработки (УО), в каждом из которых восемь
процессорных элементов. Таким образом,
мультипроцессор может содержать 8, 16,
32 или 64 процессорных элемента. Процессорный
элемент обрабатывает 24-разрядные слова,
используемые для представления 12-, 16-
и 24- разрядных чисел с фиксированной запятой,
в которых 20 разрядов определяют мантиссу
и 4 разряда – шестнадцатеричный порядок.
Емкость оперативной памяти процессорного
элемента – 4096 или 16 384 24-разрядных слова
с циклом обращения соответственно 0,64
или 0,94 мкс. Мультипроцессор из 64 процессорных
элементов обеспечивает при обработке
данных следующую производительность
(в миллионах операций в секунду):
Сложение с фиксированной запятой (регистр–регистр) | 200 |
Сложение с плавающей запятой | 66,4 |
Умножение | 28,5 – 50,0 |
Время
выполнения основных операций (в микросекундах):
Транспонирование матрицы 64X64 | 0,45 |
Умножение матриц 64X64: | |
с фиксированной запятой | 1,0 |
с плавающей запятой | 1,4 |
Быстрое преобразование Фурье на 1024 комплексные точки: | |
с фиксированной запятой | 1,0 – 2,5 |
с плавающей запятой | 1,4 – 2,8 |
Устройство управления содержит блок микропрограммного управления емкостью 16384 микрокоманды, ОЗУ емкостью 4096 или 16384 24-разрядных слов и АЛУ. В блок микропрограммного управления загружаются микропрограммы обработки данных, ввода – вывода и управления. В комплект программного обеспечения системы входит набор микропрограмм базовой системы операций, ориентированной, на обработку матриц, реализацию быстрого преобразования Фурье и решение задач математической статистики, спектрального анализа, линейного и динамического программирования. Возможна реализация на микропрограммном уровне любой необходимой системы операции. В ОЗУ загружается программа обработки. Команды программы выполняются в обычном порядке. Выполнение сводится к инициированию соответствующей микропрограммы, микрокоманды которой формируют управляющие сигналы, воздействующие на процессорные элементы.
Ввод – вывод данных в память решающего поля, т. е. в ОЗУ процессорных элементов, производится через канал прямого доступа, состоящий из магистралей ввода и вывода. Операции ввода – вывода инициируются мониторной подсистемой и выполняются под управлением устройства управления мультипроцессора. Обработка, ввод и вывод данных могут выполняться одновременно. Обмен данными может осуществляться до 1,8 Мбайт/с при вводе и до 1,4 Мбайт/с при выводе. Процессорные элементы решающего поля связаны регулярным каналом, по которому передаются данные. Конфигурация регулярного канала перестраивается под управлением программы, образуя одно кольцо из 64 процессорных элементов, как на рисунке, или несколько одинаковых колец: 8 колец по 8 процессорных элементов, 4 по 16 или 2 по 32.