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

Реферат

 

Изобретение относится к области вычислительной техники и может найти применение при построении средств коммутации многопроцессорных вычислительных и управляющих систем, абонентских систем связи с децентрализованным управлением, систем сбора информации и информационно-измерительных систем. Техническим результатом является расширение области применения устройства на основе включения в его состав средств для организации вещательных режимов обмена сообщениями в коммуникационной сети, а именно: режимов вещания в текущем столбце, вещания в текущей строке и вещания на все модули сети. Устройство содержит три блока организации очереди сообщений, блок анализа очередей сообщений, мультиплексор, дешифратор, блок синхронизации, регистр, триггер, регистр адреса, два элемента сравнения, блок управления передачей сообщений, коммутатор, три блока элементов И, два элемента запрета. 2 з. п. ф-лы, 1 табл. , 6 ил.

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

Известно устройство для формирования маршрута сообщения в однородной вычислительной системе, содержащее девять буферных запоминающих блоков, блок считывания информации, блок памяти констант, регистр, демультиплексор, два блока сравнения, блок элементов И, блок элементов ИЛИ, элемент ИЛИ, элемент И, блок синхронизации (а. с. 1462344 СССР, G 06 F 15/16; опубл. 28.02.89, БИ N 8).

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

Наиболее близким к предлагаемому модулю коммуникационной сети, предназначенному для передачи сообщений, обмена сообщениями и организации вещательных режимов обмена сообщениями, по технической сущности является модуль матричного коммутатора, содержащий три блока организации очередей сообщений, регистр идентификатора модуля, блок анализа очереди сообщений, мультиплексор, регистр, демультиплексор, триггер, блок синхронизации, два элемента сравнения, два дешифратора, элемент И (а. с. 1575167 СССР, G 06 F 7/00, 15/16; опубл. 30.06.90, БИ N 24).

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

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

Техническая задача решается тем, что в модуль коммуникационной сети, предназначенный для передачи сообщений, обмена сообщениями и организации вещательных режимов обмена сообщениями, содержащий блоки организации очереди сообщений с первого по третий, блок анализа очередей сообщений, мультиплексор, дешифратор, блок синхронизации, регистр, триггер, регистр адреса, первый и второй элементы сравнения, причем информационные входы модуля с первого по третий соединены с информационными входами блоков организации очереди сообщений с первого по третий соответственно, первые выходы которых подключены к информационным входам мультиплексора с первого по третий соответственно, выход которого соединен с информационным входом регистра, вторые выходы блоков организации очереди сообщений с первого по третий подключены к входам блока анализа очередей сообщений с первого по третий соответственно, первый выход которого подключен к адресному входу мультиплексора и к входу дешифратора, выходы с первого по третий которого соединены с управляющими входами блоков организации очереди сообщений с первого по третий соответственно, второй выход блока анализа очередей сообщений подключен к входу установки триггера, прямой выход которого подключен к входу блока синхронизации, первый выход которого соединен с входом синхронизации регистра, первый и второй адресные выходы которого подключены к вторым входам первого и второго элементов сравнения соответственно, первые входы которых соединены с первым и вторым выходами регистра адреса соответственно, дополнительно введены блок управления передачей сообщений, коммутатор, с первого по третий блоки элементов И, первый и второй элементы запрета, причем первый выход блока синхронизации подключен к входам синхронизации блоков организации очереди сообщений с первого по третий, второй выход блока синхронизации соединен с прямым входом первого элемента запрета, инверсный вход и выход которого подключены к второму выходу блока анализа очередей сообщений и к входу сброса триггера соответственно, выходы первого и второго элементов сравнения соединены с первым и вторым входами блока управления передачей сообщений соответственно, четвертый, первый и второй выходы которого подключены к управляющим входам первого, второго и третьего блоков элементов И соответственно, второй выход блока синхронизации соединен с первыми разрядами информационных входов блоков элементов И с первого по третий, разряды с второго по (s+1)-й информационных входов которых (где s - разрядность информационной части сообщения) подключены к информационному выходу регистра, первый адресный выход которого соединен с (s+2)-го по (s+u+1)-й разрядами (где разрядность поля номера строки сообщения, m - число строк коммуникационной сети, ближайшее целое число, не меньшее z) информационных входов второго и третьего блоков элементов И, выход первого блока элементов И подключен к первому информационному выходу модуля, второй выход регистра адреса подключен к первому информационному входу коммутатора, выход которого соединен с (s+u+2)-ro по (s+u+v+1)-й разрядами (где разрядность поля номера столбца сообщения, n - число столбцов коммуникационной сети) информационного входа второго блока элементов И, второй адресный выход регистра подключен к второму информационному входу коммутатора и к разрядам с (s+u+2)-го по (s+u+v+1)-й информационного входа третьего блока элементов И, первый выход признака режима, второй выход признака режима и выход признака начала передачи регистра подключены к третьему, четвертому и пятому входам блока управления передачей сообщений соответственно, третий и пятый выходы которого соединены с инверсным входом второго элемента запрета и управляющими входами коммутатора соответственно, первый выход признака режима регистра подключен к (s+u+v+2)-му разряду информационного входа третьего блока элементов И и к прямому входу второго элемента запрета, выход которого соединен с (s+u+v+2)-м разрядом информационного входа второго блока элементов И, второй выход признака режима регистра подключен к (s+u+v+3)-м разрядам информационных входов второго и третьего блоков элементов И, выходы которых соединены с младшими разрядами второго и третьего информационных выходов модуля соответственно, старший разряд которых соединен с шиной логического нуля.

Сущность изобретения поясняется чертежами, где на фиг. 1 представлена функциональная схема модуля коммуникационной сети, предназначенного для передачи сообщений, обмена сообщениями и организации вещательных режимов обмена сообщениями; на фиг. 2 изображена функциональная схема блока организации очереди сообщений; на фиг. 3 показана функциональная схема блока анализа очередей сообщений; на фиг. 4 приведена функциональная схема блока управления передачей сообщений; на фиг. 5 даны форматы адресной части сообщений для различных режимов; на фиг. 6 отображена структурная схема коммуникационной сети.

Общие особенности изобретения состоят в следующем.

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

Аналогично прототипу предлагаемый модуль позволяет организовать попарный обмен сообщениями, при котором каждое сообщение передается от модуля-источника только одному модулю сети (приемнику). Дополнительно, в соответствии с заявляемой технической задачей, модуль реализует три вещательных режима обмена сообщениями: вещание в текущем столбце; вещание в текущей строке; вещание на все модули сети. Идентификация реализуемого режима при этом обеспечивается значениями специальных признаков режима P1 и P2, включенных в адресную часть сообщения. P1P2 = "00" соответствует попарному обмену, P1P2 = "01" - вещанию в текущем столбце, P1P2 = "10" - вещанию в текущей строке, P1P2 = "11" - вещанию на все модули сети. Соответствующие форматы адресной части сообщения представлены на фиг. 5.

Передача сообщения в указанных режимах происходит следующим образом.

При попарном обмене адресная часть сообщения имеет формат Ф1 и включает адрес ab модуля-приемника, где а - номер строки, b - номер столбца сети, содержащих модуль-приемник. Аналогично прототипу сообщение выдается источником вправо (фиг. 6) и сначала движется слева направо вдоль текущей строки до столбца b, а затем - снизу вверх вдоль столбца b до строки а.

В случае вещания в текущем столбце адресная часть сообщения имеет формат Ф2 (фиг. 5) и содержит непосредственно адрес a*b* источника. Сообщение выдается источником вверх (фиг. 6) и движется вдоль столбца b*. При движении сообщения модули столбца b* читают информационную часть сообщения и осуществляют его дальнейшую передачу. Таким образом сообщение перемещается вплоть до возврата модулю-источнику, после чего уничтожается.

При вещании в текущей строке адресной части сообщения соответствует формат ФЗ (фиг. 5) и адресная часть так же, как и при вещании по столбцу, включает адрес a*b* источника. Однако теперь сообщение выдается источником вправо (фиг. 6) и движется вдоль строки a*. В ходе движения сообщения модули строки a* читают его информационную часть и передают сообщение дальше по строке a*. Так сообщение перемещается вплоть до возврата источнику, после чего источник уничтожает сообщение.

В режиме вещания на все модули сети адресная часть сообщения содержит адрес a*b* модуля-источника и имеет формат Ф4 (фиг. 5). Сообщение выдается источником вправо и передается вдоль строки a* (фиг. 6). Одновременно источник выдает это же сообщение вверх, изменяя при этом значение P1P2 = "11" на "01". Таким образом, источник фактически генерирует два сообщения: первое (у которого P1P2 = "11") движется по строке a*, второе (у которого P1P2 = "01") - по столбцу b*. Обработка второго из названных сообщений осуществляется аналогично описанному выше (см. режим вещания в текущем столбце). Первое сообщение обрабатывается следующим образом. При поступлении сообщения в d-й модуль строки a* (модуль a*d), d= 1, 2, . . . , n, db*, этот модуль читает его информационную часть и выдает сообщение следующему модулю строки a*. Одновременно модуль a*d модифицирует сообщение, устанавливая в его адресной части 1P2 = "01" и заменяя номер столбца b* на d, и выдает модифицированное сообщение вверх по d-му столбцу сети (инициирует вещание сообщения в d-м столбце). Передача и обработка модифицированного сообщения осуществляется как в режиме вещания в текущем столбце (см. выше) с тем лишь отличием, что источником сообщения считается модуль a*d. Между тем первое сообщение возвращается в модуль a*b* и уничтожается.

Способ обработки сообщений, поступающих в модуль сети, задается их форматом и определяется в результате анализа соотношения адреса приемника (источника) сообщения и адреса текущего модуля, значений признаков P1, P2, а также значения признака q начала передачи сообщения (фиг. 5), назначение которого состоит в идентификации текущей фазы передачи сообщения: q= 1 в начале передачи сообщения (до его выдачи модулем-источником); q= 0 после выдачи сообщения источником следующему модулю сети. Для реализации анализа в состав модуля коммуникационной сети (фиг. 1) введен блок 9 управления передачей сообщений. Блок 9 вырабатывает значения пяти булевых функций Y1, Y2, Y3, Y4, Y5. Набор этих значений определяет способ обработки сообщения.

Модуль коммуникационной сети, предназначенный для передачи сообщений, обмена сообщениями и организации вещательных режимов обмена сообщениями (фиг. 1), включает первый 1.1, второй 1.2 и третий 1.3 блоки организации очереди сообщений, блок 2 анализа очередей сообщений, мультиплексор 3, дешифратор 4, блок 5 синхронизации, регистр 6, триггер 7, регистр 8 адреса, блок 9 управления передачей сообщений, первый 10 и второй 11 элементы сравнения, коммутатор 12, первый 13.1, второй 13.2 и третий 13.3 блоки элементов И, первый 15 и второй 14 элементы запрета, причем информационные входы 16.1-16.3 модуля соединены с информационными входами блоков 1.1-1.3 организации очереди сообщений соответственно, первые выходы которых подключены к информационным входам мультиплексора 3 с первого по третий соответственно, выход которого соединен с информационным входом регистра 6, вторые выходы блоков 1.1-1.3 организации очереди сообщений подключены к входам блока 2 анализа очередей сообщений с первого по третий соответственно, первый выход которого подключен к адресному входу мультиплексора 3 и к входу дешифратора 4, выходы с первого по третий которого соединены с управляющими входами блоков 1.1-1.3 организации очереди сообщений соответственно, второй выход блока 2 анализа очередей сообщений подключен к входу установки триггера 7, прямой выход которого подключен к входу блока 5 синхронизации, первый выход которого соединен с входом синхронизации регистра 6, первый 6.2 и второй 6.3 адресные выходы которого подключены к вторым входам элементов 10 и 11 сравнения соответственно, первые входы которых соединены с выходами 8.1 и 8.2 регистра 8 адреса соответственно, первый выход блока 5 синхронизации подключен к входам синхронизации блоков 1.1-1.3 организации очереди сообщений, второй выход блока 5 синхронизации соединен с прямым входом элемента 15 запрета, инверсный вход и выход которого подключены к второму выходу блока 2 анализа очередей сообщений и к входу сброса триггера 7 соответственно, выходы элементов 10 и 11 сравнения соединены с первым и вторым входами блока 9 управления передачей сообщений соответственно, четвертый, первый и второй выходы которого подключены к управляющим входам блоков элементов И 13.1, 13.2 и 13.3 соответственно, второй выход блока 5 синхронизации соединен с первыми разрядами информационных входов блоков элементов И 13.1- 13.3, разряды с второго по (s+1)-й информационных входов которых подключены к информационному выходу 6.1 регистра 6, первый адресный выход 6.2 которого соединен с (s+2)-го по (s+u+1)-й разрядами информационных входов блоков элементов И 13.2 и 13.3, выход блока элементов И 13.1 подключен к информационному выходу 17.1 модуля, выход 8.2 регистра 8 адреса подключен к первому информационному входу коммутатора 12, выход которого соединен с (s+u+2)-ro по (s+u+v+1)-й разрядами информационного входа блока элементов И 13.2, второй адресный выход 6.3 регистра 6 подключен к второму информационному входу коммутатора 12 и к разрядам с (s+u+2)-ro по (s+u+v+1)-й информационного входа блока элементов И 13.3, первый выход 6.4 признака режима, второй выход 6.5 признака режима и выход 6.6 признака начала передачи регистра 6 подключены к третьему, четвертому и пятому входам блока 9 управления передачей сообщений соответственно, третий и пятый выходы которого соединены с инверсным входом элемента 14 запрета и управляющими входами коммутатора 12 соответственно, первый выход 6.4 признака режима регистра 6 подключен к (s+u+v+2)-му разряду информационного входа блока элементов И 13.3 и к прямому входу элемента 14 запрета, выход которого соединен с (s+u+v+2)-м разрядом информационного входа блока элементов И 13.2, второй выход 6.5 признака режима регистра 6 подключен к (s+u+v+3)-м разрядам информационных входов блоков элементов И 13.2 и 13.3, выходы которых соединены с младшими разрядами информационных выходов 17.2 и 17.3 модуля соответственно, старший разряд которых соединен с шиной 17.4 логического нуля.

Блок 1. i организации очереди сообщений, i= 1, 2, 3 (фиг. 2) содержит регистры 18.1-18. K (где K - максимальная длина очереди сообщений), блоки элементов ИЛИ 19.1-19. K-1, демультиплексор 20, первую группу элементов И 22.1-22. K, вторую группу элементов И 21.1-21. K, группу элементов ИЛИ 23.1-23. K, регистр 24 длины очереди, элемент И 25, элемент И- НЕ 26, элемент ИЛИ 27, элемент 28 задержки, причем прямые выходы регистров 18.2-18. K подключены к первым входам блоков элементов ИЛИ 19.1-19. K-1 соответственно, выходы которых подключены к информационным входам регистров 18.1-18. K-1 соответственно, управляющий вход и вход синхронизации блока соединены с первым и вторым входами элемента И 25 соответственно, выход которого подключен к управляющему входу демультиплексора 20 и к первому входу элемента ИЛИ 27, выход которого соединен с входом элемента 28 задержки, выход которого подключен к входу синхронизации регистра 24 длины очереди, выход которого подключен к младшим разрядам второго выхода блока, инверсные выходы регистров 18.1-18. K соединены с входами элементов И 22.1-22. K соответственно, выходы которых подключены к первым входам элементов И 21.1-21. K соответственно, к адресному входу демультиплексора 20, к информационному входу регистра 24 длины очереди и к входу элемента И-НЕ 26, выход которого соединен со старшим разрядом второго выхода блока, старшие разряды информационного входа блока соединены с информационным входом демультиплексора 20, выходы с первого по (K-1)-й которого подключены к вторым входам блоков элементов ИЛИ 19.1-19. K-1 соответственно, K-й выход демультиплексора 20 соединен с информационным входом регистра 18. K, прямой выход регистра 18.1 соединен с первым выходом блока, младший разряд информационного входа блока подключен к второму входу элемента ИЛИ 27 и к вторым входам элементов И 21.1-21. K, выходы которых соединены с первыми входами элементов ИЛИ 23.1-23. K соответственно, выход элемента И 25 подключен к вторым входам элементов ИЛИ 23.1-23. K, выходы которых соединены с входами синхронизации регистров 18.1-18. K соответственно.

Блок 2 анализа очередей сообщений (фиг. 3) включает узел 29 постоянной памяти, первый 30.1, второй 30.2 и третий 30.3 элементы сравнения, элемент ИЛИ 31, причем старшие разряды первого-третьего входов блока соединены с входом элемента ИЛИ 31, выход которого является вторым выходом блока, младшие разряды первого входа блока подключены к первому входу элемента 30.1 сравнения и к второму входу элемента 30.3 сравнения, младшие разряды второго входа блока подключены к первому входу элемента 30.2 сравнения и к второму входу элемента 30.1 сравнения, младшие разряды третьего входа блока подключены к первому входу элемента 30.3 сравнения и к второму входу элемента 30.2 сравнения, выходы элементов 30.1-30.3 сравнения соединены с первой-третьей группами входов узла 29 постоянной памяти соответственно, выход которого является первым выходом блока.

Блок 9 управления передачей сообщений (фиг. 4) содержит первый 32, второй 33, третий 34, четвертый 35, пятый 36, шестой 37, седьмой 38, восьмой 39, девятый 40, десятый 41, одиннадцатый 42 элементы И, первый 43 и второй 44 элементы запрета, первый 45, второй 46, третий 47, четвертый 48 и пятый 49 элементы ИЛИ, первый 50, второй 51 и третий 52 элементы ИЛИ-НЕ, элемент НЕ 53, причем первый вход блока соединен с входом элемента НЕ 53, выход которого подключен к первому входу элемента ИЛИ 45, третий вход блока соединен с первым входом элемента И 32, с инверсным входом элемента 43 запрета и с первым входом элемента ИЛИ-НЕ 50, выход которого подключен к прямому входу элемента 44 запрета, пятый вход блока подключен к второму входу элемента ИЛИ 45, выход которого соединен с первым входом элемента И 33, выход которого подключен к первому входу элемента ИЛИ 46, второй вход блока подключен к инверсному входу элемента 44 запрета, к первому входу элемента ИЛИ 47 и к первому входу элемента И 34, четвертый вход блока соединен с вторым входом элемента ИЛИ-НЕ 50 и с прямым входом элемента 43 запрета, выход которого подключен к второму входу элемента И 33, выход элемента НЕ 53 соединен с первым входом элемента И 35, выход которого подключен к второму входу элемента ИЛИ 46, выход которого является первым выходом блока, четвертый вход блока подключен к первому входу элемента И 36, второй вход и выход которого соединены с выходом элемента И 37 и с третьим входом элемента ИЛИ 46 соответственно, выход элемента ИЛИ-НЕ 50 подключен к второму входу элемента И 34, выход которого соединен с вторым входом элемента И 35, выход элемента 44 запрета подключен к первому входу элемента ИЛИ 48, выход которого соединен с вторым выходом блока, третий вход блока соединен с первым входом элемента И 37, выход которого подключен к второму входу элемента ИЛИ 48, первый вход блока соединен с первым входом элемента ИЛИ-НЕ 51 и с первым входом элемента И 38, второй вход и выход которого подключены к выходу элемента И 34 и к первому входу элемента ИЛИ 49 соответственно, выход элемента 43 запрета соединен с первым входом элемента И 39, второй вход и выход которого подключены к выходу элемента ИЛИ-НЕ 51 и к второму входу элемента ИЛИ 49 соответственно, выход элемента ИЛИ 49 подключен к четвертому выходу блока, третий вход блока соединен с первым входом элемента И 40, выход которого подключен к третьему входу элемента ИЛИ 49, второй вход блока соединен с первым входом элемента ИЛИ-НЕ 52, выход которого подключен к второму входу элемента И 40, пятый вход блока подключен к вторым входам элементов ИЛИ-НЕ 51, 52 и к второму входу элемента ИЛИ 47, выход которого соединен с вторым входом элемента И 37, четвертый вход блока соединен с вторым входом элемента И 32, выход которого подключен к первым входам элементов И 41, 42, вторые входы которых соединены с выходами элементов ИЛИ 48 и 49 соответственно, а выходы являются третьим и пятым выходами блока соответственно.

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

Блоки 1.1-1.3 организации очереди сообщений служат для приема, хранения и выдачи сообщений, поступающих с входов 16.1-16.3 модуля соответственно, в порядке их поступления. Первое принятое в блок 1. i, i = 1, 2, 3, сообщение появляется на первом выходе этого блока. На втором выходе блока 1. i формируется код длины очереди принятых сообщений.

Блок 2 анализа очередей сообщений предназначен для сравнения длин очередей сообщений в блоках 1.1-1.3 и выбора блока с наибольшей очередью сообщений. Код номера выбранного блока образуется на первом выходе блока 2. На втором выходе блока 2 формируется сигнал-признак наличия сообщений в блоках 1.1-1.3.

Мультиплексор 3 осуществляет коммутацию сообщений из блоков 1.1-1.3 на информационный вход регистра 6.

Дешифратор 4 служит для преобразования кода с первого выхода блока 2 в соответствующий унитарный код.

Блок 5 синхронизации предназначен для формирования двух непересекающихся последовательностей импульсов t1, t2, синхронизирующих работу различных узлов модуля.

Регистр 6 обеспечивает хранение считываемых из блоков 1.1-1.3 сообщений во время анализа их адресной части. Регистр 6 имеет шесть выходов: 6.1 - информационный выход; 6.2 - первый адресный выход; 6.3 - второй адресный выход; 6.4 - первый выход признака режима; 6.5 - второй выход признака режима; 6.6 - выход признака начала передачи. С выхода 6.1 снимается информационная часть сообщений; на выходах 6.2 и 6.3 формируются номера (коды номеров) соответственно строки a (a*) и столбца b (b*) модулей-приемников (или источников) сообщений; на выходах 6.4 и 6.5 образуются признаки режима P1 и P2 соответственно; с выхода 6.6 снимается признак q начала передачи сообщения.

Триггер 7 служит для управления работой блока 5 (единичное состояние триггера 7 включает блок 5, нулевое - выключает).

Регистр 8 адреса предназначен для постоянного хранения адреса (cd) текущего модуля. Номер строки (c) текущего модуля снимается с выхода 8.1, а номер столбца (d) - с выхода 8.2 регистра 8.

Блок 9 управления передачей сообщений необходим для анализа соотношения адреса приемника (источника) сообщения и адреса текущего модуля, а также значений признаков P1, P2 и q с выходов 6.4, 6.5 и 6.6 регистра 6 соответственно, и формирования значений функций Y1-Y5, определяющих способ обработки сообщения. Выражения для функций Y1-Y5 вместе с описанием действий, инициируемых при их единичных значениях, представлены в таблице (приведена в конце описания).

Элементы 10 и 11 сравнения предназначены для сравнения номеров соответственно строк (a, c или a*, c) и столбцов (b, d или b*, d) модуля-источника (приемника) сообщения и текущего модуля.

Коммутатор 12 служит для реализации замены номера столбца b* модуля-источника на номер столбца d текущего модуля в адресной части сообщения при вещании сообщения на все модули сети.

Блоки элементов И 13.1, 13.2, 13.3 обеспечивают запрещение передачи информационной части сообщения на выход 17.1 модуля и выдачи сообщения на выход 17.2 и выход 17.3 модуля соответственно.

Элемент 14 запрета введен с целью замены значения признака 1 в адресной части сообщения на нулевое при вещании сообщения на все модули сети.

Элемент 15 запрета служит для блокировки поступления импульсов t2 с блока 5 на вход сброса триггера 7 при наличии сообщений хотя бы в одном из блоков 1.1-1.3.

Информационные входы 16.1, 16.2, 16.3 модуля предназначены для приема сообщений от операционного устройства, обслуживаемого модулем, от соседнего модуля слева и от соседнего модуля снизу соответственно.

Информационные выходы 17.1, 17.2, 17.3 модуля служат для выдачи информационной части сообщения операционному устройству, обслуживаемому модулем, и передачи сообщения соседнему модулю сверху и соседнему модулю справа соответственно.

Рассмотрим процесс функционирования предлагаемого модуля. Поскольку модуль предназначен для совместной работы с другими аналогичными модулями в составе коммуникационной сети (фиг. 6), его функционирование будем рассматривать во взаимосвязи с другими модулями. Будем считать, что рассматриваемый модуль расположен в строке с и столбце d коммуникационной сети и, таким образом, имеет адрес cd.

В начальный момент времени триггер 7 и все регистры модуля (фиг. 1, 2) за исключением регистра 8, содержащего адрес c. d модуля, и регистра 24, установленного в единичное состояние, находятся в состоянии логического нуля. На выходах элементов И 22.1-22. К блоков 1.1-1.3 находятся единичные сигналы. Эти сигналы открывают элементы И 21.1-21. К, формируют нулевой сигнал на выходах элементов И-НЕ 26 и обеспечивают подключение информационных входов демультиплексоров 20 к их первым выходам. На втором выходе блока 2 установлен нулевой сигнал, индицирующий отсутствие сообщений в блоках 1.1-1.3. Нулевой сигнал с прямого выхода триггера 7 запрещает формирование импульсов на выходах блока 5. (Цепи начальной установки на фиг. 1, 2 для упрощения условно не показаны. ) Работа модуля начинается с момента поступления на один из входов 16.1, 16.2 или 16.3 модуля сообщения от соответствующего операционного устройства, соседнего модуля слева или соседнего модуля снизу соответственно. Допустим, сообщение поступило на вход 16. i, i{1,2,3}. Далее это сообщение через информационный вход подается в блок 1. i и после записи в указанный блок появляется на его первом выходе (процесс записи сообщения в блок 1. i детально рассмотрен ниже). Одновременно на втором выходе блока 1. i образуется код "1. . . 10", отражающий текущую длину очереди сообщений в данном блоке, а также единичный сигнал, индицирующий наличие сообщений в блоке 1. i. Код "1. . . 10" со второго выхода блока 1. i совместно с кодами "1. . . 11" со вторых выходов блоков 1. j, ji, подаются в блок 2, в результате чего на первом выходе блока 2 образуется код номера блока организации очереди сообщений с наибольшей очередью сообщений (в данном случае это блок 1. i). В то же время единичный сигнал-признак наличия сообщений в блоке 1. i через i-й вход блока 2 (фиг. 3) воздействует на элемент ИЛИ 31 и тем самым формирует на втором выходе блока 2 единичный сигнал. Этот сигнал устанавливает триггер 7 (фиг. 1) в единичное состояние, в результате чего на выходах блока 5 синхронизации начинается генерация импульсов t1, t2. Таким образом, модуль приступает к обработке первого сообщения.

Спустя некоторое время в блоки 1.1-1.3 начинают поступать новые сообщения и в указанных блоках образуются очереди сообщений длины L1-L3 соответственно. Запись очередного сообщения в блок 1. i происходит следующим образом. Очередное сообщение с входа 16. i, i{1,2,3}, модуля через информационный вход блока 1. i проходит на информационный вход демультиплексора 20 (фиг. 2). Так как в блоке 1. i имеется Li сообщений (указанные сообщения размещены в регистрах 18.1-18. Li), на выходах элементов И 22.1-22. Li находятся нулевые сигналы, а на выходах элементов И 22. Li+1-22. K установлены сигналы логической единицы. Сигналы с выходов элементов 22.1-22. K подаются на адресный вход демультиплексора 20 и обеспечивают коммутацию поступившего сообщения на его (Li+1)-й выход. Далее сообщение проходит через блок элементов ИЛИ 19. Li+1 и устанавливается на информационном входе регистра 18. Li+1 (если Li = K-1, то сообщение с демультиплексора 20 непосредственно подается на информационный вход регистра 18. K).

Одновременно на информационный вход блока 1. i поступает импульс, сопровождающий сообщение. Этот импульс проходит через открытые элементы И 21. Li+1-21. K и затем через элементы ИЛИ 23. Li+1-23. K поступает на входы синхронизации регистров 18Li+1-18. K. В результате по заднему фронту рассматриваемого импульса поступившее сообщение заносится в регистр 18. Li+1, после чего на выходе элемента И 22. Li+1 образуется сигнал логического нуля, блокирующий элемент И 21. Li+1. Сигналы с выходов элементов И 22.1-21. K воздействуют на демультиплексор 20 и коммутируют его информационный вход с (Li+2)-м выходом, обеспечивая тем самым возможность записи следующего сообщения в регистр 18. Li+2. В то же самое время, импульс, сопровождающий поступившее сообщение, проходит через элемент ИЛИ 27 и элемент 28 задержки на вход синхронизации регистра 24. В результате по заднему фронту этого импульса в регистре 24 фиксируются значения сигналов с выходов элементов И 22.1-21. K в виде нового кода длины очереди сообщений (длина очереди сообщений в блоке 1. i становится равной Li+1). На этом процесс записи поступившего сообщения в блок 1. i завершается.

Одновременно с записью (приемом) сообщений в блоки 1.1-1.3 происходит считывание ранее принятых сообщений и их обработка. Считывание очередного сообщения осуществляется следующим образом.

Коды длин очередей сообщений со вторых выходов блоков 1.1-1.3 (фиг. 1) поступают в блок 2. Блок 2 анализирует соотношение этих кодов и выдает код номера блока организации очереди сообщений с наибольшей очередью сообщений, например блока 1. i (блок 2 функционирует так же, как и в прототипе, и поэтому его работа подробно не рассматривается). Указанный код подается на адресный вход мультиплексора 3 и обеспечивает прохождение на его выход сообщения из блока 1. i. Одновременно этот же код воздействует на дешифратор 4 и формирует на его выходах соответствующий унитарный код. Далее разряды полученного унитарного кода с соответствующих выходов дешифратора 4 поступают на управляющие входы блоков 1.1- 1.3 соответственно. В результате обеспечивается открытие элемента И 25 блока 1. i (фиг. 2) и блокировка элементов И 25 блоков 1. j, ji.

После окончания описанных процессов на первом выходе блока 5 (фиг. 1) появляется очередной импульс t1. Этот импульс поступает на вход синхронизации регистра 6 и задним фронтом фиксирует считанное из блока 1. i сообщение в регистре 6. На этом процесс считывания очередного сообщения завершается и осуществляется переход к анализу адресной части и организации выдачи сообщения в соответствии с требуемым режимом.

В ходе анализа происходит сравнение содержимого полей номера строки (выход 6.2 регистра 6) и номера столбца (выход 6.3 регистра 6) сообщения с адресом cd текущего модуля из регистра 8 на элементах 10 и 11 сравнения. Далее сигналы (признаки сравнения) с выходов элементов 10 и 11 сравнения вместе с признаками P1, P2 и q с выходов 6.4, 6.5 и 6.6 регистра 6 соответственно передаются на входы блока 9. Блок 9 (фиг. 4) вырабатывает значения функций Y1-Y5 в соответствии с таблицей. Указанные значения воздействуют (фиг. 1) на коммутатор 12, блоки элементов И 13.1-13.3 и элемент 14 запрета и обеспечивают передачу сообщения в соответствии с заданным режимом (так как блок 9 фактически является комбинационной схемой, реализующей функции Y1-Y5, его функционирование далее подробно не анализируется).

Рассмотрим процесс выдачи сообщения в каждом из четырех режимов, реализуемых модулем.

Режим 1. Попарный обмен.

В данном режиме сообщение имеет формат Ф1 (фиг. 5). На выходах 6.4 и 6.5 регистра 6 (фиг. 1) появляется нулевой уровень сигнала (P1= P2= "0"), на выходах 6.2 и 6.3 формируются номера соответственно строки (a) и столбца (b) модуля-приемника сообщения.

Номер строки а приемника поступает на второй вход элемента 10 сравнения и сравнивается с номером строки с текущего модуля с выхода 8.1 регистра 8, а номер столбца b приемника подается на второй вход элемента 11 сравнения и сопоставляется с номером столбца d текущего модуля с выхода 8.2 регистра 8. Если a= c (b= d), то на выходе элемента 10 (11) сравнения образуется единичный сигнал, иначе сигнал на выходе элемента 10(11) нулевой.

Далее в зависимости от соотношения номеров а и с, b u d возможны следующие случаи.

1. Если bd (на выходе элемента 11 сравнения находится нулевой сигнал), то согласно таблице Y1= Y3= Y4= Y5= "0", Y2= "1" и сообщение должно быть выдано вправо модулю c(d+1) (если d= n, то сообщение выдается модулю c