Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Каскадное включение контроллеров приоритетных прерываний

Поиск

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


Рисунок 12.6-Каскадное подключение контроллеров приоритетных прерываний к микропроцессору

 

К входу INT микропроцессора подключается выход INT ведущего контроллера. Выход INT ведомого контроллера подключается к одному из входов IRQi ведущего КПП на правах других запросов прерываний, поступающих на этот контроллер. В персональной ЭВМ всегда используются два контроллера приоритетных прерываний, причем ведомый КПП подключен к входу IRQ2 ведущего.

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

Регистры КПП делятся на 2 группы: регистры инициализации ICW1-ICW4 и операционные регистры OCW1-OCW3.

Регистры инициализации загружаются при инициализации контроллера и в процессе работы КПП не меняются.

Регистр ICW1 - управление микросхемой:

- настраивает контроллер на восприятие сигналов запроса по низкому уровню или заднему фронту;

- определяет, используется в МПС единственный КПП или применяется их каскадное включение;

- определяет порядок загрузки приказов инициализации. Необходимость этого обусловлена тем, что в пространстве ввода/вывода каждому контроллеру выделено всего 2 адреса. Так, в стандартной конфигурации персональной ЭВМ ведущему контроллеру выделены адреса 20h и 21h, а ведомому - A0h и A1h. В то же время каждый контроллер имеет в своем составе 7 регистров, к которым должен быть обеспечен программный доступ. В частности, при инициализации необходимо занести информацию в 4 регистра ICWi.

Регистр ICW2 - регистр типа прерывания. При инициализации в 5 его старших разрядов заносится некоторая константа. В процессе обработки запросов прерываний в 3 младшие разряда этого регистра заносится номер входа IRQi, по которому принят запрос, подлежащий обработке (рисунок 12.7):


Рисунок 12.7 - Формат регистра типа прерывания ICW2

 

В персональной ЭВМ в регистр ICW2 ведущего контроллера при инициализации заносится константа 00001b, а в ведомый - константа 01110b. Поэтому типы всех прерываний, запросы от которых поступают через ведущий КПП, лежат в диапазоне 00001000b-00001111b (08h-0Fh), ачерез ведомый - в диапазоне 01110000b-01110111b (70h-77h). Распределение входов прерываний в стандартной конфигурации персональной ЭВМ представлено в таблице 12.1.

 

Таблица 7.1-Распределение входов запросов прерываний в ПК

Контроллер IRQ Тип Назначение Начальное состояние маски

Ведущий контроллер

0 8 Таймер 0
1 9 Клавиатура 0
2 A Ведомый КПП 0
3 B Последовательный порт 2 (COM2) 1
4 C Последовательный порт 1 (COM1) 1
5 D Последовательный принтер (LPT2) 1
6 E НГМД 0
7 F Параллельный принтер (LPT1) 1

Ведомый контроллер

8 70 Часы реального времени 1
9 71 Резерв. Программно переназначен на IRQ2 0
10 72 Резерв 1
11 73 Резерв 1
12 74 Мышь 1
13 75 Ошибка сопроцессора 1
14 76 НЖМД 0
15 77 Резерв 1

 

Регистр ICW3 - регистр управления ведомым. Имеет различное назначение в ведущем и ведомом КПП. В ведущем КПП устанавливаются единицы в разрядах, соответствующих линиям с подключенными ведомыми КПП. В персональной ЭВМ его значение имеет вид 00000100b. В ведомом КПП пять старших разрядов этого регистра установлены в 0, а в трех младших кодируется номер входа ведущего КПП, к которому подключен данный ведомый. В персональной ЭВМ его значение имеет вид 00000010b.

Регистр ICW4 - регистр управления режимом. Определяет, является данный КПП ведущим или ведомым, тип окончания прерывания, то есть кем должен сбрасываться бит запроса в регистре обслуживания прерывания ISR, и другие параметры работы.

Так как для КПП определено только 2 допустимых состояния (ведущий или ведомый), максимальная конфигурация контроллеров приоритетных прерываний состоит из одного ведущего и восьми ведомых КПП. Это обеспечивает возможность подключения к входу INTмикропроцессора до 64 запросов прерываний.

Содержимое операционных регистров изменяется в процессе работы КПП записью в них новой информации.

Регистр OCW1 (IMR) - регистр маски прерывания. Код 1 в разряде i запрещает, а код 0 - разрешает обработку запроса прерывания по входу IRQi.

Регистр OCW2 - определяет один из трех возможных порядков изменения приоритетов запросов прерываний:

- приоритеты не меняются в процессе работы КПП;

- приоритеты меняются циклически: после обработки очередного запроса его приоритет становится самым низким, а приоритеты остальных запросов циклически сдвигаются;

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

В персональной ЭВМ установлено постоянство приоритетов запросов прерываний, при этом запрос IRQ0 имеет самый высокий приоритет.

Так как здесь используются два каскадно включенных контроллера, как на рисунке 12.6, приоритеты запросов прерываний IRQi имеют вид, представленный на рисунке 12.8.

 


Рисунок 12.8 - Приоритетность запросов прерываний IRQi

в персональной ЭВМ

 

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

Контрольные вопросы:  

1. Классификация прерываний

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

3. Структура и функционирование контроллера приоритетных прерываний.

 

 




Поделиться:


Последнее изменение этой страницы: 2021-02-07; просмотров: 179; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.28.160 (0.006 с.)