Микропрограммное устройство для обработки прерываний

Иллюстрации

Показать все

Реферат

 

МИКР011РОГР.АММНОЕ УСТРОЙСТВО ДЛЯ ОБРАБОТКИ ПРЕРЫВАНИЙ, содержащее первьй элемент И, первую элементов И, два триггера, первый элемент ИЛИ, регистр маски и регистр блокировки прерываний, причем входы прерываний устройства соединены с первыми входами элементов И первой группы, отличающееся тем, что, с целью расширения функциональных возможностей за счет введения относительного и заданного видов приоритета, расширения класса решаю1цик задач формированием микропрограьгм обработки прерьшаний абонентов с различным внутренним представлением данных и команд, в него введены вторая группа элементов И, блок элементов И, второй, третий, четвертый элементы ИЛИ, второй элемент И, счетчики адресов и адресных зон, дешифратор, блок памяти, элемент задержки, буферный регистр, причем второй вход каждого элемента И первой группы соединен с вькодом одноименного разряда регистра блокировки прерываний, третий вход каждого элемента И первой группы соединен с выходом одноименного разряда регистрт-а маски, группа входов которого является группой кодовых входов устройства , выход кажцого элемента И первой группы соединен с первым входом одноименного элемента И второй группы и с соответствующим входом первого элемента ИЛИ, выход которого соединен с первым входом первого элемента И, выход которого соединен с первым входом второго элемента ИЛИ и с счетным входом счетчика адресных зон, группа выходовкоторого соединена с группой входов адреса зогш блока памяти и с группой входов дешифратора, первая и вторая, (/) группы выходов блока памяти соединены с первой и второй группами входов буферного регистра, первая и вторая группы выходов которого соединены соответственно с группой выходов устройства и с группой входов блока элементов И, группа вькодов и вход которого соединены соответственно с группой входов счетчика адресных зон и с прямым выходом первого триггера, инверсный выход кото-/ рого соединен с вторым входом первого элемента И, третий и четвертый входы которого соединены соответственно с первым тактовым входом устройства и с инверсным вькодом второго триггера, прямой вькод которого соединен с первым входом второго элемента И, второй вход которого соединен с вторым тактов-ым входом устройства , вход логической единицы которого соединен с В-входами второго триггера и регистра блокировки прерьшаний , первьш и второй выходы бло

СООЗ СОВЕТСНИХ

СОЦИАЛИСТИЧЕСНИХ

РЕСПУВЛИН (l% (И) зов (ф 05 f- 9/46

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К ABTGPCHGMV СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И О HPblTMA (21) 3616996/18-24 (22) 08.06.83 (46) 30.11.84. Бюл. У 44 (72) В.A.Кривего, Н.Н.Прокопенко, В.В.Кривего и А.И.Кривенков (71) Шахтинский технологический институт бытового обслуживания (53) 681.325 (088.8) (56) 1. Авторское свидетельство СССР

Р 525094, кл . g 06 F 9/46, 1976.

2. Авторское свидетельство СССР, У 855665, кл. Cj 06 F 9/46, 1979 (прототип) . (54) (57) МИКРОПРОГРAMMHOE УСТРОЙСТВО

ДЛЯ ОБРАБОТКИ ПРЕРЫВАНИЙ, содержащее первый элемент И, первую группу элементов И, два триггера, первый элемент ИЛИ, регистр маски и регистр блокировки прерываний, причем входы прерываний устройства соединены с первьми входами элементов И первой группы, о т л и ч а ю щ е е с я тем, что, с целью расширения функциональных возможностей за счет введения относительного и заданного видов приоритета, расширения класса решающих задач формированием микропрограмм обработки прерываний або— нентов с различным внутренним пред— ставлением данных и команд, в него введены вторая группа элементов И, блок элементов И, второй, третий, четвертый элементы ИЛИ, второй элемент И, счетчики адресов и адресных зон, дешифратор, блок памяти, элемент задержки, буферный регистр, причем второй вход каждого элемента

И первой группы соединен с выходом одноименного разряда регистра блокировки прерываний, третий вход каждого элемента И первой гругпы соединен с выходом одноименного разряда ре-. гистра маски, группа входов которого является группой кодовых входов устройства, выход каждого элемента И первой группы соединен с первым входом одноименного элемента И второй группы и с соответствующим входом первого элемента ИЛИ, выход которого соединен с первым входом первого элемента И, выход которого соединен с первым входом второго элемента

KIH и с счетным входом счетчика адр ес ных з оч, гр уппа выходов которого соединена. с группой входов адреса зоны блока памяти и с группой Р входов дешифратора, первая и вторая группы выходов блока памяти соединены с первой и второй группами входож буферного регистра, первая и вторая группы выходов которого соеди- д иены соответственно с группой выходов устройства и с. группой входов блока элементов И, группа выходов и вход которого соединены соответственно с группой входов счетчика адресных зон и с прямым выходом первого триггера, инверсный выход которого соединен с вторым входом перmoro элемента И, третий и четвертый входы которого соединены соответственно с первым тактовым входом устройства и с инверсным выходом второго триггера, прямой выход которого соединен с первым входом второго элемента И, второй вход которого соединен с вторым тактовым входом устройства, вход логической единицы которого соединен с 2 -входами второго триггера и регистра блокировки прерываний, первый и второй выходы бло1126956 ка памяти соединены соответственно с первым входом третьего элемента

ИЛИ и через элемент задержки с суммируйщим входом счетчика адресных зон, выход третьего элемента ИЛИ соединен с входом сброса второго триггера, с входом сброса счетчика адресных зон и с вторым входом второго элемента ИЛИ, вторые входы и выходы эпементов И второй группы соединены соответственно с выходами дешифратора, с выходами четвертого элемента ИЛИ и с поразрядными входами сброса регистра блокировки прерываний, тактовый вход которого и второй вход третьего элемента ИЛИ

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных машинах, работающих в однопроцессорном, мультипроцессорном и мультипрограммном режимах.

Известно устройство прерывания, содержащее .регистр прерывания, группы элементов И, группы элементов НЕ, регистр маски, группы элементов ИЛИ, регистр взаимодействия запросов Ц

Недостатками известного устройства являются сравнительно большой объем оборудования и узкие функциональные возможности. 15

"Наиболее близким к предлагаемому является устройство для обработки прерывания, содержащее регистр маски, группы элементов И, шифратор, блок элементов И, элемент ИЛИ, эле- о мент И и два триггера управления, причем информационные входы регистра маски являются первой группой информационных входов устройства, разрядные выходы регистра. прерывания соединены соответственно с первыми входами элементов И группы, выход . шифратора является выходом устройства, разрядные выходы регистра маски соединены соответственно с вторыми ЗО входами элементом И группы, инфор мационный вход регистра прерывания соединен с выходом блока элементов И, группа входов блока элементов И являсоединены с входом сброса устройства, выходы регистра блокировки прерываний являются индикационными выходами устройства, единичные входы регистра блокировки прерываний соединены с ответными входами устройства, тактовый вход второго триггера соединен с выходом четвертого элемента

ИЛИ, выход второго элемента ИЛИ соединен с входом сброса счетчика адресов, счетный вход которого и тактовый вход буферного регистра соединены с выходом второго элемента И, единичный и нулевой входы первого триггера соединены соответственно с первым и вторым входами режима устройства ется второй группой информационных входов устройства, выходы элементов

И группы соединены соответственно с входом элемента ИЛИ и с группой входов шифратора, выход элемента ИЛИ соединен с первым входом элемента И, второй вход элемента И соединен с тактовым входом устройства, нулевой вход первого триггера управления и нулевой вход второго триггера управления соединены с управляющим входом блока элементов И, выход второго триггера управления соединен с управляющим входом шифратора, выход каждого элемента И группы, кроме последнего, соединен с третьим входом последующего элемента И группы Л, Недостатки данного устройства— сравнительная узость функциональных возможностей и класса решаемьы задач.

Цель изобретения — расширение функциональных возможностей за счет введения относительного и заданного видов приоритета, расширение класса решаемых задач формированием микропрограмм обработки прерываний абонентов с различным внутренним предста влени ем д BH HbK и к ома нд.

Поставленная цель достигается тем, что в микропрограммное устройство для обработки прерываний, содержащее первый элемент И, первую группу элементов И, два триггера, первый элемент ИЛИ, регистр маски и регистр

45

3 1 1269 блокировки прерываний, причем входы прерываний устройства соединены с первыми входами элементов И первой группы, введены вторая группа элементов И, блок элементов И, второй, третий, четвертый элементы ИЛИ, второй элемент И, счетчики адресов и адресных зан, дешифратор, блок .памяти, элемент задержки, буферный регистр, причем второй вход каждого 10 элемента И первой группы соединен с выходом одноименного разряда регистра блокировки прерываний, третий вход каждого элемента И первой группы соединен с выходом одноименного 15 разряда регистра. маски, группа входов которого является группой кодовых выходов устройства, выход каждого элемента И первой группы соединен с первым входом одноименного 20 элемента И второй группы и с соответствующим вхсдом первого элемента

ИЛИ, выход которого соединен с первым входом первого элемента И, выход которого соединен с первым входом 25 второго элемента ИЛИ и с счетным входом счетчика адресных зон, группа выходов которого соединена с группой входов адреса зоны блока памяти и с группой входов дешифратара, 30 первая и вторая группы выходов блока памяти соединены с первой и второй группами входов буферного регистра, первая и вторая группы выходов которого соединены соответственно с группой выходов устройства и с

I группой входов блока элементов И, группа выходов и вход которого соединены соответственно с группой входов счетчика адресных зон и с прямым 40 выходом первого триггера инверсный

У выход которого. соединен с вторым входом первого элемента И, третий и четвертый входы которого соединены соответственно с первым тактовым входом устройства и с инверсным выходом второго триггера, прямой выход которого соединен с.первым входом

1 второго элемента И, второй вход которого соединен с вторым тактовым входом устройства, вход логической единицы которого соединен с3 -âõoäàìè второго триггера и регистра блокировки прерываний, первый и второй выходы блока памяти. соединены соответственно с первым входом третьего элемента ИЛИ и через элемент задержки с суммирующим входом счетчика адресных зон, выход третьего элемента ИЛИ соединен с входом сброса второго триггера, с входом сброса счетчика адресных эон и с вторым входом второго элемента ИЛИ, вторые входы и выходы элементов И второй группы соединены соответственно с выходами дешифратора, с выходами четвертого эпемента ИЛИ и с поразрядными входами сброса регистра блокировки прерываний, тактовый вход которого и второй вход третьего элемента ИЛИ соединен с входом сброса устройства, выходы регистра блокировки прерываний являются индикационными выходами устройства, единичные входы регистра блокировки прерываний соединены с ответными входами устройства, тактовый вход второго триггера соединен с выходом четвертого элемента ИЛИ, выход второго элемента ИЛИ соединен с входом сброса счетчика адресов, счетный вход катарога и тактовый вход буферного регистра соединены с выходом второго элемента И, единичный и нулевой входы первого триггера соединены соответственно с первым и вторым входами режима устройства.

На чертеже представлена функциональная схема устройства для обработки прерывания.

Устройство содержит входы 1 сигналов прерывания, элементы И 2 первой группы, регистр 3 блокировки прерываний, регистр 4 маски, элемент

ИЛИ 5, элемент И 6, элементы И 7 второй группы, дешифратор 8, элемент ИЛИ 9, триггер 10, счетчик 11 адресов, счетчик 12 адресных зан, блок 13 памяти, буферный регистр 14, блок 15 элементов И, триггер 16, элемент 17 задержки, элементы ИЛИ 18 и 19, элемент И 20, группу выходов

21, вход 22 сброса, первый 23 и второй 24 тактовые входы, ответные входы 25, индикационные выходы 26 входы 27 и 28 режима, группу кодовых входов 29.

Устройство работает следующим образом.

Незамаскированные сигналы прерывания с входов 1 через элементы И 2 первой группы поступают на элемент

ИПИ 5.

Управление элементами И 2 первой группы осуществляется соответствующим разрядом регистра 4. Количество разрядов регистра 4 определяется

112695б количеством входов 1 сигналов прерываний, требующих маскирования, т.е. запрещения на определенный момент времени. Вторыми входами элементов И 2 управляет регистр 3. . В первоначальный мсиент на его выходах устанавливаются единицы, Замаскированным считаешься вход элемента

И 2, на вход которого от регис -ра 4 постучает запрещающий потенциал.

Элемент ИЛИ 5, на входе которого имеется хотя бы один сигнал прерываний, разрешает работу элемента

И 6, на второй вход которого поступает тактовая частота с входа 23.

При наличии разрешающего потенциала на третьем входе, элемент И 6 выдает серию импульсных сигналов, которая поступает на счетный вход счетчика 12. Количество импульсных сигналов в этой серии зависит от номера обрабатываемого разряда прерывания и исходного состояния счетчика

12. Исходное состояние счетчика 12 адресных сигналов в первоначальный момент равно нулю, а в последующие зависит от вида приоритета, т.е. от состояния триггера 16

Количество импульсов в указанной серии формируется элементом И 6, счетчиком 12, дешифратором 8, одним из элементов И 7, элементом ИЛИ 9, триггерами 10 и 16.

Так как на момент обработки сиг- 35 налов прерывания триггеры 10 и 16 находятся в состояниях, разрешающих (по соответствующим входам) работу элемента И 6, то сигнал прерывания прошедший с одного из входов 1 через элементы И 2 и ИЛИ 5 разрешит (в начале работы сигнзлом с входа

22, а в последующих циклах сигналом от блока 13) прохождение импульсов на счетный вход счетчика 12 (счетчик 12 в этом режиме работы обнулен), Счетчик 12 подсчитывает эти импульсы и кодом, образуемым на его выходах, через дешифратор 8 начинает поиск обрабатываемого разряда, последовательно опрашивая элементы

И 7. При совпадении сигналов на входе элемента И 7, последний вырабатывает сигнал, который через элемент

HJIH 9 установит триггер 10 в состоя- 5-" ние единицы.

Своим нулевым выходом триггер 10 запрети работу элемента И 6.

Таким образом, элемент И 6 вырабатывает серию импульсов, соответствующую номеру обрабатываемого сигнала (абонента) прерывания, а с четчик 1 2 з афиксирует с оот ветствующий этому сигналу код базового адреса и будет его удерживать до полной обработки программы, обрабатывающей этот сигнал.

Рассмотрим работу устройства прерывания при абсолютном приоритете обработки прерываний. Обработка сигналов прерывания начинается с нулевого значения счетчика 12.

При поступлении импульсных сигналов на счетный вход счетчика 12 последний через дешифратор 8 поочередно подготавливает (начиная с нулевого) работу элементов И 7 второй гр уппы.

При совпадении сигнала прерывания с элементов И 2 первой группы и соответствующего сигнала с дешифратора

8, элемент ИЛИ 9 установит триггер

10 в единичное состояние. Триггер

10 сигналом с инверсного выхода запрет по третьему входу "лемент И 6, который прекратит поступление импульсных сигналов на счетный вход счетчика 12» следовательно, прекратит обнуление счетчика 11, которое проводилось каждым импульсным сигналом с элемента И 6 через элемент ИЛИ 19.

Одновременно выделившийся сигнал на выходе соответствующего элемента

И 7, установит передним фронтом в нулевое состояние соответствующий разряд регистра 3. Этот разряд запрет соответствующий элемент И 2. номер которого зафиксирован в четчике 12. Регистр 3 приводится в исходное состояние (разрешающее работу всех элемеигов И 2) сигналом с входа 22.

В дальнейшем разблокировка соответствующего разряда регистра 3 проводится по единичному входу соответствующего разряда сигналом с сооТ ветствующего абонента.

Таким образом, перепад (фронт) разряда регистра 3 блокировки прерывания, установленного в нулевое состояние (или его инверсное плечо) укажет сигнал прерывания, который в данный момент обрабатывается в блоке прерывания, а потенциал с данного разряда укажет нахождение абоI 126956 прерывания.

Данная микропрограмма выполняется до тех пор, пока в одном из ее разрядов, предназначенном для управления триггером 10, не будет считан сигнал, который произведет через элемент ИЛИ 18 сброс триггера 10 в нулевое состояние. При этом триггер

10 разрешит работу элемента И 6, который сбросит счетчик 11 в ноль.

Так как микропрограмму можно рассматривать как последовательность микрокома нд, длительность которых может быть различной, то изменение

45 длительности микрокоманд в устройстве дискретно с точностью до периода входной частоты с входа 24.

Для того, чтобы устранить перерывы потенциалов микрокоманд, крто — 50 рые снимаются с блока 13 по соседним адресам, на время выборки инфс рмации в устройство введен регистр 14, информация в который заносится с блока 13 по заднему фронту сигналов с элемента И 20.

Таким образом, длительность периода импульсов с входа 24 должна выбинента, формирующего сигнал прерыва ния в состоянии прерывания. Сигналами с регистра 3 запрещается обработка соответствующих сигналов прерывания, это означает, что прерыва- 5 ние в режиме прерывания запрещено, т.е. глубина прерывания от одного абонента равна единице.

После срабатывания триггер 10 сигналом с его единичного выхода 10 разрешается (подготавливается) р аб ота элемента И 20. Элемент И 20 формирует на своем выходе серию импульсов, передним фронтом которых счет— чик 11 принимает значения от нуле- 15 вого. Каждому такому значению счетчика 11 (которое является младшей частью общего адреса блока 13, а старшей частью этого адрес а — значение счетчика 12) соответствует 20 микрокомандное слово зафиксированное в блоке 13.

Последовательность микрокомандных слов, которую можно рассматривать поразрядно или пословно, составляет 25 микр опрогр амму, к от ор ая р еализует запоминание слова состояния абонента или всю программу обработки прерывания (включая восстановление слова состояния абонента) на начало 30 раться из расчета времени выборки информации из блока 13.

Для управления работой устройства в блок 13 введена группа разрядов, управляющая видом приоритета.

Приоритет обработки прерываний может быть абсолютным, относительным и заданным.

Абсолютным считается вид приоритета, при котором приоритетность отдается самому старшему (левому) разряду (входу) прерывания и îí обрабатываетс я .всегда при er c воз никновении по окончании обработки текущего сигнала прерывания. Работа устройства при абсолютном приоритете была описана вьппе.

Относительным считается вид приоритета, при котором следующим по порядку обрабатывается ближайший справа разряд относительно обработанного в т екущий моме нт .

Относительньп приоритет выполняется так же как и абсолютный с той лишь р азницей, что в устройстве не пр огр аммируетс я "1", ос ущест вл яющая сброс счетчиков 12 и 11. Тогда следующим по порядку обрабатывается запрос на прерывание, сигнал которого присутствует и находится справа по гриоритету относительно текущего.

Заданным считается вид приоритета, при котором сама программа обрабаты4 ваемого запроса указывает номер запроса, который должен быть обработан вслед за ней.

Задатчиком вида приоритета является триггер 16.

Если триггер 16 находится в состояIt (! нии 1, то он своим сиг налом с единичного выхода разрешает работу блока 15, через который в счетчик

12 вписывается код зоны (каждая зона соответствует определенному абоненту)„ микропрограмма которой должна быть отработана по окончанию отработки текущей. При этом триггер 16 запрещает работу элемента И 6, Этот код вписывается в счетчик 12 сигналом, поступакппим с блока 13 через элемент 17 задержки.

Веденина задержки сигнала в ликии

17 задержки определяется временем прохождения информации через блок

15 и требуемым временем опрежения информации для записи ее на счетчик 12.

126956

Заказ 8741/38

Подписное

ВНИШК

Тираж 698

9 1

Обслуживание триггера 16, а также регистра 4 маски прерываний осуществляется средствами, внешними по отношению к устройству.

После окончания прерывания, соответствук ций абонент формирует квитирующий сигнал, сигнализирующий о окончании обработки соответствующего сигнала прерывания. Этот сигнал поступит на соответствунмпнй разряд регистра 3 блокировки прерывания и установит его в "1".

Предлагаемое изобретение позволит расширить функциональные возможности устройства и класс решаемых задач, Филиал ППП Патент", r. Ужгород, ул. Проектная, 4