Мікросхема К589ІК14 - блок пріоритетного переривання (БПП), призначені для побудови багаторівневих систем переривання. Система переривань, побудована з використанням пристроїв БПП, забезпечує:
вісім окремих рівнів переривання на кожен блок БПП;
програмований пріоритет;
можливість розширення до 8К рівнів переривання, де К - число БПП;
автоматичне вироблення вектора переривання.
Умовне графічне позначення мікросхеми наведено на рис. 9, призначення висновків-в табл. 12 структурна схема показана на рис. 1
Регістр запитів на переривання складається з восьми тригерів типу «засувка» і служить для запам'ятовування запитів на переривання і час обробки поточного переривання.
Шифратор з пріоритетом служить для кодування номера надійшов запиту іа переривання (IR0-IR7) в 3-розрядний код. Причому якщо на шифратор надійшли одночасно кілька сигналів запиту на переривання, наприклад, з IR1, IRO, IR2, то на виході шифратора буде код старшого запиту IR2. Регістр поточного стану складається з чотирьох тригерів типу «засувка» і служить для запам'ятовування коду переривання, що обробляється.
Схема порівняння пріоритетів служить для порівняння коду, що надійшов з шифратора запитів на переривання, кодом, що зберігається в регістрі поточного стану. Схема порівняння пріоритетів виробляє роздільна здатність сигналу на вироблення сигналу переривання тільки в тому випадку, якщо код з шифратора запитів більше коду, що зберігається в регістрі поточного стану.
Тригер переривання служить розробки ознаки переривання і запам'ятовування цієї ознаки до наступного такту. Тригер працює по фронту синхроімпульсу.
Тригер блокування переривання служить для заборони прийому запитів на переривання на регістр запитів і переривання при обробці поточного пріоритету, а також блокує вироблення нової ознаки переривання. Тригер блокування скидається фронтом сигналу EW.
Для роботи БПП необхідно забезпечити такі умови:
тригер переривання скинутий (лог. 0);
на висновок ERC подати лог. 0;
іа висновок EGподати лог. 1,
у регістр поточного стану записати код поточного пріоритету (на самому початку записуємо нульовий код) на входах Р0-Р2 і лог. 1 по входу GS, Запис здійснюється сигналом виведення EW. По фронту сигналу EW відбувається скидання тригера блокування переривання в 0, і регістр запитів переривання приходить дозвільний сигнал запису інформації з входів IR0-IR7.
Якщо входах запиту переривання IR0— IR7 немає жодного запиту, то шифратор пріоритету виробляє сигнал лог. 0, який закриває вихідні вентилі коду переривання (вихід IC0 - IC2) забороняє вироблення сигналу підтвердження переривання (вихід IA) і дозволяє вироблення сигналу дозволу наступній (молодшій) групі (вихід GE).
Допустимо, по входу IR5 надійшов запит на переривання. Він записується в регістр запитів на переривання, оскільки тригер блокування переривання скинуто. Однак, хоча запис у регістр відбувся, запит про IR5 знімати не можна, так як цей регістр виконаний на тригерах типу «клапанка» і запам'ятовування інформації в регістрі відбудеться тільки після встановлення тригера блокування переривання в 1.
Інформація регістру запитів на переривання надходить на шифратор із пріоритетом. Шифратор виробляє сигнал балка. 1, який відкриває вихідні вентилі, дозволяє вироблення сигналу підтвердження переривання і виробляє заборонний сигнал для молодшої групи (висновок GE), а також 3-розрядний код пріоритету, який через вихідні вентилі надходить на висновки 1С0-1С2. Крім того, код пріоритету з шифратора надходить на схему порівняння пріоритету, де порівнюється з кодом, записаним в регістрі поточного стану. Якщо код із шифратора більше коду, що зберігається в регістрі поточного стану, то схема порівняння пріоритету виробить сигнал балка. 0. У цьому випадку дозволяє вироблення сигналу підтвердження переривання (виведення IA). Якщо ж код із шифратора менше або дорівнює коду з регістра поточного стану, то схема порівняння пріоритету виробить сигнал балка. 0. У цьому випадку сигнал підтвердження переривання може бути вироблений тільки в тому випадку, якщо в четвертий тригер регістра поточного стану (по входу GS) буде записаний лог. О, оскільки інверсний вихід цього тригера поєднується схемою АБО з виходом схеми порівняння пріоритетів. У разі четвертий тригер регістра поточного стану забезпечує балка. Про вхід схеми АБО, а схема порівняння пріоритетів видає на цю схему лог. 1, так як код з шифратора більше коду, що зберігається в регістрі поточного стану, тим самим дозволяючи вироблення сигналу підтвердження переривання. Якщо при цьому на вхід INE подати лог. 1, а на вхід CLK - нмпульс, то по фронту цього імпульсу тригер переривання встановиться в одиничний стан і на виході IA з'явиться сигнал підтвердження переривання. Цим сигналом по входу 5 тригер блокування переривання встановлюється в 1, тим самим забороняючи прийом нових запитів на переривання в регістр запитів на переривання і готуючи тригер переривання до скидання в нульовий стан. Другим імпульсом входу CLK відбувається скидання тригера переривання в нульовий стан, що означає закінчення сигналу підтвердження переривання. Таким чином, тривалість сигналу підтвердження переривання визначається періодом синхроімпульсів входу CLK.
Після обробки сигналу підтвердження переривання (якщо необхідно) код, відповідний оброблюваному запиту, треба записати в регістр поточного стану. Тим самим виключається можливість подвійного переривання по тому самому запиту,