CABLES Y CONECTORES




El cable de bus USB es de 4 hilos, y comprende líneas de señal (datos) y alimentación, con lo que las funciones pueden utilizar un único cable.

Pin
Nombre
Descripción
Color
1
VBUS
+ 5 V. CC
rojo
2
D-
Data -
azul
3
D+
Data +
amarillo
4
GND
Tierra
verde







Existen dos tipos de cable: apantallado y sin apantallar.  En el primer caso el par de hilos de señal es trenzado;  los de tierra y alimentación son rectos, y la cubierta de protecció (pantalla) solo puede conectarse a tierra en el anfitrión.  En el cable sin apantallar todos los hilos son rectos.  Las conexiones a 15 Mbps y superiores exigen cable apantallado.

Nota: Una forma de identificar que los concentradores (hubs) USB están realmente adaptados a la norma 2.0 es por su cable apantallado.


AWG
mm Ø
long. máx.
28
 0.321
 0.81 m
26
 0.405
 1.31 m
24
 0.511
 2.08 m
22
 0.644
 3.33 m
20
 0.812
 5.00 m








Se utilizan diámetros estándar para los hilos de alimentación del bus.  Para cada sección se autoriza una longitud máxima del segmento.  En la tabla izquierda se muestran estas distancias ; a la derecha se muestran la disposición de pines y colores de identificación.


Se usan dos tipos de conectores, A y B.  Ambos son polarizados (solo pueden insertarse en una posición) y utilizan sistemas de presión para sujetarse.  Los de tipo A utilizan la hembra en el sistema anfitrión, y suelen usarse en dispositivos en los que la conexión es permanente (por ejemplo, ratones y teclados).  Los de tipo B utilizan la hembra en el dispositivo USB (función), y se utilizan en sistemas móviles (por ejemplo, cámaras fotográficas o altavoces).  En general podemos afirmar que la hembra de los conectores A están en el lado del host (PC) o de los concentradores (hubs), mientras las de tipo B están del lado de los periféricos.

Conector tipo A





  Conector tipo B




FUNCIONAMIENTO PUERTO USB



El bus serie USB es síncrono, y utiliza el algoritmo de codificación NRZI ("Non Return to Zero Inverted").  En este sistema existen dos voltajes opuestos;  una tensión de referencia corresponde a un "1", pero no hay retorno a cero entre bits, de forma que una serie de unos corresponde a un voltaje uniforme; en cambio los ceros se marcan como cambios del nivel de tensión, de modo que una sucesión de ceros produce sucesivos cambios de tensión entre los conductores de señal.

A partir de las salidas proporcionadas por los concentradores raíz (generalmente conectores del tipo "A"  ) y utilizando concentradores adicionales, pueden conectarse más dispositivos hasta el límite señalado.



Nota:  actualmente la mayoría de las placas-base incluyen un controlador USB integrado en el chipset.  Para sistemas antiguos que no dispongan de USB pueden instalarse tarjetas PCI (e incluso PC-CARD para portátiles) que incluyen un controlador de host y un concentrador raíz con varios conectores de salida.

El protocolo de comunicación utilizado es de testigo, que guarda cierta similitud con el sistema Token-Ring de IBM.  Puesto que todos los periféricos comparten el bus y pueden funcionar de forma simultanea, la información es enviada en paquetes;  cada paquete contiene una cabecera que indica el periférico a que va dirigido.  Existen cuatro tipos de paquetes distintos:  Token; Datos; Handshake, y Especial; el máximo de datos por paquete es de 8; 16; 32 y 64 Bytes.  Se utiliza un sistema de detección y corrección de errores bastante robusto tipo CRC ("Cyclical Redundancy Check").



El funcionamiento está centrado en el host, todas las transacciones se originan en él. Es el controlador host el que decide todas las acciones, incluyendo el número asignado a cada dispositivo (esta asignación es realizada automáticamente por el controlador "host" cada vez que se inicia el sistema o se añade, o elimina, un nuevo dispositivo en el bus), su ancho de banda, etc.  Cuando se detecta un nuevo dispositivo es el host el encargado de cargar los drivers oportunos sin necesidad de intervención por el usuario.

El sistema utiliza cuatro tipo de transacciones que resuelven todas las posibles situaciones de comunicación.  Cada transacción utiliza un mínimo de tres paquetes, el primero es siempre un Token que avisa al dispositivo que puede iniciar la transmisión.






Transferencia de control ("Control transfer"):  Ocurre cuando un dispositivo se conecta por primera vez.  En este momento el controlador de host envía un paquete "Token" al periférico notificándole el número que le ha asignado.

Transferencia de pila de datos ("Bulk data transfer"):  Este proceso se utiliza para enviar gran cantida de datos de una sola vez.  Es útil para dispositivos que tienen que enviar gran cantidad de datos cada vez, como escáneres o máquinas de fotografía digital.

Transferencia por interrupción ("Interrupt data transfer"):  Este proceso se utiliza cuando se solicita enviar información por el bus en una sola dirección (de la función al host).

Transferencia de datos isócrona ("Isochronous data transfer"):  Este proceso se utiliza cuando es necesario enviar datos en tiempo real.  Los datos son enviados con una cadencia precisa ajustada a un reloj,  de modo que la transmisión es a velocidad constante.




Nota:  Las comunicaciones asíncronas ponen más énfasis en garantizar el envío de datos, y menos en su temporización ("cuando" lleguan); por su parte las comunicaciones isócronas son justamente lo contrario, ponen más énfasis en la oportunidad de la transmisión que en la velocidad.  Esta sincronización es importante en situaciones como la reproducción de video, donde no debe existir desfase entre las señales de video y audio.