Материал: Уч_пос_АрхКомп_2017

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Рис.10.2

На рис10.2 показан процесс ввода-вывода по способу, называемому канальным.

Каналы делятся на следующие.

  1. Мультиплексные (обслуживают много ВУ, но медленных).

  2. Селекторные (обслуживают мало ВУ, но быстродействующих).

Отличительная особенность канального ввода-вывода - процессор освобождается от управления внешними устройствами, функция процессора заключается в инициализации запуска канальных программ и завершении операции ввода-вывода, выполняемой с помощью канала, по соответствующему признаку из канала (по существу это многопроцессорная система).

Состав и сравнение функций контроллеров и каналов

Контроллер

  1. В текущий момент времени он выполняет одну команду ввода-вывода, получаемую от процессора или канала, и одновременно обслуживает одно внешнее устройство.

В его функции входит:

  1. Опознание своего адреса выборки.

  2. Подтверждение готовности внешних устройств.

  3. Управление операцией во внешнем устройстве.

  4. Согласование форматов данных.

  5. Согласование скоростей передачи (буферизация).

  6. Фиксация момента и характера операции ввода-вывода.

Контроллер должен содержать:

  1. Селектор адреса (логическая схема, выдающая разрешающий сигнал на один адрес).

  2. Регистры управления (содержит команду) и состояния. Состояния характеризуются следующими битами: DONE, BUSY, ERROR, часто применяются биты приоритета.

  3. Буферные регистры данных, которые служат для согласования форматов и скоростей передачи.

Канал

  1. Выполняет целую канальную программу из многих команд.

  2. Допускает одновременное управление несколькими внешними устройствами.

В его функции входит:

  1. Опознание своего адреса и подтверждения готовности.

  2. Прием команд процессора, инициализирующих работу канала, и нахождения в памяти своей канальной программы.

  3. Поиск контроллера и внешнего устройства, участвующего в операции, и проверки их готовности.

  4. Запуск канальной программы и управление обменом.

  5. Сообщение центрального процессора о завершении операции и всей программы.

Канал представляет собой специализированный процессор с расширенными управлениями, и ограниченный арифметическими возможностями.

10.3. Способы выполнения операции передачи данных

Классификация основных способов выполнения передачи данных показан на рис. 10.3, а на рис.10.4-17.7 представлены схемы выполнения каждого из способов передачи данных.

Передача данных

Синхронная Асинхронная

Несовмещенный Вв/выв по программному

вв/выв прерыванию

Вв/выв по аппаратному

прерыванию

Рис 10.3

Синхронная передача данных

↓

← Команда вв/выв

Передача 1

↓

← Команда вв/выв

Передача 2

↓

Рис. 10.4. Синхронная передача данных - самый быстрый, но ненадежный способ передачи данных.

Несовмещенный ввод-вывод

Команда

Вв/выв

Фоновая

программа Нет ВУ

готово?

Да

Передача

Рис.10.5

……

В данном случае центральный процессор после выдачи команды ввода-вывода ожидает готовности ВУ, проверяя установку флажка готовности (говорят, что процессор «висит» на флажке готовности). Этот бит представляет собой своеобразный семафор, который управляет доступом к данным либо от процессора, либо от ВУ. Такой способ обмена удобен для внешнего устройства и не эффективен для процессора. Так как ВУ диктует условия, то со стороны ВУ скорость передачи данных – максимально для него возможная. Иногда удается в цикле ожидания вставить выполнение процессором фоновой программы.

Ввод-вывод по программному прерыванию

Основная программа(ОП)

Запрос ВУ

Подпрограмма

обслуживания

ВУ (передача)

…….

(команда Вв/вывода)

Продолжение ОП

Рис. 10.6

В данном случае ВУ для осуществления передачи устанавливает запрос на прерывание работы процессора и, если прерывание возможно, то подпрограмма обслуживания прерывания выполняет передачу данных, по завершении которой происходит возврат на продолжение основной программы.

Данный способ обмена удобен для процессора и неэффективен для ВУ, в таком режиме к процессору подключаются медленные устройства с произвольными моментами готовности к передаче данных.

Ввод-вывод по аппаратному прерыванию (прямой доступ к памяти)

Основная программа

(Инициализация ПДП)

Запрос 1

на передачу

цикл памяти

(передача 1)

Запрос 2

на передачу цикл памяти

(передача 2)

Рис. 10.7

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

Этот режим обеспечивает параллельную работу процессора и выполнение операций ввода-вывода, он используется для подключения быстрых ВУ, так как передача идет между памятью и ВУ, и управление передачей происходит аппаратно.

10.4. Структуры контроллеров ву для различных режимов передачи данных

Контроллер несовмещенного ввода-вывода (КНВВ)

С ШУ (состояние) & РгУС

и

с Done Err Выв/Вв т ША

е Селектор

м адреса

н

а ШУ(команды) & ВУ

я

ш & РгД

и ЩД (Выв) Вв

н

а &

ЩД (Вв)

Выв

Рис.10.8

На рис. 10.8 показан контроллер несовмещенного ввода-вывода.

Основы узла контроллера несовмещенного ввода-вывода (КНВВ):

  • Селектор адреса, который выдает на выходе единицу (разрешающий сигнал), только для одного адреса (своего адреса);

  • РгУС – регистр управления и состояния, который принимает от шины управления команду ввода-вывода, а на выход передает состояние ВУ до и после выполнения команды.

  • БРгД – буферный регистр данных осуществляет промежуточное хранение данного для согласования форматов и выравнивания скоростей ВУ и процессора.

Контроллер обмена по программному прерыванию(ОПП)

Контроллер ОПП состоит из двух частей:

  1. Индивидуальный контроллер управления ВУ (аналогичен КНВВ).

  2. Общий или выделенный контроллер обслуживания прерываний.

С НВП

И IRR

С (ША)

Т

Е

М INT IRQ N &

Н (ШУ) ISR

А

Я

(ШУ)

Ш

И IMR

Н

А

IM

PRIOR

(ШД) EI DONE PRIOR … РгУс

Контроллер прерываний КНВВ

Рис. 10.9

INTA

INTA

Источник: https://studfile.net/preview/15919868/