Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
екзамен, відповіді.docx
Скачиваний:
13
Добавлен:
05.03.2016
Размер:
272.18 Кб
Скачать

6. Особливості обміну в режимі dma

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

Прямий доступ до пам'яті (ПДП, DMA) - це режимв якому обмін по системній шині йде без участі процесора. Зовнішній пристрій, що вимагає обслуговування, сигналізує процесору, що режим ПДП необхідний, у відповідь на це процесор закінчує виконання поточної команди і відключається від всіх шин, сигналізуючи пристрою що обмін в режимі ПДП можна починати. Операція ПДП зводиться до пересилки інформації з пристрою вводу/виводу в пам'ять або ж з пам'яті в пристрій вводу/виводу. Коли пересилка інформації буде закінчена, процесор знов повертається до перерваної програми, продовжуючи її з того місця, де його перервали (мал. 1.13). Реакція на зовнішню подію при ПДП істотно повільніша, ніж при програмному режимі. Зрозуміло, що в цьому випадку потрібне введення в систему додаткового пристрою (контролера ПДП), який здійснюватиме повноцінний обмін по системній магістралі без жодної участі процесора. Причому процесор заздалегідь повинен повідомити цей контроллер ПДП, звідки йому слід брати інформацію і/або куди її слід поміщати.

Мал. 1.12. Обслуговування ПДП.

Мал. 1.13. Інформаційні потоки в режимі ПДП.

У принципі контролер ПДП може входити до складу пристрою вводу/виводу, якому необхідний режим ПДП або навіть до складу декількох пристроїв вводу/виводу. Теоретично обмін за допомогою прямого доступу до пам'яті може забезпечити більш високу швидкість передачі інформації, ніж програмний обмін, оскільки процесор передає дані повільніше, ніж спеціалізований контролер ПДП. Проте на практиці ця перевага реалізується далеко не завжди. Швидкість обміну в режимі ПДП звичайно обмежена можливостями магістралі. До того ж необхідність програмного задання режимів контролера ПДП може звести нанівець виграш від більш високої швидкості пересилки даних в режимі ПДП. Тому режим ПДП застосовується рідко. Якщо в системі вже є самостійний контролер ПДП, то це може у ряді випадків істотно спростити апаратуру пристроїв вводу/виводу, що працюють в режимі ПДП. В цьому, мабуть, полягає єдина безперечна перевага режиму ПДП.

7. Особливості роботи мп в режимі переривання

Переривання – це особливий режим роботи МП і полягає в тому, що при надходженні сигналу переривань(INT) від зовнішнього пристрою МП призупиняє виконання основної програми і переходить ддо обробки ситуації яка призвела до переривання, після закінчення якої МП переходить до продовження виконання основної програми.

Для організації роботи МП в режимі переривань мікропроцесор має спеціальні входи. При подачі сигналу на вхід INT від зовнішнього пристрою, МП закінчує виконання поточної команди і видає спеціальний сигнал на зовнішній пристрій. INTA – це сигнал підтвердження того що МП закінчив виконання команди і може прийняти від зовнішнього пристрою вектор переривань. Вектором переривань називається адреса де розміщена підпрограма обробки переривання. Після надходження сигналу INTA зовнішній пристрій по шині даних передає адресу переходу на підпрограму, переважно ця адреса передається у форматі команди CALL[Add]. Для запам’ятовування місця куди потрібно повернутися після виконання підпрограми(адреса повернення використовується частина ОП яка називається стеком(STACK). Стек організований по принципу LIFO(last in first out). Після отримання вектора переривань в лічильник команд ІР завантажується початкова адреса по якій розміщена підпрограма обробки переривань і наступне виконання команд проводиться вже з цієї адреси.

Організація переривань з використанням контролера переривань.

При використанні контролера переривань зв'язок з зовнішнім пристроєм проводиться по одній лінії. Кожен зовнішній пристрій(ЗП) підключається до відповідного входу IRQ. На початку виконання програми, програмістом повинна бути передбачена підпрограма ініціалізації, в якій проводиться програмування контролера, задання режиму роботи і прописування векторів переривань, які відповідають кожному виводу IRQ. В процесі роботи системи при подачі переривань від ЗП на вхід IRQ контролером по шині даних видається 17-бітний код, який відповідає вектору переривань запрограмованому в підпрограмі ініціалізації.