Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Технические средства ЭВМ.docx
Скачиваний:
32
Добавлен:
11.11.2018
Размер:
355.19 Кб
Скачать

Взаимодействие центральных и периферийных устройств пэвм

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

Термин “последовательный” означает, что связь осуществляется по одиночному проводнику (он может быть электрическим, оптическим, радиочастотным), а биты передаются последовательно, один за другим. Последовательная связь функционирует в асинхронном режиме, то есть при передаче данных специальный синхронизирующий сигнал не используется, и отдельные символы могут передаваться с произвольными временными интервалами - так же, как, например, при вводе данных с клавиатуры. Каждому символу должен предшествовать стандартный стартовый сигнал, а заканчиваться его передача должна “стоповым” сигналом. Назначение стартового сигнала - сообщить принимающему устройству, что следующие 8 бит представляют собой байт данных. Затем передаются один или два стоповых бита, сигнализирующие об окончании его передачи. В принимающем устройстве данные разделяются по появлению стартовых и стоповых сигналов, а не по моменту их передачи.

В параллельных портах для одновременной передачи байта данных используются 8 сигнальных линий.

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

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

Основная Внешние

программа запросы

из шины управления

Программа МПр

обработки Номер Контроллер

прерывания прерывания прерываний

Основная

программа

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

Рассмотрим такое взаимодействие на примере ввода символа с клавиатуры. При нажатии клавиши утройство клавиатуры вырабатывает управляющий сигнал «Нажатие на клавишу» и информационный сигнал, представляющий собой номер нажатой клавиши. При отпускании клавиши клавиатура вырабатывает управляющий сигнал «Отпускание клавиша» и информационный сигнал «Номер клавиши». Управляющий сигнал «Нажатие клавиши» поступает на процессор, который в это время занят выполнением какой-либо программы. При поступлении этого сигнала процессор приостанавливает выполнение текущей программы, сохраняет все парамеры ее выполнения и начинает выполнять программу получения информации с клавиатуры. Программа определяет номер нажатой клавиши и по этому номеру определяет код символа клавиши из таблицы сиволов. Код символа записывается в специальное место памяти, которое называется буфером ввода с клавиатуры. Эта область памяти позволяет разместить в ней ограниченное количество кодов. После выполнения этих действий программа полчения информации с клавиатуры организует некоторую задержку. Если за это время не поступает сигна «Отпускание клавиши», то программа записывает в буфер ввода с клавиатуры еще один код символа нажатой клавиши и снова повторяет задержку. Этот процесс повторяется до тех пор, пока не появится сигнал «Отпускание клавиши» или не закончится место в буфере. Если в буфере закончилось место, то вместо записи кода символа в буфер программа генерирует звуковой сигнал. После получения сигнала «Отпускание клавиши» работа программы получения информации завершается, а процессор восстанавливает параметры выполнения текущей программы и продолжает ее выполнение. Таким образом, управляющий сигнал «Нажатие клавиши» прерывает выполнение текущей программы до завершения обработки этого сигнала, а сам сигнал называется прерыванием. Обмен информацией между процессором и всеми внешними устройствами реализуется в форме системы прерываний, в которой управляющим сигналам с различных устройств соответствует своя программа обработки сигнала, позволяющая организовать обмен информацией между устройствами различного типа и процессором. Все это называется механизмом прерываний. С другой стороны, выполняемой процессором программе в какой-то момент времени может потребоваться информация, в виде кода символа, введенного с клавиатуры. В этом случае выполнение программы приостанавливается, сохраняются все параметры ее выполнения и запускается специальная программа, которая читает код символа из буфера. Процедура чтения символа берет символ из буфера, если он там есть, в том порядке, в котором он поступил в буфер. При чтении символа место в буфере освобождается. Если в буфере нет записанных символов, то организуется ожидание до момента поступления информации в буфер. Выполнявшаяся программа переводится в состояние «Ожидание», а для последующей работы вызывается специальная программа, которая определяет, какую программу процессор будет выполнять. Если таких программ больше нет, то выполняется специальная программа, которая, по-существу, не выполняет никаких полезных действий. Таким образом, выполнение программы может быть приостановлено и по инициативе самой программы. Такое действие программы называют исключением.

С середины 2000 годов для подключения периферийных устройств широко используется интерфейс USB (универсальная последовательная шина).

    Периферийные устройства, с поддержкой USB при подключении к компьютеру автоматически распознаются системой, и готовы к работе без вмешательства пользователя. Устройства с небольшим энергопотреблением (до 500мА) могут не иметь своего блока питания и запитываться непосредственно от шины USB.

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

USB позволяет выполнять "горячее" (оперативное) подключение. При этом не требуется предварительное выключение компьютера, затем подключение устройства, перезагрузка компьютера и настройка установленных периферийных устройств. Для отключения периферийного устройства не требуется выполнять процедуру, обратную описанной.

Проще говоря, USB позволяет фактически реализовать все преимущества современной технологии "plug and play" ("включай и работай").

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