Устройство обмена данными распределенной управляющей системы
Иллюстрации
Показать всеРеферат
Изобретение относится к автоматике и вычислительной технике, в частности к од282 28/ газ 27 нородным сосредоточенным управляющим системам, построенным на основе микроили миниЭВМ, и может найти применение при построении высокопроизводительных распределенных управляющих и вычислительных систем. Целью изобретения является повышение скорости обмена на основе организации магистрально-кольцевого способа обмена данными за счет обмена данными между несколькими парами абонентов общей шины одновременно. Устройство обмена данными распределенной управляющей системы содержит N модулей 1 обмена и блок управления. Модуль обмена содержит микроЭВМ 3, у которой 3.1 - входвыход шины управления и данных. 3.2 - выход шины адреса, 3.3 - первый вход прерывания , 3.4 - второй вход прерывания, реП-а-т-О-йЧ Р I 18 1 СО с $ I « -25 х| 00 ю го о -2S Фиг.2
COIO3 СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
Г!О ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ ГКНТ СССР
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4788570/24 (22) 05.02.90 (46) 07.03.92 Бюл. М 9 (71) Конструкторское бюро электроприборостроения (72) Н.К.Байда, В.С.Харченко, B.Ã,Ëèòâèíåíко, Г.Н.Тимонькин, С.Н.Ткаченко и В.Н,Середа (53) 681.3 (088.8) (56) Авторское свидетельство СССР
М 1410049, кл. G 06 F 15/16, 1988.
Авторское свидетельство СССР
М 1432537; кл. G 06 F 15/12, 1988. (54) УСТРОЙСТВО ОБМЕНА ДАННЫМИ
РАСПРЕДЕЛЕННОЙ УПРАВЛЯЮЩЕЙ СИСТЕМЫ (57) Изобретение относится к автоматике и вычислительной технике, в частности к од2а2. Ы 1718226 А1 нородным сосредоточенным управляющим системам, построенным на основе микроили миниЭВМ, и может найти применение при построении высокопроизводительных распределенных управляющих и вычислительных систем. Целью изобретения является повышение скорости обмена на основе организации магистрально-кольцевого способа обмена данными за счет обмена данными между несколькими парами абонентов общей шины одновременно. Устройство обмена данными распределенной управляющей системы содержит M модулей
1 обмена и блок управления. Модуль обмена содержит микроЭВМ 3, у которой 3.1 — входвыход шины управления и данных, 3.2— выход шины адреса, 3.3 — первый вход прерывания, 3.4 — второй вход прерывания, ре1718226
25
35 гистр 4, генератор 5 адреса, элемент 6 срав-. нения, триггер 7 сброса, одновибратор 8, четвертый блок 9 магистральных элементов, третий блок 10 магистральных элементов, второй блок 11 магистральных элементов, первый блок 12 магистральных элементов, шестой блок 13 магистральных элементов, . пятый блок 14 магистральных элементов, седьмой блок 15 магистральных элементов, магистральный элемент 16, третий элемент
И 17, первый элемент И 18, второй элемент
И 19, четвертый элемент И 20. пятый элемент И 21, второй коммутатор 22, первый коммутатор 23, второй (левый) вход — выход.
24 шины управления и данных модуля 1 обИзобретение относится к автоматике и вычислительной технике, в частности к однородным сосредоточенным управляющим системам, построенным на основе микроили миниЭВМ, и может найти применение при построении высокопроизводительных распределенных управляющих и вычислительных систем.
Известно устройство для подключения
ЭВМ и абонентов через общую шину, содер- 10 жащее блок связи с магистралью, блок памяти, блок. управления, генератор тактовых импульсов, дешифратор.
Недостатком этого устройства является низкая скорость обмена между абонентами, Известно устройство для обмена данными на основе "вращающейся" шины (петли Пирса), .содержащее регистры, мультиплексор, триггер пуска, элементы И, буферный блок.
Недостаток этого устройства — большой обьем оборудования.
Наиболее близким по технической сущности и достигаемому положительному эффекту является устройство, содержащее микроЭВМ, генератор, счетчик, дешифратор, элемент 2И-N ИЛИ, триггер, блок элементов И, ° N внешних устройств, магистраль, выход генератора соединен со счетным входом счетчика, m выходов которого соединены с информационным входом блока элементов И и входом дешифратора, N выходов которого соединены соответственно с первыми входами элемента 2И-.N
ИЛИ, с вторыми входами этого элемента соединены соответственно выходы запроса
Nвнешних устройств,,выход элемента 2И-N мена, первый (правый) вход — выход 25 шины управления и данных модуля 1 обмена, выход 26 адреса абонента модуля 1 обмена, вход 27 адреса модуля 1 обмена, 28.1-28.3— входы управления обменом модуля 1 обмена, выход 29 признака окончания обмена модуля 1 обмена и соответствующие связи, Блок управления содержит блок памяти, счетчик адреса, элемент И-ИЛИ-НЕ, N групп триггеров по три триггера в каждой, первый и второй блоки элементов ИЛИ, элемент И, выход опроса, вход ответа, выход состояния, первый, второй и третий входы синхронизации устройства, вход сброса и соответствующие связи. 4 ил., 1 табл.
ИЛИ соединен с синхровходом триггера, на
0-вход которого подается потенциал логической единицы, входы-выходы управления, адреса и данных микроЭВМ соединены с общей шиной, которая соединена с входами-выходами внешних устройств, первый разряд общей шины соединен с управляющим входом блока элементов И, выход которого также соединен с общей шиной, второй разряд общей шины соединен с R-входом триггера, выход которого соединен с управляющим входом счетчика и входом прерывания микроЭВМ.
Недостатком известного устройства является низкая пропускная способность общей шины при обмене данными. Этот недостаток обусловлен самим магистральным принципом обмена данными, при котором одновременно обмен может осуществляться только между двумя абонентами общей шины, и принципом централизованного управления обменом. Даже если внешние устройства являются самостоятельными микро или миниЭВМ, обмен между ними может быть осуществлен только посредством управляющей микроЭВМ, что приводит либо к непроизводительному простою последней в случае, если она только управляет обменом данными в системе (во время обмена управляющая микроЭВМ простаивает), либо к дополнительной вычислительной нагрузке при организации обменом между внешними устройствами, которая снижает производительность микроЭВМ по решению основного класса задач, Целью изобретения является увеличение скорости обмена данными между моду1718226 лями обмена за счет организации магист- В ведение блока памяти необходимо для рально-кольцевого способа обмена данны- хранения и выдачи информации о требуеми с обеспечением воэможности мом состоянии триггеров групп триггеров параллельного обмена между модулями о0- при обеспечении связи между любыми двумена, что позволяет, повысить пропускную 5 мя модулями обмена; способность эа счет органиэации обмена Первый и второй блоки элементов ИЛИ, данными между несколькими парами або- элемент И-ИЛИ-НЕ и обусловленные ими нентов. общей шины одновременно и гиб- связи необходимы для определения возкость устройства за счет возможности- можности обеспечения обмена данными организации обходных путей обмена при 10 между двумя модулями обмена, где адрес повреждении магистрали обмена. передающего модуля обмена (инициатора Сущность изобретения заключается в обмена) в данный момент времени стоит на увеличении скорости обмена устройства пу- выходе счетчика адреса, а адрес приемного тем организации одновременного обмена модуля (кому хочет передать) — на входе данными между несколькими модулями об- 15 ответа модуля управления. мена распределенной управляющей систе- N групп триггеров по три в каждой и мы. Введение регистра, генератора адреса, обусловленные ими связи необходимы для элемента сравнения, счетчика, пятого эле-. хранениясигналов,требуемыхдля обесепемента И, седьмого блока магистральных: чения связи между парами модулей обмена. элементов и обусловленных ими связей не- 20 Эти сигналы, поступая на соответствующие обходимо для организации поочередного: входы управления модулей обмена, обеспеопроса модулей обмена и выявления тех иэ чивают установку соответствующих режиних, кто хочет передать данные другому мо- мов работы модулей обмена дулю обмена, распределеннои вычислительнои сети Эле
Введение триггера сброса, одновибра- 25 мент И блока управления и обусловленные тора, первого элемента И, магистрального им связи необходимы для обнуления соотзлемента и обусловленных ими связей необ- ветствующих триггеров состояния по оконходимо для организации обнуления регист- . чании обмена между модулями. ра и, таким образом, снятия запроса на На фиг. 1 представлена структурная схеобмен данными модулем обмена по, оконча- 30 ма устройства обмена данными распредении операции обмена. Введение второго ленной управляющей системы; на фиг. 2— элемента И, пятого и шестого блоков маги- функциональная схема I-ro модуля обмена стральных элементов и обусловленных ими распределенной управляющей системы; на связей необходимо для организации под- фиг. 3 — функциональная схема блока управключения шины управления и данных мик- 35 ления распределенной управляющей систероЭВМ к правому входу-выходу шины мы; на фиг. 4 — временная диаграмма управления и данных модуля обмена. исмпульсов синхронизации устройства.
Введение четвертого элемента И, треть- Устройство обмена данными распредеегоичетвертогоблоковмагистральныхэле- ленной управляющей системы (фиг. 1) саментов и обусло вл ен н ы х ими связей 40 держит N модулей 1.1-1.N обмена (фиг. 2) и необходимо для организации подключения. блок 2 управления (фиг. 3). Модуль обмена шины управления и данных микроЭВМ к содержит микроЭВМ 3, которая включает левому входу-выходу шины управления и . вход-выход 3.1 шины управления и данных, данных модуля обмена. выход 3.2 шины адреса, первый вход 3.3
Введение второго элемента И, первого 45- прерывания, второй вход 3.4 прерывания. и второго блоков магистральных элементов регистр 4, генератор 5 адреса, элемент 6 и обусловленных ими связей необходимо сравнения, триггер 7 сброса, одновибратор для организации режима "Транзит" для дан- - 8, четвертый 9, третий 10, второй 11, первый ного модуля; т.е. соединения между собой 12, шестой 13, пятый 14, седьмой 15 блоки правого и левого входов-выходов шины уп- 50 магистральных элементов, магистральный равления и данных модуля обмена.. ; элемент16, третий 17, первый 18, второй 19, Введение первого и второго коммутато-: .четвертый 20 и пятый 21 элементы И, второй ров и обусловленных ими связей необходи- 22 и первый 23 коммутаторы, второй (левый) мо для получения сигналов прерывания, вход-выход 24 шины управления и данных начало которых инициирует отработку мик- 55 модуля 1 обмена, первый (правый) вход-выроЭВМ подпрограмм прерывания, обеспе- ход 25 шины управления и данных модуля 1 чивающих установление связи, обмена, выход 26 адреса абонента модуля 1 необходимой при обмене данными, между. обмена, вход 27 адреса модуля 1 обмена, микроЭВМ двух различных модулей обме- входы 28,1-28.3 управления обменом модуна.
1718226
10
25
55 ля 1 обмена, выход 29 признака окончания обмена модуля 1 обмена.
Блок 2 управления содержит блок 30 памяти, счетчик 31 адреса, элемент И-ИЛИНЕ 32, N групп триггеров 33.1-33.3 N по три триггера в каждой, первый блок 34 элементов 34.1-34.N ИЛИ. второй блок 35 элементов 35.1-35.N ИЛИ, элемент И 36, выход 37 опроса, вход 38 ответа, выход 39 состояния, первый 40, второй 41 и третий 42 входы синхронизации устройства, вход 43 сброса.
МикроЭВМ может быть выполнена, например, на основе микропроцессоров Jnt
8080, MC 6800, которые имеют двунаправленную шину данных (вход-выход 3.1), шину адреса (3.2), управляющие входы (соответствующие разряды 3.1) и входы прерывания (3.3, 3.4), захвата и готовности (соответствующие разряды 3.1). Обработка сигналов прерывания может осущеставляться в ЭВМ также с использованием блока прерываний и известных программ, Регистр 4 предназначен для хранения адреса модуля 1.i обмена, которому данный модуль 1.j обмена хочет передать какие-либо данные (1=1, N; j=1, N; jpi). Генератор 5 адреса вырабатывает адрес данного модуля
1.i обмена. Диапазон адресов модулей обмена 1 — (2 1), т.е. модуль обмена с нулевым адресом отсутствует.
Элемент 6 сравнения предназначен для организации поочередного опроса всех N. модулей обмена на предмет желания их передать данные какому-л ибо другому модулю обмена. Совпадение адресов на его входах означает, что данному модулю разрешается выставить на выход 26 адреса модуля адрес желаемого абонента — модуля-приемника, что происходит только в том случае, когда данный модуль обмена не используется как транзитный для связи двух других или принимает данные от другого модуля. Данную функцию выполняет элемент И 21.
Триггер 7 сброса, первый элемент И 18, одновибратор 8 служат для выработки сигнала обнуления регистра 4 (снятия запроса на обмен) по окончании обмена, который инициирован данным модулем.
Первый 12 и второй 11 блоки магистральных элементов предназначены для обеспечения соединения между собой правого 25 и левого 24 входа=выхода шины управления и данных модуля обмена, т;е. обеспечения режима "Транзит" — связи (i-1)ro модуля с (!+1 -м через i-й по шине. управления и данных.
Третий 10. четвертый 9, пятый 14 и шестой 13 блоки магистральных элементов предназначены для подключения шины 3 1 управления и данных микроЭВМ к левому
24 и правому 25 входу-выходу шины управления и данных модуля обмена. Вторбй 19, третий 17 и четвертый 20 элементы И служат для управления соответствующими блоками магистральных элементов.
Первый коммутатор 23служитдля выработки сигнала прерывания, который поступит на вход 3.4 прерывания микроЭВМ 3 в случае, когда модуль 2 управления разрешает данному модулю обмена начать обмен данными в ответ на его запрос.
Второй коммутатор 22 служит для выработки сигнала прерывания, который посту-. пает на первый вход 3.3 прерывания микроЭВМ 3 в случае, когда к микроЭВМ данного модуля обмена разрешено обращение микроЭВМ какого-либо другого модуля обмена. Счетчик 31 адреса предназначен для организации последовательного опроса всех N модулей, он изменяет свое состояние от 0 до (2tA 11.
Блок 30 памяти предназначен для хранения требуемых состояний триггеров 33.133. N групп три rrepo в, в которое необходимо их перевести при организации обмена данными между модулями распределенной вычислительной системы.
Все пространство блока 3, памяти разбито на сегменты объемом (2 -1)-х ÇN. Количество сегментов зависит от числа модулей обмена в системе, максимальное (2m 2); где m=llg(1+N)f, ()х)округление х до большего целого). Разрядность адреса, поступающего на вход блока 30 памяти, равна 2m:m старших разрядов, определяющих номер сегмента (сегмент с нулевым номером отсутствует), и m младших, определяющих номер строки в сегменте. Старшие разряды поступают с выхода счетчика 31, а младшие — с выхода 38 ответа. т.е. с выходов 26 адреса модулей 1 обмена. Длина каждой строки равна 3N бит. Это обусловлено тем, что на вход каждого из N модулей 1 обмена системы необходимо подавать три управляющих сигнала. Каждый из модулей может находиться в одном из шести состояний, указанных в таблице. в этой же таблице указан и код каждого состояния.
В первой строке каждого сегмента, т.е.. в строке с нулевым адресом, записаны только нули.
Рассмотрим таблицу. Код 001 поступает на входы 28.1-28.3 управления и того модуля 1 обмена, который хотел передать данные модулю, находящемуся от него справа.
По.кольцу до этого модуля можно добраться, идя и влево, но данные передаются по кратчайшему пути. Если таких путей два, т,е. модули находятся в кольце один напротив другого (no диаметру), то при кодировании
1.7,18226
10 выбирается один из путей. Код 100 поступа- три триггера 33,4-33,6 — второго модуля 1.2 ет на вход модуля, который хотел передать обмена и т.д. соседу слева (не обязательно ближайшему), Первый 34, второй 35 блоки элементов
Коды 001 и 110 поступают на входы 28.1-. ИЛИ и элемент И-ИЛИ-НЕ 32 необходимы
28.3
8.3 управления модулей-получателей дан-.: 5 для выяснения возможности осуществления ных, т.е, тем, кому передают данные запрошенной коммутации,т.е.возможноли модули-передатчики. Первый и третий раз- . при данном состоянии модулей обмена расряды када определяют направление при- пределенной управляющей системы реалиема-передачи: единица в первом разряде- - зовать обмен, запрашиваемый модулем прием-передачаосуществляетсяслева,еди» 10 обмена, адрес которого в данный момент ница в третьем разряде — справа. Второй стоит на выходе 37опроса. разряд указывает, что делает данный мо- Элемент И 36 блока 2 управления необдуль обмена, если нуль, то передавать дан- дим для установки в.нуль всех триггеров ные, а если единица, то принимать. В случае состояния, которые задействованы для упже, когда на все три входа 28,1-28.3 управ- 15. равления модулями обмена при реализации ленияпоступаютединицы,тоэтозначит,что обмена, инициатором которого выступил данный модуль обеспечивает связь между модуль, адрес которого стоит на выходе своими ближайшими соседями — режим . :: счетчика.
"Транзит". Фактически между собой соеди- Устройство работает следующим обраняются правый 25 и левый 24 входы-выходы 20 зом. шины управления и данных модуля 1 обме- В исходном состоянии триггеры 7 сброса всех модулей 1.1-.1.N обмена находятся в
Если на входы 28.1-28.3 поступают три . нулевом состоянии, в регистрах 4 всех N нуля, то это значит, что данный модуль не . модулей обмена также записаны нули, все задействован на выполнение ни одной из 25 триггеры 33.1-33:.N в блоке 2 управления указанных операций, он свободен. Таким также находятся в нулевом состоянии (цепи образом,для обеспечения связи, например, . установки исходного состояния не показамежду 1-м и J-м модулями (i < J) необходимо, ны). чтобы модули, находящиеся между ними, no 0o заднему фронту тактовых импульсов, кратчайшему пути были свободны, включая 30 поступающих на первый вход 40 синхронии сами эти модули. Пусть этот путь лежит по зации устройства (фиг. 4), счетчик 3" адреса возрастающей номеров модулей. Следова-: изменяет состояние от 0 до (ZITl--1), произвотельно,дляустановления связинеобходимо дя поочередный опрос всех. модулей обмев случае, если 1-й передаетданные)-му, что- на, так как выход счетчика 31 адреса бы все модули с номерами, удовлетворяю; 35 соединен фактически с входами элементов щими условию i < К <) „— номер модуля, 6 сравнения всех модулей 1 обмена. В том находились в режиме "Транзит", на i-й мо- - модуле 1 обмена, в котором совпали комбидуль подается код 001 (100) при передаче нации, поступающие с выхода счетчика 31 вправо (влево), à Hà.J-й — код 110 (011)..: адреса и выхода генератора 5 адреса данноТаким образом. в i-м сегменте блока ЗО 40 го модуля, на выходе элемента И 21 появляпамяти в)-йстрокехранится код, в котором ется единица, так как на инверсный вход в первых(1-1) 3-х разрядах записаны нули, в этого элемента поступает нуль, все триггеры (ЗЛ-2)-, (ЗЛ-1)- и (З.i)-м — 001 или 100 (в зави- .. 33.1-33.И в нуле. Единица с выхода элеменсимости от нумерации модулей в кольце), с та И 21 поступает на управляющие входы (3.1+1)-го до (З.J-З)-го — единицы, в (З.J-2)-, 45 седьмого блока 15 магистральных элемен(З.J-1)-, (3,)) -м — 110 или {011), во всех осталь- тов и магистральный элемент 16, подкл очая ных — нули. Все это справедливо при приня- тем самым выход регистра 4 данного модуля тых ранее допущениях. - 1 обмена к входу 38 ответа блока 2 управлеN групп триггеров 33.1 — ÇÇ.N необходи- ния, m разрядов регистра 4 становятся мы для непосредственного управления мо- 50 младшими разрядами адреса, поступающедулями 1.1-1.N обмена, так как выходы гона вход блока30 памяти, старшиеразрятриггеров непосредственно соединены с ды адреса к этому времени уже поступили с входами 28 управления модулей обмена. Уп- . выхода счетчика адреса 31. равление осуществляется путем установки Таким образом, происходит. обращение соответствующих триггеров в единичное со- 55 к сегменту блока 30 памяти, номер которого стояние. Каждая из N групп триггеров соот- соответствует номеру опрашиваемого в ветствует конткретному модулю 1 обмена, данный момент модуля 1 обмена, в сегменте т.е. первые три триггера 33,1-33,3 осущест-. обращение происходит к строке, номер ковляют временное хранение сигналов управ- .торой записан в регистре 4 опрашиваемого пения первого модуля 1.1 обмена, вторые модуля 1 обмена. Но в этом регистре запи1718226
20 удовлетворен
40
55 саны только нули, следовательно, происходит опрос первой (а именно нулевой, так как нумерация строк начинается с 0-й до(2"-1)й) строки сегмента, в которой записаны только нули. Модуль не хочет передавать данные, следовательно, нет необходимости изменять состояние каких-либо модулей 1 обмена системы. Все они по-прежнему свободны, т.е. на их входы 28.1-28.3 управления обменом поступают одни нули.
Так продолжается до тех пор, пока какой-либо из модулей 1 обмена не захочет передать данные другому. В этом случае в модуле-передатчике 1Л обмен микроЭВМ 3 выставляет на шину 3.2 адреса модуля-приемника. По сигналу управления с входа-выхода 3,1 шины управления и данных этот адрес записывается в регистр 4 этого модуля 1.iобмена,,т.е. микроЭВМ осуществляет обычную операцию записи адреса (данных) во внешний по отношению к ней регистр.
Далее микроЭВМ может продолжать работу по заданной программе. При очередном опросе данного модуля 1Л обмена на выход 26 адреса абонента этого модуля поступают уже не нули, а конкретный, отличающийся от нуля, адрес. По этому адресу из сегмента с номером I из блока 30 памяти. считывается строка с номером j, где j —. номер модуля-получателя 1Л обмена. В данной строке записывается информация о том, ка- кие из модулей 1,К обмена сети должны. перейти в режим "Транзит" для обеспечения связи по шине управления и данных между i-м и j-м модулями обмена. Кроме того, записываются коды управления самими этими модулями, которые предпигывают перейти l-му в режим передачи, а, -му — в режим приема, а также указываются направления, в котором (с которого) осуществлять передачу (прием) данных. Выбор направления (вправо-влево} зависит от взаимного расположения в кольце данных модулей 1Л, 1.j обмена — no кратчайшему пути между ними.
Далее необходимо проверить, возможно ли осуществление данной связи, не помешает ли она уже существующим. Эта проверка осуществляется следующим образом.
Код длиной ЗМ бит, стоящий на выходе блока 30 памяти, преобразуется с помощью первого блока 34 элемента ИЛИ в код длиной N бит. Этот код несет информацию о том, какие модули обмена должны быть заняты, т.е. введены в режимы транзита, приема или передачи, для осуществления требуемой коммутации. К-й разряд этого кода соответствует К-му модулю 1.К обмена (К=1, N), т.е. если на входы 28.1-28.2 модуля необходимо подать код, в котором есть хотя бы одна единица, то этот модуль считается занятым. Далее необходимо выявить уже занятые модули системы. Это реализуется с помощью второго блока 35.1 — 35.N элементов ИЛИ аналогичным образом. В случае, если хотя бы в одном из одноименных разрядов этих двух кодов есть единицы, это означает, что для обеспечения требуемой связи необходимо задействовать уже занятый модуль, что невозможно.
В этом случае на выходе элемента ИИЛИ-HE 32.появляется нулевой сигнал, запрещающий запись в триггеры 33,1-33.3N, Запрос модуля 1Л обмена не удовлетворяется и продолжается дальнейший опрос модулей в поисках приемлемого запроса для данного состояния системы. Таким образом, так как при запросе 1-го модуля 1,i обмена все триггеры 33.1-33.3N в исходном состоянии, то появление единицы на выходе элемента И-ИЛИ-НЕ 32 невозможно при любом запросе. Следовательно, запрос
По очередному тактовому импульсу с второго входа 41 синхронизации устройства (фиг. 4) код с выхода блока 30 памяти записывается в соответствующие триггеры групп триггеров. Как только произошла запись в триггеры, на входы 28,1-28.3 управления обменом соответствующих модулей
1.К обмена поступают сигналы, отличные от нулевых. На модуль 1Л обмена поступает код 001 (100), а на модуль 1.j — 110 (011), на все промежуточныемодули.1.К обмена — код
111 и все эти модули переводятся в режим транзита. Опрос модулей, находящихся в режиме транзита или приема, блокируется подачей нуля на инверсный вход элемента
И 21, эти модули все равно не.могут начать обмен данными.
Модули переводятся в режим транзита с помощью элемента И 17. Если на входах
28.1-28.3 управления обменом — три единицы, то на выходе элемента И 17 также появляется единица, которая выводит первый 12 и второй 11 блоки магистральных элементов из высокоимпедансного состояния, обеспечивая тем самым режим транзита. Других изменений в этих модулях не происходит.
Сложнее процессы, происходящие в модулях-приемниках 1.j и передатчике 1Л обмена. Допустим на входы 28.1-28.3 управления обменом модуля 1.! обмена поступает код 001, так как передача вправо (таблица). На выходе элемента И 19 появляется единица, выводящая блоки 13 и 14 магистральных элементов из высокоимпедансного состояния, коммутируя тем самым вход-выход 3.1 шины управ13
1718226
14 шине данных.
По окончании обмена данными микро0 ЭВМ вЂ” инициатор обмена по шине, поступающей íà S-вход триггера 7 сброса, подает единичный импульс, который переводит этот триггер в единичное состояние. При очередном опросе данного модуля 1Л обмена на выходе 29 признака окончания обмена не нулевой, а единичный потенциал, кото рый, поступая на вход 43 сброса, открывает элемент И 36 модуля управления. Теперь очередной импульс с третьего входа 42 синхронизации устройства, проходя через открытый элемент И 36, поступает на первые
R-входы всех триггеров 33.1-33.N. Но в нулевое (исходное) состояние устанавливаются только те из них, на вторые R-входы которых также поданы единичные потенциалы, единичные потенциалы в данный момент времени на R-входы тех триггеров, которые участвовали в установлении данной связи i-го и j.-ro модулей, т.е. на входы тех триггеров, которые переведены в единичное состояние по запросу i-го модуля.
Так как в данный момент времени на выходе счетчика стоит адрес модуля 1,i, а на выходе 38 ответа — адрес модуля 1,j, то на выходе блока 30 памяти стоит та комбинация, которая записана в группы триггеров.
Теперь она с приходом очередного импульса с выхода 42 синхронизации уничтожается. В исходное состояние возвращаются все задействованные группы триггеров, но только те из них, которые задействованы для обеспечения обмена между i-w.и j-м модулями обмена. Триггеры, обеспечивающие другие обмены, сохраняют свое единичное состояние.
Таким образом, на входы 28.1-28.3 управления обменом всех модулей 1 обмена, участвовавших в этой операции передачи данных, поступают нули — модули свободны. и вновь принимают участие в опросе. В модуле 1Л обмена единица, появившаяся на выходе элемента И 18, переводит триггер 7 сброса в исходное нулевое состояние. Одновибратор 8 по единичному перепаду потенциала, образовавшемуся на его входе, вырабатывает единичный импульс, который обнуляет регистр 4, снимая тем самым запрос на передачу данного модуля 1.i обмена. Обнуление триггера 7 сброса и регистра
4 происходит еще до прихода очередного ления и данных микроЭВМ 3 с правым входвыходом 25 шины управления и данных модуля. Кроме того, единица появляется и на выходе первого коммутатора 23 и поступает на второй вход 3.4 прерываний микроЭВМ 5
3, На входы 28.1-28.3 управления обменом модуля-приемника 1.J обмена должен s этом случае поступить код 110 — прием слева. Тем самым с помощью элемента И 20 1 выводятся из высокоимпедансного состояния блоки 9 и 10 магистральных элементов, подключающие вход-выход 3.1 шины управления и данных микроЭВМ 3 к левому входвыходу 24 модуля 1.j обмена. На выходе 15 второго коммутатора 22 также появляется. единица, поступающая на первый вход 3.3 прерывания микроЭВМ 3. Таким образом, входы-выходы 3.1 двух микроЭВМ оказыва- ются соединенными между собой, 20
Далее микроЭВМ i-ro u j-го модулей обмена начинает отрабатывать подпрограммы прерываний. Отработка подпрограммы прерываний как s микроЭВМ вЂ” инициаторе обмена, так и в микроЭВМ вЂ” получателе 25 данных заключается в выполнении следующих операций: прекращение выполнения рабочей программы.и принятие мер, исклю-. чающих потерю информации, установление синхронизации, а точнее аппаратной связи 30 между микроЭВМ вЂ” источником (инициатором) и микроЭВМ вЂ” получателем данных через общую теперь шину управления и данных (шина содержит разряды управления и разряды данных), и прекращение обмена. 35
Первая операция типичная при выпол- " . нении любой подпрограммы прерывания.
Остановимся на второй. Под операцией установления синхронизации подразумевается выполнение всех необходимых 40 операций, выполняемых микроЭВМ программно, необходимых для перевода микроЭВМ в такой режим, в котором она способна передавать(принимать) данные от другой микроЭВМ, используя имеющиеся 45 аппаратные средства и связи, осуществляемые с помощью шины управления.
Например, микроЭВМ может осуществлять системный обмен, обращаясь к другим . микроЭВМ как к периферийному устройст- 50 ву, для обращения к которому необходимо. записать какой-либо отличный от нуля адрес во внешний регистр (т.е. регистр 4), и далее, выполняя, если это возможно, рабочую программу, ждать сигнала разрешения (сигнал, 55 поступающий на второй вход прерывания) на передачу данных. МикроЭВМ вЂ” получатель, получив сигнал на первом входе пре-. рывания, прекращает выполнение основной программы, становясь периферийным устройством, готовым принимать данные, передаваемые ему процессором.
Сигналы, подтверждающие готовность приемной и передающей ЭВМ, и другие сигналы, необходимые при такой операции, и входят в шину управления. Данные передаются теперь по общей для двух микроЭВМ
1718226
40
55 импульса на первый вход 40 синхронизации устройства.
Кроме того. с приходом на входы 28.128.3 управления обменом i-ro u j-го модулей
1 обмена нулей снимаются единичные сигналы соответственно с второго 3.4 и первого
3.3 входов прерываний данных модулей, сообщая тем самым последним, что они могут вернуться к выполнению прерванной программы — обмен данными закончен. Все блоки 9-14 магистральных элементов моду-. лей 1 обмена участвовавших в этой передаче данных, переходят в высокоимпедансное состояние. Далее устройство работает аналогично указанному, Технико-экономическое преимущество предлагаемого устройства по сравнению с известным заключается в увеличении скорости обмена при обмене данными между модулями системы, Реализация магистрально-кольцевого принципа обмена позволяет обеспечить одновременный обмен данными между более чем одной парой модулей системы при общем количестве модулей более трех и осуществить обмен данными по обходному пути при повреждении магистрали на одном месте. В случае повреждения магистрали. обмена в более чем одном месте система разбивается на несколько независимых систем меньшего объема, внутри которых возможен обмен данными, для реализации этого необходима лишь замена информации блока 30 памяти на соответствующую данному состоянию системы.
Например, распределенная управляющая система, состоящая из N микроЭВМ, должна для решения задачи осуществить по одному обмену между каждой парой микроЭВМ. Для этого требуется выполнить N(N-1) обменов данными. Пусть N=6, тогда количество обменов равно 30. общее время, затрачиваемое на .обмен, равно 30t, где t— среднее время одного обмена. При реализации магистрально-кольцевого принципа обмена при N=6 возможно до трех одновременных обманов в сети. Те же 30 обменов могут быть выполнены за время, равное 14t. Это число получают исходя иэ следующих соображений. Если каждый модуль обмена должен обменяться с каждым лишь одним сообщением, то, следовательно, каждый модуль обмена должен передать пять сообщений, захватывая при этом участок кольца, длина которого зависит от того, какому модулю передаются данные (длина сообщения). Пусть по количеству передаваемых данных, а следовательно, и времени передачи все сообщения (t) всех модулей равны. Тогда можем записать, что каждый модуль должен передать пять сообщений длиной 4, 3, 3, 2, 2: самому дальнему от него, двум расположенным вправо и влево от него через один модуль обмена и двум ближайшим соседям, В устройстве одвременно может осуществляться как минимум два обмена при благоприятном стечении обстоятельств.
Например, если первый модуль обменивается с четвертым (через второй, третий), то одновременно может обмениваться пятый с шестым. Таким образом, за время t может быть выполнено два обмена данными. В случае же обмена первого с вторым, третьего с четвертым, пятого с шестым выполняется одновременно три обмена за время t. Минимально возможное время обмена в магистрально-кольцевой структуре существенно меньше времени обмена аналогичными сообщениями в структуре с общей шиной (8 и
12 при N=4, 18 и 30 при N=6), Это максимальный выигрыш, который возможно получить.
Статистические исследования показывают, что в среднем за один элементарный цикл работы устройства может быть удовлетворено два запроса.
При оптимальном размещении задачи в системе, при котором большие объемы передаются на маленькие расстояния (в лучшем случае — между ближайшими соседями), а на большие передаются лишь короткие сообщения, либо в случае поблочного решения задачи, когда каждый блок задачи решается в рамках нескольких соседних микроЭВМ, а между блоками производится лишь обмен короткими результатаМи, то выигрыш во времени обмена (скорости обмена) более значительный. Причем.чем больше N, тем больше вероятность и количество одвновременно существующих обменов, но при соответствующем размещении задач, что ведет к увеличению в целом скорости обмена данными в устройстве.
Формула изобретения
Устройство обмена данными распределенной управляющей системы, содержащее группу из N (где N — число внешних устройств) модулей обмена и блок управления, содержащий счетчик адреса и элемент ИИЛИ-НЕ, первый вход синхронизации устройства соединен со счетным входом счетчика адреса, о т л и ч а ю щ е е с я тем, что, с целью увеличения скорости обмена данными между модулями обмена за счет организации магистрально-кольцевого способа обмена данными с обеспечением возможности параллельного обмена между модулями обмена, в блок управления введе17
1718226 ны блок памяти, Nгрупп триггеров,,по три триггера в каждой, первая и вторая группы из N элементов ИЛИ, элемент И, выход которого соединен с первыми входами сброса всех триггеров всех групп, выходы тригге- 5 ров каждой группы соединены соответственно с первым, вторым и третьим входами управления обменом соответствующего модуля обмена и с первым, вторым и третьим входами соответствующего элемента ИЛИ 10 первой группы, выход которого соединен с первым входом соответствующего элемента:
И элемента И-ИЛИ-Н Е,.выход которого соединен с первыми (-входами триггеров трупп, второй вход синхронизации устрой- 15 ства соединен с входами синхронизацйи триггеров групп, третий вход синхронизации устройства соединен с первым входом элемента И, второй вход которого соединен . с выходами признака окончания обмена 20 всех модулей обмена, информационные выходы счетчика адреса соединены с входами. старших разрядов адреса блока памяти и t: .. входами адреса опрашиваемого модуля
25 каждого модуля обмена, входы младших разрядов адреса блока памяти соединены с выходами адреса абонента модулей обмена, информационные выходы блока памяти объединены в N групп по три выхода в каждой, выходы каждой из групп информационных выходов блока памяти соединены соответственно с первым, вторым и третьим входами соответствующего элемента ИЛИ второй группы и вторыми 1-водами соответствующего триггера соответствующей группы триггеров, выход каждого элемента ИЛИ второй группы соединен с вторым входом соответствующего элемента И элемента ИИЛИ-НЕ, первые (правые) входы-выходы управления и данных I-ro (где i=1 ... N) модуля обмена соединены соответственно с вторыми (левыми) входами-выходами. управления и данных (i+1)-ro модуля обмена, а первые входы выходы управления и данных N-го модуля обмена соединены с вторыми входами-выходами управления иданных первого модуля обмена.
1718226
Редактор И.Шулла
Заказ 883 Тираж Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., 4/5
Составитель В.Литвиненко
Техред M,Moðãåíòàë Корректор Э.Лончакова
Производственно-издательский комбинат "Патент"; г. Ужгород, ул.Гагарина, 101
1 I