Прямий доступ до пам'яті. Введення-виведення під керуванням периферійних процесорів 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Прямий доступ до пам'яті. Введення-виведення під керуванням периферійних процесорів



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

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

В цьому випадку необхідний контролер прямого доступу до пам’яті, який керує вза­ємодією пам’яті та пристроїв введення-виведення без участі процесора.

На рис 11.13 показаний двоканальний контролер прямого доступу до пам’яті, який керує зв’язком основної пам’яті з дисковою пам’яттю і високошвидкісним принтером.

 

До складу контролера входять:

■ регістр даних;

■ регістр адреси;

■ лічильник слів;

■ регістр команд;

■ регістр станів;

■ логіка керування.

Ці вузли мають свої адреси для засилання в них інформації з процесора. Кількість таких вузлів кратна кількості каналів.

Для початку передавання даних між пам’яттю і пристроєм введення-виведення в контролер записується наступна інформація:

■ адреса пам’яті;

■ кількість слів;

■ адреса даних в пристрої введення-виведення (на диску);

■ виконувана функція (запис/зчитування).

Ця інформація поступає в контролер з процесора. Коли передача закінчена, цей факт реєструється в регістрі станів контролера. Тут також записується інформація про по­милки при передачі даних. Після закінчення введення-виведення, чи при наявності по­милки, система прямого доступу до пам’яті повідомляє про це процесор відповідним сигналом переривання.

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

 

Введення-виведення під керуванням периферійних процесорів

Принципи введення-виведення під керуванням периферійних процесорів

Програмно-кероване введення-виведення передбачає передачу одного байта за один раз. Кероване перериваннями введення-виведення також може маніпулювати даними по одному байту за один раз або малими блоками, залежно від виду пристрою, що бере участь у введенні-виведенні. Повільніші пристрої, як наприклад клавіатура, генерують більшу кількість переривань відносно кількості переданих байтів, ніж диски або принте­ри. Методи прямого доступу до пам’яті є блочно-орієнтованими. Тут переривання робо­ти процесора відбувається лише після завершення (або помилки) передачі групи байтів. Після того, як система прямого доступу до пам’яті сигналізує про завершення введен­ня-виведення, процесор може надати їй адресу наступного блоку пам’яті, для зчитуван­ня або запису. У випадку невдачі, обов’язок по вживанню відповідних заходів лежить на процесорі. Тому, введення системи прямого доступу до пам’яті вимагає лише трохи меншої участі процесора, ніж при керованому перериваннями введенні-виведенні. Такі підходи до організації введення-виведення допустимі для малих систем, орієнтованих на одного користувача, проте, вони не є ефективними для великих систем, орієнтованих на багатьох користувачів, як наприклад, великі універсальні комп’ютери - мейнфрейми. Більшість мейнфреймів використовують інтелектуальний вид інтерфейсу прямого до­ступу до пам’яті, відомого як канальне введення-виведення.

ГІри використанні канального введення-виведення один або більше процесорів вве­дення-виведення, які ще називають каналами, керують різними трактами введення-ви­ведення. Тракти для "повільних" пристроїв, як, наприклад, термінали і принтери, мо­жуть комбінуватися (мультиплексуватися), дозволяючи керування деякою кількістю цих пристроїв тільки одним процесором введення-виведення. В мейнфреймах фірми ІВМ процесор введення-виведення, який керує мультиплексованим канальним трактом, називають мультиплексним каналом (МПК). Канали для дисководів й інших "швидких" пристроїв називають селекторними каналами (СК).

Процесори введення-виведення оптимізують для організації виконання операцій введення-виведення. На відміну від схем прямого доступу до пам’яті, процесори вве­дення-виведення мають здатність виконувати програми, які включають арифметично- логічні команди та команди переходу. На рис. 11.14 наведена спрощена конфігурація ка­нального введення-виведення.

Рис. 11.14. Спрощена конфігурація канального введення-виведення

 

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

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

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

 

 



Поделиться:


Последнее изменение этой страницы: 2016-08-01; просмотров: 436; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.15.205 (0.008 с.)