Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Антонов О.С., Хiхловська I.В. Обчислювальна тех...doc
Скачиваний:
15
Добавлен:
01.09.2019
Размер:
4.12 Mб
Скачать

Реакція мпс на виконання команди зупину

Команда зупину HLТ виконується за два машинних цикли. у першому машинному циклі М1 реалізується зчитування та дешифрування коду операції команди. У першому такті Т1 другого машинного циклу М2 приймається ССПЦ дозволу останову і у Т2 система припиняє виконання програми. Шини адреси та даних переходять у високоімпедансний стан, процесор переходить у режим очікування і встановлюється сигнал Т1 наступного циклу М2...М5.

Вийти з режиму зупину можна подаванням сигналу СКИД (RESET), причому лічильник команд РС набуває нульового значення і починається перший машинний цикл М1 виконування команди, яка записана у ППЗП з нульової адреси. Сигнал скидання одночасно є сигналом пуску МПС. Подавання сигналів запиту на захоплення шин та переривання теж приведе до виходу МП з режиму зупину. На рис. 7.13 показані спрощені часові діаграми циклу дозволу зупину.

Рисунок 7.13 — Часові діаграми циклу дозволу зупину

Робота мпс у режимі переривань

При готовності до роботи асинхронний зовнішній пристрій, підключений до контролеру переривань надсилає у МПС сигнал запиту переривання програми ЗПР (INT). Цей запит може бути задовільнено лише при дозволі переривань, який задається в основній програмі командою ЕІ (ENABLE INTERRUPT) — дозволити переривання. Вона задає у своєму четвертому такті Т4 внутрішній тригер МП дозволу переривань І (INTERRUPT). Команда DI (DESABLE INTERRUPT) забороняє переривання; у цьому разі запит ЗПР ігнорується. За наявності дозволу переривань МП встановлює керувальний сигнал дозволу переривань ДПР (INTE). За запитом переривання поточна команда основної програми повністю завершується, після чого починається виконування машинного циклу обробки переривань МІ:

МІ1

Т1 — на ША через РА встановлюється вміст лічильника команд РС — адреси наступної команди основної програми, а на ШД видається ССПЦ дозволу переривань.

Т2 — ССПЦ фіксується у СКФ, після чого на ШК посилається сигнал підтвердження переривань ( ), який скидає у нуль тригер дозволу переривань І у МП і знімається сигнал дозволу переривань ДПР (INTE). У результаті блокуються усі подальші запити переривань до встановлення тригера І командою ЕІ у основній програмі або підпрограмі обробки переривань. У цьому такті вміст лічильника команд не інкрементується.

Т3 — з шини даних у РКОП МП завантажується спеціальна однобайтова команда RSTV (RESTАRТ) за вектором сформована апаратним способом, з кодом 11ААА111, де ААА — будь-яка комбінація одиниць та нулів, забезпечуючи перехід МПС до одної з восьми підпрограм обслуговування переривань, кожна з яких займає по вісім комірок ППЗП.

Т4, Т5 — у цих тактах команда RSTV дешифрується і формується два наступних тритактних машинних цикли МІ2 та МІ3.

Після декодування команди RSTV визначаються початкові адреси всіх підпрограм, які обслуговують переривання, де значущими розрядами є тільки 3, 4 та 5 біти; 0000000000ААА00, що забезпечують вісім підпрограм RST, які займають такі адреси ППЗП:

0 — 0000H — 0007H 4 — 0020H — 0027H

1 — 0008H — 001FH 5 — 0028H — 002FH

2 — 0010H — 0020H 6 — 0030H — 0037H

3 — 0018H — 001FH 7 — 0038H — 003FH

У машинних циклах оброблення переривань МІ2 та МІ3 вміст РС для забезпечення можливості повернення до основної програми після завершення підпрограми обслуговування переривань запам’ятовується у стековій пам’яті, після чого у РС завантажується адреса першої команди одної з підпрограм, які обслуговують переривання. Останньою командою підпрограми завжди є команда повернення RЕT (RETURN), при виконанні якої у РС повертається зі стеку адреса повернення на чергову команду основної програми для її продовження.

На рис. 7.14 та рис. 7.15 показані спрощені часові діаграми циклу переривань відповідно МІ1 та МІ2 та МІ3.

Можливості режиму переривань можуть бути розширені, якщо замість коду команди RSTV зовнішній пристрій буде формувати код стандартної команди виклику процедур CALL ADDR, де ADDR — початкова адреса підпрограми оброблення переривань.

Розглянуті способи організації переривань називаються векторними: ЗП, який запросив переривання вказує початкову адресу першої команди підпрограми оброблення переривань. Є ще багато різних можливостей організації переривань, наприклад невекторні, де задається адреса комірки пам’яті вектора переривань тощо.

Рисунок 7.14 — Часові діаграми циклу переривань М1

Якщо виникають кілька запитів на переривання від декількох зовнішніх пристроїв, то виникають конфлікти. які можна розв’язати у такий спосіб. По-перше, можна послідовно опитувати зовнішні пристрої на наявність від них запитів на переривання, але це призводить до зниження швидкодії МПС і деякі запити можна перепустити. По-друге, і цей спосіб виявився більш перспективним, можна організувати багарівневі переривання з наданням кожному з пристроїв свого пріоритету. Запити на переривання виконуються за старшинством пріоритетів. При виникненні запиту від пристрою з більш високим пріоритетом обробка переривання з менш високим пріоритетом переривається і може продовжуватись тільки після повного обслуговування більш пріоритетного пристрою. Таких ієрархічних вкладень обслуговуючих підпрограм може бути декілька. Для організації переривань зазвичай використовуються програмовані контролери переривань.

Рисунок 7.15 — Часові діаграми циклу переривань М2 та М3

Слід відмітити, що у вісімдесяті роки на базі МПС КР580 були побудовані універсально-прикладні електронно-обчислювальні машини (СМ 1800, УВС, “Корвет”) та побутовий комп’ютер “Альфа БК”.

Контрольні запитання:

  1. У яких засобах обчислювальної техніки використовуються 8-розрядні МП?

  2. Яку розрядність має інтерфейс обміну даними з зовнішніми пристроями 8-розрядний МП?

  3. Як інтерпретуються дані у 8-розрядних МП фірми Intel?

  4. Які є програмно доступні елементи архітектури МПС на МП К580ВМ80А (І8080)?

  5. Які ВИ знаєте способи адресації операндів МП К580ВМ80А?

  6. З яких підсистем складається МПС КР580?

  7. На яких ВІС може реалізовуватись МПС КР580?

  8. Як організується стекова пам’ять у МП К580ВМ80А?

  9. На прикладі виконання команди пересилання MOV B, C покажіть функціонування МПС.

  10. Використовуючи часові діаграми циклів вибірки (читання пам’яті), покажіть реакцію МПС на сигнал неготовності ГОТ = 0.