Универсальная последовательная шина ( USB ) — это отраслевой стандарт , который позволяет осуществлять обмен данными и подачу питания между многими типами электроники. Он определяет ее архитектуру, в частности ее физический интерфейс , и протоколы связи для передачи данных и подачи питания на хосты и с них, например, персональные компьютеры , на периферийные устройства и с них , например, дисплеи, клавиатуры и запоминающие устройства большой емкости, а также на промежуточные концентраторы и с них , которые увеличивают количество портов хоста. [2]
Представленный в 1996 году, USB изначально был разработан для стандартизации подключения периферийных устройств к компьютерам, заменив различные интерфейсы, такие как последовательные порты , параллельные порты , игровые порты и порты ADB . [3] Ранние версии USB стали обычным явлением на широком спектре устройств, таких как клавиатуры, мыши, камеры, принтеры, сканеры, флэш-накопители, смартфоны, игровые консоли и внешние аккумуляторы. [4] С тех пор USB превратился в стандарт, заменив практически все распространенные порты на компьютерах, мобильных устройствах, периферийных устройствах, блоках питания и множестве других небольших электронных устройств.
В текущем стандарте разъем 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 подразделяются на три типа: многочисленные устаревшие разъемы Type-A (восходящий поток) и Type-B (нисходящий поток), которые можно найти на хостах , концентраторах и периферийных устройствах , а также современный разъем Type-C ( USB-C ), который заменяет многочисленные устаревшие разъемы как единственный применимый разъем для 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 и, следовательно, сохраняя исходные четыре контакта/провода для обратной совместимости USB 2.0, что приводит к 9 проводам (с 9 или 10 контактами на интерфейсах разъемов; ID-контакт не подключен) в общей сложности.
Спецификация USB 3.1 представила усовершенствованную систему SuperSpeed System , сохранив архитектуру и протокол SuperSpeed ( SuperSpeed USB ), с дополнительной архитектурой и протоколом SuperSpeedPlus (он же SuperSpeedPlus USB ), добавившими новую схему кодирования (символы 128/132 бит, 10 Гбит/с; также известную как Gen 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 ID, который требует от них уплаты взноса в Форум разработчиков 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-устройства попали на рынок до выпуска USB 1.1 в августе 1998 года. USB 1.1 был самой ранней версией, которая получила широкое распространение и привела к тому, что Microsoft обозначила как « ПК без наследства ». [22] [23] [24]
Ни USB 1.0, ни USB 1.1 не определяли дизайн для любого разъема меньше стандартного типа A или типа B. Хотя многие дизайны для миниатюрного разъема типа B появились на многих периферийных устройствах, соответствие стандарту USB 1. x было затруднено из-за того, что периферийные устройства с миниатюрными разъемами рассматривались как имеющие привязанное соединение (то есть: без вилки или розетки на периферийном конце). Не было известно о миниатюрном разъеме типа A, пока USB 2.0 (редакция 1.01) не представил его.
USB 2.0 был выпущен в апреле 2000 года, добавив более высокую максимальную скорость передачи данных 480 Мбит/с (максимальная теоретическая пропускная способность данных 53 Мбайт/с [25] ), названную High Speed или High Bandwidth , в дополнение к скорости передачи данных USB 1. x Full Speed 12 Мбит/с (максимальная теоретическая пропускная способность данных 1,2 Мбайт/с) [26] .
Изменения в спецификации USB были сделаны с помощью уведомлений об изменениях в конструкции (ECN). Наиболее важные из этих ECN включены в пакет спецификаций USB 2.0, доступный на USB.org: [27]
Спецификация USB 3.0 была выпущена 12 ноября 2008 года, а управление ею перешло от USB 3.0 Promoter Group к USB Implementers Forum (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.0 также представил протокол USB Attached SCSI (UASP) , который обеспечивает в целом более высокую скорость передачи данных, чем протокол BOT (Bulk-Only-Transfer).
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 1×2 и USB 3.2 Gen 2×2 ) с новой матрицей USB-C со скоростями передачи сигналов 10 и 20 Гбит/с (скорость передачи исходных данных 1212 и 2424 МБ/с). Увеличение пропускной способности является результатом двухполосной работы по существующим проводам, которые изначально предназначались для возможностей триггера разъема USB-C. [36]
Начиная со спецификации USB 3.2, USB-IF представил новую схему наименования. [37] Чтобы помочь компаниям с брендингом различных режимов работы, USB-IF рекомендовал брендировать возможности 5, 10 и 20 Гбит/с как SuperSpeed USB 5Gbps , SuperSpeed USB 10 Gbps и SuperSpeed USB 20 Gbps соответственно. [38]
В 2023 году они были заменены снова, [39] удалив «SuperSpeed» на USB 5Gbps , USB 10Gbps и USB 20Gbps . С новыми логотипами упаковки и порта . [40]
Спецификация USB4 была опубликована 29 августа 2019 года на Форуме разработчиков USB. [41]
Спецификация USB4 2.0 была опубликована 1 сентября 2022 года Форумом разработчиков USB. [42]
USB4 основан на протоколе Thunderbolt 3. [43] Он поддерживает пропускную способность 40 Гбит/с, совместим с Thunderbolt 3 и обратно совместим с USB 3.2 и USB 2.0. [44] [45] Архитектура определяет метод динамического совместного использования одного высокоскоростного соединения с несколькими типами конечных устройств, который наилучшим образом подходит для передачи данных по типу и приложению.
На выставке CES 2020 USB-IF и Intel заявили о своем намерении разрешить использование продуктов USB4, поддерживающих все дополнительные функции, в качестве продуктов Thunderbolt 4 .
USB4 2.0 со скоростью 80 Гбит/с должен был быть представлен в ноябре 2022 года. [46] [47] Дополнительные технические подробности должны были быть опубликованы на двух днях разработчиков USB, запланированных на ноябрь 2022 года. [48] [ требуется обновление ]
В спецификации USB4 указано, что следующие технологии должны поддерживаться USB4: [41]
Из-за предыдущих запутанных схем наименования USB-IF решил изменить его еще раз. С 2 сентября 2022 года маркетинговые названия следуют синтаксису «USB x Gbps», где x — скорость передачи в Гбит/с. [49] Обзор обновленных названий и логотипов можно увидеть в соседней таблице.
Режимы работы USB 3.2 Gen 2×2 и USB4 Gen 2×2 (или: USB 3.2 Gen 2×1 и USB4 Gen 2×1) не являются взаимозаменяемыми и несовместимыми; все участвующие контроллеры должны работать в одном и том же режиме.
Система USB состоит из хоста с одним или несколькими портами, обращенными вниз по течению (DFP), [57] и несколькими периферийными устройствами, образующими топологию многоуровневой звезды . Могут быть включены дополнительные концентраторы USB , что позволяет создать до пяти уровней. Хост USB может иметь несколько контроллеров, каждый с одним или несколькими портами. К одному контроллеру хоста может быть подключено до 127 устройств. [58] [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-хост. Это позволяет хосту загружать программные модули для устройства и поддерживать новые устройства от разных производителей.
Классы устройств включают: [60]
Класс устройств хранения USB (MSC или UMS) стандартизирует соединения с устройствами хранения. Изначально предназначенный для магнитных и оптических приводов, он был расширен для поддержки флэш-накопителей и считывателей SD-карт . Возможность загрузки защищенной от записи SD-карты с помощью USB-адаптера особенно полезна для сохранения целостности и неподверженного порче, первозданного состояния загрузочного носителя.
Хотя большинство персональных компьютеров с начала 2005 года могут загружаться с USB-накопителей, USB не предназначен в качестве основной шины для внутреннего хранилища компьютера. Однако USB имеет преимущество в возможности горячей замены , что делает его полезным для мобильных периферийных устройств, включая накопители различных типов.
Несколько производителей предлагают внешние портативные жесткие диски USB или пустые корпуса для дисководов. Они предлагают производительность, сравнимую с внутренними дисками, ограниченную количеством и типами подключенных USB-устройств и верхним пределом интерфейса USB. Другие конкурирующие стандарты для подключения внешних дисков включают eSATA , ExpressCard , FireWire (IEEE 1394) и совсем недавно Thunderbolt .
Другое применение USB-накопителей — это портативное выполнение программных приложений (таких как веб-браузеры и клиенты VoIP) без необходимости их установки на хост-компьютер. [64] [65]
Протокол передачи мультимедиа (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-to-PS/2. Для мышей и клавиатур с поддержкой двух протоколов можно использовать пассивный адаптер, не содержащий логической схемы : USB-оборудование в клавиатуре или мыши предназначено для определения того, подключено ли оно к порту USB или PS/2, и для связи с использованием соответствующего протокола. [ необходима цитата ] Также существуют активные преобразователи, которые подключают USB-клавиатуры и мыши (обычно по одному каждого типа) к портам PS/2. [66]
Обновление прошивки устройства (DFU) — это универсальный механизм обновления прошивки USB-устройств с помощью улучшенных версий, предоставляемых их производителями, предлагающий (например) способ развертывания исправлений ошибок прошивки. Во время операции обновления прошивки USB-устройства изменяют свой режим работы, фактически становясь программатором PROM . Любой класс USB-устройств может реализовать эту возможность, следуя официальным спецификациям DFU. Это позволяет использовать совместимые с DFU хост-инструменты для обновления устройства. [63] [67] [68]
DFU иногда используется как протокол программирования флэш-памяти в микроконтроллерах со встроенной функцией загрузчика USB. [69]
Рабочая группа по USB-устройствам разработала спецификации для потоковой передачи звука, а также разработала и внедрила специальные стандарты для использования в аудиоустройствах, таких как микрофоны, динамики, гарнитуры, телефоны, музыкальные инструменты и т. д. Рабочая группа опубликовала три версии спецификаций аудиоустройств: [70] [71] USB Audio 1.0, 2.0 и 3.0, называемые «UAC» [72] или «ADC». [73]
UAC 3.0 в первую очередь вводит улучшения для портативных устройств, такие как снижение энергопотребления за счет пакетной передачи данных и более частого нахождения в режиме низкого энергопотребления, а также домены питания для различных компонентов устройства, что позволяет отключать их, когда они не используются. [74]
UAC 2.0 представила поддержку High Speed USB (в дополнение к Full Speed), что обеспечивает большую пропускную способность для многоканальных интерфейсов, более высокие частоты дискретизации, [75] меньшую собственную задержку, [76] [72] и 8-кратное улучшение разрешения по времени в синхронных и адаптивных режимах. [72] UAC2 также представила концепцию доменов синхронизации, которая предоставляет хосту информацию о том, какие входные и выходные терминалы получают свои тактовые сигналы из одного и того же источника, а также улучшенную поддержку аудиокодирования, такого как DSD , аудиоэффектов, кластеризации каналов, пользовательских элементов управления и описаний устройств. [72] [77]
Однако устройства UAC 1.0 по-прежнему распространены из-за их кроссплатформенной совместимости без драйверов [75], а также частично из-за того, что Microsoft не смогла реализовать UAC 2.0 в течение более чем десятилетия после его публикации, наконец добавив поддержку в Windows 10 через Creators Update 20 марта 2017 года. [78] [79] [77] UAC 2.0 также поддерживается macOS , iOS и Linux [72] , однако Android реализует только подмножество спецификации UAC 1.0 [80]
USB обеспечивает три типа изохронной (с фиксированной полосой пропускания) синхронизации, [81] все из которых используются аудиоустройствами: [82]
В то время как спецификация USB изначально описывала асинхронный режим как используемый в «недорогих динамиках», а адаптивный режим — в «высококачественных цифровых динамиках», [86] противоположное восприятие существует в мире hi-fi , где асинхронный режим рекламируется как функция, а адаптивные/синхронные режимы имеют плохую репутацию. [87] [88] [80] В действительности все типы могут быть высококачественными или низкокачественными, в зависимости от качества их разработки и применения. [84] [72] [89] Асинхронный режим имеет преимущество в том, что он не привязан к тактовой частоте компьютера, но его недостаток в том, что требуется преобразование частоты дискретизации при объединении нескольких источников.
Разъемы, указанные комитетом USB, поддерживают ряд основных целей USB и отражают уроки, извлеченные из множества разъемов, которые использовала компьютерная индустрия. Гнездовой разъем, установленный на хосте или устройстве, называется розеткой , а штекерный разъем, прикрепленный к кабелю, называется вилкой . [ 30] : 2-5–2-6 Официальные документы спецификации USB также периодически определяют термин «мужской» для обозначения вилки, а «женский» для обозначения розетки. [90]
Конструкция призвана затруднить неправильную вставку USB-штекера в гнездо. Спецификация USB требует, чтобы штекер кабеля и гнездо были промаркированы, чтобы пользователь мог распознать правильную ориентацию. [30] Однако штекер USB-C является двусторонним. USB-кабели и небольшие USB-устройства удерживаются на месте с помощью силы захвата гнезда, без винтов, зажимов или поворотных ручек, как в некоторых разъемах.
Различные разъемы A и B предотвращают случайное подключение двух источников питания. Однако часть этой направленной топологии утрачена с появлением многоцелевых USB-подключений (таких как USB On-The-Go в смартфонах и питаемых от USB Wi-Fi-маршрутизаторах), для которых требуются кабели A-to-A, B-to-B, а иногда и Y/разветвители.
Типы разъемов USB множились по мере развития спецификации. Первоначальная спецификация USB подробно описывала стандартные вилки и розетки A и B. Разъемы были разными, поэтому пользователи не могли подключать одну компьютерную розетку к другой. Контакты данных в стандартных вилках утоплены по сравнению с контактами питания, так что устройство может включиться до установления соединения для передачи данных. Некоторые устройства работают в разных режимах в зависимости от того, установлено ли соединение для передачи данных. Зарядные док-станции подают питание и не включают в себя хост-устройство или контакты данных, что позволяет любому совместимому USB-устройству заряжаться или работать от стандартного кабеля USB. Зарядные кабели обеспечивают подключение питания, но не данных. В кабеле только для зарядки провода данных закорочены на конце устройства; в противном случае устройство может отклонить зарядное устройство как неподходящее.
Стандарт USB 1.1 определяет, что стандартный кабель может иметь максимальную длину 5 метров (16 футов 5 дюймов) для устройств, работающих на полной скорости (12 Мбит/с), и максимальную длину 3 метра (9 футов 10 дюймов) для устройств, работающих на низкой скорости (1,5 Мбит/с). [91] [92] [93]
USB 2.0 обеспечивает максимальную длину кабеля 5 метров (16 футов 5 дюймов) для устройств, работающих на высокой скорости (480 Мбит/с). [93]
Стандарт USB 3.0 напрямую не определяет максимальную длину кабеля, требуя только, чтобы все кабели соответствовали электрическим характеристикам: для медных кабелей с проводами AWG 26 максимальная практическая длина составляет 3 метра (9 футов 10 дюймов). [94]
На рынке можно найти кабели USB-моста или кабели передачи данных, которые обеспечивают прямое соединение ПК-ПК. Кабель-мост — это специальный кабель с чипом и активной электроникой в середине кабеля. Чип в середине кабеля действует как периферийное устройство для обоих компьютеров и обеспечивает одноранговую связь между компьютерами. Кабели USB-моста используются для передачи файлов между двумя компьютерами через их порты USB.
Популяризированная Microsoft как Windows Easy Transfer , утилита Microsoft использовала специальный кабель USB-моста для переноса личных файлов и настроек с компьютера под управлением более ранней версии Windows на компьютер под управлением более новой версии. В контексте использования программного обеспечения Windows Easy Transfer кабель-мост иногда может упоминаться как кабель Easy Transfer .
Многие кабели USB bridge/передачи данных по-прежнему являются 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. Однако для работы этой возможности подключенные системы должны поддерживать переключение ролей. Возможности двойной роли требуют наличия двух контроллеров в системе, а также контроллера роли . Хотя этого можно ожидать от мобильной платформы, такой как планшет или телефон, настольные ПК и ноутбуки часто не поддерживают двойные роли. [95]
Разъемы 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) с неограниченными скоростями зарядки. [96] [97]
Помимо стандартного USB, существует фирменная мощная система PoweredUSB , разработанная в 1990-х годах и в основном используемая в торговых терминалах, таких как кассовые аппараты.
Сигналы USB передаются с использованием дифференциальной сигнализации по витой паре проводов данных с характеристическим сопротивлением 90 Ом ± 15% . [98] USB 2.0 и более ранние спецификации определяют одну пару в полудуплексном режиме (HDx). USB 3.0 и более поздние спецификации определяют одну выделенную пару для совместимости с USB 2.0 и две или четыре пары для передачи данных: две пары в полнодуплексном режиме (FDx) для вариантов с одной полосой требуют как минимум разъемов SuperSpeed (SS); четыре пары в полнодуплексном режиме для вариантов с двумя полосами ( ×2 ) требуют разъемов USB-C. USB4 Gen 4 требует использования всех четырех пар, но допускает асимметричную конфигурацию пар. [99] В этом случае одна полоса используется для восходящих данных, а другие три — для нисходящих данных или наоборот. USB4 Gen 4 использует амплитудно-импульсную модуляцию на 3 уровнях, обеспечивая трит информации на каждый передаваемый бод , частота передачи 12,8 ГГц преобразуется в скорость передачи 25,6 Гбит/с [100] , а преобразование 11 бит в 7 тритов обеспечивает теоретическую максимальную скорость передачи чуть более 40,2 Гбит/с. [101]
USB-соединение всегда осуществляется между концом A , хостом или нисходящим портом концентратора, и концом B , периферийным устройством или восходящим портом концентратора. Исторически это было ясно из того факта, что хосты имели только порты Type-A, а периферийные устройства имели только Type-B, и каждый (допустимый) кабель имел один разъем Type-A и один разъем Type-B. USB-C (Type-C) — это один разъем, который заменяет все разъемы Type-A и Type-B ( устаревшие разъемы), поэтому, когда обе стороны являются современным оборудованием с портами USB-C, они договариваются, какой из них является хостом (A), а какой — устройством (B).
Во время USB-связи данные передаются в виде пакетов . Первоначально все пакеты отправляются с хоста через корневой концентратор и, возможно, через несколько концентраторов на устройства. Некоторые из этих пакетов предписывают устройству отправить несколько пакетов в ответ.
Основные транзакции USB:
Форум разработчиков USB представил стандарт беспроводной связи Media Agnostic USB (MA-USB) v.1.0, основанный на протоколе USB, 29 июля 2015 года. Беспроводной USB — это технология замены кабеля, использующая сверхширокополосную беспроводную технологию для передачи данных со скоростью до 480 Мбит/с. [103]
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», при условии, что продукт соответствует своей программе сертификации. [104]
InterChip USB — это вариант «чип-чип», который устраняет обычные приемопередатчики, имеющиеся в обычном USB. Физический уровень HSIC использует примерно на 50% меньше энергии и на 75% меньше площади платы по сравнению с USB 2.0. [105] Это альтернативный стандарт SPI и I2C .
USB-C (официально USB Type-C ) — это стандарт, который определяет новый разъем и несколько новых функций подключения. Среди них он поддерживает альтернативный режим , который позволяет передавать другие протоколы через разъем и кабель USB-C. Это обычно используется для поддержки протоколов DisplayPort или HDMI , что позволяет подключать дисплей, например, монитор компьютера или телевизор , через USB-C.
Все остальные разъемы не поддерживают двухполосную работу (Gen 1×2 и Gen 2×2) в USB 3.2, но могут использоваться для однополосной работы (Gen 1×1 и Gen 2×1). [106]
DisplayLink — это технология, которая позволяет подключать несколько дисплеев к компьютеру через USB. Она была представлена около 2006 года и до появления Alternate Mode через USB-C была единственным способом подключения дисплеев через USB. Это запатентованная технология, не стандартизированная Форумом разработчиков USB и обычно требующая отдельного драйвера устройства на компьютере.
Сначала USB считался дополнением к технологии FireWire ( IEEE 1394 ), которая была разработана как последовательная шина с высокой пропускной способностью, эффективно соединяющая периферийные устройства, такие как дисководы, аудиоинтерфейсы и видеооборудование. В первоначальном проекте USB работал на гораздо более низкой скорости передачи данных и использовал менее сложное оборудование. Он подходил для небольших периферийных устройств, таких как клавиатуры и указывающие устройства.
Наиболее существенные технические различия между FireWire и USB включают в себя:
Эти и другие различия отражают различные цели проектирования двух шин: USB был разработан для простоты и низкой стоимости, в то время как FireWire был разработан для высокой производительности, особенно в чувствительных ко времени приложениях, таких как аудио и видео. Несмотря на схожесть по теоретической максимальной скорости передачи сигнала, FireWire 400 быстрее, чем USB 2.0 с высокой пропускной способностью в реальном использовании, [107] особенно в использовании с высокой пропускной способностью, таком как внешние жесткие диски. [108] [109] [110] [111] Более новый стандарт FireWire 800 в два раза быстрее, чем FireWire 400, и быстрее, чем USB 2.0 с высокой пропускной способностью как теоретически, так и практически. [112] Однако преимущества скорости FireWire основаны на низкоуровневых методах, таких как прямой доступ к памяти (DMA), которые, в свою очередь, создали возможности для уязвимостей безопасности, таких как атака DMA .
Чипсет и драйверы, используемые для реализации USB и FireWire, оказывают решающее влияние на то, какая часть полосы пропускания, предписанная спецификацией, будет достигнута в реальном мире, а также на совместимость с периферийными устройствами. [113]
Стандарты IEEE 802.3af , 802.3at и 802.3bt Power over Ethernet (PoE) определяют более сложные схемы согласования питания, чем Powered USB. Они работают при 48 В постоянного тока и могут поставлять больше мощности (до 12,95 Вт для 802.3af , 25,5 Вт для 802.3at , также известного как PoE+ , 71 Вт для 802.3bt , также известного как 4PPoE ) по кабелю длиной до 100 метров по сравнению с USB 2.0, который обеспечивает 2,5 Вт при максимальной длине кабеля 5 метров. Это сделало PoE популярным для телефонов Voice over IP , камер безопасности , беспроводных точек доступа и других сетевых устройств внутри зданий. Однако USB дешевле PoE при условии, что расстояние небольшое, а потребность в энергии низкая.
Стандарты Ethernet требуют электрической изоляции между сетевым устройством (компьютером, телефоном и т. д.) и сетевым кабелем до 1500 В переменного тока или 2250 В постоянного тока в течение 60 секунд. [114] USB не имеет такого требования, поскольку он был разработан для периферийных устройств, тесно связанных с главным компьютером, и фактически он соединяет периферийное устройство и заземление главного компьютера. Это дает Ethernet значительное преимущество в безопасности по сравнению с USB с периферийными устройствами, такими как кабельные и DSL-модемы, подключенные к внешней проводке, которая может принимать опасные напряжения при определенных условиях неисправности. [115] [116]
Определение класса устройств USB для устройств MIDI передает музыкальные данные цифрового интерфейса музыкальных инструментов ( MIDI ) через USB. [117] Возможности 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. Хотя 4,5 Вт USB 3.0 иногда недостаточно для питания внешних жестких дисков, технологии развиваются, и внешним дискам постепенно требуется меньше энергии, что снижает преимущество eSATA. eSATAp (питание через eSATA, он же ESATA/USB) — это разъем, представленный в 2009 году, который подает питание на подключенные устройства с помощью нового, обратно совместимого разъема. На ноутбуке eSATAp обычно подает только 5 В для питания 2,5-дюймового HDD/SSD; на настольной рабочей станции он может дополнительно подавать 12 В для питания более крупных устройств, включая 3,5-дюймовые HDD/SSD и 5,25-дюймовые оптические приводы.
Поддержку eSATAp можно добавить к настольному компьютеру в виде кронштейна, соединяющего материнскую плату SATA, питание и ресурсы USB.
eSATA, как и USB, поддерживает горячее подключение , хотя это может быть ограничено драйверами ОС и прошивкой устройства.
Thunderbolt объединяет PCI Express и Mini DisplayPort в новый последовательный интерфейс данных. Оригинальные реализации Thunderbolt имеют два канала, каждый со скоростью передачи 10 Гбит/с, что приводит к совокупной однонаправленной пропускной способности 20 Гбит/с. [118]
Thunderbolt 2 использует агрегацию каналов для объединения двух каналов 10 Гбит/с в один двунаправленный канал 20 Гбит/с. [119]
Thunderbolt 3 и Thunderbolt 4 используют USB-C . [120] [121] [122] Thunderbolt 3 имеет два физических двунаправленных канала 20 Гбит/с, объединенных в один логический двунаправленный канал 40 Гбит/с. Контроллеры Thunderbolt 3 могут включать контроллер USB 3.1 Gen 2 для обеспечения совместимости с USB-устройствами. Они также способны обеспечивать DisplayPort Alternate Mode, а также DisplayPort over USB4 Fabric, что делает функцию порта Thunderbolt 3 надмножеством функции порта USB 3.1 Gen 2.
DisplayPort Alternate Mode 2.0: USB4 (требующий USB-C) требует, чтобы концентраторы поддерживали DisplayPort 2.0 через USB-C Alternate Mode. DisplayPort 2.0 может поддерживать разрешение 8K при 60 Гц с цветом HDR10. [123] DisplayPort 2.0 может использовать до 80 Гбит/с, что вдвое больше, чем доступно для данных USB, поскольку он отправляет все данные в одном направлении (на монитор) и, таким образом, может использовать все восемь проводов данных одновременно. [123]
После того, как спецификация стала бесплатной, а права на протокол Thunderbolt были переданы от Intel Форуму разработчиков USB, Thunderbolt 3 был эффективно реализован в спецификации USB4 — совместимость с Thunderbolt 3 необязательна, но приветствуется для продуктов USB4. [124]
Доступны различные преобразователи протоколов , которые преобразуют сигналы данных USB в другие стандарты связи и обратно.
Из-за распространенности стандарта USB существует множество эксплойтов, использующих стандарт USB. Один из самых крупных примеров этого сегодня известен как USB killer , устройство, которое повреждает USB-устройства, отправляя импульсы высокого напряжения по линиям данных.
В версиях Microsoft Windows до Windows XP , Windows автоматически запускала скрипт (если он присутствовал) на определенных устройствах через AutoRun , одним из которых были USB-накопители, которые могли содержать вредоносное программное обеспечение. [125]
В приложениях, где важна задержка потоковой передачи, 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.
использует архитектуру SpAct, уникальную систему TI, которая восстанавливает аудиотактовые сигналы из пакетных данных USB.
Ранние интерфейсы воспроизведения USB использовали синхронный режим, но приобрели репутацию из-за низкого качества восстановленных часов (и, как следствие, низкого качества воспроизведения). Это было в первую очередь связано с недостатками реализации тактирования, а не с внутренними недостатками подхода.
Тот факт, что в кабеле USB нет линии синхронизации, приводит к более тонкому кабелю, что является преимуществом. Но, независимо от того, насколько хороши кварцевые генераторы на передающем и принимающем концах, всегда будет некоторая разница между двумя...
USB-ЦАП — это самый низкий по качеству из трех... Адаптивный... означает, что в ЦАП нет непрерывного, точного главного тактового генератора, что приводит к дрожанию аудиопотока. ... Асинхронный — это самый сложный в реализации, но он является огромным улучшением по сравнению с другими типами.
режим не используется в качественном ЦАП, поскольку он очень дёрганый. ... асинхронный режим — лучший из этих режимов.
производители могут заставить вас поверить, что асинхронная передача данных через USB превосходит адаптивную передачу данных через USB, и поэтому вы должны верить в асинхронное решение. Это не более верно, чем утверждение, что вы "должны" держать вилку в левой руке. На самом деле, если вы знаете, что делаете, вы будете кормить себя любой рукой. Проблема на самом деле в хорошей инженерной практике.