2.0 Функциональный обзор
Контроллер узлов USB совместим со спецификациями USB версий 1.0 и 1.1. Устройство совмещает на одной интегральной схеме необходимый приёмопередатчик USB с 3.3В регулятором, механизм последовательного интерфейса (SIE), FIFO конечных точек USB, универсальный (8-разрядный последовательный или параллельный) интерфейс, генератор тактовых импульсов. Поддерживаются семь программных каналов конечных точек: один для принудительного управления конечной точкой EP0 и шесть для поддержки USB прерываний, массовых и равно временных передач данных. 8-разрядный параллельный интерфейс поддерживает мультиплексированные и немультиплексированные типы шин адреса/данных CPU. Синхронный последовательный интерфейс MICROWIRE позволяет состыковываться с CPU без внешних шин адреса/данных. Выходная схема программируемых прерываний позволяет сконфигурировать устройство для различных требований передачи сигналов прерываний.
Смотрите рисунок 2, на котором изображены основные функциональные блоки, описанные в следующих разделах.
2.1 Приёмопередатчик
Устройство содержит быстродействующий приёмопередатчик, который состоит из 3 основных блоков:
- Дифференциальный приёмник
- Несимметричный приёмник с источником опорного напряжения на кристалле
- Передатчик с источником тока на кристалле
Приёмопередатчик удовлетворяет требуемым рабочим характеристикам, описанным в главе 7 спецификации USB, версии 1.1.
Для уменьшения искажения сигнала, хорошо сбалансированы выходные дифференциаль-ные перепады передатчика. Управление скоростью нарастания выходного напряжения используется в драйвере для снижения излучаемых помех и наводок. Драйверы поддерживают тристабильные операции для применения двунаправленной, полудуплексной работы приёмопередатчика.
Дифференциальный приёмник срабатывает по завершению амплитуды синфазного сигнала и имеет большую задержку, чем такой же несимметричного приёмника. Это позволит избежать выбросов напряжения в механизме последовательного интерфейса (SIE) после несимметричных обнулений.
Несимметричные приёмники находятся на каждой из двух линий данных. Они требуются в дополнение к дифференциальному приёмнику, для обнаружения абсолютного напряжения с переключением порога между 0.8В и 2.0В (входы ТТЛ). Для увеличения подавления VCC без выбросов, опорное напряжение устанавливается для несимметричного переключения. Внешний резистор 1.5 ± 5% КОм необходим на D+, чтобы показать, что это быстродействующий узел. Резистор должен быть подключён к источнику напряжения 3.0В…3.6В, а опорный уровень - локальная "земля", также как у выхода предусмотренного на контакте V3.3.
2.2 Регулятор напряжения (VREG)
Регулятор напряжения обеспечивает 3.3В для интегрированного приёмопередатчика из устройства питания 5.0В или питания шины USB. Этот выход может быть использован для питания через резистор 1.5 КОм. Выход должен быть развязан с "землёй" через танталовый конденсатор 1 мкФ. Этот вывод может быть отключён программно для использования в 3.3В системе.
2.3 Механизм последовательного интерфейса (SIE)
SIE содержит в себе модули физического уровня (PHY) и контроллера уровня сетевой архитектуры, который осуществляет сетевой доступ и обнаружение конфликтов (MAC). Модуль PHY содержит схему восстановления цифровой подачи тактовых импульсов, цифровой фильтр выбросов, схему обнаружения окончания пакета (EOP), и логику заполнения и незаполнения разрядов. Модуль MAC обеспечивает форматирование пакета, генерацию и проверку CRC, обнаружение адреса конечной точки. Он обеспечивает необходимый контроль при формировании ответных сигналов NAK, ACK и STALL, как это определено контроллером программного канала конечной точки (EPC) для определённого канала конечной точки. SIE также отвечает за обнаружение и формирование отчёта о специфических USB событий, таких как NodeReset, NodeSuspend и NodeResume. Модуль выдающий сигналы приёмопередатчику хорошо согласован (до 1 нс) для минимизации фазовых с382гов USB сигналов.
Спецификации USB определяют заполнение и незаполнение разрядов, как метод для измерения адекватных электрических переходов на линии разрешения восстановления подачи тактовых импульсов на принимающем конце. Блок заполнения разрядов обеспечивает то, что всякий раз когда встречается строка состоящая из одних "1", после каждой шестой "1" в потоке данных вставляется "0". Логика незаполнения разрядов прямая противоположность этого процесса.
Блок восстановления подачи тактовых импульсов использует поступающие данные NRZI для выделения (12 МГц) тактовых импульсов данных из входной 48 МГц тактовой частоты. Эта входная тактовая частота получается из 24 МГц осциллятора в конъюнкции с схемой PLL (удвоение частоты). Этот тактовый сигнал используется в цепи восстановления данных. На выходе этого блока двоичные данные (декодированные из потока NRZI), которые могут использовать дискретно тактовую частоту 12 МГц. Характеристика неустойчивой синхронизации и временные характеристики отвечают требованиям, стоящим четвертыми в главе 7 спецификации USB.
Рисунок 2. Блок схема USBN9603/4
2.4 Контроллер программного канала конечной точки (EPC)
EPC обеспечивает интерфейс для функциональных конечных точек USB. Конечная точка это окончательный источник или звено данных. Канал конечной точки способен перемещать данные между USB и памятью, и завершать путь между главной USB и функциональной конечной точкой. В соответствии со спецификацией USB, до 31 такой конечной точки поддерживается в любой момент времени. USB позволяет совокупность из 16 однонаправленных конечных точек для приёма и 16 для передачи. Управляющая конечная точка 0 всегда двунаправленная, общее число 31. Семь каналов конечных точек поддерживают одинаковый функциональный адрес. Схематическую диаграмму EPC операций см. на рисунке 3.
Функцией USB является то, чтобы устройство USB было способно получать и отправлять данные по шине. Функция может иметь одну или более конфигураций, каждая из которых определяет интерфейс, который поддерживает устройство. Каждый интерфейс, в свою очередь, состоит из одной или более конечных точек.
Каждая конечная точка - адресуемый объект USB и для ответа требуются символы IN и OUT из главной USB (обычно PC). Символы IN показывают, что главная USB имеет запрос на получение информации из конечной точки, а символ OUT показывает, что есть запрос на отправление информации в конечную точку.
При обнаружении символа IN адресованного в конечную точку, канал конечной точки должен ответить пакетом данных. Если канал конечной точки остановлен в этот момент, то посылается пакет STALL под управлением программного обеспечения. Если канал конечной точки доступен, но данные отсутствуют, то автоматически отправляется пакет NAK (неудачный приём). Если канал конечной точки изохронный и доступный, но данные отсутствуют, то на шину отправляется ошибка заполнения разрядов следующая за окончанием пакета.
Так же, при обнаружении символа OUT адресованного в конечную точку, канал конечной точки должен принять пакет данных от главной USB и загрузить его в соответствующее FIFO. Если канал конечной точки остановлен, то посылается пакет STALL. Если канал конечной точки доступен, но нет буфера для хранения данных, то отправляется пакет NAK. Если канал конечной точки изохронный и доступный, но не может обработать данные, то пакет не отправляется.
При отключении конечных точек нет ответа на символы IN, OUT или SETUP.
EPC поддерживает раздельную информацию состояния и управления для каждой конечной точки.
Для символов IN, EPC посылает данные из соответствующего FIFO главной USB. Для символов OUT, EPC посылает данные в противоположном направлении.
Рисунок 3. Операции EPC
2.5 Микроконтроллерный интерфейс
Устройство может быть присоединено к CPU или микроконтроллеру через 8-разрядный параллельный или MICROWIRE интерфейс. Тип интерфейса выбирается с помощью входных контактов MODE0 и MODE1. В дополнение, предусмотрен конфигурируемый вывод прерываний. Тип прерываний может быть сконфигурирован либо как открытый коллектор с активным низким уровнем, либо как двухтактный с активным уровнем высоким или низким.
|