Bus serie universal (USB) | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||
Tipo de | Neumático | ||||||||||||||||||
Historia | |||||||||||||||||||
Desarrollador | Compaq , DEC , IBM , Intel , Microsoft , NEC y Nortel | ||||||||||||||||||
Desarrollado | 1996 | ||||||||||||||||||
producido | de mayo de 1996 [1] | ||||||||||||||||||
expulsado |
Puerto serie , puerto paralelo, puerto de juegos , ADB , PS/2 , |
||||||||||||||||||
Especificaciones | |||||||||||||||||||
Longitud, mm | 6,65 ( Tipo-C ) | ||||||||||||||||||
Ancho, mm |
|
||||||||||||||||||
Altura, mm |
|
||||||||||||||||||
Intercambio en caliente | Sí | ||||||||||||||||||
Externo | Sí | ||||||||||||||||||
Cable | 2–5 m (dependiendo de la categoría) | ||||||||||||||||||
conclusiones |
|
||||||||||||||||||
Parámetros eléctricos | |||||||||||||||||||
Voltaje | 5V CC | ||||||||||||||||||
máx. Voltaje |
|
||||||||||||||||||
máx. Actual |
|
||||||||||||||||||
Opciones de datos | |||||||||||||||||||
Transferencia de datos | paquetes de datos definidos por especificaciones | ||||||||||||||||||
Ancho de bits | 1 bit | ||||||||||||||||||
Banda ancha |
Dependiendo del modo:
|
||||||||||||||||||
máx. dispositivos | 127 | ||||||||||||||||||
Protocolo | coherente | ||||||||||||||||||
asignación de pines | |||||||||||||||||||
|
|||||||||||||||||||
Archivos multimedia en Wikimedia Commons |
USB ( Universal Serial Bus en inglés - "universal serial bus") es una interfaz en serie para conectar dispositivos periféricos a la tecnología informática . Ha recibido la distribución más amplia y se ha convertido en la interfaz principal para conectar periféricos a electrodomésticos digitales.
La interfaz permite no solo intercambiar datos, sino también proporcionar energía al dispositivo periférico. La arquitectura de red le permite conectar una gran cantidad de periféricos incluso a un dispositivo con un solo conector USB.
El desarrollo de las especificaciones USB se lleva a cabo en el marco de la organización internacional sin fines de lucro USB Implementers Forum (USB-IF), que une a desarrolladores y fabricantes de equipos con el bus USB. En el proceso de desarrollo, se han desarrollado varias versiones de las especificaciones . Sin embargo, los desarrolladores lograron mantener un alto grado de compatibilidad entre equipos de diferentes generaciones. La especificación de interfaz cubre una amplia gama sin precedentes de problemas relacionados con la conexión e interacción de dispositivos periféricos con un sistema informático:
En Intel, el cumpleaños de USB es el 15 de noviembre de 1995 [4] [5] . Las primeras especificaciones para USB 1.0 se presentaron en 1994-1995. El desarrollo de USB fue apoyado por Intel , Microsoft , Philips , US Robotics . USB se ha convertido en un "denominador común" bajo tres aspiraciones no relacionadas de diferentes empresas:
La compatibilidad con USB se lanzó en 1996 como un parche para Windows 95 OEM Service Release 2 , luego se convirtió en estándar en Windows 98 . En los primeros años (1996-1997) había pocos dispositivos, por lo que el bus se llamaba en broma "Useless serial bus" ("bus serie inútil") [6] . Sin embargo, los fabricantes se dieron cuenta rápidamente de los beneficios del USB y, para el año 2000, la mayoría de las impresoras y escáneres funcionaban con la nueva interfaz.
Hewlett-Packard , Intel , Lucent (ahora Alcatel-Lucent ), Microsoft , NEC y Philips tomaron conjuntamente la iniciativa de desarrollar una versión más rápida de USB. La especificación USB 2.0 se publicó en abril de 2000 y, a fines de 2001, esta versión fue estandarizada por el USB Implementers Forum. USB 2.0 es compatible con todas las versiones anteriores de USB.
Algunos de los primeros dispositivos móviles tenían un voluminoso conector USB-B [7] incorporado . Pero más a menudo, los desarrolladores violaron el estándar al incorporar un USB-A [7] un poco más compacto , o idearon su propio conector. Con el estándar USB 2.0 aparecieron los conectores Mini-A y Mini-B específicos para dispositivos móviles, y más tarde apareció la especificación USB OTG. En 2007 aparecieron los conectores Micro-A y Micro-B, dos veces más finos que los Mini y más fiables [7] . Otro inconveniente de MiniUSB es que los dispositivos de fijación estaban en la periferia, no en el cable, y en caso de avería había que reparar el dispositivo, en lugar de cambiar un cable barato [7] . En 2009, en un intento por reducir la cantidad de desechos electrónicos , Micro-B se anunció como el estándar principal para los cargadores de teléfonos móviles, pero el memorándum nunca se implementó por completo: Apple simplemente hizo un adaptador de Micro-B a su conector.
A principios de la década de 2000, Apple Corporation dio prioridad al bus FireWire , en cuyo desarrollo participó activamente. Los primeros modelos de iPod solo estaban equipados con una interfaz FireWire y no había USB. Posteriormente, la empresa abandonó FireWire en favor de USB, dejando FireWire solo para recargar en algunos modelos. Sin embargo, algunos de los teclados y ratones producidos desde la segunda mitad de la década de 1990 tenían una interfaz USB.
Desde principios de la década de 2000, la compatibilidad con USB se ha habilitado en el BIOS (la compatibilidad con USB en el segmento corporativo comenzó a mediados de la década de 1990). Esto permitió arrancar desde unidades flash , por ejemplo, para reinstalar el sistema operativo; la necesidad de un teclado PS/2 desapareció . Las placas base de escritorio modernas admiten más de 10 puertos USB. La gran mayoría de las computadoras portátiles y de escritorio modernas no tienen puertos COM o LPT .
Mientras se producía la distribución de los puertos USB de la segunda versión, los fabricantes de discos duros externos ya se habían "descansado" frente a la limitación del USB 2.0, tanto en términos de corriente como de velocidad. Se requería un nuevo estándar, que se publicó en 2008. No fue posible cumplir con las cuatro vetas antiguas, por lo que se agregaron cinco nuevas. Las primeras placas base con soporte USB 3.0 salieron en 2010 . Para 2013, USB 3.0 se había convertido en la corriente principal. Hay placas de expansión disponibles comercialmente que agregan compatibilidad con USB 3.0 a las computadoras más antiguas.
Ya en los primeros años se descubrió un grave defecto de diseño del conector USB-A: es asimétrico, pero no muestra de qué lado conectarlo. Además, los teléfonos móviles comenzaron a expandir la funcionalidad de USB para conectar dispositivos no tradicionales: Motorola RAZR V3 conectaba un auricular a través de un Mini-B, en los teléfonos inteligentes Samsung , se agregaron seis nuevos entre los cinco pines Micro-B. Ambos problemas fueron resueltos por el conector USB-C simétrico, que apareció en 2014. Algunos cables están duplicados en ambos lados, los controladores "acuerdan" la asignación de otros cuando están conectados. Además, USB-C tiene varios cables redundantes para transportar, por ejemplo, audio analógico o video HDMI .
Lanzado en 2019, USB4 permitió redirigir líneas de súper alta velocidad, brindando 40 Gbps en una dirección. También permitió el llamado " túnel de protocolo ", donde el video y PCIe están "envueltos" en paquetes USB, dando más espacio para datos [8] (los dispositivos más antiguos que no pueden implementarse necesitan convertidores especiales). Abandonó los conectores antiguos, dejando solo USB-C.
Un cable USB (hasta 2.0 inclusive) consta de cuatro conductores de cobre: dos conductores de alimentación y dos conductores de datos en un par trenzado. Los conductores están encerrados en una trenza puesta a tierra (blindaje).
Los cables USB están orientados, es decir, tienen terminales físicamente diferentes "al dispositivo" (Tipo B) y "al host" (Tipo A). Es posible implementar un dispositivo USB sin cable con una punta "al host" integrada en el cuerpo. También es posible incrustar el cable de forma permanente en el dispositivo, como en un mouse (el estándar prohíbe esto para dispositivos de velocidad completa y alta, pero los fabricantes lo violan). Existen, aunque prohibidos por el estándar, extensores USB pasivos que tienen conectores "desde el host" y "hacia el host".
Los cables forman la interfaz entre los dispositivos USB y el host USB. Un controlador USB controlado por software actúa como host , lo que proporciona la funcionalidad de toda la interfaz. El controlador, por regla general, está integrado en el chip Southbridge , aunque también se puede fabricar en un paquete separado. El controlador está conectado a dispositivos externos a través de un concentrador USB . Debido al hecho de que el bus USB tiene una topología de árbol , el concentrador de nivel superior se denomina concentrador raíz. Está integrado en el controlador USB y es una parte integral del mismo.
Para conectar dispositivos externos a un concentrador USB, proporciona puertos que terminan en conectores. Los dispositivos USB o los concentradores USB de nivel inferior se pueden conectar a los conectores mediante la administración de cables. Dichos concentradores son dispositivos electrónicos activos (no hay pasivos) que sirven a varios de sus propios puertos USB. Con concentradores USB, se permiten hasta cinco niveles de cascada, sin contar la raíz. La interfaz USB en sí misma no permite conectar dos computadoras (dispositivos host) entre sí, esto es posible solo cuando se usan componentes electrónicos especiales que tienen dos entradas USB y un puente especializado, por ejemplo, emulando dos adaptadores Ethernet conectados, uno para cada lado, o utilizando software especializado para compartir archivos [9] [10] .
Los dispositivos pueden recibir alimentación por bus, pero también pueden requerir una fuente de alimentación externa. Los dispositivos están garantizados hasta 100 mA de forma predeterminada y hasta 500 mA después de la negociación con el controlador de host. El modo de espera también es compatible con dispositivos y concentradores a pedido del bus con la eliminación de la fuente de alimentación principal mientras se mantiene la energía de reserva y se enciende a pedido del bus.
USB admite la conexión y desconexión en caliente de dispositivos. Esto se consigue aumentando la longitud del contacto de puesta a tierra del conector en relación a los de señal. Cuando se conecta el conector USB, los contactos de tierra se cierran primero, los potenciales de las cajas de los dos dispositivos se igualan y la conexión adicional de los conductores de señal no provoca sobretensiones.
A nivel lógico, el dispositivo USB admite la transferencia de datos y recibe transacciones. Cada paquete de cada transacción contiene el número del endpoint (punto final) en el dispositivo. Cuando se conecta un dispositivo, los controladores en el kernel del sistema operativo leen la lista de puntos finales del dispositivo y crean estructuras de datos de control para comunicarse con cada punto final del dispositivo. La colección de puntos finales y estructuras de datos en el kernel del sistema operativo se denomina canalización.
Los puntos finales y, por lo tanto, los canales, pertenecen a una de cuatro clases: transmisión (en bloque), control (control), isócrono (isoch) e interrupción (interrupción). Los dispositivos de baja velocidad, como un mouse, no pueden tener canales isócronos y de transmisión.
El canal de control está destinado a intercambiar paquetes cortos de preguntas y respuestas con el dispositivo. Cualquier dispositivo tiene el canal de control 0, que permite que el software del sistema operativo lea información breve sobre el dispositivo, incluidos los códigos de fabricante y modelo utilizados para seleccionar un controlador y una lista de otros puntos finales.
El canal de interrupción le permite entregar paquetes cortos en ambas direcciones sin recibir una respuesta / confirmación, pero con una garantía de tiempo de entrega: el paquete se entregará a más tardar en N milisegundos. Por ejemplo, se utiliza en dispositivos de entrada (teclados, ratones, joysticks).
Un canal isócrono permite entregar paquetes sin garantía de entrega y sin respuestas/acuses de recibo, pero con una tasa de entrega garantizada de N paquetes por período de bus (1 kHz para baja y máxima velocidad, 8 kHz para alta velocidad). Se utiliza para transmitir información de audio y video.
El canal de transmisión garantiza la entrega de cada paquete, admite la suspensión automática de la transmisión de datos cuando el dispositivo no está listo (desbordamiento o subdesbordamiento del búfer), pero no garantiza la velocidad y la demora de la entrega. Se utiliza, por ejemplo, en impresoras y escáneres.
El tiempo del bus se divide en períodos, al comienzo del período, el controlador envía el paquete de "inicio del período" a todo el bus. Además, durante el período, se transmiten paquetes de interrupción, luego isócronos en la cantidad requerida, en el tiempo restante del período, se transmiten paquetes de control y, por último, paquetes de flujo.
El lado activo del bus es siempre el controlador, la transmisión de un paquete de datos del dispositivo al controlador se implementa como una pregunta breve del controlador y una respuesta larga que contiene datos del dispositivo. El programa de paquetes para cada período de bus se crea mediante los esfuerzos conjuntos del hardware del controlador y el software del controlador, por lo que muchos controladores utilizan un DMA extremadamente complejo con un programa DMA complejo generado por el controlador.
El tamaño del paquete para un punto final es una constante integrada en la tabla de puntos finales del dispositivo y no se puede cambiar. Es seleccionado por el desarrollador del dispositivo entre los compatibles con el estándar USB.
Especificación | Velocidad | USB estándar |
---|---|---|
Baja velocidad | hasta 1,5 Mbps | USB 1.0 |
A toda velocidad | hasta 12Mbps | USB 1.1 |
alta velocidad | hasta 480Mbps | USB 2.0 |
Super velocidad | hasta 5 Gbps | USB 3.0 / USB 3.1 de 1.ª generación / USB 3.2 de 1.ª generación |
Supervelocidad+ 10 Gbps | hasta 10 Gbps | USB 3.1 de 2.ª generación/USB 3.2 de 2.ª generación |
Supervelocidad ++ 20 Gbps | hasta 20 Gbps | USB 3.2 Gen 2x2 |
La especificación se publicó el 15 de enero de 1996.
Especificaciones:
La especificación se publicó en septiembre de 1998. Se corrigieron problemas y errores encontrados en la versión 1.0. La primera versión en ser ampliamente distribuida.[ especificar ] .
La especificación se publicó en abril de 2000.
El USB 2.0 se diferencia del USB 1.1 al introducir un modo de alta velocidad (marcado en el logotipo como "Alta velocidad" [12] ).
Hay tres modos de funcionamiento para dispositivos USB 2.0:
Las modificaciones posteriores a la especificación USB se publican como Avisos de cambio de ingeniería (ECN ) . Las modificaciones más importantes de ECN se presentan en el paquete de especificación USB 2.0 disponible en el sitio web del Foro de implementadores de USB .
En USB, un dispositivo es siempre el anfitrión, el otro es el periférico. Los teléfonos inteligentes, las cámaras digitales y otros dispositivos móviles tienen que ser un host o un periférico: cuando se conecta a una computadora, la cámara es un periférico y cuando se conecta a una impresora fotográfica, es un host.
USB OTG (de On-The-Go, ruso "on the go" ) hizo conveniente cambiar el rol de los dispositivos: ellos mismos determinan quiénes deben ser. Los dispositivos OTG se pueden conectar a una computadora y los periféricos USB se pueden conectar a dichos dispositivos a través del mismo puerto: generalmente unidades flash, cámaras digitales, teclados, ratones y otros dispositivos que no requieren controladores adicionales [13] .
La función del dispositivo está determinada por el cable: en el enchufe del lado del host, los pines 4 (ID) y 5 (Tierra) están cerrados; en el lado de la periferia, la identificación no está conectada a ninguna parte.
La especificación final de USB 3.0 apareció en 2008. USB 3.0 fue desarrollado por Intel , Microsoft , Hewlett-Packard , Texas Instruments , NEC y NXP Semiconductors .
La especificación USB 3.0 eleva la velocidad máxima de transferencia de datos a 5 Gbps, que es un orden de magnitud más rápido que USB 2.0. Además, la versión 3.0 se distingue por una mayor intensidad de corriente de 500 mA a 900 mA. Por lo tanto, se pueden alimentar más dispositivos desde un puerto, y tampoco hay necesidad de utilizar alimentación externa para algunos dispositivos [14] . En la especificación USB 3.0, los conectores y cables del estándar actualizado son física y funcionalmente compatibles con USB 2.0 y, para una identificación inequívoca, los conectores USB 3.0 suelen estar hechos de plástico azul (rojo para algunos fabricantes). El cable USB 2.0 contiene cuatro líneas: un par para recibir / transmitir datos, más y cero energía, el conector "A" tiene 4 pines. Para transportar señales SuperSpeed de alta velocidad, USB 3.0 agregó cuatro líneas de comunicación más (dos pares trenzados) y un pin de tierra de señal (GND_DRAIN), como resultado, el cable se volvió mucho más grueso. Los pines nuevos en los conectores USB 3.0 se encuentran separados de los antiguos en una fila de pines diferente.
En octubre de 2009, se informó que Intel había decidido retrasar la introducción de la compatibilidad con USB 3.0 en sus conjuntos de chips hasta 2011. Esta decisión llevó a que hasta 2011 este estándar no se generalizara, ya que no bastaba con que el usuario comprara simplemente una placa base, se necesitaba un adaptador adicional, o el fabricante de la placa base les soldaba un controlador de terceros [15 ] [16] .
El controlador de host USB 3.0 (xHCI) proporciona soporte de flujo de hardware para comandos, estados, datos entrantes y salientes, lo que le permite utilizar más completamente el ancho de banda del bus USB. Las transmisiones se agregaron al protocolo USB 3.0 SuperSpeed para admitir UASP .
Linux es compatible con USB 3.0 desde la versión del kernel 2.6.31 [17] . Windows 8 y 10 admiten USB 3.0 sin controladores adicionales.
Después del lanzamiento de la especificación USB 3.1, el estándar USB 3.0 pasó a llamarse USB 3.1 Gen 1. Según el CTO de USB-IF, esto se hizo para facilitar las cosas a los desarrolladores de dispositivos, es decir, para garantizar la compatibilidad con todas las versiones. de USB, ahora son suficientes dos especificaciones, USB 2 y USB 3.1, en lugar de tres [18] . USB 3.2 Gen 1 renombrado después del lanzamiento de la especificación USB 3.2.
USB 3.1El 31 de julio de 2013, el Grupo Promotor de USB 3.0 anunció la adopción de la especificación para la próxima interfaz, USB 3.1, que puede alcanzar hasta 10 Gbps [19] . El conector compacto USB Tipo-C que se usa con esta versión es simétrico, lo que permite insertar el cable en cualquier dirección, como lo hizo Apple anteriormente con los conectores Lightning .
Tras el lanzamiento del estándar USB 3.1, USB-IF anunció que el modo de transferencia USB 3.0 de hasta 5 Gb/s (SuperSpeed) ahora se clasificará como USB 3.1 Gen 1, y el nuevo estándar de transferencia USB 3.1 de hasta 10 Gb/s (SuperSpeed+) - como USB 3.1 Gen 2 [20] [21] .
USB 3.1 incluye dos estándares [22] :
En USB 3.1 Gen 2, además de aumentar la velocidad a 10 Gb/s, la sobrecarga de codificación se redujo hasta en un 3 % al cambiar a un esquema de codificación 128b/132b .
El estándar USB 3.1 es retrocompatible con USB 3.0 y USB 2.0.
En la práctica, la primera implementación de USB 3.1 como bloque IP de Synopsys mostró una tasa de transferencia efectiva de 7,2 Gb/s (900 MB por segundo) en diciembre de 2013 [23] .
USB 3.2El 22 de septiembre de 2017, la organización sin fines de lucro USB Implementers Forum (USB-IF) publicó la especificación estándar USB 3.2 [24] , la revisión final de USB 3.x. La nueva especificación prevé duplicar la tasa de transferencia de datos máxima posible en comparación con USB 3.1 Gen 2: de 10 a 20 Gb/s debido al uso de dos líneas a 5 Gb/s o 10 Gb/s solo para USB Type-C conector debido a sus contactos reversibles y al uso de salidas duplicadas como un canal separado. Los adaptadores de host se han modificado para realizar una transición sin inconvenientes del modo de salida redundante de 2 canales al modo de un solo canal. Los cables USB tipo C modernos que están disponibles ya son compatibles con este modo de "dos líneas", por lo que no es necesario comprar cables nuevos [25] . La aparición de los primeros dispositivos comerciales compatibles con el estándar USB 3.2 no se espera antes de la segunda mitad de 2019 [26] .
Las especificaciones USB 3.2 reemplazan los estándares USB 3.0 y USB 3.1; los dispositivos que los satisfagan incluirán tres estándares de velocidad [27] :
Las especificaciones también explican una variante con dos líneas, cada una de las cuales opera con el protocolo USB 3.0 :
Desde el lanzamiento del estándar USB 3.2, el USB-IF ha introducido un nuevo esquema de nombres [28] . Para ayudar a las empresas a marcar diferentes modos de transferencia, USB-IF recomienda nombrar los modos de transferencia de 5, 10 y 20 Gbps como SuperSpeed USB 5Gbps, SuperSpeed USB 10Gbps, SuperSpeed USB 20Gbps, respectivamente [29] :
A diferencia de versiones anteriores, el nombre del protocolo se escribe junto, sin espacio entre la palabra "USB" y el número "4".
La especificación de la cuarta versión se publicó el 29 de agosto de 2019 [30] [31] . El nuevo protocolo central aumenta la velocidad máxima a 40 Gbps (cuando se usan cables tipo C compatibles) mientras mantiene la compatibilidad con USB 3.2, USB 2.0 y Thunderbolt 3 opcional [32] [33] [34] .
Las velocidades de hasta 40 Gbps solo se pueden lograr con cables especialmente marcados. Para cables convencionales, la velocidad máxima está limitada a 20 Gbps. [35] [36]
En noviembre de 2022, se espera que se lance la especificación USB4 versión 2.0 actualizada con un ancho de banda de hasta 80 Gb/s [37] .
Entre chips USB(IC-USB) y High Speed Inter-Chip USB (HSIC) son versiones simplificadas de USB 2.0 para la conexión no conmutada de chips en un dispositivo. La simplificación se logra reemplazando la capa física USB de asíncrona a síncrona, rechazando la capacidad de cambiar la velocidad y la detección de conexión, rechazando la protección eléctrica de los controladores y reduciendo su potencia. La parte lógica de USB no cambia (incluida la lógica de los estados del bus). IC-USB define la conexión de dispositivos Full Speed (12 Mbps); HSIC define la conexión de dispositivos de Alta Velocidad (480 Mbps).
La primera versión del estándar IC-USB se adoptó en 2006. La primera versión del estándar HSIC se adoptó en 2007 [38] . El HSIC utiliza dos líneas digitales con niveles lógicos LVCMOS (1,2 voltios ): STROBE y DATA. La longitud máxima del conductor es de 10 cm La interfaz síncrona proporciona un rendimiento de 480 Mbps a una frecuencia de reloj de 240 MHz. El controlador de capa física HSIC consume un 50 % menos de energía y ocupa un 75 % menos de espacio en el chip que un controlador USB 2.0 tradicional [39] .
En 2012, se adoptó la primera versión de las especificaciones USB Inter-Chip para USB 3.0 [40] .
USB inalámbrico : tecnología USB (especificación oficial disponible desde mayo de 2005 ), que le permite organizar la comunicación inalámbrica con una alta tasa de transferencia de datos (hasta 480 Mbps a una distancia de 3 metros y hasta 110 Mbps a una distancia de 10 metros) .
El 23 de julio de 2007, USB-IF anunció la certificación de los primeros seis productos de consumo compatibles con USB inalámbrico [41] .
En 2013, se introdujo la especificación MA-USB, que permite encapsular el protocolo USB en los canales de comunicación existentes, incluidos WiFi y WiGig .
La especificación 1.0 regulaba dos tipos de conectores: A - del lado del controlador o concentrador USB y B - del lado del dispositivo periférico. Posteriormente, se desarrollaron conectores en miniatura para el uso de USB en dispositivos portátiles y móviles, denominados Mini-USB. USB-IF introdujo una nueva versión de conectores en miniatura llamados Micro-USB el 4 de enero de 2007.
Común | Mini | Micro | |
---|---|---|---|
Escribe un | 4×12mm | 3×7mm | 2×7mm |
Tipo B | 7×8mm | 3×7mm | 2×7mm |
También existen conectores Mini-AB y Micro-AB, a los que se conectan los conectores correspondientes tanto del tipo A como del tipo B.
Los fabricantes de productos electrónicos utilizan un conector compatible con Mini-USB que contiene 10 pines en lugar de 5 como el original (un enchufe de 10 pines no encaja en un conector de 5 pines). En particular, este conector se puede ver en los teléfonos Alcatel (TCL), Fly y Philips, donde se utilizan contactos adicionales para permitir el uso de auriculares con micrófono. Sin embargo, tras la transición a Micro-USB + Mini-Jack, como parte del programa europeo de estandarización de cargadores, el uso de este conector ha disminuido drásticamente desde 2012.
USB-A combina durabilidad y resistencia mecánica a pesar de la ausencia de tornillos. Sin embargo, las versiones más pequeñas de los conectores, que tienen protuberancias de plástico delgadas que sobresalen del sustrato del zócalo, no toleran el cierre y la apertura frecuentes y requieren un manejo más cuidadoso.
Las señales USB (hasta 2.x) se transmiten a través de dos hilos de un cable blindado de cuatro hilos.
Número de contacto | Designacion | color del cable | Descripción | |
---|---|---|---|---|
una | VBUS _ | rojo, o | Naranja | +5V |
2 | re- | blanco, o | Oro | Datos − |
3 | D+ | Verde | Datos+ | |
cuatro | TIERRA | negro, o | Azul | Tierra |
Número de contacto | Designacion | color del cable | Descripción |
---|---|---|---|
una | VBUS _ | Rojo | +5V |
2 | re- | Blanco | Datos − |
3 | D+ | Verde | Datos+ |
cuatro | IDENTIFICACIÓN | sin cable | On-The-Go ID identifica el extremo del cable:
|
5 | TIERRA | El negro | Tierra |
Aquí GND es el circuito de " tierra " para alimentar periféricos, y VBus es +5 voltios, también para circuitos de alimentación. Los datos se transmiten de manera diferencial en los cables D− y D+. Los estados "0" y "1" están determinados por la diferencia de potencial entre las líneas de más de 0,2 V y siempre que en una de las líneas el potencial relativo a GND sea superior a 2,8 V [42] . El método de transmisión diferencial es el principal, pero no el único (por ejemplo, durante la inicialización, el dispositivo informa al host sobre el modo admitido por el dispositivo ( Velocidad completa o Velocidad baja ) tirando de uno de las líneas de datos a V_BUS a través de una resistencia de 1,5 kΩ (D− para el modo de baja velocidad y D+ para los modos de velocidad completa y alta velocidad) [43] .
Para mantener un nivel de señal suficiente en el cable y evitar su atenuación, es necesario correlacionar la longitud del cable con la sección transversal de los conductores. Es una práctica común especificar el calibre del cable en AWG , como "28 AWG/1P...".
Correspondencia aproximada: marcado del cable (indicación del grosor del cable en AWG) y la longitud del cable correspondiente:
AWG | Longitud, no más (cm) |
---|---|
28 | 81 |
26 | 131 |
24 | 208 |
22 | 333 |
veinte | 500 |
Las limitaciones de longitud del cable también están relacionadas con el retraso de la señal en la línea. Las especificaciones de USB 2.0 estipulan que la latencia es inferior a 5,2 nanosegundos por metro para un cable de 5 m El retraso de línea máximo permitido es de 1,5 microsegundos para el modo de baja velocidad. Por lo tanto, para proporcionar el modo de alta velocidad, la línea debe garantizar un retraso de menos de 26 nanosegundos y baja velocidad - 1,5 microsegundos.
Común | Mini | Micro | |
---|---|---|---|
Escribe un | |||
Tipo B | |||
Tipo C |
número de contacto | A | B | micro B | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
una | VBUS (VCC) | VBUS (VCC) | VBUS (VCC) | ||||||||
2 | re- | re- | re- | ||||||||
3 | D+ | D+ | D+ | ||||||||
cuatro | TIERRA | TIERRA | IDENTIFICACIÓN | ||||||||
5 | StdA_SSTX- | StdA_SSTX- | TIERRA | ||||||||
6 | StdA_SSTX+ | StdA_SSTX+ | StdA_SSTX- | ||||||||
7 | GND_DRENAJE | GND_DRENAJE | StdA_SSTX+ | ||||||||
ocho | StdA_SSRX- | StdA_SSRX- | GND_DRENAJE | ||||||||
9 | StdA_SSRX+ | StdA_SSRX+ | StdA_SSRX- | ||||||||
diez | StdA_SSRX+ | ||||||||||
Pantalla | Pantalla | Pantalla | Pantalla | ||||||||
También hay dos tipos más de conectores USB 3.0 Micro: un enchufe USB 3.0 Micro-A y un enchufe USB 3.0 Micro-AB. Visualmente diferente de USB 3.0 Micro-B por la parte "rectangular" (no cortada) del conector con la sección USB 2.0, que evita enchufar un enchufe Micro-A en un enchufe Micro-B, y hace compatible un enchufe Micro-AB con ambos enchufes.
El zócalo Micro-AB se utilizará en dispositivos móviles con un controlador de host USB 3.0 integrado. El pin 4 (ID) se utiliza para identificar el modo host/cliente; en el conector Micro-A, está en cortocircuito a tierra.
Distribución de pines del conector USB 3.0 Powered-BEl conector USB 3.0 Powered-B está diseñado con dos pines adicionales, lo que permite que los dispositivos proporcionen hasta 1000 mA a otro dispositivo, como un adaptador USB inalámbrico. Esto elimina la necesidad de una fuente de alimentación para el dispositivo conectado al adaptador USB inalámbrico, dando un paso más hacia el sistema de comunicación inalámbrico ideal (sin una fuente de alimentación separada). Las conexiones cableadas normales a un host o concentrador no utilizan estos dos pines adicionales.
una | VBUS | +5V de potencia |
2 | USB D− | Datos USB 2.0 |
3 | USBD+ | |
cuatro | TIERRA | Tierra |
ocho | StdA_SSRX- | Recepción de supervelocidad |
9 | StdA_SSRX+ | Recepción de supervelocidad |
7 | GND_DRENAJE | Tierra |
5 | StdA_SSTX- | Transmisión de supervelocidad |
6 | StdA_SSTX+ | Transmisión de supervelocidad |
diez | DPWR | Energía adicional por dispositivo |
once | GND_D | Conexión a tierra del dispositivo |
Contacto | Nombre | Descripción | Contacto | Nombre | Descripción | ||
---|---|---|---|---|---|---|---|
A1 | TIERRA | Tierra | B12 | TIERRA | Tierra | ||
A2 | TX1+ | Par diferencial SuperSpeed #1 [a] , gear+ | B11 | RX1+ | Par diferencial de supervelocidad n.º 2 [a] Recepción+ | ||
A3 | TX1- | Par diferencial SuperSpeed #1 [a] , transmisión- | B10 | RX1- | Par diferencial SuperSpeed #2 [a] , recepción- | ||
A4 | VBUS _ | más nutrición | B9 | VBUS _ | más nutrición | ||
A5 | CC1 | Configuración de canal (o coincidencia) | B8 | SBU2 | Canal adicional (banda lateral) | ||
A6 | D+ | Par diferencial de alta velocidad [b] , posición 1, datos+ | B7 | D- | Par diferencial de alta velocidad [b] , posición 2 [c] , data- | ||
A7 | D- | Par diferencial de alta velocidad [b] , posición 1, datos- | B6 | D+ | Par diferencial de alta velocidad [b] , posición 2 [c] , datos+ | ||
A8 | SBU1 | Canal adicional (banda lateral) | B5 | CC2 | Canal de configuración | ||
A9 | VBUS _ | más nutrición | B4 | VBUS _ | más nutrición | ||
A10 | RX2- | Par diferencial SuperSpeed #4 [a] , recibiendo- | B3 | TX2- | Par diferencial SuperSpeed #3 [a] , transmisión- | ||
A11 | RX2+ | Par diferencial SuperSpeed #4 [a] , recibiendo+ | B2 | TX2+ | Par diferencial SuperSpeed #3 [a] , gear+ | ||
A12 | TIERRA | Tierra | B1 | TIERRA | Tierra | ||
|
Conector nº 1 del cable Tipo-C | Cable tipo C | Conector nº 2 cable tipo C | |||||
---|---|---|---|---|---|---|---|
Contacto | Nombre | Color de la cubierta del conductor | Nombre | Descripción | Contacto | Nombre | |
Trenza | Pantalla | Trenza de cables | Pantalla | cubierta exterior del cable | Trenza | Pantalla | |
A1, B1, A12, B12 | TIERRA | estañado | GND_PWRrt1 GND_PWRrt2 |
tierra comun | A1, B1, A12, B12 | TIERRA | |
A4, B4, A9, B9 | VBUS _ | Rojo | PWR_VBUS 1 PWR_VBUS 2
_ _ |
Fuente de alimentación VBUS | A4, B4, A9, B9 | VBUS _ | |
B5 | CONEXIÓN V | Amarillo |
CONEXIÓN PWR_V | Potencia V CONN | B5 | CONEXIÓN V | |
A5 | CC | Azul | CC | Canal de configuración | A5 | CC | |
A6 | Dp1 | Blanco | UTP_DP | Par diferencial sin blindaje , positivo | A6 | Dp1 | |
A7 | Dn1 | Verde | UTP_DN | Par diferencial sin blindaje, negativo | A7 | Dn1 | |
A8 | SBU1 | Rojo | SBU_A | Banda de datos A | B8 | SBU2 | |
B8 | SBU2 | El negro | SBU_B | Banda de datos B | A8 | SBU1 | |
A2 | SSTXp1 | Amarillo * | SDPp1 | Par diferencial blindado #1, positivo | B11 | SSRXp1 | |
A3 | SSTXn1 | Marrón * | SDPn1 | Par diferencial blindado #1, negativo | B10 | SSRXn1 | |
B11 | SSRXp1 | Verde * | SDPp2 | Par diferencial blindado #2, positivo | A2 | SSTXp1 | |
B10 | SSRXn1 | Naranja * | SDPn2 | Par diferencial blindado #2, negativo | A3 | SSTXn1 | |
B2 | SSTXp2 | Blanco * | SDPp3 | Par diferencial blindado #3, positivo | A11 | SSRXp2 | |
B3 | SSTXn2 | El negro * | SDPn3 | Par diferencial blindado #3, negativo | A10 | SSRXn2 | |
A11 | SSRXp2 | Rojo * | SDPp4 | Par diferencial blindado #4, positivo | B2 | SSTXp2 | |
A10 | SSRXn2 | Azul * | SDPn4 | Par diferencial blindado #4, negativo | B3 | SSTXn2 | |
* Los colores de los conductores de cubierta no están especificados por la norma. |
“En un futuro cercano, la interfaz USB Type-C será verdaderamente universal. La versión 2.1 proporciona una potencia de puerto de hasta 240 W. Esto permitirá que se utilice para alimentar monitores 4K, impresoras e incluso computadoras portátiles para juegos que consumen mucha energía”. https://usb.org/document-library/usb-type-cr-cable-and-connector-specification-revision-21
Cables ópticos USB 3.0En 2013, algunas empresas introdujeron los cables ópticos (fibra óptica) USB 3.0 y Thunderbolt, a través de los cuales la señal USB puede transmitirse hasta 100 metros [44] frente a los 3-5 metros (normalmente) de los cables estándar "alámbricos". Los cables delgados y flexibles le permiten transferir datos a velocidades de hasta 1 Gb/s, pero no brindan transmisión de energía.
Al comienzo del viaje, la señal se convierte de una señal eléctrica USB convencional en señales ópticas. Al final del camino, la señal se invierte.
La especificación USB ofrece al diseñador varias opciones para los dispositivos, según la tasa de transferencia de datos requerida. Estos son Low Speed (velocidad física 1,5 Mbps ± 1,5 %), Full Speed (12 Mbps ± 0,25 %), High Speed (480 Mbps ± 0,05 %), SuperSpeed (5 Gbps ± 0,06 %) , SuperVelocidad+ (10 Gbps). Los dispositivos de baja, completa y alta velocidad utilizan una línea de comunicación semidúplex diferencial para la comunicación, SuperSpeed, varias. Los protocolos de intercambio son idénticos.
USB es una red con un maestro (host) y un número arbitrario de dispositivos esclavos (dispositivo). La topología de la red es un árbol activo . "Activo" significa que cada nodo del árbol tiene un dispositivo especial: un concentrador. El concentrador se ocupa de la terminación de cables eléctricos, el enrutamiento de paquetes, la detección de conexión/desconexión de dispositivos y otras funciones. Todas las conexiones en la red son eléctricamente y de protocolo idénticas.
USB le permite conectar y desconectar "en caliente" dispositivos individuales o segmentos de red. "Activo" significa que la operación de la red no se interrumpe y el asistente puede determinar el hecho de un cambio de configuración de red automáticamente, en tiempo real. Dado que toda la red recibe energía del maestro, se admite la capacidad de controlar automáticamente la fuente de alimentación de la red: el dispositivo informa al maestro sobre sus necesidades y el maestro puede desactivar el dispositivo si se puede exceder la capacidad de energía de la red .
En la figura se muestra un esquema eléctrico simplificado de la conexión USB. Cuando nadie está conectado al host, ambas líneas de señal D+ y D− se activan con resistencias de 15 kΩ al negativo de la fuente de alimentación. Cuando el dispositivo está conectado, una de las líneas se eleva a +3,3 V a través de una resistencia de 1,5 kΩ. Los dispositivos de baja velocidad tiran hacia arriba de la línea D−, mientras que los dispositivos de velocidad completa tiran hacia arriba de la línea D+. Así, el host determina el hecho de la conexión y el tipo de dispositivo conectado. Los dispositivos de alta velocidad funcionan como Full Speed en el momento de la conexión, cambiando al modo de alta velocidad después de intercambiar tarjetas de presentación.
El estado del par diferencial definido por las resistencias pull-up se denomina Idle en la especificación. El mismo estado con el controlador encendido se indica con la letra J. El estado opuesto se indica con la letra K. El cierre de ambas líneas a menos se denomina Single Ended 0, abreviado como SE0; corto a positivo - SE1.
Los datos se codifican utilizando el método NRZI (Non-return-to-zero inverted). De acuerdo con este método, cada bit cero de los datos de entrada corresponde a un cambio en el estado del par diferencial (J→K o K→J), y no hay cambio para una unidad. Para eliminar la pérdida de sincronización en secuencias únicas largas, se utiliza el relleno de bits , es decir, se inserta a la fuerza cero en el flujo de datos cada 6 unidades seguidas.
El dispositivo interpreta el estado del bus SE0 durante más de 10 ms como un restablecimiento y requiere que el dispositivo reinicie la pila USB. El dispositivo interpreta el estado inactivo durante más de 3 ms seguidos como una parada de autobús (suspensión) y requiere formalmente que el dispositivo autolimite su consumo de energía desde el bus USB. La salida de la suspensión se produce cuando se reanuda la actividad del host o el dispositivo puede, si es necesario, enviar una señal especial de reanudación. La señal de Resume consta de un estado K durante unos pocos milisegundos, terminado por la secuencia SE0, SE0, J, donde cada estado dura un intervalo de bit según el modo de velocidad del dispositivo.
El intercambio se realiza en paquetes cortos. Cada paquete comienza con una secuencia de inicio de paquete, para baja y máxima velocidad es KJKJKJKK. A continuación, siempre hay un identificador de paquete PID especial ( English Packet IDentifier ), que indica el tipo de paquete. Hay 16 tipos de paquetes diferentes en total, por lo que el PID tiene 4 bits. Sin embargo, para mayor confiabilidad, el valor de este campo se duplica en forma inversa, por lo que la longitud del campo PID en el paquete es de 8 bits. El paquete finaliza con la secuencia Fin del paquete: SE0, SE0, J. El intervalo mínimo entre paquetes es de ~0,1 µs (para máxima velocidad).
Dependiendo del tipo de paquete, una cantidad de otros campos con parámetros y/o datos del paquete pueden estar contenidos entre el PID y el EoP. Todos estos campos (incluido el PID) se transmiten primero en LSB.
Los tipos de paquetes USB se presentan en la tabla:
Tipo de | Valor PID (el bit más significativo primero) | Byte transferido (el bit menos significativo primero) | Nombre | Descripción |
---|---|---|---|---|
reservado | 0000 | 0000 1111 | ||
Simbólico | 0001 | 1000 0111 | AFUERA | El host notifica al dispositivo que el siguiente paquete contendrá datos del host al dispositivo |
1001 | 1001 0110 | EN | El host notifica al dispositivo que está listo para recibir un paquete de datos del dispositivo. | |
0101 | 1010 0101 | SOF | Un paquete que marca el inicio de un marco de tiempo o micromarco. | |
1101 | 1011 0100 | CONFIGURACIÓN | El host notifica al dispositivo que el siguiente paquete contendrá datos de configuración del host al dispositivo | |
1000 | 0001 1110 | SEPARAR | Transferencia dividida USB de alta velocidad | |
0100 | 0010 1101 | SILBIDO | Comprobación de si el dispositivo puede recibir datos (USB de alta velocidad) | |
Especial | 1100 | 0011 1100 | PRE | Notificar al concentrador que la próxima transacción será en modo de baja velocidad |
apretón de manos | ERRAR | Error de transferencia dividida (USB de alta velocidad) | ||
0010 | 0100 1011 | ACK | Acuse de recibo de paquete de datos | |
1010 | 0101 1010 | NACK | Falta de voluntad para servir el paquete anterior, el paquete se ignora | |
0110 | 0110 1001 | NYET | Los datos aún no están listos (USB de alta velocidad) | |
1110 | 0111 1000 | PARAR | El paquete anterior accedió a una funcionalidad inexistente o deshabilitada | |
Datos | 0011 | 1100 0011 | DATOS0 | Incluso paquete de datos |
1011 | 1101 0010 | DATOS1 | Paquete de datos extraño | |
0111 | 1110 0001 | DATOS2 | Paquete de datos isócronos de alta velocidad (USB de alta velocidad) | |
1111 | 1111 0000 | MDATA | Paquete de datos isócronos de alta velocidad (USB de alta velocidad) |
Los paquetes de tipo IN, OUT, SETUP son los encabezados de una transacción multipaquete con intercambio de datos. Contienen los campos de la dirección del dispositivo y el número de Endpoint en el dispositivo con el que se intercambiarán datos en esta transacción. La integridad del paquete es verificada por el campo CRC5.
Los paquetes de tipo DATA contienen un campo de datos y un campo de integridad de datos CRC 16. El estándar limita la longitud máxima de datos permitida a 8 bytes para dispositivos no configurados, 64 bytes para dispositivos de baja velocidad, 1023 bytes para dispositivos de velocidad completa y 1024 bytes para dispositivos de alta velocidad. El dispositivo puede configurar su longitud máxima de datos para que sea menor que la permitida. Se requiere que el host admita la longitud de datos máxima permitida. En un intercambio normal, los paquetes de datos se intercalan como "par-impar".
Paquetes como ACK, NACK, STALL completan la transacción, informando el (no) éxito de la transacción actual. No contener campos adicionales.
DirecciónUSB es una red, lo que significa que varios dispositivos pueden conectarse al mismo host. A cada dispositivo se le asigna una dirección única durante el proceso de configuración inicial en el momento de la conexión. La dimensión de la dirección es de 7 bits, el valor cero está reservado; en consecuencia, hasta 127 dispositivos pueden conectarse a un host. El campo de dirección contiene solo aquellos paquetes que inician una transacción (IN, OUT, SETUP).
Punto finalAdemás de direccionar dispositivos conectados físicamente, USB ofrece direccionamiento lógico dentro del dispositivo. El direccionamiento lógico le permite separar flujos de datos según diferentes funciones dentro del mismo dispositivo. Por ejemplo, un teclado con panel táctil puede tener un canal de datos para las pulsaciones de teclas y otro para los datos del panel táctil. En la pila de TCP/IP, existe una analogía directa para un punto final: los puertos.
El campo "punto final" tiene una dimensión de 4 bits, es decir, son posibles hasta 16 puntos. Cada punto puede funcionar independientemente como receptor y como transmisor, por lo que a veces hay 32. El campo "punto final" es parte del direccionamiento en la red USB y está contenido solo en los mismos paquetes donde hay una dirección (IN , SALIDA, CONFIGURACIÓN). En el momento de la conexión, como parte de la configuración inicial, el dispositivo debe transmitir al host información sobre los puntos involucrados y su finalidad. Esta información debe ser coherente con los canales de datos del software del controlador de dispositivo adecuados en el host. Acceder a un punto no utilizado da como resultado una respuesta STALL. Los paquetes SETUP solo pueden llegar al punto final nulo.
PlazosLa especificación USB contiene los conceptos de time frames y microframes. Para dispositivos de baja velocidad, cada milisegundo el host transmite una señal Keep Alive que consiste en una secuencia de fin de paquete. Para dispositivos Full Speed, el host envía un paquete especial SOF (Start of Frame) cada milisegundo, marcando el comienzo del siguiente cuadro. Para Alta Velocidad, este paquete se transmite cada 125 µs; dicho período se denomina microfotograma. La especificación USB requiere que se admita la programación de transacciones y paquetes para que no se viole la periodicidad de la SOF.
El intercambio de datos tiene lugar en las llamadas transacciones, secuencias inseparables de varios paquetes. El iniciador del intercambio es siempre el anfitrión. Envía un paquete corto (token) notificando sobre el inicio de una nueva transacción. En este paquete de token, el host especifica la dirección de la transacción (ENTRADA o SALIDA), la dirección del dispositivo y el número de punto final. Por ejemplo, un token OUT significa que el token será seguido inmediatamente por un paquete de datos del host al dispositivo (DATA0 o DATA1). Puede haber varios paquetes de datos en una transacción si cada uno de ellos tiene la longitud de datos máxima permitida para este dispositivo. El final de la transferencia de datos está determinado por la longitud del paquete, que no es igual al máximo. Tan pronto como llega un paquete truncado, el dispositivo envía inmediatamente un acuse de recibo de paquete de respuesta (apretón de manos), por ejemplo ACK (todo se recibió con éxito), NACK (no se pudo recibir: por ejemplo, el búfer de entrada estaba lleno), STALL (datos dirigido al punto final desconectado). Todos los paquetes en una transacción se transmiten casi simultáneamente, la pausa máxima entre paquetes no debe exceder ~1 μs (para Full Speed), de lo contrario, la transacción se reconocerá como errónea.
Del mismo modo, los datos se transfieren desde el dispositivo al host. El host inicia la transferencia con el token IN. Si el dispositivo no tiene datos listos para enviar, entonces responde con NACK y la transacción finaliza. Si los datos están listos, el dispositivo comienza a transmitir paquetes DATA0/DATA1. El principio de finalizar la transmisión es similar: longitud incompleta del paquete de datos. Al recibir un paquete incompleto, el host responde al dispositivo con un paquete ACK.
La transacción con el token SETUP es completamente similar a la transacción OUT, las únicas diferencias están en la lógica de percepción de datos por parte del dispositivo: estos son los parámetros de conexión que controlan el funcionamiento de la pila USB del dispositivo.
Control, Interrupción, A granel, IsócronoLa especificación USB proporciona varios métodos para intercambiar datos. Cada punto final incluido debe asignarse a uno de los métodos. Control, Interrupción y Bulk utilizan el protocolo de establecimiento de comunicación descrito anteriormente. El método masivo permite que el anfitrión se comunique libremente con el dispositivo como le plazca. El método de control es similar al masivo, pero intercambia con el dispositivo solo datos especiales que controlan el funcionamiento del protocolo USB de acuerdo con la especificación (dentro de transacciones del tipo SETUP). Dado que los dispositivos periféricos no pueden iniciar un intercambio, idearon el método de interrupción para transferir datos que aparecen repentinamente en el dispositivo, lo que le permite sondear el dispositivo con un período específico. El método de interrupción se usa ampliamente para sondear teclados y ratones. Aparte está el método isócrono, que le permite reservar parte del ancho de banda del bus USB para datos como audio o video. Isochronous no admite el control de integridad de la transmisión (no se transmiten los paquetes ACK y NACK), lo que significa que no se proporcionan reintentos en caso de errores: los datos recibidos incorrectamente se pierden.
En el momento de la conexión, el anfitrión solicita un conjunto de información estandarizada (descriptores) del dispositivo, en base a la cual decide cómo trabajar con este dispositivo. Los descriptores contienen información sobre el fabricante y el tipo de dispositivo, según el cual el host selecciona un controlador de software. Las tablas de descriptores y las asignaciones de campos se detallan en el capítulo 9 de la especificación USB.
Después de eso, el host realiza un cambio de velocidad (si el dispositivo es de alta velocidad) y asigna una dirección al dispositivo.
Para depurar protocolos y controlar el cumplimiento del estándar, los desarrolladores de dispositivos pueden utilizar diversas herramientas que permiten observar los procesos de intercambio en el bus [45] [46] . Estas herramientas pueden estar basadas puramente en software y recuperar eventos de bus de los controladores USB de la computadora. Sin embargo, dichas herramientas no muestran hardware procesado o señales erróneas en el bus. Para un control independiente integral, se utilizan escáneres de hardware especializados y analizadores de protocolos. El consorcio USB recomienda el uso de un analizador de hardware para la certificación y en la preparación para el lanzamiento de dispositivos a la producción en masa.
Formalmente, para obtener el derecho de colocar logotipos USB en los productos, es necesario certificarlos para cumplir con el estándar. La organización USB-IF ofrece servicios de certificación para dispositivos USB y también mantiene una lista de laboratorios de certificación de terceros [47] .
Los desarrolladores de la especificación USB prestaron atención al problema de detectar automáticamente la funcionalidad de los dispositivos USB para evitar que el usuario realice acciones de rutina al conectar dispositivos USB. Hay dos mecanismos para hacer esto:
Además de las soluciones USB estándar, algunas empresas y entusiastas ofrecen otras soluciones. Por ejemplo, los controladores WinUSB preinstalados con una API de terceros disponible en el entorno de Windows son populares .
El propósito de los dispositivos USB puede determinarse mediante los códigos de clase que se informan al host USB para cargar los controladores necesarios. Los códigos de clase le permiten unificar el trabajo con dispositivos del mismo tipo de diferentes fabricantes. Un dispositivo puede admitir una o más clases, cuyo número máximo está determinado por el número de puntos finales disponibles.
Descripción de los códigos de clase [48] :
El código | Nombre | Ejemplos de uso/nota |
---|---|---|
00h_ _ | N / A | no establecido |
01h | Audio | tarjeta de sonido midi |
02h | Dispositivo de comunicación (CDC) | Módem , tarjeta de red , puerto COM |
03h | Dispositivo de interfaz humana (HID) | Teclado , ratón , joystick |
05h | Dispositivo de interfaz física (PID) | Joystick con soporte Force feedback |
06h | Imagen | cámara web , escáner |
07h | Impresora | Impresora |
08h | Dispositivo de almacenamiento masivo (MSD) | Unidad flash USB , tarjeta de memoria , lector de tarjetas , cámara digital |
09h | concentrador USB | concentrador USB |
0 Ah | Datos de los CDC | Se usa junto con la clase CDC |
0bh | Lector de tarjetas inteligentes (CCID) | Lector de tarjetas inteligentes |
0Dh | seguridad de contenido | escáner biométrico |
0eh | Clase de dispositivo de vídeo | Cámara web |
0Fh | cuidado de la salud personal | Indicador de pulso, equipo médico |
DCH | Dispositivo de diagnóstico | Se utiliza para comprobar la compatibilidad USB |
E0h | Control inalámbrico | adaptador Bluetooth |
EFh | Misceláneas | Dispositivos ActiveSync |
feh | Específico de la aplicación | Dispositivos IrDA , modo de actualización de firmware (DFU) |
FFh | Específico del proveedor | A discreción del fabricante. |
El estándar USB prevé la posibilidad de suministrar a los dispositivos conectados una pequeña cantidad de energía eléctrica. Inicialmente, el estándar USB 2.0 permitía que un dispositivo consumiera una corriente máxima de 0,5 A a 5 V. USB 3.0 aumentó la corriente máxima a 0,9 A con el mismo voltaje. Estos estándares permiten al host controlar el consumo de los dispositivos conectados al bus. Para ello, en el momento de la conexión e inicialización, el dispositivo informa al host de sus necesidades energéticas. El host evalúa las capacidades energéticas de este segmento de red y permite o prohíbe que el dispositivo funcione.
En un intento por estandarizar las demandas de los dispositivos que consumen mucha energía, en 2007 USB-IF adoptó la especificación de carga de batería USB que, dentro de la infraestructura de cableado USB 2.0/3.0, permitió aumentar la corriente consumida por el dispositivo hasta 5A. [49] [50] . Más tarde, se adoptó una especificación separada de USB Power Delivery, que permite mucha más flexibilidad en la administración de energía.
Especificación | máx. Actual | máx. Voltaje | máx. energía |
---|---|---|---|
USB 1.1/2.0 | 500mA | 5 voltios | 2.5W |
USB 3.0 | 900mA | 5 voltios | 4.5W |
USB 3.2 Genx2 | 1,5A | 5 voltios | 7.5W |
Carga de batería 1.2 | 1,5A | 5 voltios | 7.5W |
Entrega de energía 1.0/2.0/3.0 | 5 A [un] | 20 voltios | 100W |
Entrega de energía 3.1 | 5 A [un] | 48 V [b] | 240W |
El primer intento de estandarizar dispositivos de alto consumo y fuentes de alimentación con salida USB dio como resultado la especificación de carga de batería USB [51] . La primera versión fue lanzada en 2007. La versión actual de USB BC 1.2 se publicó en 2010.
La especificación permitía la existencia de dispositivos especialmente designados[ ¿cómo? ] Conectores USB-A con mayor eficiencia de corriente (hasta 1,5 A). El protocolo de configuración inicial USB se complementó con la capacidad de "negociar" el consumo extendido. El dispositivo final podría aumentar el consumo solo después de un "acuerdo" con el host.
También se permitieron conectores USB-A con líneas de datos desconectadas, como en los cargadores. Dichos cargadores fueron identificados por el dispositivo mediante los contactos cerrados D+ y D−. A tales dispositivos se les permitió dar corriente hasta 5 A.
Para los consumidores de energía de tamaño pequeño, la especificación recomienda un conector MicroUSB-B.
En el nuevo estándar USB Power Delivery, el concepto de fuente de alimentación se ha rediseñado significativamente [52] [53] . Tanto los desarrolladores de hosts como los de dispositivos ahora tienen la flexibilidad de administrar la alimentación USB. La decisión sobre quién es la fuente, quién es el consumidor, sobre las posibilidades de la fuente y el cable se toman en el curso de un diálogo entre dispositivos a través de un canal de comunicación separado. Es posible que durante el diálogo el dispositivo requiera, y el host acuerde aumentar el voltaje de suministro para transmitir alta potencia a través de la infraestructura de cable existente. El host emite una sobretensión en el cable de alimentación Vbus. Para compatibilidad con dispositivos más antiguos, el host devuelve el voltaje a los 5 voltios anteriores tan pronto como detecta un dispositivo desconectado.
La tecnología USB Power Delivery ofrece hasta 100 W de potencia. Gracias a esto, utilizando un cable USB convencional, se hizo posible cargar y conectar todos los dispositivos electrónicos desde una fuente de carga, que puede ser un teléfono inteligente, una computadora portátil o una batería externa [54] .
USBPD Rev.1En 2012, se introdujo la primera revisión de USB PD. Se utilizó la infraestructura estándar de enchufe y cable USB 2.0 y 3.0. La gestión de energía se llevó a cabo a través de un diálogo entre el consumidor y la fuente a través de un canal de comunicación independiente organizado sobre el cable de alimentación de un cable USB estándar ( bus V ). Se utilizó modulación de frecuencia con una portadora de 24 MHz .
El estándar permitía aumentar el voltaje en el pin de alimentación USB (Vbus) a 12 V o 20 V a una corriente máxima de hasta 5A.
USBPD 2.0La segunda revisión del estándar se publicó en 2014 junto con la especificación USB 3.1 y está vinculada al nuevo conector USB tipo C. Ahora, para un canal de comunicación dedicado entre la fuente de alimentación y el consumidor, se usa un hilo separado en el cable (Canal de configuración). También soporta determinar el tipo de cable y sus capacidades de transmisión de potencia, para lo cual se debe instalar un microcircuito en cables con corriente máxima incrementada que reporte los parámetros del cable.
El estándar permitía aumentar el voltaje en el pin de alimentación USB (Vbus) a 9, 15 o 20 V a una corriente máxima de hasta 5A. Para corrientes superiores a 3A se requieren cables especiales con chip de identificación.
USBPD 3.0En 2019, se lanzó USB PD 3.0. Su diferencia significativa con USB PD 2.0 es el modo de fuente de alimentación programable, cuando el consumidor no solicita un voltaje fijo de un rango de 5, 9, 15 o 20 V, pero puede ajustar el voltaje en el rango de 3,3 ... 21V en pasos de 20 mV. El consumidor también puede solicitar a la fuente que limite la corriente en pasos de 50 mA.
USBPD 3.1En la primavera de 2021, se lanzó USB PD 3.1. [3] Una diferencia significativa es la división de modos en Standard Power Range (compatible con USB PD 3.0) y Extended Power Range, en los que son posibles voltajes de 28, 36 y 48 V. El modo de fuente de alimentación programable está reservado solo para el rango de potencia estándar y no se admite en el rango de potencia extendido. Para obtener un alto voltaje regulado, se ha introducido el modo de suministro de voltaje ajustable, que le permite configurar el voltaje de 15 a 48 V en pasos de 100 mV.
Así, la potencia máxima transmitida alcanzó los 240W. Para corrientes superiores a 3A y tensiones superiores a 20V, se requieren cables especiales con chip de identificación. Se han desarrollado logotipos especiales para el marcado visual de cables de alta potencia. [35] [36] [55]
Los fabricantes de dispositivos móviles no podían pasar por alto la disponibilidad de electricidad desde una toma USB. Hay muchos dispositivos que consumen corriente sin cumplir con la especificación USB.
Al mismo tiempo, la corriente de carga requerida por el dispositivo podría ser mucho mayor que la permitida por el estándar USB. Para sortear esta limitación, muchos fabricantes de teléfonos han desarrollado sus propias reglas para determinar una fuente de alimentación especial: un cargador [56] [57] . Ahora, cuando se conecta al cargador original, el teléfono tiene la oportunidad de cargarse lo más rápido posible. Al mismo tiempo, cuando se conecta a un host USB estándar, el teléfono sigue las recomendaciones del estándar USB, se carga con una corriente reducida o no se carga en absoluto.
Por ejemplo, los dispositivos Apple determinan la salida de corriente máxima del cargador a partir del voltaje en los pines D− y D+. Si D+ = D− = 2,0 V, entonces máx. corriente - 0,5 A. Si D+ = 2,0 V y D− = 2,8 V, entonces máx. corriente - 1 A. Si D+ = 2,8 V y D− = 2,0 V, entonces máx. corriente - 2 A [58] .
En 2007, USB-IF adopta la especificación de carga de batería USB, que inicia el proceso de estandarización de la fuente de alimentación de los dispositivos móviles. En 2007-2010, se adoptaron varias reglamentaciones nacionales e internacionales (por ejemplo, Fuente de alimentación externa común, Solución de carga universal GSM , "Requisitos técnicos y método de prueba del cargador y la interfaz para equipos terminales de telecomunicaciones móviles" en chino [59] [60] ), según el cual los cargadores de dispositivos móviles deben estar equipados con el mismo tipo de conectores: USB-A enchufe en la caja del cargador y Micro-USB-B en el propio dispositivo. El cargador se identifica por los contactos cerrados D+ y D−.
Carga rápida de QualcommLas tecnologías de Qualcomm , similares al estándar USB Power Delivery, pero más fáciles de implementar, han ganado cierta popularidad. Se han lanzado cuatro versiones compatibles de la especificación [61] [62] :
La versión Qualcomm Quick Charge 1.0 (2013) proporcionaba una fuente de alimentación de 5 V 2 A y no difería mucho de otras soluciones no estándar. No recibió distribución.
Qualcomm Quick Charge 2.0 (2015), como USB Power Delivery, brindó la capacidad de aumentar el voltaje de suministro a 9, 12 o 20 V después de un acuerdo entre el cargador y el dispositivo. Pero a diferencia de USB Power Delivery, el método de contrato era mucho más simple y permitía el uso de cables y conectores USB 2.0/3.0 existentes. De acuerdo con el estado de las líneas D+/D−, el dispositivo determina que está conectado al cargador, después de lo cual establece un cierto voltaje en las líneas D+/D− de acuerdo con el voltaje de suministro deseado.
La versión de Qualcomm Quick Charge 3.0 (2016) complementa QC 2.0 con la capacidad de ajustar suavemente el voltaje de salida en el rango de 3.6-20 V a pedido del dispositivo.
Según la especificación USB, algunos cables con conectores Tipo C pueden contener un chip que identifica los parámetros del cable. Dado que este microcircuito es alimentado por las líneas eléctricas del cable, un aumento de voltaje en las mismas puede ser fatal tanto para el cable como para el equipo conectado. En este sentido, el uso de Quick Charge 2.0 y 3.0 en cables con conectores Tipo C resultó arriesgado. En 2015, USB-IF publicó una metodología para probar la infraestructura de cables con conectores Tipo C, donde prohibía explícitamente el control de voltaje en la línea eléctrica por métodos no estándar. Ahora los cargadores Quick Charge 2.0 y 3.0 con conector USB tipo C no podrán recibir un certificado de conformidad [63] . Google ha emitido una recomendación para no admitir QC 2.0 y 3.0 en dispositivos Android [64] . El problema se resuelve en la especificación Quick Charge 4.
La versión Qualcomm Quick Charge 4 se presentó en noviembre de 2016. Declarado compatible con cables con conectores Tipo C [65] . La versión Qualcomm Quick Charge 4+ se presentó en el verano de 2017.
USB alimentadoEn 1999, un grupo de fabricantes de equipos comerciales adoptó un estándar corporativo, según el cual el conector USB estaba equipado con contactos adicionales con voltajes de 5 V, 12 V o 24 V y una corriente de hasta 6 A. Esta decisión no fue apoyada por USB-IF.
En agosto de 2014, se demostró una implementación de una vulnerabilidad de dispositivo USB denominada BadUSB . Algunos dispositivos USB le permiten cambiar el firmware del microcircuito que se encarga de interactuar con la computadora. Un atacante, después de aplicar ingeniería inversa a un dispositivo específico, puede crear y escribir código malicioso en él. Este código malicioso puede, por ejemplo, imitando el teclado, realizar las acciones necesarias para el usuario en el ordenador infectado o, imitando un dispositivo de red, cambiar la configuración de la red de forma que el usuario navegue por Internet a través de servidores intermedios controlados. por el atacante ( Pharming ). Además, al imitar una unidad flash USB , el código malicioso puede descargar y ejecutar un programa de virus en una computadora con la ejecución automática habilitada. Dicho virus puede copiarse a sí mismo a otros dispositivos USB actualmente conectados a la computadora, infectando cada vez más dispositivos USB (cámaras web, teclados, tarjetas flash, etc.) [68] .
El dispositivo malicioso USB Kill y dispositivos similares pueden explotar otra vulnerabilidad: inmediatamente después de conectarse a la alimentación, el dispositivo USB genera una serie de pulsos de alto voltaje en los pines de datos, destruyendo valiosos microcircuitos dentro de la computadora [69] [70] [71] [72] . La vulnerabilidad surge debido a la disponibilidad de tomas USB, así como al hecho de que todos los puertos USB reciben alimentación independientemente del dispositivo conectado a ellos, y debido a la débil protección contra alto voltaje en los contactos de alta velocidad conectados a chips y salida en el cuerpo.
El protocolo de almacenamiento masivo USB, que es un método de transmisión de comandos SCSI a través del bus USB, tiene más sobrecarga que su protocolo FireWire/1394 correspondiente, SBP-2. Por lo tanto, al conectar una unidad externa o una unidad de CD/DVD a través de FireWire, es posible lograr una tasa de transferencia de datos más alta. Además, el almacenamiento masivo USB no era compatible con los sistemas operativos más antiguos (incluido Windows 98 ) y requería la instalación de un controlador. SBP-2 se apoyó en ellos inicialmente. También en sistemas operativos más antiguos (Windows 2000), el protocolo de almacenamiento USB se implementó de forma truncada, lo que no permitía utilizar la función de escritura de CD y DVD en una unidad conectada por USB; SBP-2 nunca tuvo tales limitaciones.
El bus USB está estrictamente orientado, por lo que conectar dos computadoras requiere hardware adicional. La conexión de equipos sin computadora, como impresora y escáner o cámara e impresora, fue definida por el estándar USB OTG ; anteriormente, estas implementaciones estaban vinculadas a un fabricante específico. El bus 1394/FireWire no se ve afectado inicialmente por esta desventaja (por ejemplo, se pueden conectar dos cámaras de video).
El soldador Saldanha, líder de una de las sectas evangélicas en Brasil , prohibió a sus seguidores el uso de dispositivos y puertos USB -vio en el emblema del USB el símbolo de Satanás- , un tridente con el que las almas de los pecadores son torturadas en el infierno , y afirmó que todos los que usan USB adoran a Satanás [73] [74] [75] [76] .
diccionarios y enciclopedias | |
---|---|
En catálogos bibliográficos |
Buses e interfaces de computadora | |
---|---|
Conceptos básicos | |
Procesadores | |
Interno | |
portátiles | |
Unidades | |
Periferia | |
Gestión de equipos | |
Universal | |
Interfaces de vídeo | |
Sistemas embebidos |
Microcontroladores | ||||||||
---|---|---|---|---|---|---|---|---|
Arquitectura |
| |||||||
Fabricantes |
| |||||||
Componentes | ||||||||
Periferia | ||||||||
Interfaces | ||||||||
sistema operativo | ||||||||
Programación |
|