Программируемый управляющий модуль
Иллюстрации
Показать всеРеферат
Изобретение относится к автомати-) ке и вычислительной технике и может быть использовано в распределенных отказоустойчивых управляющих системах АСУ ТП, использующих программный принцип управления и допускающих наращивание при расширении числа выполняемых функций. Цель изобретения - повышение быстродействия модуля. Поставленная цель достигается тем, что в известное устройство, содержащее блок памяти микрокоманд, регистры адреса и микроопераций, мультиплексоры адреса и логических условий, дешифратор признака, триггер пуска, первый и второй элементы ИЛИ, первый - третий элементы И, первый и второй магистральные элементы, дополнительно введены регистры сравнения и логических условий , блок сравнения, третий элемент ИЛИ, четвертый и пятый элементы И, третий магистральный элемент, Введение новых элементов позволяет обеспечить в зависимости от программы функционирования измерение кода сравнения, с помощью которого осуществляется идентификация адресного кода, устанавливающего управляющий модуль, повысить производительность системы, реализуемой на модулях, путем параллельной работы модулей, каждый из кото- . рых имеет свой алгоритм функционирования , повысить отказоустойчивость системы за счет перераспределения функций отказавшего модуля между исправными модулями системы. 4 ил., 1 табл, 0& -U со ел
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИК
O9l (11) А1 (1) С 05 В 19/08
«ЩЕ3041 -ц„-цщ - РЯ -Еу 11М., або ".ОТЕ ."-А
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ
ПРИ ГКНТ СССР
1 (21) 4685730/24 (22) 03.05.89 (46) 15.05.91. Бюп. № 18 (72) Б.О, Сперанский, В.С. Харченко, В.П. Улитенко, Г.Н. Тимонькин, О.Г.Валов, В.П. Агеенко и С.Н. Ткаченко (53) 621.503.55(088,8) (56) Авторское свидетельство СССР
¹ 834669, кл. G 05 В 19/18, 1981.
Авторское свидетельство СССР по заявке ¹ 4370638/24, кл. G 05 В 19/08, 1988. (54) ПРОГРАММИРУЕМЫЙ УПРАВЛЯЮЩИЙ
МОДУЛЬ (57) Изобретение относится к автомати- ке и вычислительной технике и может быть использовано в распределенных отказоустойчивых управляющих системах
АСУ ТП,.использующих программный принцип управления и допускающих наращивание при расширении числа выполняемых функций. Цель изобретения — повышение быстродействия модуля. Поставленная цель достигается тем, что в известное устройство, содержащее блок
Изобретение относится к области автоматики и вычислительной техники и может быть использовано в распределенных отказоустойчивых управляющих системах АСУ ТП, использующйх программный принцип управления и допускающих наращивание при расширении числа выполняемых функций.
Цель изобретения — повьппение быстродействия модуля за счет сокращения
2 памяти микрокоманд, регистры адреса и микроонераций, мультиплексоры адреса и логических условий, дешифратор признака, триггер пуска, первый и второй элементы ИЛИ, первый — третий элементы И, первый и второй магистральные элементы, дополнительно введены регистры сравнения и логических условий, блок сравнения, третий элемент
ИЛИ, четвертый и пятый элементы И, третий магистральный элемент. Введение новых элементов позволяет обеспечить в зависимости от программы функционирования измерение кода сравнения, с помощью которого осуществляется идентификация адресного кода, устанавливающего управляющий модуль, павы- Е сить производительность системы, реализуемой на модулях, путем параллель- %Ф Ф ной работы модулей, каждый из которых имеет свой алгоритм функциониро4 вания, повысить отказоустойчивость системы за счет перераспределения функций отказавшего модуля между исп- © равными модулями системы. 4 ил., 1 табл, времени выполнения программы при отказе одного из управляющих модулей .и замене его на резервный.
На фиг. 1 представлена функциональная схема программируемого управляющего модуля (ПУМ), на фиг. 2— функциональная схема системы, реализованнойй на модулях; на фиг . 3 — вр еменные диаграммы работы двух модулей распределенной системы, на фиг. 4
1649507 блок-схема алгоритма функционирований модуля .
Модуль содержит блок 1 памяти микрокоманд с полями признака 1.1, кода микроопераций (MO) 1. 2, кода логических условий (ЛУ) 1.3 и адреса 1.4, регистры адреса 2, микроопераций 3, сравнения 4 и логических условий 5, мультиплексоры адреса 6 и логических условий 7, дешифратор 8 признака, блок 9 сравнения, триггер 10 пуска, первый 11, второй 12 и третий 13 элементы ИЛИ, первый 14, второй 15 третий 16, четвертый 17 и пятый 18 элементы.И, а также первый 19, второй
20 и третий 21 магистральные элементы и имеет информационный вход 22 магистрального элемента 21, выход 23 магистрального элемента 20, вход-выход 24 20 шины режима, первый 25 и второй 26 входы синхронизации, bxop, — выход 27 шины адреса, вход-выход шины данных 28, выходы микроопераций 29, выход 30 состояния, выход 31 запроса, вход 32 пус 5 ка, вход 33 логических условий, вход
34 ответа на запрос и вход 35 кода операций.
Систему образуют генератор 36 тактовых импульсов и определитель 37 при-30 оритета.
Программируемый управляющий модуль в рамках распределенной системы работает следующим образом.
В исходном состоянии генератор 36 тактовых импульсов вырабатывает на . своих выходах последовательности сдвинутых относительно друг друга тактовых импульсов, все модули находятся в исхОдном сОстоянии Ожидания ° Все .40 элементы памяти, кроме регистра 4 сравнения, установлены в нулевое состояние. Регистр 4 сравнения установлен в. единичное состояние, т,е. в нем записан единичный код. Из блока 1 па-;45 мяти микрокоманд считывается содержимое ячейки по нулевому адресу.
В таблице это микрокоманда (МК) типа А. В ее поле 1.1. записан нулевой код, котоРый декодируется дешифратором признака 8 как сигнал ожидания кода очередной МП. Этот единичный сигнал поступает на выход 30 состоя;ния модуля.
Кроме того, сигнал ожидания кода очередной MII с первого выхода дешифратора признака 8 поступает на второй управляющий вход мультиплексора 6 адреса, который пропускает на информационные входы регистра 2 адреса код операции с входа 35 модуля, Единичный код с выхода регистра сравнения 4 поступа-. ет на соответствующие информационные входы блока 9 сравнения, на другие: входы которого с шины 27 адреса поступает нулевой код.Таким образом, блок
9 сравнения формирует на выходе нулевой сигнал, который запрещает прохождение через элементы И 12 и 17 сигналов режима работы шины 24 режима, Установка регистра 4 сравнения в единичное состояние приводит к тому, что модуль воспринймает нулевой код в шине 27 адреса как чужой. В таком состоянии управляющая система находится до поступления сигнала "Пуск" на вход 32 пуска хотя бы одного модуля системы.
Каждый модуль может работать в следующих режимах: режим ожидания кода очередной МП, режим управления; режим изменения кода сравнения; режим передачи управления; режим запроса логических условий; режим ожидания АКУ.
Исходное состояние модуля равнозначно состоянию модуля в режиме ожидания АКУ.
Переход модуля в режим ожидания кода МП из исходного состояния осуществляется по сигналу "Пуск", поступающему с входа 32 через элемент ИЛИ 11 на установочный вход триггера 10 пуска.
Сигнал с выхода триггера 10 пуска открывает элементы И 14 и 15, разрешая прохождение тактовых импульсов с выходов генератора 36 тактовых импульсов по соответствующим входам модуля.
Если к моменту появления на синхровходе регистра адреса 2 модуля заднего фронта первого тактового импульса
{ ) с выхода элемента И 14 на выходе
35 кода операций еще не появилось, то в регистре 2 адреса меняется нулевой адрес и из блока 1 памяти микрокоманд снова считывается МК типа А. Так как в ее поле 1.2 записан нулевой код, то по заднему фронту тактового импульса с выхода второго элемента И 15 регистр 3 микроопераций своего состояния не изменяет.
После появления кода МП на входе
35 модуля этот код через мультиплексор адреса 6 записывается в регистр 2 адреса и модуль переходит в режим управления.
По заднему фронту тактового импульса g с выхода элемента И 15 в реп
5 16495 гистр 3 микроопераций записывается мик рооперационный код первой MK микропрограммы. Кроме того, в режиме управения возбуждается седьмой выход де5 фратора 8 признака и пропадает единичный сигнал на первом выходе дешифратора 8 признака.
По заднему фронту очередного тактового импульса с выхода элемента И 14 в регистр 2 адреса с выхбдов мультиплексора б адреса записывается адрес очередной MK. Этот адрес поступает на третий информационный вход мультиплексора адреса б со стаРших Разрядов выходов 1.4 поля адреса блока 1 памяти микрокоманд (немодифицируемая часть) и выхода мультиплексора логических условий 7 (модифицируемая часть). В линейных MK значения млад- y{} . mего разряда адреса очередной МК определяется значением младшего разряда поля адреса 1,4. В поле 1.3 логических условий в линейных МК записан нулевой код. По этому коду мультиплексор 2<
7 логических условий пропускает на выход значение сигнала с мпадщего разряда поля 1.4. В NK ветвления в поле
1.3 записан код логического условия, значение которого анализируется при 3ц формировании адреса очереднои NK. По этому коду мультиплексор 7 логических условий пропускает с входа 33 логических условий на свой выход значения нужного .логического условия. Таким образом, в режиме управления младший разряд адреса очередной МК полностью определяется значением сигнала на выходе мультиплексора 7 логических условий. По записанному в РегистР 2 ад- 4О реса адресу из блока 1 памяти микрокоманд считывается очерсдная МК линейная или ветвления.
Из режима управления модуль может перейти в любой другой режим. 45
При переходе в .режим ожидания кода очередной МП в полях 1.3 и 1.4 формата последней МК выполняются нулевые коды и в следующем такте из блока памяти микрокоманд считывается нулевой
МК типа А, т.е. модуль переходит в состояние ожидания.
При переходе в Режим ожидания АКУ или окончания работы модуля в поле
1.1 формата последней МК записывается код, по которому дешифратор признака 8 формирует на шестом выходе сигнал микрооперации конца работы. В полях 1.3 и 1.4 этои MK (МК типа G) за07 6 писаны нулевые коды. Сигнал "Конец ра- . боты" по заднему фронту очередного тактового импульса с< записывается в и регистр 3 микроопераций. Затем с соот- . ветствующего выхода 3.1 регистра 3 микроопераций единичный сигнал микрооперации Конец работы" обнуляет триггер 10 пуска и регистр 2 адреса. Из блока памяти микрокоманд считывается
NK типа С.
При необходимости изменения кода сравнения, записанного в регистре 4 сравнения, модуль из режима управления переходит в режим изменения кода сравнения. По заднему фронту очередного импульса 6, с выхода элемента
И 14 в регистр 2 адреса записывается адрес МК тина С. На втором выходе дешифратора признака 8 формируется единичный сигнал, который разрешает запись в регистр 4 сравнения нового кода сравнения с выхода поля 1 ° 2 блока памяти микрокоманд.
По заднему фронту очередного тактового импульса Ф с выхода элемента
И 15 в регистр 4 сравнения записывается новый код сравнения. В режиме изменения кода сравнения регистр 3 микроопераций устанавливается в нулевое состояние сигналом со старшего разряда выхода поля 1.1.
В регистр сравнения может быть записан любой новый код., кроме нулевого.
При необходимости передать инфор- мацию другому модулю системы рассматриваемый модуль переходит в режим передачи управления.
По заднему фронту очередного тактового импульса Я, с выхода элемента
И 20 (фиг. 3) в регистр 2 адреса записывается адрес МК типа D. Эта NK проверяет готовность системы к передаче от Н-го модуля I.-му модулю (группе модулей) АКУ.
На четвертом выходе дешифратора признака 8 формируется сигнал запроса состояния шины данных, адреса и режима. Этот сигнал поступает на соответствующий H-й вход определителя приоритета 37. Если в этом такте работы системы на определитель 37 приоритета сигналов запроса от других модулей не поступило, то он формирует на своем
N-м выходе сигнал разрешения пользования общесистемными шинами в следующем такте работы системы. В противном случае такой сигнал формируется на другом выходе определителя 37 приорите1649507 тов, который соединен с входом 34 ответа на запрос другого более приоритетного модуля системы. При нулевом . сигнале ответа на запрос на входе 34
11-го модуля элемент И 16 формирует единичный сигнал, который поступает на управляющий вход мультиплексора 7 логических условий. По этому сигналу мультиплексор 7 логических условий пропускает на свой выход нулевой сигнал с выхода младшего разряда поля
1.4, по импульсу о, в регистр адреса
n:
2 записывается адрес MK типа 9, Ðåгистр 3 микроопераций при считывании
MK типа D обнуляется сигналом с первого выхода поля 1. 1. Как только на
I рход 34 N-ro модуля поступает единичный сигнал, то на инверсном управляющем входе мультиплексора .логических
15 20 условий 7 единичный сигнал исчезает и на его выходе появляется значение логического условия с выхода 30 состояния L-ro модуля.
Если сигнал этого логического усло-25 вия нулевой, т.е. L-й модуль не готов к приему АКУ, то в следующем такте работы из N-ro модуля по указанным причинам снова считывается МК типа О, Как только на входе 34 14-ro модуля 30 появляется единичный сигнал, а значе- . ние логического условия с выхода 30
Ь-го модуля на входе 34 Н-го модуля станет равньм единице (L-й модуль находится в состоянии ожидания АКУ), у5 значение младшего разряда очередной
МК в И-м модуле станет единичным. По импульсу 9, с выхода элемента И 14 в регистр адреса Н-го модуля записывается адРес МХ типа Е, Единичный сигнал40 с третьего выхода дешифратора признака 8 открывает магистральные элементы
19 и 20, через элемент ИЛИ 12 поступает на .управляющий вход мультиплексора логических условий 7 и, кроме того, поступает на вход магистрального элемента 19. При этом на информационном входе регистра адреса 2 формируется адрес очередной МК, с выхода поля
1.3 считывается адресный код L-го мо- 50 дуля, с выхода 1.2 в шину данных.28 поступает АКУ. В блоке 9 сравнения каждого модуля системы происходит ° сравнение адресного кода, переданного в шину 27 адреса 11-м модулем,. с кодом 55 сравнения, который записан в регистре
4 сравнения. В тех модулях системы, в которых эти коды совпали, на выходе блока сравнения формируется единичный сигнал, который разрешает прохождение сигнала режима работы из шины режима
24 через элемент И f 7. Этот сигнал поступает на мультиплексор адреса 6, который пропускает на вход регистра .
2 адреса АКУ с шины 28 данных. Кроме того, этот сигнал через элемент ИЛИ 11 устанавливает в единичное состояние триггер 10 пуска L-го модуля. По очередному импульсу 3< с выхода элемента И 14 в регистр адреса 2 L-го модуля записывается АКУ, а в регистр 2 адреса 14-го модуля адрес очередной MK.
Если в Ь-м модуле не было сбоя, то на вьгходе 30 состояния единичный сигнал исчезает. Если L-й модуль неисправен, то на выходе 30 этого модуля остается единичный сигнал. L-й модуль остается в состоянии ожидания АКУ.
Для проверки принятия АКУ из блока
1 памяти микрокоманд 1%-ro модуля считывается МК ветвления типа В, в поле
1.3 которой записан код, соответствующий выходу 30 L-го модуля. Если L-й модуль не вышел из режима ожидания
АКУ, то N-й модуль обращается к аварийной подпрограмме ликвидации отказа Ь-го модуля.
При необходимости запроса логических условий L-ro модуля Н-й модуль переходит в режим запроса логических условий. По очередному тактовому импульсу ф, с выхода элемента И 14 в регистр 2 адреса записывается MK типа
D. Проверка шин в режиме запроса логических условий аналогична режиму передачи управления. Как только на входе
34 1Ч-го модуля появляется единичный сигнал, то по импульсу с с выхода элемента И 14 в регистр 2 адреса записывается адрес МК типа F.
Единичный сиги щ с пятого выхода дешифратора признака 8 открывает магистральный элемент 19, разрешает запись в регистр 5 логических условий, через элемент ИЛИ 12 поступает на инверсный управляющий вход мультиплексора 7 логических условий,с выхода поля 1.3 считывается адресный код .
L-го модуля, который через открытый магистральный элемент 19 поступает в шину 27 адреса. Так как имеется MK типа F, то третий выход дешифратора признака не возбуждается, а магистральный элемент 20 остается закрытым и в шину 24 режима поступает нулевой сигнал с выхода младшего разряда магистрального элемента 19. Одновремен16ч9507
10 но запрашивать коды логических условий нескольких модулей нельзя. При совпадении адресов в блоке 9 сравнения L-го модуля разрешается прохожде5 ние сигнала запроса через элемент
И 16, который поступает на вход элемента И 18. Этот сигнал открывае магистральный элемент 21 и разрешает прохождение кода логических условий в 1р шину 28 данных, которые в Il-м модуле записываются в регистр 5 логических условий по импульсу ° Одновременно из поля 1.2 в регистр 3 микроопераций записывается очередной микрооперационный код.
Таким образом организуется взаимодействие модулей распределенной системы и их согласованное функционирование. 2Р
Формула изобретения
Программируемый управляющий модуль, содержащий блок памяти микрокоманд, 25 регистры адреса и микроопераций, мультиплексоры адреса и логических условий, дешифратор признака, триггер пуска, первый и второй элементы ИЛИ, первый, второй, третий элементы И, пер- 3р вый и второй магистральные элементы, ричем выходы поля признака блока пати микрокоманд соединены с входами дешифратора признака, первый выход которого является выходом состояния мо- 35 дуля и соединен с первым адресным входом мультиплексора адреса, информаци- .онные выходы которого соединены с информационными входами регистра адреса, информационные выходы которого соеди- 4р иены с адресными входами блока памяти микрокоманд, старший разряд поля признака которого соединен с входом сброса регистра микрооперации, выходы которого являются выходами микроопераций модуля, а выход "Конец работы" соединен с входами сброса триггера.. пуска и регистра адреса, шестой выход дешифратора признака и выходы кода микроопераций блока памяти микрокоманд являются информационными входами регистра микроопераций и магистрального элемента, выходы которого соединены с шиной данных выходы кода логи) . ческих условий блока памяти микрокоманд соединены с адресными входами
55 мультиплексора логических условий и старшими разрядами информационных входов первого магистрального элемента, старшие разряды информационных выходов которого соединены с шиной адреса, а младшие — с шиной режима, старшие разряды выходов кода адреса блока памяти микрокоманд соединены со старшими разрядами первой группы информационных входов мультиплексора адреса, входы логических условий модуля и младший разряд выходов кода адреса блока памяти микрокоманд являются старшими разрядами информационных входов мультиплексора логических условий, выход которого соединен с младшим разрядом первой группы информационных входов мультиплексора адреса, вторая группа входов кода операции мультиплексора адреса является группой входов кода операций модуля, вторая группа входов мультиплексора адреса соединена с шиной данных, третий выход дешифратора признака соединен с управляющим входом второго магистрального элемента, с младшим разрядом информационных входов первого магистрального элемента ИЛИ, выход которого соединен с инверсным входом разрешения мультиплексора логических условий, четвертый выход дешифратора признака является выходом запроса модуля и соединен с первым входом третьего элемента И, второй инверсный вход которого является входом ответа на запрос модуля, а выход соединен с вторым входом второго элемента ИЛИ, пятый выход дешифратора признака соединен с третьим входом второго элемента ИЛИ, первый вход первого элемента ИЛИ является входом пуска модуля, а выход соединен с входом установки триггера пуска, выход которого соединен с первыми входами второго и первого элементов И, вторые входы которых являются соответственно вторым и первым входами синхронизации модуля, а выходы соединены соответственно с входами записи регистров микроопераций и адреса, о т л и ч а ю— шийся тем, что, с целью повышения быстродействия модуля, в него дополнительно введены регистры сравнения и логических условий, олок сравнения, третий элемент ИЛИ, четвертый и пятый элементы И и третий магистральный элемент, информационные выходы которого соединены с шиной данных, шестой выход дешифратора признака и выходы кода микроопераций блока памяти микрокоманд являются информационными входами регистра сравнения, выходы которого сое164950
Адрес МК Выход 1 Поле ИО
ДС8 1.2
Поле ЛУ Поле ад1.3 реса 1.4
MK Содержание MK
0...0
0...0
0...0
0...0
МК ожидания кода очередной ИП
MK управления
Запись в Pr,З кода MO
МК изменения кода сравнения
Код MO
Код ЛУ
В ф ° °
Код срав- 0 ° ..0 нения
0...0
0...0
Код L-го модуля
Адрес ИК типа Е или Г
D MK проверки
0...0
Код L+ro модуля
Адрес MK типа П+1
Адрес MK типа 0+1
E MK передачи АКУ
F МК запроса ЛУ
G MK конца работы
0...0
0...0
О. ° .0
0...0 динены с первой группой информационных входов блока сравнения, выход которого соединен с первыми входами четвертого и пятого элементов И, вторые вхо- ды которых соединены сшиной режима, а выходы соединены соответственно с вторым адресным входом мультиплексора адреса, вторым входом первого элемента ИЛИ и управляющим входом третьего 10 магистрального элемента, группа входов логических условий и мпадший разряд выходов кода адреса блока памяти микрокоманд являются входами третье-
ro магистрального элемента, выход вто-15 рого элемента И соединен с входами .за-... писи регистра сравнения и регистра логических условий, выходы которого соединены с младшими разрядами информационных входов мультиплексора логичес-р0
12 ких условий, информационные входы регистра логических условий соединены с шиной данных, второй выход дешифратора признака соединен с входом разрешения регистра сравнения, третий выход дешифратора признака соединен с первым входом третьего элемента ИЛИ, выход которого соединен с входом управления первого магистрального элемента, пятый выход дешифратора признака соединен с вторым входом третьего элемента ИЛИ и с входом разрешения регистра логических условий, вторая группа информационных входов блока сравнения соединена с шиной адреса, шины адреса, данных и режима являются соответствующими входами-выходами модуля, 1649507
1б49507
16495С7
Hf
fO
8.)
9 .Л
1649507
Оиидаети
АИи aele мредож
Вободны
Составитель О. Фомичев
Редактор Л. Цчолинская Техред Л.Сердюкова Корректор M. Самборская
Заказ 1521 Тираж 492 Подписное
ВНИИПИ Государственного комитета по изобретениям и открьггиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-издательский комбинат "Патент", г. Ужгород, ул. Гагарина, 101