Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3168

.pdf
Скачиваний:
4
Добавлен:
15.11.2022
Размер:
3.22 Mб
Скачать

В локальную сеть ВУ

 

 

СУ ВУ

 

ИС ВУ

 

Локальная

сеть НУ

 

ЛСУ 1

. . .

ЛСУ k

. . .

ЛСУ N

Рис. 3.1

Модель взаимодействия открытых систем

Вначале 80-х годов ряд международных организации по стандартизации — ISO, ITU-T

инекоторые другие — разработали модель, которая сыграла значительную роль в развитии сетей. Эта модель называется моделью взаимодействия открытых систем (Open System Interconnection, OSI) или моделью OSI. Модель OSI определяет различные уровни взаимодействия систем, дает им стандартные имена и указывает, какие функции должен выполнять каждый уровень. Модель OSI была разработана на основании большого опыта, полученного при создании компьютерных сетей, в основном глобальных, в 70-е годы. Полное описание этой модели занимает более 1000 страниц текста.

Переход к требованиям

В модели OSI (рис. 3.2) средства взаимодействия делятся на семь уровней: прикладной, представительный, сеансовый, транспортный, сетевой, канальный и физический. Каждый уровень имеет дело с одним определенным аспектом взаимодействия сетевых устройств.

Рис. 3.2. Сетезависимые и сетенезависимые уровни модели OSI

30

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

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

Уровни модели OSI

Физический уровень

Физический уровень (Physical layer) имеет дело с передачей битов по физическим каналам связи, таким, например, как коаксиальный кабель, витая пара, оптоволоконный кабель или цифровой территориальный канал. К этому уровню имеют отношение характеристики физических сред передачи данных, такие как полоса пропускания, помехозащищенность, волновое сопротивление и другие. На этом же уровне определяются характеристики электрических сигналов, передающих дискретную информацию, например, крутизна фронтов импульсов, уровни напряжения или тока передаваемого сигнала, тип кодирования, скорость передачи сигналов. Кроме этого, здесь стандартизуются типы разъемов и назначение каждого контакта. Функции физического уровня реализуются во всех устройствах, подключенных к сети.

Канальный уровень

На физическом уровне просто пересылаются биты. При этом не учитывается, что в некоторых сетях, в которых линии связи используются (разделяются) попеременно несколькими парами взаимодействующих компьютеров, физическая среда передачи может быть занята. Поэтому одной из задач канального уровня (Data Link layer) является проверка доступности среды передачи. Другой задачей канального уровня является реализация механизмов обнаружения и коррекции ошибок. Для этого на канальном уровне биты группируются в наборы, называемые кадрами (frames). Канальный уровень обеспечивает корректность передачи каждого кадра, помещая специальную последовательность бит в начало и конец каждого кадра для его выделения, а также вычисляет контрольную сумму, обрабатывая все байты кадра определенным способом и добавляя контрольную сумму к кадру. Когда кадр приходит по сети, получатель снова вычисляет контрольную сумму полученных данных и сравнивает результат с контрольной суммой из кадра. Если они совпадают, кадр считается правильным и принимается. Если же контрольные суммы не совпадают, то фиксируется ошибка. Канальный уровень может не только обнаруживать ошибки, но и исправлять их за счет повторной передачи поврежденных кадров. Необходимо отметить, что функция исправления ошибок не является обязательной для канального уровня, поэтому в некоторых протоколах этого уровня она отсутствует.

Сетевой уровень

Сетевой уровень (Network layer) служит для образования единой транспортной системы, объединяющей несколько сетей, причем эти сети могут использовать совершенно различные принципы передачи сообщений между конечными узлами и обладать произвольной структурой связей. Функции сетевого уровня достаточно разнообразны. Начнем их рассмотрение на примере объединения локальных сетей.

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

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

31

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

Сообщения сетевого уровня принято называть пакетами (packets).

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

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

Транспортный уровень

На пути от отправителя к получателю пакеты могут быть искажены или утеряны. Хотя некоторые приложения имеют собственные средства обработки ошибок, существуют и такие, которые предпочитают сразу иметь дело с надежным соединением. Транспортный уровень (Transport layer) обеспечивает приложениям или верхним уровням стека протоколов — прикладному и сеансовому — передачу данных с той степенью надежности, которая им требуется. Модель OSI определяет пять классов сервиса, предоставляемых транспортным уровнем. Эти виды сервиса отличаются качеством предоставляемых услуг: срочностью, возможностью восстановления прерванной связи, наличием средств мультиплексирования нескольких соединений между различными прикладными протоколами через общий транспортный протокол, а главное – способностью к обнаружению и исправлению ошибок передачи, таких как искажение, потеря и дублирование пакетов.

Сеансовый уровень

Сеансовый уровень (Session layer) обеспечивает управление диалогом: фиксирует, какая из сторон является активной в настоящий момент, предоставляет средства синхронизации. Последние позволяют вставлять контрольные точки в длинные передачи, чтобы в случае отказа можно было вернуться назад к последней контрольной точке, а не начинать всё с начала. На практике немногие приложения используют сеансовый уровень, и он редко реализуется в виде отдельных протоколов, хотя функции этого уровня часто объединяют с функциями прикладного уровня и реализуют в одном протоколе.

Представительный уровень

Представительный уровень (Presentation layer) имеет дело с формой представления передаваемой по сети информации, не меняя при этом ее содержания. За счет уровня представления информация, передаваемая прикладным уровнем одной системы, всегда понятна прикладному уровню другой системы. С помощью средств данного уровня протоколы прикладных уровней могут преодолеть синтаксические различия в представлении данных или же различия в кодах символов, например кодов ASCII и EBCDIC. На этом уровне может выполняться шифрование и дешифрование данных, благодаря которому секретность обмена данными обеспечивается сразу для всех прикладных служб. Примером такого протокола является протокол Secure Socket Layer (SSL), который обеспечивает секретный обмен сообщениями для протоколов прикладного уровня стека TCP/IP.

Прикладной уровень

Прикладной уровень (Application layer) — это в действительности просто набор разнообразных протоколов, с помощью которых пользователи сети получают доступ к разделяе-

32

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

(message).

Требования к сетевым интерфейсам

Рассмотрим простейшие сети обмена информацией (низшие уровни модели OSI).

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

1.Возможность подключения от 2-4 до 100-256 устройств.

2.Минимальное количество проводов.

3.Возможность подключения к каналу связи самых дешевых МК, минимальная цена внешней обвязки.

4.Высокая помехозащищенность при длине линий связи до нескольких метров (или десятков метров) в условиях совместной работы с силовыми цепями исполнительных устройств объекта.

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

6.Возможность создания многосегментной сети с маршрутизацией пакетов. Опыт работы с системами управления показывает, что можно ограничиться древовидной структурой сети (во-первых, она обычно адекватна архитектуре простых систем, а во-вторых, иначе самым простым решением будет TCP/IP на готовых чипах).

7.Автоопределение списка активных адресов. Возможность горячего подключения новых абонентов, например, терминала слежения за системой.

8.Прозрачная передача двоичных данных (работа только кодами ASCII обычно снижает скорость в 2 раза).

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

10.Удобство интерфейса вызова.

11.Желательно, чтобы модуль связи работал независимо от программы пользователя, дабы ошибки пользователя не влияли на надежность связи.

12.Возможность через указанную линию связываться в тестовом режиме с PC.

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

В целом, как представляется, задача включает следующие вопросы: 1. На какой аппаратный протокол передачи БАЙТА ориентироваться?

(на физическом уровне МОДЕЛИ обмена) 2. Какими аппаратными средствами его реализовать?

33

3. Какой программный протокол передачи ПАКЕТА использовать?

(на верхних уровнях МОДЕЛИ обмена) Все эти вопросы должны рассматриваться раздельно для сети нижнего уровня, со-

единяющей локальные МКСУ, и для сети верхнего уровня, в которую объект подключается.

Начнем с изучения аппаратных протоколов

Режимы и форматы обмена

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

По способу передачи информации интерфейсы подразделяются на параллельные и последовательные. В параллельном интерфейсе все биты передаваемого слова (обычно байта) выставляются и передаются по соответствующим параллельно идущим проводам одновременно. В PC традиционно используется параллельный интерфейс Centronics, реализуемый LPT-портами. В последовательном интерфейсе (пример – COM-порты) биты передаются друг за другом, обычно по одной линии. СОМ-порты PC обеспечивают последовательный интерфейс в соответствии со стандартом RS-232C.

С появлением шин USB и FireWire в качестве характеристики интерфейса стала фигурировать и топология соединения. Для интерфейсов RS-232C и Centronics практически всегда применялась двухточечная топология PC – устройство (или PC – PC). Более развитые протоколы, рассматриваемые ниже, соответствуют топологии общей шины. Интерфейсные «шины» USB и FireWire реализуют древовидную топологию, в которой внешние устройства могут быть как оконечными, так и промежуточными (разветвителями). Эта топология позволяет подключать множество устройств к одному порту USB или FireWire (хабовая топология).

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

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

34

приемника и передатчика. Очевидно, что при передаче 8 бит данных, одного контрольного и одного стоп-бита предельно допустимое рассогласование скоростей, при котором данные будут распознаны верно, не может превышать 5 %. С учетом фазовых искажений и дискретности работы внутреннего счетчика синхронизации реально допустимо меньшее отклонение частот. Чем меньше коэффициент деления опорной частоты внутреннего генератора (чем выше частота передачи), тем больше погрешность привязки стробов к середине битового интервала, и требования к согласованности частот становятся более строгими. Чем выше частота передачи, тем больше влияние искажений фронтов на фазу принимаемого сигнала. Взаимодействие этих факторов приводит к повышению требований к согласованности частот приемника и передатчика с ростом частоты обмена.

Формат асинхронной посылки позволяет выявлять возможные ошибки передачи:

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

Если во время, отведенное под стоп-бит, обнаружен уровень логического нуля, фиксируется ошибка стоп-бита.

Если применяется контроль четности, то после посылки бит данных передается контрольный бит. Этот бит дополняет количество единичных бит данных до четного или нечетного в зависимости от принятого соглашения. Прием байта с неверным значением контрольного бита приводит к фиксации ошибки.

Контроль формата позволяет обнаруживать обрыв линии: при этом принимаются логический нуль, который сначала трактуется как старт-бит, и нулевые биты данных, потом срабатывает контроль стоп-бита.

Для асинхронного режима принят ряд стандартных скоростей обмена: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19 200, 38 400, 57 600 и 115 200 бит/с. Иногда вместо единицы измерения «бит/с» используют «бод» (baud), но при рассмотрении двоичных передаваемых сигналов это некорректно. В бодах принято измерять частоту изменения состояния линии, а при недвоичном способе кодирования (широко применяемом в современных модемах) в канале связи скорости передачи бит (бит/с) и изменения сигнала (бод) могут отличаться в несколько раз.

Количество бит данных может составлять 5, 6, 7 или 8 (5- и 6-битные форматы распространены незначительно). Количество стоп-бит может быть 1, 1,5 или 2 («полтора бита» означает только длительность стопового интервала).

Асинхронный обмен в PC реализуется с помощью СОМ-порта с использованием протокола RS-232C – см. ниже.

Синхронный режим передачи предполагает постоянную активность канала связи. Посылка начинается с синхробайта, за которым сразу же следует поток информационных бит. Если у передатчика нет данных для передачи, он заполняет паузу непрерывной посылкой байтов синхронизации. Очевидно, что при передаче больших массивов данных накладные расходы на синхронизацию в данном режиме будут ниже, чем в асинхронном. Однако в синхронном режиме необходима внешняя синхронизация приемника с передатчиком, поскольку даже малое отклонение частот приведет к искажению принимаемых данных. Внешняя синхронизация возможна либо с помощью отдельной линии для передачи сигнала синхронизации, либо с использованием самосинхронизирующего кодирования данных, при котором на стороне приемника из принятого сигнала могут быть выделены импульсы синхронизации. В любом случае синхронный режим требует дорогих линий связи или оконечного оборудования. Для PC существуют специальные платы – адаптеры SDLC, поддерживающие синхронный режим обмена. Они используются в основном для связи с большими машинами (mainframes) IBM и мало распространены. Из синхронных адаптеров в настоящее время применяются адаптеры интерфейса V.35.

Очевидно, что при одинаковом быстродействии приёмо-передающих цепей и одинаковой пропускной способности соединительных линий по скорости передачи параллельный

35

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

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

Допустимое удаление соединяемых устройств ограничивается как частотными свой-

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

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

ление

 

L

,

где L и C – индуктивность и емкость единицы длины канала связи.

C

 

 

 

 

 

 

 

 

Для поддержания на линии потенциала лог. 1

согласующее сопротив-

 

 

 

выполняют в виде делителя с Rэкв=R1||R2 (по переменному току), причем потенциал в

средней точке составляет 2/3 Uпит (рис. 3.4).

Целесообразно при проектировании интерфейсов использовать гальваническую развязку. «Схемные земли» устройств, соединяемых интерфейсом с СОМили LPT-портом PC, оказываются связанными со схемной землей компьютера (а через интерфейсный кабель и между собой). Если между ними до подключения интерфейса была разность потенциалов, то по общему проводу интерфейса потечет уравнивающий ток. Падение напряжения на общем проводе, вызванное протеканием этого тока, приводит к смещению уровней сигналов, а протекание переменного тока приводит к сложению полезного сигнала с переменной составляющей помехи. К этим помехам особенно чувствительны интерфейсы, использующие сигналы с уровнями ТТЛ (ТТЛ-интерфейсы). В интерфейсах с повышенными уровнями сигналов смещение и помеху в пределах 2 В поглотит зона нечувствительности. В случае обрыва общего провода или плохого контакта, а гораздо чаще – при подключении и отключении интерфейсов без выключения питания устройств разность потенциалов прикладывается к сигнальным цепям, а протекание уравнивающих токов через них часто приводит к выходу из строя элементов интерфейсов.

36

+5 В

 

R1

 

Подклю-

На вход

чение

прием-

линии

ника

R2

 

 

 

Рис. 3.4

В целом, наличие в составе 8-разрядного МК модуля контроллера последовательного ввода/ вывода стало настолько обычным явлением, что лишь самые простые, маловыводные МК в корпусах DIP16 и DIP20 не имеют портов последовательного обмена. При анализе структуры более сложных 8-разрядных МК отчетливо прослеживается тенденция наличия в их составе двух контроллеров последовательного обмена, а в более новых моделях – даже трех. Задачи, которые решаются средствами модуля контроллера последовательного вво-

да/вывода, могут быть условно разделены на три группы (табл. 3.1):

Таблица 3.1

 

 

 

 

 

 

Назначение

 

 

 

Протоколы

 

1)

 

 

связь встраиваемой МП-системы с системой управления верхнего уров-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

RS-232C и

 

 

 

ня

: промышленным компьютером, программируемым контроллером, офис-

 

 

 

 

 

 

 

 

 

 

RS-485

 

 

 

 

 

 

ным компьютером; наиболее часто для этих целей использовались интер-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

фейсы RS-232C и RS-485; в настоящее время все более широкую популяр-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

USB

 

 

 

 

 

 

 

 

 

ность приобретает интерфейс USB;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2)

интерфейс связи с локальной сетью в мультимикропроцессорных систе-

 

 

 

 

 

 

 

 

 

I2C,

 

 

 

 

 

 

 

 

мах;

в системах с числом МК до пяти обычно используют сети на основе ин-

 

 

 

RS-232C,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

RS-485;

 

 

терфейсов I2C, RS-232C, RS-485 с собственными сетевыми протоколами

 

 

 

верхнего уровня; в более сложных системах все более популярным стано-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вится протокол CAN;

 

 

 

 

 

 

CAN,

 

 

 

 

 

 

 

 

 

(LIN)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3)

связь с внешними по отношению к МК периферийными ИС встраивае-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

мой МПСУ, а также с датчиками

физических величин с последовательным

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SPI, I2C

 

 

 

 

 

выходом; для этих целей используются интерфейсы SPI, I2C, а также нестан-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

дартные протоколы обмена.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

С точки зрения инженера-схемотехника, упомянутые типы интерфейсов последовательной связи отличаются: режимом передачи данных (синхронный или асинхронный), форматом кадра (число бит в посылке при передаче байта полезной информации) и временными диаграммами сигналов на линиях (уровни сигналов и положение фронтов при переключениях). Число линий, по которым происходит передача в последовательном коде, обычно равно двум (I2C, RS-232C, RS-485, CAN) или трем (SPI, некоторые нестандартные синхронные протоколы). Последнее позволяет спроектировать модули контроллеров последовательного обмена таким образом, чтобы с их помощью на аппаратном уровне можно было бы реализовать несколько типов последовательных интерфейсов на одном модуле. При этом режим передачи (синхронный или асинхронный) и формат кадра поддерживаются на уровне логических сигналов, а реальные физические уровни сигналов, характерные для каждого типа интерфейса, получают с помощью специальных ИС, которые носят название приемопередатчиков, конверторов, трансиверов.

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

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

37

0.Наименование (аббревиатура и расшифровка).

1.Назначение – локальная, мезонинная.

2.Способ передачи (для локальных) – последовательный

3.Количество фаз данных в цикле обмена:

одна

множество (пакет).

4. Тактовая частота (частота синхронизации): средняя – до 266 МГц; или низкая – не более 33 МГц.

5.Синхронизация: есть – нет

6.Адресная часть цикла обмена

 

Адресная часть

нет

есть

Разрядность, время обмена

сигнал сопро-

 

 

!

прост-

мультиплек-

 

вождения

 

 

ранство

сирование

 

стек

 

сигнал

раздель-

 

 

 

квитирования

единое

с данными

?

 

ное

 

 

 

 

 

 

 

 

обращение

 

память

 

регистры

 

 

по содержанию

 

 

 

 

 

 

 

 

7. Организация обмена данными

Данные

Разрядность, время обмена

сигнал сопро-

сигнал

вождения

квитирования

разряд-

мультиплек-

контроль

ность

сирование

ошибок

единая

перемен-

задержка

с

 

?

 

ная

адресом

 

 

 

 

 

 

нужен указатель

 

 

 

 

 

 

 

 

 

возможна

невоз-

 

 

нет

есть

 

 

можна

 

 

 

 

 

 

 

 

 

 

 

 

 

 

различные методы

 

38

8. Организация передачи команд

Команды

Разрядность, время обмена

сигнал сопро-

сигнал

кодиро-

мультиплек-

вождения

квитирования

вание

сирование

 

нет

есть

с чем ?

Задачи обмена сигналами прерывания и прямого доступа к памяти для рассматриваемых ниже шин не сто'ят.

3.2. Интерфейсы группы RS

Начнем со стандартов низшего, т.е. физического уровня и рассмотрим группу RS.

RS в сокращениях типа RS-232, RS-485, RS-422 означает Recommended Standard (рекомен-

дованный стандарт). Ключевое слово здесь – "рекомендованный", означающее, что эти стандарты никогда никем не были приняты (в противоположность таким международным стандартам, как IEEE-1284 или IEEE-1394), они были просто "рекомендованы". Тем не менее, стандарты группы RS очень распространены, поддерживаются Ассоциацией электронной промышленности и Ассоциацией телекоммуникационной промышленности США (EIA/TIA) и, соответственно, большинством производителей компьютерного оборудования.

Существует ряд родственных стандартов: RS-232C, RS-423A, RS-422A и RS-485. На рис. 3.5 приведены схемы соединения приемников и передатчиков, а также показаны ограничения на длину линии (L) и максимальную скорость передачи данных (V). На рисунке не показано наличие каналов встречного обмена для RS-232C, RS-423A, RS-422A.

Добавьте к нижней паре объектов связи и сигналы для полудуплексного обмена по сети

Рис. 3.5

Наибольшее распространение в PC получил простейший из перечисленных – стандарт RS-232C, реализуемый СОМ-портами. Интерфейсы RS-422 и RS-423 являются развитием RS-232 для высокоскоростной передачи данных (до 10 Мбит/с) на более далекие расстояния (до 1200 м): RS-423 для несимметричных цепей и RS-422 (позже RS-485) для симметричных цепей. Несимметричные линии интерфейсов RS-232C и RS-423A имеют самую низкую защищенность от синфазной помехи, хотя дифференциальный вход приемника RS423A несколько смягчает ситуацию. Лучшие параметры имеет двухточечный интерфейс RS-422A и его магистральный (шинный) аналог RS-485, работающие на симметричных ли-

39

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]