Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Книга. Гуржій. 1.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
4 Мб
Скачать
☆

Призначення контролера апаратних переривань пеом

Апаратні переривання ПЕОМ викликаються фізичними пристроями та формуються асинхронно. Ці переривання інформують систему про події, зв'язані з роботою при­строїв, наприклад, про те, що закінчився друк символу на принтері або що потрібний сектор диска вже прочитаний, та його вміст доступний програмі.

Деякі переривання (перші п'ять номерів у таблиці) зарезервовані для використання самим центральним процесором для фіксації особливих подій, таких, як спроба ділення на нуль, переповнення, помилка в коді команди і т. п. Апаратні переривання цієї групи називаються внутрішніми апаратними перериваннями.

Апаратні переривання, які формуються контролерами пристроїв, зовнішніми по відношенню до процесора, називаються зовнішніми та, в свою чергу, діляться на два підкласи: апаратні немасковані (NMI — не можуть бути відмінені програмним способом) та апаратні масковані (INTR — можуть бути відмінені програмним способом).

Використання переривань при роботі з повільними зовнішніми пристроями дозволяє сполучити ввід/вивід з обробкою даних у центральному процесорі та в результаті підвищити загальну продуктивність системи. Всі запити на масковані зовнішні переривання зі системної шини ПЕОМ IBM PC/AT поступають на входи IRQ контролера переривань, що являє собою дві каскадно ввімкнені мікросхеми І8259А (ведуча — MASTER та ведена — SLAVE). Структурна схема ПКП ПЕОМ наведена на рис. 2.1

Основні функції, що реалізуються мікросхемою І8259А

  1. Фіксація запитів на переривання від 8 зовнішніх джерел.

  2. На вхід МП INTR

    Оцінка пріоритету запиту, що поступив, та формування черги на обслуговування згідно зі встановленою дисципліною.

  3. Програмне маскування поступаючих запитів.

  4. Присвоєння циклічних або програмно змінюваних пріоритетів входам контролера, на які поступають запити.

  5. Визначення та передача процесору номера апаратного переривання.

  6. Ініціювання виклику процедури обробки апаратного переривання, що поступило.

Функціональні елементи мікросхеми І8259А

До складу мікросхеми І8259А входять:

  1. Схема керування читанням/записом (Read/Write Control Logic, R/WCL).

  1. Схема керування.

  2. Схема каскадування.

  1. Регістр запитів на переривання (Interrupt Request Register, IRR).

  1. Схема обробки пріоритетів (Priority Resulver, PR).

  2. Регістр стану (In Servise Register, ISR).

  1. Регістр маскування запитів на переривання (Interrupt Mask Register, IMR).

Структурна схема мікросхеми І8259А наведена на рисунку 2.2

Короткий опис сигналів І8259А

АО (Address 0). Служить для вказання порту І8259А, до якого зводиться звертання. В адресному просторі вводу/ виводу для кожного контролера резервується дві адреси: для ведучого — 20h та 21h, для веденого — AOh та Alh. Вхід АО приєднується до розряду 0 шини адреси системного інтерфейса.

CASO, CAS1, CAS2 (Cascade). При каскадуванні кон­тролерів служать для ідентифікації веденого контролера. Для ведучого контролера є вихідними сигналами, для веденого — вхідними.

CS* (Chip Select). Ідентифікує звертання до контролера. Вмикається у відповідний вихід дешифратора адреси (ДА).

DO ... D7 (bidirectional Data bus). Служать для взаємо­дії з МП по шині даних.

INT (INTerrupt). Сигнал запиту переривання від системи маскованих джерел переривання. Вихід INT ведучого контролера приєднується до входу INTR МП, вихід INT веденого контролера до входу IRQ2 ведучого.

INTA* (INTerrupt Acknowlege). Вхід підтвердження переривання від контролера шини. Цикл підтвердження переривання складається з двох тактів (двох імпульсів на лінії INTA). Перший такт є тактом підтвердження пере­ривання. Під час другого такту контролер видає в процесор номер апаратного маскованого переривання.

IR0 … IR7 (Interrupt Request). Входи для запитів перери­вання від пристроїв вводу/виводу або ведених контролерів.

RD* (ReaD). Разом із сигналами CS та АО використову­ється для видавання на D0-D7 вмісту регістрів IMR, ISR та IRR або рівня пріоритету.

SP/EN* (Slave Program /ENable buffer). Виконує дві функції. У режимі буфера використовується як вихідний сигнал для керування приймачами-передавачами; в не буфер­ному режимі — як вхідний сигнал для вказання призначення контролера: SP=0 ведений, SP=1 ведучий.

WR* (WRite). Використовується для запису слів ініці­алізації та команд у регістри керування.