Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Каналы и процессоры ввода/вывода




По мере развития систем В/ВЫВ их функции усложняются. Главная цель такого усложнения — максимальное высвобождение ЦП от управления процессами вво­да/вывода. Некоторые пути решения этой задачи уже были рассмотрены. Следу­ющими шагами в преодолении проблемы могут быть:

1. Расширение возможностей МВБ и предоставление ему прав процессора со специализированным набором команд, ориентированных на операции ввода/ вывода. ЦП дает указание такому процессору В/ВЫВ выполнить хранящуюся в памяти ВМ программу ввода/вывода. Процессор В/ВЫВ извлекает и испол­няет команды этой программы без участия центрального процессора и преры­вает ЦП только после завершения всей программы ввода/вывода.

2. Рассмотренному в пункте 1 процессору ввода/вывода придается собственная локальная память, при этом возможно управление множеством устройств В/ ВЫВ с минимальным привлечением ЦП.

В первом случае МВБ называют каналом ввода/вывода (КВВ), а во втором — процессором ввода/вывода. В принципе различие между каналом и процессором ввода/вывода достаточно условно, поэтому в дальнейшем будем пользоваться тер­мином «канал».

Концепция системы ввода/вывода с КВВ характерна для больших универсаль­ных вычислительных машин (мэйнфреймов), где проблема эффективной организации В/ВЫВ и максимального высвобождения центрального процессора в пользу его основной функции стоит наиболее остро. СВВ с каналами ввода/вывода была предложена и реализована в ВМ семейства IBM 360 и получила дальнейшее раз­витие в семействах IBM 370 и IBM 390.

В ВМ с каналами ввода/вывода центральный процессор практически не уча­ствует в непосредственном управлении внешними устройствами, делегируя эту задачу специализированному процессору, входящему в состав КВВ. Все функции ЦП сводятся к запуску и остановке операций в КВВ, а также проверке состояния канала и подключенных к нему ВУ. Для этих целей ЦП использует лишь несколь­ко (от 4 до 7) команд ввода/вывода. Например, в IBM 360 таких команд четыре:

  • «Начать ввод/вывод»;
  • «Остановить ввод/вывод»;
  • «Проверить ввод/вывод»;
  • «Проверить канал».

КВВ реализует операции В/ВЫВ путем выполнения так называемой каналь­ной программы. Канальные программы для каждого ВУ, с которым предполагает­ся обмен информацией, описывают нужную последовательность операций ввода/ вывода и хранятся в основной памяти ВМ. Роль команд в канальных программах выполняют управляющие слова канала (УСК), структура которых отличается от структуры обычной машинной команды. Типовое УСК содержит:

  • код операции, определяющий для КВВ и ВУ тип операции: «Записать» (вывод информации из ОП в ВУ), «Прочитать» (ввод информации из ВУ в ОП), «Уп­равление» (перемещение головок НМД, магнитной ленты и т, п.);
  • указатели — дополнительные предписания, задающие более сложную после­довательность операций В/ВЫВ, например при вводе пропускать отдельные записи или наоборот — с помощью одной команды вводить «разбросанный» по ОП массив как единый;
  • адрес данных, указывающий область памяти, используемую в операции ввода/вывода;
  • счетчик данных, хранящий значение длины передаваемого блока данных.

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

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

  • процессор (первый уровень управления);
  • канал ввода/вывода (второй уровень);
  • внешнее устройство (третий уровень).

Каждому типу устройств соответствует свой вид управляющей информации:

  • процессору — команды ввода/вывода;
  • каналу — управляющие слова канала;
  • периферийному устройству — приказы.

Структура ВМ с канальной системой ввода/вывода показана на рис. 8.12.

Рис. 8.12. ВМ с канальной системой ввода/вывода

 

Обмен информацией между КВВ и основной памятью осуществляется посред­ством системной шины ВМ. ВУ подключаются к каналу не непосредственно, а че­рез блоки управления внешними устройствами (БУВУ). БУВУ принимает от ка­нала приказы по управлению внешним устройством (чтение, запись, перемещение носителя или магнитной головки и т. п.) и преобразует их в сигналы управления, свойственные данному типу ВУ. Обычно один БУВУ может обслуживать несколь­ко однотипных ВУ, но для подключения быстродействующих внешних устройств часто применяются индивидуальные блоки управления. В свою очередь, некото­рые ВУ могут подключаться одновременно к нескольким БУВУ. Это позволяет воспользоваться свободным трактом другого БУВУ при занятости данного БУВУ обслуживанием одного из подключенных к нему ПУ. Физически БУВУ может быть самостоятельным устройством или интегрирован с ВУ или каналом.

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

Обмен информацией между ВУ и ОП, как уже упоминалось, реализуется в ре­жиме прямого доступа к памяти, при этом для взаимодействия ЦП и канала задей­ствованы сигналы «Запрос ПДП» и «Подтверждение ПДП».

Чтобы известить ЦП об окончании текущей канальной программы или об ошиб­ках, возникших при ее выполнении, КВВ выдает в ЦП сигнал «Запрос прерывания». В свою очередь, ЦП может привлечь внимание канала сигналом «Внимание».

Способ организации взаимодействия ВУ с каналом определяется соотношени­ем быстродействия ОП и ВУ. По этому признаку ВУ образуют две группы: быст­родействующие (накопители па магнитных дисках (НМД), накопители на магнит­ных лентах (НМЛ)) со скоростью приема и выдачи информации около 1 Мбайт/с и медленнодействующие (дисплеи, печатающие устройства и др.) со скоростями порядка 1 Кбайт/с и менее. Быстродействие основной памяти обычно значитель­но выше. С учетом производительности ВУ в КВВ реализуются два режима рабо­ты: мультиплексный (режим разделения времени) и монопольный.

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

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

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...