Назад
101
онная структ ура дает возможность запрограммировать при ре-
шении любой зада чи такую систему каналов связи между про-
цессорами многопроцессорной системы, ко т орая б удет адекв а т-
на внутренней струк туре решаемой задачи. Программирование
прямых каналов связи обеспечив ает наилучшее распараллели-
вание вычислительног о процесса, высокую скорость обмена
данными между процессорами и м ак симальную производитель-
ность системы. Особое зна чение имеет то, что программирова-
ние прямых каналов связи адекватно отражает внутреннюю
структуру задачи, обеспечив ает линейный рост произво дитель-
ности мног опроцессорной системы с программируемой архи-
тект урой в зависимости от числа задействованных в решении
задачи процессоров, что не удается обеспечить в мног опроцес-
сорных системах с жестк ой архитек турой. К онструктивно каж-
дая мног опроцессорная вычислительная система с программи-
ру емой архитектурой может быть выпо лнена в моду льной фор-
ме, состо ящей из сверх бо льших интегральных схем, к аждая из
которых вклю чает процессор, сектор распределенной памяти,
локальную к о ммутационную структ ур у. Внутренние каналы связи
СБИС организую тся так, чтобы процессор имел прямой доступ
к распределенной памяти и к о ммутационной струк туре, а рас-
пределенная память была связана прямым к анало м св язи с ком-
мутационной структурой.
Мног опроцессорные системы с программир уемой архитек-
турой дают возможность сбрасыва ть вирту альные мног опроцес-
сорные системы других классов. В частности, в многопроцес-
сорной системе с программируемой архитектурой мо ж ет быть
легко запрограммирована любая известная жесткая многопро-
цессорная система: магистральная, ма тричная и т.д. Это соот-
ветству ет программированию виртуальных машин в о днопро-
цессорных ЭВМ. Однако существенная разница заключается в
том, что, в о тличие от процедурной реализации вирт у альной
машины в однопроцессорной ЭВМ, в многопроцессорной сис-
теме с программируемой архитектурой вирту альная вычисли-
тельная система реализу ется аппара т урно, структ урно. В насто -
ящее время созданы большие интегральные сх емы к о ммутат о-
ров со зна чительным число м входов и выходов, к о т орые позво-
ляют программиров а ть соединение любого вхо да с любой груп-
102
пой выходов. Из по добных схем могут быть образованы весьма
мощные коммутационные стр укт уры с сотнями и даж е тысяча-
ми вх одов и вых одов, к о т орые обеспе чиваю т в озмо жность про-
граммирования, настройки и перестройки сотен и тысяч кана-
лов связи в процессе работы мног опроцессорной системы.
Вследствие одно типности процессоров, одноро дности рас-
пределенной памяти и к о ммутационной струк туры мног опроцес-
сорные системы с программируемой архитектурой от личаю тся
высокой технологичностью и ремонтоспособностью, а также
способностью к наращиванию аппарат урных ресурсов. Все струк -
турные элементы многопроцессорных систем с программируе-
мой архитектурой могут быть изг отов лены в виде БИС или СБИС,
причем число типов необ хо димых БИС и СБИС невелико.
Многопроцессорные системы с программируемой архитек-
турой от личаю тся высок ой живучестью и надежностьюони
про д о лжают эффективно работать при выходе из строя даже
зна чительной части входящих в систему микропроцессоров, сек-
торов распределенной памяти или локальных элементов ком-
мутационной струк туры.
МИКРОПРОЦЕССОРНЫЙ КОМПЛЕКТ БИС
С ПРОГРАММИРУЕМОЙ СТРУКТУРОЙ
Многопроце ссорные вычислительные системы с
программиру емой архитектурой строятся на основе микропро-
цессоров, реализующих крупные операции струк турными ме-
то дами, и имею т распределенную память и универсальную ком-
мутационную систему.
Основными устройствами системы являются: поле процес-
соров, состо ящее из микропроцессоров с программируемой
структурой; распределенная память, состо ящая из блоков; УБО
устройство быстрог о обмена данными между полем микро-
процессоров и распределенной памятью, с одной стороны, и
системным устройством с друг ой, представляющее собой буфер-
ное запоминающее устройствобуферную память; коммутаци-
онная система, позволяющая подключать выходы микропроцес-
соров, распределенной памяти и устройства быстрого обмена к
любым вх о дам микропроцессоров; магистраль, через которую
осуществляется обмен данными и настроечной информацией с
системным устройство м; системное устройство СУ, представ-
103
ляющее собой типовую ЭВМ и состо ящее из вво дных и выво д-
ных устройств, общей памяти и процессора. Системное устрой-
ство выполняет ф ункции вво да-вывода, управления всей МВС и
долговременног о хранения больших массивов информации.
Пользов а тель на языке высокого уровня, б лизко м к матем а-
тической нотации, вво дит программу решения зада чи в СУ, где
эта программа транслиру ется на язык крупных операций СУ
(м акроопераций) микропроцессоров, кр упных ко ммутаций К
(м акрокоммутаций) ко ммутационной системы и макрокоманд
управления б лок ами распределенной памяти и УБО. С помо-
щью операционной системы оттранслиров анная программа заг-
ру жается через магистраль в поле МП, ко ммутационную систе-
му, б локи памяти и УБО. По к о м анде СУ все устройства систе-
мы начинаю т рабо ту. Вычислительная часть системы имеет де-
централизованное, т.е. распределенное по всем блок ам управ-
ление, и поэто му она мо жет запуск а ться по частям, чт о позволя-
ет совмещать различные режимы работы, такие, как решение,
вво д, выв о д. При загрузке и выгрузк е бо льших массивов данных
использ у ется УБО. Информация в него может принима ться с
выходов любых микропроцессоров и блоков распределенной
памяти и за тем быстро выдава ться в общую память СУ. То чно
так же информ ация из общей памяти СУ мо ж ет быстро прини-
ма ться в УБО и затем параллельно выдав аться на входы различ-
ных МП. Быстрый обмен мож ет проводиться одновременно с
решением и вводо м-выво до м через магистраль.
По добные мног опроцессорные системы имеют весьма вы-
сокую произво дительность, ко т орая об еспечивается параллель-
ной работой всех МП и б локов распределенной памяти, а также
возможностью совмещать во времени такие работы, как вво д-
выво д через м агистраль и быстрый обмен массив ами инфор ма-
ции через УБО. Параллельная, т.е. о дновременная работа всех
микропроцессоров и блоков распре деленной памяти, обеспечи-
вается ко ммутационной системой, позволяющей осуществлять
параллельный обмен данными одновременно между всеми МП,
б лок ами распределенной памяти и УБО. Все устройства систе-
мы могут авто м а тически перестраива ться с решения одной за-
да чи на другую. Так, микропроцессоры и коммута торы могут
ав т о м а тически без вмеша тельства СУ перестраиваться с о дних
104
макроопераций и макрокоммутаций на другие. Многопроцес-
сорная вычислительная система с программир у емой архитекту -
рой характериз уется просто той программирования. Эта просто та
достигается высоким уровнем вх о дного языка всех устройств
системы.
На основании рассмотрения общей схемы МВС с
программиру емой архитектурой нетрудно определить состав
микропроцессорног о ко мплек та. Очевидно, что минимальное
число типов элементов к омплек та должно быть не меньше че-
тырех: для поля процессоров необ ходимо и доста точно иметь
соответствующий микропроцессор; для коммутационной сис-
темы необ ходимо иметь соо тветств ующий элемент коммутации
коммутат ор; распределенную память можно построить, исполь-
зуя выпускаемые промышленностью большие интегральные
сх емы памяти и, возможно, еще о дин-два типа интегральных
сх ем для организации децентрализованного управления, одна-
ко представляет интерес возможность использования одного
типа БИС для построения распределенной памяти; то чно так
же, как и распределенная память, из дв ух-трех типов БИС мо-
жет быть построено и устройство быстрого обмена, для него
также представляет интерес возможность использования о дно-
го типа БИС.
Общими для вс ех элементов комплекта принципами
построения яв ляю тся следующие. Все э лементы должны выпол-
нять соответствующие крупные операции: микропроцессор
вычислительные операции, коммутат орстандартизиров анные
совокупности коммутаций; БИС памятиоперации обмена
стандартизированными м ассивами, БИС УБОоперации обме-
на стандартными массивами с преобразованием данных. Все БИС
к омплек та должны иметь программир уемую структуру, крупные
операции в них должны выпо лняться не процедурно, т.е. не как
совокупность последова тельности действий, а структ урным ме-
то домпо граф-с хеме алгоритм а или, другими словами, схем-
но. Необходимо, чтобы элементы к о мплек та выполняли ф унк-
ции децентрализованног о управления, без которог о практичес-
ки невозможно эффективно осуществлять параллельные вычис-
ления. К омплект БИС должен иметь широкие ф ункциональные
возмо жности.
105
Набор крупных операций каждого э лемента комплек та прак-
тиче ски не может быть одновременно универс альным и
высокоэффек тивным для всех классов зада ч. Поэтому набор кр уп-
ных операций до лжен быть расширяемым. Для этого необ ходи-
мо, чтобы все элементы ко мплек та допускали возмо жность их
программирования на языке более низкого уровня. На пример,
МП должен иметь возможность программирования ег о на язы-
ке арифметик о-логических операций, коммута т орна уровне
элементарных ко ммутаций, т.е. ко ммутаций «о дин вход на один
выход». Эт о позволит в процессе эксплуатации перед решением
класса задач, для к о торых треб уются дополнительные м акроопе-
рации, произвести всего лишь один раз вво д в э лементы систе-
мы структ урных программ этих крупных операций и за тем уже
опера тивно использов а ть их на языке высокого уровня (анало-
гично тому, как это делается при построении новых стандарт-
ных подпрограмм для ЭВМ).
Комплек т БИС для МВС ПА должен удовлетв орять неко т о-
рым общим требованиям, обеспечивающим его единство и
совместимость как с точки зрения обработки информации, так
и со стороны ег о внешних э лектрических х арактеристик. К этим
требованиям относятся единство представления и форматов
числовой, программной и управляющей информации. Это уп-
рощает программирование, обеспе чивает единство интерфей-
сов межпроцессорного обмена и вво да-выво да, что позволяет
соединять БИС к о мплек та в произвольных сочетаниях и объе-
динять их в ма тричные, к онвейерные и другие сложные струк-
туры. Идентичность внешних электрических харак теристик всех
БИС ко мплек та обеспе чивает совпадение уровней логическ ого
ну ля и е диницы, а также динамических параметров сигналов на
выво дах БИС. Это наиболее просто достигается при использо-
вании для построения комплекта единой микроэлектронной те х-
нологии.
Важнейшими характеристик ами системы яв ляются произво-
дительность, сложность и класс решаемых зада ч [6]. Высок ая
производительность об еспе чивается параллельным решением
задач на большо м числе процессоров струк т урными мето дами
реализации крупных операций и в озмо жностью совмещения во
времени различных режимов рабо ты. Класс решаемых на МВС
106
задач зависит от универсальности наборов крупных и арифме-
тико-логических операций, возможностей к о ммутационной си-
стемы и емк ости памяти. Наиболее просто обеспе чивается не-
об ходимый объем памяти, доста т очно лишь увеличить число
б локов распределенной памяти. Кро ме того, сами МП имею т
собственную распределенную память. Такж е относительно не-
сложно увеличением числа коммутат оров расширяются возмож-
ности к оммутационной системы. Основной харак теристикой,
наиболее существенно влияющей на класс решаемых задач, яв ля-
ются наборы крупных и арифметико-логических операций, при-
чем если набор кр упных операций влияет на эффективность ре-
шаемых задач, то арифметико-логический набор в основном
определяет класс решаемых зада ч . В связи с этим набор ариф-
метико-логических операций долж ен быть ф ункционально по л-
ным, а набор крупных операцийрасширяемым.
Свое го рода законом является зависимо сть
произво дительности и класса эффективно решаемых зада ч от
сложности МВС. Чем выше производительность и шире класс
решаемых задач, тем большую сложность имеет система. По-
этому важное значение при построении многопроцессорных
систем с программируемой архитект урой приобретают испо ль-
зу емые в ней принципы переработки и межпроцессорной пере-
да чи информации, так как именно они в зна чительной степени
определяют сложность микропроцессоров и коммутат оров, а те,
в свою о чередь, - сложность всей системы.
Наибольший вклад в сложность МВС вносит коммутаци-
онная система. Так, для коммутации 256 вх одных шин на 256
вых о дных в общем случае потребу ется 256 к о ммутат оров 16х16,
т.е. коммута т оров, позволяющих в различных к о мбинациях со-
единять 16 вх о дов с 16 вых о дами. Это зна чительный об ъем. С
по мощью такой к оммутационной системы можно к о ммутиро-
вать не более 16 микропроцессоров. Поэтому необ хо димо, что-
бы при заданной сложности коммутационная система имела
весьма широкие ф ункциональные возможности, т.е. максималь-
ное число о дновременно работающих каналов межпроцессор-
ного об мена. Очевидно, что число таких каналов зависит от спо-
собов передачи информации. При обмене информацией парал-
лельными кодами число каналов мак симальное, при обмене
107
информ ацией последов а тельными к одамиминим альное. Так
как и в том и в друг о м случае об ъем информации, пере даваемый
в единицу времени через коммутационную систему, о динаковый,
то с точки зрения функциональных возмо жностей передача ин-
фор мации последов а тельными к одами имеет бесспорное пре-
имущество.
ОРГАНИЗАЦИЯ МАШИННЫХ ЯЗЫКОВ ВЫСОКОГО УРОВНЯ
И ТЕХНОЛОГИЯ ПРОГРАММИРОВАНИЯ МВС
С ПРОГРАММИРУЕМОЙ АРХИТЕКТУРОЙ
Для МВС с ПА необходимо создание машинных языков
высокого уровня, описывающих каждую крупную (макро-) опе-
рацию о дним операт оро м. Такая фор м а машинног о язык а высо-
кого уровня обладает непроцедурностью и требу ет для своей
реализации задания только входных параметров без указания
процесса реализации о тдельных кр упных операций. В структ у-
ру операторов устройств, выполняющих крупные операции,
должны входить параметры, располагаемые в произвольном или,
в зависимости от структуры транслятора, в позиционном по-
рядк е с соответств ующими признаками. Основными признака-
ми, определяющими реализацию операт ора, являются следую-
щие: признак принадлежности опера т ора реализ у емой зада че
(для ассоциативног о способа загрузки МВС с ПА); признак при-
надлежности операт ора устройств у, к о т орый необх о дим для ре-
ализации ассоциа тивног о способа рассылки операт оров по уст-
ройствам; номер программног о блок а, в которо м участву ет дан-
ный оператор; код операции, выпо лняемой данным устройство м;
параметр длины вектора операндов, обраба тываемых устрой-
ством; параметр состо яния результата; параметр особых усло-
вий выпо лнения опера т ора; параметр расположения и с читыв а-
ния информации в ОЗУ (для запо минающих устройств).
Первые три признак а в зависимости от выбранного мет о да
организации вычислительного процесса могут отсутствовать.
Последние два могут содержать не с колько подпараметров,
обеспечив ающих ф ункциональную полно ту описываемог о опе-
рат ора. Конкретный набор и струк т ура параметров определяют-
ся об ластью применения МВС с ПА и техническими ограниче-
ниями на произво дство. При произвольном располо ж ении па-
раметров каждый из них до лжен иметь от личительный признак.
108
В качестве таких признак ов могут служить идентифик аторы.
Позиционное располо ж ение параметров несколько упрощает
структуру транслятора, однако существенно усложняет процесс
программирования, так как треб ует от программистов строг ог о
собл юдения порядка следов ания параметров, число ко торых мо-
жет быть бо лее десяти.
В связи с тем, что во многих макрооперациях длина векто-
ра вх одных данных не совпадает с длиной вект ора резуль та тов,
данный параметр должен иметь два подпараметра, позво ляю-
щих программистам осуществлять различного ро да сортиров-
ки, а также организ ов ать контроль правильности ф ункциониро-
вания устройств.
Операт оры различных устройств от личаются друг от друга
только набором и зна чением параметров, что обеспе чивает унифи-
кацию процесса трансляции в машинные форма ты. С целью об ес-
печения просто ты программирования и достиж ения высок ой эф -
фективности решения зада ч необхо димо использова ть бло чную
структур у формиров ания программ. Программный блок реализу-
ет полностью или частично операт оры одног о загрузо чного яру-
са . Вся программа состоит из последов а тельности б локов. Ис-
пользование блоков осуществляется в порядке написания или в
порядке , указанно м метками пере х о дов. Каждый из блоков мо жет
повт оряться необ х о димое для решения зада чи число раз. Если
неск о лько б локов ну жно объединить в нек о торую бо лее сложную
программную единицу, то так ая к онстр укция будет называ ться
составным блок о м. Последний также мо жет повторяться в про-
цессе решения зада чи необ х о димое число раз.
Стратегия реализации б лока для к онкретног о в арианта МВС
с ПА определяется зало женными при техническ ой реализации
принципами организации вычислительных процессов. Органи-
зацию эффективных вычислительных процессов в МВС с ПА
можно проводить с централизованным и децентрализов анным
управлением. Каждый из ук азанных способов управления ре-
ализуется с детер минированным и ассоциа тивным принципами
распределения операт оров по устройствам. Выбор того или ино-
го способа реализации процесса управления опре деляется при-
нятой конфигурацией, а также требов аниями к быстро действию
системы. Многопроцессорная вычислительная система с ПА с
109
централизованным управлением вычислительным процессом
должна со держать, кро ме основных устройств, специальную
память команд (ОЗУК), предназначенную для хранения команд
всех устройств, принимающих участие в выполнении преобра-
зования информации, и программы, определяющей строгую
последов ательность функциониров ания системы. Программа
состоит из от дельных б локов,. каждый из ко т орых содержит
набор ком анд обрабатыв ающих устройств и устройств памяти,
опера т оры выбора ком анд из ОЗ УК, операт оры рассылки их по
соответствующим устройствам, а также опера т оры пуск а и ос-
тановки МВС с ПА. При детерминиров анном принципе рассылки
команд все устройства с помощью пространственног о к оммута-
тора соединяются с центральным устройством управления по-
о чере дно в каждом программном б локе, ко т орый выбирает ко-
манду и отсылает ее в регистр ко манд устройства, соединенног о
в данный мо мент времени с ЦУУ пространственным коммута-
торо м. По ок ончании рассылки к о м анд всем устройств ам ЦУУ
выбирает к оманду для ко ммута т ора и устанавливает соедине-
ния между от дельными устройств ами, участв ующими в реали-
зации данного б лок а. Далее выбираются к оманды пуск а и завер-
шения работы б лок а , по которым запускаются необ хо димые ус-
тройства, и ЦУУ пере х одит в режим ожидания окончания рабо-
ты к аждог о запущенного устройств а.
Так ой алг оритм об еспечивает наг лядность описания ф унк-
ционирования системы и простот у его модификации. Основным
недостатком данного способа организации вычислительного
процесса является нек от орая громоздкость в описании и реализа-
ции рассылки операт оров по устройствам. Данную процедуру
можно упростить использованием ассоциа тивного принципа
рассылки операторов, в соответствии с которым каждый опера-
тор снабжается признако м принадлежности то му или иному ус-
тройств у. В этом случае при распределении операторов про-
граммног о блока между устройствами устанавливается о дновре-
менная связь между ЦУУ и всеми участвующими в реализации
данног о блок а устройствами. Каждый операт ор, считыв аемый
из ОЗУК, поступает сраз у на все устройства, а воспринимается
то лько тем устройство м, которо му он принадлежит. Это суще-
ственно сокращает об ъем программ и время их реализации.
110
ЗАКЛЮЧЕНИЕ
ПЕРСПЕКТИВЫ РАЗВИТИЯ ПАРАЛЛЕЛЬНЫХ
ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ
Развитие ПВС на правлено на повышение их э ффективно-
сти и производительности [7, 8]. Наряду с совершенствов анием
электронной элементной базы и соответств ующег о программ-
ного обеспечения для достижения указанной цели перспек тив-
ным является ко мплексирование э лек тронных вычислительных
систем с оптическими.
Основным преимуществом цифровой оптическ ой обработ-
ки информ ации является высокая степень параллелизма, а так-
же отсутствие взаимо действия между пересекающимися опти-
ческими сигналами, что позволяет создавать вычислительные
устройства на основе интегральной оптики с топологией, кото-
рую нельзя реализов а ть на элек тронных ко мпонентах.
Комбинированные элек тронно-оптические вычислитель-
ные системы позволяют решить и такую принципиальную зада-
чу, являющуюся узким местом ЭВМ с классической фон-Ней-
мановской струк т урой, как устранение последов а тельног о ме-
ханизм а адресации и обмена данными, и в конечно м с чете со-
вместить вычисления с хранением данных [7]. Эта проб лем а
является базовой и при построении те хнических систем искус-
ственного интеллекта [9], которые представляю т собой яркий
пример ПВС.
Важной особенностью оптических вычислительных уст-
ройств является возможность использов ания вирт уальных вы-
числений. Так, при реализации оптического Фурье-процессора
никогда не определяются частичные произведения и су ммы,
содержащиеся в аналитической сути (записи) этого преобразо-
вания [8].
С уществ ую т определенные предпосылки создания кван-
товых к о мпью теров, в к о т орых вычислительные операции бу-
дут осуществляться путем манипуляций с фотонами (элек тро-
нами) с использованием, на пример, последних достижений в
об ласти квант овой э лектро динамики и сверхпров о димости. Од-
нако это доста точно далекая перспектива. Попытки создания