Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Организация прерываний в микроЭВМ




 

Обмен с прерыванием программы - одна из разновидностей программно управляемого обмена данными с ВУ в микроЭВМ. Команды обмена данными в этом случае выделяются в отдельный программный модуль - подпрограмму (ПП) обработки прерывания. Аппаратные средства обработки прерываний приостанавливают выполнение основной программы и передают управление этой ПП. Действия, выполняемые при этом МП, как правило те же,что и при обращении к обычной ПП. Только при обращении к данной ПП такие действияинициируются командой, а при обработке прерывания - управляющим сигналом от ВУ, который называют требованием или запросом прерывания.

Эта особенность обмена с прерываниемобеспечивает возможности обмена с ВУ в произвольные моменты времени, определяемой внешней по отношению к микроЭВМ средой. Кроме того, такой обмен экономит время МП - нет необходимости тратить его в циклах ожидания готовности медленных ВУ.

При обработке прерывания необходимо сохранить определённую информацию о прерываемой программе. Обычно содержимое Счк и регистра состояния процессора сохраняется с помощью аппаратных средств. Сохранение остальных регистров МП, используемых в ПП обработки прерывания (ППОП), возлагается на неё самоё. Ясно,что крайне желательно в целях увеличения производительности при обработке прерывания снижать объём сохраняемой информации и число команд, выполняемых при этом.

Формирование "Запросов прерывания" происходит в ИК соответствующих ВУ. В простейших случаях в качестве такого сигнала может использоваться сигнал "Готовность ВУ". Однако у такого решения есть недостаток - МП не может управлять такими прерываниями (запрещать/разрешать их для отдельных ВУ). В результате oрганизация обмена прерыванием с несколькими ВУ весьма усложняется.

Для решения этой проблемы регистр состояния ИК ВУ дополняют еще одним разрядом - "Разрешение прерывания". Запись "1" или "0" в этот регистр производится программным путем - по одной из линий (шин) МД. "Запрос прерывания" формируется только при наличии "1" в разрядах "Готовность ВУ" и "Разрешение прерывания" регистра состояния ИК.

Аналогично решается проблема управления прерываниями в микроЭВМ в целом. Для этого в регистре состояния процессора выделяется разряд, содержимое которого определяет - разрешены или запрещены прерывания от ВУ. Значения этого разряда может устанавливаться программным путем.

В микроЭВМ (МП) обычно используется т.н. одноуровневая система прерываний, т.е. сигналы "Запрос прерывания" от всех ВУ поступают на один вход МП. Для идентификации ВУ, запросившего прерывание, используют в основном два следующих способа:

1) программный опрос регистров состояния, именно, разряда "готовность ВУ" ИК всех ВУ;

2) Использование т.н. векторов прерывания.

I. Организация прерываний с программным опросом предполагает наличие в памяти микроЭВМ единой ПП обслуживания (ППОП) прерываний от всех ВУ.

Работа по обслуживанию протекает следующим образом. В конце последнего машинного цикла выполняемой команды основной программы МП проверяет наличие запроса прерываний от ВУ. Если запрос имеется и прерывание МП разрешено, то МП переключается на выполнение ППОП.

После сохранения регистров МП, используемых в ППОП, начинается последовательный опрос регистров состояния ИК всех ВУ, работающих в режиме прерывания. Как только ПП обнаружит готовое к обмену ВУ, сразу выполняются действия по его обслуживанию (обмен данными).

Завершается ППОП после опроса готовности всех ВУ и восстановления регистров МП.

Приоритет ВУ при таком способе организации обработки прерывания однозначно определяется порядком их опроса в ППОП. Раньше опрос - меньше время реакции на запрос - выше приоритет.

Необходимость проверки готовности всех ВУ существенно увеличивает время обслуживания тех ВУ, которые обслуживаются последними. Это - основной недостаток описываемого способа. Поэтому обслуживание прерываний с опросом готовности ВУ используется только в тех случаях, когда отсутствуют жесткие требования на время обработки сигналов прерывания ВУ.

2. Организация прерываний с использованием векторов прерываний позволяет устранить указанный недостаток. При такой организации ВУ, запросившее прерывание, само идентифицирует себя с помощью вектора прерывания - адреса ячейки основной памяти микроЭВМ. В этой ячейке хранится либо первая команда ППОП данного ВУ, либо адрес начала такой ПП. В микроЭВМ с векторной системой обслуживания прерываний каждое ВУ должно иметь собственную ППОП, на которую МП сразу переключится, получив из ИК вектор прерывания.

Вектор прерывания выдается ИК не одновременно с запросом на прерывание, а только по разрешению МП. Это делается для того, чтобы исключить одновременную выдачу векторов от нескольких ВУ. В ответ на сигнал ИК ВУ "Запрос прерывания" МП формирует сигнал "Предоставление прерывания" (вх.), который разрешает ИК ВУ, запросившему обслуживание, выдачу векторов на МА (рис.4.9). Для этого в ИК используется регистр вектора прерывания и схема И3. Регистр этот обычно реализуется с помощью перемычек и переключателей.

Сигнал "Предоставление прерывания" (вых.) формируется в ИК с помощью схемы И2 (с инвертирующим выходом). Этот сигнал используется для организации последовательного аппаратного опроса готовности ВУ и, тем самым, требуемых приоритетов ВУ.

Сигнал МП "Предоставление прерывания" поступает на вход "Предоставление прерывания" ИК ВУ с наибольшим приоритетом, выходной сигнал этого ИК "Предоставление прерывания" соединяется со входом "Предоставление прерывания" следующего по приоритету ИК ВУ и т.п. ИК того ВУ, которое выставило "Запрос прерывания" и встретилось первым в этой цепочке, прекращает дальнейшее распространение сигнала "Предоставление прерывания" (рис.4.10).

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

Рассмотренная векторная система прерываний хорошо соответствует системе прерываний в "Э-60"; 8-разрядный вектор прерывания в "Э-60" указывает одну из ячеек памяти с адресами от 0 до 376 В, в которой размещается адрес начала ППОП. В следующей за указанной вектором ячейке хранится новое содержимое регистра состояния МП, загружаемое в него при переключении на ППОП. Один из разрядов этого регистра разрешает или запрещает прерывание от других ВУ. Это позволяет ВУ с более высоким приоритетом прерывать ППОП, выполняющую обслуживание ВУ с меньшим приоритетом.

 

Прие- мопере- датчи- ки МД
1/0
1/0
  Логи- ка управ- ления
И1
И2
И3
Прие- мопере- датчик МА

МД К регистру

данных

 

"Разрешение "Готовность

прерывания" ВУ"

 

 

......

 

Регистр состояния

ИК

"Запрос пре-

рывания"

 

"Готовность

ВУ"

 

"Предостав-

ление пре-

рывания(вх) "

 

"Предостав- Выдача вектора

ление пре- прерывания

 

рывания

(вых) " 0 1/0

1 1/0

2 1/0

МА... Регистр вектора

прерывания

7 1/0

 

 

Рис.4.9. Формирование вектора прерывания в ИК ВУ

 

 

МП
ИК
ИК
Предоставление Предоставление

 


прерывания (вых) прерывания (вых)

Предоставление Приоритет "0" Предоставление Наимень-

прерывания(вх) (наивысший) прерывания(вх) ший при-

оритет

 

Рис.4.10. Схемная реализация приоритетов ВУ

 

В микроЭВМ для организации векторной системы прерывания могут использоваться специальные БИС, например, БИС программируемого контроллера прерываний КР580ВН59.

 




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


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


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



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




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