logo
AOM / Мельник А

11.4. Програмно-кероване введення-вивєдення

В комп'ютерах, що використовують програмно-кероване введення-вивєдення, в ін-терфейсній схемі кожного пристрою введення-вивєдення наявний регістр команд і ста­нів РКС (рис. 11.5). В цьому регістрі є розряд прапорця F,який при потребі обміну з боку пристрою введення-вивєдення встановлюється в "1".

404

Процесор безупинно опитує регістр команд і станів кожного пристрою введення-ви-ведення, чекаючи на надходження даних (рис. 11.6). Тому програмно-кероване введен-ня-виведення іноді називають введенням-виведенням за запитами. Як тільки процесор виявляє умову готовності даних, він діє згідно з вказівками команд з програми відповід­ного пристрою введення-виведення.

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

Розглянемо програмно кероване введення виведення на прикладі відеотерміналу в складі клавіатури і дисплею. Швидкість передачі даних від клавіатури в комп ютер визна­чається в основному швидкістю роботи оператора, яка рівна декільком символам за секунду. Швидкість передачі даних з комп'ютера на відеотермінал значно вища. Вона визначається швидкістю передачі даних по шині, і типово знаходиться біля показника 1000 символів за секунду. Але це значно менше, ніж може забезпечити процесор (мільярди операцій за секун­ду). Проблема узгодження швидкостей вирішується наступним чином. Процесор посилає перший символ, чекає на підтвердження відображення символу на дисплеї, посилає другий символ і т. д. При взаємодії з клавіатурою процесор чекає сигнал, який свідчить про те, що клавіша натиснута і можна виконувати ввід коду символу.

Один з варіантів з'єднання процесора і відеотерміналу показаний на рис. 11.7.



405

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

Аналогічно при пересиланні даних на дисплей процесор постійно перевіряє вміст прапорця Б регістра РКС, аж поки він не встановиться в одиницю, після чого відбуваєть­ся пересилання даного з одного з регістрів процесора, номер якого вказується в команді, до регістра даних РгД.