Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Б М.docx
Скачиваний:
148
Добавлен:
09.06.2015
Размер:
2.63 Mб
Скачать

Глава 11

ПРИНЦИПЫ ОРГАНИЗАЦИИ СИСТЕМ ВВОДА-ВЫВОДА. ИНТЕРФЕЙСЫ ЭВМ И МИКРОПРОЦЕССОРОВ

  1. Проблемы организации систем ввода-вывода

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

Передача информации с периферийного устройства в ядро ЭВМ (память и процессор) называется операцией ввода, а передача из ядра ЭВМ в периферийное устройство — опера­цией вывода.

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

Связь устройств ЭВМ друг с другом осуществляется с по­мощью сопряжений, которые в вычислительной технике называ­ются интерфейсами.

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

При разработке систем ввода-вывода должны быть решены следующие проблемы:

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

для эффективного и высокопроизводительного использова­ния оборудования ЭВМ должны реализовываться параллельная во времени работа процессора над программой и выполнение периферийными устройствами процедур ввода-вывода;

необходимо упростить для пользователя и стандартизовать программирование операций вВода-вывода, обеспечить незави­симость программирования ввода-вывода от особенностей того или иного периферийного устройства;

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

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

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

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

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

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

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

Унификация распространяется на семейство (ряд, систему) моделей ЭВМ.

Для обеспечения параллельной во времени работы ПУ с вы­полнением программы обработки данных процессором схемы управления вводом-выводом отделяют от процессора и придают им достаточную степень автономности.

Многие функции управления операциями ввода-вывода, как, например, управление прямым доступом к памяти (см. § 11.2), являются общими, они не зависят от типа ПУ. Другие являются специфичными для данного типа устройств.

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

  1. Прямой доступ к памяти

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

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

Пр

ПУ

Рис. 11.1. Способы организации передачи данных между памятью и пе­риферийными устройствами:

а — программно-управляемая передача; б — прямой доступ к памяти при нали­чии отдельной шины в памяти для ПДП; в — прямой доступ к памяти при исполь­зовании процессором и ПДП одной шины для связи с памятью

on

я

s

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

Вместе с тем при пересылке блока данных процессору при­водится для каждой единицы передаваемых данных (байт, сло­во) выполнять довольно много команд, чтобы обеспечить буфе­ризацию данных, преобразование форматов, подсчет количества переданных данных, формирование адресов в памяти и т. п. В результате скорость передачи данных при пересылке блока данных даже через высокопроизводительный процессор не пре­вышает 0,02—0,05 Мбайт/с, что недостаточно для работы с вы­сокоскоростными периферийными устройствами (например, с ЗУ на дисках и барабанах, с аналого-цифровыми преобразователя­ми и т. п.), и может оказаться вообще неприемлемой для систем управления, работающих в реальном времени. Между тем по­тенциально возможная максимальная скорость обмена данными при вводе-выводе определяется пропускной способностью памя­ти, которая, например, при цикле памяти 0,5 мкс составляет 2b Мбайт/с, где b ширина выборки, измеряемая числом байт, одновременно записываемых (считываемых) в памяти.

Для быстрого ввода-вывода блоков данных и разгрузки процессора от управления операциями ввода-вывода используют прямой доступ к памяти.

Прямым доступом к памяти называется способ обмена дан-

I ОП

Ргиоп —J

Ре АОЛ

J

Г

Контроялер\

ТСЧД

РгТАД

-7

УУ

1 * РеБ 1

Lyrry__j

ПУ

Рис. 11.2. Структурная схема контроллера прямого доступа к памяти

ными, обеспечивающий автономно от процессора установление связи и передачу данных между ОП и ПУ (рис. 11.1,6 и в).

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

управление инициируемой процессором или ПУ передачей данных между ОП и ПУ;

задание размера блока данных, который подлежит передаче, и области памяти, используемой при передаче;

формирование адресов ячеек ОП, участвующих в передаче; подсчет ^исла единиц данных (байт, слов), передаваемых от ПУ в ОП или обратно, и определение момента завершения за­данной операции ввода-вывода.

Указанные функции реализуются контроллером ПДП обыч­но с помощью одного или нескольких буферных регистров РгБ> регистра — счетчика текущего адреса данных РгТАД и счет­чика текущих данных ТСчД (рис. 11.2).

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

Обнуление ТСчД указывает на завершение передачи. Контрол­ер ПДП обычно имеет более

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

Прямой доступ к памяти обеспечивает высокую скорость обмена данными за счет того, что управление обменом произво­дится не программным путем, а аппаратурными средствами.

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

  1. Основные принципы построения и структуры системы ввода-вывода

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

Можно выделить два характерных принципа построения и соответствующие структуры систем ввода-вывода: ЭВМ с од­ним общим интерфейсом и ЭВМ с множеством интерфейсов и процессорами (каналами) ввода-вывода.

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

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

рис. 11.3. Структура системы ввода-вывода на основе общего интерфейса

обычно соответствует машинному слову процессора и (или) ши­рине выборки в ОП.

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

Наоборот, в ЭВМ общего назначения с шириной выборки и*форматом обмена между процессором и ОП 4—8 байт исполь­зование общего интерфейса потребовало бы усложнения блоков буферизации и согласования форматов в УПУ.

При общем интерфейсе аппаратура управления вводом-вы­водом рассредоточена по отдельным модулям и ее общий объем существенно зависит от числа ПУ в составе ЭВМ, особенно от числа ПУ с поблочным обменом, требующим контроллеров пря­мого доступа к памяти.

Следует отметить, что в структуре, представленной на рис.

  1. процессор не полностью освобождается от управления операциями ввода-вывода. Более того, во время операции пере­дачи данных интерфейс оказывается занятым, а связь процессо­ра — с памятью блокированной. Все это приводит к снижению производительности Э^М.

Сказанное объясняет, почему общий интерфейс ^интерфейс с общей шиной) нашел широкое применение (приобрел даже характер стандартного архитектурного решения) применительно к малым и микроЭВМ, которые имеют короткое слово, неболь­шой объем периферийного оборудования и к общей производи­тельности которых предъявляются умеренные требования. Для

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

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

Широко используются несколько модификаций общего ин­терфейса: «общая шина» (см. § 11.10), «мультишина»

(см. § 11.11) и др.

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

L °" .1 I й 1 • • • I °ч I