- •Коммуникационные микроконтроллеры и системы на их основе
- •Коммуникационные микроконтроллеры и системы на их основе
- •Организация коммуникационных процессорных модулей в кмк
- •Коммуникационные микроконтроллеры и системы на их основе
- •Коэффициент внутреннего увеличения частоты
- •Организация коммуникационных процессорных модулей в кмк
- •Коммуникационные микроконтроллеры и системы на их основе
- •Режимы использования контактов
- •Организация коммуникационных процессорных модулей в кмк
- •Коммуникационные микроконтроллеры и системы на их основе
- •Типы пакетов подтверждений
- •Организация коммуникационных процессорных модулей в кмк
- •Коммуникационные микроконтроллеры и системы на их основе
- •Организация коммуникационных процессорных модулей в кмк
- •Коммуникационные микроконтроллеры и системы на их основе
- •Организация коммуникационных процессорных модулей в кмк
- •Память основных параметров usb-контроллера
- •Поддержка протоколов в коммуникационных контроллерах
- •5.3. Поддержка протоколов в коммуникационных контроллерах
- •Выбор источника тактирования канала
- •Режимы работы tdm-каналов
- •Режимы работы блока tsa
- •Характеристики временных каналов
- •Назначение сигналов idl-интерфейса
- •Коммуникационные микроконтроллеры и системы на их основе
- •Память маршрутизации приемника
- •Назначение сигналов gci-интерфейса
- •Коммуникационные микроконтроллеры и системы на их основе
- •Память маршрутизации
- •Поддержка протоколов в коммуникационных контроллерах
- •Типы сообщений м-канала для s/t-трансивера мс145574
- •Поддержка протоколов в коммуникационных контроллерах
- •Коммуникационные микроконтроллеры и системы на их основе
- •Поддержка протоколов в коммуникационных контроллерах
- •Поддержка протоколов в коммуникационных контроллерах
- •Память общих параметров всех логических каналов
- •Коммуникационные микроконтроллеры и системы на их основе
- •Коммуникационные микроконтроллеры и системы на их основе
- •Поддержка протоколов в коммуникационных контроллерах
- •3 4 6 7 Рис. 5.100. Регистр событий scce и
- •Коммуникационные микроконтроллеры и системы на их основе
- •Поддержка протоколов в коммуникационных контроллерах
- •Коммуникационные микроконтроллеры и системы на их основе
- •Поддержка протоколов в коммуникационных контроллерах
- •Конфигурации контроллеров мрс860мн
- •Коммуникационные микроконтроллеры и системы на их основе
- •Поддержка протоколов в коммуникационных контроллерах
- •Коммуникационные микроконтроллеры и системы на их основе
- •Коммуникационные микроконтроллеры и системы на их основе
- •Поддержка протоколов в коммуникационных контроллерах
- •Коммуникационные микроконтроллеры и системы на их основе
- •Использование дробных стоп-битов
- •Тип контроля в сети
- •Коммуникационные микроконтроллеры и системы на их основе
- •Коммуникационные микроконтроллеры и системы на их основе
- •Поддержка протоколов в коммуникационных контроллерах
- •Коммуникационные микроконтроллеры и системы на их основе
- •Размер синхросимволов
- •Коммуникационные микроконтроллеры и системы на их основе
- •Коммуникационные микроконтроллеры и системы на их основе
- •Поддержка протоколов в коммуникационных контроллерах
- •Коммуникационные микроконтроллеры и системы на их основе
- •Поддержка протоколов в коммуникационных контроллерах
- •Коммуникационные микроконтроллеры и системы на их основе
- •Команды u-кадров
- •Коммуникационные микроконтроллеры и системы на их основе
- •Поддержка протоколов в коммуникационных контроллерах
- •Поддержка протоколов в коммуникационных контроллерах
- •Поддержка протоколов в коммуникационных контроллерах
- •Поддержка протоколов в коммуникационных контроллерах
- •5.3.5. Доступ к сетям ethernet
- •Коммуникационные микроконтроллеры и системы на их основе
- •Значения задержек при приеме кадра
- •Поддержка протоколов в коммуникационных контроллерах
Коммуникационные микроконтроллеры и системы на их основе
При работе в режиме slave SPI-интерфейс принимает данные от SPI master-станций и немедленно передает их обратно. Для начала передачи slave-устройством центральный процессор должен подготовить данные в буферах памяти, заполнить слово состояния буферного дескриптора и установить для буферов TxBD бит готовности к передаче R := 1. Кроме этого, процессор должен подготовить для обмена и буферы приема RxBD. Когда данные будут подготовлены, процессору необходимо установить бит STR := 1 в регистре SPICOM, чтобы SPI-интерфейс мог подготовиться к возможному обмену данными. Обмен начнется, когда придет активный сигнал выбора SPISEL = 0 и поступят тактовые сигналы на вход SPICLK. Данные будут передаваться на контакт SPIMISO и приниматься с контакта SPIMOSI. Маскируемое прерывание может быть выставлено при завершении работы с текущим буфером или если в ходе обмена зарегистрирована ошибка. SPI-контроллер продолжает принимать данные в буферы приема RxBD, пока все подготовленные буферы не будут заполнены или не будет снят активный сигнал SPISEL.
Если сигнал SPISEL стал пассивным, но все данные из буфера передачи еще не переданы, то передача все равно будет прервана, а текущий буфер TxBD останется открытым. После прихода активного сигнала SPISEL и тактового сигнала SPICLK передача будет продолжена с точки остановки. Если же все данные переданы, а сигнал SPISEL остается активным, то контроллер будет продолжать передачу единичных битов «1».
При работе интерфейса в режиме multimaster одноименные выводы SPIMOSI, SPIMISO, SPICLK всех SPI-устройств соединяются вместе, а линии SPISEL присоединяются к каждому устройству по отдельности. При таком соединении в каждый момент времени только один SPI-контроллер может быть master-станцией, а все остальные - только устройствами slave. Если SPI-контроллер в текущий момент времени сконфигурирован как master-станция, и приходит активный сигнал SPISEL = 0 от другого master-устройства, то регистрируется ошибка совместной работы multimaster-станций, устанавливается бит MIME в регистре событий и генерируется маскируемое прерывание центрального процессора. Работа SPI-устройств останавливается, и для повторного использования контроллеров пользователь должен сбросить бит включения EN в регистре SPIMODE.
Контроллер доступа к шине USB. Основные сведения о USB-контроллере в МРС823. USB-контроллер в МРС823 состоит из четырех основных блоков: приемника, передатчика и двух автоматов для реализации протоколов обмена (protocol state machines). Оба автомата предназначены для управления работой блоков приемника и передатчика, один из них используется, когда контроллер работает в режиме function, а другой - когда контроллер работает в режиме host. Таким образом, USB-контроллер в МРС823 может работать или в режиме function, или в режиме host, или в обоих режимах сразу (это используется при loop-back диагностировании аппаратуры).
Для тактирования USB-контроллера в МРС823 должна быть использована частота (USB reference clock), которая в четыре раза превышает тактовую частоту передаваемых данных, т. е. при работе с шиной 12 Мбит/с тактовая частота должна составлять 48 МГц, а при работе с шиной 1,5 Мбит/с - 6 МГц.
В режиме function контроллер автоматически выполняет обработку контрольной суммы CRC16/CRC5, NRZI-кодирование/декодирование данных с операцией вставки/удаления бит-стаффинга (bit stuffing). В подчиненном режиме контроллер может работать со скоростями 12 или 1,5 Мбит/с и обеспечивает автоматическую повторную передачу в случае возникновения ошибок.
В режиме host контроллер автоматически выполняет обработку только контрольной суммы CRC16, NRZI-кодирование/декодирование данных с операцией вставки/удаления бит-стаффинга (bit stuffing). В режиме master контроллер может работать только со скоростью 12 Мбит/с и обеспечивает поддержку диагностического режима работы «внутренняя петля» (local loopback). Таким образом, при функционировании МРС823 в режиме host-контроллера существуют ряд нижеперечисленных ограничений.
534
ОРГАНИЗАЦИЯ КОММУНИКАЦИОННЫХ ПРОЦЕССОРНЫХ МОДУЛЕЙ В КМК
Не поддерживается обмен со скоростью 1,5 Мбит/с, так как передатчик не может выра батывать биты преамбулы при низкоскоростном обмене.
USB-контроллер в МРС823 не может выполнять функции корневого хаба (root hub).
Некоторые функции удалены с аппаратного уровня и должны быть реализованы на программном уровне: генерация контрольной суммы CRC5 для кадров маркера (token); обнаружение ошибок и повторная передача кадра при ошибке; генерация и передача каждую 1 мс маркеров SOF tokens.
Обратите внимание, что в отличие от других коммуникационных каналов, в USB-кон-троллере изменена схема распределения буферов FIFO. USB-передатчик обслуживает четыре независимых 16-байтных буфера FIFO, т. е. за каждой конечной точкой (endpoint) закреплен свой буфер передачи. А USB-приемник имеет один общий 16-байтный буфер FIFO приема.
Настройка основных режимов работы USB-контроллера производится при программировании регистра режима USMOD (рис. 5.62), который расположен в памяти по адресу (IMMR&OxFFFFOOO)+OxAOO.
Бит EN разрешает работу USB-контроллера. Если бит EN = 1, то контроллер работает в нормальном режиме, а если бит EN = 0, то контроллер находится в состоянии сброса, а его схемы - в режиме пониженного энергопотребления.
Бит LSS определяет скорость работы USB-контроллера. Если бит LSS = 0, то скорость передачи составляет 12 Мбит/с, а если LSS = 1, то 1,5 Мбит/с.
Бит HOST определяет режим работы USB-устройства. При значении бита HOST = О устройство работает как функция, а при значении HOST = 1 - как хост (host).
При установленном бите RESUME = 1 устройство-функция будет передавать по шине специальные сигналы при выходе из состояния «сон» (suspend mode).
Установка бита TEST = 1 переводит контроллер в тестовый режим внутренней петли. В тестовом режиме включается режим низкоскоростной передачи 1,5 Мбит/с, и, если установлен бит HOST = 1, то конечная точка Endpoint 0 работает как хост, a Endpoint 1-Endpoint 3 - как функции.
Контроллер поддерживает работу с четырьмя конечными точками (endpoints), каждая из которых может работать в одном из четырех режимов передачи (control, interrupt, bulk, isochronous). Обратите внимание, что точка Endpoint 0 должна быть сконфигурирована для control-обмена. Выбор режима работы каждой из конечных точек настраивается при профаммирова-нии регистров конфигурации USEPx конечной точки (рис. 5.63), которые расположены в памяти по адресу (IMMR&OxFFFFOOO)+OxA04 - USEPO, (IMMR&OxFFFFOOO)+OxA06 - USEP1, (IMMR& OxFFFFOOO)+OxA08 - USEP2, (IMMR&OxFFFFOOO)+OxAOA - USEP3. Все регистры конфигурации имеют одинаковый формат.
Номер конечной точки, с которой связан тот или иной регистр USEPx, определяется в поле EPN (Endpoint Number). Биты ТМ (Transfer Mode) определяют, какой режим обмена использует конечная точка (00 - Control, 01 - Interrupt, 10 - Bulk, 11 - Isochronous).
Для того чтобы увеличить скорость передачи, пользователь может изменить бит MF (MultiFrame). Если бит MF = 0, то в буфере FIFO передатчика всегда могут быть данные только одного кадра. Если же бит MF = 1, то в буфер FIFO передатчика во время передачи данных текущего кадра может начаться загрузка данных следующего кадра.
LSS |
RESUME |
Зарезервировано. Все 0 |
TEST |
HOST |
EN |
Рис. 5.62. Регистр режима USB-контроллера USMOD
535
КОММУНИКАЦИОННЫЕ МИКРОКОНТРОЛЛЕРЫ И СИСТЕМЫ НА ИХ ОСНОВЕ
8 9 10 11 12 13 14 15
EPN
ТМ
О MF RTE THS
RHS
Рис. 5.63. Формат регистра конфигурации конечных точек USEPx
Если таймер ожидания ответа на переданный пакет истек, а ответ-подтверждение не поступил, то USB-контроллер, если установлен бит RTE = 1, произведет повторную передачу текущего кадра данных.
Обратите внимание, что при работе в изохронном (isochronous) режиме передачи биты MF и RTE должны быть равны нулю.
Если USB-контроллер работает в режиме slave, то биты THS и RHS определяют, какой тип пакета-подтверждения будет выдаваться в ответ на прием маркера OUT или IN (табл. 5.38). Но следует обратить внимание, что посылка подтверждений NAK и STALL не разрешена для конечной точки Control.
Таблица 5.38