Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мпс с 524 по 631.doc
Скачиваний:
6
Добавлен:
16.04.2019
Размер:
2.54 Mб
Скачать

Поддержка протоколов в коммуникационных контроллерах

редач был успешно применен, размер первых двух буферов данных должен быть не менее 36 байт для канала SCC1 и 20 байтов - для других SCC-каналов в контрол­ лере МРС860.

Сброс сигнала CTS = 1 при передаче может служить признаком конца передачи теку­щего кадра. Но при передаче может сложиться ситуация, когда в буфере FIFO находятся данные от нескольких HDLC-кадров и тогда анализ состояния CTS-сигнала может быть проведен некорректно. Для исключения возможных ошибок в состав регистра режима СРМ введен бит MFF. Если этот бит равен нулю, то в буфере FIFO могут быть данные только одного кадра, и появление сигнала cts = 1 свидетельствует о завершении пере­дачи текущего кадра. Если бит MFF = 1, то в буфере могут находиться данные от не­скольких кадров, и для обнаружения конца передачи кадра производить анализ сигнала CTS бесполезно. Такой режим работы может быть удобен для случая, когда передаются небольшие кадры back-to-back (кадры, требующие немедленного возврата), или пользо­ватель жестко фиксировал число флагов, передаваемых между кадрами. В этих случаях конец передачи кадра может быть проанализирован или вычислен на основе имеющей­ся информации.

Контроллер HDLC bus. Контроллер HDLC bus - это расширение HDLC-протокола, позволяющее применять его в сетях с конфигураций point-to-point и point-to-multipoint. Протокол HDLC bus используется на канальном уровне управления как вариант HDLC-протокола, часто называемый LAPD, для работы в point-to-multipoint конфигурациях, так как контроллер HDLC может работать только в конфигурациях point-to-point. На физичес­ком уровне управления протокол позволяет восьми терминалам получить доступ к S/T bus для передачи кадров. Контроль доступа к каналу связи производится через 6-канал.

Контроллер HDLC bus позволяет создавать сеть небольшого размера, при этом выхо­ды TxD станции должны быть сконфигурированы как выходы open-drain, чтобы было воз­можно объединять их в общую шину. Контроллер HDLC bus может работать с внешними контактами или в режиме NMSI, или в режиме TDM bus.

Устройства S/T-интерфейса проверяют незанятость канала передачи, просматривая состояние «эхо»-бита на линии. В «эхо»-бите отражаются все биты, которые недавно передавались по D-каналу. В зависимости от класса терминала устройства могут ожи­дать получение от 7 до 10 единичных битов на «эхо»-бите канала, перед тем как начать передачу LAPD-кадра. Наличие 7-10 последовательных «1» в канале свидетельствует о том, что в канале нет передачи данных и идет передача IDLE-последовательностей. Кон­троллер HDLC bus поддерживает формат кадра HDLC, а значит максимальное число последовательных «1» в кадре не может превышать шести, так как после каждых пяти последовательных «1» в кадре происходит вставка «О» (операция bit-stuffing).

После начала передачи станция постоянно контролирует, что она передала, читая «эхо»-бит. В контроллере HDLC bus механизм «эхо»-бита реализован через внешние контакты. Вывод TxD соединен с контактом cts • Контроллер передает данные на кон­такт TxD и контролирует их с контакта CTS . Передача продолжается, пока бит, который станция передала, совпадает с битом, который станция прочитала («эхо»-бит). Если эти биты не совпадают, возникает состояние коллизии между терминалами. При этом стан­ции, которые передавали нулевой бит, прекращают передачу, а станции, которые пере­давали единичный бит, продолжают передачу. Для того чтобы уменьшить вероятность возникновения коллизии и захвата шины одной станцией, после завершения передачи станции понижают свой приоритет, чтобы разрешить другим станциям доступ к шине.

Основные отличия протокола HDLC bus:

• протокол HDLC bus поддерживает все другие протоколы, которые базируются на HDLC-кадре; таким образом, в сети могут одновременно работать несколько станций, кото­рые используют различные варианты HDLC-протокола;

619

КОММУНИКАЦИОННЫЕ МИКРОКОНТРОЛЛЕРЫ И СИСТЕМЫ НА ИХ ОСНОВЕ

  • станции HDLC bus могут объединяться в сеть с HDLC-станциями для совместной работы;

  • перед началом передачи контроллер HDLC bus ожидает получение или 8, или 10 еди-

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

  • HDLC bus позволяет строить более короткие по размерам сети; это ограничение связа­ но с типом выхода контакта TxD, так как выход open-drain требует дополнительного со­ противления, подключенного к источнику питания, и ориентирован на небольшие сети;

  • карта памяти параметров контроллера HDLC bus полностью совпадает с картой памя­ ти обычного HDLC-контроллера; таким образом, основные режимы функционирова­ ния контроллеров HDLC и HDLC bus совпадают.

На рис. 5.114 приведена схема подключения HDLC bus-контроллеров в сети с конфи­гурацией multimaster. При этой конфигурации все станции могут передавать/принимать данные от любой станции и все передачи идут в режиме полудуплекса.

QUICC

Power QUICC

QUICC

Master

Master

Master

RXD TXD CTS

RXD TXD CTS

RXD TXD CTS

Т +u

и т R

i

k Ч

i r

k

t

k 1

A

r

k

t

k 1

1 r

k

Рис. 5.114. Multimaster-конфигурация

В режиме одиночного мастера (single-master) master-станция может передавать дан­ные любой slave-станции без коллизии, так как все управление передачей возложено на master-станцию. Slave-станции могут взаимодействовать только через master-станцию. Если slave-станция желает передать данные другой slave-станции, то она пересылает их master-станции, которая принимает их в свой буфер, а затем передает их другой slave-станции. Достоинство этой конфигурации заключается в том, что может быть реализова­на полнодуплексная передача. Конфигурация single master (рис. 5.115) наиболее пред­почтительна для сетей с конфигурацией соединений point-to-multipoint.

QUICC

Master

Power QUICC

Slave

QUICC

Slave

RXD TXD CTS

RXD TXD CTS

RXD TXD CTS

620

Рис. 5.115. Конфигурация Single-master