Распределительная система для программного управления

Реферат

 

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении управляющих и вычислительных систем высокой производительности, а также АСУТП. Технический результат заключается в расширении области применения распределенной системы за счет введения технических средств, позволяющих осуществить ее реконфигурацию при возникновении отказов отдельных модулей. Технический результат достигается за счет того, что в известную систему, содержащую n x m идентичных модулей, где n - число строк, m - число столбцов, причем i-й модуль системы содержит блок памяти программ, буферный запоминающий блок сообщений, блок анализа, коммутатор адреса, регистр адреса, регистр команд, мультиплексор логических условий, блок синхронизации, первый и второй блоки элементов И, элемент И, дополнительно введены три блока памяти программ, мультиплексор выбора программ, блок выбора алгоритма функционирования, элемент ИЛИ. 4 з.п. ф-лы, 5 табл., 12 ил.

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении управляющих и вычислительных систем высокой производительности, АСУТП, а также других систем, к которым предъявляются жесткие требования по надежности.

Известно модульное устройство для программного управления и контроля, содержащее блок памяти, счетчик адреса, регистр микроопераций, два мультиплексора, два регистра логических условий, два коммутатора, шифратор, два дешифратора, генератор тактовых импульсов, два триггера, регистр номера, демультиплексор, блок элементов ИЛИ, группу элементов ИЛИ, два элемента ИЛИ и два элемента И (а.с. 1647519 СССР G 05 B 19/18, опубл. 07.05.91, БИ N 17).

Недостатком известного устройства является значительное число внешних входов и выходов.

Наиболее близкой к предлагаемому устройству по технической сущности является распределенная система для программного управления технологическими процессами, содержащая nxm каналов (модулей), где n m, n - число модулей в строке матричной организации системы, а m - число строк, причем i-й модуль системы содержит блок памяти программ, буферный запоминающий блок сообщений, блок анализа, коммутатор адреса, регистр адреса, регистр команд, мультиплексор логических условий, блок синхронизации, первый блок элементов И, второй блок элементов И, элемент И, причем первый управляющий вход модуля соединен с первым входом блока синхронизации, первый выход которого соединен с синхронизирующим входом регистра адреса, выход которого соединен со входом блока памяти программ, выход блока памяти программ соединен с информационным входом регистра команд, синхронизирующий вход которого соединен со вторым выходом блока синхронизации, выход поля проверяемых логических условий регистра команд соединен с первым информационным входом мультиплексора логических условий, выход модифицируемого разряда адреса регистра команд соединен со вторым информационным входом мультиплексора логических условий, выход которого соединен со входом модифицируемого разряда адреса первого информационного входа коммутатора адреса, выход которого соединен с информационным входом регистра адреса, вход логических условий модуля соединен с управляющим входом мультиплексора логических условий, выход поля немодифицируемых разрядов адреса регистра команд соединен со входами немодифицируемых разрядов адреса первого информационного входа коммутатора адреса, выход операционного поля регистра команд соединен с информационным входом первого блока элементов И, выход которого соединен с первым информационным выходом модуля, выход поля конца программы регистра команд соединен с прямым и инверсным управляющими входами коммутатора адреса и вторым входом блока синхронизации, второй управляющий вход модуля соединен с третьим входом блока синхронизации, информационный выход буферного запоминающего блока сообщений соединен со вторым информационным входом коммутатора адреса, выход операционного поля регистра команд соединен с информационным входом второго блока элементов И, выход которого и выход элемента И соединены с первым входом блока анализа, управляющий выход которого соединен с управляющим входом буферного запоминающего блока сообщений, управляющий выход которого соединен с четвертым входом блока синхронизации, третий выход которого соединен с первым входом элемента И, выход поля передачи управления регистра команд соединен с инверсным управляющим входом первого блока элементов И, прямым управляющим входом второго блока элементов И и вторым входом элемента И, первый информационный выход блока анализа соединен с первым информационным входом буферного запоминающего блока сообщений, выход поля конца программы регистра команд соединен со вторым управляющим входом буферного запоминающего блока сообщений, первый информационный вход модуля соединен со вторым информационным входом буферного запоминающего блока сообщений, второй информационный вход модуля соединен со вторым входом блока анализа, второй информационный выход которого соединен со вторым информационным выходом модуля, третий информационный вход модуля соединен с третьим входом блока анализа, третий информационный выход которого соединен с третьим информационным выходом модуля, второй информационный выход j-го модуля k-й строки соединен со вторым информационным входом (j+1)-го модуля k-й строки, второй информационный выход n-го модуля k-й строки соединен со вторым информационным входом первого модуля k-й строки, третий информационный выход p-го модуля q-го столбца соединен с третьим информационным входом (p-1)-го модуля, третий информационный выход первого модуля q-го столбца соединен с третьим информационным входом m-го модуля q-го столбца (а.с. 1605212 СССР G 05 B 19/18, опубл. 07.11.90, БИ N 41).

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

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

Техническая задача решается тем, что в распределенную систему для программного управления, содержащую nxm модуле, где n - число строк, m - число столбцов, причем i-й модуль системы содержит первый блок памяти программ, буферный запоминающий блок сообщений, блок анализа, коммутатор адреса, регистр адреса, регистр команд, мультиплексор логических условий, блок синхронизации, первый и второй блоки элементов И, элемент И, причем первый управляющий вход модуля соединен с первым входом блока синхронизации, первый выход которого соединен с синхронизирующим входом регистра адреса, выход которого соединен с входом первого блока памяти программ, синхронизирующий вход регистра команд соединен со вторым выходом блока синхронизации, выход поля проверяемых логических условий регистра команд соединен с первым информационным входом мультиплексора логических условий, выход модифицируемого разряда адреса регистра команд соединен со вторым информационным входом мультиплексора логических условий, выход которого соединен со входом модифицируемого разряда адреса первого информационного входа коммутатора адреса, выход которого соединен с информационным входом регистра адреса, вход логических условий модуля соединен с управляющим входом мультиплексора логических условий, выход поля немодифицируемых разрядов адреса регистра команд соединен со входами немодифицируемых разрядов адреса первого информационного входа коммутатора адреса, выход операционного поля регистра команд соединен с информационным входом первого блока элементов И, выход которого соединен с первым информационным выходом модуля, второй управляющий вход модуля соединен с третьим входом блока синхронизации, информационный выход буферного запоминающего блока сообщений соединен со вторым информационным входом коммутатора адреса, выход операционного поля регистра команд соединен с информационным входом второго блока элементов И, выход которого и выход элемента И соединены с первым информационным входом блока анализа, первый управляющий выход которого соединен с первым управляющим входом буферного запоминающего блока сообщений, управляющий выход которого соединен с четвертым входом блока синхронизации, третий выход которого соединен с первым входом элемента И, выход поля передачи управления регистра команд соединен с инверсным управляющим входом первого блока элементов И, прямым управляющим входом второго блока элементов И и вторым входом элемента И, выход поля конца программы регистра команд соединен с прямым и инверсным управляющими входами коммутатора адреса, вторым входом блока синхронизации и вторым управляющим входом буферного запоминающего блока сообщений, первый информационный выход блока анализа соединен с первым информационным входом буферного запоминающего блока сообщений, первый информационный вход модуля соединен со вторым информационным входом буферного запоминающего блока сообщений, второй информационный вход модуля соединен со вторым информационным входом блока анализа, второй информационный выход которого соединен со вторым информационным выходом модуля, третий информационный вход модуля соединен с третьим информационным входом блока анализа, третий информационный выход которого соединен с третьим информационным выходом модуля, дополнительно введены второй - четвертый блоки памяти программ, мультиплексор выбора программ, блок выбора алгоритма функционирования, элемент ИЛИ, причем входы второго - четвертого блоков памяти программ соединены с выходом регистра адреса, выходы первого - четвертого блоков памяти программ соединены соответственно с первым - четвертым информационными входами мультиплексора выбора программ, выход которого соединен с информационным входом регистра команд, четвертый выход блока выбора алгоритма функционирования соединен с первым управляющим входом мультиплексора выбора программ и с первым управляющим входом блока анализа, пятый выход блока выбора алгоритма функционирования подключен ко второму управляющему входу мультиплексора выбора программ и ко второму управляющему входу блока анализа, третий выход блока выбора алгоритма функционирования соединен с первым входом элемента ИЛИ, выход которого соединен с третьим управляющим выходом модуля, второй управляющий выход блока анализа соединен со вторым входом элемента ИЛИ, четвертый и пятый информационные выходы модуля соединены соответственно с четвертым и пятым информационными входами блока анализа, четвертый и пятый информационные выходы которого соединены соответственно с четвертым и пятым информационными выходами модуля, третий - седьмой управляющие входы модуля соединены соответственно с первым - пятым входами блока выбора алгоритма функционирования, четвертый управляющий вход модуля соединен с третьим управляющим входом блока анализа, первый и второй выходы блока выбора алгоритма функционирования соединены соответственно с первым и вторым управляющими выходами модуля, второй информационный выход j-го модуля k-го столбца соединен со вторым информационным входом (j+1)-го модуля k-го столбца, третий информационный выход (j+1)-го модуля k-го столбца соединен с третьим информационным входом j-го модуля k-го столбца, четвертый информационный выход p-го модуля q-й строки соединен с четвертым информационным входом (p+1)-го модуля q-й строки, пятый информационный выход (p+1)-го модуля q-й строки соединен с пятым информационным входом p-го модуля q-й строки, первый управляющий выход первого модуля k-го столбца соединен с третьим управляющим входом модулей k-го столбца с первого по n-й, первый управляющий выход (j+1)-го модуля k-го столбца соединен с пятым управляющим входом j-го модуля k-го столбца, второй управляющий выход p-го модуля q-й строки соединен с шестым управляющим входом (p+1)-го модуля q-й стоки, второй управляющий выход p-го модуля s-й строки соединен с седьмым управляющим входом (p+1)-го модуля (s+1)-й строки. На шестой управляющий вход модулей первого столбца с первого по n-й, на пятый управляющий вход модулей n-й строки с первого по m-й, на седьмой управляющий вход модулей первой строки с первого по m-й и первого столбца со второго по n-й подается сигнал логического нуля.

Сущность изобретения заключается в следующем. В распределенной системе из nxm модулей n-я строка и m-й столбец являются резервными. Каждый модуль (i, j) (где - номер строки, - номер столбца матрицы, содержащих модуль) может выполнять как собственный алгоритм функционирования, так и алгоритм функционирования трех соседних модулей - верхнего (i-1, j)-го, левого (i, j-1)-го и левого по диагонали (i-1, j-1)-го, в случае их отказов или изменения алгоритмов функционирования. Местоположение модуля (i, j) в матрице определяется его физическим адресом (ФА). Наряду с ФА для идентификации модулей системы используется так называемый логический адрес (ЛА). Модуль (i, j) имеет ЛА (i', j'), если он реализует алгоритм модуля с ФА (i', j'). При отсутствии отказов резервные модули не задействованы (они не имеют собственных алгоритмов функционирования), ФА и ЛА всех модулей совпадают.

При возникновении отказов отдельных модулей распределенная система перестраивается путем изменения алгоритмов функционирования модулей по следующим правилам: в каждом столбце самому нижнему оказавшему модулю присваивается статус "вертикальный отказ", а всем остальным отказавшим модулям - "горизонтальный отказ"; если в любой строке имеется более одного модуля со статусом "горизонтальный отказ", то фиксируется фатальный отказ (ФО) распределенной системы -"перестройка невозможна"; в каждом столбце всем модулям ниже модуля со статусом "вертикальный отказ" (в том числе и резервным) присваивается статус "вертикальная перестройка"; в каждой строке всем модулям правее модуля со статусов "горизонтальный отказ" (в том числе и резервным) присваивается статус "горизонтальная перестройка"; ЛА модулей со статусом "горизонтальная перестройка" приобретают значение ФА модулей, стоящих от них слева; ЛА модулей со статусом "вертикальная перестройка" приобретают значение ФА модулей, стоящих от них сверху; ЛА всех отказавших модулей полагается нулевым.

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

После перестройки, если модуль (i, j) не отказал, то он может выполнять собственный алгоритм, либо алгоритм одного из трех соседей: верхнего (i-1, j)-го, верхнего по диагонали (i-1, j-1)-го или левого (i, j-1)-го. Если алгоритм модуля i, j) не выполняется им самим, то он выполняется одним из его трех соседей: правым (i, j+1)-м, правым по диагонали (i+1, j+1)-м или нижним (i+1, j)-м.

При возникновении новых отказов перестройка распределенной системы осуществляется заново, и так до тех пор, по не произойдет фатальный отказ распределенной системы.

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

При отсутствии в распределенной системе отказов сообщение последовательно передается от модуля-источника в модуль с ФА, равным адресу в сообщении (АС). Этот модуль будет являться модулем-приемником. Передача сообщения сначала осуществляется по столбцу (по вертикали). В ходе передачи каждый транзитный модуль сравнивает свой ЛА с АС. Если они равны, то данный модуль является модулем-приемником и сообщение передано. Иначе, модуль сравнивает вертикальную составляющую своего ФА (т. е. номер соответствующего ему столбца) с вертикальной составляющей АС. Если они не равны, он передает сообщение в соседний по вертикали модуль в сторону уменьшения разницы между вертикальными составляющими адресов. При совпадении вертикальных составляющих АС и ФА модуля направление передачи сообщения меняется на горизонтальное и сообщение аналогичным образом (путем сравнения горизонтальных составляющих ФА модулей и АС) передается по горизонтали в модуль-приемник.

При наличии в распределенной системе отказавших модулей сообщение так же, как и при отсутствии отказов передается сначала в модуль с ФА, равным АС. При этом, так как ЛА модулей могут не совпадать с их ФА, то сообщение может быть принято модулем-приемником до достижения сообщением модуля с ФА, равным АС. Если ЛА модуля с ФА, равным АС, равен АС, то он как и при отсутствии отказов является модулем-приемником. Если они не равны, то, следовательно, алгоритм данного модуля выполняется одним из его трех соседей: правым (i, j+1)-м, правым по диагонали (i+1, j+1)-м или нижним (i+1, j)-м, и модуль-приемник следует искать среди них. Для идентификации этапа поиска модуля-приемника бит обхода в сообщении устанавливается в единицу. Затем сообщение последовательно передается в модуль (i, j+1), из него - в модуль (i+1, j+1) и из последнего - в модуль (i+1, j). При этом каждый модуль сравнивает слой ЛА с АС и в случае их совпадения прекращает передачу сообщения - модуль приемник найден. В случае несовпадения адресов даже в модуле (i+1, j) генерируется фатальный отказ распределенной системы - перестройка системы невозможна.

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

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

Введение элемента ИЛИ необходимо для сборки сигналов о фатальном (неустранимом) отказе системы.

Сущность изобретения поясняется чертежами, где на фиг. 1 представлена функциональная схема i-го модуля распределенной системы для программного управления; на фиг. 2 - функциональная схема блока выбора алгоритма функционирования; на фиг. 3 - функциональная схема буферного запоминающего блока сообщений; на фиг. 4 - функциональная схема блока анализа; на фиг. 5 - функциональная схема блока выбора направления передачи информации; на фиг. 6 - функциональная схема блока памяти константы; на фиг. 7 - функциональная схема блока синхронизации ; на фиг. 8 - функциональная схема блока памяти сообщений; на фиг. 9 - формат команды обработки (а) и формат операционной части команды обмена (б); на фиг. 10 - структурная схема распределенной системы; на фиг. 11 - процесс пошагового выполнения перестройки распределенной системы; на фиг. 12 - процесс передачи сообщения.

i-й модуль распределенной системы для программного управления (фиг. 1) содержит первый 1, второй 12, третий 13 и четвертый 14 блоки памяти программ, блок 16 выбора алгоритма функционирования, буферный запоминающий блок 2 сообщений, блок 3 анализа, коммутатор 4 адреса, регистр 5 адреса, регистр 6 команд, мультиплексор 7 логических условий, мультиплексор 15 выбора программ, блок 8 синхронизации, первый блок элементов И 9, второй блок элементов И 10, элемент И 11, элемент ИЛИ 17, первый 18, второй 19, третий 20, четвертый 21 и пятый 22 информационные входы, первый 23, второй 24, третий 25, четвертый 26, пятый 27, шестой 28 и седьмой 29 управляющие входы, вход 30 логических условий, первый 31, второй 32, третий 33, четвертый 34 и пятый 35 информационные выходы, первый 36, второй 37 и третий 38 управляющие выходы, причем первый управляющий вход 23 модуля соединен с первым входом блока 8 синхронизации, первый выход которого соединен с синхронизирующим входом регистра 5 адреса, выход которого соединен с входами первого 1, второго 12, третьего 13 и четвертого 14 блоков памяти программ, синхронизирующий вход регистра 6 команд соединен со вторым выходом блока 8 синхронизации, выход 61 поля проверяемых логических условий регистра 6 команд соединен с первым информационым входом мультиплексора 7 логических условий, выход 62 модифицируемого разряда адреса регистра 6 команд соединен со вторым информационным входом мультиплексора 7 логических условий, выход которого соединен со входом модифицируемого разряда адреса первого информационного входа коммутатора 4 адреса, выход которого соединен с информационным входом регистра 5 адреса, вход 30 логических условий модуля соединен с управляющим входом мультиплексора 7 логических условий, выход 63 поля немодифицируемых разрядов адреса регистра 6 команд соединен со входами немодифицируемых разрядов адреса первого информационного входа коммутатора 4 адреса, выход 64операционного поля регистра 6 команд соединен с информационным входом блока 9 элементов И, выход которого соединен с первым информационным выходом 31 модуля, второй управляющий вход 24 модуля соединен с третьим входом блока 8 синхронизации, информационный выход буферного запоминающего блока 2 сообщений соединен со вторым информационным входом коммутатора 4 адреса, выход операционного поля 64 регистра 6 команд соединен с информационным входом второго блока 10 элементов И, выход которого и выход элемента И 11 соединены с первым информационным входом блока 3 анализа, первый управляющий выход которого соединен с первым управляющим входом буферного запоминающего блока 2 сообщений, управляющий выход которого соединен с четвертым входом блока 8 синхронизации, третий выход которого соединен с первым входом элемента И 11, выход поля 65передачи управления регистра 6 команд соединен с инверсным управляющим входом блока 9 элементов И, прямым управляющим входом блока 10 элементов И и вторым входом элемента И 11, первый информационный выход блока 3 анализа соединен с первым информационным входом буферного запоминающего блока 2 сообщений, первый информационный вход 18 модуля соединен со вторым информационным входом буферного запоминающего блока 2 сообщений, второй 19, третий 20, четвертый 21 и пятый 22 информационные входы модуля соединены соответственно со вторым - пятым информационными входами блока 3 анализа, второй - пятый информационные выходы которого соединены соответственно со вторым 32, третьим 33, четвертым 34 и пятым 35 информационными выходами модуля, выходы блоков 1, 12, 13 и 14 памяти программ соединены соответственно с первым - четвертым информационными входами мультиплексора 15 выбора программ, выход которого соединен с информационным входом регистра 6 команд, выход поля 66 конца программы регистра 6 команд соединен с прямым и инверсным управляющими входами коммутатора 4 адреса, вторым входом блока 8 синхронизации и вторым управляющим входом буферного запоминающего блока 2 сообщений, четвертый и пятый выходы блока 16 выбора алгоритма функционирования соединены с первым и вторым управляющими входами мультиплексора 15 выбора программ соответственно и с первым и вторым управляющими входами блока 3 анализа соответственно, третий выход блока 16 выбора алгоритма функционирования соединен с первым входом элемента ИЛИ 17, выход которого соединен с третьим управляющим выходом 38 модуля, второй управляющий выход блока 3 анализа соединен со вторым входом элемента ИЛИ 17, третий 25, четвертый 26, пятый 27, шестой 28 и седьмой 29 управляющие входы модуля соединены соответственно с первым - пятым входами блока 16 выбора алгоритма функционирования, четвертый управляющий вход 26 модуля соединен с третьим управляющим входом блока 3 анализа, первый и второй выходы блока 16 выбора алгоритма функционирования соединены соответственно с первым 36 и вторым 37 управляющими выходами модуля, второй информационный выход 32 j-го модуля k-го столбца соединен со вторым информационным входом 19 (j+1)-го модуля k-го столбца, третий информационный выход 33 (j+1)-го модуля k-го столбца соединен с третьим информационным входом 20 j-го модуля k-го столбца, четвертый информационный выход 34 p-го модуля q-й строки соединен с четвертым информационным входом 21 (p+1)-го модуля q-й строки, пятый информационный выход 35 (p+1)-го модуля q-й строки соединен с пятым информационным входом 22 p-го модуля q-й строки, первый управляющий выход 36 первого модуля k-го столбца соединен с третьим управляющим входом 25 модулей k-го столбца с первого по n-й, первый управляющий выход 36 (j+1)-го модуля k-столбца соединен с пятым управляющим входом 27 j-го модуля k-го столбца, второй управляющий выход 37 p-го модуля q-й строки соединен с шестым управляющим входом 28 (p+1)-го модуля q-й строки, второй управляющий выход 37 p-го модуля s-й строки соединен с седьмым управляющим входом 29 (p+1)-го модуля (s+1)-й строки.

Блок 16 выбора алгоритма функционирования (фиг. 2) содержит первый 39, второй 40 и третий 41 элементы И, первый 42 и второй 43 элементы ИЛИ, элемент И-ИЛИ 44, причем выход элемента И-ИЛИ 44 соединен с пятым выходом блока, первый вход блока соединен с прямым входом элемента И 39, выход которого соединен со вторыми входами первой и второй групп входов элемента И-ИЛИ 44 и четвертым выходом блока, второй и третий входы блока соединены с первым и вторым входами элемента ИЛИ 42 соответственно и с первым и вторым входами элемента И 40 соответственно, выход элемента ИЛИ 42 соединен с инверсным входом первого элемента И 39 и первым выходом блока, четвертый вход которого соединен со вторым входом элемента ИЛИ 43, вторым входом элемента И-ИЛИ 44, первый вход второй группы входов которого соединен с пятым входом блока, выход элемента И 40 соединен с первым входом элемента ИЛИ 43 и первым входом элемента И 41, выход которого соединен с третьим выходом блока, выход элемента ИЛИ 43 соединен со вторым выходом блока.

Буферный запоминающий блок 2 сообщений (фиг. 3) содержит коммутатор 45, демультиплексор 46, блок регистров 47.1 - 47.l (где l - максимальная глубина очереди), группу блоков элементов ИЛИ 48.1 - (48.l-1), первую группу элементов И 49.1 - 49.l, вторую группу элементов И 50.1 - 50.l, группу элементов ИЛИ 51.1 - 51.l, элемент ИЛИ 52, элемент И 53, одновибратор 54, причем выход одновибратора 54 соединен с инверсным управляющим входом демультиплексора 46 и первыми входами элементов ИЛИ 51.1 - 51.l, выходы которых соединены с синхронизирующими входами регистров 47.1 - 47.l соответственно, первый управляющий вход блока соединен с прямым и инверсным управляющими входами коммутатора 45, выход которого соединен с информационным входом демультиплексора 46, первый,..., (l-1)-й выходы которого соединены с первыми входами блоков элементов ИЛИ 48.1 - (48.l-1) соответственно, выходы которых соединены с информационными входами регистров 47.1 - (47.l-1) соответственно, l-й выход демультиплексора 46 соединен с информационным входом регистра 47. l, второй управляющий вход блока соединен со входом одновибратора 54, первый информационный вход блока соединен с первым информационным входом коммутатора 45 и первым входом элемента ИЛИ 52, инверсные выходы блока регистров 47.1 - 47.l соединены со входами элементов И 49.1 - 49.l соответственно, выходы которых соединены с первыми входами элементов И 50.1 - 50.l соответственно, адресным входом демультиплексора 46 и входами элемента И 53, выход которого соединен с управляющим выходом блока, второй информационный вход которого соединен со вторым информационным входом коммутатора 45 и вторым входом элемента ИЛИ 52, выход которого соединен со вторыми входами элементов И 50.1 - 50.l, выходы которых соединены со вторыми входами элементов ИЛИ 51.1 - 51.l соответственно, прямые выходы регистров 47.2 - 47.l соединены со вторыми входами блоков элементов ИЛИ 48.1 - (48.l-1) соответственно, прямой выход регистра 47.1 соединен с информационным выходом блока.

Блок 3 анализа (фиг. 4) содержит группу 55.1 - 55.5 блоков памяти сообщений, мультиплексор 56, блок 57 выбора направления передачи информации, блок 58 памяти константы, триггер 59, буферный регистр 60 с полями: операционным 60.1, вертикального адреса 60.2, горизонтального адреса 60.3 и бита обхода 60.4, блок 61.1 элементов И, блок 61.2 элементом И, выходной демультиплексор 62, дешифратор 63, счетчик 64, распределитель импульсов 65, элемент И 66, элемент ИЛИ 67, причем выход элемента ИЛИ 67 соединен с входом установки (S-входом) триггера 59 и инверсным входом элемента И 66, выход которого соединен с входом сброса (R-входом) триггера 59, прямой выход триггера 59 соединен с управляющим входом распределителя импульсов 65, четвертый выход которого соединен со счетным входом счетчика 64, выходы счетчика 64 соединены со входами дешифратора 63 и управляющими входами мультиплексора 56, выход которого соединен с информационным входом буферного регистра 60, синхронизирующий вход которого соединен со вторым выходом распределителя импульсов 65, первый - третий входы блока 58 памяти константы соединены соответственно с первым - третьим управляющими входами блока, первый и второй выходы блока 58 памяти константы соединены соответственно с первым и четвертым входами блока 57 выбора направления передачи информации, второй и третий выходы которого соединены соответственно с первым и вторым управляющими входами выходного демультиплексора 62, второй, третий и пятый входы блока 57 выбора направления передачи информации соединены соответственно с выходами 602, 603 и 604 буферного регистра 60, выход 601 операционного поля буферного регистра 60 и третий выход распределителя импульсов 65 соединены с информационными входами блоков 61.1 и 61.2 элементов И, выход блока 61.2 элементов И соединен с первым информационным выходом блока, а выход блока 61.1 и пятый выход блока 57 выбора направления передачи информации подключены к информационному входу демультиплексора 62, выходы 602 и 603 буферного регистра 60 соединены с информационным входом блока 61.1 элементов И, первый - четвертый выходы демультиплексора 62 соединены соответственно со вторым - пятым информационными выходами блока, первый - пятый информационные входы которого соединены с информационными и первыми управляющими входами блоков 55.1 - 55.5 памяти сообщений соответственно, информационные выходы которых соединены с соответствующими информационными входами мультиплексора 56, управляющие выходы блоков 55.1 - 55.5 памяти сообщений соединены со входами элемента ИЛИ 67, третий выход распределителя импульсов 65 соединен с прямым входом элемента И 66, первый выход блока 57 выбора направления передачи информации соединен с управляющим входом блока 61 элементов И и первым управляющим выходом блока, второй управляющий выход которого соединен с четвертым выходом блока 57 выбора направления передачи информации, первый выход распределителя импульсов 65 соединен с тактовыми входами блоков 55.1 - 55.5 памяти сообщений, выходы дешифратора 63 с 1-го по 5-й соединены со вторыми управляющими входами блоков 55.1 - 55.5 памяти сообщений соответственно.

Блок 57 выбора направления передачи информации (фиг. 5) содержит первую 68, вторую 69 и третью 70 схемы сравнения, мультиплексор 71, шифратор 72, первый 73, второй 74, третий 75, четвертый 76, пятый 77 и шестой 78 элементы И, первый элемент ИЛИ 79, второй элемент ИЛИ 80, причем выход элемента ИЛИ 80 соединен с пятым выходом блока, пятый вход которого соединен со вторым входом элемента ИЛИ 79 и первым входом элемента ИЛИ 80, выход элемента ИЛИ 79 соединен с управляющим входом мультиплексора 71 и третьим входом шестого элемента И 78, выход которого соединен с четвертым выходом блока, первый вход блока соединен с первым входом схемы 68 сравнения, выход "равно" которой соединен с первым выходом блока, второй и третий входы которого соединены соответственно с первыми входами схем 69 и 70 сравнения, четвертый вход блока соединен со вторыми входами схем 69 и 70 сравнения, выход "Больше" схемы 69 сравнения соединен с первым входом первой группы информационных входов мультиплексора 71, выход "Меньше" схемы 69 сравнения соединен со вторым входом первой группы информационных входов мультиплексора 71 и первыми входами элементов И 73 и 74, выходы которых соединены соответственно со вторым и третьим входами второй группы информационных входов мультиплексора 71, выход "Равно" схемы 69 сравнения соединен со вторыми входами элементов И 75, 76 и 77, выход "Больше" схемы 70 равнения соединен с первым входом элемента И 75, выход которого соединен с третьим входом первой группы информационных входов мультиплексора 71, выходы "Меньше" и "Равно" схемы 70 сравнения соединены со вторыми входами элементов И 73 и 74 соответственно и первыми входами элементов И 76 и 77 соответственно, выход элемента И 76 соединен с четвертым входом первой группы информационных входов мультиплексора 71 и вторым входом элемента И 78, первый вход которого соединен с выходом "Не равно" схемы 68 сравнения, выход элемента И 77 соединен с первым входом второй группы информационных входов мультиплексора 71, вторым входом элемента ИЛИ 80 и первым входом элемента ИЛИ 79, первый - четвертый выходы мультиплексора 71 соединены соответственно с первым - четвертым входами шифратора 72, первый и второй выходы которого соединены соответственно со вторым и третьим выходами блока 57 выбора направления передачи информации, второй вход схемы 68 сравнения подключен ко второму и третьему входам блока.

Блок 58 памяти константы (фиг. 6) содержит блок 81 хранения физического адреса, группу блоков 82.1 - 82.3 хранения физического адреса, мультиплексор 83, выход которого соединен с первым выходом блока, первый - третий входы которого соединены с первым - третьим адресными входами мультиплексора 83 соответственно, второй - четвертый информационные входы которого соединены с выходами блоков 82.1 - 82.3 группы блоков хранения физического адреса соответственно, выход блока 81 хранения физического адреса соединен с первым информационным входом мультиплексора 83 и вторым выходом блока, на пятом - восьмом информационных входах мультиплексора 83 постоянно присутствует потенциал логического нуля.

Блок 8 синхронизации (фиг. 7) содержит триггер 84 запуска, генератор 85 тактовых импульсов, счетчик 86, дешифратор 87, элементы И 88 и ИЛИ 89, причем первый вход блока соединен с S-входом триггера 84, выход которого соединен со входом генератора 85 тактовых импульсов, выход которого соединен с инкрементирующим входом счетчика 86 и управляющим входом дешифратора 87, первый и второй выходы счетчика 86 соединены соответственно с первым и вторым информационными входами дешифратора 87, первый - третий выходы которого соединены с первым - третьим выходами блока, второй и четвертый входы блока соединены соответственно с первым и вторым входами элемента И 88, выход которого соединен со вторым входом элемента ИЛИ 89, третий вход блока соединен с первым входом элемента ИЛИ 89, выход которого соединен с R-входом триггера 84.

Первый 55.1 - пятый 55.5 блоки памяти сообщений (фиг. 8) содержат блок регистров 90.1 - 90. K (где K - максимальная глубина очереди сообщений), группу блоков элементов ИЛИ 91.1 - 91.(K-1), первый блок элементов И 92.1 - 92. K, второй блок элементов И 93.1 - 93.K, блок элементов ИЛИ 94.1 - 94.K, демультиплексор 95, элемент И 96, элемент И-НЕ 97, причем тактовый и второй управляющий входы блока соединены с первым и вторым входами элемента И 96 соответственно, выход которого соединен со вторыми входами элементов ИЛИ 94.1 - 94.K и инверсным управляющим входом демультиплексора 95, первый выход которого соединен с информационным входом регистра 90.K. Второй - K-й выходы демультиплексора 95 соединены со вторыми входа