Програмований контролер переривань (ПКП)

INTA. Він подається на контролер ЗП із найвищим пріоритетом (ЗП 0).. Якщо цей ЗП не давав запиту на переривання, сигнал INTA йде далі до ЗП 1, потім до ЗП 2 тощо, поки не знайдеться ЗП, який цей запит подавав. Якщо такий знайшовся, то він видає на ШД команду CALL ADR N, тобто команду до переходу на відповідну йому підпрограму обслуговування переривань. Або видає вже знайому нам команду рестарту.

Таким чином, пріоритетність тут закладається схемотехнічне, порядком міжмодульного з'єднання контролерів зовнішніх пристроїв щодо проходження сигналу INTA.

Для апаратної реалі­зації процесу багаторів­невих переривань мікро­процесора КР580ВМ80 розроблено спеціаль­ний програмований контролер переривань КР580ВН59, який здій­снює векторну 8-рівневу систему пере­ривань. У міжнародних позначеннях він має назву 8259.

Схематичне зобра­ження виводів цієї ІМС подано на рис. 9.5. Тут DO - D7 це інформа­ційні двоспрямовані виводи з третім станом. Вони підклю­чаються то системної ШД і служать для введення в ПКП

керуючих слів та виведення з нього слова стану. Вивід CS - вхід вибору мікросхеми; ПКП активізується при CS = 0. WR та RD визначають режим запису або читання. npnWR = 0 відбувається запис у регістри контролера керуючих слів, котрі призначають подальшу роботу контролера. За командою RD = 0 відбувається читання мікропроцесором слова стану ПКП.

Адресується ПКП як зовнішній пристрій за двома адресами, що різняться молодшим бітом АО. За молодшою адресою (АО = 0) записується перше керуюче слово початкового встановлення (ICW1), за старшою адресою (АО = 1) - друге слово (ICW2). Виводи IRO - 1R7 -входи, по яких потрапляють сигнали запитів на переривання від восьми зовнішніх пристроїв, що їх обслуговує ПКП. Вихід INT -запит до мікропроцесора на переривання, який виробляється ПКП на

підставі запитів від зовнішніх пристроїв. INTA - вхід для підтвердження переривання. Сигнал INTA надходить до ПКП від мікропроцесора коли той дає згоду на переривання. Виводи SP, CASO - CAS2 використовуються для каскадування ПКП. При каскадуванні один ведучий ПКП обслуговує вісім ведених. При цьому кількість ЗП, що їх може обслуговувати така система, зростає до 64. Питання, пов'язані з каскадуванням, нами розглядатися не будуть.

Організацію пріоритетів ПКП може здійснювати по-різному, залежно від того, як його запрограмувати. Найпростішим варіантом є режим повного вкладення, коли ЗП, підключеному до IR7, привласнюється найвищий пріоритет, а тому, що приєднаний до IRO -найнижчий. Якщо в процесі обслуговування ЗП із низьким пріоритетом з'явиться запит від ЗП із вищим пріоритетом, то мікропроцесор переводиться на обслуговування останнього, тобто нова підпрограма виявляється "вкладеною" в попередню. Таких "вкладень" може бути до семи.

Програмним методом можна змінювати пріоритети, довільно призначаючи пристрої з найвищим та найнижчим пріоритетами. Можна поставити ПКП у режим циклічної зміни пріоритетів, коли тільки-но обслугований ЗП набуває найнижчого пріоритету. Насамкінець, ПКП може працювати в режимі полінгу, коли порядок пріоритетів визначається програмою, закладеною в мікропроцесор.

Вибір режимів роботи ПКП здійснюється керуючими словами. Ці слова бувають двох видів:

1. Слова початкового встановлення, або слова ініціалізації (ICW). Вони вводяться в ПКП до початку його роботи й зберігаються в його регістрах.

У керуючих словах ICW1 та ICW2 криються закладені програмістом вектори для кожного з восьми ЗП, що їх обслуговує ПКП (по 4 або по 8 бітів у кожному векторі). Ці вектори видаються на ПІД при надходженні запиту від зовнішніх пристроїв. У цих словах визначається також чи буде каскадування та за яким режимом. Таких слів два (якщо немає каскадування) або три (якщо каскадування є).

2. Слова керування або операційні слова (OCW). Вони вводяться до ПКП за молодшою адресою та визначають режим пріоритетів, їх

можна вводити під час роботи ПКП, замінюючи "на ходу" порядок пріоритетів.

Контролер переривань через себе дані не пропускає. Його функції -збирати запити на переривання, визначати пріоритети обслуговування ЗП і видавати вказівки мікропроцесору, яку з підпрограм обробки слід задіяти та яка її початкова адреса. Що ж до самого процесу обміну даними, то він має йти через порти -послідовні або паралельні, котрі також слід заздалегідь запрограмувати.

При використанні ПКП спрощуються контролери зовнішніх пристроїв. Вони тепер не повинні видавати команди рестартів; їх справа - тільки надсилати запити до ПКП по відповідних лініях IRN і чекати, коли до них звернеться мікропроцесор. Інформація про те, до якого ЗП має звернутися мікропроцесор, міститься у векторі переривань, що його виробляє тепер ПКП. Відповідно до цього мікропроцесор звертається до порту, до якого підключений зовнішній пристрій.

Працюючи разом із системним контролером КР580ВК28, наш контролер переривань може навіть видавати трибайтові команди викликів підпрограм обробки переривань CALL ADR N, де ADR N -початкова адреса N-тої підпрограми обробки.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: