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

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

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 350 351 352 353 354 355 < 356 > 357 358 359 360 361 362 .. 528 >> Следующая

SCC base+74 PADDR_M 16 Физический адрес станции
SCC base+76 PADDR_L 16 LSB
SCC base+78 P_PER 16 Индекс активности после коллизии
SCC base+7A RFBD_ptr 16 Указатель первого BD приема
SCC base+7C TFBDptr 16 Указатель первого BD передачи
SCC base+7E TLBD_ptr 16 Указатель последнего BD передачи
SCC base+80 TBUFI.dataO 32 Save Area 0. Временное хранение текущего
кадра
SCC base+84 TBUF1.data1 32 Save Area 1. Временное хранение текущего
кадра
SCC base+88 TBUF1 .rbaO 32 Временное хранение текущего кадра
SCC base+8C TBUFI.crcO 32 Временное хранение текущего кадра
SCC base+90 TBUF1 .bent 16 Временное хранение текущего кадра
SCC base+92 TXLEN 16 Счетчик текущей длины передаваемого кадра
SCC base+94 IADDR1 16 Фильтр индивидуальных адресов
625
КОММУНИКАЦИОННЫЕ МИКРОКОНТРОЛЛЕРЫ И СИСТЕМЫ НА ИХ ОСНОВЕ
Продолжение табл. 5.78
Адрес Название Размер, бит Описание
SCC base+96 IADDR2 16 Фильтр индивидуальных адресов
SCC base+98 IADDR3 16 Фильтр индивидуальных адресов
SCC base+9A IADDR4 16 Фильтр индивидуальных адресов
SCC base+9C BOFF_CNT 16 Счетчик кадров backoff
SCC base+9E TADDR_L 16 LSB
SCC base+AO TADDR_M 16 Временное значение адреса при настройке
SCC base+A2 TADDR H 16 MSB
Примечание. Все переменные в таЬлице, кроме ячеек Ktl_cnt, MAXD, DMA cnt,
MAX b-TBUFO.dataO, TBUFO.datal, TBUFO.rbaO, TBUFO.crc, TBUFO.bcnt, RBFD
ptr, TBFD ptr, TBLD ptr TBUFI.dataO, TBUF1.data1, TBUFI.rbaO, TBUFI.crc,
TBUFI.bcnt, TXjen и BOFF_CNT, инициализируются пользователем до начала
работы с Ethernet-контроллером.
Поле данных может иметь размер от 46 до 1500 байт. В ячейке MINFLR
пользователь должен задать минимальный размер кадра (>64 байт), а в
ячейке MFLR - максимальный размер кадра (<1518 байт). Если длина кадра
меньше установленного минимума, то при передаче поле данных кадра будет
дополнено специальными символами-заполнителями, формат которых
указывается в ячейке PADS памяти параметров, но только если в слове
состояния буферного дескриптора установлен бит PAD = 1. Если же бит PAD =
0, то символы PAD не добавляются к короткому кадру.
Для контроля правильности передачи данных в состав кадра данных введено
поле контрольной суммы, в которое записывается 32-разрядная контрольная
сумма кадра данных. Для настройки режима работы с 32-битной CCITT-CRC
контрольной суммой с образующим полиномом
Хл32+Хл26+Хл23+Хл22+Хл16+Хл12+Х*11+ХЛ10+Хл8+Хл7+Хл5+ +Хл4+Хл2+Хл1+1 в
биты CRC регистра режима РБМРтребуется записать код 10. В ячейке C_MASK
пользователь перед началом работы с Ethernet-контроллером должен задать
константу образующего полинома 0xDEBB20E3, а в ячейке C_PRES - начальное
значение счетчика контрольной суммы OxFFFFFFFF.
Передача данных. После включения передатчика канала в работу Ethernet-
контрол-лер начинает периодически раз в 128 тактов опрашивать готовность
первого буфера в таблице буферов для передачи ТxBD. Если пользователь
подготовил данные для передачи и не желает ждать 128 тактов, то он может
установить бит TOD := 1 в регистре TODR, чтобы вызвать принудительное
начало опроса буферов для передачи данных.
Если данные для передачи подготовлены, то контроллер начинает загружать
кадр по SDMA-каналам из буфера данных в буфер FIFO, выставляет сигнал
TENA к микросхеме EEST и начинает передавать преамбулу, начальный
ограничитель и далее сам кадр данных. При передаче Ethernet-контроллер
передает LSB-бит первым. Перед началом передачи контроллер проверяет
наличие сигнала несущей частоты в канале; после того как в канале будет
обнаружен пассивный сигнал несущей частоты, контроллер проверяет, чтобы
этот сигнал был пассивным в течение 6,4 мкс. Далее передача будет начата
после ожидания 3,2 мкс. Таким образом, сигнал несущей должен быть
пассивным в течение 9,6 мкс, перед началом передачи кадра. Поэтому
минимальный межкадровый интервал (interpacket gap) для передачи кадров
back-to-back установлен равным 9,6 мкс, и при возникновении коллизии
повторная передача начинается через 9,6 мкс после того, как сигнал
несущей в канале станет пассивным, при условии что он оставался пассивным
в течение 6,4 мкс.
После окончания передачи кадра данных, когда в слове состояния последнего
буфера кадра обнаружен бит L = 1 (Last) и установлен бит ТС = 1,
контроллер начинает пере-
626
ПОДДЕРЖКА ПРОТОКОЛОВ В КОММУНИКАЦИОННЫХ КОНТРОЛЛЕРАХ
давать контрольную сумму кадра и по окончании передачи сбрасывает сигнал
TENA в пассивное состояние. Сброс этого сигнала заставляет микросхему
EEST начать передачу специального некорректного символа, закодированного
манчестерским кодом, уведомляющего о конце Ethernet-кадра.
Далее контроллер заполняет биты статуса переданного кадра в слове
состояния последнего буфера и сбрасывает бит готовности буфера к передаче
(бит R := 0). Если же текущий буфер кадра передан, но бит L = 0, то для
данного буфера только сбрасывается бит R := 0, и контроллер переходит к
обработке следующего буфера в таблице TxBD. Если в слове состояния
Предыдущая << 1 .. 350 351 352 353 354 355 < 356 > 357 358 359 360 361 362 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

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

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed