Способы соединения сопрягаемых устройств в интерфейсах
Существует несколько вариантов соединения сопрягаемых устройств в интерфейсах. Выбор того или иного способа зависит от ряда факторов, в частности, от того какое место занимает сопрягаемое устройств в СВВ.
Радиальное соединение характерно для устройств, находящихся на нижних уровнях иерархии (периферийные устройства, контроллеры). Схема такого соединения приведена на Рис. 1, а.
Рис. 1. Варианты соединения сопрягаемых устройств в интерфейсах
Приняты следующие обозначения:
Уц -центральное устройство (например, процессор);
У1 - Уп— подчиненные устройства (периферийные устройства);
Л1 —Лп — линии передачи данных;
Лц — линии данных центрального устройства;
РгА— регистр адреса подчиненных устройств;
УУ — устройство управления;
РгЗ— регистр запроса;
К — коммутатор;
ЛЗ1 - ЛЗп— линии запроса.
В такой структуре взаимодействие сопрягаемых устройств осуществляется следующим образом:
1. Центральное устройство связано с подчиненными устройствами через коммутатор посредством линий (шин) запроса.
2. Управление передачей данных от центрального устройства подчиненным устройствам осуществляется центральным устройством.
3. Если инициатива исходит от центрального устройства,то в регистр адреса заносится адрес устройства и, в соответствии с этим адресом, коммутатор соединяет центральное устройство с соответствующими линиями. Все остальные шины передачи данных логически отключаются от коммутатора.
4. Если инициатива исходит от подчиненного устройства,то последнее передает по своей линии запроса сигнал, который поступает в соответствующий разряд регистра запроса.
5. Как только центральное устройство освободится, устройство управления последовательно опросит все разряды регистра запроса и переключит коммутатор на шины данных устройства, инициировавшего запрос на передачу данных. Далее процедура передачи данных осуществляется аналогично.
Порядок опроса разрядов регистра запроса определяется приоритетом подчиненных устройств с использованием системы арбитража.
Такая схема сопряжения требует минимального количества линий управления передачей данных и позволяет сравнительно просто приспособить периферийное устройство к требованиям интерфейса. Однако, наличие индивидуальных шин передачи данных требует значительных затрат на приемно-передающую аппаратуру и линии связи. Поэтому такой вариант сопряжения чаще всего реализуется при использовании последовательных интерфейсов для сравнительно простых ПУ.
Магистральное соединение — характерно для интерфейсов среднего и верхнего рангов системы. Схема такого подключения приведена на Рис. 1, 6. На рисунке приведены следующие компоненты схемы:
Уц — центральное устройство (процессор);
А1-Ап — регистры адреса подчиненных устройств;
УУ — устройство управления; в состав УУ входят, в том числе, устройство формирования адреса устройства и схема анализа сигнала «требования»;
У1 - Уп— подчиненные устройства;
ТРБ— устройство формирующее сигнал «требования».
Все подчиненные устройства подключены к единой магистрали, которая используется ими в режиме разделения времени. Сигналы на линиях магистрали доступны всем устройствам. Все подчиненные устройства имеют индивидуальные адреса А1—Ап, задаваемые на специальных регистрах устройств.
Обмен по инициативе центрального устройства происходит следующимобразом:
1.Центральное устройство — передает адрес запрашиваемого устройства на магистраль.
2.Адрес устройства поступает во все устройства, подключенные к магистрали, в них производится сравнение переданного адреса.
3.При совпадении переданного адреса с адресом какого-либо устройства, последнее устанавливает сигнал готовности к приему информации от центрального устройства.
Обмен по инициативе периферийного устройства:
1. Одно из подчиненных устройств независимо от других выставляет сигнал запроса (сигнал ТРБ)на линию магистрали (линия ТРБ).
2. Сигнал ТРБ означает для центрального устройства, что на магистрали имеется устройство, запрашивающее сеанс на обмен.
3. Обнаружив сигнал ТРБ, схема анализа должна дать разрешение на занятие магистрали устройством.
4. Для этого проводится опрос периферийных устройств, то есть центральное устройство последовательно адресуется ко всем периферийным устройствам до тех пор, пока не получит подтверждения запроса. Подтверждение запроса может быть передано по информационной шине. При совпадении адресов периферийное устройство может выставить на информационную шину свой адрес, подтвердив тем самым факт запроса. Для этих же целей может быть выделена специальная линия.
5. Центральное устройство, получив сигнал подтверждения, прекращает формировать адреса, а периферийное устройство логически подключается к магистрали.
Особенности магистрального сопряжения.
1. Управление магистралью распределено между центральным устройством и подчиненными устройствами.
2. Центральное устройство разрешает конфликты одновременного обращения нескольких подчиненных устройств к нему.
3. Объем приемно-передающей аппаратуры, кабельных соединений уменьшается, но усложняется схема управления в подчиненных устройствах.
4. Процедура перебора адресов при большом количестве подчиненных устройств достаточно длительна.
Вследствие указанных выше недостатков магистрального соединения в реальных магистральных интерфейсах используют элементы радиального интерфейса.
Пример комбинированного магистрально-радиального интерфейса приведен на Рис. 2, а.
Рис. 2. Магистральный и цепочный интерфейсы
В магистральном варианте комбинированного интерфейса:
1. Все виды информации передаются по магистрали.
2. При необходимости связаться с устройством Уi центральное устройство Уц передает ему по индивидуальной линии сигнал «разрешение работы», который разрешает устройству Уiчерез коммутатор Кподключится к магистрали.
3. Таким образом, кроме магистрали каждое устройство Уi соединяется с центральным устройством двумя линиями — линией запроса и линией разрешения. Управляет идентификацией устройств арбитр (АРБ).
Пример магистрально-цепочного интерфейса приведен на Рис. 2, б.
Эта структура широко распространена на практике. Здесь все виды информации передаются также по магистрали, адресация устройств осуществляется так же, как в магистральном интерфейсе, но для ускорения идентификации предусматривается линия управления, соединяющая устройства У1—Уп по принципу цепи. Сигнал выборки (ВБР) подается последовательно на все периферийные устройства. То из периферийных устройств, которое послало на линию требования (ТРБ) свой адрес (А), запрашивая сеанс связи с центральным устройством, блокирует распространение сигнала ВБР и устанавливает связь с центральным устройством.
Магистрально-цепочная структура позволяет строить интерфейсы, в которых возможен обмен между фиксированным и произвольно выбираемым устройством, либо между двумя произвольными устройствами.
Такой принцип построения интерфейса впервые был использован в ЭВМ IВМ 360 и ЕС ЭВМ.
3.5 Синхронный и асинхронный обмен информацией в интерфейсах
Выше были даны определения синхронной и асинхронной передаче информации.
Синхронизация является той функцией, которая определяет скорость и надежность передачи информации. Синхронная и асинхронная передача реализуется либо с использованием аппаратных, либо программных средств.
При аппаратнойсинхронизации используются специальные сигналы — синхроимпульсы и сигналы стробирования.
Программная синхронизация использует специальные маркеры и метки, представляющие собой либо коды синхронизации, либо пакеты-маркеры, содержащие соответствующую информацию.
Линии интерфейса, по которым передаются данные, могут находиться в 3-х состояниях: состояние «1», состояние «0» и состояние отсутствия информации. Состояние отсутствия информации называют паузой на линии (шине) или холостым ходом шины. Для того чтобы приемник информации надежно различал эти состояния (например, отличал состояние «0» от холостого хода), используются стробирующие сигналы (стробы), которые подаются одновременно с данными. Стробы используются также и для синхронизации интерфейса.
Поскольку существуют два типа интерфейсов — параллельный и последовательный, а передача может быть синхронной и асинхронной, возможны 4 варианта передачи данных: параллельная синхронная и асинхронная, последовательная синхронная и асинхронная.
Отметим проблемы, возникающие при передаче данных параллельным кодом. Чем выше разрядность этого кода (От 8 до 64 разрядов), тем сложней правильно организовать передачу этого кода быстро и без ошибок. Допустим, что 2 устройства осуществляют передачу многоразрядного кода от устройства А к устройству Б. Поскольку электронные схемы, формирующие сигналы имеют разброс своих временных характеристик (собственные задержки не равные нулю), то установление сигналов 0 и 1 на линиях будет происходить в разные моменты времени в течение промежутка переключения. Кроме того, появление сигнала строба, так же происходит с задержкой. Поэтому строб надо подавать со сдвигом по временной оси только после того, как окончательно установится кодовая комбинация (с учетом всех ее задержек). Эта задержка не может быть определена теоретически и определяется экспериментально при испытании и настройке интерфейса.
Присинхронной последовательной передаче данные передаются последовательно (бит за битом) и сопровождаются синхросигналом или стробом. Эта передача характерна для низкоскоростных периферийных устройств, расположенных на незначительных расстояниях от компьютера (несколько метров). При больших расстояниях передачи требуется использование мощного генератора синхроимпульсов или строба, что весьма дорого.
Синхроннаяпоследовательная передача на расстояния в десятки и сотни метров строится с использованием двух генераторов синхроимпульсов или стробов. Один из генераторов работает на передающей стороне, а второй на приемной. При этом генератор на приемной стороне запускается генератором передающей стороны и имеет с ним одинаковую частоту. В этом случае передача строится так, как показано на временной диаграмме (Рис. 3, а).
Рис. 3. Синхронная последовательная передача
В таком интерфейсе верхний уровень сигнала принимается за «0», нижний — за «1». В состоянии холостого хода информационный бит на линии сигнала принимается за «0».
Передача строится следующим образом:
1. Переход линии интерфейса из «0» в «1» используется приемником для запуска генератора на приемной стороне, который начинает работать с генератором на передающей стороне (первый сигнал SYN).
2. Приемник распознает передаваемый второй SYN, после чего принимает первый бит данных (В1).
3. Постоянство интервала передачи (и приема) Тс обеспечивается синхронно работающими независимыми генераторами ГИа, ГИб в передатчике и приемнике, которые должны иметь высокую стабильность частоты.
4. При нарушении синхронности генераторов передатчик вставляет в последовательность битов символ SYN, то есть останавливает передачу и прекращает работу генератора ГИб.
5. Затем передачей двух синхросигналов процесс возобновляется с прерванного места.
Таким способом можно передать значительное количество информации, заключенной между синхросигналами.
Приасинхронной последовательной передачекаждый байтпередаваемой информации обрамляется стартовым иодним или двумястоповыми битами.
Передача строится следующим образом (Рис. 3, 6):
1. В режиме холостого хода линия находится в состоянии «0» (высокий уровень) - исходное состояние. Стартовый сигнал изменяет состояние линии и служит для запуска генератора в приемнике.
2. Затем передаются 8 битов информации, после чего линия переводится в исходное состояние стоповыми битами; передача прекращается, а генератор на приемной стороне прекращает работу.
3. Если следующего байта на передающей стороне нет, то линия остается в состоянии холостого хода.
4. Если следующий байт в передатчике есть, то передатчик выдает на линию стартовый бит и передача следующего байта осуществляется аналогично.
Такого рода передача характерна для принтеров.
Параллельная асинхронная передача обычно в интерфейсах периферийных устройств не используется, так как это сильно удорожает интерфейс. Такая передача характерна для устройств, расположенных на материнской плате.
Параллельная синхронная передачастроитсяпо принципу «запрос-ответ»,которую называют также «передачей с квитированием».
Суть передачи с квитированием заключается в следующем:
1. Источник выдает на шину данных параллельный код.
2. С некоторой задержкой на линию строба передается стробирующий сигнал, позволяющий приемнику считать с линий интерфейса код данных.
З. После того, как код данных считан приемником, последний вsдает на линию «ответ» - сигнал о том, что данные приняты.
Передача с квитированием позволяет подстроить темпы обмена под каждое конкретное устройство и обеспечить в ряде случаев очень высокую скорость передачи данных. Кроме того, передача с квитированием обеспечивает высокую надежность и достоверность передачи.