Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК Вычислительные машины, системы и сети.doc
Скачиваний:
49
Добавлен:
05.11.2018
Размер:
1.65 Mб
Скачать

Вопросы для самопроверки

1.Перечислите основные режимы работы вычислительной системы..

2.В чем состоит главный путь повышения производительности вычислительной системы?

3.В чем основной выигрыш при использовании многопрограммного режима?

4.Опишите пакетный режим работы и его основные особенности.

5. Режим реального времени. Для каких целей он применяется?

6. В каких вычислительных системах целесообразно использовать режим работы в реальном времени?.

Лекция 14. АРХИТЕКТУРНЫЕ ОСОБЕННОСТИ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ

14.1. Архитектурные принципы Фон Неймана

Традиционно архитектура Фон Неймана имеет четыре основные характеристики:

Единое вычислительное устройство, включающее процессор, средства передачи информации и память;

Линейную структуру адресации памяти, включающую слова фиксированной длины (формат команд представляется байтами, сложные команды — несколько байт);

Низкий уровень машинного языка (команды процессора выполняют простые операции, т.е. сложные процедуры выполняются последовательно);

Централизованное последовательное управление (последовательно читаются команды, последовательно выполняются операции).

В гарвардской архитектуре память данных и память команд разделены, т.е. процессор читает команды из памяти команд по шине команд и читает данные из памяти данных по шине данных. Между ними (шинами) может быть связь через мультиплексор.

Как в традиционной, так и гарвардской структуре существует принципиальное явление, ограничивающее производительность процессора — канал связи. Если увеличивать быстродействие процессора, то скорость выполнения начинает ограничиваться задержкой в канале. Эта величина конечна, поэтому ее практически не преодолеть. Если увеличить число процессоров работающих параллельно с общей памятью, то при реальных характеристиках увеличение производительности, возможно, не более чем в 3…4 раза с большим числом процессоров. Основная причина падения производительности на один процессор (снижение эффективности) в мультипроцессорных системах — сама архитектура вычислителя, предусматривающая общую память и последовательный к ней доступ. Поэтому разрабатываются варианты увеличения производительности с применением параллельных процессоров.

14.2. Альтернативные структуры

С ростом требований к производительности, особенно в таких технических приложениях как АСУТП, обработка сигналов, системы слежения возникла необходимость в значительном сокращении времени обработки входной информации. Первым шагом было внедрение конвейера. Операция разбивалась на несколько составляющих. На первом шаге обрабатывалась входная операция — i-я команда над первым словом информации. На втором шаге над тем же словом выполнялась j-я команда и над вторым i-я (i+1). На третьем шаге k-я команда над первым словом и над двумя следующими j+1, i+2.

Такой подход требует увеличения аппаратных затрат, т.к. в каждый момент времени выполняется несколько операций в различных устройствах. Общая память (традиционная архитектура) здесь сохранена, поэтому конвейер дает выигрыш ценой значительных аппаратных затрат. Основной недостаток конвейера — необходимость выделения примерно равных во времени процедур. Часто это сложно. Поэтому иногда операционное устройство в конвейере в некоторых тактах может простаивать. Следующий принципиальный шаг к повышению производительности вычислительной системы, применение многомашинных и много процессорных комплексов. Это направление просматривалось в отношении многомашинных структур.

Многомашинный комплекс появился как средство обработки сложных задач на 2..3 машинах. Машины объединяют через канал, при этом реальная производительность возрастает только при загрузке обеих машин. Если задачу можно было бы распараллелить, получался бы выигрыш в производительности. Как и в традиционной структуре, узкое место системы — канал связывающий две машины. Наряду с ростом производительности эта структура имеет и большую живучесть. Второе ее качество на сегодня и определило применение таких структур. Повышение надежности вычислений путем дублирования — пример двухмашинного комплекса. Обе машины принимают один сигнал, и каждая порознь обрабатывает его, формируя результат на внешних устройствах. При этом одна машина выбирается основной, вторая резервной. В случае возникновения сбоя в основной машине информация снимается с резервной. С точки зрения организации вычислительного комплекса многомашинные комплексы — это первая попытка увеличить производительность путем распараллеливания алгоритма, но эффективность такой организации оказалась более важной при сохранении надежности вычислений. На сегодня многомашинные комплексы используют для повышения достоверности вычислений.

Связь машин между собой по системной шине невозможна. Причина — сигналы в системной шине изменяются согласно фронтам собственного задающего генератора. У двух одинаковых машин фронты задающих генераторов не совпадают, поэтому через системную шину объединять машины нельзя. Объединение вычислителей производится через стандартные средства — каналы, интерфейсы имеющиеся в устройстве. Если ввести модуль согласования, объединяющий две системные шины, то принципиально возможно передавать сигналы с системной шины одного процессора другому. Возникает лишь вопрос, а кто главный? Поскольку без приоритета процедуры передачи организовать нельзя. Если же один из процессоров выделять как главный, получаем иерархическую структуру, в которой процессоры выполняют различные функции. Наиболее распространенным вариантом многомашинных комплексов с иерархической структурой считается шинная организация.

Например, управляющие комплексы на базе СМ1420 с общей шиной у процессора в качестве периферийных устройств используют микроЭВМ («Электроника 60») включенные через блок сопряжения. Блок сопряжения имеет специфичные функции для конкретной задачи, т.е. универсальность комплекса при этом теряется. Имеются случаи, содержащие до трех уровней иерархии. Причем такие комплексы выпускаются под задачи АСУТП и цифровой обработки сигналов. Особый случай объединения однотипных вычислителей в систему — это различного вида цифровые сети.

Вопросы для самопроверки

  1. Перечислите основные ограничения архитектуры Фон-Неймана.

  2. Для повышения производительности вычислительной системы применяют следующие пути….

  3. В чем принципиальное отличие многомашинных комплексов и многопроцессорных систем?

  4. Приведите структуру вычислительной системы и иерархической организацией.

  5. Для каких целей используют многомашинный комплекс?

Лекция 15. МНОГОПРОЦЕССОРНЫЕ ВЫЧИСЛИТЕЛЬНЫЕ КОМПЛЕКСЫ

15.1.Принципы объединения процессоров с структурах

Принципиальным отличием этого подхода является то, что в комплексе процессоры составляют как бы единое целое, хотя они разделены структурно и конструктивно. Главный критерий единства системы — общая память (общее поле памяти). Под ним понимают равную доступность каждого процессора комплекса к ячейкам памяти. Это позволяет пересылать информацию из одного процессора в другой. При этом процессоры могут быть даже различными. Второе, что отличает эту структуру — она управляется общей операционной системой. Процедура ввода-вывода осуществляется по типовой схеме, т.е. через систему каналов. Внешнее запоминающее устройство через систему каналов связывается с тем или иным процессором. Равнодоступность памяти обеспечивается коммутаторами. Роль системного арбитра (предотвращающего конфликты) играет коммутатор, быстродействие которого на порядок выше процессора. Время цикла памяти здесь складывается из задержки в коммутаторе и непосредственно задержки в запоминающем устройстве. Многопроцессорные структуры также могут иметь иерархию. Немалую роль играют и способы связи в системе. Между модулями (устройствами) существуют следующие типы связей:

регулярная;

многовходовые модули (относятся к памяти);

шинная организация;

многоуровневые связи.

Наиболее медленная форма связи — шина. Многопроцессорные вычислительные комплексы на достижение высокой производительности.

15.2.Структуры многопроцессорных вычислительных комплексов

Современные комплексы имеют большой диапазон характеристике, особенно производительности. Так эта величина достигает нескольких десятков миллионов коротких операций в секунду (в рекламе сообщается о –производительности на порядок выше). Эти сообщения следует относить не к производительности одного процессора, а к оценке производительности нескольких и даже десятков процессоров объединенных в вычислительный комплекс. Традиционно они размещаются в стойках, при этом основную роль в разработке комплекса начинает играть программное обеспечение, поскольку задачу необходимо распараллелить — разработать параллельный алгоритм обработки входных сигналов. Любая параллельная система имеет ограниченный диапазон применения, ее целесообразно использовать в случаях, когда алгоритм работы допускает распараллеливание. Если параллельная работа, параллельное выполнение отдельных фрагментов алгоритма затруднено, традиционная структура более эффективна. Конечно, такая задача может быть решена на параллельных структурах, но простои процессоров, кроме одного снижают эффективность, целесообразность применения такой структуры. Среди множества возможных классификаций параллельных структур различают несколько.

Классификация по потокам данных \ команд

Традиционная архитектура вычислителей (последовательных) может быть представлена в этом

делении следующей структурой. Общая память данных \ команд оперирует с потоками данных и команд. Поток — это направленный перенос информации источник-приемник по шинам. Как данные, так и команды в произвольный временной интервал существуют независимо друг от друга и каждый в одном виде. Это последовательная структура, в которой данные связаны с одной конкретной командой. Если необходимы новые данные, формируется новая команда или повторяется.

Общий поток команд \ множественный поток данных. Отображение этих потоков на структуру вычислителя можно представить в следующем виде.

Главное отличие этой структуры: множество пар процессор-память данных, работающих под управлением единой команды из памяти команд. Эта структура наиболее близка к термину параллельная обработка, поскольку в каждый момент времени множество операндов преобразуются под управлением одинаковых команд. Неким подобием этой структуры является секционированный арифметический блок, в котором одна микрокоманда поступает на все секции, а операнды различны, но это лишь частный случай. Реально операнды должны быть независимы. Такая структура иногда именуется матричной многопроцессорной системой, но матрица подразумевает наличие матрицы процессоров -. регулярной структуры, в узлах которой находятся процессоры. Основное для данной структуры — необходимость и возможность распараллеливания, т.е. разработки таких алгоритмов, когда входные сигналы независимы и вместе с этим преобразуются по однотипным командам. Конечно, в реальных условиях некоторые процессоры пропускают ту или иную команду, но система эффективно работает, если таких пропусков немного. Параллельные системы с такой структурой применяют для обработки многомерной графики, сигналов от реальных датчиков, работающих в реальном времени.

Вторым вариантом распараллеливания является конвейеризация. В конвейере множество команд работает над одиночным потоком данных. Процессоры соединены в цепочку по шинам данных, при этом шины команд у каждого самостоятельные. В каждый момент времени выполняются разные команды в процессорах над одним потоком данных. Поток данных в этом случае — последовательность операндов несущих информацию о какой-то величине. При этом каждое значение операнда последовательно преобразуется согласно поступающим командам. Если в цепочке 5 процессоров, то преобразование выполняется за 5 тактов и результат на выходе формируется через время t=5t. Выигрыша в задержке здесь нет, но пока операнд находится в цепочке, синхронно с ним преобразуются еще 4 операнда в остальных процессорах, поэтому общая производительность повышается. Эти структуры применяют для преобразования в реальном времени, когда информация как бы задерживается в цепочке. Первый результат формируется через 5t, все последующие за t. В данных структурах общий алгоритм разбивается на составляющие части независимо одна от другой, поэтому сложностей в разбиении нет, и конвейерная структура может применяться значительно шире в параллельной обработке. Конвейерный подход к обработке информации распространяется не только на межпроцессорные связи, но и используется внутри процессора. Несколько АЛУ последовательно прообразуют входной сигнал, повышая тем самым производительность (RISC). Совмещение двух рассмотренных подходов: параллельной и конвейерной обработки выразилось в применении множественного потока команд и множественного потока данных.

Структура с множественным потоком команд и данных — чисто матричная, регулярная структура, где матрица процессоров в одном слое использует параллельную обработку, а последовательно по слоям конвейер. Это направление известно как однородные вычислительные системы. Применяются в сверхбыстродействующих специализированных системах работы с реальными сигналами. Уровень сложности подчеркивается тем, что в качестве устройства управления памятью команд применяют процессор типа СМ (СМ1420).

15.3. Классификация по программной организации

Помимо рассмотренной классификации параллельные вычислительные системы разделяют по программной организации на три следующих вида:

С логическим программным управлением;

С управлением потоками данных;

С редукционно-программным управлением.

В машинах с логическим программным управлением команды выполняются за счет детальной проработки последовательности управляющей информации. Любую программу здесь рассматривают как последовательное преобразование от исходного до конечного состояния операндов. При этом процессор использует запросный механизм данных: обращение к памяти производится по адресам, содержащимся в исполняемых командах. Как правило, управление передается от одной команды к другой последовательно, т.е. используется последовательный механизм выбора команд.

Последнее время развивается направление потоковых машин. В системах с потоками данных предполагается наличие большого числа специализированных операционных блоков. Каждая операция выполняется на отдельных операционных блоках. Данные снабжаются указателями типа данных. Выполнение операций осуществляется по мере готовности участвующих в них данных. Механизм функционирует по значению. По мере того, как операнды преобразуются, им присваивается индекс, и этот индекс является признаком для дальнейшего использования данного результата в программе. Чтобы выбрать операнды по мере готовности необходимо параллельное управление, т.е. одновременный анализ индексов. Множество команд разделено на две группы: команды производители данных и команды потребители данных. Как правило, программы таких машин строятся из несложных операций. Программы более высокого уровня используют предыдущий уровень в качестве составляющих частей. Здесь вновь можно вспомнить микрокоманду — элементарную операцию над данными. Такого разделения (микрокоманды) в потоковых машинах нет, чтобы не было путаницы. Устройство управления потоковой машиной загружает команды в последовательности готовности к выполнению.

Система с редукционно-программным управлением использует в качестве стимула к началу операции флаг (признак потребности ее выполнения).

Новым в организации структур вычислителей является использование однородных вычислительных сред (регулярных структур) в основе которых матрица процессоров. При этом в качестве процессора использован транспьютер. Можно привести таблицу взаимосвязи данных и управления.

Таблица 8

Механизм управления

Механизм данных

По значению

По запросу

Последовательный

Архитектура Фон Неймана

Параллельный

Потоковая структура

Параллельные машины

Рекурсивный

С цепочечной редукцией

С графической редукцией

Классификация по архитектуре

Кроме программной организации выделяют три класса машин по архитектуре:

централизованные машины (управление) — один процессор соединенный с памятью, единственная текущая команда передает управление единственной следующей команде.

Машины с коммутацией пакетов — конвейерный принцип, когда ряд процессоров, средства связи и память объединяются в последовательную структуру для решения текущей задачи.

Машины с обработкой выражений — формируется набор из процессора, памяти, средств связи. Этот набор формируется как регулярная структура. Программа в них достаточно большая по составу, в активном состоянии пребывают лишь некоторые составляющие, остальные находятся в состоянии ожидания.

Качество той или иной организации вычислителя можно определить неким соотношением — эффективностью:

Si Tni

Е= ——————;

Tc Si

Оценка эффективности основана на анализе временных параметров. Причем эти параметры достаточно просто можно проанализировать при работе вычислителя.

Tni — время в течение которого i-е средство в системе занято полезной работой (например процессор выполняет счет, формирует управляющий файл на устройства ввода-вывода).

Tc — суммарное, общее время работы системы при решении задачи.

Весовые коэффициенты Si пропорциональны быстродействию соответствующих средств. Таким образом, в числителе формулы количество полезных операций выполненных при решении задачи, в знаменателе, количество всех операций которые могли бы быть выполнены при полной загрузке.

Вопросы для самопроверки

1 Какой основной принцип использован при объединении процессоров в многопроцессорных системах?

2 Приведите классификацию структурной организации вычислительных систем по потокам информации( данных) и управления.

3.Охарактеризуйте конвейерную организацию вычислительной системы.

4.Приведите структуру вычислительной системы, отвечающей организации МКМД.

5. Чем определится эффективность распараллеливания вычислительных процессов?

Лекция 16.ОСНОВЫ МОДУЛЬНОГО ПОСТРОЕНИЯ ВЫЧИСЛИТЕЛЕЙ

16.1. Формальная модель синтеза структуры вычислителя

Рассматривая организацию вычислительных систем можно отметить определенную закономерность в их построении. Прежде всего, выделяются основные составляющие в системах: процессор, память, контроллеры внешних устройств, устройства ввода-вывода, внешние запоминающие устройства, системы связей. Компоновка этих отдельных функциональных блоков и определит структурную организацию вычислителя. Таким образом, структуру можно представить как композицию составляющих блоков и связей между ними. Вместе с тем кроме структурной организации выделяют и программную организацию. Любую вычислительную систему представляют как композицию (т.е. последовательную, параллельную, комбинированную) ее программных блоков. Причем здесь учитываются не только программы пользователя, но и все системные блоки. Третья составляющая представления вычислительной системы — потоки данных и потоки команд. Если представить последовательность преобразование данных как информационный поток данных от постановки задачи (ввод данных) до вывода результатов (вывода информации), то временные изменения также можно представить некими блоками (составляющими) расположенными в плоскости в определенной последовательности. Таким образом, все три группы (аппаратная, программная, логическая) могут быть зрительно представлены на плоскости как набор определенных модулей и связей между ними, т.е. каждую из трех групп можно отобразить своим графом на котором состояния отождествлять с тем или иным модулем, а дуги переходов с возможными линиями связи, передачи информации. Например, произвольную структурную организацию можно представить как набор Г={Г1,Г2,Гn,R1,R2,Rn}, входящих блоков и набор связей между этими блоками. Особенность вычислительных систем в том, что для их различных классов выделяют типовую организацию, например структура с общей шиной, параллельные структуры, последовательное выполнение операций. В рамках отдельных модулей и типовых структурных (программных) организаций можно сократить количество разнообразных взаимосвязей в представляемой структуре, т.е. исключить обратную связь, выделить информационный поток. Эти ограничения позволят представить любую вычислительную систему через ее формальное описание, т.е. получить модель системы. Любая модель не может показать абсолютно все свойства или качества описываемой структуры, т.е. невозможно показать модель структурной организации и на ней все особенности программной модели, хотя частично это возможно. Лучше сопрягаются структурные организации и информационные потоки. Программная модель чаще показывается отдельно.

На приведенной структуре графа не отражена особенность интерфейса вычислителя: одно или двухшинная организация. Для ее уточнения возможно выделить в процессоре дополнительный блок — канал, причем для адреса, данных и команд каналы различны, если организация двухшинная. Основываясь на таком положении можно структуру сложной параллельной системы разрисовать вместе с информационными потоками, если сигналы различать во времени, можно помечать связи временным индексом.

Вопросы для самопроверки

  1. В чем модульный принцип формирования структуры вычислительной системы?

  2. Приведите пример описания структурной организации ВС двумя- тремя путями.

  3. Как разделить и показать при формальном описании информационный поток ( поток данных) и поток команд?

  4. В каких областях практических знаний возможно использовать представление структурной организации ВС посредством информационных потоков?

Лекция 17. АРХИТЕКТУРНЫЕ ОСОБЕННОСТИ ПОСТРОЕНИЯ ПЭВМ.

Лекция 18. ПРИМЕРЫ ПОСТРОЕНИЯ ВЫЧИСЛИТЕЛЬНЫХ КОМПЛЕКСОВ

18.1.Вычислительные комплексы типа СМ и большие вычислительные комплексы

Машины серии СМ построены на основе PDP-8,10,11, имеют разнообразную структурную организацию, могут быть рассмотрены с целью изучения способов наращивания вычислительных возможностей в рамках одной идеологии. В состав этой серии входят как малые машины, так и многопроцессорные вычислительные комплексы. На западе эта серия продолжилась в вычислителях VAX. В основе идеологии PDP интерфейс общая шина. Широко известные вычислители с интерфейсом общая шина «Электроника-60», «Электроника-79», СМ1, СМ2, СМ4, ориентируются на модульную организацию как в структурном, так и в программном и конструктивном исполнении. Модульность характерна для всех уровней организации. Компоновка системы из модулей облегчена. Для несложных вычислителей через один интерфейс сигналы могут подаваться ко всем имеющимся модулям. Модули выполняются конструктивно законченными, объемными. Каждый модуль занимает в пространстве объем. Интерфейс, объединение модулей выполняется как шины, линии имеющие конечную и немалую длину. Больше модулей — длиннее линия, но чем длиннее линия, тем больше задержка передачи сигнала!

В машинах типа СМ величина активного сопротивления установлена 0,17 Ом/м. Это ограничение накладывает особенности на конфигурацию вычислительных комплексов типа СМ, поэтому типовая структура комплекса включает в себя линии связи формируемые с помощью расширителей интерфейсов (РИФ). Модульность сохраняется, но несколько изменяется регулярность за счет введения буферных формирователей — расширителей интерфейса.

Идеальная структурная модель комплексов типа СМ — параллельно включенные через общую шину законченные функциональные модули, причем в этой модели число модулей сверху не ограничено. На практике разработчики встретились с ограничением времени доступа к произвольному устройству. Например, цикл обмена (ввод): у каждого вычислителя это значение фиксировано, поэтому если подключить модуль, например, дополнительной памяти в непосредственной близости от процессора то условие tобм<tцикл выполняется, но если этот модуль будет подключен к дополнительным секциям, неравенство может не выполняться и хотя технические параметры модуля находятся в норме в системе будут сбои. В модели комплекса:

УПД — устройство прямого доступа (память);

ПС — программно управляемая секция (контроллер ввода-вывода, контроллер дисководов и т.д.);

Количество подключаемых секций —две на каждую добавленную шину. Выход из сформулированного тупика в том, что более удаленные от процессора модули медленные. Даже если крайние периферийные модули удовлетворяют по времени обмена загрузка (занятость) шины неодинакова в зависимости от места подключения. Так, например, ОЗУ расположенное рядом с процессором занимает при обмене 30% всего времени на магистрали, УПД3 — 40%, а УПД4 — 47%. Таким образом организация «общая шина» имеет существенный недостаток, при увеличении числа автономных модулей, быстродействие устройств снижается. Из этого положения один выход — асинхронная связь, но асинхронная связь это «свойство» периферийных устройств, поэтому по временным характеристикам вычислительные комплексы типа СМ не самые быстродействующие. Минимальное геометрическое расстояние между модулями достигается стоечной конструкцией, но стойки — следствие применения элементной базы низкой степени интеграции, т.е. СБИС не применялись в этой системе. Процессор, некоторые контроллеры выполнены на СМП 1802,1804. Отсюда большинство комплексов имело повышенную надежность, и применялись в условиях со сложными климатическими характеристиками (производственная среда, специальные изделия, включая бортовые). Эти комплексы используются как управляющие, контролирующие на судах. Справедливости ради сказать, что последнее время разрабатываются процессорные модули на основе микропроцессоров Intel для работы в условиях промышленных предприятий, но в специальные изделия их не ставят. Можно выделить несколько этапов в развитии вычислительных систем на основе СМ:

1)СМ1, СМ2, СМ3, СМ4, СМ 2М, СМ 3М — основная характеристика, схемы малой и средней степени интеграции. Объем памяти до 1 Мбайта.

2 СМ1420, СМ 1700 — выполнение процессора на секциях, интегральное ТТЛ ОЗУ, объем памяти до 4 Мбайт.

СМ 50 — семейство вычислителей с различными функциональными возможностями от класса контроллеров (микроЭВМ) до параллельных систем. Их объединяет способ построения (общая шина), преемственность в аппаратном и программном обеспечении с предыдущими моделями (СМ1420).

СМ50 — микроЭВМ (контроллеры), предназначены для массового применения в качестве контроллеров ЧПУ, терминалов. Особенность — выполнение большинства функций аппаратным путем, что увеличивает быстродействие.

СМ51 — малые ЭВМ широкого применения с однопроцессорным вариантом. По отношению к СМ1420 производительность выше в 2…4 раза.

СМ52 — следующие по мощности вычислители, возможность двухпроцессорных вариантов. В качестве каналов ввода-вывода используют СМ50, СМ51.

СМ53 — многопроцессорный вариант с высокой производительностью, аппаратура межмашинной связи.

СМ54 — специализированные процессоры (матричные, быстрое преобразование Фурье), используют для быстрой обработки, анализа аэрофотосъемки, распознавания нечетких объектов.

В машины класса СМ по быстродействию уступают большинству зарубежных персональных ЭВМ. Главное их достоинство — высокая надежность и агрегатный принцип построения (возможность компоновать требуемую конфигурацию из набора функциональных блоков).

Краткая характеристика процессоров семейства СМ

Разрядность слова данных 16, поэтому объем памяти измеряется в словах (слово 2 байта). Четный байт младший, нечетный старший. Формат команд и данных также ориентирован на два байта. У процессора 16 регистров, причем 9 из них доступны программисту. Слово состояния процессора также 16 разрядное, 4 признака (МП 1804). Виды адресации основные плюс автоинкрементная, автодекрементная, индексная, косвенно-индексная. Команды 16 разрядные. Возможно выполнение команд над форматами: целые числа, числа с фиксированной запятой, числа с плавающей запятой. Представление формата: 32 разряда — обычная точность, 64 разряда — удвоенная точность. Мантисса нормализована и занимает 24 разряда, 8 разрядов — порядок. При этом знак мантиссы самый старший. Знак порядка определяется косвенно. Формат порядка записывается как реальный порядок, увеличенный на 200 в восьмеричной системе. Представление кодов и данных в восьмеричной системе. Формат удвоенной точности содержит увеличенную мантиссу — 56 разрядов. Процессор также выполняет преобразование форматов с плавающей запятой в формат с фиксированной запятой и наоборот.

В вычислительном комплексе использован многоуровневый подход к прерываниям. Пять уровней приоритета разделены на: внепроцессорный (специальная линия) и четыре процессорных (4 своих входных сигнала). Каждое внешнее устройство подключается к одной из линий программных прерываний. Если внешнее устройство подключено ближе к процессору при одинаковом уровне прерываний, оно имеет адресный приоритет. При внепроцессорном прерывании процедура прерывания может начаться до окончания текущей команды. ОЗУ считывается пословно, но имеются команды работы с байтами, поэтому минимально адресуемой единицей считается байт. Прямая адресация в пределах 32К слов. Кроме этого имеется три вида преобразования адреса: 16 разрядов, 18 разрядов, 22 разряда (2Мб в прямой адресации). Регистр расширения работает с включенным диспетчером памяти. Обмен информацией выполняется через общую шину. Кабель — шлейф, 56 сигнальных, 56 общих, волновое сопротивление 100 ОМ.

Вопросы для самопроверки

1.Какая роль в развитии структурной организации ВС принадлежит вычислительным комплексам типа СМ ЭВМ?

2. В каких современных вычислительных системах использовано модульное наращивание аппаратных средств для повышения производительности вычислений?

3. Вспомните основные области применения вычислительных комплексов типа СМ ЭВМ.

4. Что такое ПС и УПД в структуре комплексов СМ ЭВМ?

Лекция 19. АГРЕГАТИВНЫЕ СРЕДСТВА ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ (АСМТ-ПС)

19.1.Агрегативные системы ПС320

Интеграция элементной базы привела к моральной смерти агрегатированных средств вычислительной техники, но большое периферийное оборудование для обслуживания производственных процессов имелось, поэтому, как бы продолжением этой серии является разработка перестраиваемых структур (ПС) использующих определенные наработки старой серии. Причем взяли за основу даже некоторые программные пакеты из этих машин М-ХХХ и некоторых моделей СМ. Основное отличие новых разработок — это многопроцессорные вычислительные комплексы, ориентированные на «быстрые» вычисления. Поскольку элементная база в тот момент ограничивалась простыми микропроцессорами, за основу в них была взята серия 1804 т.к. позволяла получать высокую разрядность (16…32) при приемлемом быстродействии. Так как задержка в схемах 1804 порядка 40ns особого быстродействия элементная база не обещала. Интегральные схемы ОЗУ — 565, 541 серий ограничивали цикл процессора величиной порядка 400ns. Отсюда, для повышения быстродействия было взято направление параллельных структур. В силу того, что 1804 секция в этих системах достаточно много микропрограммного управления. Первым представителем этого направления считается быстродействующая векторная вычислительная система ПС320. В основу ПС320 положена разработка векторной ЭВМ с набором скалярных, векторных и матричных операций. Кроме того, центральный процессор расширен аппаратными средствами для векторных операций, т.е. в рамках комплекса сделан упор на аппаратную реализацию длинных процедур. В одном процессоре объединены две группы операций: скалярные и векторные, что позволило несколько снизить аппаратные затраты. При этом выполняется совместная обработка адресов, выборка и запись данных.

Внутримашинная магистраль объединяет основные модули системы: управляющий процессор; центральный процессор, состоящий из скалярного и векторного сопроцессоров; наращиваемое модульное ОЗУ и системный адаптер. Количество центральных процессоров может быть увеличено до нескольких десятков. Информация по внутримашинной магистрали передается между процессорами, ОЗУ, при этом формат — фиксированная запятая 16 разрядов, плавающая запятая 32 разряда. Высокая производительность (до 106 FPO) обеспечивается конвейерной обработкой массива данных, разделение центральных процессоров на два (векторный и скалярный), которые обрабатывают информацию одновременно. Системный адаптер связывает основную магистраль с стандартным интерфейсом И41, что позволяет подключать через периферийные процессоры (каналы) различные унифицированные внешние устройства: накопители на дисках, устройства печати, клавиатуры и т.д. Две магистрали, внутренняя и внешняя, позволяют одновременно передавать различную информацию, например, адреса процессору и каналу. Операции ввода-вывода совмещаются с обработкой. В системе предусмотрен контроль передачи информации в ОЗУ (используются коды Хэмминга). Контролем охвачен и каждый процессор, при этом если процессор отказывает он отключается от магистрали. Программное обеспечение позволяет синхронизировать и планировать обработку как на одном центральном процессоре, так и на параллельно включенных (теоретически до 512 процессоров) процессорах. Модульный принцип построения комплекса позволяет изменять его характеристики. Реальная производительность оценивается пропускной способностью шины до 10 Мб в секунду. ОЗУ модульное. В комплексе объем до 4 Мбайт 16 разрядных слов. Поскольку центральный процессор на секциях, управление на уровне микрокоманд. Программное обеспечение и система команд предусматривают язык ассемблера, язык ФОРТРАН. О перационная система совместима с ОС DEMOS. Основные параметры:

тип данных: целые числа, числа с фиксированной запятой, числа с плавающей запятой;

Представление: комплексные числа, векторы, матрицы;

В ремя выборки с контролем 400ns;

Время выполнения векторной команды 0,8ms.

Конструктивно комплекс выполнен как стойка с функциональными модулями, число которых варьируется. Основное назначение комплекса — задачи линейного программирования (управление), обработка изображений, управление сложными системами. Принципиальная новизна в структуре комплекса наращивание и одновременная работа нескольких процессоров через магистраль. В современных микропроцессорах эта структура как бы присутствует при одном центральном процессоре, наращивание при этом невозможно. Вместе с тем вывод внутримашинной магистрали на внешний разъем увеличивает задержку сигналов (растягивает цикл), поэтому предельное быстродействие при очень быстрых процессорах ограничивается скорость передачи сигналов по внутримашинной магистрали. На практике надежность комплекса невысокая в силу неотлаженности функциональных блоков и сопутствующего программного обеспечения.

19.2. Управляющий вычислительный комплекс ПС1001

Дальнейшее развитие перестраиваемых структур вылилось в разработку семейства вычислительных комплексов ПС1001, ПС2000, ПС3000. В этих комплексах использованы предыдущие наработки: внутренняя магистраль, иерархический принцип построения, развитые средства ввода-вывода информации (в том числе дистанционные), возможность наращивания числа процессоров для увеличения общей производительности. Основная элементная база биполярная (1804, 1802). Комплекс предназначен для автоматизированных систем управления технологическим процессом сложных и особо ответственных объектов: атомной энергетики, химической, металлургической, нефтеперерабатывающей промышленности, контроля территориально распределенных объектов. Комплексы могут работать в системах обслуживания и научного эксперимента.

Любой комплекс ПС1001 содержит по крайней мере одно ядро, состоящее из одного, двух, трех центральных процессоров. К этим центральным процессорам обязательна память, причем связи специальные (дополнительные). Основа вычислителя — процессор с микрокомандным управлением. Разрядность микрокоманды 80. ОЗУ наращивается блоками по 512Кбайт до 4Мбайт. Связь процессор память по отдельным линиям. Разрядность памяти 22, причем 16 разрядов данные, остальные для контроля по Хэммингу, что позволяет выявлять и исправлять одиночные ошибки, обнаруживать двойные. Внешние устройства подключаются через интерфейс управляющей системы (ИУС). Внешние устройства подключаются через подканалы (до 32), поэтому возможно выполнить операции обмена одновременно с 32 внешними устройствами. В качестве модулей связи (контроллеры) используются микроЭВМ. Контроллеры объединяют секции между собой и управляют работой периферийных устройств. Отдельный канал позволяет через специальный интерфейс передавать информацию на расстояние. Микроконтроллер на основе 1810ВМ86 объединяет шины интерфейса через которые и передается информация. В состав комплекса входят преобразователи сигнала позволяющие преобразовывать входные сигналы: уровень тока 5…20мА, уровень напряжения от 10В до 10В, сигналы с термопар и терморезисторы, аналоговые сигналы от сельсинов, частотные, число-импульсные, время-импульсные коды. Все эти характеристики имеют высокую точность. Дистанционная связь — линии связи с датчиками сигналов в системе управления. Секции связаны между собою через ИУС. Главная особенность секции:

Возможность наращивания памяти

Микрокомандное управление

Контроль передачи и хранения в памяти по Хэммингу

Наличие множества подканалов освобождающих процессор от управления внешними устройствами

С истема может расширяться путем подключения к ИУС двух блоков мультипроцессора и коммутатора обмена. Мультипроцессор предназначен для быстрой обработки по регулярным алгоритмам больших объемов данных. Каждый процессор может включать 16, 32, 64 процессорных ячейки, причем команда на все ячейки поступает одна, данные различны. Процессор выполнен по структуре с наращиванием секций (процессорных элементов). Данные поступают через каналы ввода-вывода, причем у процессора по 4 канала. Каждый процессорный модуль имеет АЛУ, ОЗУ (до 512Кбайт) и узел активации — коммутатор подключающий процессор к магистральному каналу. Горизонтальная связь между процессорами по регулярному каналу. Устройство управления включает блок микропрограммного управления, узел обработки, ОЗУ и интерфейсный блок, принимающий общий сигнал управления. Максимальная скорость обмена по каналам до 40Мбайт/сек. Каналы подключаются к ИУС с тем, чтобы обмениваться данными с основным процессором. Основная проблема в использовании данного процессора — необходимость быстрого коммутатора каналов (коммутатора обмена). Арифметическая часть иногда называется решающее поле. Помимо параллельной работы ячеек программное обеспечение предусматривает отключение неисправных процессорных элементов и перераспределение данных. Это качество значительно повышает отказоустойчивость всей системы, поэтому техническая наработка на отказ очень высокая, до 100 тыс. часов. Производительность мультипроцессора до 150 млн. коротких операций (16 разрядов) или до 60 млн. операций с плавающей запятой (32 разряда). Вместе с этим в основе лежит элементная база средней степени интеграции, поэтому конструкция системы стоечная. Мощность, потребляемая комплексом, несколько десятков киловатт. Высокая скорость достигается только при однородных алгоритмах, допускающих параллельную выполнение.

19.3.Вычислительный комплекс ПС3000

Развитие перестраиваемых структур привело к разработке комплексов ПС2000 и ПС3000. Так комплекс ПС2000 ориентирован на высокопроизводительную обработку по регулярным алгоритмам, на которых достигается производительность до 200 млн. операций в секунду. Высокая скорость достигается за счет проблемной ориентации на задачи выполняемые параллельно. Программа одна, управление, соответственно, одно, потоков данных множество. Примерами задач являются одномерное, двумерно преобразование Фурье, цифровая фильтрация, операции над векторами и матрицами, решение систем дифференциальных уравнений, корреляционная обработка и т.д. Указанные задачи характерны для АСУТП, сейсморазведки, в моделировании различных систем в реальном времени, для обработки изображений в реальном времени. Комплексы работают с реальными входными сигналами, обеспечивая обработку информации в реальном времени. ПС3000 продолжает направление предыдущих структур и первоначально ориентирован на региональные геофизические вычислительные комплексы. В рамках направления выпускают модели К-143-12, К143-13, К-143-14 —в основе которых комплекс ПС3000. В первую очередь, ПС3000 предназначен для сейсморазведки, используется в АСУТП верхнего уровня, в автоматизированных системах научных исследований, при прямом цифровом управлении.

УОП — устройство оперативной памяти. Два модуля оперативной памяти могут расширятся до 4 так, что их общая емкость составит 8Мбайт. Память по раздельным каналам связана со скалярным процессором ПрС, поэтому возможно резервировать каналы связи, части памяти или даже процессоры. В памяти осуществляется контроль по Хэммингу с обнаружением двойной ошибки. Максимальная скорость обмена между памятью и скалярным процессором до 96Мбайт/сек. Число скалярных процессоров 2 или 4. Число векторных процессоров(ПрВ) один или два. Для повышения надежности процессоры могут функционировать параллельно, но число одновременно решаемых задач определяется числом скалярных процессоров. Т.е. помимо параллельных данных, параллельность команд. Система команд включает все не привилигированные команды вычислительных комплексов типа СМ2. Управление осуществляется сопроцессором обработки массивов (СОМ) и субкомплексом управления (СУВК). СВТ — комплекс визуализации терминальный, предназначен для отображения как состояния в системе, так и результатов. В качестве субкомплексов управления используется микроЭВМ СМ50/60 (1810ВМ86). Высокая производительность всей системы обеспечивается быстродействием скалярных процессоров, при этом совмещаются различные фазы выполнения. Комплекс функционирует по конвейеру. Управление в процессорах микропрограммное. Быстродействие — на регулярных алгоритмах. В полном составе комплекса до 4 скалярных процессора (до 2 матричных). Каждый скалярный процессор работает под управлением памяти. Система ПС3000 включает все непривелегированные команды комплекса СМ2, пожтому программные наработки полностью используется от этих машин. Общая емкость виртуальной памяти до 256Мбайт. Формат представления: фиксированная запятая 16/32, плавающая запятая 32/64. Одна векторная операция выполняется над массивом в 256 элементов. Главная память включает 2, 4 устройства по 2 Мбайта. По отдельным выделенным каналам память связана со скалярными процессорами. Это позволяет блокировать отдельные каналы в случае неисправности какого-либо модуля. Устройство ввода-вывода управляется с помощью микроЭВМ. Системные субкомплексы подключаются к мультиплексорам ввода-вывода которые входят в состав скалярных процессоров. Каждый субкомплекс подключается по двум каналам, что позволяет в случае необходимости переключать направление или резервировать их. В каждом мультиплексоре 8 каналов. Программы поддерживают макроассемблер, ПАСКАЛЬ, ФОРТРАН.

АСВТ-ПС — попытка построения высокопроизводительных структур на имеющейся в то время элементной базе (555). Память, коммутаторы — ЭСЛ (100,500). В рамках ПС не разрабатывались периферийные устройства, отсюда периферия заимствована и СМ ЭВМ. В рамках серии ПС сделана попытка получения высокой производительности за счет распараллеливания регулярных алгоритмов, простые задачи решать на этих структурах неэффективно. Основной недостаток структур — большое энергопотребление. Элементная база не самая современная.

19.4. Многопроцессорный вычислительный комплекс «Эльбрус»

Класс больших машин характеризовался двумя видами: семейство ЕС и машинами БЭСМ. Как первые, так и вторые с ростом интеграции постепенно устарели, однако необходимость в замене машин серии БЭСМ привела к разработке нового устройства программно совместимого с серией БЭСМ — «Эльбрус». Многопроцессорные вычислительные комплексы семейства «Эльбрус» отличаются числом процессоров, их быстродействием, элементной базой и производительностью. Так «Эльбрус-1»: производительность до 12 млн. коротких операций, «Эльбрус-2» до 200 млн. коротких операций. Система допускает объединение как универсальных, так и специализированных процессоров вместе с модулями памяти и устройствами ввода-вывода. Главной отличительной особенностью систем «Эльбрус» является использование вместо шинной связи специальных коммутаторов — быстродействующих коммутаторов межмодульной связи. Коммутатор имеет матричную двух- или трехмерную организацию. В узлах матрицы быстродействующие ключи. Причем соединение между модулями в системе сохраняется на все время передачи сигнала. Поскольку матрица имеет множество строк/столбцов, то возможна одновременная связь между различными функциональными модулями вычислителя. Сам коммутатор не порождает конфликты в системе (в отличие от шины когда она занята). Конфликт с такой организацией может возникнуть если будет запрос на обслуживание двух устройств одновременно, однако программно его можно исключить. Главное требование к матричному коммутатору — задержка в нем должна быть минимальная, отсюда элементная база ЭСЛ. Коммутатор реализует пространственное разделение сигналов в отличие от временного, как в шине.

Коммутатор межмодульных связей (КМС) может устанавливать линии связи с каждым из 9 центральных процессоров. Память разбита на 2 страницы каждая по 16 модулей. Специализированный процессор имеет систему команд БЭСМ6, поэтому программное обеспечение с нее может использоваться в комплексе. Коммутатор связывает также основные блоки с 4 процессорами ввода-вывода. Процессор ввода-вывода — канал, имеющий собственную память, устройство управления и оптимизатор — блок в составе устройства управления, позволяющий выбирать наиболее кратчайший путь до внешнего устройства. К каждому процессору ввода-вывода может быть подключено до 4 процессоров передачи данных. Это блоки преобразования сигналов, как правило, в последовательные коды и передачи их на расстояние. Общее число линий связи в полной комплектации системы — до 1000. Стандартное внешнее устройство серии ЕС подключается к процессору ввода-вывода через ряд каналов. Быстрые периферийные устройства (НГМД) связаны с процессорами ввода-вывода через коммутирующие блоки — обменники. В случае занятости одного из внешних устройств запись данных будет выполняться в другое. При полной комплектации обменники существуют как для барабанов, так и для дисков. Помимо этого особенность системы «Эльбрус» — приближение уровня машинного языка в системе команд к уровню алгоритмического языка. В результате скорость трансляции и производительность системы возрастает. Следующая особенность — в системе применяются аппаратные стеки для безадресных команд. Динамическое перераспределение ресурсов и обработка прерываний через стек. Безадресные команды — это неявная адресация, когда транслятор при расшифровке кода команды обращается непосредственно к стеку где лежит код команды, фазы адресации нет. Каждое слово памяти снабжено специальным ярлыком (признаком) называемым тегом. В нем в дополнительных разрядах указывается тип данных, операнды команд, формат (плавающая, фиксированная запятая, целые числа), имя переменной, режим защиты. Массивы данных описываются аппаратом дескрипторов. Он задает адресные границы массива, тип содержимого, данные команды и некоторые другие характеристики.

Многопроцессорная обработка — это одновременная работа нескольких процессоров над своими данными, распределение управляющих программ через аппаратные стеки. В оперативной памяти выделяется область стеков, причем возможно перераспределение стеков между процессорами.

Вопросы для самопроверки

  1. Определите основные области применения вычислительных комплексов типа ПС.

  2. Кокай способ объединения процессоров использован в комплексах типа ПС?

  3. Поясните необходимость параллельного включения векторного и скалярного процессоров.

  4. Почему такой вид комплексов назван «агрегатированным»?

  5. Какие способы обработки данных использованы в вычислительных комплексах типа АСВТ ПС?

Лекция 20.КОДИРОВАНИЕ ИНФОРМАЦИИ ПРИ ПЕРЕДАЧЕ

20.1.Необходимость кодирования информации

В структуре любой информационной сети или системы присутствует канал связи. Иногда канал выступает в форме шины вычислителя, связывающей процессор с памятью, или память с контроллером внешнего устройства. Чаще в системах канал предназначен для передачи информации на значительное расстояние и его вид определяется назначением системы: например, проводные каналы, радиоканал, телефонные сети и т. д. Проблема передачи любой информации по каналу в первую очередь определяется по некоему воздействию изменяющему передаваемую информацию. На сегодня в своем обычном представлении информация по каналу уже не передается. Для этой цели применяются помехоустойчивые коды. Структура устройства помехоустойчивого кодирования может быть представлена в виде:

И нформация от источника преобразуется кодером источника в ту или иную цифровую форму. Часто выход кодера называют кодовым словом. Кодовое слово преобразуется в кодовое слово канала, и это преобразование является основным действием при получении помехоустойчивого кода. Как правило, кодовое слово канала значительно длиннее кодового слова источника. Избыточность сознательно вводится с тем, чтобы повысить помехозащищенность передаваемой информации. Модулятор преобразует кодовое слово канала в вид информации удобный для передачи по каналу связи. Это могут быть радиоимпульсы, световые импульсы, потоковые посылки. Демодулятор восстанавливает информацию из канала в переданное кодовое слово канала. В общем случае эта информация не соответствует переданной, поэтому необходимо преобразование принятого кода (принятого кода канала) в кодовое слово источника. Это преобразование требует, как правило, специальных аппаратных и/или программных средств. Задача декодера канала восстановить принятую информацию, исключить внешние помехи, которые ее исказили. В зависимости от типа преобразования эта операция выполняется с различным успехом: определение ошибки, определение ошибки и восстановление информации. Декодер сигнала преобразует цифровую информацию в тот вид, что необходим приемнику.

История кодирования информации начиналась 50 лет назад, когда Шеннон показал, что по любому каналу связи можно передавать информацию с конкретной пропускной способностью. Отсюда — при использовании кодов контролирующих ошибки всегда можно построить такую систему, что вероятность появления ошибки на выходе будет сколь угодно мала. Величина этой вероятности определяется избыточностью передаваемых кодов. В качестве кодов контролирующих ошибки первоначально рассматривались блоковые коды. Далее появились цикличные коды, древовидные коды. На сегодня различные варианты используемых кодов систематизированы в названные три типа. Наиболее простыми считаются блоковые коды (определенный массив информации передается посредством большего массива). Первыми блоковыми кодами были коды с контролем на четность/нечетность и коды Хемминга. На сегодня эти подходы часто используются в небольших каналах связи (например, в вычислительных системах). Древовидные коды применяются для передачи по сложным каналам и требуют значительных программных/аппаратных средств. Наиболее общей группой блоковых кодов считают коды БЧХ (Боуза-Чоудхури-Хоквингем). Также из этих классов кодов выделяют код Рида-Соломона и Рида-Маллера. Особенность в том, что эти коды описывают не только двоичное представление информации, но и с большим алгоритмом кодирования. В технике часто используется алгоритм декодирования Витерби. Для кодов умеренной сложности, это основной вид. Декодеры Витерби выпускаются в виде ИМС.

20.2.Простейшие коды для кодирования

Цифровые данные можно представить в виде последовательности двоичной информации. Если передавать эту последовательность по каналу связи, то мы должны добавить к ней некие символы, причем столько, чтобы декодером восстановить информацию. Если мы имеем некий 5 разрядный код:

Поскольку представлены только 4 кодовых комбинации, то полный двоичный код мы можем описать лишь двумя разрядами (К=2, М=4). В примере названным комбинациям можно поставить в соответствие следующий двоичный код: 00,01,10,11. Такая избыточность при передаче (5, вместо 2) позволяет «угадать» передаваемый символ. Например приняли 01100->4-й. Поскольку изменился 1 разряд (не знаем какой) нужно сравнить поразрядно совпадения и определить изменен ли разряд. Процедура определения называется восстановлением информации — операция сумма по модулю 2. Длина блока во многом определит как объем передаваемой информации, так и возможность ее декодирования. В теории кодирования вводят критерий различимости кодов: расстояние между кодовыми комбинациями. Наиболее часто используют расстояние по Хеммингу — минимальное из всех состояний для некоего блока передаваемых последовательностей. Для двоичных кодов минимальное расстояние по Хеммингу — 1. Коды Хемминга имеют минимальное расстояние 2, что позволяет не только обнаруживать ошибку, но и исправлять ее. Поскольку ошибки могут быть найдены и исправлены или только найдены, применяют различные устройства декодирования. Неполный декодер декодирует только те принятые слова которые лежат внутри «сфер декодирования», т.е. внутри тех кодов минимальное расстояние которых не превышает критерия. Если принятая комбинация отличается больше чем кодовое расстояние то возникает ошибка. Такие ошибки называют неисправляемыми. Большинство декодеров неполные. Полный декодер ставит в соответствие каждому принятому слову ближайшее переданное. Если расстояние превышено, то полный декодер не отказывается распознать, он выдает результат, но этот результат может быть неправильным. Реализация полных декодеров значительно сложнее и чаще всего она опирается на вероятностный подход. В теории передачи цифровой информации используют ошибку — стирание бита. Это не искажение 0-1,1-0. Эта информация просто потеряна, поэтому помехоустойчивые коды также используют для восстановления потерянной информации. К самым простым кодам относят:

Контроль по четности. Такой код называется (К+1,К). код используется для обнаружения, но не для исправления ошибки.