Usb трансивер что это

Обновлено: 03.07.2024

Все USB-компоненты Texas Instruments
разделяются на три группы: разветвители, приемопередатчики и периферия.
Все описанные компоненты (за исключением отдельно оговоренных) предназначены
для работы в промышленном диапазоне температур: от –40 до +85 °C.

USB-разветвители

USB-разветвители, или хабы (USB-hub),
предназначены для возможности подключения к одному хост-порту (USB-Host) нескольких любых устройств (USB-Device). Скорость
работы хабов Texas Instruments (табл. 1) ограничена 12 Мбит/с (Full-Speed, FS). Однако
это не мешает подключать к этим хабам высокоскоростные устройства на 480 Мбит/c
(High-Speed, HS), но необходимо учесть, что
реальная скорость работы этих устройств будет ограничена возможностями хаба.

Таблица 1. Разветвители шины USB от Texas Instruments

TUSB2036/44B/77A

TUSB2136/505

Семейство полностью программно управляемых USB-хабов со встроенными трансиверами, рассчитанных на одновременное
подключение до двух (TUSB2136) или пяти
(TUSB5052B) USB-устройств. Совместимы
со спецификацией протокола USB 1.1. Скорость работы — 1,5 Мбит/с (Low-Speed, LS)
или 12 Мбит/с (FS). Эти устройства отличаются от семейства TUSB2036/44B/77A тем, что
имеют в своем составе CPU 8052. Доступны
две области ОЗУ: 8 кбайт (TUSB2136) или
16 кбайт (TUSB5052) для хранения исполняемого кода, загружаемого из внешней I2C EEPROM-памяти, и 256 байт (TUSB2136) или
2 кбайт (TUSB5052) — для хранения данных.
После подачи на микросхему питания управление передается встроенному стартовому
загрузчику. Этот загрузчик копирует пользовательское ПО из внешней EEPROM-памяти во внутреннее ОЗУ и затем передает управление этому ПО. Всего в микросхемах реализованы 4 программно управляемых пользовательских порта ввода/вывода и сторожевой
таймер. Всего доступно до 3 конечных точек
IN и OUT. Благодаря наличию внутреннего
CPU, область назначения TUSB2136/5052
не ограничивается лишь функциями USB-хаба. Отдельно стоит отметить микросхему
TUSB5052, в которую, помимо всего вышеописанного, встроен полнофункциональный
модуль UART с соответствующими модемными сигналами и 4-канальный DMA-контроллер, значительно ускоряющий работу по
передаче больших потоков данных.

USB-трансиверы

USB-трансиверы реализуют физический
уровень шины USB, определяющий логические уровни напряжения и другие физические параметры шины передачи данных. Как
правило, они имеют встроенные узлы защиты шины от перенапряжения и контроля состояния шины. На данный момент компания
TI производит три микросхемы-трансивера
(табл. 2), различающихся по областям применения.

Таблица 2. Трансиверы USB от Texas Instruments

TUSB1105/06

Универсальные трансиверы для работы как
в составе USB-устройств, так и в составе USB-хабов. Скорость работы — до 12 Мбит/с.
В микросхемы встроен стабилизатор напряжения 3,3 В (номинальное входное напряжение питания — 5 В). Трансиверы совместимы по логическим уровням от 1,65 до 3,6 В,
что позволяет использовать их с большинством CPLD/FPGA и микроконтроллерами
(со встроенным PHY). Напряжения пробоя
составляет ±9 кВ относительно выводов
D+/D–/Vcc (5 В), что соответствует стандарту IEC-61000-4-2.

TUSB2251

Экономичный трансивер для работы только в составе USB-устройств (USB-device). Как
и TUSB1105/06, имеет встроенный стабилизатор напряжения 5,0 В→3,3 В. Благодаря
двойному питанию, позволяет работать с логическими уровнями вплоть до 1,65 В, что делает TUSB2251 идеальных выбором для портативных устройств и техники с батарейным
питанием: это мобильные телефоны, КПК,
смартфоны, MP3-плееры.

USB-периферия

Это специализированные микросхемы для
построения различного рода USB-устройств.
Чаще всего являются преобразователями распространенных последовательных интерфейсов (UART, I2C, SPI и др.) и параллельных
(JTAG, IDE). Все микросхемы этой группы,
производимые компанией TI, приведены
в таблице 3.

Таблица 3. Периферийные устройства USB от Texas Instruments

TUSB3210

TUSB3410/3410Q1

Специализированные USB-контроллеры,
специально спроектированные для построения
преобразователей интерфейсов USB→UART
для использования в компьютерах, лишенных аппаратно реализованных портов RS-232
(например, ноутбуки). Благодаря встроенному процессорному ядру CPU семейства 8052
и двухканальному DMA-контроллеру, стала возможной работа на значительно более высоких скоростях — до 921,6 кбит/с,
по сравнению с обычным портом RS-232—
до 115,2 кбит/с. Помимо прочего, полностью
реализованы все модемные сигналы, то есть
поддержана совместимость с 16C550A. Более
того, аппаратно реализована поддержка управления внешним трансивером шины RS-485
и режим IrDA (до 115 кбит/с). Тактовая частота ядра составляет 48 МГц (внешний кварцевый резонатор 12 МГц и ФАПЧ4). Производительность составляет 4 MIPS (12 тактов на одну команду). Имеется встроенный
сторожевой таймер с периодом 128 мс. Пользовательский код загружается из внешней I2C
EERPOM-памяти объемом не менее 16 кбайт.
Дополнительно для пользовательского ПО доступны 4 независимые линии ввода/вывода.
Для работы микросхем необходим стабилизатор с выходным напряжением 3,3 В.

TUSB6015

Специализированный одноканальный USB-контроллер, спроектированный для создания
устройств типа USB-Flash накопителей USB
2.0 в режиме High-Speed (до 480 Мбит/с).
Для этого в микросхему встроен 16-битный
контроллер NOR Flash-памяти с совмещенными шинами адреса и данных. Доступен режим асинхронного произвольного и синхронного потокового обмена с 16/32-битными данными. Для управления параметрами
работы TUSB6015 предназначены соответствующие входы, например, выбор тактовой
частоты 19,2 или 38,4 МГц. Микросхема не
требует программирования, так как вся логика управления «зашита» внутри микросхемы.
Благодаря встроенному в микросхему DMA-контроллеру, частота тактового сигнала для
обмена данными с внешней памятью достигает 65 МГц. Для нормальной работы помимо источника напряжения 3,3 В требуются
два дополнительных источника 1,5 и 1,8 В для
работы встроенного ядра, интегрированного USB 2.0 PHY, контроллера прерываний
и контроллера внешней памяти. Дополнительно стоит отметить низкий ток потребления в спящем режиме — до 20 мкА.

TUSB6010B

Многофункциональный одноканальный
USB 2.0 High-Speed контроллер со встроенным контроллером NOR Flash-памяти и контроллером USB 2.0 OTG PHY. Пользователю
доступен на выбор один из трех режимов работы микросхемы: хост-контроллер, устройство общего назначения или устройство в режиме OTG с поддержкой протоколов SRP
(Session Request Protocol) и HNP (Host Negotiation
Protocol). TUSB6010B полностью соответствует спецификации USB Rev. 2.0 и USB
OTG Rev. 1.3. Область применения микросхемы: USB-хост и USB-OTG контроллеры
в составе сложных устройств, классические
USB-Flash накопители. Сверхнизкий собственный ток потребления в спящем режиме
позволяет создавать на базе TUSB6010B устройства с батарейным питанием. Для нормальной работы помимо источника напряжения 3,3 В требуются два дополнительных
источника 1,5 и 1,8 В. Для работы микросхемы в режиме USB OTG для управления питанием идеально подходит преобразователь
напряжения TPS65030, построенный на основе стабилизатора на переключаемых конденсаторах.

TUSB6020

Многофункциональный одноканальный
USB 2.0 High-Speed контроллер со встроенным высокоскоростным контроллером последовательной шины VLYNQ (четыре независимых канала). На этом отличия TUSB6020
от TUSB6010B заканчиваются. Область применения: USB-хост и USB-OTG контроллеры
в составе многофункциональных устройств.
Для нормальной работы помимо источника
напряжения 3,3 В требуются два дополнительных источника 1,5 и 1,8 В.

TUSB6520

Специализированный высокоскоростной
преобразователь интерфейсов USB — ATA/ATAPI со встроенным модифицированным
микропроцессорным ядром 8051 (два такта
на одну команду), работающим на частоте
60 МГц (30 MIPS). Имеет встроенное ОЗУ для
хранения исполняемой пользовательской
программы объемом 32 кбайт, 8 кбайт ОЗУ
для внутренних буферов и данных, 1152 байта ОЗУ для хранения содержимого секторов,
8 кбайт предварительно запрограммированного ПЗУ для хранения кода стартового загрузчика (рисунок). В функции этого загрузчика
входит чтение исполняемого пользовательского кода из внешней I2C EEPROM-памяти (например, 24LC256) и последующая передача ему
управления. Для полноценной работы устройства на базе TUSB6520 необходим кварцевый
резонатор или генератор 24 МГц и внешний
стабилизатор напряжения 5 В→3,3 В. Контроллер ATA/ATAPI поддерживает все режимы
PIO, DMA и UDMA (UDMA-66 и ATA-66),
обеспечивая максимальную теоретическую
пропускную способность до 66 Мбайт/с.
Автору статьи приходилось иметь опыт работы с TUSB6520: максимальная скорость работы с обычным 3,5″ жестким диском IDE достигала 28 Мбайт/с, с IDE DVD-приводом18 Мбайт/с. Область применения микросхемы: различного рода Mobile Racks с интерфейсом USB, устройства для USB внешних
накопителей на основе стандартных жестких
дисков с интерфейсом IDE, внешние USB
DVD/CD-накопители и т. п.

Трансивер: как он работает и на что обратить внимание при покупке?

Современные оптические трансиверы — это компактные модули, рассчитанные на различные параметры линий передачи. Они устанавливаются в стандартные электрические порты оборудования — например, трансивер можно установить в SFP или SFP+ порты, встроенные в коммутатор.

Важно отметить, что интерфейсы обратно-совместимы от более старшей версии к более младшей. Это означает, что как правило вы сможете использовать SFP трансивер в SFP+ порту оборудования. Но в любом случае не помешает предварительно изучить таблицу совместимости.

Трансиверы позволяют работать в полнодуплексном режиме как с одним волокном, так и с парой, они отличаются количеством разъемов: Simplex LC для работы с одним волокном и Duplex LC для работы с парой волокон. Полудуплексные же решения на текущий момент полностью сняты с производства ввиду своей неактуальности на фоне удешевления стоимости внутренних узлов трансивера.

Существует два типа трансиверов: одномодовые и многомодовые. Они предназначены для работы с одноименными типами волокон и отличаются длиной волны, на которой передается максимальная мощность излучения: 1310 нм или 1550 нм – для одномодовых волокон, 850 нм или 1310 нм – для многомодовых.

Сами же волокна отличаются диаметром “световодного” канала (сердечника). Диаметр сердечника одномодового волокна 9 микрон, а у многомодового 50 или 62,5. Диаметры внешних оболочек равны и составляют 125 микрон.

Одномодовые сети более критичны к качеству волокон, соединений и оборудования, но позволяют организовывать передачу данных на расстояния свыше 80км.

Многомодовые сети из-за сниженных требований дешевле в построении и эксплуатации, но длина линии не превышает 2км.

Так же допускается использование многомодового оптоволокна с одномодовыми трансиверами.

Одномодовые трансиверы

Это трансиверы для работы с одномодовыми волокнами, они работают на длине волны 1310 нм/1550 нм.

Формат SFP

Такие трансиверы вставляются в SFP-порты в коммутаторе или другом сетевом оборудовании с такими портами. Рассмотренные ниже модели отличаются режимом работы, средой и длиной волны.

Полнодуплексный режим и длина волны приема/передачи — 1310 нм/1310 нм. Перечисленные модели содержат разъем Duplex LC:

D-Link DEM-210 передает данные в среде 100Base-FX на дистанции до 15 км;

D-Link 310GT передает данные в среде 1000Base-LX на дистанции до 10 км.

Полнодуплексный режим и длина волны приема/передачи — 1310 нм/1550 нм. Среда 1000Base-BX. Указанные ниже модели работают парами: “принимающий” и “передающий” трансиверы. В паре их можно легко различить по условным обозначениям производителя, например, индексам T (transmit)/R (receive) или U (uplink)/D (downlink). Разъемы у каждого из них - Simplex LC:

D-Link 330T и D-Link 330R передают данные на дистанции до 10 км.

Формат SFP+

SFP+ является расширенной версией SFP и поддерживает скорости передачи данных от 4 Гб/с до 10 Гб/с.

Такие трансиверы устанавливаются в SFP+ порты в коммутаторе или другом сетевом оборудовании.

D-Link 432XT - полнодуплексная модель с разъемом Duplex LC для одномодового оптического кабеля, использует длину волны 1310 нм и обеспечивает передачу данных на дальние расстояния до 10 км.

Модели поддерживают полнодуплексный режим в парной конфигурации и обеспечивают передачу данных в среде 10GBase-ER на дистанции 40 км. D-Link 436XT-BXU вместе с D-Link 436XT-BXD с длиной волны приема/передачи 1330 нм/1270 нм.

Многомодовые трансиверы

Это трансиверы для работы с многомодовыми волокнами, работающие на длине волны 850 нм или 1310 нм. Модели содержат разъем Duplex LC и поддерживают полнодуплексный режим. Такие трансиверы отличаются форматом:

SFP — D-Link DEM-211 и D-Link DEM-312GT2 работают с длиной волны приема/передачи 1310 нм/1310 нм на дистанции до 2 км. Они передают данные в среде 100Base-FX и 100Base-SX+ соответственно;

SFP+ — D-Link DEM-431XT передают данные в среде 10GBase-SR с длиной волны приема/передачи 850 нм/850 нм на дистанции до 300 метров.

Трансиверы “витая пара”

Такие трансиверы представлены в формате SFP. Это две модели — D-Link DGS-712 и Huawei SFP-1000BASET передают данные в среде 1000Base-T на дистанции до 100 м. Обе модели содержат разъем RJ-45.

С развитием телекоммуникационных сетей на рынке появляется все больше типов сетевого оборудования: в нашем блоге вы можете также почитать об устройствах, которые отвечают за усиление беспроводного сигнала и за проводное подключение нескольких компьютеров.

В этом видео показан принцип работы трансивера

Современные оптические трансиверы — это компактные модули, рассчитанные на различные параметры линий передачи. Они устанавливаются в стандартные электрические порты оборудования — например, трансивер можно установить в SFP или SFP+ порты, встроенные в коммутатор.

Важно отметить, что интерфейсы обратно-совместимы от более старшей версии к более младшей. Это означает, что как правило вы сможете использовать SFP трансивер в SFP+ порту оборудования. Но в любом случае не помешает предварительно изучить таблицу совместимости.

Трансиверы позволяют работать в полнодуплексном режиме как с одним волокном, так и с парой, они отличаются количеством разъемов: Simplex LC для работы с одним волокном и Duplex LC для работы с парой волокон. Полудуплексные же решения на текущий момент полностью сняты с производства ввиду своей неактуальности на фоне удешевления стоимости внутренних узлов трансивера.

Существует два типа трансиверов: одномодовые и многомодовые. Они предназначены для работы с одноименными типами волокон и отличаются длиной волны, на которой передается максимальная мощность излучения: 1310 нм или 1550 нм – для одномодовых волокон, 850 нм или 1310 нм – для многомодовых.

Сами же волокна отличаются диаметром “световодного” канала (сердечника). Диаметр сердечника одномодового волокна 9 микрон, а у многомодового 50 или 62,5. Диаметры внешних оболочек равны и составляют 125 микрон.

Одномодовые сети более критичны к качеству волокон, соединений и оборудования, но позволяют организовывать передачу данных на расстояния свыше 80км.

Многомодовые сети из-за сниженных требований дешевле в построении и эксплуатации, но длина линии не превышает 2км.

Так же допускается использование многомодового оптоволокна с одномодовыми трансиверами.

Одномодовые трансиверы

Это трансиверы для работы с одномодовыми волокнами, они работают на длине волны 1310 нм/1550 нм.

Формат SFP

Такие трансиверы вставляются в SFP-порты в коммутаторе или другом сетевом оборудовании с такими портами. Рассмотренные ниже модели отличаются режимом работы, средой и длиной волны.

Полнодуплексный режим и длина волны приема/передачи — 1310 нм/1310 нм. Перечисленные модели содержат разъем Duplex LC:

D-Link DEM-210 передает данные в среде 100Base-FX на дистанции до 15 км;

D-Link 310GT передает данные в среде 1000Base-LX на дистанции до 10 км.

Полнодуплексный режим и длина волны приема/передачи — 1310 нм/1550 нм. Среда 1000Base-BX. Указанные ниже модели работают парами: “принимающий” и “передающий” трансиверы. В паре их можно легко различить по условным обозначениям производителя, например, индексам T (transmit)/R (receive) или U (uplink)/D (downlink). Разъемы у каждого из них - Simplex LC:

D-Link 330T и D-Link 330R передают данные на дистанции до 10 км.

Формат SFP+

SFP+ является расширенной версией SFP и поддерживает скорости передачи данных от 4 Гб/с до 10 Гб/с.

Такие трансиверы устанавливаются в SFP+ порты в коммутаторе или другом сетевом оборудовании.

D-Link 432XT - полнодуплексная модель с разъемом Duplex LC для одномодового оптического кабеля, использует длину волны 1310 нм и обеспечивает передачу данных на дальние расстояния до 10 км.

Модели поддерживают полнодуплексный режим в парной конфигурации и обеспечивают передачу данных в среде 10GBase-ER на дистанции 40 км. D-Link 436XT-BXU вместе с D-Link 436XT-BXD с длиной волны приема/передачи 1330 нм/1270 нм.

Многомодовые трансиверы

Это трансиверы для работы с многомодовыми волокнами, работающие на длине волны 850 нм или 1310 нм. Модели содержат разъем Duplex LC и поддерживают полнодуплексный режим. Такие трансиверы отличаются форматом:

SFP — D-Link DEM-211 и D-Link DEM-312GT2 работают с длиной волны приема/передачи 1310 нм/1310 нм на дистанции до 2 км. Они передают данные в среде 100Base-FX и 100Base-SX+ соответственно;

SFP+ — D-Link DEM-431XT передают данные в среде 10GBase-SR с длиной волны приема/передачи 850 нм/850 нм на дистанции до 300 метров.

Трансиверы “витая пара”

Такие трансиверы представлены в формате SFP. Это две модели — D-Link DGS-712 и Huawei SFP-1000BASET передают данные в среде 1000Base-T на дистанции до 100 м. Обе модели содержат разъем RJ-45.

С развитием телекоммуникационных сетей на рынке появляется все больше типов сетевого оборудования: в нашем блоге вы можете также почитать об устройствах, которые отвечают за усиление беспроводного сигнала и за проводное подключение нескольких компьютеров .

В этом видео показан принцип работы трансивера


В данном цикле статей будет рассмотрен под разными углами интерфейс USB (USB 2.0) Попробуем разобраться, как он работает и закрепить полученные знания практически. «Копать» мы будем достаточно глубоко, не коснемся только физического уровня передачи данных (вернее коснемся вскользь). Физический уровень возьмет на себя соответствующий периферийный модуль МК.

Все примеры, которые я буду приводить, будут привязаны к линейке МК AT91SAM7S. Так как эта линейка МК не очень популярна в Сообществе, я постараюсь акцентировать внимание на работе самого интерфейса и по минимуму затрону специфические для этого МК особенности реализации.

Примеры будут базироваться на «глубоко модернизированном» и достаточно низкоуровневом примере реализации USB от Atmel. Готовые библиотеки рассматривать не будем. Не по тому, что это плохо, просто наша цель разобраться — как работает интерфейс.

В качестве практического задания – давайте поставим целью создать CDC-ACM устройство. На практике, за сокращением CDC-ACM стоит «обыкновенный» виртуальный СОМ-порт. С терминологией разберемся позже, пока скажем так: на уровне ОС устройство будет автоматически распознаваться как последовательный интерфейс (COM-порт в Win, /dev/ttyS в Linux и т. д.).

Общие сведения.

USB –последовательный интерфейс, используемый для подключения периферийных устройств. Соответственно, существуют понятие «главное устройство» (хост, он управляет обменом данными через интерфейс, выступает инициатором обмена) и «периферийное устройство» (клиент, в процессе обмена данными «подчиняется» хосту).

Логика работы у хоста и клиента принципиально отличается, соответственно нельзя напрямую соединять устройства «хост – хост» и «клиент – клиент».

Есть специальные устройства – хабы, которые подключаются в качестве клиента к одному хосту и, в тоже время, выступают хостом для других периферийных устройств. Хабы используют для «разветвления» шины USB.

Полагаю, изложенные факты общеизвестны, двигаемся далее.

Физический уровень.

Физически интерфейс USB использует 4 провода: «земля (GND)», «+5В (VBUS)», «D+», «D-». Первые два могут использоваться для питания периферийного устройства (максимальный ток 500 мА). Два последних служат для передачи данных (обозначение D+ и D- условны, с электрическими потенциалами это никак не связанно).

Как я уже сказал, физическую передачу данных через D+ и D- нам обеспечит USB модуль МК.

Нам нужно знать следующее:

1. Питание на периферийное устройство подается сразу после подключения к USB разъему хоста. Сам разъем сконструирован таким образом, что первыми входят в «зацепление» контакты «GND» и «VBUS», только потом «D+» и «D-».

2. Подключение устройства к USB разъему хоста не означает, что хост сразу определит подключение нового устройства. Если не вдаваться в подробности, подключение/отключение устройства хост определяет по наличию вешней подтяжки на линиях D+ и D-. Такая формулировка очень упрощена, детально ознакомиться с вопросом можно в разделе 7.1.7.3 официальной спецификации USB 2.0.

В нашем случае, для того чтобы «заявить о себе» нужно подтянуть линию D+ посредством сопротивления 1.5 кОм к напряжению 3.3 вольта. Если мы уберем данную подтяжку – хост определит отключение устройства.

Подтяжку можно сделать постоянной (в таком случае хост будет определять подключение / отключение устройства одновременно с подключением / отключением устройства к разъему USB), либо управлять подтяжкой через ключ, дергая ногой МК (тогда наше устройство сможет самостоятельно подключатся и отключатся от хоста).

Логический уровень

На логическом уровне, обмен данными происходит через некоторые логические, виртуальные каналы внутри одного физического USB интерфейса. Такие каналы называют «Конечными точками» (EndPoints).

Конечные точки (каналы) бывают 4 видов:

Control – данный тип канала используется хостом для управления периферийным устройством. Хотя иногда данный тип канала используется для передачи данных.

Bulk — данный тип канала используется для обмена данными. Гарантирование целостности данных и гарантированная доставка данных для данного типа канала реализована «в железе». Однако скорость передачи данных по такому каналу ограничена.

Isochronous — данный тип канала в основном используется для обмена потоковыми данными. Целостность и доставка данных не контролируются, зато скорость значительно выше чем для Bulk каналов.

Interrupt – используются для реализации подобия «прерываний». Такие «прерывания» являются логическими, и никак напрямую не связанны с аппаратными прерываниями МК или прерываниями ОС.

Минимальная реализация USB устройства требует наличие всего одного Control канала (так называемая «нулевая конечная точка»). Остальные типы каналов, как и их количество определяет разработчик устройства исходя из функций устройства.

Однако, существуют некоторые стандартизированные классы USB устройств. Для каждого такого класса количество каналов, их типы и назначение установлено стандартом для данного класса устройств.

Мы стремимся создать устройство класса CDC (communications device class). Использование стандарта, в данном случае, избавит нас от необходимости писать драйвер для ОС. Как правило, драйвера для стандартных классов устройств уже «вшиты» во все популярные ОС.

Детально ознакомляться с типами каналов будем по ходу реализации нашего устройства. Забегая наперед, скажу, что в нашем устройстве будет 3 канала. Control канал для управления и два Bulk канала для предачи данных по направлению «ПК-МК» и, соответственно «МК-ПК».

Первая — вводная статья получилась слишком теоретической.

В следующей статье мы поговорим о дескрипторах USB устройства и рассмотрим процедуру инициализации устройства (запрос дескрипторов хостом и т. д.). Увы, но опять будет много теории, запаситесь терпением. :) Ничего, нам осталось «пережевать» дескрипторы устройств, после чего появятся примеры кода.

Читайте также: