Descripción del estándar USB 2.0. Bus serie universal USB

31.08.2023

Proporciona intercambio de datos entre el host y el dispositivo. A nivel de protocolo se resuelven tareas como garantizar la confiabilidad y confiabilidad de la transmisión y el control de flujo. Todo el tráfico en el bus USB se transfiere a través de transacciones; en cada transacción, el intercambio solo es posible entre el host y el dispositivo direccionado (su punto final).

Todas las transacciones (intercambios) con dispositivos USB constan de dos o tres paquetes; las secuencias típicas de paquetes en las transacciones se muestran en la Fig. 1. Cada transacción es programada e iniciada por el controlador del host, que envía un paquete de token de transacción. El token de transacción describe el tipo y la dirección de la transferencia, la dirección del dispositivo USB seleccionado y el número del punto final. El dispositivo direccionado por el marcador reconoce su dirección y se prepara para el intercambio. La fuente de datos identificada por el token transmite el paquete de datos. En este punto, se completan las transacciones relacionadas con transferencias isócronas; no hay acuse de recibo del paquete. Para otro tipo de transmisiones, existe un mecanismo de confirmación que asegura la entrega garantizada de los datos. Los formatos de paquete se muestran en la Fig. 2, los tipos de paquetes están en la tabla. En todos los campos de paquetes, excepto en el campo CRC, los datos se transmiten primero con el bit menos significativo (el bit menos significativo se muestra a la izquierda en los diagramas de tiempos). El paquete comienza con la secuencia de sincronización y termina con el terminador: EOP. El tipo de paquete está determinado por el campo PID. El propósito de los campos restantes se explica a continuación. La longitud de los campos Sync y EOP se especifica para transmisiones en FS/LS; para transmisiones de alta velocidad, el campo Sync se extiende a intervalos de 32 bits y el EOP a 8 (en paquetes SOF, el campo EOP tiene una longitud de 40 bits). ).

Todos los paquetes recibidos se verifican en busca de errores, ya que los formatos de paquetes aceptados y ciertas convenciones lo permiten:

  • un paquete comienza con una secuencia de sincronización seguida de su PID (Identificador de paquete). Al identificador le sigue su copia inversa: Verificar. Si dos copias no coinciden, se considera un error;
  • el cuerpo del paquete (todos los campos del paquete, excluyendo PID y el atributo EOP) está protegido por un código CRC: 5 bits para paquetes marcadores, 16 bits para paquetes de datos. Un CRC que no coincide con el valor esperado se considera un error;
  • el paquete termina con una señal EOP especial; Si el paquete contiene un número de bytes no entero, se considera erróneo. Un EOP falso, incluso en un límite de bytes, no permitirá que se reciba el paquete debido a un error de CRC casi inevitable en esta situación;
  • Los datos del paquete se transmiten a la capa física (al bus) mediante relleno de bits (se inserta un cero después de seis bits uno), lo que evita la pérdida de sincronización de bits durante una señal monótona. Recibir más de seis bits seguidos se considera un error (en HS, una señal del final de la trama).

La detección de cualquiera de estos errores en un paquete hace que el receptor lo considere inválido. Ni el dispositivo ni el controlador host responden a los paquetes recibidos con un error. En la transmisión isócrona, los datos de un paquete no válido simplemente deben ignorarse (se pierden); Para otros tipos de transmisiones, se utilizan medios que garanticen una entrega confiable.

Para detectar la falla del par al responder a un paquete, cada dispositivo tiene un contador de tiempo de espera que deja de esperar una respuesta después de que haya transcurrido un tiempo. USB tiene un límite en el tiempo de ida y vuelta del bus: el tiempo desde el final del EOP del paquete generado hasta que se recibe el comienzo del paquete de respuesta. Para el dispositivo final (y el controlador de host), se normaliza el retraso máximo de respuesta (tiempo de respuesta) desde el final del EOP visto hasta la introducción del comienzo del paquete. Para los concentradores, el retraso en la transmisión de paquetes está normalizado; para los cables, el retraso en la propagación de la señal está normalizado. El contador de tiempo de espera debe tener en cuenta el retraso máximo posible para una configuración de bus válida: hasta 5 hubs intermedios, hasta 5 metros cada cable. El valor de tiempo de espera permitido, expresado en intervalos de bits (bt), depende de la velocidad:

  • Para velocidades FS/LS, el retraso introducido por un segmento de cable es pequeño en comparación con el intervalo de bits (bt). En base a esto, en USB 1.0 se adopta el siguiente modelo para calcular los retrasos permitidos. Se asigna un retraso permitido de 30 ns para cada segmento de cable y de 40 ns para el concentrador. Así, cinco concentradores intermedios con sus cables introducen un retraso de 700 ns durante una doble revolución, lo que corresponde a aproximadamente 8,5 bt en FS. Para un dispositivo FS, el retraso de respuesta no debe exceder los 6,5 bt (y teniendo en cuenta su cable, 7,5 bt). En base a esto, la especificación requiere que los transmisores en FS utilicen un contador de tiempo de espera de 16-18 bt;
  • a velocidad HS, el retraso en el segmento de cable es mucho mayor que el intervalo de bits, y en USB 2.0 el modelo de cálculo es ligeramente diferente. Aquí, se asignan 26 ns para cada segmento de cable y 4 ns más 36 bt para el concentrador. Por lo tanto, pasar dos veces por 6 segmentos de cable (2×6×26 = 312 ns ≈ 150 bt) y cinco concentradores (2×5×4 = 40 ns ≈ 19 bt más 2×5×36 = 360 bt) requiere hasta 529 por cierto. El retraso de respuesta del dispositivo es aceptable hasta 192 bt, y el retraso total, teniendo en cuenta cables y concentradores, será de hasta 721 bt. En base a esto, la especificación requiere que los transmisores en HS utilicen un contador de tiempo de espera de 736-816 bt.

El controlador de host tiene su propio contador de errores asociado con cada punto final de todos los dispositivos, que se restablece a cero cuando se programa cada transacción. Este contador cuenta todos los errores de protocolo (incluidos los errores de tiempo de espera) y, si la cantidad de errores excede el umbral (3), el canal con este punto final se detiene y se notifica a su propietario (controlador de dispositivo o USBD). Hasta que se supere el umbral, el host maneja los errores de transferencias no isócronas intentando reintentar las transacciones, sin notificar al software del cliente. Las transferencias isócronas no se repiten; el host informa de errores inmediatamente.

Los paquetes de protocolo de enlace se utilizan para reconocimiento, control de flujo y señalización de errores. De estos paquetes, el controlador del host solo puede enviar al dispositivo un paquete ACK, confirmando la recepción sin errores del paquete de datos. El dispositivo utiliza los siguientes paquetes de protocolo de enlace para responder al host:

ACK: confirmación (positiva) de la finalización exitosa de una transacción de salida o control;
NAK - confirmación negativa, es una señal de que el dispositivo no está listo para realizar esta transacción (no hay datos para transmitir al host, no hay espacio en el buffer para recepción, la operación de control no se ha completado). Esta es una respuesta normal que nadie conocerá excepto el controlador del host, que se ve obligado a repetir la transacción más tarde. En las transacciones de entrada, el dispositivo da una respuesta NAK en lugar de un paquete de datos si no están listos;
STALL es un mensaje de error grave que significa que sin la intervención de un software especial, trabajar con este punto final se vuelve imposible. Esta respuesta se comunica tanto al controlador USBD, que cancela más transacciones con este punto, como al controlador del cliente, desde el cual se espera que la intervención del software desbloquee el punto. En las transacciones de control (Control), la respuesta STALL significa que la solicitud no se puede ejecutar; No es necesario desbloquear el punto.

El control del flujo de salida que se basa únicamente en la capacidad de responder con un NAK si el dispositivo no está listo es un uso muy ineficiente del ancho de banda del bus: se desperdicia un gran paquete de datos en el bus para garantizar que el dispositivo no esté listo. USB 2.0 evita este problema en transacciones Bulk-OUT y Control mediante el uso del protocolo Ping. El host puede sondear la preparación del dispositivo para recibir un tamaño máximo de paquete enviándole un token de sonda PING. El dispositivo puede responder a este token con un ACK (si está listo) o NAK (si no puede recibir el tamaño máximo de paquete). Una respuesta negativa obligará al host a intentarlo nuevamente más tarde, una respuesta positiva le permitirá realizar una transacción de salida. Ante una transacción de retiro después de una respuesta positiva a la prueba, las respuestas del dispositivo son más variadas:

  • ACK significa recepción exitosa y preparación para aceptar el siguiente paquete de tamaño completo;
  • NYET significa recepción exitosa pero no listo para el siguiente paquete;
  • NAK es una respuesta inesperada (contradice el éxito de la prueba), pero es posible si el dispositivo de repente deja de estar disponible temporalmente.

El dispositivo de alta velocidad en los descriptores de los puntos finales informa la posible intensidad de los envíos de NAK: el campo bInterval para los puntos finales Bulk y Control indica el número de microtramas por NAK (0 significa que el dispositivo nunca responderá con un NAK a una transacción de salida).

Las transferencias de matriz, interrupción y control garantizan una entrega de datos confiable. Después de recibir exitosamente el paquete, el receptor de datos envía un acuse de recibo: un paquete de acuse de recibo ACK. Si el receptor de datos detecta un error, el paquete se ignora y no se le envía ninguna respuesta. La fuente de datos considera que el siguiente paquete se ha transmitido con éxito cuando recibe un ACK del receptor. Si no llega la confirmación, en la siguiente transacción la fuente repite el envío del mismo paquete. Sin embargo, el paquete de confirmación puede perderse debido a interferencias; Para que en este caso el envío repetido del paquete por parte del receptor no se perciba como la siguiente porción de datos, los paquetes de datos se numeran. La numeración es módulo 2 (número de 1 bit): los paquetes se dividen en pares (con identificador DATA0) e impares (DATA1). Para cada punto final (excepto el isócrono), el host y el dispositivo tienen Toggle Bits, sus estados iniciales son consistentes de una forma u otra. Las transacciones IN y OUT transmiten y esperan paquetes de datos con identificadores DATA0 o DATA1, correspondientes al estado actual de estos bits. El receptor de datos conmuta su bit en caso de una recepción correcta de datos con el identificador esperado, la fuente de datos conmuta al recibir la confirmación. Si el receptor recibe un paquete sin errores con una ID inesperada, envía un ACK, pero ignora los datos del paquete porque el paquete es una retransmisión de datos que ya se han recibido.

Las transacciones para diferentes tipos de transferencias tienen diferencias de protocolo debido a la garantía o no garantía de rendimiento, tiempo de respuesta, confiabilidad de entrega y sincronización de entrada y salida. Dependiendo de estas características, las transacciones utilizan uno u otro de los mecanismos de protocolo descritos anteriormente. Tenga en cuenta que la detección de errores de transmisión funciona en todas las transacciones, por lo que los datos recibidos por error siempre se ignoran. Tanto el controlador del host (según el descriptor de punto final recibido previamente) como el dispositivo USB en el que se implementa este punto final “conocen” qué mecanismos de protocolo se utilizan en la transacción actual.

Las transacciones isócronas proporcionan tipos de cambio garantizados, pero no proporcionan una entrega confiable. Por esta razón, no hay reconocimientos en el protocolo, ya que la reproducción de paquetes hará que fallen los planes de entrega de datos. No existe un control de flujo basado en reconocimiento: el dispositivo debe mantener la tasa de tráfico declarada en el descriptor de punto final isócrono.

Las transacciones de salida isócronas constan de dos paquetes enviados por el controlador del host, un token de SALIDA y un paquete de datos de DATOS. En una transacción de entrada, el host envía un token IN, al que el dispositivo responde con un paquete de datos, posiblemente con una longitud de campo de datos de cero (si no hay datos listos). Cualquier otra respuesta del dispositivo (así como el "silencio") es considerada por el host como un error que conduce a la detención de este canal.

Con el intercambio isócrono, se controla la confiabilidad (descartando paquetes con errores) y la integridad de los datos (detectando la falta de un paquete). El control de integridad se basa en un estricto determinismo del tipo de cambio: según su descriptor, el punto espera una transacción con un período de 2bInterval-1 microframes. Para un punto final isócrono típico, solo es posible una transacción por microtrama, y ​​un error al recibir un paquete da como resultado que no se reciban datos en la microtrama en la que se esperaba. Por lo tanto, no se requiere la numeración de paquetes (conmutador de bits de conmutación). Los dispositivos de velocidad máxima y los controladores de host solo deben enviar paquetes del tipo DATA01. Para puntos finales isócronos de banda ancha (USB 2.0), se pueden transmitir hasta tres paquetes de datos en cada microtrama. Cualquiera de estos paquetes se puede perder y se requiere la numeración de paquetes dentro de la microtrama para detectar esta situación. Para esta numeración se han introducido dos nuevos tipos de paquetes de datos: DATA2 y MDATA. La variedad de tipos de paquetes, además de la numeración, también le permite informar a su interlocutor sobre sus planes para un microframe determinado. En las transacciones IN, el dispositivo indica mediante el identificador de paquete cuántos paquetes más pretende emitir en la misma microtrama, lo que permite al host evitar intentos de entrada innecesarios. Entonces, si un paquete se transmite en una microtrama, entonces será DATA0; si son dos, la secuencia será DATOS1, DATOS0; tres: DATOS2, DATOS1, DATOS0. Las transacciones OUT utilizan un paquete MDATA (Más datos) para generar el paquete que no es el último en una microtrama, y ​​el identificador del último paquete indica cuántos paquetes se transmitieron antes. Entonces, con una transacción de salida se utiliza el paquete DATA0, con dos, la secuencia MDATA, DATA1, con tres, MDATA, MDATA, DATA2. Todas las transacciones, excepto la última en una microtrama, deben utilizar el tamaño máximo de paquete. Tenga en cuenta que otras transacciones pueden intercalarse entre transacciones de banda ancha en una microtrama.

A finales de 2008. Como era de esperar, el nuevo estándar ha aumentado el rendimiento, aunque el aumento no es tan dramático como el aumento de 40 veces en la velocidad de USB 1.1 a USB 2.0. En cualquier caso, un aumento de 10 veces en el rendimiento es bienvenido. USB 3.0 apoya Velocidad máxima de transferencia de 5 Gbit/s. El rendimiento es casi el doble que el estándar Serial ATA moderno (3 Gbit/s, teniendo en cuenta la transferencia de información redundante).

Logotipo USB 3.0

Todo entusiasta puede confirmar que la interfaz USB 2.0 es el principal cuello de botella de los ordenadores y portátiles modernos, ya que su rendimiento “neto” máximo oscila entre 30 y 35 MB/s. Pero los discos duros modernos de 3,5” para PC de sobremesa ya tienen velocidades de transferencia superiores a 100 MB/s (también están apareciendo modelos de 2,5” para portátiles que se acercan a este nivel). Las unidades de estado sólido de alta velocidad han superado con éxito el umbral de 200 MB/s. Y 5 Gbit/s (o 5120 Mbit/s) corresponden a 640 MB/s.

No creemos que los discos duros se acerquen a los 600 MB/s en el futuro previsible, pero la próxima generación de SSD podría superar esa cifra en tan sólo unos años. El aumento del rendimiento se vuelve cada vez más importante a medida que aumenta la cantidad de información y, en consecuencia, aumenta el tiempo necesario para realizar copias de seguridad. Cuanto más rápido funcione el almacenamiento, más corto será el tiempo de copia de seguridad y más fácil será crear "ventanas" en el programa de copia de seguridad.

Tabla comparativa de velocidades USB 1.0 – 3.0

Las cámaras de vídeo digitales actuales pueden grabar y almacenar gigabytes de datos de vídeo. La proporción de cámaras de vídeo HD está aumentando y requieren un almacenamiento mayor y más rápido para grabar grandes cantidades de datos. Si utiliza USB 2.0, transferir varias decenas de gigabytes de datos de vídeo a una computadora para editarlos llevará un tiempo considerable. USB Implementers Forum cree que el ancho de banda seguirá siendo fundamentalmente importante y USB 3.0 será suficiente para todos los dispositivos de consumo durante los próximos cinco años.

Codificación de 8/10 bits

Para garantizar una transferencia de datos fiable Interfaz USB 3.0 utiliza codificación de 8/10 bits, que nos resulta familiar, por ejemplo, de Serial ATA. Se transmite un byte (8 bits) utilizando una codificación de 10 bits, lo que mejora la confiabilidad de la transmisión a expensas del rendimiento. Por lo tanto, la transición de bits a bytes se realiza con una proporción de 10:1 en lugar de 8:1.

Comparación de ancho de banda USB 1.x – 3.0 y competidores

Modos de ahorro de energía

Ciertamente, objetivo principal interfaz USB 3.0 es aumentar el ancho de banda disponible, sin embargo, la nueva norma efectivamente optimiza el consumo de energía. La interfaz USB 2.0 sondea constantemente la disponibilidad del dispositivo, lo que consume energía. Por el contrario, USB 3.0 tiene cuatro estados de conexión, denominados U0-U3. El estado de conexión U0 corresponde a la transferencia de datos activa y U3 pone el dispositivo en "suspensión".

Si la conexión está inactiva, en el estado U1 se desactivará la capacidad de recibir y transmitir datos. State U2 va un paso más allá al desactivar el reloj interno. En consecuencia, los dispositivos conectados pueden pasar al estado U1 inmediatamente después de que se complete la transferencia de datos, lo que se espera que proporcione importantes ventajas en el consumo de energía en comparación con USB 2.0.

Mayor corriente

Además de los diferentes estados de consumo de energía, el estándar USB 3.0 es diferente desde USB 2.0 y corriente soportada más alta. Si USB 2.0 proporcionaba un umbral de corriente de 500 mA, en el caso del nuevo estándar la limitación se cambió a 900 mA. La corriente de inicio de conexión se ha aumentado de 100 mA para USB 2.0 a 150 mA para USB 3.0. Ambos parámetros son bastante importantes para los discos duros portátiles, que normalmente requieren corrientes ligeramente más altas. Anteriormente, el problema se podía resolver usando un enchufe USB adicional, obteniendo energía de dos puertos, pero usando solo uno para la transferencia de datos, aunque esto violaba las especificaciones USB 2.0.

Nuevos cables, conectores, codificación de colores.

El estándar USB 3.0 es compatible con versiones anteriores de USB 2.0, es decir, los enchufes parecen ser los mismos que los enchufes tipo A normales. Los pines USB 2.0 permanecen en el mismo lugar, pero ahora hay cinco pines nuevos ubicados en lo profundo del conector. Esto significa que debe insertar el conector USB 3.0 completamente en un puerto USB 3.0 para garantizar el funcionamiento del USB 3.0, lo que requiere clavijas adicionales. De lo contrario, obtendrás velocidad USB 2.0. USB Implementers Forum recomienda que los fabricantes utilicen el código de colores Pantone 300C en el interior del conector.

La situación fue similar para el conector USB tipo B, aunque las diferencias son visualmente más notorias. Un conector USB 3.0 se puede identificar mediante cinco pines adicionales.

USB 3.0 no utiliza fibra óptica, porque es demasiado caro para el mercado masivo. Por tanto, tenemos ante nosotros el viejo y bueno cable de cobre. Sin embargo, ahora tendrá nueve cables en lugar de cuatro. La transmisión de datos se realiza a través de cuatro de los cinco cables adicionales en modo diferencial (SDP – Par Diferencial Blindado). Un par de cables es responsable de recibir información y el otro de transmitir. El principio de funcionamiento es similar al Serial ATA, y los dispositivos reciben todo el ancho de banda en ambas direcciones. El quinto cable es "tierra".

USB (Autobús serie universal- “bus serie universal”): una interfaz de transferencia de datos en serie para dispositivos periféricos de velocidad media y baja. Se utiliza un cable de 4 hilos para la conexión, dos cables se utilizan para recibir y transmitir datos y 2 cables para alimentar el dispositivo periférico. Gracias al incorporado líneas de alimentación USB le permite conectar dispositivos periféricos sin su propia fuente de alimentación.

Conceptos básicos de USB

cable USB consta de 4 conductores de cobre: ​​2 conductores de alimentación y 2 conductores de datos en par trenzado y una trenza conectada a tierra (pantalla).Cables USB tener puntas físicamente diferentes “para el dispositivo” y “para el host”. Es posible implementar un dispositivo USB sin cable, con una punta “a host” integrada en la carcasa. También es posible integrar permanentemente el cable en el dispositivo.(por ejemplo, teclado USB, cámara web, mouse USB), aunque el estándar lo prohíbe para dispositivos de alta y máxima velocidad.

autobús USB estrictamente orientado, es decir, tiene el concepto de “dispositivo principal” (host, también conocido como controlador USB, generalmente integrado en el chip puente sur de la placa base) y “dispositivos periféricos”.

Los dispositivos pueden recibir alimentación de +5 V del bus, pero también pueden requerir una fuente de alimentación externa. También se admite un modo de espera para dispositivos y divisores cuando se lo ordena el bus, eliminando la alimentación principal mientras se mantiene la energía de reserva y encendiéndola cuando se lo ordena el bus.

Soportes USBConexión y desconexión en caliente de dispositivos. Esto es posible debido al aumento de la longitud del conductor de contacto a tierra en relación con los de señal. Cuando está conectado conector USB son los primeros en cerrar contactos de puesta a tierra, los potenciales de las carcasas de los dos dispositivos se igualan y una mayor conexión de los conductores de señal no produce sobretensiones, incluso si los dispositivos se alimentan desde diferentes fases de una red eléctrica trifásica.

A nivel lógico, un dispositivo USB admite transacciones de transferencia y recepción de datos. Cada paquete de cada transacción contiene un número punto final en el dispositivo. Cuando se conecta un dispositivo, los controladores en el kernel del sistema operativo leen una 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 llama tubo.

Puntos finales, y por lo tanto los canales, pertenecen a una de 4 clases:

  • continuo (a granel),
  • gerente (control),
  • isócrono (isoch),
  • interrumpir.

Los dispositivos de baja velocidad, como un mouse, no pueden tener canales isócronos y de flujo.

Canal de control diseñado para 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 el controlador, y una lista de otros puntos finales.

canal de interrupción le permite entregar paquetes cortos en ambas direcciones, sin recibir 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, utilizado en dispositivos de entrada (teclados, ratones o joysticks).

canal isócrono le permite entregar paquetes sin garantía de entrega y sin respuestas/confirmaciones, pero con una velocidad de entrega garantizada de N paquetes por período de bus (1 KHz para velocidad baja y completa, 8 KHz para alta velocidad). Se utiliza para transmitir información de audio y vídeo.

canal de flujo proporciona una garantía de entrega de cada paquete, admite la suspensión automática de la transmisión de datos debido a la desgana del dispositivo (desbordamiento o insuficiencia de datos del búfer), pero no garantiza la velocidad de entrega ni el retraso. Se utiliza, por ejemplo, en impresoras y escáneres.

Horario del autobús se divide en períodos, al comienzo del período el controlador transmite el paquete de “inicio del período” a todo el bus. Luego, durante el período, se transmiten paquetes de interrupción, luego isócronos en la cantidad requerida, durante el tiempo restante del período, se transmiten paquetes de control y, por último, paquetes de flujo;

Lado activo del autobús. es siempre el responsable del tratamiento, la transferencia de un paquete de datos desde el dispositivo al responsable del tratamiento se realiza mediante una breve pregunta del responsable del tratamiento y una larga respuesta del dispositivo que contiene los datos. El cronograma de movimiento de paquetes para cada período del bus es creado conjuntamente por el hardware del controlador y el software del controlador, para esto muchos controladores lo utilizan; Acceso directo a memoria DMA (Memoria de acceso directo) - modo de intercambio de datos entre dispositivos o entre el dispositivo y la memoria principal, sin la participación del Procesador Central (UPC). Como resultado, la velocidad de transferencia aumenta ya que los datos no se envían de un lado a otro a la CPU.

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. Lo selecciona el desarrollador del dispositivo entre los compatibles con el estándar USB.


Especificaciones USB

Características, ventajas y desventajas del USB:

  • Alta velocidad de transferencia (tasa de bits de señalización de máxima velocidad): 12 Mb/s;
  • La longitud máxima del cable para alta velocidad de transferencia es de 5 m;
  • Velocidad de bits de señalización de baja velocidad: 1,5 Mb/s;
  • La longitud máxima del cable para comunicaciones de baja velocidad es de 3 m;
  • Máximo de dispositivos conectados (incluidos multiplicadores): 127;
  • Es posible conectar dispositivos con diferentes velocidades en baudios;
  • No es necesario instalar elementos adicionales como terminadores;
  • Tensión de alimentación para dispositivos periféricos: 5 V;
  • El consumo máximo de corriente por dispositivo es de 500 mA.

Las señales USB se transmiten a través de dos hilos de un cable blindado de 4 hilos.

Cableado del conector USB 1.0 y USB 2.0

Escribe un Tipo B
Tenedor
(en cable)
Enchufe
(en la computadora)
Tenedor
(en cable)
Enchufe
(en periférico
dispositivo)

Nombres y asignaciones funcionales de los pines USB 1.0 y USB 2.0

Datos 4 Tierra Tierra (cuerpo)

Desventajas del USB 2.0

Al menos el máximo Velocidad de transferencia de datos USB 2.0 es de 480 Mbit/s (60 MB/s), en la vida real no es realista alcanzar tales velocidades (~33,5 MB/s en la práctica). Esto se debe a los grandes retrasos en el bus USB entre la solicitud de transferencia de datos y el inicio real de la transferencia. Por ejemplo, FireWire, aunque tiene un rendimiento máximo más bajo de 400 Mbps, que es 80 Mbps (10 MB/s) menos que USB 2.0, en realidad permite un mayor rendimiento de transferencia de datos a discos duros y otros dispositivos de almacenamiento. En este sentido, varias unidades móviles se han visto limitadas durante mucho tiempo por el insuficiente ancho de banda práctico del USB 2.0.

El artículo de hoy estará dedicado, como sugiere el título, a discutir los conceptos básicos interfaz USB. Veamos los conceptos básicos, la estructura de la interfaz, descubramos cómo se produce la transferencia de datos y, en un futuro próximo, pondremos todo esto en práctica 😉 En resumen, ¡comencemos!

Hay varias especificaciones diferentes. USB. Todo empezó con USB 1.0 Y USB 1.1, luego la interfaz evolucionó a USB 2.0, la especificación final apareció hace relativamente poco tiempo. USB 3.0. Pero por el momento la implementación más común es USB2. 0.

Bueno, para empezar, los principales puntos y características. USB 2.0 admite tres modos de funcionamiento:

  • Alta velocidad– hasta 480 Mb/s
  • A toda velocidad– hasta 12 Mb/s
  • Baja velocidad– hasta 1,5 Mbit/s

Comandos en el autobús Puerto USB(por ejemplo, un PC), al que podrás conectar hasta 127 dispositivos diferentes. Si esto no es suficiente, entonces necesitarás agregar otro host. Además, es importante que el dispositivo en sí no pueda enviar/recibir datos hacia/desde el host; es necesario que el host se ponga en contacto con el dispositivo.

Casi todos los artículos sobre USB He visto el término usado punto final“, pero lo que es suele escribirse de forma bastante vaga. Entonces, el punto final es parte del dispositivo. USB, que tiene su propio identificador único. Cada dispositivo USB puede tener múltiples puntos finales. En general, un punto final es solo un área de memoria USB un dispositivo en el que se pueden almacenar todos los datos (búfer de datos). Y al final obtenemos esto: cada dispositivo tiene su propia dirección única en el bus. USB, y cada punto final de este dispositivo tiene su propio número. Como esto)

Hagamos una pequeña digresión y hablemos del "hardware" de la interfaz.

Hay dos tipos de conectores: Tipo A y Tipo B.

Como ya se desprende de la figura Escribe un siempre mira al anfitrión. Estos son los conectores que vemos en ordenadores y portátiles. Conectores Tipo B Consulte siempre los dispositivos USB conectados. El cable USB consta de 4 hilos de diferentes colores. Bueno, en realidad, el rojo es energía (+5 V), el negro es tierra, el blanco y el verde son para transmisión de datos.

Además de las que se muestran en la figura, también existen otras opciones de conectores USB, por ejemplo, mini-USB y otras, bueno, eso ya lo sabes 😉

Probablemente valga la pena tocar un poco el método de transferencia de datos, pero no profundizaremos en esto) Entonces, al transferir datos a través del bus USB se utiliza el principio de codificación NRZI(sin retorno a cero con inversión). Para transmitir un "1" lógico, es necesario aumentar el nivel de la línea D+ por encima de +2,8 V, y el nivel de la línea D- debe reducirse por debajo de +0,3 V. Para transmitir cero, la situación es la opuesta - ( D- > 2,8 V) y (D+< 0.3 В).

Por separado, vale la pena discutir la fuente de alimentación de los dispositivos. USB. Y aquí también son posibles varias opciones.

En primer lugar, los dispositivos se pueden alimentar desde el bus y luego se pueden dividir en dos clases:

  • Bajo consumo
  • Alto Voltaje

La diferencia aquí es que baja potencia Los dispositivos no pueden consumir más de 100 mA. Un dispositivo Alto Voltaje no debería consumir más 100 mA sólo en la etapa de configuración. Una vez configurado por el host, su consumo puede ser de hasta 500 mA.

Además, los dispositivos pueden tener su propia fuente de alimentación. En este caso, podrán recibir hasta 100 mA del autobús, y toma todo lo demás de tu fuente)

Esto parece ser todo, pasemos lentamente a la estructura de los datos transmitidos. Aún así, esto es de gran interés para nosotros 😉

Toda la información se transmite personal, que se envían a intervalos regulares. A su vez, cada cuadro consta de actas. Esto podría quedar más claro de esta manera:

Cada cuadro incluye un paquete. , luego siguen las transacciones para diferentes puntos finales y todo termina con un paquete EOF (Fin del cuadro). Para ser absolutamente preciso, entonces EOF- esto no es exactamente un paquete en el sentido habitual de la palabra - es un intervalo de tiempo durante el cual el intercambio de datos está prohibido.

Cada transacción tiene la siguiente forma:

El primer paquete (llamado Simbólico bolsa de plastico) contiene información sobre la dirección del dispositivo USB, así como el número del endpoint al que está destinada esta transacción. Además, este paquete almacena información sobre el tipo de transacción (discutiremos qué tipos hay, pero un poco más adelante =)). – todo está claro para él, estos son los datos transmitidos por el host o el punto final (según el tipo de transacción). Último paquete – Estado– diseñado para comprobar el éxito de la adquisición de datos.

La palabra “paquete” se ha escuchado muchas veces en relación a la interfaz. USB, entonces es hora de descubrir qué es. Empecemos con el paquete. Simbólico:

Paquetes Simbólico hay tres tipos:

  • Configuración

Por eso dije esto...) Dependiendo del tipo de paquete, el valor del campo PID V Simbólico El paquete puede tomar los siguientes valores:

  • Tipo de paquete de token OUT – PID=0001
  • Tipo de paquete de token IN – PID = 1001
  • CONFIGURACIÓN del tipo de paquete de tokens – PID = 1101
  • Tipo de paquete de token SOF – PID=0101

Pasemos al siguiente componente del paquete. Simbólico- campos DIRECCIÓN Y Punto final- contienen Dirección del dispositivo USB y número de punto final, que está destinado transacción.

que campo CDN– esto es una suma de verificación, esto está claro.

Hay otro punto importante aquí. PID Incluye 4 bits, pero durante la transmisión se complementan con 4 bits más, que se obtienen invirtiendo los primeros 4 bits.

Entonces, el siguiente en la fila - es decir, un paquete de datos.

Todo aquí es básicamente igual que en el paquete. Simbólico, sólo que en lugar de la dirección del dispositivo y el número del punto final, aquí tenemos los datos transmitidos.

Nos queda por considerar Estado paquetes y paquetes SOF:

Aquí PID sólo puede tomar dos valores:

  • El paquete se recibió correctamente. PID=0010
  • Error al recibir el paquete - PID = 1010

Y finalmente paquetes:

Aquí vemos un nuevo campo. Marco– contiene el número de la trama transmitida.

Veamos como ejemplo el proceso de escritura de datos en un dispositivo USB. Es decir, consideremos un ejemplo de la estructura de un cuadro de grabación.

El marco, como recordarás, consta de transacciones y tiene la siguiente forma:

¿Cuáles son todas estas transacciones? ¡Vamos a resolverlo ahora! Transacción CONFIGURACIÓN:

Transacción AFUERA:

De manera similar, al leer datos desde un dispositivo USB, el marco se ve así:

Transacción CONFIGURACIÓN Ya hemos visto, veamos la transacción. EN 😉

Como puede ver, todas estas transacciones tienen la misma estructura que comentamos anteriormente)

En general, creo que es suficiente por hoy 😉 Este es un artículo bastante largo, ¡espero que intentemos implementar la interfaz USB en la práctica en un futuro cercano!

Hola a todos. A veces las personas están interesadas en saber en qué se diferencia USB 3.0 de USB 2.0, a veces quieren saber qué versión o tipo de conector USB tienen en su computadora, qué tipo de dinosaurio es USB 1.0, etc. Profundicemos un poco más en este tema.

El estándar USB apareció a mediados de los 90. Descifrado USB así es cómo - Autobús serie universal. Este estándar fue desarrollado específicamente para la comunicación entre dispositivos periféricos y una computadora y ahora ocupa una posición de liderazgo entre todo tipo de interfaces de comunicación. Esto no es sorprendente. Hoy en día es difícil imaginar cualquier dispositivo sin conector USB, aunque estos conectores varían en tipo.

Tipos de conectores USB

Hoy en día existe una gran cantidad de tipos de conectores USB. Algunos son más comunes, otros menos. De todos modos, echémosles un vistazo.

USBtipo-A– uno de los tipos más comunes de conectores USB. Es posible que lo hayas visto en tu bloque de carga y más. Tiene muchos usos. Con su ayuda, puede conectar ratones y teclados a una computadora (u otro dispositivo), unidades flash, discos externos, teléfonos inteligentes, etc. Esta lista puede continuar durante mucho tiempo si lo piensas bien.

USBtipo-B– el conector se utiliza principalmente para conectar una impresora u otros dispositivos periféricos a la computadora. Recibido mucho menos extendido que el USB tipo A.

miniusb Era bastante común en dispositivos móviles antes de la llegada del Micro USB. Hoy en día es muy raro, pero aún puedes encontrarlo en algunos dispositivos más antiguos. En mi altavoz de audio portátil, el conector Mini USB recibe electricidad para cargar la batería. Compré este altavoz hace unos 5 años (resultó ser duradero).

Micro USB Actualmente se utiliza en teléfonos inteligentes y móviles de casi todos los fabricantes. Este conector USB ha ganado una popularidad increíble entre los dispositivos móviles. Sin embargo, el USB Type-C está ganando terreno poco a poco.

USB Versión 1.0 – Excavaciones Arqueológicas

El tatarabuelo del estándar USB es USB 1.0 Nació en el frío noviembre de 1995. Pero nació un poco prematuro y no ganó mucha popularidad. Pero su hermano menor USB 1.1, nacido tres años después, era un ejemplar más viable y logró atraer bastante atención.

En cuanto a la parte técnica, la velocidad de transferencia de datos era pequeña, pero para los estándares de aquella época esta velocidad era más que suficiente. La velocidad era de hasta 12 Mbit/s y estaba en modo de alto rendimiento.

Diferencias entre conectores USB 2.0 y USB 3.0

USB 2.0 y USB 3.0 son dos estándares USB completamente modernos que ahora se utilizan en todas partes en ordenadores y portátiles. USB 3.0 es, por supuesto, más nuevo y más rápido, y también es totalmente compatible con dispositivos USB 2.0. Pero la velocidad en este caso estará limitada a la velocidad máxima según el estándar USB 2.0.

En teoría, las velocidades de transferencia de USB 3.0 son aproximadamente 10 veces más rápidas que las de USB 2.0 (5 Gbps frente a 480 Mbps). Pero en la práctica, la velocidad del intercambio de información entre dispositivos suele estar limitada por los propios dispositivos. Aunque en general, el USB 3.0 sigue ganando.

Diferencias técnicas

Aunque los estándares USB 2.0 y USB 3.0 son compatibles con versiones anteriores, tienen algunas diferencias técnicas. USB 2.0 tiene 4 pines: 2 para alimentar dispositivos y 2 para transferencia de datos. Estos 4 pines se han conservado en el estándar USB 3.0. Pero además de ellos, se agregaron 4 contactos más, que son necesarios para altas velocidades de transferencia de datos y una carga más rápida de los dispositivos. Por cierto, USB 3.0 puede funcionar con corriente de hasta 1 amperio.

Como resultado, el cable estándar USB 3.0 se ha vuelto más grueso y su longitud ahora no supera los 3 metros (en USB 2.0 la longitud máxima alcanza los 5 metros). Pero puedes cargar tu teléfono inteligente mucho más rápido, incluso si conectas varios teléfonos inteligentes a un conector a través de un divisor.

Naturalmente, los fabricantes se ocuparon de las diferencias visuales. No es necesario buscar el embalaje de la placa base para ver qué estándares USB admite. Y no es necesario acceder a la configuración de su computadora ni al administrador de dispositivos para hacer esto. Solo mira el color de tu conector. El conector USB 3.0 casi siempre es azul. Muy raramente también es rojo. Mientras que el USB 2.0 casi siempre es negro.

Ahora, con un vistazo rápido, puedes determinar si tienes USB 2.0 o USB 3.0 en tu computadora portátil.

Este es probablemente el final de la conversación sobre en qué se diferencia USB 2.0 de USB 3.0.

Conclusión

¿Qué hemos aprendido de este artículo? Ese USB se divide en estándares de transferencia de datos, que difieren en la velocidad de transferencia de datos. Y además que el USB tiene una gran cantidad de tipos de conectores.

Y lo más interesante que olvidé mencionar en el artículo es que los tipos de conectores se pueden combinar de la siguiente manera. Puede encontrar un USB tipo A de tamaño completo y un USB tipo B de tamaño completo, mientras que hay (pero son raros) micro USB tipo A y micro USB tipo B (muy común). El USB tipo A puede funcionar utilizando el protocolo USB 2.0, o tal vez utilizando el protocolo USB 3.0. En general, si quieres, puedes confundirte.

Y si le preocupa qué conectores es mejor elegir para una computadora portátil USB 2.0 o USB 3.0, no se preocupe en absoluto. Ahora todas las computadoras portátiles y de escritorio modernas están equipadas con ambos tipos de USB. Por ejemplo, mi computadora portátil tiene dos conectores USB 2.0 y un conector USB 3.0. Y los tres conectores son USB tipo A.

Eso es lo que son: ¡USB!

¿Leíste hasta el final?

¿Te resultó útil este artículo

No precisamente

¿Qué es exactamente lo que no te gustó? ¿El artículo estaba incompleto o era falso?
¡Escribe en los comentarios y prometemos mejorar!