СИСТЕМА ПРЕРЫВАНИЙ МП К1821ВМ85

Однокристальный МП является модернизированным 8-разряднвм МП, который имеет архитектурную совместимость с КР580ВМ80.

clip_image002

В состав системы команд ВМ85 введены две новые:

RIM ; чтение маски прерываний

SIM ; установка маски прерываний

Способ построения системы прерываний ВМ85 зависит от архитектуры ВМ80, однако число источников прерываний увеличено с одного до пяти.

Здесь введены четыре новых векторных прерывания. При появлении запроса управление передаётся на ячейку с конкретным адресом.

RST 7.5, RST 6.5, RST 5.5 расположены строго в определённых местах относительно таблицы прерываний – находятся в промежутках между уровнями:

clip_image004

Статические:

RST 5.5, RST 6.5, INTR – реагируют на уровень.

Динамические:

RST 7.5 – реагирует на фронт.

Вход TRAP имеет смешанную систему (и дин. И статич.). Реагирует и на уровень, и на фронт.

Все запросы, кроме TRAP, могут быть запрещены или разрешены одновременно с помощью команд EI и DI, которые управляют флагом разрешения прерываний IEN. Можно раздельно маскировать запросы типа RST независимо друг от друга, это выполняется с помощью новой команды SIM. Команда SIM обеспечивает установку нового состояния маски в зависимости от содержимого аккумулятора.

A0 M5.5 Маска RST 5.5

A1 M6.5 Маска RST 6.5

A2 M7.5 Маска RST 7.5

A3 MSEN Разрешение установки маски

A4 R7.5 Сброс триггера приёма запроса RST 7.5

A5 ------ Не используется

A6 SDEN Разрешение вывода данных

A7 SOD Последовательные данные для вывода через SOD

Установленная маска запрещает прерывание. Смена маски в соответствии с А0-A2 выполняется только при разрешении её установки: MSEN=1. MSEN=0 – маска не устанавливается.

Состояние масок прерываний может быть прочитано по команде RIM. Команда пересылает текущее состояние масок в аккумулятор:

A0 M5.5 Маска RST 5.5

A1 M6.5 Маска RST 6.5

A2 M7.5 Маска RST 7.5

A3 IEN Флаг разрешения прерывания

A4 D5.5 Флаг запроса RST 5.5

A5 D6.5 Флаг запроса RST 6.5

A6 D7.5 Флаг запроса RST 7.5

A7 SID Последовательные данные ввода через SID

При включении источника питания или при пуске МП маски устанавливаются, а флаг разрешения прерывания IEN сбрасывается, это приводит к запрету прерываний. Приём запроса на прерывание также вызывает общее запрещение всех маскируемых прерываний, при условии сохранения состояния индивидуальных масок. Запрос TRAP сохраняет состояние флага общего разрешения, оно может быть прочитано командой RIM.

Самый большой приоритет у немаскируемого запроса TRAP, а малый у векторного прерывания INTR. Приоритет необходим для того чтобы не было конфликта при одновременном появлении нескольких запросов.

Предлагаю ознакомиться с аналогичными статьями: