Universal Serial Bus ( USB ) es un estándar industrial que permite el intercambio de datos y la entrega de energía entre muchos tipos de dispositivos electrónicos. Especifica su arquitectura, en particular su interfaz física , y los protocolos de comunicación para la transferencia de datos y la entrega de energía hacia y desde hosts , como computadoras personales , hacia y desde dispositivos periféricos , por ejemplo, pantallas, teclados y dispositivos de almacenamiento masivo, y hacia y desde concentradores intermedios , que multiplican el número de puertos de un host. [2]
Introducido en 1996, el USB fue diseñado originalmente para estandarizar la conexión de periféricos a computadoras, reemplazando varias interfaces como puertos seriales , puertos paralelos , puertos de juegos y puertos ADB . [3] Las primeras versiones de USB se volvieron comunes en una amplia gama de dispositivos, como teclados, ratones, cámaras, impresoras, escáneres, unidades flash, teléfonos inteligentes, consolas de juegos y bancos de energía. [4] Desde entonces, el USB ha evolucionado hasta convertirse en un estándar para reemplazar prácticamente todos los puertos comunes en computadoras, dispositivos móviles, periféricos, fuentes de alimentación y muchos otros dispositivos electrónicos pequeños.
En el estándar actual, el conector USB-C reemplaza a los numerosos conectores de alimentación (hasta 240 W), pantallas (por ejemplo, DisplayPort, HDMI) y muchos otros usos, así como a todos los conectores USB anteriores.
A partir de 2024, [actualizar]USB consta de cuatro generaciones de especificaciones: USB 1.x, USB 2.0, USB 3. x y USB4 . USB4 mejora la transferencia de datos y la funcionalidad de suministro de energía con
... una arquitectura de tunelización orientada a la conexión diseñada para combinar múltiples protocolos en una única interfaz física de modo que la velocidad y el rendimiento totales de USB4 Fabric se puedan compartir de forma dinámica. [2]
USB4 es especialmente compatible con la tunelización de los protocolos Thunderbolt 3 , a saber, PCI Express (PCIe, interfaz de carga/almacenamiento) y DisplayPort (interfaz de visualización). USB4 también añade interfaces de host a host. [2]
Cada subversión de la especificación admite diferentes velocidades de señalización , desde 1,5 y 12 Mbit/s en total en USB 1.0 hasta 80 Gbit/s (en cada dirección) en USB4. [5] [6] [7] [2] USB también proporciona energía a dispositivos periféricos; las últimas versiones del estándar amplían los límites de suministro de energía para la carga de baterías y dispositivos que requieren hasta 240 vatios ( USB Power Delivery (USB-PD) ). [8] A lo largo de los años, USB(-PD) se ha adoptado como el formato de carga y fuente de alimentación estándar para muchos dispositivos móviles, como teléfonos móviles, lo que reduce la necesidad de cargadores propietarios. [9]
El USB fue diseñado para estandarizar la conexión de periféricos a las computadoras personales, tanto para intercambiar datos como para suministrar energía eléctrica. Ha reemplazado en gran medida a interfaces como los puertos seriales y los puertos paralelos y se ha vuelto común en varios dispositivos. Los periféricos conectados a través de USB incluyen teclados y ratones de computadora, cámaras de video, impresoras, reproductores multimedia portátiles, teléfonos digitales móviles (portátiles), unidades de disco y adaptadores de red.
Los conectores USB han ido sustituyendo cada vez más a otros tipos de cables de carga para dispositivos portátiles.
Las interfaces del conector USB se clasifican en tres tipos: los numerosos conectores heredados Tipo A (ascendente) y Tipo B (descendente) que se encuentran en hosts , concentradores y dispositivos periféricos , y el moderno conector Tipo C ( USB-C ), que reemplaza a los numerosos conectores heredados como el único conector aplicable para USB4.
Los conectores Tipo-A y Tipo-B se comercializaban en tamaños Estándar, Mini y Micro. El formato estándar era el más grande y se utilizaba principalmente para equipos periféricos de escritorio y de mayor tamaño. Los conectores Mini-USB (Mini-A, Mini-B, Mini-AB) se introdujeron para dispositivos móviles. Aun así, fueron rápidamente reemplazados por los conectores Micro-USB más delgados (Micro-A, Micro-B, Micro-AB). El conector Tipo-C, también conocido como USB-C, no es exclusivo de USB, es el único estándar actual para USB, es necesario para USB4 y es requerido por otros estándares, incluidos los modernos DisplayPort y Thunderbolt. Es reversible y puede admitir varias funcionalidades y protocolos, incluido USB; algunos son obligatorios y muchos son opcionales, según el tipo de hardware: host, dispositivo periférico o concentrador. [10] [11]
Las especificaciones USB proporcionan compatibilidad con versiones anteriores, lo que generalmente da como resultado velocidades de señalización reducidas, potencia máxima ofrecida y otras capacidades. La especificación USB 1.1 reemplaza a USB 1.0. La especificación USB 2.0 es compatible con versiones anteriores de USB 1.0/1.1. La especificación USB 3.2 reemplaza a USB 3.1 (y USB 3.0) al tiempo que incluye la especificación USB 2.0. USB4 "reemplaza funcionalmente" a USB 3.2 al tiempo que conserva el bus USB 2.0 que funciona en paralelo. [5] [6] [7] [2]
La especificación USB 3.0 definió una nueva arquitectura y protocolo llamado SuperSpeed (también conocido como SuperSpeed USB , comercializado como SS ), que incluía un nuevo carril para un nuevo esquema de codificación de señales (símbolos 8b/10b, 5 Gbit/s; más tarde también conocido como Gen 1 ) que proporcionaba transferencias de datos full-duplex que requerían físicamente cinco cables y pines adicionales, al tiempo que preservaba la arquitectura y los protocolos USB 2.0 y, por lo tanto, mantenía los cuatro pines/cables originales para la compatibilidad con versiones anteriores de USB 2.0, lo que daba como resultado 9 cables (con 9 o 10 pines en las interfaces del conector; el pin ID no está cableado) en total.
La especificación USB 3.1 introdujo un sistema SuperSpeed mejorado , al tiempo que conservaba la arquitectura y el protocolo SuperSpeed ( SuperSpeed USB ), con una arquitectura y un protocolo SuperSpeedPlus adicionales (también conocido como SuperSpeedPlus USB ) que añadían un nuevo esquema de codificación (símbolos 128b/132b, 10 Gbit/s; también conocido como Gen 2 ); durante algún tiempo comercializado como SuperSpeed+ ( SS+ ).
La especificación USB 3.2 [7] agregó un segundo carril al sistema SuperSpeed mejorado además de otras mejoras para que la parte del sistema USB SuperSpeedPlus implemente los modos de operación Gen 1×2 , Gen 2×1 y Gen 2×2 . Sin embargo, la parte USB SuperSpeed del sistema aún implementa el modo de operación Gen 1×1 de un carril . Por lo tanto, las operaciones de dos carriles, a saber, USB 3.2 Gen 1× 2 (10 Gbit/s) y Gen 2× 2 (20 Gbit/s), solo son posibles con USB-C con todas las funciones. A partir de 2023, se implementan con poca frecuencia; Intel, sin embargo, comenzó a incluirlos en sus modelos de procesadores SoC de 11.ª generación, pero Apple nunca los proporcionó. Por otro lado, USB 3.2 Gen 1(×1) (5 Gbit/s) y Gen 2(×1) (10 Gbit/s) han sido bastante comunes durante algunos años.
Cada conexión USB se realiza mediante dos conectores: un receptáculo y un enchufe . Las imágenes muestran solo los receptáculos:
El bus serie universal se desarrolló para simplificar y mejorar la interfaz entre computadoras personales y dispositivos periféricos, como teléfonos celulares, accesorios de computadora y monitores, en comparación con interfaces estándar o propietarias ad hoc que existían anteriormente. [12]
Desde la perspectiva del usuario de la computadora, la interfaz USB mejora la facilidad de uso de varias maneras:
El estándar USB también ofrece múltiples beneficios para los fabricantes de hardware y los desarrolladores de software, específicamente en la relativa facilidad de implementación:
Como ocurre con todos los estándares, el USB posee múltiples limitaciones en su diseño:
Para un desarrollador de productos, el uso de USB requiere la implementación de un protocolo complejo e implica un controlador "inteligente" en el dispositivo periférico. Los desarrolladores de dispositivos USB destinados a la venta al público generalmente deben obtener una identificación USB, lo que requiere que paguen una tarifa al USB Implementers Forum (USB-IF). Los desarrolladores de productos que utilizan la especificación USB deben firmar un acuerdo con el USB-IF. El uso de los logotipos USB en el producto requiere tarifas anuales y membresía en la organización. [12]
Un grupo de siete empresas comenzó el desarrollo de USB en 1995: [16] Compaq , DEC , IBM , Intel , Microsoft , NEC y Nortel . El objetivo era hacer que fuera fundamentalmente más fácil conectar dispositivos externos a las PC mediante la sustitución de la multitud de conectores en la parte posterior de las PC, abordando los problemas de usabilidad de las interfaces existentes y simplificando la configuración del software de todos los dispositivos conectados a USB, así como permitiendo mayores tasas de transferencia de datos para dispositivos externos y funciones plug and play . [17] Ajay Bhatt y su equipo trabajaron en el estándar en Intel; [18] [19] los primeros circuitos integrados compatibles con USB fueron producidos por Intel en 1995. [20]
Lanzado en enero de 1996, USB 1.0 especificó velocidades de señalización de 1,5 Mbit/s ( ancho de banda bajo o baja velocidad ) y 12 Mbit/s ( velocidad máxima ). [21] No permitía cables de extensión, debido a limitaciones de tiempo y potencia. Pocos dispositivos USB llegaron al mercado hasta que se lanzó USB 1.1 en agosto de 1998. USB 1.1 fue la primera revisión que se adoptó ampliamente y condujo a lo que Microsoft denominó " PC sin legado ". [22] [23] [24]
Ni USB 1.0 ni 1.1 especificaron un diseño para ningún conector más pequeño que el tipo estándar A o tipo B. Aunque aparecieron muchos diseños para un conector tipo B miniaturizado en muchos periféricos, la conformidad con el estándar USB 1. x se vio obstaculizada por el tratamiento de los periféricos que tenían conectores miniatura como si tuvieran una conexión atada (es decir: sin enchufe ni receptáculo en el extremo periférico). No se conocía ningún conector tipo A miniatura hasta que se introdujo uno en USB 2.0 (revisión 1.01).
USB 2.0 se lanzó en abril de 2000, agregando una tasa de señalización máxima más alta de 480 Mbit/s (rendimiento máximo de datos teórico 53 MByte/s [25] ) denominada Alta Velocidad o Alto Ancho de Banda , además de la tasa de señalización USB 1.x Full Speed de 12 Mbit/s (rendimiento máximo de datos teórico 1,2 MByte/s). [ 26 ]
Se han realizado modificaciones a la especificación USB mediante avisos de cambios de ingeniería (ECN). Los más importantes de estos ECN están incluidos en el paquete de especificaciones USB 2.0 disponible en USB.org: [27]
La especificación USB 3.0 se publicó el 12 de noviembre de 2008, y su gestión se transfirió del USB 3.0 Promoter Group al USB Implementers Forum (USB-IF) y se anunció el 17 de noviembre de 2008 en la SuperSpeed USB Developers Conference. [29]
USB 3.0 agrega una nueva arquitectura y protocolo denominado SuperSpeed , con conectores, receptáculos y cables compatibles con versiones anteriores . Los conectores y receptáculos SuperSpeed se identifican con un logotipo distintivo e insertos azules en los receptáculos de formato estándar.
La arquitectura SuperSpeed permite un modo de funcionamiento a una velocidad de 5,0 Gbit/s, además de los tres modos de funcionamiento existentes. Su eficiencia depende de una serie de factores, entre los que se incluyen la codificación de símbolos físicos y la sobrecarga a nivel de enlace. A una velocidad de señalización de 5 Gbit/s con codificación 8b/10b , cada byte necesita 10 bits para transmitirse, por lo que el rendimiento bruto es de 500 MB/s. Cuando se consideran el control de flujo, el enmarcado de paquetes y la sobrecarga del protocolo, es realista que se transmitan a una aplicación aproximadamente dos tercios del rendimiento bruto, o 330 MB/s. [30] : 4–19 La arquitectura de SuperSpeed es full-duplex ; todas las implementaciones anteriores, USB 1.0-2.0, son semidúplex, arbitradas por el host. [31]
Los dispositivos de baja y alta potencia siguen funcionando con este estándar, pero los dispositivos que implementan SuperSpeed pueden proporcionar una corriente aumentada de entre 150 mA y 900 mA, en pasos discretos de 150 mA. [30] : 9–9
USB 3.0 también introdujo el protocolo USB Attached SCSI (UASP) , que proporciona velocidades de transferencia generalmente más rápidas que el protocolo BOT (Bulk-Only-Transfer).
USB 3.1 , lanzado en julio de 2013, tiene dos variantes. La primera conserva la arquitectura y el protocolo SuperSpeed de USB 3.0 y su modo de funcionamiento se denomina recientemente USB 3.1 Gen 1 , [32] [33] y la segunda versión introduce una arquitectura y un protocolo SuperSpeedPlus distintivamente nuevos con un segundo modo de funcionamiento denominado USB 3.1 Gen 2 (comercializado como SuperSpeed+ USB ). SuperSpeed+ duplica la velocidad máxima de señalización a 10 Gbit/s (posteriormente comercializado como SuperSpeed USB 10 Gbps por la especificación USB 3.2), al tiempo que reduce la sobrecarga de codificación de línea a solo el 3% al cambiar el esquema de codificación a 128b/132b . [32] [34]
USB 3.2 , lanzado en septiembre de 2017, [35] conserva las arquitecturas y protocolos USB 3.1 SuperSpeed y SuperSpeedPlus existentes y sus respectivos modos de operación, pero introduce dos modos de operación SuperSpeedPlus adicionales ( USB 3.2 Gen 1×2 y USB 3.2 Gen 2×2 ) con la nueva estructura USB-C con tasas de señalización de 10 y 20 Gbit/s (tasas de datos sin procesar de 1212 y 2424 MB/s). El aumento en el ancho de banda es el resultado de la operación de dos carriles sobre cables existentes que originalmente estaban destinados a las capacidades flip-flop del conector USB-C. [36]
A partir de la especificación USB 3.2, USB-IF introdujo un nuevo esquema de nombres. [37] Para ayudar a las empresas con la marca de los diferentes modos de operación, USB-IF recomendó marcar las capacidades de 5, 10 y 20 Gbit/s como SuperSpeed USB 5Gbps , SuperSpeed USB 10 Gbps y SuperSpeed USB 20 Gbps , respectivamente. [38]
En 2023, fueron reemplazados nuevamente, [39] eliminando "SuperSpeed" , con USB 5Gbps , USB 10Gbps y USB 20Gbps . Con nuevos logotipos de empaque y puerto . [40]
La especificación USB4 fue publicada el 29 de agosto de 2019 por el USB Implementers Forum. [41]
La especificación USB4 2.0 fue publicada el 1 de septiembre de 2022 por el USB Implementers Forum. [42]
USB4 se basa en el protocolo Thunderbolt 3. [43] Admite un rendimiento de 40 Gbit/s, es compatible con Thunderbolt 3 y compatible con versiones anteriores de USB 3.2 y USB 2.0. [44] [45] La arquitectura define un método para compartir un único enlace de alta velocidad con múltiples tipos de dispositivos finales de forma dinámica que sirva mejor a la transferencia de datos por tipo y aplicación.
Durante el CES 2020 , USB-IF e Intel declararon su intención de permitir productos USB4 que admitan todas las funciones opcionales como los productos Thunderbolt 4 .
El USB4 2.0 con velocidades de 80 Gbit/s se presentará en noviembre de 2022. [46] [47] Se darán a conocer más detalles técnicos en dos días para desarrolladores USB programados para noviembre de 2022. [48]
La especificación USB4 establece que las siguientes tecnologías serán compatibles con USB4: [41]
Debido a los confusos esquemas de nombres anteriores, USB-IF decidió cambiarlos una vez más. A partir del 2 de septiembre de 2022, los nombres comerciales siguen la sintaxis "USB x Gbps", donde x es la velocidad de transferencia en Gbit/s. [49] Se puede ver una descripción general de los nombres y logotipos actualizados en la tabla adyacente.
Los modos de funcionamiento USB 3.2 Gen 2×2 y USB4 Gen 2×2 – o: USB 3.2 Gen 2×1 y USB4 Gen 2×1 – no son intercambiables ni compatibles; todos los controladores participantes deben funcionar con el mismo modo.
Un sistema USB consta de un host con uno o más puertos orientados hacia abajo (DFP), [57] y múltiples periféricos, formando una topología en estrella escalonada. Se pueden incluir concentradores USB adicionales , lo que permite hasta cinco niveles. Un host USB puede tener múltiples controladores, cada uno con uno o más puertos. Se pueden conectar hasta 127 dispositivos a un solo controlador de host. [58] [30] : 8–29 Los dispositivos USB se vinculan en serie a través de concentradores. El concentrador integrado en el controlador de host se denomina concentrador raíz .
Un dispositivo USB puede estar formado por varios subdispositivos lógicos a los que se denomina funciones de dispositivo . Un dispositivo compuesto puede proporcionar varias funciones, por ejemplo, una cámara web (función de dispositivo de vídeo) con un micrófono integrado (función de dispositivo de audio). Una alternativa a esto es un dispositivo compuesto , en el que el host asigna a cada dispositivo lógico una dirección distinta y todos los dispositivos lógicos se conectan a un concentrador integrado que se conecta al cable USB físico.
La comunicación entre dispositivos USB se basa en canales lógicos ( tuberías ). Una tubería es una conexión desde el controlador del host a una entidad lógica dentro de un dispositivo, llamada punto final . Debido a que las tuberías corresponden a los puntos finales, a veces los términos se usan indistintamente. Cada dispositivo USB puede tener hasta 32 puntos finales (16 de entrada y 16 de salida ), aunque es raro tener tantos. Los puntos finales son definidos y numerados por el dispositivo durante la inicialización (el período posterior a la conexión física llamado "enumeración") y, por lo tanto, son relativamente permanentes, mientras que las tuberías pueden abrirse y cerrarse.
Hay dos tipos de canalización: flujo y mensaje.
Cuando un host inicia una transferencia de datos, envía un paquete TOKEN que contiene un punto final especificado con una tupla de (dirección_dispositivo, número_punto_final) . Si la transferencia es desde el host al punto final, el host envía un paquete OUT (una especialización de un paquete TOKEN) con la dirección del dispositivo y el número de punto final deseados. Si la transferencia de datos es desde el dispositivo al host, el host envía un paquete IN en su lugar. Si el punto final de destino es un punto final unidireccional cuya dirección designada por el fabricante no coincide con el paquete TOKEN (por ejemplo, la dirección designada por el fabricante es IN mientras que el paquete TOKEN es un paquete OUT), el paquete TOKEN se ignora. De lo contrario, se acepta y la transacción de datos puede comenzar. Un punto final bidireccional, por otro lado, acepta paquetes IN y OUT.
Los puntos finales se agrupan en interfaces y cada interfaz está asociada con una única función del dispositivo. Una excepción a esto es el punto final cero, que se utiliza para la configuración del dispositivo y no está asociado con ninguna interfaz. Una única función del dispositivo compuesta por interfaces controladas de forma independiente se denomina dispositivo compuesto . Un dispositivo compuesto solo tiene una única dirección de dispositivo porque el host solo asigna una dirección de dispositivo a una función.
Cuando un dispositivo USB se conecta por primera vez a un host USB, se inicia el proceso de enumeración de dispositivos USB. La enumeración comienza enviando una señal de reinicio al dispositivo USB. La velocidad de señalización del dispositivo USB se determina durante la señalización de reinicio. Después del reinicio, el host lee la información del dispositivo USB y se le asigna una dirección única de 7 bits. Si el host admite el dispositivo, se cargan los controladores de dispositivo necesarios para comunicarse con el dispositivo y el dispositivo se configura en un estado configurado. Si se reinicia el host USB, el proceso de enumeración se repite para todos los dispositivos conectados.
El controlador del host dirige el flujo de tráfico a los dispositivos, por lo que ningún dispositivo USB puede transferir datos en el bus sin una solicitud explícita del controlador del host. En USB 2.0, el controlador del host sondea el bus en busca de tráfico, generalmente de forma rotatoria . El rendimiento de cada puerto USB está determinado por la velocidad más lenta del puerto USB o del dispositivo USB conectado al puerto.
Los concentradores USB 2.0 de alta velocidad contienen dispositivos denominados traductores de transacciones que realizan la conversión entre buses USB 2.0 de alta velocidad y buses de velocidad completa y baja. Puede haber un traductor por concentrador o por puerto.
Dado que hay dos controladores independientes en cada host USB 3.0, los dispositivos USB 3.0 transmiten y reciben a velocidades de señalización USB 3.0 independientemente de los dispositivos USB 2.0 o anteriores conectados a ese host. Las velocidades de señalización operativas para dispositivos anteriores se configuran de la manera tradicional.
La funcionalidad de un dispositivo USB se define mediante un código de clase enviado a un host USB. Esto permite que el host cargue módulos de software para el dispositivo y admita nuevos dispositivos de distintos fabricantes.
Las clases de dispositivos incluyen: [60]
La clase de dispositivo de almacenamiento masivo USB (MSC o UMS) estandariza las conexiones a los dispositivos de almacenamiento. En un principio, estaba pensada para unidades magnéticas y ópticas, pero se ha ampliado para admitir unidades flash y lectores de tarjetas SD . La capacidad de arrancar una tarjeta SD bloqueada contra escritura con un adaptador USB es especialmente ventajosa para mantener la integridad y el estado prístino e incorruptible del medio de arranque.
Aunque la mayoría de las computadoras personales desde principios de 2005 pueden arrancar desde dispositivos de almacenamiento masivo USB, el USB no está pensado como bus principal para el almacenamiento interno de una computadora. Sin embargo, el USB tiene la ventaja de permitir el intercambio en caliente , lo que lo hace útil para periféricos móviles, incluidas unidades de varios tipos.
Varios fabricantes ofrecen unidades de disco duro USB portátiles externas o carcasas vacías para unidades de disco. Estas ofrecen un rendimiento comparable al de las unidades internas, limitado por la cantidad y los tipos de dispositivos USB conectados y por el límite superior de la interfaz USB. Otros estándares que compiten para la conectividad de unidades externas incluyen eSATA , ExpressCard , FireWire (IEEE 1394) y, más recientemente, Thunderbolt .
Otro uso de los dispositivos de almacenamiento masivo USB es la ejecución portátil de aplicaciones de software (como navegadores web y clientes VoIP) sin necesidad de instalarlos en el ordenador host. [64] [65]
El Protocolo de Transferencia de Medios (MTP) fue diseñado por Microsoft para dar un acceso de nivel superior al sistema de archivos de un dispositivo que el almacenamiento masivo USB, a nivel de archivos en lugar de bloques de disco. También tiene características DRM opcionales . MTP fue diseñado para su uso con reproductores multimedia portátiles , pero desde entonces se ha adoptado como el protocolo de acceso de almacenamiento principal del sistema operativo Android a partir de la versión 4.1 Jelly Bean, así como Windows Phone 8 (los dispositivos Windows Phone 7 habían utilizado el protocolo Zune, una evolución de MTP). La razón principal de esto es que MTP no requiere acceso exclusivo al dispositivo de almacenamiento como lo hace UMS, aliviando posibles problemas si un programa Android solicita el almacenamiento mientras está conectado a una computadora. El principal inconveniente es que MTP no es tan compatible fuera de los sistemas operativos Windows.
Un ratón o teclado USB se puede utilizar normalmente con ordenadores antiguos que tengan puertos PS/2 con la ayuda de un pequeño adaptador USB a PS/2. Para ratones y teclados con soporte de protocolo dual, se puede utilizar un adaptador pasivo que no contiene circuitos lógicos : el hardware USB del teclado o ratón está diseñado para detectar si está conectado a un puerto USB o PS/2 y comunicarse utilizando el protocolo adecuado. [ cita requerida ] También existen convertidores activos que conectan teclados y ratones USB (normalmente uno de cada uno) a puertos PS/2. [66]
La actualización del firmware del dispositivo (DFU) es un mecanismo genérico para actualizar el firmware de los dispositivos USB con versiones mejoradas proporcionadas por sus fabricantes, ofreciendo (por ejemplo) una forma de implementar correcciones de errores de firmware. Durante la operación de actualización del firmware, los dispositivos USB cambian su modo operativo y se convierten en programadores PROM . Cualquier clase de dispositivo USB puede implementar esta capacidad siguiendo las especificaciones oficiales de DFU. Al hacerlo, se permite el uso de herramientas de host compatibles con DFU para actualizar el dispositivo. [63] [67] [68]
DFU se utiliza a veces como un protocolo de programación de memoria flash en microcontroladores con funcionalidad de cargador de arranque USB incorporada. [69]
El grupo de trabajo de dispositivos USB ha establecido especificaciones para la transmisión de audio y se han desarrollado e implementado estándares específicos para usos de clase de audio, como micrófonos, altavoces, auriculares, teléfonos, instrumentos musicales, etc. El grupo de trabajo ha publicado tres versiones de especificaciones de dispositivos de audio: [70] [71] USB Audio 1.0, 2.0 y 3.0, conocidas como "UAC" [72] o "ADC". [73]
UAC 3.0 introduce principalmente mejoras para dispositivos portátiles, como un menor consumo de energía al saturar los datos y permanecer en modo de bajo consumo con mayor frecuencia, y dominios de energía para diferentes componentes del dispositivo, lo que permite apagarlos cuando no están en uso. [74]
UAC 2.0 introdujo soporte para USB de alta velocidad (además de Full Speed), lo que permite un mayor ancho de banda para interfaces multicanal, frecuencias de muestreo más altas, [75] menor latencia inherente, [76] [72] y una mejora de 8x en la resolución de tiempo en modos sincrónicos y adaptativos. [72] UAC2 también introdujo el concepto de dominios de reloj, que proporciona información al host sobre qué terminales de entrada y salida derivan sus relojes de la misma fuente, así como un soporte mejorado para codificaciones de audio como DSD , efectos de audio, agrupamiento de canales, controles de usuario y descripciones de dispositivos. [72] [77]
Los dispositivos UAC 1.0 siguen siendo comunes, sin embargo, debido a su compatibilidad sin controladores entre plataformas, [75] y también en parte debido a la falla de Microsoft en implementar UAC 2.0 durante más de una década después de su publicación, habiendo finalmente agregado soporte para Windows 10 a través de Creators Update el 20 de marzo de 2017. [78] [79] [77] UAC 2.0 también es compatible con macOS , iOS y Linux , [72] sin embargo, Android solo implementa un subconjunto de la especificación UAC 1.0. [80]
USB proporciona tres tipos de sincronización isócrona (de ancho de banda fijo), [81] todos ellos utilizados por dispositivos de audio: [82]
Aunque la especificación USB describía originalmente el modo asincrónico como utilizado en "altavoces de bajo coste" y el modo adaptativo en "altavoces digitales de alta gama", [86] existe la percepción opuesta en el mundo de la alta fidelidad , donde el modo asincrónico se publicita como una característica y los modos adaptativos/sincrónicos tienen mala reputación. [87] [88] [80] En realidad, todos los tipos pueden ser de alta o baja calidad, dependiendo de la calidad de su ingeniería y de la aplicación. [84] [72] [89] El modo asincrónico tiene la ventaja de no estar ligado al reloj de la computadora, pero la desventaja de requerir una conversión de frecuencia de muestreo al combinar varias fuentes.
Los conectores que especifica el comité USB respaldan una serie de objetivos subyacentes del USB y reflejan las lecciones aprendidas de los muchos conectores que ha utilizado la industria informática. El conector hembra montado en el host o dispositivo se denomina receptáculo y el conector macho conectado al cable se denomina enchufe . [30] : 2-5–2-6 Los documentos oficiales de especificación USB también definen periódicamente el término macho para representar el enchufe y hembra para representar el receptáculo. [90]
El diseño tiene como objetivo dificultar la inserción incorrecta de un enchufe USB en su receptáculo. La especificación USB requiere que el enchufe del cable y el receptáculo estén marcados para que el usuario pueda reconocer la orientación adecuada. [30] Sin embargo, el enchufe USB-C es reversible. Los cables USB y los dispositivos USB pequeños se mantienen en su lugar mediante la fuerza de sujeción del receptáculo, sin tornillos, clips ni tornillos giratorios como utilizan algunos conectores.
Los conectores A y B diferentes evitan que se conecten dos fuentes de alimentación por accidente. Sin embargo, parte de esta topología dirigida se pierde con la llegada de las conexiones USB multipropósito (como USB On-The-Go en los teléfonos inteligentes y los enrutadores Wi-Fi alimentados por USB), que requieren cables A a A, B a B y, a veces, cables divisores en Y.
Los tipos de conectores USB se multiplicaron a medida que avanzaba la especificación. La especificación USB original detallaba enchufes y receptáculos estándar A y estándar B. Los conectores eran diferentes para que los usuarios no pudieran conectar un receptáculo de computadora a otro. Los pines de datos en los enchufes estándar están empotrados en comparación con los pines de alimentación, de modo que el dispositivo puede encenderse antes de establecer una conexión de datos. Algunos dispositivos funcionan en modos diferentes según se realice o no la conexión de datos. Las bases de carga suministran energía y no incluyen un dispositivo host ni pines de datos, lo que permite que cualquier dispositivo USB compatible se cargue o funcione desde un cable USB estándar. Los cables de carga proporcionan conexiones de alimentación, pero no de datos. En un cable solo de carga, los cables de datos se cortocircuitan en el extremo del dispositivo; de lo contrario, el dispositivo puede rechazar el cargador por no ser adecuado.
El estándar USB 1.1 especifica que un cable estándar puede tener una longitud máxima de 5 metros (16 pies 5 pulgadas) con dispositivos que funcionan a máxima velocidad (12 Mbit/s), y una longitud máxima de 3 metros (9 pies 10 pulgadas) con dispositivos que funcionan a baja velocidad (1,5 Mbit/s). [91] [92] [93]
USB 2.0 permite una longitud máxima de cable de 5 metros (16 pies 5 pulgadas) para dispositivos que funcionan a alta velocidad (480 Mbit/s). [93]
El estándar USB 3.0 no especifica directamente una longitud máxima de cable, y solo requiere que todos los cables cumplan con una especificación eléctrica: para el cableado de cobre con cables AWG 26, la longitud práctica máxima es de 3 metros (9 pies 10 pulgadas). [94]
En el mercado se pueden encontrar cables puente USB o cables de transferencia de datos que ofrecen conexiones directas de PC a PC. Un cable puente es un cable especial con un chip y componentes electrónicos activos en el medio del cable. El chip en el medio del cable actúa como un periférico para ambos ordenadores y permite la comunicación punto a punto entre ellos. Los cables puente USB se utilizan para transferir archivos entre dos ordenadores a través de sus puertos USB.
Popularizada por Microsoft como Windows Easy Transfer , la utilidad de Microsoft utilizaba un cable puente USB especial para transferir archivos y configuraciones personales desde un ordenador con una versión anterior de Windows a un ordenador con una versión más reciente. En el contexto del uso del software Windows Easy Transfer , el cable puente a veces se conoce como cable Easy Transfer .
Muchos cables de transferencia de datos o puentes USB siguen siendo USB 2.0, pero también hay una serie de cables de transferencia USB 3.0. A pesar de que el USB 3.0 es 10 veces más rápido que el USB 2.0, los cables de transferencia USB 3.0 son solo entre 2 y 3 veces más rápidos dado su diseño. [ Aclaración necesaria ]
La especificación USB 3.0 introdujo un cable cruzado A-A sin alimentación para conectar dos PC. Estos no están pensados para la transferencia de datos, sino para usos de diagnóstico.
Los cables puente USB han perdido importancia con las capacidades de dispositivo de doble función USB introducidas con la especificación USB 3.1. Según las especificaciones más recientes, USB admite la mayoría de los escenarios que conectan sistemas directamente con un cable tipo C. Sin embargo, para que la capacidad funcione, los sistemas conectados deben admitir el cambio de funciones. Las capacidades de doble función requieren que haya dos controladores dentro del sistema, así como un controlador de función . Si bien esto se puede esperar en una plataforma móvil como una tableta o un teléfono, las PC de escritorio y las portátiles a menudo no admiten funciones duales. [95]
Los conectores USB ascendentes suministran energía a un voltaje nominal de 5 V CC a través del pin V_BUS a los dispositivos USB descendentes.
En esta sección se describe el modelo de distribución de energía de USB que existía antes de Power-Delivery (USB-PD). En los dispositivos que no utilizan PD, USB proporciona hasta 7,5 W a través de conectores tipo A y tipo B, y hasta 15 W a través de USB-C. Toda la energía USB anterior a PD se proporciona a 5 V.
Para un host que proporciona energía a los dispositivos, USB tiene un concepto de carga unitaria . Cualquier dispositivo puede consumir energía de una unidad y los dispositivos pueden solicitar más energía en estos pasos discretos. No es necesario que el host proporcione la energía solicitada y un dispositivo no puede consumir más energía de la negociada.
Los dispositivos que no consumen más de una unidad se denominan dispositivos de bajo consumo . Todos los dispositivos deben actuar como dispositivos de bajo consumo cuando comienzan sin configurar. Para dispositivos USB hasta USB 2.0, una carga unitaria es de 100 mA (o 500 mW), mientras que USB 3.0 define una carga unitaria como 150 mA (750 mW). El USB-C con todas las funciones puede admitir dispositivos de bajo consumo con una carga unitaria de 250 mA (o 1250 mW).
Los dispositivos que consumen más de una unidad son dispositivos de alta potencia (como las típicas unidades de disco duro de 2,5 pulgadas). USB hasta 2.0 permite que un host o concentrador proporcione hasta 2,5 W a cada dispositivo, en cinco pasos discretos de 100 mA, y los dispositivos SuperSpeed (USB 3.0 y superiores) permiten que un host o un concentrador proporcione hasta 4,5 W en seis pasos de 150 mA. USB-C admite dispositivos de alta potencia con hasta 7,5 W, en seis pasos de 250 mA. USB-C con todas las funciones puede admitir hasta 15 W.
Para reconocer el modo de carga de batería, un puerto de carga dedicado coloca una resistencia que no supera los 200 Ω entre los terminales D+ y D−. Los carriles de datos en cortocircuito o casi en cortocircuito con menos de 200 Ω de resistencia entre los terminales D+ y D− significan un puerto de carga dedicado (DCP) con velocidades de carga indefinidas. [96] [97]
Además del USB estándar, existe un sistema propietario de alta potencia conocido como PoweredUSB , desarrollado en la década de 1990 y utilizado principalmente en terminales de puntos de venta como cajas registradoras.
Las señales USB se transmiten utilizando señalización diferencial en cables de datos de par trenzado con una impedancia característica de 90 Ω ± 15% . [98] USB 2.0 y las especificaciones anteriores definen un solo par en half-duplex (HDx). USB 3.0 y las especificaciones posteriores definen un par dedicado para la compatibilidad con USB 2.0 y dos o cuatro pares para la transferencia de datos: dos pares en full-duplex (FDx) para variantes de un solo carril requieren al menos conectores SuperSpeed (SS); cuatro pares en full-duplex para variantes de dos carriles ( ×2 ) requieren conectores USB-C. USB4 Gen 4 requiere el uso de los cuatro pares, pero permite la configuración de pares asimétricos. [99] En este caso, se utiliza un carril para los datos ascendentes y los otros tres para los datos descendentes o viceversa. USB4 Gen 4 utiliza modulación de amplitud de pulso en 3 niveles, lo que proporciona un trit de información por cada baudio transmitido, la frecuencia de transmisión de 12,8 GHz se traduce a una velocidad de transmisión de 25,6 GBd [100] y la traducción de 11 bits a 7 trit proporciona una velocidad de transmisión máxima teórica de poco más de 40,2 Gbit/s. [101]
Una conexión USB siempre se realiza entre un extremo A , ya sea un host o un puerto de bajada de un concentrador, y un extremo B , ya sea un dispositivo periférico o el puerto de subida de un concentrador. Históricamente, esto se hizo evidente por el hecho de que los hosts solo tenían puertos Tipo A y los dispositivos periféricos solo tenían Tipo B, y cada cable (válido) tenía un enchufe Tipo A y un enchufe Tipo B. USB-C (Tipo C) es un conector único que reemplaza todos los conectores Tipo A y Tipo B ( conectores heredados ), por lo que cuando ambos lados son equipos modernos con puertos USB-C, negocian cuál es el host (A) y cuál es el dispositivo (B).
Durante la comunicación USB, los datos se transmiten como paquetes . Inicialmente, todos los paquetes se envían desde el host a través del concentrador raíz y posiblemente más concentradores a los dispositivos. Algunos de esos paquetes indican a un dispositivo que envíe algunos paquetes en respuesta.
Las transacciones básicas de USB son:
El USB Implementers Forum presentó el estándar de comunicación inalámbrica Media Agnostic USB (MA-USB) v.1.0 basado en el protocolo USB el 29 de julio de 2015. El USB inalámbrico es una tecnología de reemplazo de cable y utiliza tecnología inalámbrica de banda ultra ancha para velocidades de datos de hasta 480 Mbit/s. [103]
El USB-IF utilizó la especificación WiGig Serial Extension v1.2 como base inicial para la especificación MA-USB y es compatible con SuperSpeed USB (3.0 y 3.1) y Hi-Speed USB (USB 2.0). Los dispositivos que utilizan MA-USB tendrán la marca "Powered by MA-USB", siempre que el producto cumpla con los requisitos de su programa de certificación. [104]
InterChip USB es una variante de chip a chip que elimina los transceptores convencionales que se encuentran en el USB normal. La capa física HSIC utiliza aproximadamente un 50 % menos de energía y un 75 % menos de área de placa en comparación con USB 2.0. [105] Es un estándar alternativo a SPI e I2C .
USB-C (oficialmente USB Type-C ) es un estándar que define un nuevo conector, y varias nuevas características de conexión. Entre ellas, soporta el modo alternativo , que permite transportar otros protocolos a través del conector y cable USB-C. Esto se usa comúnmente para soportar los protocolos DisplayPort o HDMI , lo que permite conectar una pantalla, como un monitor de computadora o un televisor , a través de USB-C.
Todos los demás conectores no son capaces de realizar operaciones de dos carriles (Gen 1×2 y Gen 2×2) en USB 3.2, pero se pueden utilizar para operaciones de un solo carril (Gen 1×1 y Gen 2×1). [106]
DisplayLink es una tecnología que permite conectar varias pantallas a una computadora a través de USB. Se introdujo alrededor de 2006 y, antes de la aparición del modo alternativo a través de USB-C, era la única forma de conectar pantallas a través de USB. Es una tecnología patentada, no estandarizada por el USB Implementers Forum y, por lo general, requiere un controlador de dispositivo independiente en la computadora.
En un principio, el USB se consideró un complemento de la tecnología FireWire ( IEEE 1394 ), que se diseñó como un bus serial de gran ancho de banda que interconectaba de manera eficiente periféricos como unidades de disco, interfaces de audio y equipos de video. En el diseño inicial, el USB operaba a una velocidad de datos mucho menor y utilizaba hardware menos sofisticado. Era adecuado para periféricos pequeños como teclados y dispositivos señaladores.
Las diferencias técnicas más significativas entre FireWire y USB incluyen:
Estas y otras diferencias reflejan los distintos objetivos de diseño de los dos buses: USB fue diseñado para simplicidad y bajo costo, mientras que FireWire fue diseñado para alto rendimiento, particularmente en aplicaciones sensibles al tiempo como audio y video. Aunque similar en tasa de señalización máxima teórica, FireWire 400 es más rápido que USB 2.0 de alto ancho de banda en uso real, [107] especialmente en uso de alto ancho de banda como discos duros externos. [108] [109] [110] [111] El estándar más nuevo FireWire 800 es dos veces más rápido que FireWire 400 y más rápido que USB 2.0 de alto ancho de banda tanto teóricamente como prácticamente. [112] Sin embargo, las ventajas de velocidad de FireWire dependen de técnicas de bajo nivel como el acceso directo a memoria (DMA), que a su vez han creado oportunidades para exploits de seguridad como el ataque DMA .
El chipset y los controladores utilizados para implementar USB y FireWire tienen un impacto crucial en qué parte del ancho de banda prescrito por la especificación se logra en el mundo real, junto con la compatibilidad con los periféricos. [113]
Los estándares de alimentación a través de Ethernet (PoE) IEEE 802.3af , 802.3at y 802.3bt especifican esquemas de negociación de energía más elaborados que los del USB alimentado. Operan a 48 V CC y pueden suministrar más energía (hasta 12,95 W para 802.3af , 25,5 W para 802.3at , también conocido como PoE+ , 71 W para 802.3bt , también conocido como 4PPoE ) a través de un cable de hasta 100 metros en comparación con USB 2.0, que proporciona 2,5 W con una longitud máxima de cable de 5 metros. Esto ha hecho que PoE sea popular para teléfonos de voz sobre IP , cámaras de seguridad con circuito cerrado de televisión, puntos de acceso inalámbricos y otros dispositivos en red dentro de edificios. Sin embargo, USB es más económico que PoE siempre que la distancia sea corta y la demanda de energía sea baja.
Los estándares de Ethernet requieren aislamiento eléctrico entre el dispositivo conectado en red (computadora, teléfono, etc.) y el cable de red hasta 1500 V CA o 2250 V CC durante 60 segundos. [114] USB no tiene tal requisito ya que fue diseñado para periféricos estrechamente asociados con una computadora host y, de hecho, conecta las conexiones a tierra de los periféricos y del host. Esto le da a Ethernet una ventaja de seguridad significativa sobre USB con periféricos como módems de cable y DSL conectados a cableado externo que pueden asumir voltajes peligrosos bajo ciertas condiciones de falla. [115] [116]
La definición de clase de dispositivo USB para dispositivos MIDI transmite datos de música de la interfaz digital de instrumentos musicales ( MIDI ) a través de USB. [117] La capacidad MIDI se amplía para permitir hasta dieciséis cables MIDI virtuales simultáneos , cada uno de los cuales puede transportar los dieciséis canales y relojes MIDI habituales.
El USB es competitivo para dispositivos de bajo costo y físicamente adyacentes. Sin embargo, la alimentación a través de Ethernet y el estándar de conector MIDI tienen una ventaja en dispositivos de alta gama que pueden tener cables largos. El USB puede causar problemas de bucle de tierra entre equipos, porque conecta referencias de tierra en ambos transceptores. Por el contrario, el estándar de conector MIDI y Ethernet tienen un aislamiento incorporado a 500 V o más.
El conector eSATA es un conector SATA más robusto , pensado para la conexión a discos duros externos y SSD. La velocidad de transferencia de eSATA (hasta 6 Gbit/s) es similar a la de USB 3.0 (hasta 5 Gbit/s) y USB 3.1 (hasta 10 Gbit/s). Un dispositivo conectado mediante eSATA aparece como un dispositivo SATA normal, lo que proporciona un rendimiento completo y una compatibilidad total asociada con las unidades internas.
eSATA no suministra energía a dispositivos externos, lo que supone una desventaja cada vez mayor en comparación con USB. Aunque los 4,5 W de USB 3.0 a veces son insuficientes para alimentar discos duros externos, la tecnología avanza y los discos externos necesitan cada vez menos energía, lo que disminuye la ventaja de eSATA. eSATAp (Power over eSATA, también conocido como ESATA/USB) es un conector introducido en 2009 que suministra energía a los dispositivos conectados mediante un nuevo conector compatible con versiones anteriores. En un portátil, eSATAp suele suministrar solo 5 V para alimentar un HDD/SSD de 2,5 pulgadas; en una estación de trabajo de escritorio, puede suministrar además 12 V para alimentar dispositivos más grandes, incluidos HDD/SSD de 3,5 pulgadas y unidades ópticas de 5,25 pulgadas.
Se puede agregar soporte eSATAp a una máquina de escritorio en forma de un soporte que conecta los recursos SATA, de alimentación y USB de la placa base.
eSATA, al igual que USB, admite conexión en caliente , aunque esto puede estar limitado por los controladores del sistema operativo y el firmware del dispositivo.
Thunderbolt combina PCI Express y Mini DisplayPort en una nueva interfaz de datos en serie. Las implementaciones originales de Thunderbolt tienen dos canales, cada uno con una velocidad de transferencia de 10 Gbit/s, lo que da como resultado un ancho de banda unidireccional agregado de 20 Gbit/s. [118]
Thunderbolt 2 utiliza agregación de enlaces para combinar los dos canales de 10 Gbit/s en un canal bidireccional de 20 Gbit/s. [119]
Thunderbolt 3 y Thunderbolt 4 utilizan USB-C . [120] [121] [122] Thunderbolt 3 tiene dos canales físicos bidireccionales de 20 Gbit/s, agregados para aparecer como un solo canal lógico bidireccional de 40 Gbit/s. Los controladores Thunderbolt 3 pueden incorporar un controlador USB 3.1 Gen 2 para proporcionar compatibilidad con dispositivos USB. También son capaces de proporcionar DisplayPort Alternate Mode, así como DisplayPort over USB4 Fabric, lo que hace que la función de un puerto Thunderbolt 3 sea un superconjunto de la de un puerto USB 3.1 Gen 2.
Modo alternativo de DisplayPort 2.0: USB4 (que requiere USB-C) requiere que los concentradores admitan DisplayPort 2.0 a través de un modo alternativo de USB-C. DisplayPort 2.0 puede admitir una resolución de 8K a 60 Hz con color HDR10. [123] DisplayPort 2.0 puede usar hasta 80 Gbit/s, que es el doble de la cantidad disponible para los datos USB, porque envía todos los datos en una dirección (al monitor) y, por lo tanto, puede usar los ocho cables de datos a la vez. [123]
Después de que la especificación se hizo libre de regalías y la custodia del protocolo Thunderbolt se transfirió de Intel al Foro de Implementadores USB, Thunderbolt 3 se implementó efectivamente en la especificación USB4, con compatibilidad con Thunderbolt 3 opcional pero recomendada para productos USB4. [124]
Hay varios convertidores de protocolo disponibles que convierten señales de datos USB hacia y desde otros estándares de comunicaciones.
Debido a la prevalencia del estándar USB, existen muchos ataques que lo utilizan. Uno de los ejemplos más grandes de esto en la actualidad es el conocido como USB killer , un dispositivo que daña los dispositivos USB al enviar pulsos de alto voltaje a través de las líneas de datos.
En versiones de Microsoft Windows anteriores a Windows XP , Windows ejecutaba automáticamente un script (si estaba presente) en ciertos dispositivos a través de AutoRun , uno de los cuales son dispositivos de almacenamiento masivo USB, que pueden contener software malicioso. [125]
En aplicaciones donde la latencia de transmisión es importante, UAC2 ofrece una reducción de hasta 8 veces con respecto a UAC1. ... Cada método de sincronización tiene ventajas y desventajas y aplicaciones que se adaptan mejor a sus necesidades.
ADC-2 hace referencia a la definición de clase de dispositivo USB para dispositivos de audio, versión 2.0.
Todos los sistemas operativos (Win, OSX y Linux) admiten USB Audio Class 1 de forma nativa. Esto significa que no es necesario instalar controladores, es plug&play.
Tenga en cuenta que el USB de velocidad completa tiene una latencia intrínseca mucho mayor de 2 ms
La compatibilidad con la clase 2 permite frecuencias de muestreo mucho más altas, como PCM de 24 bits/384 kHz y DSD (DoP) hasta DSD256.
¡Ahora tenemos soporte nativo para dispositivos USB Audio 2.0 con un controlador de clase de bandeja de entrada! Esta es una versión anterior del controlador que no tiene todas las funciones habilitadas
El submodo sincrónico no se usa comúnmente con audio porque tanto el host como el periférico están a merced del reloj USB.
El PCM2906C emplea la arquitectura SpAct, el sistema exclusivo de TI que recupera el reloj de audio de los datos de paquetes USB.
Las primeras interfaces de reproducción USB usaban el modo sincrónico, pero adquirieron una reputación de mala calidad del reloj recuperado (y la mala calidad de reproducción resultante). Esto se debió principalmente a deficiencias en la implementación del reloj en lugar de deficiencias inherentes del enfoque.
El hecho de que no haya una línea de reloj dentro del cable USB hace que el cable sea más delgado, lo que es una ventaja. Pero, sin importar cuán buenos sean los osciladores de cristal en los extremos de envío y recepción, siempre habrá alguna diferencia entre los dos...
El DAC USB síncrono es el de menor calidad de los tres ... Adaptativo ... significa que no hay un reloj maestro continuo y preciso en el DAC, lo que provoca fluctuaciones en la transmisión de audio. ... Asíncrono: este es el más complejo de implementar, pero es una gran mejora con respecto a los otros tipos.
El modo sincrónico no se utiliza en un DAC de calidad porque es muy inestable. ... el modo asincrónico es el mejor de estos modos.
Esto no es más cierto que decir que "debe" sostener el tenedor con la mano izquierda. De hecho, si sabe lo que está haciendo, se alimentará con cualquiera de las dos manos. La cuestión es realmente una cuestión de buenas prácticas de ingeniería.