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

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

временными каналами (64 Кбит/с), а Т1 - с 24 каналами (64 Кбит/с), а ОМС-контроллер может поддерживать на каждом SCC-канале до 64 логических каналов, то в контролле­рах возможно организовать обработку сразу двух отдельных Е1/Т1-линий, каждая на сво­ем SCC-контроллере. Логический канал может быть независимо запрограммирован на работу или с HDLC-кадрами, или в режиме прозрачной (transparent) передачи. Это дает возможность разделять TDM-потоки между несколькими SCC-контроллерами. Бла­годаря RISC-контроллеру SCC-каналы работают в нормальном режиме, не замечая и не принимая участие в реализации некоторых функций QMC-протокола. SCC только выпол­няют последовательно-параллельное преобразование данных канала и реализуют алго­ритмы работы выбранных протоколов, а СРМ-модуль, используя встроенный микрокод и дополнительную аппаратуру, позволяет передавать кадры всех протоколов по любому из 64 каналов. Любой SCC-канал может работать в ОМС-режиме независимо от режимов работы других SCC-контроллеров. Так как SCC1-контроллер имеет больший размер бу­феров FIFO по сравнению с другими SCC-каналами, то он и рекомендован для работы с QMC-протоколом. Один ТОМ может быть настроен для работы с несколькими SCC-каналами, которые работают с QMC-протоколом, при этом каждый SCC-контроллер ра­ботает со своим временным слотом. Если два TDM-канала подключены к одному SCC-контроллеру, то возникают ограничения, связанные с использованием одинаковых такто­вых и стробирующих сигналов, и при программировании памяти маршрутизации следует контролировать коллизии, когда в один и тот же момент времени придется работать с несколькими каналами одновременно или при приеме, или при передаче данных. Особенности работы MC860MH/DH.

  • Поддерживается до 64 независимых логических каналов для каждого SCC-контроллера.

  • Каждый логический канал может работать с любым из 64 временных слотов TDM- канала. А так как каждый контроллер из семейств МРС860 имеет два полностью неза­ висимых TDM-канала, то это делает их особо привлекательными при построении мо­ стовых схем.

  • При объединении RX- и ТХ-частей памяти маршрутизации каждый логический канал может работать с любым из 128 временных слотов TDM-канала.

  • Возможна одновременная поддержка двух 32-канальных Е1-соединений при систем­ ной частоте в 50 МГц.

  • При работе с буферами памяти используется до 128 DMA-каналов.

  • Полностью независимое распределение временных каналов для приемника и пере­ датчика.

  • Поддерживается или HDLC или Transparent-протокол для каждого логического канала.

  • Прерывание может быть назначено после обработки буфера заданного размера или при переполнении буфера.

  • Каждый логический канал может работать в режиме внутренней петли.

  • Число обрабатываемых временных каналов зависит только от числа ячеек в памяти маршрутизации. Пользователь может сам программироватьв памяти маршрутизации, какие временные каналы и какого размера будут использоваться в TDM-кадре.

  • Начало кадра регистрируется при приходе стробирующего сигнала. Дополнительные внешние сигналы - стробы могут выставляться для работы с сетевыми устройствами, которые не поддерживают работу с TDM-каналами, например для обмена данными с контроллером МС68302.

Особенности последовательного интерфейса.

  • Поддерживает работу с 24-канальным T1/DS1 и 32-канальным Е1/СЕРТ РСМ- интерфейсами, basic ISDN и primary ISDN.

  • Поддерживается работа с 2048,1544, 1536 Кбит/с РСМ-интерфейсами.

565

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

  • Любой временной слот может быть разделен на логические каналы.

  • Полностью независимые приемная и передающая части.

  • Несколько, не обязательно соседних, временных слотов могут быть объединены в ло­ гический канал.

  • Поддерживает НО, Н11, Н12 ISDN-каналы.

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

Режим локальной петли (при программировании ячейки памяти маршрутизации бит LOOP := 1) может быть включен для любого как временного, так и логического канала. Требуется только, чтобы частоты тактовых сигналов приемника и передатчика были рав­ны и использовался общий импульс строба начала кадра. При этом данные, принятые из N логического канала, будут без промежуточной буферизации выдаваться в N логичес­кий канал на выходе передатчика.

Режим автоматического эха для QMC-протокола можно включить только для всего TDM-кадра. Режим автоматического эха для отдельного временного канала можно реа­лизовать только программным путем.

ОМС-маршрутизация. QMC-протокол обеспечивает реализацию обработки несколь­ких логических каналов на одном SCC-контроллере. Выбор и программирование работы SCC-контроллера с некоторым временным каналом TDM-кадра осуществляется обыч­ным способом, как описано ранее. Индивидуальное разделение временного канала по логическим каналам производится внутри QMC-контроллера с помощью специальных внутренних таблиц маршрутизации.

MPC860EN

В1 SCC2-4

В2 ЗССЗ^*

D SCC4-4

SCC1

MC68160

— Ethernet

IDL

Basic ISDN

Time Slot Assigner

SfT Transceiver MC 145574

2B+D

UART или

SMC2

RS-232

Transparent

На рис. 5.89, 5.90 показаны схемы реализации Ethernet-BRI ISDN моста на базе MPC860EN (не поддерживает QMC-протокол) и на базе МРС860МН (поддерживает QMC-протокол). BRI ISDN-протокол требует обработки трех каналов (2B+D). В первом случае для обработки трех каналов пришлось задействовать три SCC-контроллера (SCC2, SCC3, SCC4), объединив их в мультиплексируемом режиме работы, а во втором - только один SCC2. Освободившиеся SCC-контроллеры можно использовать для реализации допол­нительных линий связи или просто выключить, чтобы снизить потребление энергии и повысить производительность системы. Дополнительно контроллер SCC1 используется для подключения к сети Ethernet, a SMC-контроллер, работающий с протоколом UART, -для передачи данных на терминал компьютера контроля. Оба контроллера - и SCC1 и SMC2 настроены на NMSI-режим работы. Порт SPI используется для настройки режимов работы микросхемы ISDN-передат­чика. Если во втором варианте схе­мы заменить контроллер на МРС860МН и S/T-передатчик МС145574 - на микросхему DS2180A, то получим схему моста Ethemet-PRI ISDN, обслуживающую 32-канальный ISDN (ЗОВ +1D) на од­ном 5СС2-контроллере.

Рис. 5.89. Пример реализации моста Ethernet-BRI ISDN на основе контрол­лера MPC860EN

566

ПОДДЕРЖКА ПРОТОКОЛОВ В КОММУНИКАЦИОННЫХ КОНТРОЛЛЕРАХ

Ethernet

Basic ISDN

UART или Transparent

Рис. 5.90. Пример реализации моста Ethemet-BRI ISDN на основе контроллера МРС860МН

Обратите внимание, что если один временной канал TDM-кадра занят QMC SCC-контроллером для работы с логическими каналами, то остальные временные каналы без ограничений могут быть использованы для нормальной работы другими SCC- и SMC-контроллерами.

При работе с QMC-протоколом могут регистрироваться следующие типы ошибок.

• Ошибка в битах данных обычно регистрируется контроллером, который работает с кон-

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

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

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

Организация памяти ОМС-протокола. SCC-контроллер, для которого выбран QMC-протокол, в целом функционирует аналогично SCC-контроллерам, которые работают с обычными коммуникационными протоколами. При обмене данными используется струк­тура буферов данных и буферных дескрипторов, память параметров служит для реали­зации контрольных функций в соответствии с выбранным протоколом. Карта распреде­ления внутренней двухпортовой памяти в контроллере МРС860МН та же, что и в базовой модификации контроллера.

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

567

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

работать SCC-контроллер. Но так как для хранения параметров логических каналов не­обходимо OxAF байт памяти, то другие контроллеры, параметры которых располагались на той же странице памяти параметров, временно не будут доступны. Например, в МРС860МН при работе SCC1-контроллера с QMC-протоколом PC-контроллер не будет доступен.

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

Большую часть памяти параметров (табл. 5.59) занимают ISA-таблицы для приемника и для передатчика. В нормальном режиме работы используются две таблицы - TSATRx и TSATTx по 32 ячейки каждая, которые располагаются в памяти по адресам от SCC base+0x20 и до SCC base+OxAO, и переменные Rx_S_PRT и Tx_S_PTR указывают на расположение этих таблиц в памяти параметров (более точно, они задают смещение начала таблицы относительно адреса DPRBASE). Но при поддержке 64 логических каналов используется одна объединенная таблица из 64 ячеек, которая содержит общие параметры и приемника и передатчика и которая располагается в памяти по тем же адресам. В этом варианте приемник и передатчик работают с одинаковым закреплением между временными кана­лами и логическими каналами. Если же такой вариант распределения памяти не может быть применен, так как приемник и передатчик должны иметь разные параметры настро­ек, тогда для хранения общих Rx- и Тх-параметров может быть использована память пара­метров других SCC-каналов, и переменные Rx_S_PRT и Tx_S_PTR будут указывать на расположение частей этой таблицы в других областях памяти параметров.

Переменная Tx_S_PTR задает адрес начала таблицы TSATTx. В нормальном режиме работы с двумя TSA-таблицами значение TX_S_PTR = SCCbase+ОхбО, но если используется объединенная таблица для приема и передачи, то значение TX_S_PTR = SCCbase+Ox20. Эта таблица может быть размещена только внутри области общих параметров SCC.

Переменная Rx_S_PTR задает адрес начала таблицы TSATRx. В нормальном режи­ме работы значение RX_S_PTR=SCCbase+Ox20. Эта таблица может быть размещена только внутри области общих параметров SCC-канала.

Переменная MCBASE задает адрес начала таблицы буферных дескрипторов во внеш­ней памяти, а переменные RBASE и TBASE из канал-ориентированной части памяти параметров определяют 16-битный сдвиг (offset) буфера дескриптора конкретного логи­ческого канала относительно адреса начала таблицы дескрипторов. Каждый логический канал имеет свои ячейки RBASE и TBASE в своей памяти параметров. Например, адрес дескриптора приема пятого логического канала будет равен MCBASE+RBASE_5.

Таблица буферов дескрипторов QMC-протокола располагается внутри 64-Кбайтной области внешней памяти. Размер таблицы определяется числом обрабатываемых логи­ческих каналов. Каждый SCC-контроллер имеет максимум 64 К/4 = 16384 буферов деск­рипторов. Каждый дескриптор имеет стандартный 4-байтный формат, как и при работе с другими коммуникационными протоколами. Если при работе используются 32 логичес­ких канала, то каждый канал имеет по 16384/(32х2) = 256 буферов для приема и 256 буферов для передачи. Для каждого логического канала пользователь может программ­но задавать стартовый адрес таблицы дескрипторов и ее длину. Формат буферных дес­крипторов аналогичен формату дескрипторов для других коммуникационных протоко­лов. Каждый буферный дескриптор имеет 32-битный адрес, который указывает располо­жение во внешней памяти буфера данных, связанного с этим дескриптором. Рекоменду­ется буферные дескрипторы других не QMC-протоколов располагать во внутренней па­мяти для уменьшения загрузки внешней шины.

568