Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 348

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 342 343 344 345 346 347 < 348 > 349 350 351 352 353 354 .. 528 >> Следующая

протокола. Если пакет, содержащий данные сетевого уровня управления,
невозможно передать внутри одного кадра данных HDLC-протокола, то длинные
кадры при передаче разбиваются на части и каждая часть пакета нумеруется
по модулю 8 или 128. Номер пакета передается в поле контроля.
Для контроля за правильностью передаваемой информации используются или
16-разрядные, или 32-разрядные циклические коды. Результат контроля
записывается в 16-битное поле контрольной суммы CRC. При передаче байта
данных первым передается младший значащий бит LSB, но при передаче байта
CRC поля первым передается старший значащий бит MSB. Такой порядок
передачи позволяет начинать проверку контрольной суммы поступающей
информации сразу же после приема первого бита данных.
Настройка SCC-контроллера на работу с HDLC-протоколом выполняется в
регистре GSMR при программировании битов MODE. Настройка режимов работы
HDLC-контрол-лера выполняется в регистре PSMR (рис. 5.113). HDLC-
контроллер может работать с любым ISDN-интерфейсом (IDL, GCI или РСМ) и
выдавать информацию в В-канал или в D-канал, или может работать с
внешними контактами соответствующего SCC-контроллера при работе в NMSI-
режиме. Обычно из-за большого количества хорошо продуманных управляющих
функций HDLC-протокол используют для управления передачей
коммуникационного контроллера и передач данных по D-каналу ISDN-
интерфейса.
Для работы в кольцевых структурах в контроллере МРС860 реализован
дополнительный режим работы контроллера HDLC bus. Биты BUS в регистре
конфигурации PSMR (рис. 5.113) определяют режим работы HDLC-контроллера
(0 - нормальный HDLC-koh-троллер, 1 - контроллер HDLC bus).
Для управления передачей HDLC-контроллера, работающего в режиме HDLC bus,
в регистре режима введен бит BRM. Если BRM = 0, то сигнал RTS работает
нормально, он выставляется rts= 0 при начале передачи первого бита и
сбрасывается rts= 1 по окончании передачи, или если обнаружена коллизия
во время передачи. Режим с установленным битом BRM = 1 используется при
передаче в протяженных сетях. В этом режиме вначале выставляются данные,
а затем, с задержкой на 1 бит, вырабатывается
0 12 3 4 5 6 7 8 9 10 11 12 13 14 15
NOF CRC RTE - FSE DTR BUS BRM MFF -
Рис. 5.113. Формат регистра режима PSMR HDLC-контроллера в МРС860
613
КОММУНИКАЦИОННЫЕ МИКРОКОНТРОЛЛЕРЫ И СИСТЕМЫ НА ИХ ОСНОВЕ
активный сигнал о начале передачи rts = 0, который используется для
резервирования канала передачи и буферов в контроллере приемнике. Такой
способ обмена часто применяется в сетях, где первый бит кадра данных
служит для обнаружения коллизий, и реальные данные начинаются только со
второго бита.
HDLC-контроллер имеет полностью независимую приемную и передающую части.
Только если контроллер работает в мультиплексируемом режиме, его приемник
и передатчик должны иметь одинаковую тактовую частоту, поступающую от
внешнего источника. При работе в NMSI-режиме приемник и передатчик могут
иметь различные тактовые частоты, которые могут поступать или от
внутреннего генератора BRG, или от внешнего источника. HDLC-контроллер
поддерживает и синхронный, и асинхронный режимы работы SCC-каналов.
Приемник и передатчик каждого HDLC-контроллера имеют полностью
независимые таблицы буферных дескрипторов BD для работы с буферами
данных. Контроллер поддерживает мультибуферную структуру, когда длинный
кадр данных может быть расположен в нескольких буферах данных. Для
указания первого буфера кадра в слове состояния BD используется бит F = 1
(First), а для указания последнего буфера кадра - бит L = 1 (Last). При
работе с мультибуферной структурой пользователь может подготавливать
следующие буферы данных постепенно, по мере обработки уже подготовленных
буферов. Только в этом случае возможно возникновение ошибки переполнения
(overrun) при приеме данных и ошибки незаполнения (underrun) при
передаче, если центральный процессор не успеет вовремя подготовить новые
буферы данных к тому моменту, когда будет завершена обработка старых.
Пользователь может управлять работой передатчика HDLC-контроллера с
помощью команд STOP TRANSMIT, GRACEFUL STOP TRANSMIT, RESTART TRANSMIT,
INIT TX PARAMETERS и работой приемника с помощью команд ENTER HUNT MODE,
INIT RX PARAMETERS.
В СРМ добавлена возможность выключить работу приемника при передаче
данных передатчиком этого же канала контроллера. Данный режим выбирается
при программировании значения бита DRT := 1. При этом приемник будет
находиться в выключенном состоянии, пока выставлен сигнал передачи RTS=
0. Такой режим работы полезен, когда линии данных приемника и передатчика
объединены в одну шину (режим multidrop), и пользователь не желает
принимать данные, которые он сам передает в текущий момент времени.
Распределение памяти параметров в микроконтроллере МРС860 приведено в
табл. 5.77.
Таблица 5.77
Память параметров HDLC-протокола в микроконтроллере МРС860
Адрес Название Размер, бит Описание
SCC base+30 - 32 Зарезервировано
Предыдущая << 1 .. 342 343 344 345 346 347 < 348 > 349 350 351 352 353 354 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed