ГОСТ Г МЭК 821- 2000
Окончание /поб иты 4 .1
Т и п о б р а б о т ч и к а
П р а в и л а и p a ip< ш е п н и п р е р ы в а н и и
032
Д О Л Ж Е Н ВОЗЬУЖ ДА ТЬ линии DS1
*
и I. W ORD
*
Д О Л Ж Е Н КОНТРОЛИРОВА ТЬ линии DOO-D31
ВСЕ
Н Е ДО Л Ж Н Ы УСТАНАВЛИВАТЬ сигнал на линии W R IT E
*
низким
П р и м е ч а н и е — Мнемонические обозначения D<)8(0), DI6 и 032 применительно к обработ
чику прерываний определены в таблице 4.5.
4.3.2 П р е р ы в а т е л ьие г оф у н к ц и и
Прерыватель выполняет следующие функции:
- запрашивает прерывание у обработчика прерываний, который контролирует его линию запро
са прерывания;
- если прерыватель принимает отрицательный перепад на входе цепочки подтверждения преры
вания и если он запрашивает прерывание, и если уровни сигналов на трех младших адресных линиях
соответствуют используемой нм линии запроса прерывания, и если разрядность запрашиваемой ин
формации статуса/ндентификации либо равна, либо больше, чем разрядность, которую он может
обеспечить, тоон устанавливает налинияхданных информациюстатуса/идет’ификации. Впротивном
случае, он пропускает отрицательный перепад дальше по цепочке подтверждения прерывания.
Каждый прерыватель возбуждает только одну линию запроса прерывания. Модуль, который
формирует запросы прерывания по нескольким линиям, рассматривается данным стандартом как име
ющий несколько прерывателей.
Разрешение 4.1. Поскольку прерыватель —это всего лишь концептуальная модель, внутримо-
дульная логика МОЖЕТ совместно использоваться несколькими прерывателями.
Прерыватель использует для запроса прерывания одну из семи линий. После этого он контро
лирует три младшие линии адресной шипы (АО1—ЛОЗ), линию 1ACKIN* и дополнительно линию
IACK*. чтобы определить, когда его прерывание подтверждается. При подтверждении он помещает
свою информацию статуса/идентификацни на шинуданных и сообщает обработчику прерываний о
том, что эта информация достоверна, устанавливая DTACK* низким.
Имеется пять основных отличий в использовании шины пересылки данных прерывателем и
исполнителем. Прерыватель используетшину пересылки данных следующим образом:
- отвечает только тогда, когда его входной сигнал IACKIN* низкий;
- не контролирует линии модификатора адреса ;
- контролирует только три младшие адресные линии;
- не контролирует линию WRITE*;
- ему разрешено отвечать данными, разрядность которых отличается от разрядности запрашивае
мыхданных.
Исполнитель контролирует линию AS* и интерпретирует отрицательный перепад на ней как
сигнал достоверности текущего цикла шины. После этого исполнитель приступает кдекодированию
соответствующего числа адресных линий (15, 23 или 31) и линий модификатора адреса и на основе
этой информации определяет, произошлоли к нему обращение. При этом исполнитель отвечаеттолько
тогда, когда 1АСК*установлен высоким.
Что касаегся прерывателя, то он интерпретирует отрицательный перепад на своей линии IACK1N*
как разрешающий сигнал, чтобы ответить на текущий цикл подтверждения прерывания. Он
декодирует только три младшие адресные линии (A0I—A03), игнорируя линии модификатора
адреса.
Прерывателю не требуется контролироватьлинию WRITE*, поскольку в него никогда не запи
сываются никакиеданные. Исполнителямтребуется контролировать линию WRITE*, чтобы они могли
отличать циклы считывания от циклов записи.
Прерыватель помещает на шину информацию статуса/идентификации и отвечает сигналом
DTACK*, даже если линии LWORD*, DS1* и DS0* требуют от прерывателя информацию
статуса/идентификации. разрядность которой больше, чем он может обеспечить. Например, обработ
чик прерываний может установить низким LWORD* и оба сигнала DS0* и DSI*, показывая, что он
намерен считать 32 разряда информации статуса/идентификации слиний D00-D31; однако прерыва-
J-3- 1644
97