Универсальная последовательная шина ( USB ) — это отраслевой стандарт , который обеспечивает обмен данными и передачу энергии между многими типами электроники. Он определяет его архитектуру, в частности его физический интерфейс , а также протоколы связи для передачи данных и подачи питания к хостам , таким как персональные компьютеры , и от них к периферийным устройствам , например дисплеям, клавиатурам и устройствам хранения данных, а также к и от них. промежуточные хабы , которые умножают количество портов хоста. [2]
Изначально USB был разработан для стандартизации подключения периферийных устройств к компьютерам, заменяя различные интерфейсы, такие как последовательные порты , параллельные порты , игровые порты и порты ADB . [3] Предыдущие версии USB стали обычным явлением на широком спектре устройств, таких как клавиатуры, мыши, камеры, принтеры, сканеры, флэш-накопители, смартфоны, игровые консоли и блоки питания. [4] Он превратился в стандарт, заменяющий практически все распространенные порты на компьютерах, мобильных устройствах, периферийных устройствах, источниках питания и множестве другой мелкой электроники.
В текущем стандарте разъем USB-C заменяет множество различных разъемов для питания (до 240 Вт), дисплеев (например, DisplayPort, HDMI) и многих других целей, а также все предыдущие разъемы USB.
По состоянию на 2024 год [обновлять]USB состоит из четырех поколений спецификаций: USB 1.x, USB 2.0, USB 3. x и USB4 . USB4 расширяет возможности передачи данных и подачи питания за счет
туннельная архитектура, ориентированная на соединение, предназначенная для объединения нескольких протоколов в один физический интерфейс, чтобы можно было динамически распределять общую скорость и производительность USB4 Fabric. [2]
USB4, в частности, поддерживает туннелирование протоколов Thunderbolt 3 , а именно PCI Express (PCIe, интерфейс загрузки/сохранения) и DisplayPort (интерфейс дисплея). USB4 также добавляет интерфейсы между хостами. [2]
Каждая подверсия спецификации поддерживает разные скорости передачи сигналов от 1,5 и 12 Мбит/с в сумме в USB 1.0 до 80 Гбит/с (в каждом направлении) в USB4. [5] [6] [7] [2] USB также обеспечивает питание периферийных устройств; последние версии стандарта расширяют пределы подачи мощности для зарядки аккумуляторов и устройств, требующих до 240 Вт ( USB Power Delivery (USB-PD) ). [8] На протяжении многих лет USB(-PD) был принят в качестве стандартного формата питания и зарядки для многих мобильных устройств, таких как мобильные телефоны, что уменьшило потребность в фирменных зарядных устройствах. [9]
USB был разработан для стандартизации подключения периферийных устройств к персональным компьютерам как для обмена данными, так и для подачи электроэнергии. Он в значительной степени заменил такие интерфейсы, как последовательные порты и параллельные порты , и стал обычным явлением для широкого спектра устройств. Примеры периферийных устройств, подключаемых через USB, включают компьютерные клавиатуры и мыши, видеокамеры, принтеры, портативные медиаплееры, мобильные (портативные) цифровые телефоны, дисководы и сетевые адаптеры.
USB-разъемы все чаще вытесняют другие типы в качестве зарядных кабелей портативных устройств.
Интерфейсы разъемов USB делятся на три типа: множество различных устаревших разъемов типа A (восходящий поток) и типа B (нисходящий поток), которые можно найти на хостах , концентраторах и периферийных устройствах ; и современный разъем Type-C ( USB-C ) (который с 2014 года начинает заменять все многие устаревшие разъемы и является единственным применимым разъемом для USB4).
Разъемы Type-A и Type-B выпускались в размерах Standard, Mini и Micro. Стандартный формат был самым большим и в основном использовался для настольных компьютеров и более крупного периферийного оборудования. Разъемы Mini-USB (Mini-A, Mini-B, Mini-AB) были представлены для мобильных устройств, но их быстро заменили более тонкие разъемы Micro-USB (Micro-A, Micro-B, Micro-AB). Разъем Type-C, также известный как USB-C , не является эксклюзивным для USB, является единственным действующим стандартом для USB, требуется для USB4, а также требуется для других стандартов, включая современные DisplayPort и Thunderbolt. Он двусторонний и может поддерживать различные функции и протоколы, включая USB; некоторые из них являются обязательными, многие — необязательными, в зависимости от типа оборудования: хост, периферийное устройство или концентратор. [10] [11]
Спецификации USB обеспечивают обратную совместимость, но это обычно приводит к снижению скорости передачи сигналов, максимальной предлагаемой мощности и других предоставляемых возможностей. Спецификация USB 1.1 заменяет USB 1.0. Спецификация USB 2.0 обратно совместима с USB 1.0/1.1. Спецификация USB 3.2 заменяет USB 3.1 (и USB 3.0), а также включает спецификацию USB 2.0. USB4 «функционально заменяет» USB 3.2, сохраняя при этом шину USB 2.0, работающую параллельно. [5] [6] [7] [2]
Спецификация USB 3.0 определила новую архитектуру и протокол под названием SuperSpeed (также известный как SuperSpeed USB , продаваемый как SS ), который включал новую линию для новой схемы кодирования сигнала (символы 8b/10b, 5 Гбит/с; также известный как Gen 1 ), обеспечивающую полнодуплексная передача данных, для которой физически требовалось пять дополнительных проводов и контактов, при этом сохранялась архитектура и протоколы USB 2.0 и, следовательно, сохранялись исходные 4 контакта/провода для обратной совместимости USB 2.0, в результате чего получалось 9 проводов (с 9 или 10 контактами на разъеме). интерфейсы ID-пин не распаян) всего.
Спецификация USB 3.1 представила улучшенную систему SuperSpeed — при сохранении архитектуры и протокола SuperSpeed ( SuperSpeed USB ) — с дополнительной архитектурой и протоколом SuperSpeedPlus (также известной как SuperSpeedPlus USB ), добавляющей новую схему кодирования (символы 128b/132b, 10 Гбит/с; также известная как поколение 2 ); в течение некоторого периода времени продавался как SuperSpeed+ ( SS+ ).
Спецификация USB 3.2 [7] добавила вторую полосу к Enhanced SuperSpeed System, помимо других усовершенствований, так что системная часть SuperSpeedPlus USB реализует режимы работы Gen 1×2 , Gen 2×1 и Gen 2×2 . Однако часть системы SuperSpeed USB по-прежнему реализует однополосный режим работы Gen 1×1 . Таким образом, двухканальные операции, а именно USB 3.2 Gen 1× 2 (10 Гбит/с) и Gen 2× 2 (20 Гбит/с), возможны только с полнофункциональным USB-C. По состоянию на 2023 год они реализуются довольно редко; Intel, однако, начинает включать их в свои модели процессоров SoC 11-го поколения, но Apple их так и не предоставила. С другой стороны, USB 3.2 Gen 1(×1) (5 Гбит/с) и Gen 2(×1) (10 Гбит/с) довольно распространен в течение нескольких лет.
Каждое USB-соединение осуществляется с помощью двух разъемов: розетки и вилки . На фотографиях показаны только розетки:
Универсальная последовательная шина была разработана для упрощения и улучшения интерфейса между персональными компьютерами и периферийными устройствами, такими как сотовые телефоны, компьютерные аксессуары и мониторы, по сравнению с ранее существовавшими стандартными или специальными проприетарными интерфейсами. [12]
С точки зрения пользователя компьютера интерфейс USB упрощает использование несколькими способами:
Стандарт USB также предоставляет множество преимуществ производителям оборудования и разработчикам программного обеспечения, в частности, в относительной простоте реализации:
Как и все стандарты, USB имеет множество ограничений в своей конструкции:
Для разработчика продукта использование USB требует реализации сложного протокола и подразумевает наличие «интеллектуального» контроллера в периферийном устройстве. Разработчики USB-устройств, предназначенных для публичной продажи, обычно должны получить USB-идентификатор, для чего им необходимо заплатить взнос Форуму разработчиков USB (USB-IF). Разработчики продуктов, использующих спецификацию USB, должны подписать соглашение с USB-IF. Использование логотипов USB на продукте требует ежегодной оплаты и членства в организации. [12]
Группа из семи компаний начала разработку USB в 1995 году: [16] Compaq , DEC , IBM , Intel , Microsoft , NEC и Nortel . Цель заключалась в том, чтобы существенно упростить подключение внешних устройств к ПК за счет замены множества разъемов на задней панели ПК, решения проблем с удобством использования существующих интерфейсов и упрощения настройки программного обеспечения всех устройств, подключенных к USB, а также обеспечения большего скорость передачи данных для внешних устройств и функции Plug and Play . [17] Аджай Бхатт и его команда работали над стандартом в Intel; [18] [19] первые интегральные схемы с поддержкой USB были произведены Intel в 1995 году. [20]
Выпущенный в январе 1996 года, USB 1.0 указал скорость передачи сигналов 1,5 Мбит/с ( низкая полоса пропускания или низкая скорость ) и 12 Мбит/с ( полная скорость ). [21] Использование удлинительных кабелей не допускалось из-за ограничений по времени и мощности. Лишь немногие USB-устройства появились на рынке до тех пор, пока в августе 1998 года не был выпущен USB 1.1. USB 1.1 был самой ранней версией, которая получила широкое распространение и привела к тому, что Microsoft назвала « ПК без устаревших версий ». [22] [23] [24]
Ни в USB 1.0, ни в 1.1 не указана конструкция любого разъема меньше стандартного типа A или типа B. Хотя многие конструкции миниатюрного разъема типа B появлялись на многих периферийных устройствах, соответствие стандарту USB 1. x было затруднено из-за рассмотрения периферийных устройств, которые имели миниатюрные разъемы, как если бы они имели привязанное соединение (то есть: на периферийном конце нет вилки или розетки). Не было известного миниатюрного разъема типа A до тех пор, пока он не появился в USB 2.0 (версия 1.01).
USB 2.0 был выпущен в апреле 2000 года, в дополнение к сигнализации USB 1.x Full Speed была добавлена более высокая максимальная скорость передачи данных 480 Мбит/с (максимальная теоретическая пропускная способность данных 53 МБит/с [25] ), названная High Speed или High Bandwidth . скорость 12 Мбит/с (максимальная теоретическая пропускная способность 1,2 МБ/с). [26]
Изменения в спецификации USB были внесены посредством уведомлений о технических изменениях (ECN). Наиболее важные из этих ECN включены в пакет спецификаций USB 2.0, доступный на USB.org: [27]
Спецификация USB 3.0 была выпущена 12 ноября 2008 года, управление ею перешло от группы промоутеров USB 3.0 к Форуму разработчиков USB (USB-IF) и было объявлено 17 ноября 2008 года на конференции разработчиков SuperSpeed USB. [29]
USB 3.0 добавляет новую архитектуру и протокол под названием SuperSpeed с соответствующими обратно совместимыми вилками, розетками и кабелями. Вилки и розетки SuperSpeed обозначены отчетливым логотипом и синими вставками в розетках стандартного формата.
Архитектура SuperSpeed предусматривает режим работы на скорости 5,0 Гбит/с в дополнение к трем существующим режимам работы. Его эффективность зависит от ряда факторов, включая физическое кодирование символов и накладные расходы на канальном уровне. При скорости передачи сигналов 5 Гбит/с с кодировкой 8b/10b для передачи каждого байта требуется 10 бит, поэтому необработанная пропускная способность составляет 500 МБ/с. Если принять во внимание управление потоком, формирование пакетов и накладные расходы протокола, то вполне реально передать приложению около двух третей исходной пропускной способности, или 330 МБ/с. [30] : 4–19 Архитектура SuperSpeed является полнодуплексной ; все более ранние реализации, USB 1.0–2.0, являются полудуплексными и управляются хостом. [31]
Устройства малой и высокой мощности продолжают работать с этим стандартом, но устройства, реализующие SuperSpeed, могут обеспечивать увеличенный ток от 150 до 900 мА с дискретными шагами по 150 мА. [30] : 9–9
USB 3.1 , выпущенный в июле 2013 года, имеет два варианта. Первая версия сохраняет архитектуру и протокол SuperSpeed USB 3.0 , а ее режим работы получил новое название USB 3.1 Gen 1 , [32] [33] , а вторая версия представляет совершенно новую архитектуру и протокол SuperSpeedPlus со вторым режимом работы, называемым USB. 3.1 Gen 2 (продается как SuperSpeed+ USB ). SuperSpeed+ удваивает максимальную скорость передачи сигналов до 10 Гбит/с (позже продаваемую как SuperSpeed USB 10 Гбит/с в соответствии со спецификацией USB 3.2), одновременно сокращая накладные расходы на кодирование строк всего до 3% за счет изменения схемы кодирования на 128b/132b . [32] [34]
USB 3.2 , выпущенный в сентябре 2017 года, [35] сохраняет существующие архитектуры и протоколы USB 3.1 SuperSpeed и SuperSpeedPlus , а также соответствующие им режимы работы, но вводит два дополнительных режима работы SuperSpeedPlus ( USB 3.2 Gen 1x2 и USB 3.2 Gen 2x2 ) с новым интерфейсом USB- C Fabric со скоростями передачи сигналов 10 и 20 Гбит/с (номинальные скорости необработанных данных 1212 и 2424 МБ/с). Увеличение пропускной способности является результатом двухполосной работы по существующим проводам, которые изначально предназначались для триггерных возможностей разъема USB-C. [36]
USB 3.0 также представил протокол USB Attached SCSI (UASP) , который обычно обеспечивает более высокую скорость передачи, чем протокол BOT (Bulk-Only-Transfer).
Начиная со спецификации USB 3.2, USB-IF представил новую схему именования. [37] Чтобы помочь компаниям в брендинге различных режимов работы, USB-IF рекомендовал маркировать возможности 5, 10 и 20 Гбит/с как SuperSpeed USB 5 Гбит/ с , SuperSpeed USB 10 Гбит/с и SuperSpeed USB 20 Гбит/ с соответственно. [38]
Спецификация USB4 была опубликована 29 августа 2019 года Форумом разработчиков USB. [39]
Спецификация USB4 2.0 была выпущена 1 сентября 2022 года Форумом разработчиков USB. [40]
USB4 основан на протоколе Thunderbolt 3 . [41] Он поддерживает пропускную способность 40 Гбит/с, совместим с Thunderbolt 3 и обратно совместим с USB 3.2 и USB 2.0. [42] [43] Архитектура определяет метод динамического совместного использования одного высокоскоростного канала несколькими типами конечных устройств, который наилучшим образом обеспечивает передачу данных по типу и приложению.
В спецификации USB4 указано, что USB4 должен поддерживать следующие технологии: [39]
Во время выставки CES 2020 USB-IF и Intel заявили о своем намерении разрешить продукты USB4, которые поддерживают все дополнительные функции, как продукты Thunderbolt 4 .
Из-за предыдущих запутанных схем именования USB-IF решил еще раз изменить их. По состоянию на 2 сентября 2022 года маркетинговые названия имеют синтаксис «USB x Гбит/с», где x — скорость передачи данных в Гбит/с. [44] Обзор обновленных названий и логотипов можно увидеть в соседней таблице.
Режимы работы USB 3.2 Gen 2×2 и USB4 Gen 2×2 – или: USB 3.2 Gen 2×1 и USB4 Gen 2×1 – не являются взаимозаменяемыми или совместимыми; все участвующие контроллеры должны работать в одном и том же режиме.
Система USB состоит из хоста с одним или несколькими нисходящими портами (DFP) [52] и множеством периферийных устройств, образующих многоуровневую топологию звезды . Могут быть включены дополнительные USB-концентраторы , что позволяет использовать до пяти уровней. USB-хост может иметь несколько контроллеров, каждый из которых имеет один или несколько портов. К одному хост-контроллеру можно подключить до 127 устройств. [53] [30] : 8–29 USB-устройств соединены последовательно через концентраторы. Концентратор, встроенный в хост-контроллер, называется корневым концентратором .
USB-устройство может состоять из нескольких логических подустройств, которые называются функциями устройства . Составное устройство может выполнять несколько функций, например веб-камера (функция видеоустройства) со встроенным микрофоном (функция аудиоустройства). Альтернативой этому является составное устройство , в котором хост назначает каждому логическому устройству отдельный адрес, и все логические устройства подключаются к встроенному концентратору, который подключается к физическому кабелю USB.
Связь с USB-устройствами основана на каналах (логических каналах). Канал — это соединение хост-контроллера с логическим объектом внутри устройства, называемым конечной точкой . Поскольку каналы соответствуют конечным точкам, эти термины иногда используются как синонимы. Каждое USB-устройство может иметь до 32 конечных точек (16 входов и 16 выходов ), хотя такое количество встречается редко. Конечные точки определяются и нумеруются устройством во время инициализации (период после физического соединения, называемый «перечислением») и поэтому являются относительно постоянными, тогда как каналы можно открывать и закрывать.
Существует два типа каналов: поток и сообщение.
Когда хост начинает передачу данных, он отправляет пакет TOKEN, содержащий конечную точку, указанную кортежем ( device_address , endpoint_number) . Если передача осуществляется от хоста к конечной точке, хост отправляет пакет OUT (специализация пакета TOKEN) с желаемым адресом устройства и номером конечной точки. Если передача данных осуществляется от устройства к хосту, хост вместо этого отправляет IN-пакет. Если конечная точка назначения является однонаправленной конечной точкой, направление, назначенное производителем, не соответствует пакету TOKEN (например, назначенное производителем направление IN, а пакет TOKEN является пакетом OUT), пакет TOKEN игнорируется. В противном случае он будет принят, и транзакция данных может начаться. С другой стороны, двунаправленная конечная точка принимает пакеты IN и OUT.
Конечные точки сгруппированы в интерфейсы , и каждый интерфейс связан с одной функцией устройства. Исключением является нулевая конечная точка, которая используется для настройки устройства и не связана ни с каким интерфейсом. Единая функция устройства, состоящая из независимо управляемых интерфейсов, называется составным устройством . Составное устройство имеет только один адрес устройства, поскольку хост назначает функции только адрес устройства.
Когда USB-устройство впервые подключается к USB-хосту, запускается процесс перечисления USB-устройств. Перечисление начинается с отправки сигнала сброса на USB-устройство. Скорость передачи сигналов USB-устройства определяется во время сигнализации сброса. После сброса информация USB-устройства считывается хостом, и устройству присваивается уникальный 7-битный адрес. Если устройство поддерживается хостом, загружаются драйверы устройств , необходимые для связи с устройством, и устройство переводится в настроенное состояние. Если USB-хост перезапускается, процесс перечисления повторяется для всех подключенных устройств.
Хост-контроллер направляет поток трафика на устройства, поэтому ни одно USB-устройство не может передавать какие-либо данные по шине без явного запроса от хост-контроллера. В USB 2.0 хост-контроллер опрашивает шину на наличие трафика, обычно в циклическом режиме. Пропускная способность каждого USB-порта определяется более низкой скоростью либо USB-порта, либо USB-устройства, подключенного к порту.
Высокоскоростные концентраторы USB 2.0 содержат устройства, называемые трансляторами транзакций, которые преобразуют высокоскоростные шины USB 2.0 в полноскоростные и низкоскоростные шины. На каждый концентратор или порт может быть один транслятор.
Поскольку на каждом хосте USB 3.0 имеется два отдельных контроллера, устройства USB 3.0 передают и принимают со скоростью сигнала USB 3.0 независимо от того, какие устройства USB 2.0 или более ранних версий подключены к этому хосту. Скорости передачи рабочих сигналов для более ранних устройств устанавливаются традиционным способом.
Функциональность USB-устройства определяется кодом класса, отправленным на USB-хост. Это позволяет хосту загружать программные модули для устройства и поддерживать новые устройства от разных производителей.
Классы устройств включают: [55]
Класс запоминающих устройств USB (MSC или UMS) стандартизирует подключения к устройствам хранения данных. Первоначально предназначенный для магнитных и оптических приводов, он был расширен для поддержки флэш-накопителей и устройств чтения SD-карт . Возможность загрузки SD-карты с блокировкой записи с помощью USB-адаптера особенно выгодна для поддержания целостности и неповрежденного, первозданного состояния загрузочного носителя.
Хотя большинство персональных компьютеров, выпущенных с начала 2005 года, могут загружаться с USB-накопителей, USB не предназначен в качестве основной шины для внутренней памяти компьютера. Однако преимущество USB заключается в возможности горячей замены , что делает его полезным для мобильных периферийных устройств, включая накопители различных типов.
Некоторые производители предлагают внешние портативные жесткие диски USB или пустые корпуса для дисков. Они обеспечивают производительность, сравнимую с внутренними накопителями, но ограничены количеством и типами подключенных USB-устройств, а также верхним пределом интерфейса USB. Другие конкурирующие стандарты подключения внешних накопителей включают eSATA , ExpressCard , FireWire (IEEE 1394) и, совсем недавно, Thunderbolt .
Еще одним применением USB-накопителей является портативное выполнение программных приложений (таких как веб-браузеры и клиенты VoIP) без необходимости их установки на главный компьютер. [59] [60]
Протокол передачи мультимедиа (MTP) был разработан Microsoft для предоставления доступа к файловой системе устройства более высокого уровня, чем USB-накопитель, на уровне файлов, а не дисковых блоков. Он также имеет дополнительные функции DRM . MTP был разработан для использования с портативными медиаплеерами , но с тех пор он был принят в качестве основного протокола доступа к хранилищу операционной системы Android начиная с версии 4.1 Jelly Bean, а также Windows Phone 8 (устройства Windows Phone 7 использовали протокол Zune – эволюция MTP). Основная причина этого заключается в том, что MTP не требует монопольного доступа к устройству хранения, как это делает UMS, что устраняет потенциальные проблемы, если программа Android запросит хранилище, когда оно подключено к компьютеру. Основным недостатком является то, что MTP не так хорошо поддерживается за пределами операционных систем Windows.
USB-мышь или клавиатуру обычно можно использовать со старыми компьютерами, имеющими порты PS/2, с помощью небольшого адаптера USB-PS/2. Для мышей и клавиатур с поддержкой двух протоколов можно использовать пассивный адаптер, не содержащий логических схем : аппаратное обеспечение USB в клавиатуре или мыши предназначено для определения того, подключено ли оно к порту USB или PS/2, и обменивается данными с помощью соответствующий протокол. [ нужна цитата ] Также существуют активные преобразователи, которые подключают USB-клавиатуры и мыши (обычно по одной) к портам PS/2. [61]
Обновление прошивки устройства (DFU) — это универсальный механизм обновления прошивки USB-устройств улучшенными версиями, предоставляемыми их производителями, предлагающий (например) способ развертывания исправлений ошибок прошивки. Во время обновления прошивки USB-устройства меняют свой режим работы, фактически становясь программатором PROM . Любой класс USB-устройств может реализовать эту возможность, следуя официальным спецификациям DFU. Это позволит использовать DFU-совместимые хост-инструменты для обновления устройства. [58] [62] [63]
DFU иногда используется в качестве протокола программирования флэш-памяти в микроконтроллерах со встроенной функцией загрузчика USB. [64]
Рабочая группа по USB-устройствам разработала спецификации для потоковой передачи звука, а также разработала и внедрила конкретные стандарты для использования аудиоклассов, таких как микрофоны, динамики, гарнитуры, телефоны, музыкальные инструменты и т. д. Рабочая группа опубликовала три версии аудио характеристики устройства: [65] [66] USB Audio 1.0, 2.0 и 3.0, называемые «UAC» [67] или «ADC». [68]
UAC 3.0 в первую очередь вводит улучшения для портативных устройств, такие как снижение энергопотребления за счет пакетной передачи данных и более частого пребывания в режиме низкого энергопотребления, а также домены питания для различных компонентов устройства, позволяющие отключать их, когда они не используются. [69]
В UAC 2.0 появилась поддержка высокоскоростного USB (в дополнение к Full Speed), что обеспечивает большую пропускную способность для многоканальных интерфейсов, более высокую частоту дискретизации, [70] меньшую задержку, [71] [67] и 8-кратное улучшение временного разрешения в синхронный и адаптивный режимы. [67] UAC2 также представил концепцию тактовых доменов, которая предоставляет хосту информацию о том, какие входные и выходные терминалы получают свои тактовые сигналы из одного и того же источника, а также улучшенную поддержку аудиокодировок, таких как DSD , аудиоэффектов, кластеризации каналов, пользовательского элементы управления и описания устройств. [67] [72]
Однако устройства UAC 1.0 по-прежнему широко распространены из-за их кроссплатформенной совместимости без драйверов [70] , а также частично из-за того, что Microsoft не смогла внедрить UAC 2.0 в течение более десяти лет после его публикации, наконец добавив поддержку в Windows 10 через Обновление Creators от 20 марта 2017 г. [73] [74] [72] UAC 2.0 также поддерживается macOS , iOS и Linux , [67] однако Android реализует только часть спецификации UAC 1.0. [75]
USB обеспечивает три типа изохронной синхронизации (с фиксированной полосой пропускания), [76] каждый из которых используется аудиоустройствами: [77]
В то время как спецификация USB первоначально описывала асинхронный режим, используемый в «недорогих колонках», и адаптивный режим в «высококлассных цифровых колонках», [81] противоположное мнение существует в мире Hi-Fi , где асинхронный режим рекламируется как функция , а адаптивные/синхронные режимы имеют плохую репутацию. [82] [83] [75] В действительности все типы могут быть качественными или некачественными, в зависимости от качества их разработки и применения. [79] [67] [84] Преимущество асинхронного режима состоит в том, что он не привязан к часам компьютера, но у него есть недостаток: требуется преобразование частоты дискретизации при объединении нескольких источников.
Разъемы, которые определяет комитет USB, соответствуют ряду основных целей USB и отражают уроки, извлеченные из многих разъемов, используемых в компьютерной промышленности. Гнездовой разъем, установленный на хосте или устройстве, называется розеткой , а вилочный разъем, прикрепленный к кабелю, называется вилкой . [30] : 2–5 – 2–6 В официальных документах по спецификациям USB также периодически определяется термин «папа» для обозначения вилки и «мама» для обозначения розетки. [85]
Конструкция предназначена для того, чтобы затруднить неправильную вставку USB-штекера в розетку. Спецификация USB требует, чтобы вилка и розетка кабеля были помечены, чтобы пользователь мог определить правильную ориентацию. [30] Однако разъем USB-C является двусторонним. Кабели USB и небольшие USB-устройства удерживаются на месте за счет силы захвата со стороны розетки без использования винтов, зажимов или поворотов большого пальца, как в некоторых разъемах.
Различные вилки A и B предотвращают случайное подключение двух источников питания. Однако некоторая часть этой направленной топологии теряется с появлением многоцелевых USB-соединений (таких как USB On-The-Go в смартфонах и Wi-Fi-маршрутизаторах с питанием от USB), для которых требуются соединения A-A, B- to-B, а иногда и Y/разветвитель.
Типы USB-разъемов увеличивались по мере развития спецификации. В исходной спецификации USB подробно описаны вилки и розетки стандартов A и B. Разъемы были разными, поэтому пользователи не могли подключить одну компьютерную розетку к другой. Контакты для передачи данных в стандартных разъемах утоплены по сравнению с контактами питания, поэтому устройство может включиться перед установкой соединения для передачи данных. Некоторые устройства работают в разных режимах в зависимости от того, установлено ли соединение для передачи данных. Зарядные док-станции обеспечивают питание и не включают в себя хост-устройство или контакты для передачи данных, что позволяет любому совместимому USB-устройству заряжаться или работать от стандартного USB-кабеля. Зарядные кабели обеспечивают подключение питания, но не передачу данных. В кабеле, предназначенном только для зарядки, провода передачи данных закорочены на конце устройства, в противном случае устройство может отклонить зарядное устройство как непригодное.
Стандарт USB 1.1 определяет, что стандартный кабель может иметь максимальную длину 5 метров (16 футов 5 дюймов) для устройств, работающих на полной скорости (12 Мбит/с), и максимальную длину 3 метра (9 футов 10 дюймов) для устройства, работающие на низкой скорости (1,5 Мбит/с). [86] [87] [88]
USB 2.0 обеспечивает максимальную длину кабеля 5 метров (16 футов 5 дюймов) для устройств, работающих на высокой скорости (480 Мбит/с). [88]
Стандарт USB 3.0 напрямую не определяет максимальную длину кабеля, требуя только, чтобы все кабели соответствовали электрическим характеристикам: для медных кабелей с проводами AWG 26 максимальная практическая длина составляет 3 метра (9 футов 10 дюймов). [89]
На рынке можно найти USB-мосты или кабели для передачи данных, обеспечивающие прямое соединение ПК с ПК. Мостовой кабель представляет собой специальный кабель с чипом и активной электроникой в середине кабеля. Чип в середине кабеля действует как периферийное устройство для обоих компьютеров и обеспечивает одноранговую связь между компьютерами. Кабели USB-моста используются для передачи файлов между двумя компьютерами через их порты USB.
Популяризированная Microsoft под названием Windows Easy Transfer , утилита Microsoft использовала специальный USB-кабель для передачи личных файлов и настроек с компьютера под управлением более ранней версии Windows на компьютер под управлением более новой версии. В контексте использования программного обеспечения Windows Easy Transfer мостовой кабель иногда можно назвать кабелем Easy Transfer .
Многие USB-мосты/кабели для передачи данных по-прежнему относятся к USB 2.0, но существует также ряд кабелей для передачи данных USB 3.0. Несмотря на то, что USB 3.0 в 10 раз быстрее, чем USB 2.0, кабели передачи USB 3.0 работают всего в 2–3 раза быстрее, учитывая их конструкцию. [ нужны разъяснения ]
Спецификация USB 3.0 представила перекрестный кабель A-to-A без питания для соединения двух компьютеров. Они не предназначены для передачи данных, а предназначены для диагностических целей.
Кабели-мосты USB стали менее важными с появлением возможностей USB-устройств двойной роли, представленных в спецификации USB 3.1. Согласно последним спецификациям, USB поддерживает большинство сценариев подключения систем напрямую с помощью кабеля Type-C. Однако для того, чтобы эта возможность работала, подключенные системы должны поддерживать переключение ролей. Возможности двойной роли требуют наличия в системе двух контроллеров, а также контроллера ролей . Хотя этого можно ожидать от мобильной платформы, такой как планшет или телефон, настольные ПК и ноутбуки часто не поддерживают двойную роль. [90]
Восходящие USB-разъемы подают питание с номинальным напряжением 5 В постоянного тока через контакт V_BUS на нижестоящие USB-устройства.
В этом разделе описывается модель распределения питания USB, существовавшая до Power-Delivery (USB-PD). На устройствах, не использующих PD, USB обеспечивает мощность до 7,5 Вт через разъемы Type-A и Type-B и до 15 Вт через USB-C. Все питание USB до PD обеспечивается напряжением 5 В.
Для хоста, обеспечивающего питание устройств, USB имеет концепцию единичной нагрузки . Любое устройство может потреблять мощность одного устройства, а устройства могут запрашивать дополнительную мощность на этих дискретных этапах. Не требуется, чтобы хост предоставлял запрошенную мощность, и устройство не может потреблять больше энергии, чем оговорено.
Устройства, потребляющие не более одной единицы, называются устройствами с низким энергопотреблением . Все устройства должны работать как устройства с низким энергопотреблением при запуске в ненастроенном состоянии. Для устройств USB до USB 2.0 единичная нагрузка составляет 100 мА (или 500 мВт), а для USB 3.0 единичная нагрузка определяется как 150 мА (750 мВт). Полнофункциональный USB-C может поддерживать маломощные устройства с единичной нагрузкой 250 мА (или 1250 мВт).
Устройства, потребляющие более одного блока, являются устройствами высокой мощности (например, типичные 2,5-дюймовые жесткие диски). USB до 2.0 позволяет хосту или концентратору подавать до 2,5 Вт на каждое устройство за пять дискретных шагов по 100 мА, а устройства SuperSpeed (USB 3.0 и выше) позволяют хосту или концентратору обеспечивать до 4,5 Вт за шесть шаг 150 мА. USB-C поддерживает устройства высокой мощности до 7,5 Вт с шестью шагами по 250 мА. Полнофункциональный USB-C может поддерживать мощность до 15 Вт.
Чтобы распознать режим зарядки аккумулятора, специальный порт зарядки устанавливает сопротивление, не превышающее 200 Ом, между клеммами D+ и D-. Закороченные или почти закороченные линии передачи данных с сопротивлением менее 200 Ом на клеммах «D+» и «D-» обозначают выделенный порт зарядки (DCP) с неопределенной скоростью зарядки. [91] [92]
В дополнение к стандартному USB существует запатентованная высокопроизводительная система, известная как PoweredUSB , разработанная в 1990-х годах и в основном используемая в торговых терминалах, таких как кассовые аппараты.
Сигналы USB передаются с использованием дифференциальной передачи данных по витой паре с характеристическим сопротивлением 90 Ом ± 15 % . [93] USB 2.0 и более ранние спецификации определяют одну пару в полудуплексном режиме (HDx). Спецификации USB 3.0 и более поздних версий определяют одну выделенную пару для совместимости с USB 2.0 и две или четыре пары для передачи данных: две пары в полнодуплексном режиме (FDx) для однополосных вариантов требуют разъемов SuperSpeed; четыре пары в полнодуплексном режиме для двухполосных вариантов (×2) требуют разъемов USB-C. USB4 Gen 4 требует использования всех четырех пар, но допускает асимметричную конфигурацию пар, [94] в этом случае одна полоса используется для восходящих данных, а три других — для нисходящих данных или наоборот. USB4 Gen 4 использует импульсно-амплитудную модуляцию на 3 уровнях, обеспечивая одну трит информации в каждом передаваемом боде , частота передачи 12,8 ГГц соответствует скорости передачи 25,6 ГБд [95] , а преобразование с 11 бит на 7 бит обеспечивает теоретическая максимальная скорость передачи чуть более 40,2 Гбит/с. [96]
USB-соединение всегда осуществляется между концом A (хостом или нисходящим портом концентратора) и концом B ( периферийным устройством или восходящим портом концентратора). Исторически это было ясно из того факта, что хосты имели только порты типа A, а периферийные устройства имели только порты типа B, и каждый (действительный) кабель имел одну вилку типа A и одну вилку типа B. USB-C (Type-C) — это единый разъем, который заменяет все разъемы типа A и типа B ( устаревшие разъемы), поэтому, когда обе стороны представляют собой современное оборудование с портами USB-C, они согласовывают, какой из них является хостом (A) и что это за устройство (B).
Во время USB-соединения данные передаются в виде пакетов . Первоначально все пакеты отправляются с хоста через корневой концентратор и, возможно, через несколько концентраторов на устройства. Некоторые из этих пакетов предписывают устройству отправить несколько пакетов в ответ.
Основные транзакции USB:
29 июля 2015 года Форум разработчиков USB представил стандарт беспроводной связи Media Agnostic USB (MA-USB) v.1.0, основанный на протоколе USB. Wireless USB — это технология, заменяющая кабель, и использует сверхширокополосную беспроводную технологию для скорости передачи данных до 480 Мбит/с. [100]
USB-IF использовал спецификацию WiGig Serial Extension v1.2 в качестве исходной основы для спецификации MA-USB и совместим со SuperSpeed USB (3.0 и 3.1) и Hi-Speed USB (USB 2.0). Устройства, использующие MA-USB, будут иметь маркировку «Powered by MA-USB» при условии, что продукт соответствует требованиям программы сертификации. [101]
InterChip USB — это вариант «чип-чип», который исключает использование традиционных приемопередатчиков, присутствующих в обычном USB. Физический уровень HSIC потребляет примерно на 50 % меньше энергии и на 75 % меньше площади платы по сравнению с USB 2.0. [102] Это альтернативный стандарт SPI и I2C .
USB-C (официально USB Type-C ) — это стандарт, определяющий новый разъем и несколько новых функций подключения. Среди них он поддерживает альтернативный режим , который позволяет передавать другие протоколы через разъем USB-C и кабель. Обычно он используется для поддержки протоколов DisplayPort или HDMI , что позволяет подключать дисплей, например компьютерный монитор или телевизор , через USB-C.
Все остальные разъемы не поддерживают двухполосную работу (Gen 1×2 и Gen 2×2) в USB 3.2, но могут использоваться для однополосных операций (Gen1×1 и Gen2×1). [103]
DisplayLink — это технология, позволяющая подключать несколько дисплеев к компьютеру через USB. Он был представлен примерно в 2006 году и до появления альтернативного режима через USB-C это был единственный способ подключения дисплеев через USB. Это запатентованная технология, не стандартизированная Форумом разработчиков USB, и обычно для нее требуется отдельный драйвер устройства на компьютере.
Сначала USB считался дополнением к технологии FireWire ( IEEE 1394 ), которая была разработана как последовательная шина с высокой пропускной способностью, эффективно соединяющая периферийные устройства, такие как дисководы, аудиоинтерфейсы и видеооборудование. В первоначальной конструкции USB работал с гораздо более низкой скоростью передачи данных и использовал менее сложное оборудование. Он подходил для небольших периферийных устройств, таких как клавиатуры и указывающие устройства.
Наиболее существенные технические различия между FireWire и USB включают в себя:
Эти и другие различия отражают разные цели проектирования двух шин: USB был разработан для простоты и низкой стоимости, а FireWire был разработан для высокой производительности, особенно в чувствительных ко времени приложениях, таких как аудио и видео. Хотя теоретическая максимальная скорость передачи сигналов аналогична, FireWire 400 в реальном использовании быстрее, чем USB 2.0 с высокой пропускной способностью, [104] особенно при использовании с высокой пропускной способностью, например, при использовании внешних жестких дисков. [105] [106] [107] [108] Новый стандарт FireWire 800 в два раза быстрее, чем FireWire 400, и быстрее, чем USB 2.0 с высокой пропускной способностью как теоретически, так и практически. [109] Однако преимущества FireWire в скорости основаны на низкоуровневых методах, таких как прямой доступ к памяти (DMA), которые, в свою очередь, создали возможности для эксплойтов безопасности, таких как атака DMA .
Чипсет и драйверы, используемые для реализации USB и FireWire, оказывают решающее влияние на то, какая часть пропускной способности, предписанная спецификацией, достигается в реальном мире, а также на совместимость с периферийными устройствами. [110]
Стандарты IEEE 802.3af , 802.3at и 802.3bt Power over Ethernet (PoE) определяют более сложные схемы согласования мощности, чем USB с питанием. Они работают при 48 В постоянного тока и могут подавать большую мощность (до 12,95 Вт для 802.3af , 25,5 Вт для 802.3at , он же PoE+ , 71 Вт для 802.3bt , он же 4PPoE ) по кабелю длиной до 100 метров по сравнению с USB 2.0, который обеспечивает Мощность 2,5 Вт при максимальной длине кабеля 5 метров. Это сделало PoE популярным для VoIP -телефонов, камер видеонаблюдения , точек беспроводного доступа и других сетевых устройств внутри зданий. Однако USB дешевле, чем PoE, при условии небольшого расстояния и низкого энергопотребления.
Стандарты Ethernet требуют электрической изоляции между сетевым устройством (компьютером, телефоном и т. д.) и сетевым кабелем до 1500 В переменного тока или 2250 В постоянного тока в течение 60 секунд. [111] USB не имеет такого требования, поскольку он был разработан для периферийных устройств, тесно связанных с главным компьютером, и фактически соединяет заземление периферийного устройства и хоста. Это дает Ethernet значительное преимущество в безопасности по сравнению с USB с периферийными устройствами, такими как кабельные и DSL-модемы, подключенными к внешней проводке, которая может находиться под опасным напряжением при определенных условиях неисправности. [112] [113]
Определение класса USB-устройства для MIDI-устройств передает музыкальные данные цифрового интерфейса музыкального инструмента ( MIDI ) через USB. [114] Возможности MIDI расширены и позволяют одновременно использовать до шестнадцати виртуальных MIDI-кабелей , каждый из которых может передавать обычные шестнадцать MIDI-каналов и тактовые сигналы.
USB является конкурентоспособным среди недорогих и физически соседних устройств. Однако Power over Ethernet и стандарт MIDI- штекера имеют преимущество в устройствах высокого класса, которые могут иметь длинные кабели. USB может вызвать проблемы с контуром заземления между оборудованием, поскольку он соединяет опорные точки заземления на обоих трансиверах. Напротив, стандарт MIDI-штекера и Ethernet имеют встроенную изоляцию до 500 В и более.
Разъем eSATA — более надежный разъем SATA , предназначенный для подключения внешних жестких дисков и твердотельных накопителей. Скорость передачи данных eSATA (до 6 Гбит/с) аналогична скорости передачи данных USB 3.0 (до 5 Гбит/с) и USB 3.1 (до 10 Гбит/с). Устройство, подключенное через eSATA, выглядит как обычное устройство SATA, обеспечивая полную производительность и полную совместимость с внутренними дисками.
eSATA не подает питание на внешние устройства. Это растущий недостаток по сравнению с USB. Несмотря на то, что мощности USB 3.0 в 4,5 Вт иногда недостаточно для питания внешних жестких дисков, технологии развиваются, и внешним дискам постепенно требуется меньше энергии, что уменьшает преимущество eSATA. eSATAp (питание через eSATA; также известное как ESATA/USB) — это разъем, представленный в 2009 году, который подает питание на подключенные устройства с помощью нового, обратно совместимого разъема. На ноутбуке eSATAp обычно подает только 5 В для питания 2,5-дюймового жесткого диска или твердотельного накопителя; на настольной рабочей станции он может дополнительно подавать напряжение 12 В для питания более крупных устройств, включая 3,5-дюймовые жесткие диски/твердотельные накопители и 5,25-дюймовые оптические приводы.
Поддержка eSATAp может быть добавлена к настольному компьютеру в виде кронштейна, соединяющего ресурсы SATA материнской платы, питание и USB.
eSATA, как и USB, поддерживает горячее подключение , хотя это может быть ограничено драйверами ОС и прошивкой устройства.
Thunderbolt объединяет PCI Express и Mini DisplayPort в новый интерфейс последовательной передачи данных. Исходные реализации Thunderbolt имеют два канала, каждый со скоростью передачи 10 Гбит/с, в результате чего совокупная однонаправленная пропускная способность составляет 20 Гбит/с. [115]
Thunderbolt 2 использует агрегацию каналов для объединения двух каналов 10 Гбит/с в один двунаправленный канал 20 Гбит/с. [116]
Thunderbolt 3 и Thunderbolt 4 используют USB-C . [117] [118] [119] Thunderbolt 3 имеет два физических двунаправленных канала со скоростью 20 Гбит/с, объединенных в один логический двунаправленный канал со скоростью 40 Гбит/с. Контроллеры Thunderbolt 3 могут включать контроллер USB 3.1 Gen 2 для обеспечения совместимости с USB-устройствами. Они также способны обеспечивать альтернативный режим DisplayPort, а также DisplayPort через USB4 Fabric, что делает функцию порта Thunderbolt 3 расширенной функцией порта USB 3.1 Gen 2.
Альтернативный режим DisplayPort 2.0: USB4 (требуется USB-C) требует, чтобы концентраторы поддерживали DisplayPort 2.0 через альтернативный режим USB-C. DisplayPort 2.0 может поддерживать разрешение 8K при частоте 60 Гц и цвете HDR10. [120] DisplayPort 2.0 может использовать скорость до 80 Гбит/с, что вдвое превышает объем, доступный для данных USB, поскольку он отправляет все данные в одном направлении (на монитор) и, таким образом, может использовать все восемь проводов передачи данных одновременно. [120]
После того, как спецификация стала бесплатной, а ответственность за протокол Thunderbolt была передана от Intel Форуму разработчиков USB, Thunderbolt 3 был эффективно реализован в спецификации USB4 – с совместимостью с Thunderbolt 3, которая не является обязательной, но рекомендуется для продуктов USB4. [121]
Доступны различные преобразователи протоколов , которые преобразуют сигналы данных USB в другие стандарты связи и обратно.
Из-за распространенности стандарта USB существует множество эксплойтов, использующих стандарт USB. Один из крупнейших примеров этого сегодня известен как USB Killer — устройство, которое повреждает устройства, посылая импульсы высокого напряжения по линиям передачи данных.
В версиях Microsoft Windows до Windows XP Windows автоматически запускала сценарий (если он присутствует) на определенных устройствах посредством автозапуска , одним из которых являются запоминающие устройства USB, которые могут содержать вредоносное программное обеспечение. [122]
В приложениях, где важна задержка потоковой передачи, UAC2 обеспечивает сокращение до 8 раз по сравнению с UAC1. ... У каждого метода синхронизации есть свои плюсы и минусы, а также наиболее подходящие области применения.
ADC-2 относится к определению класса USB-устройств для аудиоустройств, версия 2.0.
Все операционные системы (Win, OSX и Linux) изначально поддерживают USB Audio Class 1. Это означает, что вам не нужно устанавливать драйверы, это Plug&Play.
Обратите внимание, что Full Speed USB имеет гораздо более высокую внутреннюю задержку — 2 мс.
Поддержка класса 2 обеспечивает гораздо более высокие частоты дискретизации, такие как PCM 24 бит/384 кГц и DSD (DoP) до DSD256.
Теперь у нас есть встроенная поддержка устройств USB Audio 2.0 с драйвером класса Inbox! Это ранняя версия драйвера, в которой включены не все функции.
Синхронный подрежим обычно не используется со звуком, поскольку и хост, и периферийное устройство зависят от тактовой частоты USB.
PCM2906C использует архитектуру SpAct, уникальную систему TI, которая восстанавливает тактовую частоту аудио из пакетных данных USB.
Ранние интерфейсы воспроизведения USB использовали синхронный режим, но приобрели репутацию из-за низкого качества восстановленной тактовой частоты (и, как следствие, низкого качества воспроизведения). Это произошло в первую очередь из-за недостатков реализации синхронизации, а не из-за присущих подходу недостатков.
Тот факт, что в USB-кабеле нет линии синхронизации, приводит к тому, что кабель становится тоньше, что является преимуществом. Но независимо от того, насколько хороши кварцевые генераторы на передающем и принимающем концах, между ними всегда будет некоторая разница...
Синхронный USB-ЦАП имеет самое низкое качество из трех... Адаптивный... означает, что в ЦАП нет непрерывной и точной тактовой частоты, что вызывает дрожание аудиопотока. ... Асинхронный – его сложнее всего реализовать, но он является огромным улучшением по сравнению с другими типами.
Синхронный режим не используется в качественных ЦАП, так как он очень дерганый. ... асинхронный — лучший из этих режимов.
Некоторые производители могут заставить вас поверить, что асинхронная передача через USB превосходит адаптивную передачу через USB, и поэтому вы должны верить в асинхронное решение. Это не более верно, чем утверждение, что вы «должны» держать вилку в левой руке. На самом деле, если ты знаешь, что делаешь, ты накормишь себя любой рукой. Вопрос действительно в хороших инженерных практиках.