Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Прохождение запроса на прерывание через контроллер




· Сигнал запроса поступает на вход irqx и устанавливает соответствующий бит регистра IRR в «1».

· Регистр маски IMR определяет, какие прерывания разрешены (0 – разрешены, 1- запрещены).

· Если бит IMR =0, то сигнал поступает к регистру приоритета PR. Самый высокий приоритет у уровня irq0. Конфликт возникает, если на входах регистра PR одновременно несколько запросов.

· Регистр PR выбирает запрос на прерывание с наивысшим приоритетом и предает сигнал на схему управления, которая формирует сигнал INT, поступающий на вход INTR микропроцессора.

· Если прерывания разрешены (IF=1, TF=0), то микропроцессор сбрасывает флаг (IF= 0) (запрещает аппаратные прерывания) и передает контроллеру сигнал подтверждения INTA.

 

При поступлении сигнала INTA контроллер выполняет следующее:

1. Сбрасывает бит в регистре IRR,

2. Устанавливает бит в регистре ISR, соответствующий входу irq (фиксирует факт обработки прерывания с данным приоритетом),

3. формирует номер вектора прерываний в виде кода на выходах d0 … d7.

Далее происходит обработка прерывания.

 

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

Если поступит запрос более высокого уровня, то текущая процедура обработки остановится, а поступивший запрос вызовет свою процедуру обработки.

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

Следует помнить, что при запуске обработчика флаг IF будет сброшен и аппаратные прерывания будут запрещены. Обрабатывающая программа должна сама определить, когда внешние прерывания не помешают ее работе. Она может разрешить внешние прерывания (sti) или вновь запретить (cli).




Поделиться с друзьями:


Дата добавления: 2013-12-12; Просмотров: 374; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.