Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lektsii_protsessory.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
3.54 Mб
Скачать

Организация режимов прерывания в микропроцессорной системе

Микропроцессор переходит на программу прерываний.

КР580ВН59 – данная микросхема называется программируемым контролером прерываний. Данная микросхема может обслуживать до восьми запросов на прерывание от внешних устройств. Количество запросов на прерывание может быть увеличено до 64 путем каскадного соединения восьми таких микросхем в составе микропроцессорной системы.

Структурная схема программируемого контролера прерываний представлена на ниже следующем рисунке.

БШД – буфер шины данных, который представляет собой 8 двунаправленных усилителей формирователей. В режиме программирования через этот буфер задаются управляющие слов и команды. В режиме прерываний микросхема передает через него код команды CALL<2B><3B>. В режиме прерываний данная команда формируется контроллером прерываний.

СУЧЗ – схема управления чтением-записью. Данный блок вырабатывает управляющие сигналы, обеспечивающие обмен данными между микросхемой и ЦП.

БСК – буфер схемы каскадирования. С помощью этого блока осуществляется управление несколькими контролерами, входящими в состав микропроцессорной системы.

УУ – устройство управления. Данный блок формирует запрос прерывания для ЦП при наличии запроса прерывания от одного из внешних устройств. Кроме того данный блок формирует команду CALL. Причем, если в микропроцессорной системе используется только один контроллер прерываний, то все три байта кода команды CALL формируются устройством управления.

РЗП – регистр запроса прерывания. Данный блок представляет собой 8-разрядный регистр, в котором фиксируются запросы на прерывание от внешних устройств. Фиксация осуществляется при установке сигнала логической единицы на соответствующем входе. Сигнал логической единицы должен сохраняться до прихода первого сигнала логического нуля на вход INTA. Сбрасывается разряд в нулевое состояние при поступлении второго сигнала INTA.

РОЗП – регистр обслуживаемых запросов прерывания – 8 разрядный регистр, у которого логическая единица записана в том разряде, номер, запрос которого обслуживается. Устанавливаются разряды данного регистра в состояние логической единицы по второму сигналу INTA пришедшему на устройство управления.

СМ и АП – схема маскирования запросов прерывания и анализа их по приоритету. Схема маскирования включает в себя регистр маскирования и логическую схему. Регистр маскирования – это восьмиразрядный регистр, причем при записи логической единицы в какой-либо разряд данного регистра соответствующий вход запроса прерывания блокируется. Схема анализа по приоритету определяет вид приоритета, который может быть установленным или циклическим. При установленном приоритете имеет вход IRG0 высший приоритет, а IRQ7 – низший приоритет. Таким образом, можно установить порядок прерываний. Можно установить циклический приоритет.

ЛЕКЦИЯ №15

Условное графическое обозначение микросхемы представлено на ниже следующем рисунке.

D0-D7- входы выходы с тремя устойчивыми состояниями. Подключаются к одноименным линиям шины данных микропроцессорной системы.

A0 – вход для адресации внутренних регистров при программировании микросхемы. Подключается к одноименной линии адресной шины. В некоторых случаях может подключаться к старшим разрядам (A15).

IRQ0-IRQ7 – входы запросов на прерывание со стороны внешних устройств. Подключаются к одноименным выходам периферийных устройств.

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

RD – вход управляющего сигнала считывания из микросхемы. При подаче на данный вход сигнала логического нуля обеспечивается возможность считать на шину данных содержимого регистра прерывания или регистра маскирования. Данный вход подключается к линии RDIO шины управления. В шину управления сигналы поступают из внешних устройств.

WR – вход управляющего сигнала записи в микросхему. При подаче на данный вход сигнала логического нуля обеспечивается возможность записи в микросхему команд при ее программировании. Данный вход подключается к линии WRIO шины управления. Системный контроллер формирует управляющие сигналы записи во внешнее устройство, считывание из внешнего устройства и т.д.

INT – это выход управляющего сигнала запроса прерывания. Подключается к одноименному входу ЦП. Сигнал логической единицы на данном выходе появляется при наличии сигнала логической единицы хотя бы на одном из входов IRQ0-IRQ7. Если ЦП разрешает прервать основную программу, то тогда формируется слово-состояние, которое показывает, что будет выполняться подпрограмма прерывания.

INTA – вход управляющего сигнала подтверждения прерывания. Подключается к одноименному выходу системного контроллера через шину управления. Сигнал логического нуля на данном входе будет появляться при наличии сигнала логической единицы на выходе INT.

MS/SV – вход управляющего сигнала выбора ведущей микросхемы. Микросхема, у которой на данный вход подан «1» - ведущая, а при «0» - ведомая. Данная микросхема используется для формирования команды CALL. Если используется одна микросхема, то все три байта команды формируется этой одной микросхемой. Если используется несколько микросхем, то по первому сигналу INTA формируется сама команда ведущей микросхемой, второй и третий байты формируются ведомой микросхемой.

CAS0, CAS1, CAS2 – входы-выходы каскадирования. Для ведущей микросхемы это выходы, на которые выставляется двоично-десятичный код номера ведомой микросхемы. Для ведомых микросхем это входы, которые определяют номер ведомой микросхемы, которая будет формировать второй и третий байт команды CALL.

Ucc – подключение питания.

GND – заземление.

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

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

команда

A0

D7

D6

D5

D4

D3

D2

D1

D0

СКИ 1

А

0

A7

A6

A5

1

-

1

1

-

Б

0

A7

A6

A5

1

-

1

0

-

В

0

A7

A6

-

1

-

0

1

-

Г

0

A7

A6

-

1

-

0

0

-

СКИ 2

1

A15

A14

A13

A12

A11

A10

A9

A8

СКИ 3

А

1

U7

U6

U5

U4

U3

U2

U1

U0

Б

1

-

-

-

-

-

U2

U1

U0

СКО 1

1

M7

M6

M5

M4

M3

M2

M1

M0

СКО 2

СКО 3

Г

СКИ1

A7-A5 – старшие разряды младшего байта адреса подпрограмм обслуживания прерываний.

D1 – определяет количество используемых контроллеров в микропроцессорной системе. Если в разряде D1 установлена логическая единица, то используется только один контроллер. Если установлен логический ноль, то следовательно в системе больше одного контроллера прерываний.

D2 – определяет формат чисел. Если «1», то начальные адреса соседних подпрограмм отличаются на число 4. Если в разряде установлен «0», то начальные адреса соседних подпрограмм различаются на число 8.

После команды СКИ 1 в микросхему необходимо загрузить команду СКИ 2. Данная команда определят старший байт адреса подпрограмм обслуживания прерываний. Если в команде СКИ 1 в разряде D2 установлен логический ноль, то необходимо загрузить команду СКИ3.

СКИ3а загружается для ведущей микросхемы, команда СКИ3б для ведомой микросхемы. Если в каком-либо разряде команды СКИ3а установлена логическая единица, то это означает, что соответствующий вход IRQ ведущей микросхемы подключен к соответствующему выходу INT ведомой микросхемы. Логический ноль в каком-либо разряде данной команды показывает, что к соответствующему входу IRQ подключен вывод IRQ внешнего устройства.

Для ведомых микросхем СКИ3б. Для СКИ3б разряды D2-D0 определяют номер ведомой микросхемы, которая будет формировать второй и третий байт команды CALL.

Кроме этих команды используется система команд операций СКО. Применяется три вида этих команд.

Команда СКО1. При этом если в каком-либо разряде записана логическая единица, то соответствующий вход IRQ будет блокирован. И обслуживание запросов происходить не будет.

СКО 2 – позволяет установить приоритетность запросов прерываний и дна приоритетного кольца. Существует пять типов команд СКО 2.

СКО 3 – позволяет перейти от обслуживания запросов на прерывание по обслуживанию по опросу. Происходит опрос всех внешних устройств на выявление сигнала на прерывание у внешних устройств. Чаще используется обслуживание по запросам.

СКО3г – позволяет разблокировать определенные входы IRQ, заблокированные командой СКО1.

Каскадное соединение нескольких микросхем представлено на ниже следующем рисунке.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]