logo
Архитектура средств ВТ / Литература / Цилькер / Организация ЭВМ и систем / глава 8

Управление и синхронизация

Функция управления и синхронизации заключается в том, что МВВ должен координировать перемещение данных между внутренними ресурсами ВМ и внешними устройствами. При разработке системы управления и синхронизации модуля ввода/вывода необходимо учитывать целый ряд факторов.

Прежде всего, нужно принимать во внимание, что ЦП может взаимодействовать одновременно с несколькими ВУ, причем быстродействие подключаемых к МВВ внешних устройств варьируется в очень широких пределах — от несколько байтов в секунду в терминалах до десятков миллионов байтов в секунду при обмене с магнитными дисками. Если в системе используются шины, каждое взаимодействие между ЦП и МВВ включает в себя одну или несколько процедур арбитража.

В отличие от обмена с памятью процессы ввода/вывода и работа ЦП протекает не синхронно. Очередная порция информация может быть выдана на устройство вывода лишь тогда, когда это устройство готово их принять. Аналогично, ввод от устройства ввода допустим только в случае доступности информации на устройстве ввода. Несинхронный характер процессов ввода/вывода предполагает обмен сигналами, аналогичный процедуре «рукопожатия» (handshake), описанной в главе 4. Для двухпроводной системы синхронизации эта процедура состоит из четырех шагов, которые применительно к операции вывода можно описать следующим образом:

1. Центральный процессор с помощью сигнала ДД = 1 (данные достоверны) извещает о доступности данных, подлежащих выводу.

2. Приняв данные, устройство вывода сообщает процессору об их получении сигналом ДП= 1 (данные приняты).

3. Получив подтверждение, ЦП обнуляет сигнал ДД и снимает данные с шины, после чего может выставить на шину новые данные.

4. Обнаружив, что ДД = 0, устройство вывода, в свою очередь, устанавливает в пулевое состояние сигнал ДП, после чего оно готово для обработки принятых данных все время до получения очередного сигнала ДД = 1.

Описанную процедуру иллюстрирует рис. 8.4 (в скобках указаны номера шагов).

Рис. 8.4. Временная диаграмма процедуры «рукопожатия»

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