Чтение онлайн

на главную - закладки

Жанры

Шины PCI, USB и FireWire

Гук Михаил Юрьевич

Шрифт:

• Automatic Rotation Mode – режим автоматической ротации приоритетов позволяет организовать равноприоритетное обслуживание всех запросов. В этом режиме уровень, запрос от которого пошел на обслуживание, получает низший приоритет. Ротация приоритетов организуется подачей команд OCW2 с кодом операции 101 или 100 (см. далее);

• Specific Rotation Mode – режим специфицированной ротации: командой OCW2 с кодом операции 111 или 110 указанному уровню устанавливается низший приоритет;

• Poll Mode – режим опроса, в котором общий запрос INTR не вырабатывается. По команде Poll,

посылаемой через OCW3, контроллер фиксирует самый проритет-ный запрос. Последующее считывание из регистра контроллера даст байт, в котором бит 7 указывает на наличие запроса, а в битах [2:0] содержится номер самого приоритетного запроса;

• Normal EOI – нормальный режим завершения, в котором бит ISR сбрасывается явной командой EOI, посылаемой контроллеру в конце исполнения обработчика прерывания. Обычно используется команда неспецифического EOI (код 20h), по которой сбрасывается бит ISR, соответствующий самому приоритетному из обслуживаемых запросов. Возможна команда и специфического EOI, которая сбрасывает в ISR бит, указанный в данной команде. Бит для замаскированного запроса таким способом сброшен быть не может;

• Auto EOI – автоматическая генерация неспецифического EOI контроллером в конце цикла подтверждения прерывания. Этот режим применим лишь в случаях, когда не требуется поддержка вложенности прерываний, и только для ведущего контроллера.

Контроллер 8259A своими 8-битными регистрами приписывается к пространству ввода/вывода и занимает 2 смежных адреса. Обмен с регистрами контроллеров должен производиться только однобайтными операциями ввода/вывода. В современных PC-совместимых компьютерах контроллеры имеют и дополнительные регистры (ELCR). Положение регистров в пространстве ввода/вывода приведено в табл. 3.2.


Контроллер имеет два режима работы: режим инициализации и операционный. После сброса контроллер инициализируется последовательностью команд ICW1-ICW4 (Initialization Command Words) длиной до 4 байт, после чего переходит в операционный режим. В операционном режиме (Operation Mode)контроллер воспринимает команды управления OCW1-OCW3 (Operation Control Words). В операционном режиме он может быть и реинициализирован, признаком начала инициализации является единичное значение бита 4 в байте, записываемом по адресу 020h (0A0h). Назначение команд и регистров контроллера прерываний приведено ниже

 

Команда инициализации ICW1 (запись по адресу 020h или 0A0h) служит для конфигурирования контроллера:

• биты [7:5]: 0 (в PC не используются);

• бит 4:1 – признак команды инициализации (в командах управления он нулевой);

• бит 3 – чувствительность линий запроса: 0 – прерывание по перепаду, 1 – прерывание по уровню. В современных контроллерах игнорируется, в них используется

отдельный регистр ELCR, управляющий чувствительностью каждого из входов;

• бит 2 = 0 (в PC не используется);

• бит 1:0 – каскадное включение пары контроллеров, 1 – одиночный контроллер;

• бит 0:1 – признак использования ICW4.

Команда инициализации ICW2 (запись по адресу 021h или 0A1h) задает номер вектора, генерируемого данным контроллером для входа 0. Биты [2:0]

должны иметь нулевые значения.

Команда инициализации ICW3 (запись по адресу 021h или 0A1h) используется только для каскадного включения:

• для ведущего контроллера (Master, 8259A#1) биты [0:7] указывают на наличие ведомых контроллеров на линиях IRQ0–IRQ7 соответственно. В AT ICW3 = 04h (ведомый на IRQ2);

• для ведомого контроллера (Slave, 8259A#2) биты [2:0] содержат номер входа ведущего контроллера, к которому он подключен, биты [7:3] сброшены. В AT ICW3 = 02h (подключен к IRQ2 ведущего).

Команда инициализации ICW4 (запись по адресу 021h или 0A1h) задает режим работы контроллера, его применение обязательно при начальной инициализации:

• биты [7:5]: 0 – не используются;

• бит 4 – SFNM (Special Fully Nested Mode): 1 – специальный режим полной вложенности разрешен, 0 – запрещен;

• бит 3 – BUF (Buffered): 1 – признак буферизованности шины;

• бит 2 – M/S (Master/Slave), положение в каскаде: 1 – ведущий, 0 – ведомый.

В современных контроллерах не используется (сброшен);

• бит 1 – AEOI (Auto End Of Interrupt): 1 – разрешение автоматического завершения прерывания, 0 – нормальный режим (требует подачи EOI);

• бит 0 – тип используемого процессора: 1 – 8086/8088 и далее, 0 – 8080.

Команда управления OCW1 (запись по адресу 021h или 0A1h) задает маски запросов, единичное значение бита означает маскирование запроса. Биты [0:7]определяют маски запросов для IRQ0–IRQ7 (8259#1) или IRQ8–IRQ15 (8259#2).

Команда управления OCW2 (запись по адресу 020h или 0A0h) – завершение обслуживания прерывания (команда EOI), управление приоритетом:

• биты [7:5] задают код операции (в операциях, помеченных звездочкой, используется поле LLL в битах 2–0):

• 001 – неспецифический EOI;

• 011* – специфический EOI для запроса LLL;

• 101 – неспецифический EOI с ротацией приоритета;

• 100 – установка ротации приоритета в режиме AEOI;

• 000 – сброс ротации приоритета в режиме AEOI;

• 111* – специфический EOI с ротацией приоритета (установкой низшего приоритета для заданного уровня);

• 110* – установка низшего приоритета для заданного уровня;

• 010 – нет операции.

• биты [4:3]: 00 – признак OCW2;

• биты [2:0] – поле LLL – номер уровня, к которому относится команда (только для команд, помеченных звездочкой).

Команда управления OCW3 (запись по адресу 020h или 0A0h) – оперативное управление контроллером:

• бит 7:0 – не используется;

• биты [6:5] – режим специального маскирования (в PC не используется): 11 —установить, 10 – сбросить, 00, 01 – не изменять;

• биты [4:3]: 01 – признак OCW3;

• бит 2 – признак команды опроса (полинга). После команды полинга на последующую команду чтения порта 020h или 0A0h контроллер ответит байтом, кодирующим запрос прерывания с максимальным приоритетом. Для PC полинг обычно не используется (бит 2 – нулевой), а контроллер передает вектор прерывания по команде INTA;

• биты [1:0] – управление чтением регистров при операциях ввода по адресу 020h или 0A0h:

Поделиться:
Популярные книги

Печать Пожирателя

Соломенный Илья
1. Пожиратель
Фантастика:
попаданцы
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Печать Пожирателя

Привет из Загса. Милый, ты не потерял кольцо?

Лисавчук Елена
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Привет из Загса. Милый, ты не потерял кольцо?

Мастер 2

Чащин Валерий
2. Мастер
Фантастика:
фэнтези
городское фэнтези
попаданцы
технофэнтези
4.50
рейтинг книги
Мастер 2

Нечто чудесное

Макнот Джудит
2. Романтическая серия
Любовные романы:
исторические любовные романы
9.43
рейтинг книги
Нечто чудесное

Клан

Русич Антон
2. Долгий путь домой
Фантастика:
боевая фантастика
космическая фантастика
5.60
рейтинг книги
Клан

Имя нам Легион. Том 3

Дорничев Дмитрий
3. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 3

Запасная дочь

Зика Натаэль
Фантастика:
фэнтези
6.40
рейтинг книги
Запасная дочь

Убивать чтобы жить 7

Бор Жорж
7. УЧЖ
Фантастика:
героическая фантастика
космическая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 7

У врага за пазухой

Коваленко Марья Сергеевна
5. Оголенные чувства
Любовные романы:
остросюжетные любовные романы
эро литература
5.00
рейтинг книги
У врага за пазухой

Кодекс Охотника. Книга XXI

Винокуров Юрий
21. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XXI

Генерал Скала и ученица

Суббота Светлана
2. Генерал Скала и Лидия
Любовные романы:
любовно-фантастические романы
6.30
рейтинг книги
Генерал Скала и ученица

Оцифрованный. Том 1

Дорничев Дмитрий
1. Линкор Михаил
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Оцифрованный. Том 1

Его маленькая большая женщина

Резник Юлия
Любовные романы:
современные любовные романы
эро литература
8.78
рейтинг книги
Его маленькая большая женщина

Хуррит

Рави Ивар
Фантастика:
героическая фантастика
попаданцы
альтернативная история
5.00
рейтинг книги
Хуррит