микропрограммное устройство управления
Классы МПК: | G06F9/22 микроуправление или устройства с микропрограммой |
Автор(ы): | Шаханов И.А., Черных В.И., Ноянов В.М. |
Патентообладатель(и): | Конструкторское бюро энергетического машиностроения Научно- производственного объединения "Энергомаш" им.акад.В.П.Глушко |
Приоритеты: |
подача заявки:
1993-05-14 публикация патента:
20.05.1997 |
Изобретение относится к области автоматики и вычислительной техники и может быть использовано при создании программируемых контроллеров, автоматизированных систем управления технологическим оборудованием и управляющих автоматов. Устройство содержит формирователь 1 кода адреса, осуществляющего выборку адресов блока 3 памяти микрокоманд, программируемый таймер 2, который совместно с коммутатором 5, элементом И 6, D - триггером 7 и ключом 10 обеспечивает перестройку частоты опроса блока 3 памяти, регистр 12, блок 13 согласования и исполнительные механизмы 14-1...14-n. Загрузка блока 3 памяти новыми данными и контроль достоверности их записи осуществляется с помощью ЭВМ 15, выходами подключенная к соответствующим входам устройства. Вывод командной информации из блока 3 памяти производится двумя байтами, первый из которых запоминается регистром 12, а второй транслируется в блок 13 согласования непосредственно с внутренней шины данных Dвн, которая посредством блока ключей 4 на время работы устройства отсоединяется от ЭВМ 15. D-триггер 8 предназначен для передачи в ЭВМ сигнала окончания микропрограммы. Устройство обеспечивает оперативную перестройку микропрограмм управления исполнительными механизмами 14-1...14-n как за счет изменения содержимого блока 3 памяти микрокоманд с последующим контролем достоверности ввода в него новых данных, так и перепрограммирования таймера 2. 1 з.п. ф-лы, 1 табл., 4 ил.
Рисунок 1, Рисунок 2, Рисунок 3, Рисунок 4, Рисунок 5
Формула изобретения
1. Микропрограммное устройство управления, содержащее блок памяти микрокоманд и регистр, отличающееся тем, что в него введены программируемый таймер, формирователь кода адреса, информационным выходом подключенный к входу адресных разрядов блока памяти микрокоманд, блок ключей, два D-триггера, коммутатор, элемент И, два ключа, элемент ИЛИ и блок согласования, выходы которого соединены с управляющими входами исполнительных механизмов, при этом информационный вход устройства соединен с входами ввода данных программируемого таймера и формирователя кода адреса и через блок ключей с информационным входом-выходом блока памяти микрокоманд, информационным входом регистра и входом старших адресных разрядов блока согласования, вход синхроимпульсов устройства соединен с входами синхронизации программируемого таймера, выходы первого и второго каналов которого соединены с первым входом элемента И через коммутатор, а третьего канала с вторым входом этого элемента непосредственно, первый четвертый управляющие входы устройства соединены соответственно с входом выбора кристалла программируемого таймера, с первым и вторым управляющими входами формирователя кода адреса и входом установки в "1" второго D-триггера, адресный вход устройства соединен с одноименным входом программируемого таймера, первый и второй управляющие выходы формирователя кода адреса подключены к входам выбора кристалла блока памяти микрокоманд и регистра, его третий управляющий выход соединен с входом синхронизации блока согласования, а четвертый управляющий выход соединен с управляющими входами ключей и синхронизирующим входом первого D-триггера, вход управления записью устройства через элемент ИЛИ соединен с входами разрешения записи программируемого таймера и блока памяти микрокоманд, выход первого D-триггера соединен с управляющим входом коммутатора, прямой выход второго D-триггера соединен с управляющим входом блока ключей, с входами запуска первого и второго каналов программируемого таймера, с третьим входом элемента И, с вторым входом элемента ИЛИ и входом выбора режима работы формирователя кода адреса, вход ввода синхроимпульсов которого подключен к выходу элемента И, первый вход регистра соединен с информационным входом первого D-триггера, его второй и третий выходы через первый и второй ключи соединены соответственно с входом запуска третьего канала программируемого таймера и синхронизирующим входом второго D-триггера, объединенного с входом обнуления формирователя кода адреса, а другие выходы регистра подключены к входам младших адресных разрядов блока согласования, входы установки в "0" первого и второго D-триггеров соединены с источником единичного сигнала, а инверсный выход второго D-триггера является выходом окончания микропрограммы устройства. 2. Устройство по п.1, отличающееся тем, что формирователь кода адреса содержит два счетчика импульсов, регистр, коммутатор, элемент ИЛИ, два элемента И, преобразователь кодов, D-триггер и генератор тактовых импульсов, выходом соединенный с первым входом второго элемента И, при этом вход ввода синхроимпульсов формирователя соединен с синхронизирующим входом D-триггера, информационный вход которого подключен к источнику единичного сигнала, вход ввода данных формирователя соединен с информационным входом регистра, его первый управляющий вход соединен с первым входом элемента ИЛИ и входом разрешения записи регистра, а второй управляющий вход формирователя подключен к первым входам коммутатора и первого элемента И, выходом соединенного с первым управляющим входом формирователя, выходы коммутатора и элемента ИЛИ соединены соответственно со счетным входом и входом обнуления второго счетчика импульсов, выходы которого и выходы регистра являются информационными выходами формирователя, выход D-триггера соединен с вторым входом второго элемента И, выходом подключенного к счетному входу первого счетчика импульсов и входу младшего разряда преобразователя кодов, другие входы которого соединены с выходами этого счетчика, первый и второй выходы преобразователя кодов соединены соответственно с вторыми входами коммутатора и первого элемента И, его третий и четвертый выходы соединены с вторым и третьим управляющими выходами формирователя, а пятый выход преобразователя кодов подключен к входам обнуления первого счетчика импульсов и D-триггера и к четвертому управляющему выходу формирователя кода адреса, вход выбора режима работы которого соединен с управляющим входом коммутатора.Описание изобретения к патенту
Устройство относится к автоматике и вычислительной технике и может быть использовано при создании программируемых контроллеров, автоматизированных систем управления технологическим оборудованием и управляющих автоматов. Известен микропрограммный "релейный" автомат (Микропроцессорные средства и системы, N1, 1986, с. 78, рис. 8), содержащий генератор тактовых импульсов, микропрограммный счетчик, элемент И, приоритетный шифратор команд, буферный регистр и программируемое постоянное запоминающее устройство (ППЗУ), выходами подключенное к исполнительным устройствам. К недостатку данного автомата следует отнести необходимость использования ППЗУ с большим объемом памяти для запоминания всех необходимых программ управления исполнительными устройствами и сложность его программирования, что ограничивает область применения этого автомата. Известно микропрограммное устройство управления по а.с. N 1451692 от 05.02.87, кл. G 06 F 9/22, содержащее задающий генератор, триггер, счетный триггер, блоки постоянной и оперативной памяти и буферный регистр. Это устройство может быть использовано в системах автоматизированного управления, в том числе с длительными программными циклами, однако оно не раскрывает возможности оперативной перестройки рабочих программ управления и контроля правильности их загрузки в блоки памяти, что ограничивает область применения данного устройства и является его недостатком. Наиболее близким по технической сущности к предлагаемому является микропрограммное устройство управления по а.с. N 1524049 от 8.10.87, кл. G 06 F 9/22, взятое за прототип и содержащее блок местного управления, блок памяти микрокоманд, коммутатор адреса, коммутатор условий и регистр микрокоманд, при этом входы логических условий устройства соединены с информационными входами коммутатора условий, управляющий вход которого соединен с выходом кода логических условий регистр микрокоманд, другой выход которого соединен с первым информационным входом коммутатора адреса, второй информационный вход которого соединен с выходом поля старших разрядов адреса регистра микрокоманд, информационный вход которого соединен с выходом полей адреса и микроопераций блока памяти микрокоманд, выход коммутатора условий соединен с первым входом задания режима блока местного управления, первый выход которого соединен с синхровходом регистра микрокоманд, выход поля микроопераций которого является выходом устройства, выход поля младших разрядов адреса регистра микрокоманд соединен с входом младших разрядов адреса блока памяти микрокоманд, выход признака условного перехода которого соединен со вторым входом задания режима блока управления, второй выход которого соединен с управляющим входом коммутатора адреса, выход которого соединен с входом старших разрядов адреса блока памяти микрокоманд, вход начальной установки устройства соединен с одноименными входами блока управления и регистра микрокоманд. Это устройство также не предусматривает возможности оперативного ввода в блок памяти микрокоманд новых управляющих программ и контроль достоверности их загрузки, что ограничивает область его применения. Настоящее изобретение направлено на расширение области применения устройства за счет обеспечения оперативной перестройки рабочих программ управления его исполнительными элементами и введения контроля достоверности их записи в блок памяти микрокоманд. Указанный технический результат достигается тем, что в устройство, содержащее блок памяти микрокоманд и регистр, введены программируемый таймер, формирователь кода адреса, информационным выходом подключенный к входу адресных разрядов блока памяти микрокоманд, блок ключей, два D-триггера, коммутатор, элемент И, два ключа, элемент ИЛИ и блок согласования, выходы которого соединены с управляющими входами исполнительных механизмов, при этом информационный вход устройства соединен с входами ввода данных программируемого таймера и формирователя кода адреса и через блок ключей с информационным входом-выходом блока памяти микрокоманд, информационным входом регистра и входом старших адресных разрядов блока согласования, вход синхроимпульсов устройства соединен с входами синхронизации программируемого таймера, выходы первого и второго каналов которого соединены с первым входом элемента И через коммутатор, а третьего канала с вторым входом этого элемента непосредственно, первый четвертый управляющие входы устройства соединены соответственно с входом выбора кристалла программируемого таймера, с первым и вторым управляющими входами формирователя кода адреса и входом установки в "1" второго D-триггера, адресный вход устройства соединен с одноименным входом программируемого таймера, первый и второй управляющие выходы формирователя кода адреса подключены к входам выбора кристаллов блока памяти микрокоманд и регистра, его третий управляющий выход подключен к входу синхронизации блока согласования, а четвертый управляющий выход соединен с управляющими входами ключей и синхронизирующим входом первого D-триггера, вход управления записью устройства через элемент ИЛИ соединен с входами разрешения записи программируемого таймера и блока памяти микрокоманд, выход первого D-триггера соединен с управляющим входом коммутатора, прямой выход второго D-триггера соединен с управляющим входом блока ключей, с входами запуска первого и второго каналов программируемого таймера, с третьим входом элемента И, вторым входом элемента ИЛИ и входом выбора режима работы формирователя кода адреса, вход ввода синхроимпульсов которого подключен к выходу элемента И, первый выход регистра соединен с информационным входом первого D-триггера, его второй и третий выходы через первый и второй ключи соединены соответственно с входом запуска третьего канала программируемого таймера и синхронизирующим входом второго D-триггера, объединенного с входом обнуления формирователя кода адреса, а другие выходы регистра подключены к входам младших адресных разрядов блока согласования, входы установки в "0" первого и второго D-триггеров соединены с источником единичного сигнала, а инверсный выход второго D-триггера является выходом окончания микропрограммы устройства. На фиг. 1 приведена функциональная электрическая схема устройства, на фиг. 2 схема блока согласования, на фиг. 3 схема ЭВМ с отображением тех ее основных элементов, которые необходимы для пояснения принципа действия устройства, на фиг. 4 временная диаграмма формирования i-той микрокоманды. Прилагаемая таблица содержит перечень команд и операций, инициируемых ЭВМ при загрузке элементов памяти устройства. Устройство содержит (фиг. 1) формирователь 1 кода адреса, 3-х канальный программируемый таймер 2, блок 3 памяти микрокоманд, блок 4 ключей, коммутатор 5, элемент И 6, D-триггеры 7, 8, элемент ИЛИ 9, ключи 10 и 11, регистр 12, блок 13 согласования и исполнительные механизмы 14-1.14-n. Поз. 15 на схеме фиг. 1 обозначена ЭВМ, выходами соединенная с соответствующими входами устройства, а одним из своих входов (обозначен индексом ТС) с его выходом окончания микропрограммы. Формирователь 1 кода адреса может иметь несколько вариантов исполнения. Например, он может быть выполнен на базе многоканального контроллера прямого доступа к памяти либо по схеме, указанной на фиг. 1. В этом случае он содержит два счетчика импульсов 16 и 17, коммутатор 18, элемент ИЛИ 19, регистр 20, преобразователь 21 кодов (ПЗУ) элементы И 22, 23, D-триггер 24 и генератор 25 тактовых импульсов. Схема блока 13 согласования определяется типом и количеством исполнительных механизмов, управляемых с помощью рассматриваемого устройства. Например, для исполнительных элементов, выполненных в виде катушек индуктивности, в частности электропневмоклапанов, блок 13, включает (фиг. 2) дешифратор 26, триггеры 27-1. 27-n управления по числу исполнительных механизмов и ключи 28-1.28-n. В состав ЭВМ 15 входят (фиг. 3) микропроцессор 29, блок 30 постоянной памяти, дешифратор 31 кода адреса, одноразрядный буфер 32 и элемент ИЛИ-НЕ 33, причем микропроцессор 29 в упрощенном виде содержит арифметическо-логическое устройство 34, аккумулятор 35, устройство управления 36, дешифратор 37 кода операций, регистр 38 команд, регистры 39 общего назначения (B, C, D, E, H, L), регистр 40 адреса, буфер 41 данных, генератор 42 тактовых импульсов, внутреннюю шину 43 данных и шину 44 адреса. Выход одноразрядного буфера 32 подключен к младшему разряду DO шины данных 43. Дешифратор 31 предназначен для формирования команд обращения микропроцессора 29 к внешним устройствам, к которым в данном случае относятся блок 30 постоянной памяти, одноразрядный буфер 32 и часть схемных элементов устройства (формирователь 1 кода адреса, программируемый таймер 2 и D-триггер 8). На вход этого дешифратора подключены старшие разряды шины 44 адреса, например, A15, A14 и A13. Предполагается, что командное слово, содержащее служебную и управляющую информацию, имеет 16-ти разрядную структуру и выводится из блока 3 памяти двумя байтами. Первый из них запоминается регистром 12, а второй поступает в блок 13 согласования непосредственно с шины данных Dвн. При этом один из разрядов командного слова, например Q0, предназначен для управления коммутатором 5, второй (Q1) для запуска 3-го канала программируемого таймера 2 и разряд Q2 для выдачи сигнала об окончании микропрограммы. Блок 3 имеет несколько разделов памяти, в каждый из которых записывается самостоятельная микропрограмма. Необходимый в данный момент раздел памяти выбирается кодом начального адреса, считываемым из ЭВМ 15 в регистр 20. Первый раздел имеет нулевой начальный адрес. Устройство работает следующим образом. В исходном состоянии D-триггеры 7, 8, 24 и счетчики 16, 17 обнулены. Ключи 10, 11 закрыты. На прямом выходе D-триггера 8 сформирован сигнал низкого уровня, который удерживает ключи 4 в замкнутом состоянии, а коммутатор 18 формирователя 1 в положении, разрешающем прохождение импульсных сигналов с выхода![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079876/2079876-2t.gif)
![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079107/964.gif)
![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079876/2079876-3t.gif)
запись в регистр L (разряды A0 и A1 шипы 44) кода регистровой памяти таймера 2, по которому в него будет передан очередной байт служебной информации;
вывод из блока 30 байта служебной информации и пересылка его в таймер 2 командой MOVMA;
увеличение содержимого регистровой пары DE для выборки адресов блока 30;
декрементирование содержимого регистра B и сравнение его оставшейся части с нулевой уставкой. Первые 3 цикла предназначены для записи в таймер 2 кодов режима работы каждого из его каналов, один цикл для ввода числа q3 и остальные два цикла для записи данных, относящихся к коэффициентам q1, q2 деления частоты 1-го и 2-го каналов. По их окончанию (содержимое регистра B становится равным нулю) микропроцессор 29 приступает к загрузке блока памяти 3. Для этого оно переписывает в регистр H код старшей части адреса обращения к выходу
![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079876/2079876-4t.gif)
![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079876/2079876-5t.gif)
![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079876/2079876-6t.gif)
ключи 4 закрываются, отсоединяя шину данных ЭВМ 15 от информационного входа-выхода блока 3;
коммутатор 18 подсоединяет c-вход счетчика 17 к выходу Q1 преобразователя кодов 21;
элемент И 6 подготавливается к открытию (на его 2-ой и 3-ий входы поступают единичные сигналы);
запускаются в работу 1-ый и 2-ой каналы программируемого таймера 2, которые начинают формировать синхроимпульсы с частотой f1 и f2 (f1=fт/q1 и f2= fт/q2). Импульсные сигналы с выхода ОИТО таймера 2 через коммутатор 5 и элемент И 6 начинают поступать в формирователь 1, где они адресуется на синхронизирующий вход D-триггера 24. По заднему фронту каждого из этих импульсов D-триггер 24 переводится в единичное состояние и открывает элемент И 23, задействуя в работу счетчик 16. Последний считывает содержимое преобразователя кодов 21, формируя на его выходах серию импульсных сигналов (фиг. 4), обеспечивающих вывод из блока 3 одной управляющий команды и пересылку ее в блок 13 согласования. При этом первый байт выводимой информации запоминается регистром 11, а второй байт поступает в блок 13 непосредственно с шины данных Dвн. Последний импульс, возбуждаемый на выход Q5 преобразователя 21, предназначен для переключения в исходное состояние счетчика 16 и D-триггера 24. При поступлении в схему следующего отрицательного импульса напряжения с выхода элемента И 6 цикл формирования этих сигналов повторяется. Каждая управляющая команда представляет собой двоичный либо десятичный код, обозначающий порядковый номер исполнительного механизма, состояние которого необходимо изменить, и признак ее исполнения (логическая "1" в старшем разряде Q15 указывает на признак Включено, а "0" Выключено). Время ti реализации i-той команды определяется показаниями счетчика 16, а именно:
![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079876/2079876-7t.gif)
где T1 период следования частотных сигналов f1;
Nj содержимое счетчика 17 на момент реализации команды (порядковый номер ячейки памяти блока 3, из которой считана 2-ая часть i-той команды);
![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079010/916.gif)
![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079876/2079876-8t.gif)
где N1 показания счетчика 17 в момент переключения частот f1 и f2. Единичный сигнал в разряд Q0 вводится на все время формирования частоты f2. Паузы в формировании управляющих воздействий организуются записью единичных сигналов в разряд Q1 командного кода. В этом случае при формировании импульсного сигнала на последнем выходе преобразователя 21 замыкается ключ 10 и запускается 3-ий канал таймера 2. На его выходе ОИТ2 устанавливается сигнал низкого уровня, который закрывает элемент И 6 и заполнение счетчиков 16, 17 прекращается. Через интервал времени, равный
![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079107/964.gif)
![микропрограммное устройство управления, патент № 2079876](/images/patents/393/2079107/964.gif)
Класс G06F9/22 микроуправление или устройства с микропрограммой
развертывание образа микропрограммы при наличии множества собственников - патент 2510952 (10.04.2014) | ![]() |
самоконтролируемый автомат - патент 2502121 (20.12.2013) | ![]() |
обработка электронных чернил - патент 2358308 (10.06.2009) | ![]() |
устройство программного управления - патент 2261470 (27.09.2005) | ![]() |
модуль системы микропрограммного управления - патент 2152071 (27.06.2000) | |
модуль мультимикроконтроллерной сети - патент 2151421 (20.06.2000) | |
устройство программного управления - патент 2146064 (27.02.2000) | |
модуль системы программного управления - патент 2145434 (10.02.2000) | |
мультимикроконтроллерная система - патент 2120135 (10.10.1998) | |
модуль мультимикропрограммной системы - патент 2116665 (27.07.1998) |