1
USB
El USB (Universal Serial Bus) se creó para unificar la gran variedad de conectores serie que existían
Facilmente configurable
Permite la conexión en caliente (plug and play)
El SO detecta la conexión y desconexión de dispositivos
El SO identifica los dispositivos conectados y los configura
Facilmente ampliable
Pueden conectarse tipos muy distintos de dispositivos
Síncronos/asíncronos
Diferentes velocidades de transferencia
Se reduce el número de puertos necesarios
Hasta 127 dispositivos pueden conectarse en un mismo puerto
El propio puerto puede proporcionar alimentación a los dispositivos
2
USB: estructura
El bus USB tiene una estructura estratificada con forma de árbol
La conexión de los dispositivos sigue un esquema encadenado (hardware polling)
La gestión del bus es centralizada y se realiza desde el controlador integrado en el computador (host)
Cada dispositivo USB tiene su propia dirección en el sistema
El controlador inicia todas las actividades y se comunica con el computador por medio de interrupciones
Ningún dispositivo USB puede iniciar una transacción por sí mismo para evitar sobrescribir datos presentes en el bus
3
USB: estructura
El host también actúa como un distribuidor (hub) que permite la conexión de varios dispositivos USB (nodos)
Se reduce el número de conexiones necesarias
Se reduce la cantidad de recursos del computador ocupados (canales E/S, canales DMA, interrupciones…)
Se pueden añadir hubs adicionales para ampliar la estructura del sistema y permitir la conexión de un mayor número de dispositivos (hasta 127)
4
USB: hub
La principal funcionalidad de un hub es extender el sistema proporcionando nuevos puertos de conexión
Cada hub proporciona un puerto de conexión con el host (upstream) y varios puertos de conexión con dispositivos u otros hubs (downstream)
Al igual que cualquier otro dispositivo USB, un hub debe ser configurado, recibiendo su propia dirección
5
USB: hub
Un hub USB no es sólo un distribuidor de datos, también dispone de cierta inteligencia
Repetidor: distribuye el tráfico entre el host (puerto upstream) y los dispostivisos USB (puertos downstream)
Controlador: se encarga de regular el tráfico de datos de acuerdo con los dispositivos USB conectados
El controlador del hub proporciona la interfaz de configuración al exterior
6
USB: conectores
Existen dos tipos de conectores USB
La serie A se utiliza para realizar conexiones hacia el host
La serie B se utiliza para realizar conexiones hacia un dispositivo
7
USB: cables
El cable USB contiene solo cuatro líneas
GND: tierra
VBus: alimentación (no es suficiente para algunos dispositivos)
D+ D–: líneas diferenciales de transmisión
La longitud máxima del cable es de 5 metros y su ancho de banda máximo es 60 Mbytes (USB 2.0)
Pin 1 VBus rojo
Pin 2 D– blanco
Pin 3 D+ verde
Pin 4 GND negro
8
USB: cables
Los datos se transmiten en serie por las línea D+ D–
No hay una señal de reloj
La sincronización se obtiene a partir de los propios datos utilizando condificación NRZI (Non Return to Zero Inverted)
Un uno se representa manteniendo el nivel de voltaje
Cada vez que aparece un cero se cambia la polaridad
Si aparecen seis unos seguidos se inserta un cero (bit-stuffing) para forzar cambios de polaridad frecuentes y evitar, con ello, pérdidas de sincronización
9
USB: transmisión de datos
Las transferencias de datos se realizan estableciendo canales de comunicación virtuales (pipes)
Los canales son creados por el host
Cada canal ocupa parte del ancho de banda disponible
Los canales terminan en un punto de final
Cada dispositivo puede soportar varios puntos de final y, por tanto, varios canales distintos
La prioridad de los dispositivos viene dada por la conexión en cadena
10
USB: transmisión de datos
Cuando se conecta un dispositivo, el canal de control por defecto se establece con el punto de final 0
Durante la inicialización, el host determina:
El formato de datos que soporta el dispositivo conectado
El tipo de dispositivo y la dirección de la transferencia
Los requerimientos de frecuencia y latencia de bus
El ancho de banda necesario
El tamaño máximo de los paquetes
Finalizado este proceso, el host asigna una dirección al dispositivo
Página siguiente |