Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МПТ.doc
Скачиваний:
65
Добавлен:
03.11.2018
Размер:
20.52 Mб
Скачать

5.4 Типові методи вводу-виводу інформації в мпс

Розрізняють три типи обмінів між МПС і зовнішніми пристроями (ЗвП):

1) програмно-керована передача даних, коли момент часу, в який має починатись обмін даними, визначається ходом робочої програми (команди “ввід”, “вивід”);

2) використання переривань, коли початок обміну визначається роботою ЗвП, який формує запит на переривання. При появі запиту переривань МПС тимчасово припиняє виконання поточної програми і вводить в дію підпрограму, спеціально призначену для керування обміном даних;

3) прямий доступ до пам’яті (ПДП). Цей режим використовується, коли необхідно передати інформацію із зовнішньої пам’яті (від ЗвП) в основну. В цьому випадку МП від’єднує себе від шин, внаслідок чого зовнішня пам’ять одержує можливість прямого доступу до основної пам’яті.

Оскільки програмно-керований ввід-вивід буде розглядатись далі, детальніше зупинимося на двох інших методах.

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

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

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

Так, як і підпрограма, ПРОП розташовується в пам’яті (в ПЗП), починаючи з комірки пам’яті, на яку передається керування.

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

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

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

2. Переривання за вектором (апаратне); інформацію про ЗвП, який потрібно обслуговувати, формує апаратна частина МПС. В даному випадку мова йде про переривання, яке вибирається з деякої множини можливих, з поміткою обслуговуваного пристрою.

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

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

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

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