Микропрограммное устройство управления
Иллюстрации
Показать всеРеферат
Изобретение относится к области вычислительной техники и может быть, использовано в устройствах . программного управления с длительными программными циклами. Цель изобретения - сокращение оборудования. Устройство содержит триггер 2, задающий генератор 3, счетньй триггер 4, буферный регистр 5, блок 6 постоянной памяти, блок 7 оперативной памяти . Устройство обеспечивает реализацию подсчета импульсов в двоичном коде. 3 ил., 2 табл.
СС2ЮЭ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
А1 (192 (112.
Д12 4 С 06 Г 9/22
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И OTKPbfTHRM
ПРИ ГКНТ СССР (21) 4017141/24-24 (22) 05. 02. 87 (46) 15. 01. 89. Бюл. N - 2 (72) В.А.Кривего, Е.В.Глонти, В.А.Полеха и В.В.Кривего .(53) 681.325(088.8) (56) Авторское свидетельство СССР
У 33 1387, кл. G 06 F 9/22, 1970.
Авторское свидетельство СССР
Р 1168940, кл. G 06 Г 9/22, 1984. (54) МИКРОПРОГРАММНОЕ УСТРОЙСТВО
УПРАВЛЕНИЯ (57) Изобретение относится к области вычислительной техники и может быть использовано в устройствах программного управления с длительными программными циклами. Цель изобретения — сокращение оборудования. Устройство содержит триггер 2, задающий генератор 3, счетный триггер 4, буферный регистр 5, блок 6 постоянной памяти, блок 7 оперативной па,мяти. Устройство обеспечивает реализацию подсчета импульсов в двоичном коде. 3 ил., 2 табл.
1451692
Изобретение относится к вычислительной технике и может быть использовано в устройствах программного управления с длительными программны- 5 ми циклами.
Цель изобретения - сокращение оборудования.
На фиг. 1 представлена функциональная схема устройства, на фиг.2— обобщенный рабочий алгоритм устройствау на фиг. 3 — временные диаграм мы, поясняющие работу устройства.
Устройство содержит вход 1 запуска, триггер 2, задающий генератор 15
3, счетный триггер 4, буферный регистр 5, блок 6 постоянной памяти, блок 7 оперативной памяти и выход 8.
Устройство работает следующим образом. 20
Устройство работает по принципу микропрограммного счетчика. После поступления сигнала на вход 1 устройства триггер 2 устанавливается в единичное состояние (операторы 2 и 25
3, фиг. 2) . Затем производится анализ состояния соответствующего разряда счетчика. Так как все разряды счетчика упакованы в соответствующие биты (ячейки) блока 7, причем каждо- .3р му такому биту блока 7 соответствуют определенный адресный код блока 7, то анализ состояния соответствующего разряда счетчика выливается в анализ содержимого соответствующего бита блока 7.
Анализ производится для определения сигнала переноса в более старший по отношению к анализируемому разряд счетчика. При этом если анализируемый разряд счетчика (соответствующий бит) блока 7 равен единице, то он обнуляется, анализируется следующий разряд. Последовательность этих действий повторяется до тех пор, пока не встречается разряд с нулевым значением, при этом ему присваивается значение единицы и анализ прекращается. Если все разряды счетчика
sa время предыдущего счета были установлены в единичное состояние, то все они в соответствии с описанной процедурой анализа и в соответствии с операторами 4-11 (фиг. 2) обнуляются, а микрокоманде переполнения разрядной сетки присваивается единичное значение.
Из алгоритма работы устройства видно, что последовательность действий, составляющая алгоритм, регулярна и циклична. При этом процедуру счета можно условно разбить на следующие этапы: период, цикл и шаг.
Под периодом будем понимать все действия (операции), связанные с отработкой счетного сигнала.
Период разбивается на циклы, во время действия которых производится анализ состояния соответствующего разряда счетчика и определение переноса в более старшйй (i-й) разряд счетчика.
Период разделен шагами, на каждом периоде выполняются два шага: считывание информации из ОЗУ и запись информации (нуля и единицы) в ОЗУ по соответствующему адресу.
Рассмотрим работу устройства более подробно.
Исходное состояние функциональных элементов устройства в момент его включения может быть любым, однако для простоты описания будем считать его нулевым.
Нулевое состояние устройства характеризуется нулевым состоянием триггера 2, счетного триггера 4, разрядов буферного регистра 5 и нулевым значением содержимого ячеек блока 7 оперативной памяти. Это означает, что на выходах этих элементов— низкий потенциал (нулевой потенциал) .
Таким образом, в начальный момент времени на адресные входы блока 7 и блока 6 поданы нулевые значения адресных кодов, на управляющий вход блока 7 подан нулевой потенциал, что означает режим записи нулевой информации.
Для управления режимом работы блока 7 принимается: для режима чтения ячейки блока 7 с соответствующим адресом — высокий потенциал на управляющем входе, для режима записи информации в ячейку блока 7 соответствующим адресом — низкий потенциал на управляющем входе, при этом в ячейку производится запись единицы, если информационный вход равен единице, и нуля, если информационный вход равен нулю.
По переднему фронту счетного сигнала, поступающего на синхровход триггера 2, последний устанавливается в единичное состояние.
- з
Единичным сигналом с прямого выхода триггера 2 запускается генератор
3 опорной частоты.
С задержкой относительно переднего фронта запускающего сигнала генератор 3 опорной частоты генерирует (формирует) импульсную последовательность °
Запускающий сигнал (от триггера
2) и последовательность задающего генератора 3 сфазированы таким образом, что по переднему фронту запускающего сигнала формируется передний фронт опорной частоты (фиг. Зб, в).
Импульсы опорной частоты поступают на счетный вход триггера 4, который формирует меандровую (со скважностью 2) последовательность импульсов (фиг. Зг), период которой определяет цикличность работы устройства. При этом эа положительный полупериод выполняется первый шаг — чтение информации из соответствующей ячейки блока 7. За отрицательный полупериод выполняется второй шаг— запись информации в соответствующую ячейку блока 7.
Соответствующие адреса блока 7 (адресные коды) и блока 6 формируются (выбираются) из блока 6 через буферный регистр 5.
Адресация блоков 7 и 6 построена таким образом, что на каждый сформированный адрес блока 7 формируются два адреса блока 6 (табл. 1) .
Адресация блока 6 осуществляется группой и строится таким образом, что в каждой текущей (выбираемой) ячейке блока 6 фиксируется адрес следующей ячейки. Например, в нулевой ячейке (табл. 1) зафиксирован адрес первой (01в), в первой — адрес
02в, во второй — адрес 03в и т.д..
Выбираемая иэ блока 6 информация фиксируется передним фронтом импульсов опорной частоты на буферном .регистре 5 (фиг. Зд, е).
Тогда в начальный момент времени (определим его как нулевой цикл) полный адрес (А) ПЗУ всегда равен
А = О+ аА7„ где (Ар7 пуу — содержимое нулевой ячейки ПЗУ.
На первом шаге нулевого цикла осуществляется чтение нулевой ячейки
16 2
ОЗУ и нулевой ячейки ПЗУ. Управление перецается на первую ячейку ПЗУ (А =
= 018) °
На втором шаге нулевого цикла производится запись нуля в нулевую ячейку ОЗУ (Y = О), управление передается на вторую ячейку ПЗУ (А =
= 02в)
10 Нулевой цикл выполняется для того,-÷òîáû вывести счетчик из исходно
ro состояния. Нулевой цикл является холостым, а работа счетчика начинается с первого цикла.
15 На первом шаге первого цикла про-. изводится чтение первой ячейки блока
7, что соответствует содержимому о первого (2 ) младшего разряда счетчика. При этом на адресный вход бло20 ка 7 подается код 01, а на адресный вход блока 6 подается код 02» зафиксированные на регистре 5 в нулевом цикле.
Под действием этих кодов из пер25 вой ячейки блока 7 считывается нуль (так как блок 7 был обнулен), а иэ
;второй ячейки блока 6 считывается содержимое микропрограммного слова, s котором (табл. 1) А, 01в, А = 038, 30 Y(,=0, Yz=0, Уз=0, тогдаспри-, ходом переднего фронта очередного импульса это микрокомандное слово зафиксируется на регистре 5.
На втором шаге первого цикла в
35 первую ячейку ОЗУ заносится (записы. вается) единица, так как А = 01 в и Y = 1 зафиксированы на регистре
5 и подаются на ОЗУ.
На этом же шаге производится счи40 тывание из третьей ячейки ПЗУ (так как А = 03) микропрограммного слова,в котором А, = 01» А = 0+ Y = О, та информация будег зафиксирована на регистре 5 перед45 ним фронтом следующего импульса опорного сигнала.
Таким образом, на следующем шаге
I выбирается содержимое четвертой ячейки блока 7, в которой зафиксиро50 вана микрокоманда Y1 = 1, осуществляющая сброс в "0" триггера 2 (фиг. 2). Высоким потенциалом сигнала инверсного плеча триггера 2 сбрасывается в "О" содержимое триггера
4 и буферного регистра 5.
Устройство приведено в исходное состояние за исключением блока ?, в котором после обработки одного счет5 1451 ного импульса зафиксирован код 001, т.е. единица в младшем разряде.
С приходом следующего счетного импульса описанная процедура повто- 5 ряется, за исключением того, что на первом шаге первого цикла из пер.вой ячейки блока 7 будет считываться единица, следовательно, следующее микропрограммное, слово будет выби- 10 раться из ячейки блока 6 с адресом
692 6 представлены в табл. 2. Идентичным образом может быть построен и эапрдграммирован двоичный счетчик на и разрядов.
Таким образом, предлагаемая схема устройства обеспечивает реализацию подсчетов импульсов в двоичном коде.
Формула изобретения
Микропрограммное устройство управ ления, содержащее задающий генератор, блок оперативной памяти, блок постоянной памяти, буферный регистр, причем выход задающего генератора соединен с входом разрешения записи буферного регистра, о т л и ч а ю— щ е е с я тем, что, с целью сокращения оборудования, оно содержит счетный триггер и триггер, причем вход запуска устройства соединен с синхровходом триггера, информационный вход которого соединен с шиной логической единицы. устройства, прямой выход триггера соединен с входом запуска задающего генератора, выход которого соединен со счетным входом счетного триггера, выход которого соединен с входом разрешения записи блока оперативной памяти, первая группа выходов буферного регистра соединена с адресными входами с первого по (и-1)-й блока постоянной памяти, и-й адресный вход которого соединен с выходом блока оперативной памяти, вторая группа выходов буферного регистра соединена с группой адресных входов блока оперативной памяти, группа выходов блока постоянной памяти соединена с группой информационных входов буферного регистра, первый выход которого соединен с информационным входом блока оперативной памяти, второй выход буферного регистра соединен с входом сброса в "0" триггера, третий выход буферного регистра является выходом устройства, инверсный выход триггера соединен с входом сброса в "0" буферного регистра и с входом. сброса в "О" счетного триггера.
А 1+ 035 103в
В ячейке блоком 6 с адресом 103а 15 зафиксирована микрокоманда, в которой А = 01, А = 05, Y = О.
Это микропрограммное слово будет зафиксировано на регистре 5 и, следовательно, на втором шаге перво- 20
ro цикла будет выполняться запись нуля в первую ячейку ОЗУ, а управление (адрес блока 6 A = 05я) будет передано в пятую (А = 05в) ячейку ПЗУ, где А„ = 02, А = 06, У 1 = 25
Таким образом, будет выполняться первый шаг второго цикла, на котором осуществляется чтение второй ячей-. ки ОЗУ и микропрограммного слова 30 из ячейки ПЗУ с адресом А = 06.
Содержимое второй ячейки ОЗУ равно нулю, поэтому адрес ПЗУ, содержимое которого будет считываться на следующем шаге, равен 06 (в противном случае 106) .
На втором шаге второго цикла производится запись единицы во вторую ячейку блока 7, а управление передается в четвертую ячейку блока 6, 40 из которой осуществляется сброс триггера 2 микрокомандным словом аналогично описанному (Y = 1).
После выполнения второго цикла в блоке 7 будет зафиксирован код
010 . С приходом третьего, четвертого и т.д. счетных импульсов процедуры по их обработке повторяются.
Распределение информации в ОЗУ и ход микропрограммы, реализуемой согласно табло 1, при обработке счетных импульсов для трехразрядного двоичного суммирующего счетчика
1451692
Таблица 1
НоКомментарий
Значение А (восьм.) Значение текущегоо адреса блока 6 (восьм.) Значение А< (восьм.) Номер цикла (восьм.) Значение микрокоманды мер шаУ, (дв. ) У (дв.) У (дв.) га
О 00
О 01
О, 01
1 00
2 00
О
О 02
О 03
03
1 01
2 01
04
О 04
Сброс триггера
2. Окончание периода.
00
1 00
О 05
О
02
Запись «1«в 2 разряд блока 7 по адресу 02а.
О 06
О
Чтение в блоке
7 содержимого
2 разряда (мой жет принимать значение "0« или «1«) О 07
О
03
Запись "1«в 2 разряд блока 7 по адресу 035.
О 10
".2 03
Пример реализации микропрограммы для трехраэрядного двоичного счетчика
Чтение в блоке
7 содержимого адреса (всегда ноль). Запись в блок 7.
Чтение в блоке
7 содержимого
2 разряда (может принимать значение «1« о пись «1«в 2 разряд блока 7 по адресу 01 °
Чтение в блоке
7 содержимого
21 разряда (может принимать значение «1« или «О«}.
1451692
Продолжение табл.1
Комментарий
Значеwe A (восьм.) НоЗначение А, (восьм.) Номер цикла (восьм.) мер ааУз (дв.) У, (дв.) У, (дв.) ra
0 11
1 00
103 Запись "0" в 2 разряд блока 7 по адресу 01 .
Передача управления на обработку следующего разряда.
2 01
0
106
2 02
0
2 03
110
Значение микрокоманды
Значение текущегоо адреса блока 6 (восьм.) Окончание периода.
Запись "0" в 2 ( разряд блока 7 по адресу 02>.
Передача управления на обработку следующего адреса разряда.
Запись "0" в 2
Х разряд блока 7 по адресу 038.
Передача управления на обработку переполнения и сброс триггера 2.
1451692 -!2
Ход микропрограммы
Таблица 2
Номер цикла
Номер счетНомер шага
Номер периода
Значение разрядов ОЗУ и адрес ячейки ОЗУ ного им2 /03 2 /02 2 /01 пульса
0 0
1 2
2 2
Исходное состояние
00 01 02 03 04
0 1W2103 05 06 04
00 01-02W3W4
°
4 2
0001021 03051 06 07
1004
00 01 02 03 04
000 1021 0305-0604
0001-02-03 04
8 8 2
00 01-02 1030510607
1101 1
Распределение информации в блоке 7 и ход микропрограммы при обработке счетных импульсов трехразрядного двоичного суммирующего счетчика
1451 692
Начало
Р аиЬ7д
5 с- ячейке дюка
7 присЯибаеяся аУини а е0, Ю (с+1)-й ячейке длок присВаедаеюся единица
ФФ
16 и--й ячейке Жюка 7 присВаидаееся единица ю г@алаа садермжага пй
=О wctu @ 7
12 феи дикмафас у..
1 нуль значения юриггера 2
Иикрокюмнде 3@iyacc даЮаеюся.умжеЪиа
2 uiyetmc
re(СЮЛЮ и сигал ?
j р имся нс/лю Ф едииич
Arcm wuer mr2 анализ содержикоао i-й уеики дгжа У
У() руей ки блока 7n usda
ccA2&7AF Вне у. ff я, адресу Флака 7 присдаибаеяса знатные (Z) n
И, йд ржи ю п- и ачеикийюка
Юаидаеюсмзмщ.и
1451 692
Составитель Н.Торопова
Техред А.Кравчук Корректор А.Обручар
Редактор A.Îãàð
Производственно-полиграфическое предприятие, r. Ужгород, ул . Проектная, 4
Заказ 7081/47 Тираж 667 Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., д. 4/5