Распределенная система для программного управления с мажоритированием
Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении агрегатируемых отказоустойчивых систем для управления технологическими процессами. Цель изобретения - повышение надежности функционирования системы. Поставленная цель достигается тем, что в систему, содержащую триггер пуска, генератор тактовых импульсов и п модулей микропрограммного управления, дополнительно введены пороговый элемент, счетчик отказа, элемент И и элемент ИЛИ. Введение новых элементов обеспечивает повышение достоверности передачи информации между модулями системы при передаче управления от одного модуля к другому за счет многомаршрутности, что дает возможность при приеме исправлять сбои или отказы, возникшие в процессе функционирования системы. Т з.п. ф-лы, 3 ил. (Л С
((9) ()! ) СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (s!)s G 05 В 19/18
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ ГКНТ СССР
90 . ч
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИ4ЕТЕЛЬСТВУ (21) 4808603/24 (22) 02.04.90 (46) 15.04.92. Бюл. М 14 (71) Производственное объединение "Харьковский завод электроаппаратуры" (72) Б.О.Сперанский, В,С,Харченко, B.Ã.Ëèòвиненко, В.П.Улитенко, Г,Н.Тимонькин, А.Л. Вахрушев и С.Н.Ткаче н ко (53) 621.503.55(088.8) (56) Авторское свидетельство СССР
N1647519,,кл. G 05 B 19/18.
Авторское свидетельство СССР
N - 1427366, кл. G 05 В 19/18, G 06 F 9/22, 1988. (54) РАСПРЕДЕЛЕННАЯ СИСТЕМА ДЛЯ
ПРОГРАММНОГО УПРАВЛЕНИЯ С МАЖОРИТИРОВАНИЕМ (57) Изобретение относится к автоматике и вычислительной технике и может быть исИзобретение относится к автоматике и вычислительной технике и может быть использовано при построении агрегатируемых отказоустойчивых систем для управления технологическими процессами, оборудованием и др.
Цель изобретения — повышение надежности функционирования системы за счет организации многомаршрутной передачи управления между модулями и обеспечения возможности мажоритирования принимаемого адреса передачи управления.
На фиг. 1 представлен пример выполнения функциональной схемы распределенной системы для программного управления, состоящей из четырех модулей; на фиг. 2— функциональная схема модуля распредепользовано при построении агрегатируемых отказоустойчивых систем для управления технологическими процессами. Цель изобретения — повышение надежности функционирования системы. Поставленная цель достигается тем, что в систему, содержащую триггер пуска, генератор тактовых импульсов и и модулей микропрограммного управления, дополнительно введены пороговый элемент, счетчик отказа, элемент И и элемент ИЛИ. Введение новых элементов обеспечивает повышение достоверности передачи информации между модулями системы при передаче управления от одного модуля к другому за счет многомаршрутности, что дает возможность при приеме исправлять сбои или отказы, возникшие в процессе функционирования системы.? з,п. ф-лы, 3 ил. (Л ленной системы для программного управления; на фиг. 3 — временная диаграмма работы системы.
Распределенная система для программного управления с мажоритированием (фиг.
1) содержит четыре модуля 1 — 4 микропрограммного управления, счетчик 5 отказа, триггер 6 пуска, генератор 7 тактовых импульсов, пороговый элемент " 2" 8, элемент И 9, элемент ИЛИ 10, вход 11 логических условий системы, вход 12 начального адреса системы, первый 13.1 — четвертый 13.4 контрольные выходы системы, первый 14,1 — четвертый 14;4 выходы микроопераций системы, первый 15.1 — четвертый
15.4 входы введения адреса системы, каждый i-й (i = 1.4) модуль содержит выход 16л
1727112 микроопераций модуля, выход 17.i состояния модуля, вход 18.i логических условий мадуля, пЕрвый 19 1и втсрай 20л вхОды Синхронизации, вход 21 ввода адреса модуля, первый 22.i,1 — четвертый 22л 4 выходы пе- 5 редачи управления модуля, первый 23.1.1— третий 23л.3 входы приема управления модуля, вход 24 начального адреса модуля.
Кроме того, система имеет вход 25 пуска системы и выход 26 состояния системы, а 10 каждый модуль 1 — 4 содержит (фиг, 2) блок
27 постоянной памяти микрокоманд, блок
28 постоянной памяти адресов, регистр 29 адреса, регистр 30 микроопераций, первый
31.1 — (n-1)-й элементы сравнения, второй 32 15 мажоритарный элемент, первый 33 мажоритарный элемент, мультиплексор 34, первый
35.1 — 35.п-й 35.п блоки элементов ИЛИ, второй 36 и первый 37 блоки элементов И, коммутатор 38, первый 39.1 — 39(п-1)-й 39.п-1 20 демул ьтиплексоры.
Назначение элементов. Элемент И 9 и двухразрядный счетчик 5 отказа предназначены для вычисления количества тактов, в течение которых на выходах состояния всех 25 п модулей системы будет единичный потенциал.
Пороговый элемент " 2" 8 предназначен для контроля за количеством модулей, вырабатывающих управляющие сигналы в 30 данный момент времени. При появлении на его входах двух и более нулей на выходе появится единичный потенциал, Этот элемент в случае n = 4 реализует следующую функцию; 35
f = х1х2 + х1хЗ + х1х4 + х2хЗ + х2х4 + xÇx4.
Элемент ИЛИ 10 предназначен для объединения сигналов, поступающих с выходов счетчика 5 отказа и порогового элемента 2" 8 и управления триггером 6 пуска. 40
Блок 27 постоянной памяти микрокоманд предназначен для хранения микрокоманд. В нем хранятся микрокоманды четырех типов: микрокоманды безусловного перехода, микрокоманды ветвления, мик- 45 рокоманды передачи управления, микрокоманда ожидания, Первые два типа микрокоманд обычны для любых устройств программного управления и предназначены для реализации 50 микропрограмм, реализующих управление каким-либо объектом управления. Они содержат поле микроопераций, поле адреса следующей микрокоманды и поле логических условий. Третий тип микрокоманд ха- 55 рактерен для распределенных систем программного управления.
Данные команды дополнительно содержат бит, порядок управления, единица в котором говорит в том, что это микрокоманда передачи управления. В микрокомандах первых двух типов на этом месте — нуль, Формат микрокоманд передачи управления такой же. Но в поле адреса записывается нВ адрес очередной микрокоманды данного модуля (ММПУ), а номер ММПУ, которому передается управление и "сжатый" адрес начальной микрокоманды микропрограммы, которую тот начнет реализовывать. Содержание всех остальных полей безразлично.
В блоке памяти записана также микрокоманда ожидания. Она расположена в ячейке с нулевым адресом. Из всех разрядов в ней используется только К разрядов в поле адреса. В разряде передачи управления этой микрокоманды записана единица.
К разрядов поля адреса представляет собой собственный номер модуля, записаны они в те же разряды что и номер модуля, которому передается управление.
Блок 28 постоянной памяти адресов предназначен для декодирования "сжатого" адреса разрядностью (а — К) в а-разрядный код адреса, Регистр 29 адреса предназначен для временного хранения адреса микрокоманды, считываемой в данный момент времени, Регистр 30 микроопераций предназначен для временного хранения поля микроопераций считываемых микрокоманд управления объектом, Элементы сравнения 31.1 — 31.п — 1 предназначены для определения того, предназначен ли адрес передачи управления, пришедший на входы 23л, 1 — 23!.n — 1 данного модуля, данному модулю либо другому, т,е. я вля ется тра нзитн ы м.
Мажоритарный элемент — /и-1 32 преди
2 назначен для организации разрешения работы первого 23 мажоритарного элемента, если номер модуля в адресе передачи управления совпал более, чем по половине входов 23.i 1-23,п — 1 — приема управления.
В случае, если такое совпадение произошло (xy = 1), мажоритарный элемент — /п — 1 33 и
2 выдает на вход блока 28 памяти адресов
"сжатый" адрес микрокоманды, выбранной методом поразрядного "голосования" из n—
1 пришедших адресов. При и = 4 этот блок реализует логическую функцию
Z = (x1x2 + x2x3+ x1x3)xy, где xj(l . 1,2,3)— сигналы на информационных входах.
Мультиплексор 34 предназначен для реализации проверки логических условий при реализации микрокоманд ветвления.
1727112
Блоки 35.1 — 35n элементов ИЛИ предназначены для обеспечения прохождения на выходы 22.I.1 — 22л.п передачи управления как транзитных адресов передачи управления, поступивших на любой вход 5 приема управления, так и адреса передачи управления, сформированного данным модулем.
Блоки элементов И 36 и 37 предназначены для организации выдачи адреса пере- 10 дачи управления другим модулям системы и организации после этого ожидания приема управления данными модулем соответственно.
Коммутатор 38 предназначен для ком- 15 мутации на информационный вход генератора 29 адреса соответственно адреса в зависимости от режима работы модуля.
Демультиплексоры 39.1 — 39 и — 1 предназначены для коммутации транзитных ад- 20 ресов передачи управления на соответствующий выход передачи управления данного модуля в соответствии с номером модуля, которому передается управление. Номер модуля j соответствует 25 номеру выхода 22.Ц передачи управления данного модуля i.
Система работает следующим образом, В исходном состоянии в регистрах 29 адреса и 30 микроопераций всех модулей 30 микропрограммного управления (ММПУ) системы записаны одни нули, счетчик 5 отказа и триггер пуска 6 находятся в нулевом состоянии. Следовательно, на выходах 17л всех
МПУ находятся единичные потенциалы, по- 35 этому на выходе элемента И 9 будет единица. Перед запуском системы на вход 12 начального адреса выставляется адрес начальной микрокоманды. Запуск устройства в работу осуществляется подачей на один из 40 входов 15.,1 — 15.4 ввода адреса системы единичного импульса. Подавать этот импульс можно либо после, либо одновременно с подачей импульса на вход запуска 25 системы (фактически вход запуска генератора 7 45 тактовых импульсов).
Первая микрокоманда микропрограммы не может быть микрокомандой передачи управления, так как это может привести к ложному появлению сигнала неисправно- 50 сти и останову системы.
Импульс запуска устанавливает триггер
6 пуска в единичное состояние, разрешая тем самым работу генератора 7. По заднему фронту первого же тактового импульса с 55 первого 7.1 выхода генератора адрес первой микрокоманды микропрограммы с входа 12 начального адреса системы записывается в регистр 29 адреса одного из
ММПУ, допустим первого (фиг, 3), Следовательно, на выходе блока 27 постоянной памяти микрокоманда первого ММПУ 1 появится не нулевой адрес, на выходе же его будет первая микрокоманда микропрограмм, а так как она не может быть микрокомандой передачи управления, то на выходе поля передачи управления 27.1 блока 27 постоянной памяти микрокоманд (первый выход) будет нуль (фиг. 3). Этот же нуль поступит на один из входов элемента И 9, на выходе которого также появится нуль, который обнулит счетчик 5 отказа, успевший уже по заднему фронту импульса с выхода 7.1 генератора перейти в первое состояние (01).
По заднему фронту первого импульса, поступившего с второго 7.2 выхода генератора
7 отказа, поле микроопераций микрокоманды, стоящей на выходе 27,4 поля микроопераций блока 27 памяти микрокоманд, записывается в регистр 30 микроопераций, поступая тем самым на первый выход 14.1 микроопераций системы. На фиг. 1 изображен вариант системы микропрограммного управления (ММПУ), где выход каждого
ММПУ является отдельным выходом управления системы, т.е. управление ведется поочередно разными объектами либо различными частями одного объекта. Для осуществления управления данной системой одним объектом достаточно в поле микроопераций микрокоманды, следующей перед микрокомандой передачи управления, записать одни нули, а выходы управления 14,1 — 14.4 системы объединить соответственно по ИЛИ, По заднему фронту очередного тактового импульса с первого выхода 7.1 генератора адрес очередной микрокоманды, пройдя через коммутатор 38, запишется в регистр
29 адреса (фиг, 3). На выходе блока 27 постоянной памяти микрокоманд появляется очередная микрокоманда.
Ветвление в микропрограмме происходит следующим образом. Проверяемые логические условия с входа 11 условий поступают на входы 18Л всех 1 — 4 модулей
ПЗУ (это в данном примере. Возможна и подача "своих" логических условий на каждый ММПУ), С входа 18.1 условий модуля 1
МПУ эти логических условий поступают на входы DI-D соответственно мультиплексора 34. На адресный вход этого же мультиплексора поступает поле логических условий микрокоманды, стоящей на выходе блока 28 постоянной памяти микрокоманд в данный момент времени, т.е. код проверяемого в данный момент логического условия.
На вход О, мультиплексора 34 поступает младший разряд адреса микрокоманды, следующей за микрокомандой ветвления.
1727112
Поле логических условий у команд безусловного перехода содержит одни нули.
Следовательно, при выполнении таких команд младший разряд адреса очередной микрокоманды, пройдя через мультиплек- 5 сор и коммутатор 30, поступает на вход младшего разряда регистра 29 адреса без изменений. В микрокоманде же ветвления в поле логических условий находится двоичный код проверяемого логического условия 10 у, поступающего на соответствующий вход
Оу мультиплексора 34. Следовательно, величина поля логических условий гопределяется из соотношения;
r = 19г(. + 1):., 15 где r — количество разрядов поля условий; — количество проверяемых логических условий.
Таким образом, в зависимости от того, каким был младший разряд поля адреса в 20 микрокоманде ветвления, возможны следу-. ющие переходы. В случае, если этот разряд равен нулю, то переход будет либо к микрокоманде с таким же адресом, либо с адресом на единицу большим, соответственно, в 25 случае равенства проверяемого логического условия нулю либо единице. В случае же равенства этого разряда единице ситуация аналогична с той лищь разницей, что переход будет к микрокоманде с адресом на еди- 30 . ницу меньшим в случае, когда проверяемое логическое условие равно нулю.
Каждый из модулей, если он находится в активном состоянии, работает по описанному алгоритму, 35
Рассмотрим, как происходит передача управления от одного ММПУ к другому.
Пусть первый 1 MM ПУ. передает управление второму модулю 2. По очередному(в данном примере четвертому) тактовому импульсу, 40 поступившему с первого 7.1 выхода генератора 7, в регистр 29 пуска адреса первого 1 модуля ММПУ записался адрес микрокоманды, передающей управление другому модулю, В этом случае на первом выходе 45
27.1 блока 27 постоянной памяти микрокоманд появятся нуль (фиг. 3). Поле адреса, (выход 27.2) будет теперь содержать не адрес очередной микрокоманды выполняемой микропрограммы, а адрес модуля, которому передается управление(К разрядов) и "сжатый" адрес начальной микрокоманды микропрограммы, которую начнет выполнять
ММПУ "берущий" управление. Назовем его адресом передачи управления. 55
Величина К определяется исходя из количества модулей в системе
K = 192Й где:a — означает округление числа а до ближайшего большого целого, Содержание поля микроопераций и логических условий безразлично.
Как только на выходе блока 27 постоянных памяти микрокоманд появилась такая команда, адрес передачи управления через теперь открытый элемент И 36 поступает на все и выходов передачи управления первого
ММПУ 1, а следовательно, и на первые sxoды 23.i.1 приема управления всех остальных
ММПУ системы. Запись содержимого поля микроопераций в регистр 30 в модуле 1
ММПУ не происходит, на инверсном управляющем входе — единица.
Под "сжатым" начальным адресом будем понимать следующее. Блок 27 постоянной памяти микрокоманд любого ММПУ может содержать N микрокоманд. Одна среди них — это начальная микрокоманда микропрограммы, реализуемой данным ММПУ.
Таких команд может быть несколько, в случае, если модуль может активизироваться несколько раз (допустим М) за полный цикл управления, Но в любом случае М «N, следовательно, передавать весь адрес нецелесообразно-большая избыточность, ведь
a = !92Й но М «N, следовательно, для передачи M адресов не требуется такого количества разрядов, можно обойтись меньшим, для чего необходимо передавать адрес в закодированном виде. При приеме такого кода происходит декодирование адреса до исходного состояния с помощью блока 28 памяти адресов.
Адрес передачи управления, состоящий из "сжатого" адреса начальной микрокоманды и адреса модуля, которому передается управление, поступает на первые выходы
23л.1 всех остальных модулей 2 — 4 системы.
Допустим, управление передается второму
2 ММПУ. В данном модуле на входе блока
27 памяти микрокоманд стоит нулевой адрес, который в каждом такте вновь записывается с выхода блока 27 памяти адресов в регистр 29 адреса через коммутатор 38, Этот нулевой адрес записан в ячейку с нулевым адресом блока 28 постоянной памяти адресов во всех ММПУ. Так как на выходе мажоритарного элемента 32 нуль, то и на выходе мажоритарного элемента 33 также находятся одни нули. Модуль находится в ожидании приема управления. С приходом на вход 23.2.1 второго модуля 2 МПУ адреса передачи управления ничего не изменяется, так как совпадение адреса модуля, который
"должен взять" управление с собственным адресом второго ММПУ 2, который поступает на входы элементов сравнения 31.1—
1727112
31.п-1 через открытый элемент И 37 с выхо- ал, который подключит с помощью коммутада 27.2 блока постоянной памяти 27 микро- тора 38 выход 27.2 поля адреса блока 27 команд (К разрядов), произошло только в постоянной памяти микрокоманд к входу одном (первом) 31.1 элементе сравнения, регистра 29 адреса, отключив при этом от
Но адрес передачи управления с выходов 5 него выход блока 28 постоянной памяти адпервого ММПУ 1 поступил на входы 23.3.1 — ресов. Модуль 2 перешел в активный режим. и 23.4,1 третьего и четвертого ММПУ соот- B это же время в модуле 1 по заднему ветственно. В этих модулях совпадение соб- фронту того же (пятого) импульса с первого ственных адресов, стоящих на входах 7.1 выхода генератора 7 в регистр адреса с элементов сравнения 31.1 — 31.п-1, произой- 10 выхода блока 28 постоянной памяти адрети не может. Но этот адрес передачи управ- сов, который подключен теперь к информаления поступает еще и на вход данных ционному входу регистра 29 адреса, демультиплексоров 31.1 — 39.пвсех трех запишутся одни нули,,так как на входе блока
ММПУ2-4, а на адресный вход этихдемуль- 28 адресов стоит нулевая комбинация, потиплексоров поступает адрес модуля, кото- 15 ступающая с выхода закрытого можаритаррому передается управление. ного элемента 33. Открытым этот элемент
Демультиплексоры коммутируют адрес пе- быть не может, так как ни в одном из элередачи управления на соответствующий, в ментов сравнения 31.1-31.п-,ïðîèçîéòè данном примере второй, выход передачи совпадения не может, ведь на один из вхо, управления (22.2.2, 22.3,2, 22.4.2 соответст- 20 дов всех элементов сравнения поступает адвенно во втором, третьем и четвертом ресвторогомодуля2,ана вторые — нули,так
MMRY). Но второй выход 22,3.2 передачи как на входы передачи управления 23.1.1— управления третьего 3 ММПУ соединен с 23.1.п-1 ничего, кроме нулей, не поступает. вторым входом 23.2,2 приема управления Адрес модуля нулевым быть не может. Как второго 2 ММПУ(см. фиг, 1), в свою очередь, 25 только нулевой адрес запишется в регистр второй выход 22.4.2 передачи управления 29 адреса в первом ММПУ 1, на выходе 27.2 четвертого4 ММПУ соединен с третьим вхо- блока 27 постоянной памяти микрокоманд дом 23.2.3 приема управления второго появится очередная (нулевая) микрокоманММПУ 2. Таким образом, на все три входа да. Единица на выходе 27.1 сохранится, а
23.2.—
3.2.1 — 23.2.3 входа приема управления вто- 30 вот в поле адреса, вернее в той его части, где, рого модуля 2 поступает адрес передачи записан код модуля; которому передается управления от первого 1 ММПУ. Возможна управление, будет теперь записан код собреализация проверки исправности линий ственного модуля, т.е. первого. Этот код посвязи между ММПУ и маскирования отказов ступает на входы элементов сравнения (сбоев) путем использования метода "голо- 35 31.1.— 31,n — 1. Модульперешел в режиможисования по большинству". дания приема управления, Далее система
Итак, на всех трех входах приема управ- работает аналогично описанному. ления второго ММПУ находятся теперь оди- Кроме того, в системе предусмотрен наковые данные. Следовательно, на контроль за ее функционированием. Принвыходах всех fl — 1 элементов сравнения 40 цип контроля основан на следующем. В си31.1-31.(п — 1) данного ММПУ появятся еди- стеме не может быть более одного ницы. Три единицы поступают на входы ма- одновременно работающего модуля, но в то жоритарного элемента 32, на его выходе — же время, не может быть и такого состояния, единица, открывающая мажоритарный эле- при котором не работает ни один модуль. В мент 33, на входы которого поступают "сжа- 45 оба эти состояния система может перейти тые" адреса (К разрядов) с входов как в результате аппаратных отказов(сбоев)
23.2.1 — 23,2,3 приема управления. С выхода в самих ММПУ, так и в результате отказов, а мажоритарногоэлементаЗЗ "сжатый" адрес что более вероятно сбоев, возникающих в поступает на вход блока 28 постоянной па- результате каких-либо помех в линиях связи мяти адресов, где он преобразуется в "нор- 50 между ММПУ. Именно с целью маскировамальной" а-разрядный адрес начальной ния последних и введено (п — 1)-кратное ремикрокоманды.Этотначальныйадресчерез зервирование линий связи. Итак, коммутатор 38 поступает на информацион- состояние, при котором одновременно раный вход регистра 29 адреса, куда и записы- ботает более, чем один ММПУ, контролирувается по очередному тактовому импульсу с 55 ется с помощью порогового элемента 8, На первого 7.1 выхода генератора 7. Кактолько его входы (и х и) с выходов 17.i состояния на выходе блока 27 постоянной памяти мик- всех ММПУ поступают сигналы, говорящие рокоманд второго ММПУ 2 появится началь- о том, в каком из двух состояний, активном ная микрокоманда, на первом 27.1 выходе или ожидания, находятся модули. Фактичеэтого блока установится нулевой потенци- ски на входы порогового элемента 8 посту1727112
12 при котором "не работают" все п модулей (в 50
55 пают сигналы с выходов 27.1 блоков 27 постоянной памяти микрокоманд всех ММПУ.
Если на инверсных входах порогового элемента 8 (cM, фиг. 1) появятся хотя бы два нуля, на его выходе появится единица, которая через элемент ИЛИ 10 поступит на Квход триггера 6 пуска. По заднему фронту первого же импульса, поступившего с первого выхода 7,1 генератора 7, триггер 6 пуска перейдет в нулевое состояние, остановив тем самым генератор 7 и систему в целом, выдавая на выход 26 состояния системы нулевой потенциал, Случай "не работы" ни одного из ММПУ системы более сложен. Как видно из временной диаграммы (фиг. 3), даже при нормальном функционировании системы в случае передачи управления от модуля к модулю в течение одного такта существует такое состояние, при котором на выходах 27,1 блоков 27 постоянной памяти микрокоманд всех ММПУ будут единицы (между 4-м и 5-м импульсами). Такое состояние возникает, когда один из модулей передает управление, а второй его принимает, Но это состояние не может длиться более одного такта.
Следовательно, задержка времени существования такого состояния более, чем на один такт, равносильна отказу системы. Это может произойти, например, в случае, когда между модулями, передающим управление и принимающим его, остались исправными менее двух линий связи либо сбои произошли во всех линиях и управление верно передано быть не может. Мгновенный останов системы и наличие контрольных незадействованных по связи выходов у каждого модуля дают возможность довольно полно и быстро выяснить причину останова.
Выход i передачи управления модуля не задействован для связи с другими модулями (следовательно, менее подвержен сбоям и отказам), является -м контрольным выходом системы (14.1 — 14.4). Всего таких выходов у системы п. С их помощью можно организовать внешний по отношению к системе аппаратный диагностический контроль, Контроль за длительностью состояния, нашем примере и = 4) системы, осуществляется с помощью элемента И 9 и счетчика 5, Как только все модули системы вышли из активного состояния, на выходе элемента И
9 появляется единица, которая разрешает работу счетчика 5, находившегося в нулевом состоянии, Так как при нормальном функционировании системы единица может возникать на выходе элемента И 9 в промежутке между задними фронтами импульсов, посту5
40 пающих с первого 7.1 выхода генератора 7 (см. фиг. 3), то синхронизацию счетчика 5 будем осуществлять импульсами, поступающими с второго выхода 7.2 счетчика 7. Счетчику 5 отказа "разрешается" считать до одного. Если он перешел из состояния 01 в состояние 00, то считается, что система работает нормально. Но так только счетчик
"успел" достигать до двух (10), фиксируется отказ системы, Ведь длительность импульса на выходе элемента И 9 не может быть больше одного периода частоты генератора 7, следовательно, если счетчик 5 досчитал до двух, значит все ММПУ системы "не работают" более одного такта — а это отказ, о чем и говорит единица, поступающая с второго разряда счетчика 7 через элемент ИЛИ 10 на
К-вход триггера 6 пуска, который обнуляется первым же импульсом с первого выхода
7.1 генератора 7.
Формула изобретения
1. Распределенная система для программного управления с мажоритированием, содержащая триггер пуска, генератор тактовых импульсов и и модулей микропрограммного управления, причем вход пуска системы соединен с асинхронным установочным входом триггера пуска, прямой выход которого является выходом состояния системы и соединен с разрешающим входом генератора тактовых импульсов, .первый выход которого соединен с синхровходом триггера пуска и с первыми входами синхронизации всех модулей микропрограммного управления, второй выход генератора тактовых импульсов соединен с вторыми входами синхронизации всех модулей микропрограммного управления, выходы микроопераций которых являются соответствующими выходами микроопераций системы, входы логических условий модулей микропрограммного управления объединены и являются входами логических условий системы, отличающаяся тем, что, с целью повышения надежности функционирования системы, в нее введены пороговый элемент, счетчик отказа, элемент И и элемент ИЛИ, выход которого соединен с синхровходом сброса триггера пуска, второй выход генератора тактовых импульсов соединен со счетным входом счетчика отказов, выход второго разряда которого соединен с первым входом элемента ИЛИ, выход состояния каждого модуля микропрограммного управления соединен с соответствующим входом порогового элемента и входом элемента И, выход которого соединен с входом разрешения и инверсным входом сброса счетчика отказа, выход порогового элемента соединен с вторым входом эле13
1727112
55 мента ИЛИ, входы начального адреса модулей микропрограммного управления объединены и являются группой входОв начального адреса системы, вход ввода адреса каждого модуля микропрограммного 5 управления является соответствующим входом ввода адреса системы, i-й выход передачи управления i-го модуля микропрограммного управления (i = 1,п) является соответствующим контрольным вы- 10 ходом системы, j-й выход передачи управления (j = 1, и, j: i) i-го модуля микропрограммного управления (! = 1,п) соединен с k-м (k = 1, и-1) входом приема управления
j-го модуля микропрограммного управле- 15 ния.
2. Система по п. 1, о тл и ч а ю щ а я с я тем, что модуль микропрограммного управления содержит блок постоянной памяти микрокоманд, блок постоянной памяти ад- 20 ресов, регистры адреса и микроопераций, группу элементов сравнения, первый и второй мажоритарные элементы, мультиплексор, группу блоков элементов ИЛИ, первую и вторую группы элементов И, коммутатор и 25 группу демультиплексоров, причем первый и второй входы синхронизации модуля соединены соответственно с входами записи регистра адреса и регистра микроопераций, выходы которого являются выходами 30 микроопераций модуля, j-e входы приема управления модуля соединены с информационными входами j-ro демультиплексора (j
= 1, п — 1), R старших разрядов j-x входов приема управления модуля соединены с 35 первой группой информационных входов jro элемента сравнения и адресными входами j-го демультиплексора, i-й выход которого соединен с i-м входом i-го блока элементов ИЛИ группы, выход которого яв- 40 ляется i-м выходом передачи управления модуля (i = 1, п), младшие разряды j-ro входа приема управления модуля подключены к
j-му входу первого мажоритарного элемента, выходы которого соединены с адресны- 45 ми входами блока постоянной памяти адресов, выходы которого соединены с второй группой информационных входов коммутатора, выходы которого соединены с информационными входами регистра адре- 50 са, выходы которого соединены с адресными входами блока постоянной памяти микрокоманд, информационный выход передачи управления которого соединен с первым инверсным, с вторым и третьим и рямыми управляющими входами разрешения коммутатора, является выходом состояния модуля, соединен с первыми входами элементов И первой и второй групп и с инверсным входом управления регистра микроопераций, информационные выходы адреса блока постоянной памяти микрокоманд, кроме выхода первого разряда, соединены с первой группой информационных входов коммутатора, первый разряд информационных выходов адреса блока постоянной памяти микрокоманд соединен с первым разрядом информационных входов мультиплексора, остальные разряды информационных входов которого являются входами логических условий модуля, а выход мультиплексора соединен с первым разрядом первой группы информационных входов коммутатора, информационные выходы адреса блока постоянной памяти микрокоманд соединены с вторыми входами соответствующих элементов И второй группы, а
k старших разрядов — с вторыми входами соответствующих элементов И первой группы, выходы которых соединены с информационными входами вторых групп элементов сравнения группы, выходы которых соединены с соответствующими информационными входами второго мажоритарного .элемента, выход которого соединен с входом разрешения первого мажоритарного элемента, выходы логических условий блока постоянной памяти микрокоманд соединены с адресными входами мультиплексора, выходы микроопераций блока постоянной памяти микрокоманд соединены с информационными входами регистра микроопераций, выходы элементов И второй группы соединены с соответствующими входами группы блоков элементов ИЛИ группы, группа входов начального адреса модуля соединена с третьей группой информационных входов коммутатора, вход ввода адреса модуля является третьим управляющим входом разрешения коммутатора.
1727112
1727112
:21
1727112
А 2
Редактор Е.Копча
Заказ 1278 Тираж Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., 4/5
Производственно-издательский комбинат "Патент", r. Ужгород, ул.Гагарина, 101
174 я(г) Составитель О.Фомичев
Техред М.Моргентал Корректор С.Лыжова