Как начинался компьютер
Компьютерная революция
Двоичный код
Разработки военных лет
Интегральные микросхемы
Микрокомпьютер
Персоны
Сеть
Язык компьютера
Развитие ПО
Гибкие системы
Средства разработки
Информатика
Вычислительная наука
Операционные системы
Искусственный интеллект
Предыстория
Поиск
Знания и рассуждения
Логика
Робототехника
 

 
Universal Serial Bus Печать

Начнем с нашего "первопроходца" – USB. Аббревиатура USB (Universal Serial Bus) может быть расшифрована и переведена как "универсальная последовательная шина", из чего явно следует, что передача данных через этот интерфейс происходит последовательно. Но прежде чем углубляться в особенности работы быстро пройдемся по его основным периодам развития и внедрения.

USB ведет свою историю с первой половины 90-х годов прошлого века. Предварительные версии стандарта были выпущены еще в 1994 году, то есть даже до выхода Windows 95. Тем не менее, завершили его к началу 1996 года – 1 января была представлена финальная спецификация USB 1.0.

В разработке участвовали (и участвуют) крупнейшие компании IT-индустрии. В частности Intel разработала UHCI (Universal Host Controller Interface), Microsoft обеспечила программную поддержку нового интерфейса в Windows, а Philips сделала возможным увеличение числа разъемов USB за счет хабов.

По-настоящему массовое внедрение USB началось с широким распространением корпусов и системных плат форм-фактора ATX примерно в 1997-1998 годах. Не упустила шанс воспользоваться достижениями прогресса и компания Apple, представившая 6 мая 1998 года свой первый iMac, также оснащенный поддержкой USB.

Как это часто бывает первая версия USB имела некоторые проблемы совместимости и содержала несколько ошибок в реализации. В итоге ноябрь 1998 года озарился выходом спецификаций USB 1.1. Как и в случае с Bluetooth, именно данная версия стала наиболее распространенной. До выхода USB 2.0 конечно.

Спецификация USB 2.0 была представлена в апреле 2000 года. Но до принятия ее в качестве стандарта прошло больше года. После этого началось массовое внедрение второй версии универсальной последовательной шины. Главным ее достоинством было 40-кратное увеличение скорости передачи данных. Но кроме этого были и другие нововведения. Так появились новые типы разъемов Mini-B и Micro-USB, добавилась поддержка технологии USB On-The-Go (позволяет USB-устройствам вести обмен данными между собой без участия USB-хоста), появилась возможность использования напряжения, подаваемого через USB, для зарядки подключенных устройств, а также некоторые другие.

Совсем недавно было объявлено о разработке USB 3.0. Не сложно догадаться, что его главная "фишка" будет заключаться в очередном повышении скорости обмена данными. Она вырастит в 10 раз в сравнении с USB 2.0.

Теперь подробнее о том, как работает шина USB. Все начинается с так называемого USB-хоста. К нему сходятся данные от подключенных устройств и он же обеспечивает взаимодействие с компьютером. Все устройства подключаются по топологии "звезда". Чтобы увеличить число активных разъемов USB можно воспользоваться USB-хабами. Таким образом получится аналог логической структуры "дерево". "Ветвей" у такого дерева может быть до 127 штук на один хост-контроллер, а уровень вложенности USB-хабов не должен превышать пяти. Кроме того, в одном USB-хосте может быть несколько хост-контроллеров, что пропорционально увеличивает максимальное число подключенных устройств.

Хабы бывают двух видов. Одни просто увеличивают число USB-разъемов в одном компьютере, а другие позволяют подключать несколько компьютеров. Второй вариант позволяет использовать нескольким системам одни и те же устройства. Например, вместо покупки дорого сетевого принтера можно приобрести обычный с интерфейсом USB, подключить его к такому специальному хабу, после чего печатать на нем смогут все подсоединенные к хабу ПК. В зависимости от хаба переключение может производится как вручную, так и автоматически.

Одно физическое устройство, подключенное через USB, может логически подразделяться на "под-устройства", выполняющие те или иные определенные функции. Например, сегодня фотопринтер может быть оснащен карт-ридером. Таким образом одно под-устройство печатает, а второе — считывает информацию с карт памяти. Либо же у веб-камеры может быть встроенные микрофон — получается, что у нее два под-устройства: для передачи аудио и видео.

Передача данных происходит через специальные логические каналы. Каждому USB-устройству может быть выделено до 32 каналов (16 на прием и 16 на передачу). Каждый канал подключается к условно называемой "конечной точке". Конечная точка может либо принимать данные, либо передавать их, но не способна делать это одновременно. Группа конечных точек, необходимых для работы какой-либо функции, называется интерфейсом. Исключение составляет "нулевая" конечная точка, предназначающаяся для конфигурации устройства.

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

Углубляться в особенности определения типа подключенного устройства мы не станем. Согласитесь, ведь это мало кого волнует. Главное, чтобы нашелся разъем USB. А если такой есть, то значит и с подключением проблем возникнуть не должно. Давайте лучше разберем режимы работы универсальной последовательной шины. Пока их три, но скоро будет четыре.

  • Low Speed. Поддерживается стандартами версии 1.1 и 2.0. Пиковая скорость передачи данных — 1.5 Мбит/с (187.5 Кбайт/с). Чаще всего применяется для HID-устройств (клавиатур, мышей, джойстиков).
  • Full Speed. Поддерживается стандартами версии 1.1 и 2.0. Пиковая скорость передачи данных — 12 Мбит/с (1.5 Мбайт/с). До выхода USB 2.0 был наиболее быстрым режимом работы.
  • Hi-Speed. Поддерживается стандартом версии 2.0 (в перспективе и 3.0). Пиковая скорость передачи данных — 480 Мбит/с (60 Мбайт/с).
  • Super-Speed. Поддерживается стандартом версии 3.0. Пиковая скорость передачи данных — 4.8 Гбит/с (600 Мбайт/с).

Зачем нужны столь высокие скорости для USB версии 2.0 и тем более 3.0? Если разобраться, то весьма ограниченное число устройств может загрузить такой широкий канал, но они все же есть. В первую очередь это современные жесткие диски. В среднем скорость чтения настольных 3.5-дюймовых моделей составляет порядка 80-85 Мбайт/с, а если взять какой-нибудь внешний RAID-массив от LaCie, то это значение смело можно увеличить на 30-40%. Но для жестких дисков придуман eSATA, о котором речь идет дальше.

Оптическим приводам пока хватает USB 2.0, хотя с ростом скоростей Blu-ray накопителей эта ситуация может измениться. И третий тип скоростных устройств — флэш-память. Пока USB-флэшки редко работают на скоростях выше 30 Мбайт/с, но этот показатель постоянно растет. Заметим также, что 60 Мбайт/с — это теоретическое пиковое значение. На практике скорость передачи данных редко превышает 53-54 Мбайт/с. В этом свете выход USB 3.0 становится вполне обоснованным.

Немаловажное значение имеют и электрические характеристики интерфейса USB. По спецификации его рабочее напряжение составляет 5 В ±5%. При этом сила тока может составлять от 2 до 500 мА. При подключении устройства через хаб, поддерживающий передачу питания, сила тока может составлять не более 100 мА и не более 400 мА на хаб. Поэтому такие хабы имеют не более четырех разъемов. Так что не удивляйтесь проблемам работы той или иной флэшки, либо другого устройства, подключенного к компьютеру через хаб — ему (устройству) банально может не хватить электричества.

В последнее время были приняты спецификации USB On-The-Go и Battery Charging Specification. Повторимся, что первая позволяет вести обмен данными между USB-устройствами без участия хост-контроллера, а вторая обеспечивает зарядку аккумуляторов через шину USB. Само собой на это требуется дополнительная энергия. В итоге самые последние версии контроллеров способны обеспечить силу тока до 1.5 А.

Но это еще не предел. Для самых "суровых" пользователей существует дополнение PoweredUSB, также известное как Retail USB, USB PlusPower и USB +Power. Оно обеспечивает силу тока до 6 А, а напряжение может быть 5, 12 или 24 В. При этом используется другая, нестандартная, версия разъема, позволяющая передавать больше энергии. Кстати, о разъемах. Надо разобраться и с ними.

Существует пять видов USB-разъемов:

Слева направо: micro USB, mini USB, B-type, A-type разъем, A-type коннектор

  • micro USB — используется в самых миниатюрных устройствах вроде плееров и мобильных телефонов;
  • mini USB — также часто обнаруживается на плеерах, мобильных телефонах, а заодно и на цифровых фотоаппаратах, КПК и тому подобных устройствах;
  • B-type — полноразмерный разъем, устанавливаемый в принтерах, сканерах и других устройствах, где размер не имеет очень принципиального значения;
  • A-type (приемник) — разъем, устанавливаемый в компьютерах (либо на удлинителях USB), куда подключается коннектор типа A-type;
  • A-type (вилка) — коннектор, подключаемый непосредственно к компьютеру в соответствующий разъем.

И немного о кабелях (те, которые длинные и из проводов, а не живые, волосатые и постоянно гавкают). Максимальная длина USB-кабеля может составлять 5 метров. Данное ограничение введено для снижения времени отклика устройства. Хост-контроллер ожидает поступление данных ограниченное время, и если они задерживаются, то соединение может быть потеряно.

В качестве основного материала стандартного USB-кабеля используется витая пара, чтобы снизить помехи. Но для обеспечения скоростей 4.8 Гбит/с, которые нам наобещали с приходом USB 3.0, потребуется использовать специальные кабеля. В них для передачи данных будут использоваться две пары проводов, вместо одной, а максимальная длина не сможет превысить 3 метра. Также стандартом предусмотрена поддержка оптоволоконных кабелей, которые позволят передавать информацию на большее расстояние с такой же скоростью, но из-за более высокой стоимости они определенно получат меньшее распространение.