double arrow

Последовательная шина USB


Специализированные устройства сбора данных, например скоростные платы аналого-цифровых и цифро-аналоговых преобразователей производства Texas Instruments, Sun Dance или московской фирмы ЗАО «Инструментальные системы», используют для передачи данных FireWire и USB 2.0. Применение этих шин обусловлено тем, что устройства сбора данных, применяемые в связи, технике, промышленных и научных измерениях часто необходимо для предотвращения помех расположить как можно дальше от компьютера и как можно ближе к датчику, показания которого снимаются устройством. При этом нередко требуются достаточно высокие скорости передачи данных, такие как, например, в случае 14-битного АЦП, работающего с частотой 100 МГц.

Шина USB была предложена в качестве замены имеющимся в компьютерах СОМ и LPT портам. Современные варианты LPT портов способны передавать до 24 Мбит/с, скорость передачи последовательных СОМ портов не более 115 кбит/с. Шина USB изначально разрабатывалась с учетом того, что программное обеспечение должно самостоятельно определять какой драйвер следует использовать для работы с каждым вновь подключаемым устройством. Это особенно важно с учетом того, что устройства могут подключаться и отключаться на ходу к различным портам компьютера.




В настоящее время существуют 2 версии стандарта USB: USB 1.0 и USB 2.0, который совместим обратно с USB 1.0. Максимальная скорость передачи данных USB 1.0 равна 12 Мбит/с, USB 2.0 обеспечивает скорость передачи 480 Мбит/с. Существует еще тип так называемых медленных USB устройств, которые могут работать на скорости до 1,5 Мбит/с. Для работы шины в целом, обеих версий стандарта, необходимым элемент является хост – центральный компьютер.

В шине USB сигнал и питание передаются по четырехпроводному кабелю, показанному на рис. 2.9. Передача сигналов происходит по двум проводам и только от точки к точке. Сигналы в каждом сегменте являются дифференциальными и передаются по кабелю с импедансом 90 Ом. Чтобы обеспечивать гарантируемые входные уровни напряжения и соответствующий импеданс, используются согласующие сопротивления на каждом конце кабеля. Максимальная длина кабеля 5 м. Чувствительность дифференциального приемника шинных сигналов не менее 200 мВ.

Рис. 2.9. USB Кабель

Сигнальные провода обычно выполнены в виде экранированной витой пары.

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

Передача любых пакетов в шине USB происходит только «по команде сверху» (устройство, получившее Token-пакет от хоста, может передать данные в шину), поэтому даже для обнаружения таких асинхронных событий как подсоединение и отсоединение устройств используется опрос центральным узлом (хостом, роль которого обычно выполняет PC) всех HUB-устройств имеющихся на шине. Для единообразия считается, что хост содержит так называемый корневой HUB (root HUB), управление которым происходит примерно, так же как и HUB-устройствами, подключенными снаружи.



Шина USB соединяет устройства с хостом. На физическом уровне топология USB представляется в виде многоуровневой звезды. В центре каждой звезды находится концентратор (hub). Каждый сегмент провода - двухточечное соединение между хостом и концентратором или устройством, или концентратором соединенным с другим концентратором или устройством. Топология шины USB показана на рис. 2.10.

Рис. 2.10. Пример топологии шины USB

Отличием корневого HUB, может быть в частности то, что он может логически объединять в себе корневые узлы нескольких шин USB (соответственно с максимально возможным числом подключаемых к каждой шине устройств равным 127). Для каждой такой шины назначение 7-битных адресов устройствам происходит раздельно. Объединенные таким образом шины нередко поддерживают разные версии стандарта (USB 1.0 и USB 2.0), что не мешает прикладным программам и драйверам при необходимости воспринимать их как единое целое.

Шина с использованием промежуточных HUB позволяет соединять устройства, удаленные от компьютера на расстояние до 25 м.



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

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

Рис. 2.11. Кодирование NRZI

Кодирование NRZI добавляет ноль после каждых встретившихся последовательно единиц. Для USB это особенно важно, так как сигналы предаются по одному двухпроводному каналу, а канал для передачи строба отсутствует. Для генерации контрольной суммы для данных и token используются 2 различных полинома.

Передача данных происходит в полудуплексном режиме с использованием трех состояний, как правило, ТТЛ логики. Приемные цепи измеряют дифференциальное напряжение на сигнальной паре проводов относительно локальной земли. Максимальная допустимая емкость линий относительно земли составляет порядка 10 пФ, время нарастания фронта импульса около 5 нс. Напряжения сигнала достигает 3,8 В. Передающие цепи не должны выходить из строя, в случае если другая передающая цепь так же приложит такое напряжение к сигнальной паре проводов.







Сейчас читают про: