You are on page 1of 39

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

ESTUDIO DEL BUS USB


OBJETIVO.-

Estudio detallado del BUS USB y por tanto del puerto USB (Universal Serial Bus)
TIEMPO ESTIMADO.-

PARTE TEORICA.-

INTRODUCCIN. CARACTERSTICAS BSICAS: ESCENARIO DEL USB. MODO DE OPERACIN ARQUITECTURA: INTERCONEXIN USB O TOPOLOGA USB DISPOSITIVOS USB LOS HUBS. LAS FUNCIONES. EL HOST O CONTROLADOR ANFITRIN USB ENTORNO FISICO OPERATIVA DE TRANSMISIN CLASES DE DISPOSITIVOS PERIFRICO DE CLASE DE ALMACENAMIENTO MASIVO. PERIFRICOS DE COMUNICACIONES E INTERCONEXION. PERIFRICO DE AUDIO. PERIFRICO DE INTERFAZ HUMANO PROTOCOLO DE COMUNICACIN. ENUMERACIN Y DESCRIPTORES DE DISPOSITIVOS DRIVER PROVEEDOR DE PERIFRICOS. HERRAMIENTAS DE ANLISIS DEL BUS USB
DOCUMENTACION.-

Documentacin en pdf

PARTE PRACTICA.Probar la conexin, visualizar los perifricos, puertos, conexiones y analizadores.

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

INTRODUCCIN.
El puerto USB (Universal Serial Bus) nace ante la necesidad de acabar con la diversidad de conectores disponibles para acceder al PC creando uno mas sencillo y con mas prestaciones para atender a las nuevas tecnologas en especial las de multimedia. La historia del mismo se remonta al ao 1994 en el que la alianza de varios fabricantes (Intel, Compaq, NEC y Microsoft) fija como objetivo lograr un bus generalista que pueda proporcionar anchos de banda suficientes como para contemplar la conexin de dispositivos de muy diversas funcionalidades sin reestructurar el hardware ni cargar software especifico, es decir, va un conector externo, si bien implementando un equipamiento en el PC, de un coste no muy elevado, pero operativo para todos los dispositivos actuales y futuros, a los que se deber exigir el cumplimiento del estndar. (por otro lado este estndar no debe se muy restrictivo). Se fijo que este bus habra de permitir su conexin en caliente, es decir trabajar plug&play y proporcionar, a travs de el, la alimentacin del dispositivo que se conecte a este bus. Una visin resumida de la historia seria: USB 0.9: Primer borrador, publicado en Noviembre de 1995. USB 1.0: Publicada en 1996 establece dos tipos de conexin: La primera, denominada velocidad baja("Low speed"), ofrece 1,5 Mbps y est pensada para perifricos que no requieren un gran ancho de banda, como ratones o joysticks. La segunda, denominada velocidad completa ("Full speed"), es de 12 Mbps, y est destinada a los dispositivos ms rpidos. USB 1.1: Publicada en 1998, aade detalles y precisiones a la norma inicial; es el estndar mnimo que debe cumplir un dispositivo USB. USB 2.0: Su versin final fue publicada en Abril del 2000; es una extensin de la norma compatible con las anteriores. Permite velocidades de hasta 480 Mbps denominada alta velocidad("High speed"). Para la definicin de la arquitectura de este bus se establecieron los siguientes criterios: En primer lugar este BUS habra de estar implementado de un modo sencillo sobre un conector cuya estructura y cableado, siendo nico, fuera universalista, es decir, valido para cualquier dispositivo que se desase conectar. As mismo su coste habra de ser bajo no cuestionando por ello el que la velocidad de trabajo fuese del orden de los 12 Mbps. Habra de proporcionar funcionalidad para interconectar dispositivos de voz, audio y video comprimido abriendo posibilidades de conexin a nuevas tecnologas y en lo relativo a protocolos debera permitir la transferencia en modo sincrono de audio y video y en modo asncrono de mensajes.

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

La arquitectura bsica debera ser abierta para la integracin de nuevas clases de perifricos con el fin de aumentar las posibilidades del PC y disponer de la facilidad que permita conectar dispositivos a concentradores formando topologas de estrella con concentradores en cascada Una visin del escenario, que forma parte en las especificaciones, donde opera este bus es el representado en la figura.
CARACTERISTICAS BAJA VELOCIDAD DISPOSITIVOS INTERACTIVOS 10 / 100KBPS TECLADO, RATON IMPRESORA PERIFERICOS DE JUEGOS PERIFERICOS DE REALIDAD VIRTUAL BAJO COSTE PLUG AND PLAY FACILIDAD DE USO MULTIPLES PERIFERICOS APLICACIONES ESPECIFICACIONES

MEDIA VELOCIDAD TELEFONIA, AUDIO VIDEO COMPRIMIDO 500 KBPS / 10 MBPS RDSI, PBX POTS AUDIO BAJO COSTE FACILIDAD DE USO VELOCIDAD GARANTIZADA ANCHO DE BANDA GARANTIZADO PLUG AND PLAY MULTIPLES DISPOSITIVOS

ALTA VELOCIDAD VIDEO ALMACENAMIENTO 25 x10 MBPS VIDEO ALMACENAMIENTO IMAGENES BAJO COSTE FACILIDAD DE USO VELOCIDAD GARANTIZADA GRAN ANCHO DE BANDA PLUG AND PLAY MULTIPLES DISPOSITIVOS

El bus USB es reconocido como puerto USB y es conveniente clarificar que este puerto USB o conector USB es la cara que presenta el equipo PC dotado del BUS USB al usuario, si bien es lgico comprender que dentro del equipamiento del PC existe una dotacin especializada de hardware y software que realiza la funcionalidad hacia el usuario del puerto al conectar a dicho puerto USB el perifrico con conector normalizado USB.

CARACTERSTICAS BSICAS:
Desde el punto de vista del usuario final el Bus USB se define como un modelo nico de cableado y conectores, permitiendo que a travs del mismo se lleve a cabo la transferencia de datos y proporcione la alimentacin del dispositivo perifrico que a travs de el se conecte. La operativa de plug&play que siempre ha estado restringida al entorno interno del PC se replantea para que esta misma este operativa va un conector externo, el USB, que proporcione la autoidentificacin de los perifricos conectados realizando un mapeo automtico para identificar el driver con el que trabaja el dispositivo conectado y la configuracin necesaria para su operatividad inmediata. Desde la perspectiva de ancho de banda y modos de trabajo, proporciona rangos de ancho de banda desde pocos bps hasta varios cientos de Mbps, soportando
3

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

tipos de transferencia tanto sincronas como asncronas sobre el mismo juego de cables. Soporta operaciones concurrentes desde varios dispositivos de modo que en una misma conexin se puede llegar a dar servicio hasta 127 tipos de dispositivos permitiendo montar una estructura de trabajo en topologa de estrella sobre estrella. En esta estructura topolgica se definen tres reas, la interconexin USB, los dispositivos USB y el host USB En cuanto al tratamiento de la informacin soporta una amplia gama de tamaos de paquetes que permiten un alto rango de dispositivos de almacenamiento y proporciona una alta gama de velocidades para permitir adaptarse a los diferentes tamaos de buffer controlando el flujo de almacenamiento. Lleva incorporado un protocolo que trata la recuperacin de errores, contemplando de modo dinmico la insercin y extraccin de dispositivos en tiempo real identificando los dispositivos detenidos.

ESCENARIO DEL USB.


La implantacin del USB cambia por completo el puesto de trabajo de un PC, haciendo que el marasmo de conexiones se reduzca de tal modo que una o dos conexiones USB se conjugaran todas las actuales, tales como la del ratn, joystick, entradas/ salidas de audio, dispositivos de almacenamiento, como discos duros. Uno o dos puertos pueden reemplazar las numerosas conexiones de que disponen los ordenadores de hoy en da, simplificando las labores de diseo y concentracin de conexiones a las que se ven sometidos este tipo de dispositivos en espacios tan pequeos permitiendo a su vez el uso de perifricos que tan solo eran accesibles tras reconfiguraciones del sistema y desde aparatosos equipos auxiliares externos. Una imagen de la situacin de conectores seria como la de la figura.

La insercin de puertos USB significa posibilitar al PC, dotndole de circuiteria aadida, para lograr modos de acceso mas operativos. Un ejemplo de cmo se materializa esta posibilidad es lo que se detalla en la figura. En la misma se muestra la placa en la que esta integrado el BUS USB y que ofrece a travs de las conexiones puertos externos para los dispositivos que respeten el estndar.
4

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES


Circuiteria del Bus USB Conexiones USB

Puertos externos Serie A

En lo relativo a las aplicaciones de telefona a travs del PC la disponibilidad de anchos de banda no operativos y solo disponibles a travs de conexiones serie no han tenido mucha aceptacin y es en este mbito donde el USB da una solucin proporcionando anchos de banda suficientes como para permitir conexiones a centrales telefnicas y al escenario de la RDSI.

MODO DE OPERACIN
Trabaja como interfaz para transmisin de datos y distribucin de energa de 5 voltios. En si es un bus basado en paso por testigo, que lo distribuye el controlador USB por el bus y el dispositivo cuya direccin coincida con la que porta el testigo responde aceptando o enviando datos al controlador, este controlador gestiona la distribucin de energa. Es importante resaltar que cada puerto utiliza una nica solicitud de interrupcin independientemente de los perifricos que tenga conectados por lo que no hay riesgo de conflictos entre dispositivos, que de otra forma no podran ser conectados por falta de recursos. El software cliente se ejecuta en el host y corresponde a un dispositivo USB; se suministra con el sistema operativo o con el dispositivo USB. El software del sistema USB, es el que soporta USB en un determinado sistema operativo y se suministra con el sistema operativo independientemente de los dispositivos USB o del software cliente.

ARQUITECTURA:
Esta basada en tres reas de responsabilidad: La interconexin USB Los dispositivos USB El host o controlador anfitrin USB INTERCONEXIN USB O TOPOLOGA USB El estndar presenta un mbito de interconexin para conectar los dispositivos USB con el host USB o controlador anfitrin, estructurando la interconexin en siete capas en estrella y cada estrella tiene como centro un hub raz. Esta estructura permite hasta 127 dispositivos a la vez.
5

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

El hecho de que sean siete capas esta basado en la perdida de seal que podra generar los accesos jerarquizados. Cada segmento es una conexin punto a punto entre el host y un hub o entre el host y un dispositivo que proporciona una nueva facilidad al host tal como una conexin RDSI, un micrfono digital, un disco duro, etc. que en la figura se identifica como funcin encubriendo bajo esta denominacin una funcionalidad o un dispositivo concreto. En la figura se detalla esta estructura y se presenta un elemento que puede considerarse la conjuncin de un hub y una funcin, denominndolo como dispositivo compuesto ya que proporciona un modo de unin y una funcionalidad aadida que en ningn caso pueden separarse.
HOST RootHub

Capa 1

Hub 1

Capa 2

Funcion Hub 2 Funcion

Capa 3

Funcion Hub 3 Hub 4 Funcion

Capa 4

Funcion

Hub 5

Funcion

Capa 5

Hub 6

Hub 7 Dispositivo Compuesto Funcion

Capa 6

Capa 7

DISPOSITIVOS USB Estos pueden ser hubs que proporcionan conexiones al USB o dispositivos que aaden funcionalidades al sistema, tales como la facilidad de conexin para RDSI, para un joystick digital, para altavoces o para dispositivos de almacenamiento. Estos dispositivos presentan un interfaz estndar de modo que entienden el protocolo de USB y tienen la capacidad para responder a operaciones propias del estndar USB, tales como operaciones de configuracin y liberacin Bajo la denominacin de dispositivos USB se enmarcan los hub, interfaces humanos (HID), impresoras, dispositivos de almacenamiento y otros. De un modo genrico podemos distinguir dos grupos.
6

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

Los Hub Las Funciones En la figura se presenta el modo de interconexin y la materializacin de dichas conexiones, de tal modo que a travs del teclado se insertan en el bus las funcionalidades de un lpiz o tableta grafica, y el ratn. As mismo, el monitor asume las funcionalidades dadas a travs del teclado y aade al bus funcionalidades de sonido e imagen, por ultimo los puertos del PC atienden por un lado el bus de teclado y monitor y por otro la funcionalidad de telefona por otro puerto y la posible conexin de otros perifricos va un hub para otras funcionalidades diferentes, cmara digital, disco duro integrado, etc.
Hub/Funcion Hub/Funcion Host/Hub

Teclado

Monitor

PC

Lapiz Funcion

Raton Funcion

Altavoz Funcion

Microfono Funcion

Telefono Funcion

Hub

Hub

Es importante resaltar que solamente los Hub tienen la capacidad de proporcionar punto de acceso adicional al USB y las Funciones dan nuevas facilidades al host directamente o a travs del Hub.
Altavoces Telefono Auriculares

Hub

Tableta grafica

Raton por USB

LOS HUBS. Los hub son dispositivos diseados para proporcionar puntos de acceso al USB dando el interfaz elctrico entre los dispositivos USB y el host, por lo tanto, son los elementos claves para la arquitectura plug&play del USB
7

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

y simplifican la conectividad desde la perspectiva del usuario. Cada hub convierte un punto de acceso en mltiples accesos soportando la concatenacin de hubs. Se materializan como distribuidores inteligentes de datos y alimentacin, y hacen posible la conexin de 127 dispositivos a un nico puerto USB. De una forma selectiva reparten datos y alimentacin hacia sus puertos descendentes y permiten la comunicacin hacia su puerto de retorno o ascendente. Un hub de 4 puertos, por ejemplo, acepta datos del PC para un perifrico por su puerta de retorno o descendente y los distribuye a las 4 puertas ascendentes si fuera necesario. Los aspectos mas relevantes de su funcionalidad son: Proporcionar un dominio de conectividad Gestionar la alimentacin elctrica Detectar la conexin y desconexin de los dispositivos Detectar las cadas del bus y las recuperaciones del mismo Soportar dispositivos de alta, completa y baja velocidad. Un hub seria como el de la figura.

Presenta un puerto ascendente que le conecta al hub ascendente en direccin del host y varios puertos descendentes que conceden conexiones a otros hub de nivel inferior o a otras funciones.

CONEXION ASCENDENTE HOST

PUERTOS

CUATRO PUERTOS

Un hub esta formado por tres componentes: Un Hub Repetidor Un Hub Controlador Un Hub Traductor de Transacciones
8

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

El Hub Repetidor es responsable de la funcionalidad de conexin y desconexin entre los puertos ascendentes y descendentes y gestiona la sealizacin para situaciones excepcionales tales como la deteccin de la cada y recuperacin del bus y de la conexin y desconexin de los perifricos a el conectados. El Hub Controlador proporciona el mecanismo de comunicacin hacia y desde el host y mediante informacin relativa a los estados de un hub especifico y ciertos comandos de control puede configurarle y monitorizar y controlar los flujos de informacin de los puertos de este. El Traductor de transacciones realiza la adaptacin de transacciones que sean de diferente velocidad, de modo que hace posible la unin entre dispositivos de alta y baja velocidad. En el escenario del hub las conexiones podran ser como las de la figura.

LAS FUNCIONES. Una funcin es un dispositivo USB que esta diseado para transmitir y recibir datos o informacin de control sobre el bus USB. Es identificada como un dispositivo perifrico que con un cable se conecta a un puerto de un hub, sin embargo fsicamente puede incorporar mltiples funciones e incluso llevar dentro un hub en cuyo caso se conoce como un dispositivo compuesto, ya comentado, que es visto por el host como un hub con uno o mas dispositivos USB que no pueden ser desconectados o conectados de modo individual. Cada Funcin tiene informacin de la configuracin que describe sus facilidades y funcionalidades y no puede funcionar si antes el host no ha realizado la operativa de configurarle en base a esa informacin, lo que significa asignar ancho de banda y seleccin de las opciones de configuracin de su funcin especifica. Un ejemplo de Funcin seria en lo relativo al interfaz humano un ratn, un controlador de un juego, etc. En lo relativo a dispositivos de tratamiento
9

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

de imgenes seria un scanner o una cmara. En lo relativo al almacenamiento masivo un CD-ROM, floppy o un DVD. En lo relativo a comunicaciones seria un perifrico que aporta la filosofa de comunicaciones Bluetooth
Juego con conexion USB Conexion USB con Bluetooth

Disco duro con conexion USB Conexion de infrarrojos por USB Conexion USB con adaptador Bluetooth

EL HOST O CONTROLADOR ANFITRIN USB El controlador es nico, reside dentro del PC y es responsable de las comunicaciones entre los perifricos USB y la CPU del PC, pudiendo ser una combinacin de hardware, firmware y software. Es tambin responsable de la admisin de los perifricos dentro del bus, tanto si se detecta una conexin como una desconexin. Para cada perifrico aadido, el controlador determina su tipo y le asigna una direccin lgica para utilizarla siempre en las comunicaciones con el mismo. Si se producen errores durante la conexin, el controlador lo comunica a la CPU, que a su vez, lo transmite al usuario. Una vez se ha producido la conexin correctamente, el controlador asigna al perifrico los recursos del sistema que ste precise para su funcionamiento. El controlador tambin es responsable del control de flujo de datos entre el perifrico y la CPU. Adems del controlador, el PC tambin contiene el concentrador raz. Este es el primer concentrador de toda la cadena que permite a los datos y a la energa pasar a uno o dos conectores USB del PC, y de all a los 127 perifricos que, como mximo, puede soportar el sistema. Esto es posible aadiendo concentradores adicionales. Por ejemplo, si el PC tiene una nica puerta USB y a ella le conectamos un hub o concentrador de 4 puertas, el PC se queda sin ms puertas disponibles. Sin embargo, el hub de 4 puertas permite realizar 4 conexiones descendentes. Conectando otro hub de 4 puertas a una de las 4 puertas del primero, habremos creado un total de 7 puertas a partir de una puerta del PC. De esta forma, es decir, aadiendo concentradores, el PC puede soportar hasta 127 perifricos USB. En la figura se representa la creacin de los 7 puertos comentados a travs de dos hub.

10

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES


CONEXION AL PUERTO DEL PC PUERTOS PARA FUNCIONES O DISPOSITIVOS

PUERTO ASCENDENTE PARA LOS OTROS 4 PUERTOS

La mayora de los concentradores se encontrarn incorporados en los perifricos. Por ejemplo, un monitor USB puede contener un concentrador de 7 puertas incluido dentro de su chasis. El monitor utilizar una de ellas para sus datos y control y le quedarn 6 para conectar all otros perifricos

ENTORNO FISICO
La topologa fsica del USB consiste en la conexin de puertos descendentes a puertos ascendentes de otro hub o dispositivo. Dado que el USB puede trabajar a tres velocidades, para las velocidades alta y completa precisa utilizar un cable apantallado con dos conductores de alimentacin y un par trenzado (twisteado) para las seales. En el caso de baja velocidad se recomienda pero no es necesario que el par de comunicaciones este trenzado. Los conectores estn diseados para conectarse en caliente, es decir llevan un diseo que al ser introducido en el conector, lo primero que hace contacto es la alimentacin y segn se va introduciendo en su clavija especifica hasta su totalidad se conectan los conductores de datos de este modo se evitan complicaciones entre la alimentacin y los datos. Adems estos conectores son diferentes segn a que se conecten, es decir, si la conexin es hacia el host, el conector es de la serie A, mientras que si la conexin es hacia un perifrico, la conexin es serie B. El conector de serie A, conector plano es el conector usado por los dispositivos USB para conectarse directamente a un host o a un puerto ascendente de un hub, presentan las cuatro patillas correspondientes a los cuatro conductores alineadas en el plano Todos los dispositivos USB deben tener el estndar Serie A. El conector Serie B es la parte de conexin del dispositivo al host como descendente, presentan los contactos distribuidos en dos planos paralelos, dos en cada plano, y se emplean en los dispositivos que deben tener un receptculo al que poder conectar un cable USB. Por ejemplo impresoras, scanner, y mdems. En la figura el conector de la izquierda es el de serie A y el de la derecha es el de la serie B.

11

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

HOST / HUB

SERIE A SERIE B

FUNCION / DISPOSITIVO

El cable esta formado por cuatro conductores, dos de potencia y dos de seales debiendo estos ltimos estar trenzados (twisteados) o no segn la velocidad de transmisin.. La distribucin es:
V BUS D+ Par twisteado DGND DGND V BUS D+

La identificacin de cables es:


NUMERO CONTACTO 1 2 3 4 PANTALLA NOMBRE DE LA SENAL VBUS DD+ GND PANTALLA COLOR IDENTIFICATIVO ROJO BLANCO VERDE NEGRO PANTALLA

OPERATIVA DE TRANSMISIN
El bus serie USB es sncrono, y utiliza la codificacin NRZI ("Non Return to Zero Inverted") con insercin de un cero tras la transmisin de 6 unos, para asegurar transacciones en la lnea y permitir que el receptor se mantenga sincronizado. En este sistema existen dos voltajes opuestos; una tensin 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 tensin, de modo que una sucesin de ceros produce sucesivos cambios de tensin entre los conductores de seal. De este modo para transmitir se activa una fuente de corriente derivada a partir de su fuente de alimentacin positiva y dirige dicha corriente hacia una de las dos
12

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

lneas de datos, por medio de un conmutador de corriente de alta velocidad esta conmutacin sigue la operativa del NRZI, de modo que se generan dos estado uno de ellos dirigiendo la corriente sobre la lnea D+ y el otro sobre la lnea D-. Estos estado se denominados J y K En el modo de alta velocidad, tanto el transmisor como el receptor activan sus resistencias de terminacin, de forma que el valor nominal de la corriente produce un voltaje nominal en lnea de 400mv. El voltaje diferencial (D+ D-) es por lo tanto +400mv para un estado y -400mv para el otro. Para identificar la velocidad los dispositivos de baja velocidad lo realizan elctricamente, mientras que los de alta velocidad implementan protocolo de bajo nivel basado en seales elctricas para identificarlas.

CLASES DE DISPOSITIVOS.
A aquellos grupos de dispositivos que tienen similares caractersticas tales como formatos de datos similares, la misma forma de comunicarse, etc se le denomina Clase USB. Las distintas Especificaciones de Clase USB permite que los fabricantes desarrollen dispositivos que puedan trabajar con drivers que controlan a los dispositivos en base a la informacin descriptiva dada por el propio dispositivo, estos son los Drivers de Clase. Una Clase se utiliza para describir la forma en que un interfaz se comunica con el sistema, tanto a nivel de datos como a nivel de control, proporcionando informacin sobre la funcionalidad del interfaz. Esto hace que dicha informacin pueda utilizarse para que el sistema localice un driver que pueda controlar tanto la conectividad entre el interfaz y el sistema, como la funcionalidad del dispositivo. Existe una relacin entre driver y dispositivo que opera del siguiente modo: En USB solo se permite que la comunicacin entre el driver y el hardware del dispositivo sea a travs de una va de comunicacin, denominada pipe, para el intercambio entre aplicaciones que se ejecutan en el host (cliente) y los distintos puntos finales( endpoint) de los dispositivos USB (servidores). Cuando un dispositivo USB se conecta a un sistema y este lo reconoce y lo configura, el dispositivo queda organizado como un conjunto de interfaces donde cada interfaz especifica que partes del hardware del dispositivo interacta con el sistema USB (se denominan endpoint) y el sistema establece todas las vas de comunicacin (pipes) necesarias entre el sistema y cada uno de los endpoint disponibles en esa configuracin del dispositivo. Es importante resaltar que el dispositivo puede contemplar varias configuraciones con distintos conjuntos de endpoint. El sistema elige una configuracin en base a la funcionalidad especifica que se
13

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

precise del dispositivo. En la figura se representa las pipes para cuatro endpoint de una configuracin concreta.
CONJUNTO DE ENDPOINT PARA UNA CONFIGURACION CONCRETA DEL HARDWARE DEL DISPOSITIVO

PIPE

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

SISTEMA

PIPE

DRIVER

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

PIPE

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

PIPE

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

Una vez establecidas las pipes, el sistema operativo las pone a disposicin del driver en forma de interfaces software.
TRANSACCIONES
BULK, CONTROL BULK, CONTROL INTERRUPCION INTERRUPCION E ISOCRONA E ISOCRONA

SISTEMA

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA


PIPES

ENDPOINT

SISTEMA OPERATIVO

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

Sobre estas pipes pueden llevarse a cabo diferentes tipos de transacciones. que veremos mas adelante (Bulk, Control, Interrupcin e Isocrono) y existen dos tipos de pipes : Control o Mensaje y Stream:

CONJUNTO DE ENDPOINT PARA UNA CONFIGURACION CONCRETA DEL HARDWARE DEL DISPOSITIVO

INTERFACES SOFTWARE

14

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

Pipe de Control o Mensaje: Es una va de comunicacin bidireccional entre el host y dos endpoint de control en un dispositivo USB, siendo uno de Salida y otro de Entrada y todos los dispositivos disponen de estos endpoint en al direccin 0 para que siempre el sistema pueda establecer una pipe de control incluso antes de la configuracin pudiendo a travs de ella leer toda la informacin descriptiva del dispositivo para tomar nota de: el tipo de dispositivo, posibles configuraciones, protocolo que soporta, numero y tipo de endpoint que tiene en cada configuracin, etc. En resumen lo denominado como Descriptores, que veremos mas adelante. Los datos que se mueven a travs de este pipe tienen una estructura caracterizada por las especificaciones del Bus USB

ENTRADA DESCRIPTOR DIRECCION 0

SISTEMA

INFORMACION DEL DRIVER, PROTOCOLO, NUM Y TIPO DE ENDPOINT, ETC

ENDPOINT
SALIDA DIRECCION 0
PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

DRIVER
ENDPOINT
PIPE

PIPE

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

PIPE

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

Pipe de Stream: Va de comunicacin unidireccional, entre el host y un endpoint con transferencias tipo Bulk, Interrupcin o Isocrono es decir los datos no estn estructurados como indica USB

HOST
PIPE DE STREAM
ENDPOINT
PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

SISTEMA

TRANSFERENCIAS TIPO
BULK INTERRUPCION ISOCRONO

DRIVER
PIPE

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

PIPE

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

PIPE

PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA

ENDPOINT

CONJUNTO DE ENDPOINT PARA UNA CONFIGURACION CONCRETA DEL HARDWARE DEL DISPOSITIVO

CONJUNTO DE ENDPOINT PARA UNA CONFIGURACION CONCRETA DEL HARDWARE DEL DISPOSITIVO

HOST

PIPE DE CONTROL ENDPOINT

15

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

Volviendo al intercambio, en base a la clase, este comunica no solo el tipo de servicio proporcionado por el dispositivo, si no adems si se envan los datos a travs de un tipo concreto de pipe y si se dispone de una pipe para proporcionar informacin de estado o de informacin acerca de si las lecturas o escrituras se van a realizar a travs de pipes especificas. Tambin pueden definirse los formatos de datos que se transmiten. Es importante definir el dispositivo USB en base a las clase, configuraciones, interfaces y endpoint, de tal manera que : Un Dispositivo de USB es una coleccin de posibles Configuraciones, cada Configuracin es una coleccin de Interfaces y cada interfaz es una coleccin de Endpoint.

DISPOSITIVO USB
CONFIGURACION
ENDPOINT INTERFAZ CONFIGURACION ENDPOINT PARTE DEL
PARTE DEL HARDWARE ENDPOINT QUE INTERACTUA INTERFAZ PARTE DEL INTERFAZ HARDWARE QUE ENDPOINT CON EL INTERACTUA SISTEMA PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA ENDPOINT PARTE DEL HARDWARE QUE INTERACTUA ENDPOINT ENDPOINT CONFIGURACION CON EL SISTEMA INTERFAZ PARTE DEL HARDWARE QUE ENDPOINT CON EL INTERACTUA SISTEMA PARTE DEL ENDPOINT PARTE DEL HARDWARE QUE INTERACTUA ENDPOINT CON EL SISTEMA PARTE DEL HARDWARE ENDPOINT PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA PARTE DEL HARDWARE ENDPOINT QUE INTERACTUA INTERFAZ INTERFAZ HARDWARE PARTE DEL QUE INTERACTUA CON EL SISTEMA HARDWARE QUE ENDPOINT CON EL INTERACTUA SISTEMA PARTE DEL QUE INTERACTUA HARDWARE CON EL SISTEMA QUE INTERACTUA CON EL SISTEMA ENDPOINT PARTE DEL HARDWARE ENDPOINT CON EL SISTEMA QUE INTERACTUA INTERFAZ ENDPOINT CON EL SISTEMA ENDPOINT PARTE DEL HARDWARE QUE PARTE DEL CON EL INTERACTUA SISTEMA ENDPOINT PARTE DEL ENDPOINT PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA HARDWARE ENDPOINT PARTE DEL HARDWARE PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA ENDPOINT QUE INTERACTUA INTERFAZ PARTE DEL HARDWARE QUE HARDWARE QUE INTERACTUA CON EL INTERACTUA SISTEMA

INTERFAZ

ENDPOINT PARTE DEL HARDWARE ENDPOINT

ENDPOINT CON EL SISTEMA PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA QUE INTERACTUA CON EL SISTEMA ENDPOINT PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA ENDPOINT CON EL SISTEMA PARTE DEL HARDWARE QUE CON EL INTERACTUA SISTEMA ENDPOINT PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA PARTE DEL HARDWARE QUE INTERACTUA CON EL SISTEMA HARDWARE QUE CON EL INTERACTUA SISTEMA QUE INTERACTUA CON EL SISTEMA CON EL SISTEMA

Existen varias clases de dispositivos: Clase de Dispositivos de Almacenamiento Masivo Clase de Dispositivos de Impresin Clase de Dispositivos de Comunicaciones Clase de Dispositivos de Interconexin Clase de Dispositivos de Interfaz Humano Clase de Dispositivos de Tratamiento de Audio y video

PERIFRICO DE CLASE DE ALMACENAMIENTO MASIVO.


Como ejemplo podemos describir las memorias evolucionadas de las EEPROM en las que se accede a la informacin por bloques siendo necesario borrar completamente el bloque para luego escribir los unos donde los haya. Estos bloques pueden ser de 512 bytes a 56 Kbytes.
16

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

En esencia estas memorias son similares a las RAM si bien se diferencian en que en cada celda contiene una capa de material conductor rodeada de material aislante ( puerta flotante) en la que con una alta tensin ( dentro de los mrgenes de voltaje de los integrados) se pueden inyectar electrones que quedan all indefinidamente atrapados, manteniendo la informacin de la celda, a pesar de que se desconecte la alimentacin del circuito. Durante la grabacin se cargan o descargan de electrones las puertas flotantes de cada celda, dependiendo de lo que se escribe 0 o un 1, la operacin de lectura es ms sencilla y rpida, necesitndose menos tensin.

Las memorias flash USB contienen varios chip de memoria flash, un controlador y el interfaz de USB. Emulan el comportamiento de un disco magntico y para ello los bloques de memoria se asocian a sectores de disco de 512 bytes, leyndose y escribiendo por bloques. El procesador central carga en los puertos del controlador la ubicacin del fichero que se desea leer as como su tamao. El controlador se encarga de ir leyendo secuencialmente el fichero e ir transfiriendo los datos a la interfaz USB. En la memoria flash se almacena un archivo que indica el contenido de la memoria en cuanto a la organizacin de directorios y archivos que tiene almacenado, as como la ubicacin de los distintos archivos dentro de la memoria.
ALIMENTACION

CHIP DE MEMORIA FLASH

CONTROLADOR DE MEMORIA

INTERFAZ USB

TIERRA COMUN

Estas memorias no llegando a pesar 30 gramos y alcanzan una capacidad de almacenamiento de hasta 2 Gbytes alcanzando una velocidad de escritura de 8 Mbps y de lectura de 9 Mbps.
17

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

Otros de menor capacidad pero de una operatividad indiscutible son los relojes que llevan incorporado un disco duro de este tipo y que ya estn disponibles con 128 MB En la figura se detalla este perifrico.

CONECTOR USB A PC PORTATIL

Otra perspectiva son los dispositivos regrabadoras externas con conexin USB. Son dispositivos rpidos y de fcil instalacin y manejo, y se puede compartir con varios equipos y sistemas operativos. Incluyen todo el hardware y el software ms avanzados que necesitan para capturar y compartir msica, fotos, presentaciones, etc.

PERIFRICOS DE IMPRESIN.
Las impresoras hasta hace algn tiempo presentaban interfaces de conexin tales como conector Centronic, puerto serie y algunos otros de utilizacin hoy en dia obsoleta. Actualmente presentan conexin USB dada la velocidad de transferencia que ello comporta y esto lo realizan complementando el acceso USB con la tecnologa Bluetooh como va de comunicaciones, si bien el conector fsico usual es el USB y a travs de l la conexin a Bluetooh esto implica que el PC en el que se encuentra el host del bus USB habr de tener tecnologa de Bluetooh tambin. Una imagen concreta de estas posibles conexiones es la de la figura en la que se detalla un cable de conversin Serie a USB, una conexin directa por USB, conector Serie A para el PC y serie B para al impresora y conexin via Bluetooh en la impresora y dispositivo en el host PC.
18

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

IMPRESORA USB / HOST

SERIE

USB / HOST

CONEXION USB COMPLETA

CONVERSOR SERIE / USB

COMUNICACION BLUETOOH

USB SERIE B IMPRESORA

PERIFRICOS DE COMUNICACIONES E INTERCONEXION.


Un ejemplo muy actual podra ser un acceso de banda ancha a Internet que permitiera conectar en red a varios usuarios de cualquier oficina. Este seria un router que cuente con puertos mltiples activos, por ejemplo tres puertos dos de ellos Ethernet y uno USB. As mismo ofrece funciones de seguridad y control proporcionando un cortafuegos. Un ejemplo visual del mismo serie el de la casa Robotic.
PUERTO USB

PUERTOS ETHERNET

Otro posible dispositivo seria el dispositivo que permite la transferencia instantnea de ficheros a alta velocidad (8 Mbps) entre dos ordenadores PC. Su conexin USB evita la necesidad de instalar tarjetas de red.

19

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

Otra posibilidad es conexin a red Ethernet va un acceso USB.


CONEXION RJ 45

CONEXION USB SERIE A

En la dinmica de crear la interconexin, siempre con estructura de estrella, estn equipos de diversos interfaces incluidos los USB, en la figura se presenta un equipo con diversos conectores que implementa la interconexin verstil adaptando estndares y cumpliendo las funcionalidades para los mismos.

PUERTOS USB PUERTOS SERIE Db9

Otro perifrico de gran utilizad seria no ya un dispositivo activo si no mas bien una adaptacin de cableado que se materializa en conversores tales como el conversor de comunicaciones serie a USB permitiendo conectar dispositivos serie en ordenadores que no tienen puerto serie o lo tienen ocupado y a travs del USB se abren mas posibilidades. Estos conversores estn disponibles para velocidad del puerto: de 1200 a 115200 bps. Tambin estara dentro de estos conversores el de USB a puerto paralelo, que permite conectar una impresora con conexin Centronics a un ordenador que disponga de conexin USB. Se alimenta directamente desde el propio BUS USB.

20

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES


PUERTO SERIE PUERTO CENTRONIC

PUERTOS USB

PERIFRICO DE INTERFAZ HUMANO


Estos perifricos tambin conocidos como HID (Human Interface Device) aportan funcionalidades directas al usuario y se materializan en dispositivos tales como: Teclados y dispositivos semejantes al ratn, tales como los ratones estndar, los de bola y los joystick. Paneles de control que incluyen conmutadores, llaves y pulsadores. Controles que se ubican en dispositivos tales como telfonos, controles de VCR remotos, juegos y dispositivos de simulacin Dispositivos que pueden no precisar interaccin humana pero que proporcionan datos en formato similar a los de la clase de esta clase tales como termmetros, lectores de tarjetas, voltmetros.

En estos dispositivos es importante resaltar que dada su versatilidad un dispositivos de otra clase puede llevar incluido en su composicin fsica un dispositivo HID, tal es el caso de un telfono que perteneciendo a la Clase de Audio tiene en si mismo parte de interfaz humano en la operativa de los comuntadores o funcionalidades aadidas al telfono en si El descriptor de esta clase HID identifica que otros descriptores estn activados para indicar su tamao aportando datos descriptivos de la estructura de datos que el dispositivo genera y los datos que en ese momento esta aportando o extrayendo. Por ejemplo describe en que posicin o estado se encuentra un determinado conmutador e identifica para que esta siendo utilizada esta posicin con el fin de coordinar su accin desde el dispositivo sobre el sistema y conocer a que entrada atender de las posibles activas en ese momento, dado que pudieran estar varios dispositivos o que un dispositivo complejo debe ser atendido en cada uno de sus endpoint que por otro lado pueden ser de diferente clase. tal como se menciona en el prrafo anterior con el telfono y los conmutadores a el aadidos. As mismo, controla el software que rige la funcionalidad para esa entrada Esta informacin se denomina Report Descriptor Por otro lado el descriptor informa a cerca de la parte o partes del cuerpo humano que esta activando los controles del dispositivo. As describe tres campos: Designator: identifica que parte efecta la accin: una mano Qualifier: identifica cual de las dos manos: derecha o izquierda Effort: identifica el esfuerzo que debe efectuarse para aportar este dato.
21

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

A esta informacin se le denomina Physical Descriptor. PIPES DE LOS HID. Esta clase puede operar con dos pipes, una por defecto que es la de Control y que se utiliza para recibir y responder las peticiones de control del USB y para los datos que se intercambian en la operativa de esta clase HID. As pues, transmite datos hacia el host desde el driver del HID y recibe datos desde el host.. La otra pipe es la de Interrupcin que atiende a la recepcin asncrona de datos desde el dispositivo y transmite datos de baja latencia hacia el dispositivo Observacin: Es importante resaltar que en algunos de estos interfaces no toda la operatividad del bus es aprovechada tal es el caso del ratn con conversor que si bien aporta un acceso de cableado simplificando el interfaz solo es operativo en un sentido, en especial el ascendente (del ratn hacia el PC) y es muy usual el conector conversor de USB a conector de ratn PS. El ratn podra proporcionar la funcionalidad total , en cambio el interconector solo da la facilidad mnima de sentido ascendente. Ejemplo de un HID de Joystick Los desarrolladores de productos para juegos aprovechan las facilidades de este BUS y complementan la capacidad y flexibilidad del sistema y la calidad de los juegos mediante el mismo. Un ejemplo de ello es el casco telefnico USB Logitech, diseado para el reconocimiento de voz, voz a travs de IP y grabacin de voz, representa una nueva dimensin de interaccin de juego y por tanto de interfaz humano con la tecnologa, en este caso ldica. El casco telefnico Logitech adems de las funcionalidades ldicas que aporta aprovecha la interfaz de programacin que simplifica la complejidad de enumeracin de dispositivos USB, anlisis de descriptores y envo de audio USB por secuencias. Este dispositivo tendr incorporado el descriptor de Report antes mencionado, as como el descriptor Physical y su estructura ser como la que se representa en la figura, en la que se aporta todo el Report y posteriormente una posibilidad del descriptor Physical.

22

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

El Physical estara condicionado al modo en que trabaja dicho joystick y si consideramos que este joystick tiene dos botones en el lado izquierdo de la base y un disparador en el frontal asociado a uno de los botones. La base de este mando, donde estn los botones antes mencionados, requerir mas atencin de la mano izquierda durante la actuacin, mientras que el disparador ser atendido por la derecha conjugado con el segundo botn. Esto se identifica en el descriptor tratando el primer botn asociado al disparador como: Index Finger, Right, Effort 0 Mientras que el segundo botn seria Thumb, Left, Effort 0

23

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

PERIFRICO DE AUDIO.
Estos dispositivos permiten almacenar cualquier tipo de datos. Utiliza 64MB de memoria interna para poder guardar audio MP3, o hasta 64MB de datos o ficheros por conexin USB.

PROTOCOLO DE COMUNICACIN.
El protocolo de comunicacin utilizado es de paso de testigo, que guarda cierta similitud con el sistema Token-Ring de IBM. Puesto que todos los perifricos comparten el bus y pueden funcionar de forma simultanea, la informacin es enviada en paquetes; cada paquete contiene una cabecera que indica el perifrico al que va dirigido. Existen cuatro tipos de paquetes distintos: Token; Datos; Handshake, y Especial; el mximo de datos por paquete es de 8; 16; 32 y 64 Bytes. Se utiliza un sistema de deteccin y correccin de errores bastante robusto tipo CRC ("Cyclical Redundancy Check").
TRANSACCION
TRANSACCION CABECERA
PERIFERICO AL QUE SE DIRIGE PAQUETE TOKEN

P AQUETE

PERIFERICO AL QUE SE DIRIGE

PAQUETE DATOS

P AQUETE

PERIFERICO AL QUE SE DIRIGE

PAQUETE HANDSHAKE

P AQUETE

PERIFERICO AL QUE SE DIRIGE

PAQUETE ESPECIAL

P AQUETE

El funcionamiento est centrado en el host, todas las transacciones se originan en l; es el host controlador el que decide todas las acciones, incluyendo el nmero
24

FASE VALIDACION

FASE TOKEN

FASE DATO

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

asignado a cada dispositivo (esta asignacin es realizada automticamente por el controlador "host" cada vez que se inicia el sistema o se aade, 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 intervencin por el usuario. USB divide el tiempo en espacios de 1 mseg denominados tramas durante las cuales se lleva a cabo las comunicaciones a travs de Transacciones, compuestas de paquetes. USB2.0 define adems un tiempo de microtrama de 125 microsegundos Las transacciones se componen de tres fases: Token Dato Validacin. La Fase de Token se compone de un paquete enviado por el Controlador de USB y siempre esta presente en toda transaccin. En este paquete se enva el identificativo del tipo de paquete, la direccin del elemento destino compuesta de 11 bits de los que siete identifican al dispositivo y los cuatro restantes al elemento interno del dispositivo y por ultimo se enva un control de error CRC5. La Fase de Datos se compone de los paquetes de datos que llevan el identificativo de paquete, los datos y un CRC16. La Fase de Validacin se utiliza para indicar el resultado de la transaccin y solo se compone de un campo de identificacin de paquete.
TRANSACCION

FASE TOKEN Paquete con Identificador tipo de paquete Direccion destino identificando dispositivo CRC 5

El sistema utiliza cuatro tipo de transferencias, formadas por transacciones, que resuelven todas las posibles situaciones de comunicacin
25

FASE VALIDACION Paquete con identificacion del paquete

FASE DATOS Paquete con datos identificando el paquete DATOS CRC 16

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

Transferencia de control ("Control transfer"): Proporcionan control de flujo y una entrega de datos garantizada libre de errores, siendo el tamao mximo del paquete de datos segn las velocidades. Full-speed: 8, 16, 32 y 64 bytes High-speed: 64 bytes Low-speed: 8 bytes Esta transferencia ocurre cuando un dispositivo se conecta por primera vez; en ese momento el controlador de host enva un paquete "Token" al perifrico notificndole el nmero que le ha asignado. Con ello se realiza la configuracin y control del dispositivo. Estas transferencias se realizan en 3 transacciones Transaccin de Configuracin (Setup), con la que se enva un paquete al dispositivo para especificar la operacin a ejecutar. Transaccin de Datos en la que se transfieren datos en el sentido que se haya especificado por la de configuracin. La informacin til por paquete puede llegar a ser desde 8 a 64 bytes para los puntos de full-speed y solo 8 bytes para los puntos de low speed Transaccin de Estado en la que se enva informacin sobre el estado final de la operacin.

TRANSFERENCIA
TRANSACCION DE CONFIGURACION FASE TOKEN TRANSACCION DE DATOS FASE DATO FASE FASEVALIDACION TOKEN TRANSACCION DE ESTADO FASE DATO FASE VALIDACION FASE TOKEN FASE DATO FASE VALIDACION

Se procesan por medio de un mecanismo de best effort segn el cual el controlador USB las va procesando en funcin del tiempo disponible en cada trama. Transferencia de pila de datos ("Bulk data transfer"): Este proceso se utiliza para enviar gran cantidad de datos de una sola vez. Es til para dispositivos que tienen que enviar gran cantidad de datos cada vez, como escneres o mquinas de fotografa digital. Se procesan por medio del mecanismo de good effort, en el que el sistema aprovecha cualquier ancho de banda disponible y en el momento en que este disponible.

26

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

Transferencia por interrupcin ("Interrupt data transfer") Este proceso se utiliza cuando se solicita enviar informacin por el bus en una sola direccin (de la funcin al host) y asegura una transaccin dentro de un periodo mximo. Este periodo depende del tipo de dispositivo, si es velocidad full speed el periodo es de 1 a 255 mseg y si es de baja velocidad el periodo es de 10 a 255 mseg. De igual modo en los primeros dispositivos el paquete puede oscilar entre 1 y 64 bytes y en los segundos de 1 a 8 bytes. Transferencia de datos iscrona ("Isochronous data transfer"): Este proceso se utiliza cuando es necesario enviar datos en tiempo real. Los datos son enviados con una cadencia exacta ajustada a un reloj, de modo que la transmisin es a velocidad constante. Es utilizada por dispositivos de full speed y la informacin til por paquete es de 1 a 1023 bytes. Los errores no se recuperan de tal modo que cuando la informacin no llega a su tiempo se descarta. Un resumen muy til para identificar Pipes, Transferencias, entrega, dispositivos, carga de bytes y caractersticas es el presentado en el siguiente cuadro.
TRANSFE RENCIA
Control

PIPE
CONTROL (MENSAJE)

ENTREGA
Best Effort

DISPOSITIVO
High Speed Full Speed Low Speed High Speed Full Speed High Speed Full Speed Low Speed High Speed Full Speed

PAYLOAD (bytes)
64 8/16/32/64 8 512 8/16/32/64 <1.024(125us 4s) <64(1 255 ms) <8 (10 255ms) <1.024 <1.023

CARACTERISTICAS

Bulk Interrupcion STREAM

Goot Effort Periodo Garantizado 1, 2 o 3 paquete/microtrama

Libre de errores Entrega Garantizada Control de flujo

Isocrona 1 paquete/ trama

Ancho de Banda Garantizado Latencia limitada Velocidad Constante Datos Sin Retransmisiones

ENUMERACIN Y DESCRIPTORES DE DISPOSITIVOS


Tal como se describi en la transferencia de control, cuando un dispositivo se conecta por primera vez el controlador de host enva un paquete notificndole el nmero que le ha asignado, esta es la enumeracin que va desde 1 a 127 y en base a esto (el numero asignado) se puede leer el descriptor de fichero, que contiene la estructura de datos sobre el dispositivo y sus propiedades. Un Descriptor es una estructura de datos que identifica toda la informacin descriptiva del dispositivo al sistema Existen cinco descriptores estndar:
27

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

Descriptor de dispositivo Descriptor de configuracin Descriptor de interfaz Descriptor de endpoint Descriptor de cadenas. Descriptor de Dispositivo. Describe informacin de carcter general sobre el dispositivo USB y es nico por dispositivo. Tiene la informacin que se aplica al dispositivo y a todas sus posibles configuraciones. Descriptor de Configuracin. Describe informacin sobre una configuracin especifica ya que un dispositivo puede tener varios descriptores. Cada configuracin tiene una o mas interfaces y cada interfaz puede tener 0 o mas puntos finales denominados endpoints (un endpoint es la representacin lgica de una parte de hardware del dispositivo que interacta con el sistema USB ). Estos no son compartidos entre interfaces dentro de una misma configuracin a menos que el endpoint se utilice con configuraciones alternativas de la misma interfaz. Las configuraciones pueden ser activadas usando una transferencia de control estndar SET_CONFIGURATION. Descriptor de Interfaz Describe un interfaz especifico dentro de una configuracin Un interfaz puede incluir configuraciones alternativas que permiten a, los endpoint variar despus de que el dispositivo haya sido configurado. La configuracin por defecto es la cero. Para seleccionar las configuraciones alternativas puede hacerse uso de la transferencia estndar SET_INTERFACE. Por ejemplo sobre un dispositivo multifuncin tal como una videocmara puede tener tres configuraciones alternativas, segn se activen, la cmara solo, el micrfono solo o ambos a la vez. Descriptor de endpoint. Definen los requisitos de transmisin de cada dispositivo. El endpoint cero se usa parta las transferencias de control y no hay descriptor para este. Descriptores de cadenas. Son opcionales y proporcionan informacin adicional tal como el nombre acerca del fabricante, del dispositivo o el numero de serie. Estos descriptores son legible por las personas en formato Unicode.

28

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

DRIVER
Como ya se comento el driver es el conjunto de instrucciones con las que se controla el dispositivo y dado que un dispositivo puede estar formado por distintas interfaces, puede ser necesario que un dispositivo precise varios drivers para controlarlos, luego es lgico que exista un forma de localizar y asociar drivers a dispositivos e interfaces, de modo que se simplifique el modelo comn para los Sistemas Operativos y para los fabricantes de dichos drivers. Dado que los descriptores disponen de toda al informacin es a ellos a los que hay que acudir y la informacin a que se recurre dentro de la proporcionada por el driver es : Fabricante&Producto&Versin del producto Fabricante&Producto. Continuando por : Clase&Subclase&Protocolo Clase&Subclase Si no es localizado y el campo de Clase indica que pertenece a una Clase Especifica del Fabricante, es decir no es estandar USB. hay que navegar por datos de: Fabricante&Subclase&Producto Fabricante&Subclase. En caso de no localizar ningn driver, el Sistema Operativo seleccionara una configuracin para el dispositivo y seguir buscando un driver para cada interfaz que haya en dicha configuracin.

PROVEEDOR DE PERIFRICOS.
Entre las compaas que anuncian nuevos perifricos USB en la Macworld Expo se incluyen las siguientes: Animax (ratn), Ariston (cmara, productos adaptadores USB-SCSI y de E/S vdeo), Artec/Ultima (escner), AVerMedia Technologies (cmara de vdeo digital), Avid (producto de edicin de vdeo y publicacin para iMac), Best Data (mdem), Brother (impresoras lser), Calcomp (tableta grfica), Castlewood (Orb Drive), Compucable (iDock, ratn y convertidor USB-paralelo), Datazone (disco duro), Epson (escner), Hewlett Packard (dos impresoras) Fujifilm (cmara), iDrive (unidad de disquete), Kensington (ratn y trackball), Logitech (ratones de tres y de cuatro botones), Mace Group (joystick y ratn de dos botones programable Mac Ally), MIDIMan (adaptador MIDI para USB), Newer Technologies (compact flash card, smart media, adaptador USB-SCSI, adaptadores E/S vdeo I/O y TV, hubs de 4 y de 7 puertos, y unidad de disquete, Opcode (adaptador MIDI para USB), QPS (CD RW), Reudo (conector IrDA), Sophisticated Circuits (USB Rebound/dispositivo para recuperacin fallos), Wacom (tableta grfica), Winstation/Mitsubishi (grabador de CD y SuperDisk), X-Rite (colormetro) y YE Data (unidad de disquete).
29

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

HERRAMIENTAS DE ANLISIS DEL BUS USB


Para el anlisis de la informacin y operativa del BUS USB existe una diversidad de herramientas que podemos agrupar en las que se basan en anlisis de trafico mediante un software y las que se basan en un equipamiento aadido al escenario objeto de anlisis y con un software que corriendo en dicho equipo pueden controlar en intercambio y forzar situaciones de prueba y trafico.

DISPOSITIVO DE PRUEBAS DEL BUS USB. (USB VIEWER). HARDWARE + SOFTWARE


Este equipo intercalado en la conexiona de un dispositivo USB a un host, puede capturar la informacin que se transfiere y mediante un software aadido mostrar los diferentes paquetes identificados con su PID (identificador de paquete segn la especificacin USB). A continuacin se detalla el equipamiento y el software que se debe implementar y se analizan unas capturas para aprovechar estas y estudiar los tipos de paquetes ques e manejan. EQUIPAMIENTO Y ESCENARIO DE PRUEBAS.. Este escenario de pruebas esta formado, como ya se ha comentado por un equipo concreto tal como se detalla en la figura y un software de captura y anlisis.
VISTA POSTERIOR

ALTA VELOCIDAD

TRIGGER

CONECTOR SERIE A

CONECTOR SERIE B

VISTA ANTERIOR

El escenario de pruebas seria como el de la figura en el que se analizan el trafico de una conexin de un ratn o el de un intercambio de un dispositivo de almacenamiento masivo. De ambos veremos su trafico y por tanto los paquetes que se intercambian.

30

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES


CONEXION USB SERIE B CONEXION USB SERIE A

EQUIPO DE CAPTURA

CONEXION USB SERIE A

Volviendo al equipo las caractersticas mas notables son: Es un equipo que no precisa alimentacin externa para ser utilizado, se alimenta de la tensin que suministra el bus USB del puerto del PC. Es de dimensiones reducidas lo que le hace muy operativo en cualquier entorno de trabajo. Esta diseado para trabajar con USB 1.1 y USB 2.0 capturando trafico de velocidad baja y completa (full), efectundose la captura bajo control de disparo manual o automatizado . Sobre la captura puede efectuar bsquedas de paquetes concretos. Es compatible con W98/W2K/WXP

Una vez capturado el trafico la presentacin es detallando cada paquete en cuanto a la informacin mas resolutiva para un analista, lo que significa que se habr traducido el valor de los datos en el tipo de paquete con arreglo a lo normalizado en especificacin USB ( OUT, DATA1, ACK, SOF, SETUP,..ETC) Una captura es como la de la siguiente figura.
TIPO DE PAQUETE CONTENIDO DEL PAQUETE

31

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

OPERATIVA DE TRABAJO. Una vez realizada la interconexin antes detallada en la figura, se debera cargar la aplicacin del equipo en el Hosts PC ( esta aplicacin es USBSiew.exe en este caso se ha utilizado la demo USBViewDemo.exe.) Dejando actuar al sistema nos presentara la pantalla de trabajo del software cargado y sobre ella podremos realizar actuaciones de forzar captura.
FUNCIONALIDAD SOBRE LA CAPTURA

BUSQUEDAS SOBRE EL TRAFICO CAPTURADO

ESPACIO PARA DETALLAR LOS PAQUETES Y SU CONTENIDO

Otra posibilidad presente en todos los analizadores es la de producir un disparo de la captura en base a una condicin marcada en la configuracin del analizador. Esta posibilidad tambin se contempla en este caso y la pantalla a travs de la cual se realiza esta operativa es la de la figura.

TIPO DE PAQUETE QUE DESENCADENA LA CAPTURA

32

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

ANLISIS DE TRAFICO. Si hubiramos capturado el trafico del ratn la pantalla de contenido de lo capturado seria como la de la siguiente figura.
REFERENCIA A LA DIRECCION

DATOS

REFERENCIA AL ENDPOINT

Para llegar a esta situacin, hemos actuado sobre la funcionalidad de File y all hemos cargado la captura Mouse Trace.dat que habramos realizado con anterioridad. En este trafico se puede ver que hay paquetes de mltiples tipos tales como los que se detallan a continuacin. No obstante es adecuado en este punto detallar algunos conceptos para concretar estos paquetes. As es el caso de los campos de direccin, sobre los que cabe resaltar que las funciones y endpoint estn diseccionadas con dos campos uno direcciona la funcin y otro el endpoint El campo Address, formado por 7 bits, especifica la funcin, que es tanto la fuente como el destino de los paquetes de datos dependiendo del PID (Identificador de Paquete de datos) del testigo. Este valor se da en los paquetes IN, SETUP y OUT. El campo de Endpoint formado por 4 bits especifica dentro de la funcin el endpoint implicado dado que una funcin puede tener configuracin de varios endpoint. Este valor se da en los paquetes IN, SETUP y OUT. Una visin del trafico se representa en la figura.

33

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

Paquetes capturados: SETUP que pertenece a un tipo Token y que aporta informacin sobre la apertura de una pipe de control para una transaccin host a funcion o dispositivo y en el se aporta la direccin y el endpoint correspondiente como vemos, es la direccin 0 que tal como se explico corresponde a la de control para leer toda la informacin descriptiva del dispositivo para tomar nota de: el tipo de dispositivo, posibles configuraciones, protocolo que soporta, numero y tipo de endpoint que tiene en cada configuracin, etc. DATA0 paquete de Datos con informacin y que esta secuenciado como par para secuenciarlo con los impares. Este puede alcanzar una dimensin de 1024 bytes en este caso no es as, es un paquete corto, pensemos que estamos con un dispositivo que tiene que intercambiar poca informacin dado que s un ratn y solo seria posicin y actuacin.

34

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

ACK paquete de Handshake enviado como aceptacin de un paquete sin errores. IN paquete de Token con transaccin de funcin o dispositivo a host y que aporta direccin y endpoint que lo genera OUT paquete de tipo Token de host a funcin o dispositivo NAK paquete Handshake enviado como informacin de que el dispositivo no puede aceptar los datos o que no puede enviar datos. Si hubiramos deseado calificar la bsqueda, es decir, identificar dentro de la captura un paquete concreto habramos actuado sobre la funcionalidad de definir bsqueda, tal como se representa en la figura en la que se solicita identificar los paquetes NAK. La condicin podra haber sido mas sofisticada tal como se detalla en la figura.
BUSQUEDA FORZADA

En el caso de una captura de un dispositivo de almacenamiento masivo tipo memoria Flash la captura seria como la de la figura. En ella se aprecia que las transacciones ya son de mayor volumen de datos y se identifican las tramas. (SOF...)

35

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

TIPO DE PAQUETE

Si detallamos mas la captura podramos apreciar que aparecen bloques de datos con paquetes que antes no estaban tales como el paquete SOF que es un tipo Token y que indica la marca de comienzo de trama (Start-of-Frame) y el numero de trama. FRAME 27A a esta le acompaa un CRC para seguridad y control de errores cclico. Es importante resaltar que los CRC de los paquetes de datos estan construidos con diferente polinomio generador que el CRDC de los paquetes de Token, en especial el de Token es un polinomio como: G(X)=X5+X2+1, mientras que el de datos es del tipo G(X)= X16+X15+X2+1.

36

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

Los Paquetes de Token que estn organizados del siguiente modo:

Formato Token PID 8bits ADDR 8bits ENDP CRC5


8bits

8bits

Los Paquetes de Datos que estn organizados del siguiente modo:


37

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES


Bit menos significativo Formato Datos PID 8bits DATOS 0 / 8192 CRC16 16bits Bit mas significativo

Con esta misma operativa podramos analizar trafico de cualquier otro dispositivo normalizado en las Clases de USB. Es de inters relevante el anlisis de trafico de algn dispositivo de interfaz humano dado que debe aquilatar al mximo todas las posibilidades y combinaciones. Cuanto mas sofisticado sea el dispositivo y mayor numero de configuraciones contemple mas interesante ser el anlisis de su trafico dada la variedad de paquetes que esto implica.

DISPOSITIVOS SOFTWARE

38

DEPARTAMENTO DE ELECTRNICA Y COMUNICACIONES ASIGNATURA: DISPOSITIVOS DE COMUNICACIONES

ANEXO
Otras herramientas estn disponibles para su descarga www.usb.org/developers/tools.html#usbhset algunas de ellas son: en

USBCV ("USB Command Verifier"). Es una herramienta de diagnstico y verificacin para comprobar que dispositivos USB de alta, y baja velocidad se ajustan a las normas. USB Check. Esta herramienta permite verificar dos enlaces; uno para comprobar dispositivos de alta velocidad funcionando a alta velocidad, y otro para comprobar dispositivos de velocidad completa y baja; tambin dispositivos de alta velocidad funcionando a velocidad completa. USBHTT ("USB2 Hub Transaction Translator Test Suite"). Es una herramienta de verificacin para concentradores USB 2.0. USBHSET ("USB High Speed Electrical Test Tool Kit"). Este sistema de prueba contiene software y procedimientos diseados para verificar diversos parmetros elctricos, incluyendo la calidad de seal en dispositivos USB de alta velocidad. Incluye tambin procedimientos detallados para comprobacin de controladores host, concentradores y funciones USB de alta velocidad. Este software tambin permite comprobar la calidad de seal en dispositivos de velocidad completa y baja, as como verificaciones de suministro energtico.

39

You might also like