Простые решения FTDI: от USB-хоста до высокоскоростных аппаратных мостов интерфейса USB-UART / FIFO
Текущая ситуация показывает, что специалисты компании верно оценили ситуацию с новым стандартом и их решение оказалось востребованным на рынке
USB-микросхем. Аппаратные мосты и драйверы для них под основные операционные
системы не требуют от разработчика специальных знаний о стандарте USB. Реализация
USB-интерфейса на базе микросхем FTDI является такой же простой задачей, как реализация интерфейса RS232 с точки зрения разработки не только «железа», но и программного обеспечения верхнего уровня.
Не останавливаясь на достигнутом, FTDI
продолжает развивать линейку своих аппаратных мостов. Новинкой прошлого года стали аппаратные мосты USB-UART и USB-FIFO
с поддержкой высокоскоростного режима обмена данными. Их серийное производство
начато в апреле 2009 года.
В настоящее время аппаратные мосты USB
FTDI получили широкое признание во всем
мире. Дело в том, что компания FTDI одной
из первых предложила полное решение —
аппаратную и программную реализации,
то есть собственно микросхему и драйверы
для основных операционных систем. По прошествии 10 лет с момента появления первых
микросхем аппаратных мостов можно утверждать, что продукция FTDI популярна
у производителей благодаря своей надежности, простоте в разработке, а также надежности и простоте в дальнейшей эксплуатации
конечными потребителями изделий, в которых используются решения FTDI. Одной из
основных сфер применения аппаратных мостов является модернизация существующих
изделий с целью замены широко распространенного интерфейса UART на USB. В общем
случае такая модернизация представляет собой замену микросхемы драйвера физического уровня интерфейса RS232/422/485 на аппаратный мост USB-UART FT232R. К этой же
сфере можно отнести и производство готовых преобразователей USB-RS232/RS422/485.
Такие конвертеры поставляет как сама компания FTDI (рис. 1), так и другие производители. Например, немецкая компания Vision
Systems на базе микросхем FT232B серийно
производит готовые преобразователи в промышленном и офисном исполнениях (рис. 2).
Сегодня компания FTDI предлагает четыре основные группы микросхем:
- одноканальные аппаратные мосты USBFIFO/
UART с поддержкой режима full-speed; - двухканальный аппаратный мост USBFIFO/
UART с поддержкой режима full-speed; - хост-контроллер Vinculum;
- новые многоканальные аппаратные мосты
USB-FIFO/UART/MPSSE с поддержкой режима hi-speed.
В основу всех решений FTDI положен следующий принцип: «Интерфейс USB — это
просто!» Производитель предлагает готовое
программно-аппаратное решение, которое
легко интегрируется в разрабатываемое или
существующее устройство.
Для аппаратных мостов разработаны драйверы для операционных систем Windows,
MAC и Linux. Драйверы дают возможность
подключать аппаратный мост к компьютеру, на котором данное соединение может
быть реализовано в виде виртуального
COM-порта (драйвер VCP) или прямого
USB-соединения (драйвер D2xx). В первом
случае работа с устройством осуществляется абсолютно идентично работе со стандартным COM-портом. Во втором случае доступ
к драйверу обеспечивается с помощью специальной библиотеки, содержащей API-
функции для управления и обмена данными. Последний вариант обеспечивает максимальную скорость обмена, на которую
рассчитан аппаратный мост. Оба драйвера
входят в один пакет, называемый CDM
(Combined Driver Model), и устанавливаются одновременно. Для ОС Windows драйверы имеют сертификат WHQL, если используются VID и PID производителя. При смене идентификаторов на пользовательские
сертификат аннулируется.
Для конфигурации режимов работы и смены идентификаторов аппаратных мостов производителем предоставляется утилита Mprog
(рис. 3). Программирование осуществляется
путем подключения микросхем по USB к компьютеру. Режим программирования доступен, в том числе, и через API-функции стандартной библиотеки драйвера D2xx, и может
быть реализован в приложении пользователя, если такой режим будет необходим. В стандартных приложениях программирование
требуется только один раз: при выборе режима работы микросхемы и задании идентификаторов USB.
В настоящее время компания FTDI серийно
выпускает аппаратные мосты USB-FIFO/UART
FT232/FT245, пришедшие на смену микросхемам FT8U232 и FT8U245. В эту группу входят два типа: серия “B” и серия “R”. FT232R
и FT245R являются последним поколением
аппаратных мостов, работающих в режиме
full-speed. Основные их отличия от микросхем FT232B и FT245B — это интегрированные на кристалл энергонезависимая память
для хранения настроек режима работы и идентификаторов USB, встроенный тактовый генератор и некоторые пассивные компоненты.
Дополнительно каждая микросхема имеет
уникальный идентификатор FTDIChipID,
«прошиваемый» при производстве на фабрике. Встроенная EEPROM с выделенной областью для записи пользовательской информации и уникальный идентификатор дают
возможность создавать на базе микросхем серии “R” аппаратные ключи для защиты от
несанкционированного доступа, для реализации которого производителем разработана специальная библиотека, которую можно
свободно скачать с веб-сайта FTDI.
Двухканальный аппаратный мост FT2232D,
пришедший на замену FT2232C, может вы
полнять функции микросхем FT232 и FT245
и дополнительно имеет программно конфигурируемый режим MPSSE (Multi-Protocol
Synchronous Serial Engine). В режиме MPSSE
микросхема может эмулировать интерфейсы SPI, IIC и JTAG или служить в качестве загрузчика конфигурации в ПЛИС Altera или
Xilinx. В качестве примера реализации загрузчика конфигурации ПЛИС компания FTDI
предлагает модуль DLP FPGA на базе FPGA
Xilinx и микросхемы FT2232D.
Хост-контроллер USB — Vinculum — представляет собой законченное аппаратно-программное решение. Данный чип может выполнять функции хост-контроллера и периферийного устройства с поддержкой режимов
full- и low-speed. Он не поддерживает спецификацию OTG, то есть не может динамически менять свою функциональную роль на шине. Функциональное назначение двух портов
USB микросхемы и поддерживаемые классы
USB-устройств задаются программой, загруженной в контроллер. Интерфейс, по которому происходит управление микросхемой
VNC1, программируемый и может быть сконфигурирован как SPI, UART или 8-разрядный
параллельный. Специалисты FTDI разработали несколько вариантов программного обеспечения для хост-контроллера VNC1, позволяющего работать с USB-устройствами разных классов. Все версии ПО находятся
в свободном доступе на веб-сайте производителя. При необходимости добавить к существующим версиям ПО Vinculum дополнительные функции программисты компании FTDI
готовы модифицировать софт. Обозначение
вариантов ПО и классы поддерживаемых ими
USB-устройств перечислены в таблице.
Таблица. Типы поддерживаемых хост-контроллером USB-устройств
Программное обеспечение |
BOMS1 | Мосты FTDI | HID | Принтер | Концентратор (HUB) |
ПК (хост) | Монитор | CDC2 | ||||||||
Номер порта | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 | 1 | 2 |
VDAP | * | * | * | * | * | * | * | * | * | * | * | |||||
VDIF | * | * | * | * | * | |||||||||||
VMSC | * | * | * | * | * | * | ||||||||||
VDPS | * | * | * | * | * | * | ||||||||||
VCDC | * | * | * | * | * | * | * | |||||||||
VDFC | * | * |
Примечания. 1) BOMS — Bulk Only Mass Storage. Устройства хранения данных, поддерживающие режим обмена по USB типа bulk. 2) CDC — Communication devices class. |
В качестве примера рассмотрим две из перечисленных в таблице версий ПО:
- VDFC — на базе данной программы можно реализовать готовое функционально-законченное устройство, предназначенное для
перезаписи информации с одного носителя информации на другой (рис. 4). Например, такое устройство может помочь переписать информацию с цифрового фотоаппарата на USB флэш-диск без помощи
компьютера. - С помощью программы VDAP и хост-контроллера Vinculum в разрабатываемое приложение можно добавить возможность работы с USB флэш-дисками, принтерами,
мостами FTDI, USB-устройствами классов
HID и CDC (рис. 5).
При разработке изделия на базе микроконтроллера Vinculum следует обратить
внимание на то, что хост-контроллеры поставляются незапрограммированными. Первичное программирование осуществляется
только по интерфейсу UART. Если Vinculum
предполагается программировать в составе
изделия, необходимо предусмотреть доступ
к интерфейсу UART на плате. Альтернативным способом программирования является использование программатора VPROG1,
поставляемого производителем. В данном
случае хост-контроллер программируется
до установки на плату. Для перепрошивки
или обновления программного обеспечения
контроллера может использоваться USB
флэш-диск. Новая версия ПО помещается
в корневой каталог диска и автоматически
загружается в ПЗУ VNC1L при подключении диска.
В начале 2009 года компания FTDI объявила о начале производства аппаратных
мостов USB-UART/FIFO 5-го поколения.
Новые микросхемы поддерживают спецификацию USB 2.0 и рассчитаны на работу
в высокоскоростном режиме (hi-speed).
На момент выхода данной статьи микросхемы уже должны быть запущены в серийное
производство.
Новинки представлены двумя версиями — FT4232H и FT2232H. Обе микросхемы выполнены в 64-выводных корпусах типа QFN
и LQFP, рассчитаны на напряжение питания
3,3 В и рабочий температурный диапазон
от –40 до +80 °С. Конфигурация микросхем,
дескрипторы USB, VID и PID хранятся во
внешней EEPROM, в качестве которой может
быть использована микросхема AT93C46/56/66
фирмы Atmel. Если питание микросхем осуществляется от шины USB, в схеме требуется использовать регулятор напряжения на
3,3 В, например LP38693MP-3.3 производства National Semiconductor.
Микросхема FT2232H представляет собой 2-канальный аппаратный мост (рис. 6).
Каждый канал включает буферную память
на прием и передачу по 4 кбайта и интерфейсный контроллер. Последний может работать как последовательный (UART) или
8-разрядный параллельный интерфейс,
или в режиме MPSSE. Параллельный интерфейс имеет несколько вариантов конфигурации, основными из которых можно назвать синхронный или асинхронный FIFO
и bit-bang. В режиме MPSSE могут быть
эмулированы различные последовательные
интерфейсы, например, SPI, JTAG и IIC,
или реализован интерфейс для загрузки
конфигурации в ПЛИС Altera или Xilinx.
Для интерфейсов SPI, JTAG и IIC компания
FTDI предоставляет готовые библиотеки
верхнего уровня. Данные режимы работы
требуют использования D2xx-драйвера. Использование микросхем в качестве загрузчиков для ПЛИС аналогичное, как и в слу
чае FT2232D.
Скорость обмена зависит от выбора выходного интерфейса. В режиме UART скорость
каждого канала может достигать 12 Мбод.
В режиме MPSSE — до 30 Мбит/с. Для синхронного параллельного интерфейса FIFO
можно получить скорость более 25 Мбайт/с,
в данном режиме доступен только один канал микросхемы.
Четырехканальный мост FT4232H, в отличие от FT2232H, менее функционален
с точки зрения конфигурации выходных
интерфейсов. Каждый канал может работать в режиме UART, два канала из четырех
могут работать в режиме MPSSE. Каждый
из каналов конфигурируется и работает независимо друг от друга. По скорости обмена микросхема идентична по характеристикам FT2232H в соответствующих режимах работы.
Для тестирования возможностей новых
микросхем FTDI предлагает готовые модули
“FT4232H Mini Module” и “FT2232H Mini
Module” (рис. 7). Оба модуля выполнены
в одинаковом форм-факторе. Два 26-выводных штыревых разъема модуля предназначены для подключения модуля к целевой плате, стандартный 5-контактный разъем USB
mini B используется для подключения к USB-порту компьютера с помощью стандартного
USB-кабеля. Модуль готов к работе сразу после установки и настройки соответствующих
драйверов. Следует обратить внимание, что
при использовании самоустанавливающейся версии драйвера модуль подключается
к компьютеру только после установки.
Компания FTDI специализируется в разработке решений для USB. Она предлагает полностью готовые решения, используя которые,
можно не задумываться о драйверах и тонкостях аппаратной и программной реализации
USB. На базе микросхем FTDI, аппаратных мостах и хост-контроллере Vinculum реализация
USB-интерфейса займет считаное время.
Для всех микросхем выпускаются недорогие
отладочные модули, с помощью которых можно быстро собрать и протестировать макет. Все
новые микросхемы, начиная с FT232/245R,
рассчитаны на работу в температурном диапазоне от –40 до +80 °С. Легкость в освоении
и разработке — ключевая особенность всей
продукции FTDI. Если необходим интерфейс
USB, микросхемы FTDI помогут реализовать
его с максимальной быстротой.