Изобретение относится к цифровой вычислительной технике, в частности к микропрограммным устройствам управ - ления, и может быть использовано в вычислительных системах, устройствах связи, контрольно-измерительных приборах, системах управления внешними устройствами и в процессорах специального назначения.
Цель изобретения - сокращение емкости управляющей памяти.
На фиг. 1-5 представлены соответственно структурные схемы микропрограммного устройства управления, блока ввода команды, блока формирования
микроопераций, первого и второго блоков формирования адреса.
Микропрограммное устройство управления (фиг о 1) содержит блок 1 ввода команды, блок 2 формирования микроопераций, первый и второй блоки 3 и 4 формирования адреса, блок 5 управления последовательностью микрокоманд, выполненный на БИС 1804 ВУ4, адресный регистр 6, конвейерный регистр 7, управляющую память 8 с выходами полей 8,1-8.4, дешифратор 9 микроинструкций, вход 10 кода команды, вход 11 (запросов прерываний, вход 12 начальной установки, вход 13 синхронизации,
2
СО
S
выход 14 микроопераций и вход 15 сопровождения команды.
Блок 1 (фиг, 2) образуют шинный формирователь 16, первый регистр 17, дешифратор 18 команд и второй регистр 19.
Блок 2 (фиг. 3) включает мультиплексор 20, счетчик 21 и узел 22 постоянной памяти с полями 22.1 и 22.20
Блок 3 (фиг. 4) содержит дешифратор 23 кода считывания, триггер 24 условия, арифметико-логический узел 25, первый регистр 26 адреса, one- ративную память 27, регистр 28 кон- станты, второй регистр 29 адреса и элемент НЕ 30„
Блок 4 (фиг, 5) состоит из элемента И 3t, элемента НЕ 32, таймера 33, узла 34 приоритетного прерывания, дешифратора 35 векторного адреса, триггера 36 прерывания и триггера 37 разрешения счета.
Устройство работает следующим об- разом.
При подаче на вход 12 сигнала начальной установки регистр 7 обнуляется и на вход кода операции блока 5 поступает код 0000 Переход к нулево- му адресу, что приводит к выдаче из блока 5 по адресному выходу адреса микрокоманды.A t О
Через регистр 6 нулевой адрес поступает на адресный вход памяти 8, и производится выборка первой микрокоманды микропрограммы, реализующей процедуру начального пуска.
Микропрограммы размещаются в па- мяти 8 и представляют собой совокуп- ность различных микрокоманд. Каждая микрокоманда состоит из М разрядов, сгруппированных в отдельные поля. Поле 8.1 содержит сигналы управления преобразованием адреса, которые преобразуются дешифратором 23 в сигналы подключения выходов регистров 6, 17 и 28, узла 25 и памяти 27 к информационному входу регистра 29. Поле 8оЗ содержит сигналы, имеющие многофункциональное назначение в зависимости от сопровождающей его микроинструкции, код которой хранится в поле 8,4. Сигналы поля 8.4 преобразуются дешифратором 9, простробированным синхротактами, поступающими с входа 13, в сигналы микроинструкции, предназначенные для местного управления..
Q
0 5 0 5
5
По каждому синхротакту код операции, хранящийся в поле 8,1, записывается в регистр 7, и на вход кода операции блока 5 поступает код новой операции, по которому блок 5 формирует адрес следующей микрокоманды: А : А + 1
Из памяти 8 производится выборка следующей микрокоманды микропрограммного начального пуска и т.д. Заканчивается микропрограмма начального пуска установкой устройства в режим ожидания.
Режим ожидания организован следующим образом.
Началом режима ожидания является сброс триггера 37 одной из микроинструкций, формируемых дешифратором 9. Триггер 37 устанавливается в нулевое состояние, и на вход разрешения счета блока 5 поступает сигнал низкого уровня, что блокирует приращение адреса микрокоманды
А А
Из памяти 8 считывается одна и та же микрокоманда Таким образом, устройство находится в режиме ожидания, выйти из которого может только при появлении на выходе узла 34 обобщенного запроса прерывания, устанавливающего триггер 37 в единичное состояние. В этом случае на вход разрешения счета блока 5 поступает сигнал высокого уровня, что разрешает приращение адреса микрокоманды
А : А + 1
Режим ожидания на этом заканчивается о
Условием окончания режима ожидания является наличие запросов прерывания на входах узла 34. При этом узел 34 решает вопрос о приоритетах при поступлении нескольких запросов одновременно. Управление узлом 34 осуществляется сигналами поля 8.3, поступающими на вход задания текущего приоритета, и соответствующей микроинструкцией, поступающей на вход задания режима. Узел 34 формирует вектор прерывания, соответствующий приоритету поступившего запроса, и выдает обобщенный запрос прерывания, заканчивающий режим ожидания и устанавливающий через триггер 36, элементы И 31 и НЕ 32 сигнал условия на втором входе логических условий блока 5.
516495406
При наличии на входе кода операции вкод регистра 6 через блок 5 трансли- блока, 5 кода 0110 Условный переход руется информация с выхода регистра
- блок 5
к адресу внешнего источника выдает сигнал выбора источника адреса, подключающий выход дешифратора 35, выполненный по схеме с тремя состояниями, к адресному входу блока 5, и транслирует полученную информацию на адресный вход регистра 6. Информа- 10 Р 25, в которое он устанавливается
сигналом, формируемым узлом 2Ь. Узел 25 может быть выполнен на
29, выполненного по схеме с тремя состояниями и подключаемого сигналом разрешения записи, формируемым блоком 5. Наличие сигнала признака результата на выходе блока 3 обеспечивается единичным состоянием триггеция на выходе дешифратора 35 представляет собой дешифрированный из вектора прерывания начальный адрес микропрограммы, обслуживающей поступивший запрос. Одним из запросов прерывания, поступающих в узел 34 является сигнал, формируемый таймером 33. Таймер 33 предназначен для организации паузы ожидания произвольной длительности. Для этого из поля 8.3 в таймер 33 записывается информация, представляющая собой число синхротак- тов, равное длительности паузы ожидания. Управление таймером осуществляется микропрограммно соответствующей микроинструкцией, поступающей с выхода дешифратора 9. Затем устанавливается режим ожидания. Отсчитав заданное число синхротактов, поступаБИС 1804 ВС1 и предназначен для модификации текущего адреса микропро-
J5 граммы, хранящегося в регистре 6,
и использования его в качестве адреса перехода на другую микропрограмму, а также для организации зацикливания внутри микропрограммы. Для этого в
20 один из внутренних регистров узла 25, выбранный сигналами поля 8.3, записывается через регистр 20 константа, соответствующая заданному числу циклов. Триггер 24 предварительно обну25 ляется. Затем в конце каждого цикла микропрограммы производится уменьшение содержимого выбранного регистра узла 25 до появления признака нулевого результата на выходе узла 25,
ющих на синхровход таймера 33, послед-30 который через триггер 24 и элемент ний выдает в узел 34 запрос прерыва- НЕ 30 Формирует сигнал условия, по- ния
L, заканчивающий режим ожидания. Такой вариант режима ожидания является стартстопным режимом с паузой ожидания произвольной длительности.
При наличии на входе кода операции блока 5 кода 0010 Переход к адресу из дешифратора команд блока 5 выдает сигнал разрешения загрузки команды, подключающий выход дешифратора 18, выполненный по схеме с тремя состояниями, к адресному входу блока 5, и транслирует полученную информацию на адресный вход регистра 6. Информация на выходе дешифратора 18 представляет собой дешифрированный из кода команды начальный адрес микропрограммы, обслуживающей поступившую на вход 10 команду. Команда с входа 10 транслируется через формирователь 16 на информационный вход регистра 19. Запись команды в регистр 19 производится сигналом сопровождения команды, поступающим с входа 15 на синхровход регистра 19.
При других кодах операции условного перехода и наличии сигнала признака результата на первом входе логических условий блока 5 на адресный
35
40
ступающий на первый вход логических условий блока 5. Таким образом осуществляется условный переход на адрес, записанный предварительно в регистр 29, что означает конец зацикливания. Использование нескольких внутренних регистров узла 25 позво- ляет реализовать выполнение микропрограммы с циклами разных уровней (цикл в цикле).
Адрес перехода, хранящийся в регистре 29, может быть получен из нескольких источников: из регистров 6, 17 и 28; из узла 25; из памяти 27, выходы которых выполнены по схеме с тремя состояниями. Подключение любого из этих источников осуществляется сигналами, формируемыми дешифратором 23 из сигналов поля 8,2.
Память 27 совместно с регистром 26 представляет собой буферную па- мтяь для хранения информации.
Управление узлом 25, памятью 27, регистрами 27-29 осуществляется еиг- налами микроинструкций, формируемыми дешифратором 9.
Результатом работы микропрограммного устройства управления является
45
50
Р 25, в которое он устанавливается
29, выполненного по схеме с тремя состояниями и подключаемого сигналом разрешения записи, формируемым блоком 5. Наличие сигнала признака результата на выходе блока 3 обеспечивается единичным состоянием триггеБИС 1804 ВС1 и предназначен для модификации текущего адреса микропро-
граммы, хранящегося в регистре 6,
и использования его в качестве адреса перехода на другую микропрограмму, а также для организации зацикливания внутри микропрограммы. Для этого в
один из внутренних регистров узла 25, выбранный сигналами поля 8.3, записывается через регистр 20 константа, соответствующая заданному числу циклов. Триггер 24 предварительно обнуляется. Затем в конце каждого цикла микропрограммы производится уменьшение содержимого выбранного регистра узла 25 до появления признака нулевого результата на выходе узла 25,
который через триггер 24 и элемент НЕ 30 Формирует сигнал условия, по-
ступающий на первый вход логических условий блока 5. Таким образом осуществляется условный переход на адрес, записанный предварительно в регистр 29, что означает конец зацикливания. Использование нескольких внутренних регистров узла 25 позво- ляет реализовать выполнение микропрограммы с циклами разных уровней (цикл в цикле).
Адрес перехода, хранящийся в регистре 29, может быть получен из нескольких источников: из регистров 6, 17 и 28; из узла 25; из памяти 27, выходы которых выполнены по схеме с тремя состояниями. Подключение любого из этих источников осуществляется сигналами, формируемыми дешифратором 23 из сигналов поля 8,2.
Память 27 совместно с регистром 26 представляет собой буферную па- мтяь для хранения информации.
Управление узлом 25, памятью 27, регистрами 27-29 осуществляется еиг- налами микроинструкций, формируемыми дешифратором 9.
Результатом работы микропрограммного устройства управления является
выдача на выход 14 микроопераций, количество которых определяется целью использования устройства. Для того, чтобы количество микроопераций было независимо от разрядности памяти 8, используется узел 22 произвольной разрядности. Адрес узла 22 формируется счетчиком 21, позволяющим выбирать любую зону узла 22, начиная от задан- ного адреса. Начальный адрес зоны задается на информационном входе счетчика 21 сигналами поля 8„3, Запись и последующий инкремент адрес в счетчике 21 осуществляются сигнала- ми микроинструкции, формируемыми дешифратором 9. Таким образом производится последовательная выборка микроопераций из узла 22.
Ноле 22.2 содержит один разряд, предназначенный для управления мульти плексор.ом 20, При высоком уровне сигнала поля 2202 на выход 14 через мультиплексор 20 поступают сигналы микроопераций, формируемые полем 22,1. При низком уровне сигнала поля 22.2 на выход 14 через мультиплексор 20 транслируются сигналы, с выхода одного из узлов 8 регистров 6, 17 и 28, узла 25, памяти 27, что может быть использова- но для контроля работы устройства вненими средствами.
Формула изобретения
1. Микропрограммное устройство управления, содержащее блок управле- ния последовательностью микрокоманд, управляющую память и конвейерный регистр, вход установки которого под- до ключей к входу канальной установки устройства, выход поля управления формированием следующей микрокоманды управляющей памяти соединен с информационным входом конвейерного регистра, 45 выход которого соединен с входом кода операции блока управления последб- вательностью микрокоманд, тактовый вход которого соединен с тактовым входом конвейерного регистра и под- JQ ключей к входу синхронизации устрой-- ства, отличающееся тем$ что, с целью сокращения емкости управляющей памяти, оно содержит блок формирования микроопераций, адресный регистр, дешифратор микроинструкций, блок ввода команды и два блока формирования адреса, информационные выходы которых соединены с первым информа
0 5 О 5
о 45Q ционным выходом блока ввода команды и подключены к адресному входу блока управления последовательностью микрокоманд, адресный выход которого соединен с первым информационным входом адресного регистра, первый выход которого соединен с адресным входом управляющей памяти, выход поля управления преобразованием адреса которой подключен к первому входу кода операции первого блока формирования адреса, информационный вход-выход которого соединен с вторым информационным выходом блока ввода команды, вторым выходом адресного регистра и подключен к первому информационному входу блока формирования микроопераций, выход которого является выходом микроопераций устройства, вход кода команды которого подключен к информационному входу блока ввода команды, вход сопровождения запросов прерывания устройства подключен к входу записи запросов второго блока формирования
адреса, первый информационный вход которого подключен к входу запросов прерывания устройства, выход дешифратора микроинструкций соединен с входами кода операции второго блока формирования адреса и блока формирования микроопераций и вторым входом кода операции первого блока формирования адреса вход стробирова- ния дешифратора микроинструкций соединен с тактовым входом второго блока формирования адреса, тактовым входом адресного регистра и подключен к входу синхронизации устройства, выход управления записью адреса и информационный выход первого блока формирования адреса подключены соответственно к входу записи адресного регистра и информационному входу блока ввода команды, первый вход разрешения записи которого соединен с выходами разрешения загрузки команды блока управления последовательностью микрокоманд, выходы разрешения работы конвейерного регистра и выбора источника адреса которого подключены соответственно к входу разрешения записи первого блока формирования адреса и к входу разрешения выдачи адреса второго блока формирования адреса, первый и второй входы логических условий и вход разрешения счета блока управления последовательностью микрокоманд соединены соответственно с
выходом признака результата первого блока формирования адреса, выходом прерывания и выходом разрешения счета второго блока формирования адреса, вход начальной установки которого
подключен к входу начальной установки устройства, выход многофункционального поля управляющей памяти соединен с вторыми информационными входами второго блока формирования адреса и блока формирования микроопераций, выход поля местного управления управляющей памяти соединен с информационным входом дешифратора микроинструк- ций, входы разрешения ввода, сопровож дения команды и сопровождения запросов прерываний устройства подключены соответственно к первому входу задания режима ввода, первому и второму синхровходам блока ввода команды, второй вход задания режима ввода которого соединен с выходом разрешения приема команды первого блока формирования адреса, кроме этого,
выход многофункционального поля управляющей памяти соединен с информационным входом первого блока формирования адреса.
2.Устройство по п, 1, о т л и- чающееся тем, что блок ввода команды содержит первый регистр, вто-
рой регистр, дешифратор команд, шинный фбрмирователь, причем информационный вход блока подключен к информационному входу шинного формирователя, первый информационный выход которого соединен с выходом первого регистра и является вторым информационным выходом блока, первым информационным выходом которого является выход дешифратора команд, информационный и стро- бирующий входы которого подключены соответственно к выходу второго регистра и к входу разрешения записи блока, первый и второй входы задания режима ввода и первый и второй син- хровходы блока подключены соответственно к управляющему входу шинного формирователя, входу разрешения записи первого регистра, синхровходу первого регистра и синхровходу вто рого регистра, информационный вход которого соединен с информационным входом/первого регистра и с вторым выходом шинного формирователя.
3.Устройство по п. 1, о т л и- чающееся тем, что блок фор- гирования микроопераций содержит
0
0
( 5
55
40
45
50
счетчик, узел постоянной памяти и мультиплексор, причем выход мультиплексора является выходом блока, первый и второй информационные входы и вход кода операции которого являются соответственно первым информационным входом мультиплексора, информационным входом счетчика и входом управления режимом работы счетчика, выход которого подключен к адресному входу узла постоянной памяти, первый и второй выходы которого соединены соответственно с вторым информационным и управляющим входами мультиплексора.
4. Устройство по п. 1, отличающееся тем, что первый блок формирования адреса содержит дешифратор кода считывания, триггер условия, арифметико-логический узел, первый регистр адреса, оперативную память, второй регистр адреса, элемент И, регистр константы, информационный выход которого соединен с первым информационным входом и выходом арифметико-логического узла, информационными входами первого и второго регистров адреса и оперативной памяти, выходом оперативной памяти и является информационным входом-выходом блока, первый вход кода операции которого является входом дешифратора кода считывания, первый, второй и третий выходы которого соединены соответственно с входами чтения- записи оперативной памяти и регистра константы и арифметико-логического узла, синхровход регистра константы соединен с синхровходами оперативной памяти, первого и второго регистров адре- са, арифметико-логического узла, первого установочного входа триггера условий и подключен к тактовому входу блока, четвертый и пятый выходы дешифратора кода считывания являются соответственно выходом разрешения приема команды и выходом управления записью адреса блока, информационный выход и выход признака результата которого подключены соответственно к выходу второго регистра адреса и выходу элемента И, первый вход которого соединен с входом записи второго регистра адреса и подключен к входу разрешения записи блока, второй вход кода операции которого подключен к информационному входу регистра константы, второму информационному входу
111
и входу кода операции арифметико-логического узла, выход признака результата которого соединен с вторым установочным входом триггера условия, выход которого соединен с вторым входом элемента И.
5. Устройство по п. 1, отличающееся тем, что второй бло формирования адреса содержит таймер, дешифратор векторного адреса, триггер прерывания, триггер разрешения счета, элемент И, элемент НЕ и узел приоритетного прерывания, синхровход которого соединен с синхровходом таймера и подключен к тактовому входу блока, вход кода операции которог подключен к входам сброса триггера прерывания и триггера разрешения счета и входам задания режима таймера и узла приоритетного прерывания, вход задания текущего приоритета которого и информационный вход таймера подключены к второму информационному входу блока, первый информационный вход и вход записи запросов которого подключены к входу запросов прерываний
15
12
5
0
5
и входу разрешения записи узла приоритетного прерывания, выход вектора прерываний которого соединен с информационным входом дешифратора векторного адреса, стробирующий вход которого соединен с первым входом элемента И и подключен к входу разрешения выдачи адреса блока, выход прерывания которого является выходом элемента НЕ, вход которого соединен с выходом элемента И, второй вход которого соединен с выходом триггера прерывания, первый установочный вход которого соединен с выходом запроса прерывания узла приоритетного прерывания и первым установочным входом триггера разрешения счета, второй установочный вход которого соединен с вторым установочным входом триггера прерывания и подключен к входу начальной установки блока, выход разрешения счета и информационный выход которого подключены соответственно к выходу триггера разрешения счета и выходу дешифратора векторного адреса.
название | год | авторы | номер документа |
---|---|---|---|
Управляющая векторная вычислительная система | 1982 |
|
SU1120340A1 |
Процессор с микропрограммным управлением | 1983 |
|
SU1149273A1 |
Микропрограммное устройство управления | 1986 |
|
SU1376084A1 |
Микропрограммное устройство управления с контролем | 1983 |
|
SU1136162A1 |
Микропрограммное устройство управления | 1990 |
|
SU1798781A1 |
Процессор для мультипроцессорной системы | 1985 |
|
SU1295410A1 |
Микропрограммное устройство управления | 1983 |
|
SU1156073A1 |
Устройство управления микропрограм-МНыМи пЕРЕХОдАМи | 1979 |
|
SU813428A1 |
Устройство управления | 1989 |
|
SU1654820A1 |
Микропрограммное устройство для управления и обмена данными | 1983 |
|
SU1129601A1 |
Изобретение относится к цифровой вычислительной технике, в частности к микропрограммным устройствам управления, и может быть использовано в вычислительных системах, устройствах связи, контрольно-измерительных приборах, системах управления внешними устройствами и в процессорах специального назначения. Целью изобретения является сокращение емкости управляи ющей памяти. Устройство содержит блок 1 ввода команды, блок 2 формирования микроопераций, первый и второй блоки 3, 4 формирования адреса, блок 5 управления последовательностью микрокоманд, адресный регистр 6, конвейерный регистр 7, управляющую память 8 и дешифратор 9 микроинструкций. Цель достигается особой организацией полей управляющей памяти, что позволяет уменьшить ее разрядность, а также использованием возможности работать без приращения адреса микрокоманды, т.е. обеспечивать выполнение одной и той же микрокоманды любое количество раз, что упрощает микропрограммное обеспечение по обслуживанию запросов прерывания. 4 з.п 0 ф-лы. 5 ил. (Л С
17
19
/
±
г#
Фиг. 2
Т
±
22 221 | 22.2
20
т
фиг.З
Способ диагностики хронического панкреатита у детей | 1984 |
|
SU1236375A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Дж.Мик и др | |||
Проектирование микропроцессорных устройств с разрядно-мо- дульной организацией | |||
М,: Мир, 1904, т | |||
Печь для непрерывного получения сернистого натрия | 1921 |
|
SU1A1 |
Способ крашения тканей | 1922 |
|
SU62A1 |
Авторы
Даты
1991-05-15—Публикация
1988-10-28—Подача