Головна

Прямий доступ до пам'яті

  1. BAR-CODES миттєвий доступ.
  2. FDDI. Архітектура мережі, метод доступу, стек протоколів.
  3. FDDI. Кадр. Процедури управління доступом до кільця і ??ініціалізації роботи кільця.
  4. THORN; Можливості мимовільного протікання прямої і зворотної реакції різновірогідні.
  5. VI. НЕЙРОХІМІЧНІ МЕХАНІЗМИ пластичність і ПАМ'ЯТІ.
  6. А) прямий федеральний податок
  7. адміністрування доступу

Хоча введення / виведення з перериванням ефективніше програмно керованого, обидва цих методу страждають на дві недоліками:

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

Якщо ЦП бажає прочитати або записати блок даних, він перш за все повинен помістити в КПДП (рис. 8.9) інформацію, що характеризує майбутнє дію. Цей процес називається ініціалізацією КПДП і включає в себе занесення в контролер наступних чотирьох параметрів:

? виду запиту (читання або запис);

? адреси пристрою в в од а / ви у так;

? адреси початкової осередки блоку пам'яті, звідки буде вилучатись або куди буде вводитися інформація;

? кількості слів, які підлягають читання або запису.

Мал. 8.9.Організація прямого доступу до пам'яті

Перший параметр визначає напрямок пересилки даних: з ОП в ВУ або навпаки. За вихідну точку зазвичай приймається пам'ять, тому під читанням розуміють зчитування даних з ОП і видачу їх на пристрій виведення, а під записом - прийом даних з пристрою введення і запис в ОП. Вид запиту запам'ятовується в схемі логіки управління контролера.

До КПДП зазвичай можуть бути підключені декілька ВП, а адреса УВВ конкретизує, яке з них має брати участь в майбутній обмін даними. Ця електронна адреса запам'ятовується в логіці управління КПДП.

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

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

Після ініціалізації процес пересилання інформації може бути розпочато в будь-який момент. Ініціаторами обміну вправі виступати як ЦП, так і ВУ. Пристрій, яка бажає розпочати В / вив, сповіщає про це контролер поданням відповідного сигналу. Отримавши такий сигнал, КПДП видає в ЦП сигнал «Запит ПДП». У відповідь ЦП звільняє шини адреси і даних, а також тс лінії шини управління, по яких передаються сигнали, що управляють операціями на шині адреси (IIIА) і шині даних (ШД). До таких, перш за все, відносяться лінії ЧтЗУ, ЗпЗУ, вив, Вв і лінія видачі адреси на 111 А. Далі ЦП відповідає контролеру сигналом «Підтвердження ПДП», який для останнього означає, що йому делеговані права на управління системною шиною і можна приступати до пересилання даних.

Процес пересилання кожного слова блоку складається з двох етапів.

При виконанні операції читання (ОП > ВУ) на першому етапі КПДП виставляє на шину адреси вміст РА (адреса поточної комірки ОП) і формує сигнал ЧтЗУ. Лічений з осередку ОП слово поміщається на шину даних. На другому етапі КПДП виставляє на ША адресу пристрою виведення і формує сигнал вив, який забезпечує передачу слова з шини даних в ВУ.

При виконанні операції запису (ВУ -> ОП) КПДП спочатку видає на шину даних адреса пристрої введення і формує сигнал Вв, за яким введені дані надходять на шину даних. На другому етапі КПДП поміщає на ША адресу осередку ОП, куди повинні бути занесені дані, і видає сигнал ЗпЗУ. Цим сигналом інформація з ШД записується в осередок ОП.

Як при читанні, так і під час запису відбувається буферизація пересилається слова в регістрі даних (РД) контролера. Це необхідно для компенсації різниці в швидкості роботи ВП і ВУ, в силу чого сигнали вив і Вв формуються контролером лише при отриманні від ВУ підтвердження про готовність. Буферизація зводиться до того, що після першого етапу слово з ШД заноситься в РД, а перед другим - повертається з РД на шину даних.

Після пересилки кожного слова логіка управління додає одиницю до вмісту РА (формує адреса наступної комірки ОП) і зменшує на одиницю вміст СД (веде підрахунок переданих слів).

Коли пересилання завершена (при нульовому значенні в СД), КПДП знімає сигнал «Запит ПДП», у відповідь на що ЦП знімає сигнал «Підтвердження ПДП» і знову бере на себе управління системною шиною, тобто ЦП залучений в процес введення / виводу тільки в початку і кінці передачі.

Ефективність ПДП залежить від того, яким чином реалізовано розподіл системної шини між ЦП і КПДП в процесі пересилання блоку. Тут може застосовуватися один з трьох режимів:

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

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

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

На відміну від звичайного переривання в межах циклу команди є кілька точок, де КПДП вправі захопити шину (рис 8.10). Відзначимо, що це не переривання: процесору не потрібно запам'ятовувати контекст завдання.

Мал. 8.10.Точки можливого втручання в цикл команди при прямому доступі до пам'яті і при звичайному перериванні

Механізм ПДП може бути реалізований різними шляхами. Деякі можливості показані на рис. 8.11.

У першому прикладі (див. Рис. 8.11, а) все ВУ спільно використовують загальну системну шину. КПДП працює як замінник ЦП і обмін даними між пам'яттю і ВУ через КПДП виробляє через програмно керований введення / виведення. Хоча цей варіант може бути досить дешевим, ефективність його невисока. Як і в випадку програмно керованого введення / виведення, здійснюваного процесором, кожна пересилання вимагає двох циклів шини.

Мал.8.11. Можливі конфігурації систем прямого доступу до пам'яті

Число необхідних циклів шини може бути зменшено при об'єднанні функцій КПДП і ВУ. Як видно з рис. 8.11, б, це означає, що між КПДП і одним або декількома ВУ є інший тракт, що не включає системну шину. Логіка ПДП може бути частиною ВУ, або це може бути окремий КПДП, керуючий одним або декількома зовнішніми пристроями. Припустимо і ще один крок в тому ж напрямку (див. Рис. 8.11, в) - з'єднання КПДП з ВУ за допомогою шини введення / виводу. Це зменшує число інтерфейсів В / вив в КПДП і робить таку конфігурацію легко розширюється. У двох останніх варіантах системна шина задіюється КПДП тільки для обміну даними е пам'яттю. Обмін даними між КПДП і ВУ реалізується минаючи системну шину.



Реалізація введення / виведення з перериванням | Канали і процесори введення / виводу

Конспект лекцій з дісціпііні 1 сторінка | Конспект лекцій з дісціпііні 2 сторінка | Конспект лекцій з дісціпііні 3 сторінка | Конспект лекцій з дісціпііні 4 сторінка | Рівні деталізації структури обчислювальної машини | Еволюція засобів автоматизації обчислень | Концепція машини з зберiгається в пам'ятi | Фон-неймановская архітектура | Структури обчислювальних машин | Структури обчислювальних систем |

© um.co.ua - учбові матеріали та реферати