Page 73 - 149
P. 73
Процедура обслуговування переривань. Звязок між кодом, який
визначає тип переривання і підпрограмою обслуговування переривань
встановлюється при допомозі таблиці вказівників векторів переривань
(рисунок 4.32). Повна таблиця займає 1 КБайт памяті і містить 256 елементів.
Кожний елемент таблиці містить два слова, які визначають початкову логічну
адресу підпрограми. Слово з
більшою адресою є базова адреса
сегмента, а слово з меншою
адресою-зміщення програми від
початку кодового сегмента.
Структура підпрограми
переривань повинна бути такою:
1) Занести в стек ті регістри МП, які
будуть використані в підпрограмі;
2) Дозволити, якщо необхідно,
зовнішнє переривання командою
STI;
3) Забезпечити заборону
повторного переривання за
процедурою даного вектора
переривань;
4) Основна процедура
обслуговування переривань;
5) Заборонити переривання по
входу INTR, командою CLI;
6) Відновити вміст регістрів,
занесених в стек;
7) Дозволити переривання по входу Рисунок 4.32
INTR командою STI;
8) Вихід з підпрограми IRET.
Функціонування мікропроцесора
Виконання команд можна представити послідовністю циклів шини
(циклів обміну), протягом яких МП звертається до памяті за командами або
обмінюється даними з периферійними пристроями. Кожний цикл шини
ініціюється пристроєм шинного інтерфейсу і містить чотири обовязкові такти
Т1-Т4. В такті Т1 видається адреса на суміщену шину адреси/даних, в такті Т2
здійснюється комутація напрямку передачі, в тактах Т3 і Т4-передача
даних.Функціонування МП ВМ86 в мінімальному режимі ілюструється
діаграмами на рисунку 4.33.
74