La falta de flexibilidad en la reconfiguración de todo computador, ha sido
siempre el enemigo de todas las personas que sin conocer mucho de computación
y hardware, desearían mantener actualizado su Computador. Ciertamente se ha
tenido grandes progresos en este sentido, para esto, solo hay que nombrar adelantos
en cuanto a interfaces gráficas se refiere; sabiendo que con Windows 95 es mucho
mas sencillo configurar una computadora que con DOS, y que las arquitecturas
de BUS nueva como PCI, ISA P&P y PCMCIA se han constituido sujetos importante
en todo proceso de reconfiguración. Sin embargo, no todo es auto configurable,
basta mencionar ejemplos como, algunas tarjetas de video, tarjetas de red, y
tarjetas que son fabricadas bajo la arquitectura ISA, la cual al no demandar
altas velocidades de transferencia de datos sirve para abaratar costos.
Todo lo dicho anteriormente, nos sirve para empezar a comprender, que en estos
momentos existe una nueva tecnología para facilitar, por ejemplo la reconfiguración
de hardware, expansibilidad e interconexión del equipo con otros periféricos,
etc. Este es el BUS SERIAL UNIVERSAL (USB).
Definición del bus serie universal
El bus universal en serie, consiste en una norma para bus periférico, desarrollado
tanto por industrias de computación como de telecomunicaciones. USB permite
adjuntar dispositivos periféricos a la computadora rápidamente, sin necesidad
de reiniciar la computadora ni de volver a configurar el sistema. Los dispositivos
con USB se configuran automáticamente tan pronto como se han conectado físicamente.
En las computadoras que cuentan con esta tecnología se puede observar dos conectores
de este tipo. Además, se pueden unir dispositivos con USB en una cadena para
conectar más de dos dispositivos a la computadora mediante otros periféricos
USB que serán detallados mas adelante.
Descripción general de la tecnología USB
Las siglas USB corresponden a Universal Serial Bus, Bus Serie Universal, por
lo que como su nombre indica, se trata de un sistema de comunicación entre dispositivos
electrónicos-informáticos que sólo transmite una unidad de información a la
vez. El bus USB puede trabajar en dos modos, a baja velocidad (1,5 Mbps, para
dispositivos como teclados, ratones, que no barajan grandes cantidades de información)
y a alta velocidad (12 Mbps, para dispositivos como unidades de CDROM, altavoces,
módems RTC e ISDN, etctera). En cuanto a la comodidad, el bus USB se compacta
en un cable de cuatro hilos, dos para datos, dos para alimentación. Esto supone
un gran ahorro, tanto de espacio como de material. Deacuerdo a estos parámetros,
una de las principales ventajas que se obtiene de USB es precisamente su diseño.
El USB organiza el bus en una estructura de árbol descendente, con múltiples
dispositivos conectados a un mismo bus, en la que unos elementos especiales,
llamados hubs(periférico que será descrito específicamente mas adelante), enrutan
las señales en su camino desde un dispositivo al host o viceversa. Primero está
el controlador del bus, Este es el interfaz entre el bus USB y el bus del ordenador.
De él cuelgan los dispositivos USB. Los hubs, como son un dispositivo USB más,
también cuentan. A un hub se puede conectar uno o más dispositivos, que a su
vez pueden ser otros hubs, asi tenemos varios dispositivos conectados a un sólo
controlador; como máximo alrededor de 126.

Ahora, es conveniente resaltar que todos los dispositivos deben seguir reglas
de comportamiento básicas, estandarizadas. Por tanto, todos los dispositivos
se configuran de la misma forma, y es mucho más fácil gestionar los recursos
que proveen; sin embargo, esto no significa que todos los dispositivos son iguales,
sino, que todos tienen un sistema de configuración idéntico. Para proteger
sus identidades, existe una clasificación estandarizada,(gestionada por el controlador)
y en función de esa clasificación, los dispositivos se manejan de una forma
u otra, siempre cumpliendo los estándares, permitiéndo entre otras cosas, una
simplificación en la gestión de los dispositivos, ya que un mismo driver sirve
para varios dispositivos de diferentes tipos, aparte de poder tener un número
casi ilimitado de dispositivos idénticos en un mismo sistema (siempre se pueden
añadir nuevos controladores). Además, el hecho de que no tengamos que tocar
(inicialmente) nada en el hardware del dispositivo en sí y que todo sea configurable
por software nos lleva a la llamada tecnología Plug'n'Play (conectar y
listo).
Objetivos del bus serie universal
Los objetivos de ésta no muy nueva tecnología, apuntan claramente hacia la
vista del usuario, USB es una especificación que posibilita conectar dispositivos
a una computadora de forma encadenada, sin tener que abrir en absoluto la caja
de la computadora o tener que insertar tarjetas. Todo dispositivo USB tiene
la capacidad de ser conectado al computador en pleno funcionamiento, sin tener
que reiniciarlo, además la configuración del dispositivo nuevo es inmediata
y completamente transparente al usuario, tras lo cual el dispositivo está listo
para ser empleado sin tocar un tornillo, menos jumpers, canales, IRQ’s, etc.
El proceso de conexión USB es tan sencillo como se muestra en la siguiente Figura.

Además, y quizás uno de los objetivos fundamentales de la USB, es que ha sido
diseñada para que la PC y las comunicaciones remotas especialmente con MODEM,
sean una sola unidad. Y es que las tendencias de computación actuales, apuntan
a un mundo totalmente intercomunicado electrónicamente empleando uno de los
dispositivos mas conocidos como es el computador personal y el medio de comunicación
mas diseminado del mundo: el teléfono.
Puertos seriales, paralelos y su expansibilidad
Ha habido intentos de todos los tipos para ampliar las posibilidades de expansión
para las PC´s, desde aumentar el número de puertos serie y paralelo, hasta
"buses" específicos como SCSI. El bus SCSI parecía ser la solución
ideal, por velocidad y capacidad de transferencia y por el número de dispositivos
conectables a la controladora SCSI, hasta 7 dispositivos en cadena y hasta 15
con Ultra Wide SCSI-2, pero su alto costo, junto con sus problemas de configuración,
dieron lugar a la aparición del USB y el FIREWIRE (IEEE 1394).
Aunque en estos tiempos, la tecnología ha avanzado de forma estratosférica,
aun se observa la utilización de la transmisión serie en lugar de la paralela
masiva; dado que un bus serie es mucho más fácil de cablear, mantener y fabricar,
aunque este sea más lento (El puerto serie es capaz de transmitir hasta 112,5
KB/s y el puerto paralelo entre 600KB/s y 15MB/s). Esto de alguna manera implica
que actualmente la mayoría de las computadoras, tienen un limite claro de expansibilidad,
generalmente traen 4 ranuras PCI, 4 ISA, 2 puertos seriales y 1 paralelo. Un
problema frecuente es contar con dos o mas dispositivos que requieren del puerto
paralelo, por ejemplo: la impresora, un escáner, etc, mas aun, los puertos de
las computadoras seriales y paralelos y de juegos, no son tipo PnP, esto queda
demostrado por ejemplo: cuando un usuario va a una tienda y solicita un dispositivo,
el vendedor pregunta si desea el mismo interno o externo, para puerto serial
o paralelo, con tecnología ISA o PCI, y asi una serie de problemas. La tecnología
USB ataca este problema frontalmente, brindando la posibilidad de conectar a
una computadora, mas de un dispositivo, compatible y sencillamente. Sin embargo,
la introducción de este bus, no marca un final drástico para los usuarios que
poseen conectores serie RS-232 de 9 ó 25 pines, o bien centronic de 25 orificios;
aun cuando los PC’s que están disponibles en el mercado, siguen manteniendo
estos puertos con sus características habituales, aunque con los beneficios
que se pueden obtener de esta tecnología(USB), hace prever la desaparición absoluta
a través de los años; de todas formas ya existen en el mercado adaptadores de
serie y paralelo a USB, como se muestra en la siguiente figura:

En resumen, por ahora, las computadoras personales no han de sufrir ningún
cambio particular dentro de la forma tradicional a la que se esta acostumbrado.
La única diferencia notable se hallará en la parte posterior de las mismas,
donde podremos encontrar los dos conectores USB. Los mismos que provienen de
una ficha cuyo cable se inserta en una nueva ranura de la tarjeta madre. En
las siguientes figuras se pueden observar, la ficha de 2 conectores y la tarjeta
madre respectivamente.

Gama de dispositivos USB y su capacidad máxima de conectividad
Así como ha avanzado la tecnología en los distintos periféricos y elementos
electrónicos, mejorando ya sea su resolución, sonido, etc. También los dispositivos
de conexión han tenido que mejorar a la par de esto; es por eso que en sus primeras
instancias USB (versión 1.0), fue diseñado para conectar periféricos como: módems,
ratones, teclados, monitores, equipos estereofónicos, lectores de CD de baja
velocidad a 4x o 6x, unidades de disquete, digitalizadores de imagen de baja
resolución(scanner), teléfonos, conexiones ISDN, impresoras, unidades para almacenamiento
en cinta, etc. En resumen toda clase de dispositivos existentes y los que vayan
a crearse aprovechando las ventajas USB; la única condición, es que el dispositivo
no requiera de rangos de transmisión superiores a los 12 Mbps,( también con
la opción de transmisiones a 1,5 Mbps para dispositivos de baja velocidad, entre
ellos los mouse) esto significa que las tarjetas de video, tarjetas de red a
100 Mbps y controladoras de discos duros particularmente, seguirían siendo tarjetas
conectadas al interior de la PC. Dadas estas velocidades el Universal serial
bus, es capaz de soportar hasta 127 dispositivos conectados directamente a la
PC o Host USB, y el resto se Irán conectando entre si de forma encadenada o
bien empleando Hub USB.
Así como
se dijo anteriormente, la tecnología de conexión de los computadores a tenido
que modificar su características, para poder entregar mayor calidad y a la vez
poder subsistir en el mercado de la tecnología, frente a otros competidores,
los cuales se aferran fuertemente a la misma arquitectura de conexión (IEEE
1394 Firewire, la que será revisada mas adelante).Estas modificaciones, en el
caso de la USB se encuentran en la velocidad de transmisión, con la cual se
plantea que en estos momentos los 12 Mbps, serian revisados para dar paso a
una velocidad 20 y 30 veces mayor que esta, pudiendo así ofrecer compatibilidad
con las aplicaciones de usuario más exigentes sin incrementar el costo o la
complejidad con respecto al objetivo anterior.
A principio
de 1999, el Grupo Promotor de USB 2.0, compuesto por Compaq, HP, Intel, Lucent,
Microsoft, NEC y Philips, anunció un estimado de que la velocidad de USB 2.0
sería de 120 a 240 mega bits por segundo (Mbs), o 10 a 20 veces más rápida que
la de USB 1.1. Este incremento más reciente en el objetivo de velocidad eleva
la velocidad ahora a 360 a 480 Mbs, o 30 a 40 veces más rápida que la de USB
1.1. La velocidad objetivo revisada y significativamente más alta es el resultado
de análisis realizados por el Grupo Promotor de USB 2.0 que concluyen que la
velocidad se puede incrementar sin costo o complejidad adicionales con respecto
al estimado anterior.
"Este logro en USB 2.0 impulsará aún más el gran momento por el que pasa
USB en aplicaciones de usuario aún más exigentes, como la creación de imágenes
y los juegos interactivos, y ofrecerá una ruta de actualización efectiva para
los dispositivos periféricos USB de hoy", señaló Pat Gelsinger, vicepresidente
y gerente general del Grupo de Productos de Escritorio de Intel.
Evolución del USB
El incremento en el ancho de banda de USB 2.0 hará posibles dispositivos periféricos
para PC con mayor funcionalidad, incluidas conexiones de Internet de banda ancha
más rápidas, cámaras para videoconferencias de mayor resolución, impresoras
y escáneres de la siguiente generación y unidades de almacenamiento externo
de alta velocidad. Asimismo, USB 2.0 hará más productivas las aplicaciones de
hoy, como la reducción del tiempo para descargar un "rollo" de fotografías
digitales de unos cuantos minutos en la versión anterior de USB a sólo unos
segundos en USB 2.0. Como USB 2.0 es una evolución de la especificación USB
1.1 existente, será totalmente compatible con sistemas y periféricos USB actuales.
Incluso con la nueva velocidad pretendida, USB 2.0 funcionará con cables y conectores
existentes.
Se calcula que los primeros sistemas y dispositivos periféricos compatibles
con la nueva especificación hagan su aparición en el mercado en la segunda mitad
de este año (2000).
USB-IF y respaldo del bus serie universal
Cuando alguien menciona la palabra Intel, se tiene la seguridad de estar respaldados
por la empresa más grande de fabricación de microprocesadores del mundo; el
mencionar a Microsoft no es nada menos, todo el que haya tenido un mínimo roce
con computadoras conoce este nombre, y sin duda todos han empleado algún software
Microsoft; por su parte IBM es y ha sido siempre uno de los mayores colosos
de la computación en el mundo, especialmente en equipos grandes y de alto rendimiento;
DEC - Digital Equipment Corporation es otra de las mayores compañías del mundo
que cubre muchos aspectos y productos de la computación; Compac es una empresa
cuyos productos están distribuidos en todas partes del mundo, y varios de ellos
son reconocidos por su calidad; NEC se ha especializado en equipos de imagen
como monitores, digitalizadores y otros elementos para el diseño gráfico; finalmente
Northern Telecom es una compañía que brinda servicios de telefonía de larga
distancia, transmisión de datos por líneas telefónicas estándar, dedicadas,
satélite e ISDN especialmente en Estados Unidos y hacia todo el mundo.
Son principalmente estas siete empresas de nivel mundial, y líderes en el mundo
de la computación las que se han unido en un gran esfuerzo, y han dado vida
finalmente al Bus Serial Universal. Con semejante respaldo, el avance de USB
en el mercado es prácticamente imparable, y el conocimiento de esta tecnología
resulta ser una necesidad.
No ajeno a esto se encuentra el termino USB-IF, el cual incumbe particularmente
a empresas dedicadas a desarrollar productos USB; de todas formas, vale aclarar
que USB-IF proviene de las siglas en ingles Universal serial bus – Implementers
Forum o Foro de desarrolladores USB. Esta es una organización sin fines de lucro
que agrupa a cientos de empresas en el mundo, donde se ha discutido todas las
particularidades de este Bus, y se planifican diversas políticas, incluyendo
las de mercado.
En lo que a las empresas Apple y MACINTOSH se refiere, con su línea de computadores,
hace algunos años atrás ha sido difícil implementar alguna versión de USB, dado
que la arquitectura de esta línea es muy cerrada, pero como el auge de esta
arquitectura ha sido lo bastante grande, recién este año se ha podido implementar
bajo la línea de los IMAC, sacando al mercado gran cantidad de adaptadores,
cables y elementos USB, que sean compatibles tanto con este fabricante como
con los de PC’s.
Beneficios del bus serie universal
El trabajo involucrado dentro de la especificación USB es realmente completo,
es un estudio realmente minucioso, que comprende aspecto tales como:
Pero todo esto se puede traducir en beneficios tangibles para el usuario, como
los siguientes:
-
Fácil expansión de periféricos en la PC, no debe hacer falta, mas que conectar
el periférico y emplearlo (sin abrir la computadora).
-
Bajo costo para aplicaciones que demandan velocidades por los 12 Mbps, particularmente
aplicaciones multimediales: micrófonos, parlantes, teléfonos, etc.
-
Soporte completo para transmisión en tiempo real de voz, audio, y video.
-
Flexibilidad de protocolos para transmisiones mixtas isocronicas y asincrónicas
(las cuales serán analizadas mas adelante, ya que es el eje de transmisión de
USB).
-
Cómoda integración de dispositivos de tecnología y fabricantes diferentes.
-
Soporte para plataformas diversas de la línea de las PC’s compatibles (como
ya se vio, algunos problemas para MACINTOSH)
-
Posibilitar la producción de nuevos dispositivos capaces de aprovechar sus
ventajas.
Las funciones del USB y el host USB
Dentro de la terminología USB, el computador o la PC que soporta este tipo
de bus, se denomina Host USB; mientras que por su parte y dentro de la misma
terminología, todo periférico y/o dispositivo, se denomina Función USB, además
de esta significación, no existe ningún otro termino oculto dentro de estas
dos denominaciones.
Hodt USB:
A diferencia de los dispositivos y los hubs, existe tan solo un host dentro
del sistema USB, que como ya dijimos es el computador mismo, particularmente
una porción del mismo denominado Controlador USB del Host. Este tiene
la misión de hacer de interfaz entre el computador mismo y los diferentes dispositivos.
Existen algunas particularidades respecto a este controlador. Su implementación
es una combinación de hardware y software todo en uno, es decir Firmware. Puede
proveer de uno o dos puntos de conexión iniciales, denominados Hub raíz, a partir
de los cuales y de forma ramificada iran conectándose los periféricos.
FUNCIONES USB:
Dentro de la terminología USB, todos los dispositivos que pueden ser conectados
a este bus, a excepción de los Hubs, se denominan Funciones. Son funciones típicas:
el ratón, el monitor, altoparlantes, MODEM, etc.
Las funciones o dispositivos periféricos, son capaces de recibir y transmitir
información, ya sea del usuario o de control. El común denominador de todas
las funciones USB es su cable y el conector del mismo, diseñado y fabricado
de acuerdo a las especificaciones del bus, por lo que no cabe preocuparse por
la compatibilidad entre equipos de diferentes fabricantes; solamente hay que
recordar la empresas que respaldan esta tecnología.
Un aspecto interesante de las funciones, es que pueden ser a la vez nuevos
hubs. La siguiente figura muestra un esquema en el que la PC tiene tres puertos,
la siguiente función que puede ser un monitor 4, el siguiente 3 y adicionalmente
un Hub, provee 4 puertos mas, es un esquema tan sencillo, donde existen 14 puertos
disponibles para todo tipo de periférico, entre los que podemos citar: ratón,
tablilla digitalizadora, lápiz óptico, teclado impresora, un teléfono ISDN,
etc.

Host USB - Hardware y software:
El computador o Host USB trabaja con los diferentes dispositivos valiéndose
del controlador de host compuesto por una parte de hardware y otra de software,
de esta forma conjunta, el host es responsable al nivel de hardware, de los
siguientes aspectos dentro del sistema USB:
detectar tanto la conexión de nuevos dispositivos USB al sistema como la remoción
de aquellos ya conectados, y por supuesto, configurarlos y ponerlos a disposición
del usuario, tarea que involucra acciones por software.
Administrar y controlar el flujo de datos entre el host y los dispositivos
USB, es decir el movimiento de información generada por el mismo usuario.
Administrar y regular los flujos de control entre el host y los dispositivos
USB, es decir la información que se mueve con el objeto de mantener el orden
dentro de los elementos del sistema.
Recolectar y resumir estadísticas de actividad y estado de los elementos del
sistema.
Proveer de una cantidad limitada de energía eléctrica para aquellos dispositivos
que pueden abastecerse con tan solo la energía proveniente del computador (teclado,
ratón son dos ejemplos claros).
Por otra parte, a nivel de software las funciones del controlador de Host se
incrementan y complican:
-
Enumeración y configuración de los dispositivos conectados al
sistema
-
Administración y control de transferencias isocrónicas de
información
-
Administración y control de transferencias asincrónicas
-
Administración avanzada de suministro eléctrico a los
diferentes dispositivos
-
Administración de la información del bus y los dispositivos USB
Características y arquitectura general del USB
En los anteriores párrafos, se había hablado de algunos beneficios que esta
tecnología entregaba tanto al usuario como a las empresas fabricantes, pero
las características de USB son muchas mas, aunque algunas revisten ciertos términos
técnicos, vale la pena enumerar todas las características de este Bus:
-
Todos los dispositivos USB deben tener el mismo tipo de cable y
el mismo tipo de conector, más allá de la función que cumplan
-
Los detalles de consumo y administración eléctrica del
dispositivo deben ser completamente transparentes para el usuario
-
El computador debe identificar automáticamente un dispositivo
agregado mientras opera, y por supuesto configurarlo
-
Los dispositivos pueden ser desconectados mientras el computador
está en uso
-
Deben poder compartir un mismo bus tanto dispositivos que requieren de unos
pocos Kbps como los que requieren varios Mbps
-
Más de 127 dispositivos diferentes pueden estar conectados simultáneamente
y operando con una misma computadora sobre el Bus Serial Universal
-
El bus debe permitir periféricos multifunción, es decir
aquellos que pueden realizar varias tareas a la vez, como lo son algunas
impresoras que adicionalmente son fotocopiadoras y máquinas de fax
-
Capacidad para manejo y recuperación de errores producidos por
un dispositivo cualquiera
-
Soporte para la arquitectura Conectar y Operar (Plug&Play)
-
Bajo costo
-
No se necesita un cable extra de alimentación - la mayoría de los periféricos
USB obtienen la alimentación del bus USB, con lo cual no requieren un cable de
alimentación adicional
-
Más rápido - USB transfiere los datos 10 veces más rápido que
los puertos serie tradicionales
Vale la pena mencionar que todos los puntos citados anteriormente son
características disponible del Bus Serial Universal, es decir que los usuarios
pueden beneficiarse de absolutamente todas estas capacidades. Es importante
destacar que esta especificación y como lo veremos en el siguiente punto, no
es un trabajo superfluo, ya que ha sido estudiado hasta el detalle máximo.(basta
nuevamente recordar el gran soporte de esta tecnología).
Características principales:
Plug and Play
El puerto USB, y por tanto todos los dispositivos con conexión USB, son verdaderamente
Plug.n play, es decir, el dispositivo es detectado automáticamente al
conectarlo al equipo y el sistema operativo instala el driver adecuado o nos
pide el disco de instalación. Aún más, no es necesario apagar, ni siquiera re
iniciar, el equipo para conectar o desconectar los dispositivos, cargándose
y descargándose automáticamente de memoria el driver correspondiente.
Hot plugginn (conectar en caliente)
No es necesario apagar, ni siquiera reinicial, el equipo para instalar o desinstalar
un dispositivo USB. Algo especialmente interesante si olvidamos conectar un
dispositivo al encender el equipo o si simplemente no tenemos suficientes conectores
para todos los dispositivos USB. Además, esto permite conservar recursos de
memoria, pues cada dispositivo conectado requiere un driver residente, que de
este modo sólo se carga cuando se necesita y se descarga al dejar de necesitarlo.
Recursos del dispositivo
Quizá una de las mayores ventajas para los equipos actuales es el hecho de
que el puerto USB solamente necesita una IRQ y una dirección de memoria y todos
los dispositivos conectados a él, solamente necesitan una ID para su identificación
(como en el bus SCSI) dentro de la cadena de 127 dispositivos, sin necesitar
más recursos. Si tenemos en cuenta que los puertos estándar (dos serie, un paralelo,
un PS/2 para ratón, uno para teclado, un puerto para joystick) consumen 5 IRQs,
algunas DMA y múltiples direcciones de memoria, al utilizar dispositivos USB
nos estamos ahorrando valiosos recursos del sistema.
Simplicidad
El manejo de los dispositivos USB se hace por software, concretamente por el
propio sistema operativo, por lo que los dispositivos USB son más fáciles de
fabricar y por tanto más baratos. Además, USB es una tecnología abierta por
la que no hay que pagar derechos, lo que siempre abarata los costos de fabricación.
Dispositivos
Se puede conectar hasta un total de 127 dispositivos en cadena o utilizando
HUBs USB (concentradores de puertos USB), y cada dispositivo puede tener un
cable de hasta 5 metros de longitud, frente a 1 metro para el puerto serie y
4 metros para el puerto paralelo. Además, conectándolos en cadena, el último
dispositivo puede estar a 635 metros del ordenador.
Actualmente se encuentran en el mercado monitores, teclados, ratones, cámaras,
joysticks, módem, escáneres, impresoras e incluso altavoces (sin necesidad de
tarjeta de sonido) con conexión USBN, dispositivos de almacenamiento unidad
ZIP, unidad LS-120, CD-ROMs, discos duros externos, etc.
Lo que se debe olvidar a la hora de comprar un dispositivo USB es que
cada dispositivo puede funcionar como HUB, es decir, incluir uno o más conectores
USB, de modo que podamos conectar un dispositivo a otro en cadena, y así, por
ejemplo un teclado, puede incluir dos conectores USB, uno para el ratón y otro
para el joystick, de igual modo el monitor puede servir de HUB y permitir conectar
a él por ejemplo los altavoces, o el teclado, al cual a su vez se conectan el
ratón y el joystick, etc. Hay que tener en cuenta que muchos dispositivos USB
actuales no son más que conversiones de dispositivos existentes por lo que mucho
aún no implementan su uso como HUBs, por lo que quizás valga la pena esperar
un poco a que haya más dispositivos disponibles.
Velocidad
El puerto serie es capaz de transmitir hasta 112,5 KB/s y el puerto paralelo
entre 600KB/s y 15MB/s, pero el puerto USB es capaz de llegar a alcanzar entre
1,5MB/s y 12MB/s, por lo que es la conexión ideal para módem de 56K, escáneres
(como alternativa de similar costo a los de puerto paralelo), CD-ROMs externos,
dispositivos de copia de seguridad externos, etc. Sin embargo, para dispositivos
de almacenamiento (especialmente discos duros externos), conexiones de red,
cámaras, etc. quizás sea interesante también mostrar, la nueva versión del estándar
de conexión, FIREWIRE (IEEE 1394), que maneja transferencias entre 100MB/s y
400MB/s, que permite conectar hasta 63 dispositivos y un cable de 4.5 metros
por dispositivo, permitiendo al igual que el USB la conexión en caliente.
El puerto USB no esta destinado a desaparecer (de hecho no hay en el mercado
placas con este conector pues los chipsets actuales no lo soportan), sin que
se destinará a cierto tipo de dispositivos que requieren una transferencia de
datos baja o media (teclados, ratones, joysticks, etc.) mientras que el bus
FIREWIRE se destinará a dispositivos que requieren una alta transferencia (escáneres,
impresoras, disco duro, DVD, etc.). Sin embargo, no hay que olvidar, que
USB esta modificando sus características, para poder absorber velocidades hasta
los 480 Mbps, lo cual dará una dura pelea al estándar IEEE 1394 (del cual se
hablará mas adelante)
Plataforma
Para poder utilizar dispositivos USB, hay recordar que el sistema operativo
instalado en nuestro equipo debe soportar este nuevo bus. Windows 95 en sus
versiones OSR2.1 y OSR2.5 detecta el puerto USB y soporta dispositivos
USB (la versión OSR2.0 también añadiendo el SUPLEMENTO USB), pero es realmente
con el sistema operativo Windows 98 que los ya abundantes dispositivos USB no
han dado problemas de instalación y funcionamiento, no dejando de lado las ultimas
versiones de Windows NT.
Si queremos que los dispositivos USB funcionen, además en la BIOS de nuestra
tarjeta madre debemos habilitar la opción ASSIGN USB IRQ - ENABLED. Si queremos
utilizar un teclado USB con nuestro equipo, debemos habilitar USB KEYBOARD SUPPORT
VIA BIOS en vez de VIA OS si queremos utilizar el teclado cuando
"Reiniciamos equipo en modo MS-DOS" para ejecutar programas de diagnóstico.
Si no lo hacemos así, por ejemplo, no accederemos a la BIOS del sistema al pulsar
SUPR/DEL, ni anularemos el test de memoria al pulsar ESC, ni accederemos al
"Menú de inicio" al pulsar F8, aunque el teclado funcionará correctamente
en Windows 9X.
Uno de los problemas del puerto USB es que suministra solamente 500 miliamperios
de electricidad para los dispositivos conectados, que aunque es suficiente potencia
para la mayoría de los dispositivos que se conectan a este puerto, resulta escaso
cuando conectamos varios dispositivos sin fuente de alimentación propia. Lo
que sí podemos hacer es comprar un HUB USB con toma de alimentación eléctrica,
para proporcionar la potencia necesaria a aquellos dispositivos que lo requieran
(especialmente escáneres e impresoras).
Los Hub's USB
Los Hubs son elementos claves dentro de la arquitectura Conectar y utilizar
de USB. Adicionalmente, simplifican de gran manera la sencillez de la interconexión
de dispositivos al computador. Las siguientes Figuras muestran hubs USB disponibles
en el mercado.
Bajo una óptica eléctrica e informática, los hubs son concentradores cableados
que permiten múltiples conexiones simultáneas. Su aspecto más interesante es
la concatenación, función por la que a un hub se puede conectar otro y otro,
ampliando la cantidad de puertos disponibles para periféricos
El hub USB tiene la capacidad de detectar si un periférico ha sido conectado
a uno de sus puertos, notificando de inmediato al Controlador de Host en el
computador, proceso que desata la configuración del equipo nuevo; adicionalmente,
los hubs también son capaces de detectar la desconexión de un dispositivo, notificando
al Controlador de Host que debe remover las estructuras de datos y programas
de administración (drivers) del dispositivo retirado.
Otra de las funciones importantes de los hubs es la de aislar a los puertos
de baja velocidad de las transferencias a alta velocidad, proceso sin el cual
todos los dispositivos de baja velocidad conectados al bus entrarían en colapso.
La protección de los dispositivos lentos de los rápidos ha sido siempre un problema
serio dentro de las redes mixtas, como es USB.
El hub está compuesto por dos partes importantes: El Controlador del Hub y
el Repetidor del Hub. El Repetidor del Hub tiene la función de analizar, corregir
y retransmitir la información que llega al hub, hacia los puertos del mismo.
Mantiene una memoria consistente en varios registros de interfaz que le permiten
sostener diálogos con el host y llevar adelante algunas funciones administrativas
además de las meramente operativas; mientras que el Controlador de Hub puede
asemejarse a una pequeña CPU de supervisión de las múltiples funciones que deben
desempeñar un hub.

Funcionamiento general de un hub USB
Las tarjetas madre de las computadoras “modernas” tienen normalmente dos conectores
estandarizados que sirven para conectar dos dispositivos USB, pero para conectar
hasta 127 dispositivos necesitamos utilizar HUBS (concentradores) USB con varios
puertos, hasta llegar a totalizar como máximo 127 dispositivos, de modo que
un dispositivo USB se puede conectar directamente al conector de la tarjeta
madre o a un conector de HUB, sin variar para nada su funcionamiento. De hecho,
algunos dispositivos pueden funcionar como HUBs al tener conectores USB incorporados,
como los teclados. También podemos conectar un dispositivo a un hub, que a su
vez esté conectado a otro hub que está conectado al conector de la tarjeta madre
y el funcionamiento del dispositivo será igual que estando conectado directamente
al conector de la tarjeta madre. El cable de los dispositivos USB es un cable
de 4 hilos con una longitud máxima de 5 metros por dispositivo o HUB, con lo
que los dispositivos conectados no tienen por qué estar amontonados encima de
una mesa.
Descripción del sistema
La siguiente Figura muestra la estratificación del sistema USB. El mismo
está compuesto por tres áreas claramente demarcadas: (1) el host USB,
(2) los dispositivos USB y, (3) toda la interconexión USB.
La interconexión USB es la manera en la cual los dispositivos USB se conectan
y comunican con el host, esto incluye: la topología del bus o el modelo de conexión
entre los dispositivos USB y el host; los modelos de flujo de datos, es decir
la forma en la que la información se mueve en el sistema entre sus diversos
elementos; la planificación USB que define la secuencia en la cual los dispositivos
accederán al bus; finalmente, las relaciones entre capas del modelo, y las funciones
de cada capa. Este último punto es conveniente aclararlo. El software al igual
que todo sistema, a medida que crece se hace más complejo, razón por la cual
cuando se lo desarrolla, se procede a subdividirlo en programas más pequeños,
cada uno con una tarea específica, pero a los ojos del usuario sigue siendo
un todo, aunque en determinados momentos porciones del mismo estén trabajando
y otras no, de a cuerdo a las necesidades de operación del momento. Por ejemplo,
dentro de un procesador de texto, un determinado momento estará funcionando
el editor, otro el corrector, el módulo de almacenamiento en disco, etc.
Dentro del mundo de las redes y la transmisión de datos, los programas de comunicaciones
sufren el mismo proceso de estructuración, aunque el término cambia un poco.
Cada porción de código o programa que cumple una tarea específica se denomina
capa.
Arquitectura general
El Bus Serial Universal está dado esencialmente por un cable especialmente
diseñado para la transmisión de datos entre la computadora (cuyo nombre
dentro de la terminología USB es host), y diferentes periféricos, que pueden
acceder simultáneamente al mismo con el fin de recibir o transmitir datos. Todos
los dispositivos conectados acceden al canal o medio para transmitir sus datos
de a cuerdo a las normas de administración del host regido por un protocolo
que consecutivamente va dando la posibilidad de transmitir a cada periférico,
el protocolo USB se parece de cierta forma al protocolo Token Ring.
La arquitectura del bus garantiza la posibilidad de que los periféricos sean
conectados y desconectados del host mientras este y otros periféricos están
operando normalmente, característica a la que se denomina Conectar y Desconectar
Dinámico o simplemente En Caliente, sin perjuicio para ningún dispositivo en
funcionamiento
Todos los dispositivos USB responden también a un mismo patrón estandarizado,
que más allá de las características propias de cada fabricante, comprende los
mismos elementos funcionales.
Estos son:
TRANSCEIVER: El cable USB está compuesto por solo cuatro cables: Vbus, D+,
D- y GND. La información y los datos se mueven por los cables D+ y D-, con dos
velocidades: 12Mbps o 1.5Mbps, un problema serio de comunicaciones si no existe
un dispositivo capaz de manejar esta situación. Este es el Transceiver, fabricado
dentro del mismo chip controlador de periférico, y puede verse como la interfaz
misma de un dispositivo externo contra el resto del sistema.
SERIAL INTERFACE ENGINE - SIE.- El SIE tiene la función de serializar y deserializar
las transmisiones, además maneja los protocolos de comunicación, las secuencias
de paquetes, el control CRC y la codificación NRZI.
FUNCTION INTERFACE UNIT - FIU.- Este elemento administra los datos que son
transmitidos y recibidos por el cable USB. Se basa y apoya en el contenido y
estado de los FIFOs (a continuación). Monitorea los estados de las transacciones,
los buffer FIFO, y solicita atención para diversas acciones a través de interrupciones
contra el CPU del host.
FIFOs.- (primero en entrar – primero en salir), El controlador 8x930Ax,(se
vera mas adelante) tiene un total de 8 buffer tipo FIFO, cuatro de ellos destinados
a la transmisión y cuatro destinados a la recepción de datos. Tanto para la
transmisión como para la recepción, los buffer soportan cuatro tareas o funciones,
numeradas de 0 a 3. La función 0 tiene reservado en el buffer en espacio de
16 bytes, y se dedica a almacenar información de control relacionada a las transferencias.
La función 1 es configurable para disponer de más de 1025 bytes, y finalmente
las funciones 2 y 3 disponen cada una de 16 bytes. Estas tres últimas funciones
se emplean para el control de interrupciones y transmisiones tanto isocrónicas
como las bulk (Ambos términos serán explicados más adelante).
Es importante destacar que el controlador del periférico es totalmente programable,
empleando el conjunto de instrucciones MCS51 o MSC251, ambos productos de Intel
que ha de ser más de interés de las empresas fabricantes de dispositivos externos
USB.
Este controlador adicionalmente posee las siguientes características: Capacidades
de puerto serial mejorado, contadores de tiempo de 16 bits, un clock, 4 puertos
de entrada y salida de 8 bits, y dos modos de ahorro de energía: inactivo y
de bajo consumo. No vale la pena explicar en detalle cada uno de estos, solo
hay que entender que estos elementos son capaces de brindarle a todo puerto
serial, capacidades de transferencia realmente importantes.
Conectores USB de Seria "A" y serie "B"
Existen dos tipos de conectores dentro del Bus Serial Universal. El conector
Serie A está pensado para todos los dispositivos USB que trabajen sobre plataformas
de PCs. Serán bastante comunes dentro de los dispositivos listos para ser empleados
con host PCs, y lo más probables es que tengan sus propios cables con su conector
serie A. Sin embargo, esto no se dará en todos los casos, existirán dispositivos
USB que no posean cable incorporado, para los cuales el conector Serie B será
una característica. Sin embargo este no es un problema, ya que ambos conectores
son estructuralmente diferentes e insertarlos de forma equívoca será imposible
por la forma de las ranuras. La primera figura muestra los diferentes
tipos de conectores USB, y la Figura siguiente las respectivas ranuras.



Topología del Bus
La forma física en la que los elementos se interconectan dentro del sistema
USB, puede asemejarse a la topología estrella estratificada piramidalmente.
El centro de cada estrella es un hub, un dispositivo que por un lado se conecta
al computador o a otro hub y por otro lado, permite conectar al mismo varios
dispositivos o en su defecto nuevos hubs.
Esta disposición significa que los computadores con soporte para USB han de
tener tan solo uno o dos conectores USB, pero ello no representa poder contar
con tan solo dos dispositivos de esta clase, quien sabe un ratón y un teclado.
Muchos dispositivos USB han de traer conectores USB adicionales incorporados,
por ejemplo un monitor puede tener 3 ó 4 conectores USB donde pueden ir el teclado,
el ratón, y algún otro dispositivo. Por su parte el teclado puede tener otros
más, y así sucesivamente hasta tener más de 127 dispositivos, todos funcionando
simultáneamente.
Aún así, existirán dispositivos específicos destinados a ampliar la cantidad
de conectores, estos se denominan hubs, y su funcionamiento como apariencia
física está muy cercana a la de los hubs de redes Ethernet. Un hub de 8 puertos
o conectores, puede ser acoplado a uno de los puertos USB del computador, ampliando
la cantidad de dispositivos que se pueden emplear.
Funcionamiento básico y ámbito de aplicación
Todo el sistema USB es inteligente, esto significa que una vez que se ha insertado
un nuevo dispositivo al sistema, el bus automáticamente determina que recursos
del host requiere, incluyendo controladores de software (drivers), ancho de
banda necesario (el ancho de banda se refiere a la capacidad del canal de comunicaciones
que requiere un dispositivo cualquiera para enviar sus datos. Mientras más información
manipule el dispositivo, más ancho de banda necesitará, y a la inversa). El
mismo proceso se da al remover un dispositivo del equipo, ya que el host automáticamente
elimina todos los componentes asociados al mismo con el fin de disponer de los
recursos otorgados en su momento para futuros dispositivos.
Este mismo proceso, hace que la configuración y manipulación del software o
hardware, sea prácticamente mínima para el usuario, proporcionando una gran
ayuda en lo que la interconexión de dispositivos al computador, pudiendo
ser utilizado en cualquier lugar físico en que se tenga esta tecnología.
Controladores (drivers) de hardware
Las últimas versiones del sistema operativo Windows 95 trae una gran cantidad
de controladores para una gama amplia de dispositivos USB, por lo tanto, lo
más probable es que el mismo sistema operativo reconozca y configure el dispositivo
de forma inmediata y transparente. (aunque de todas maneras se han detectado
fallas de funcionamiento); Adicionalmente el sistema operativo Windows 98, trae
especiales refuerzos en cuanto a cantidad de controladores para dispositivos
USB y calidad de funcionamiento se refiere. Aunque estos sistemas operativos
nunca soportaran a todos, ni mucho menos controladores de dispositivos
que se fabricarán en el futuro, razón por la cual, Windows 95/98 solicitará
el disquete o CD de instalación, para aquellos periféricos que no pueda configurar
adecuadamente.
Los sistemas operativos ganan en simplicidad. Los drivers para USB están definidos
por capas, de forma que la gestión del bus, la configuración básica de los dispositivos,
su manejo, etc... lo lleva el sistema operativo, mientras que cada driver específico
sólo maneja los dispositivos con los que pueda tratar. De esta forma, tendremos
una serie de módulos apilados con unas misiones específicas, que no interfieren
la una con la otra.
El driver está organizado por la ya comentada estructura de capas. La parte
principal es el USBD, o Universal Serial Bus Driver (gestor del USB). Aquí están
contenidas todas las llamadas que los drivers necesitarán para acceder a sus
dispositivos.
Debajo de esta capa está el HCD, el Host Controller Driver, que es la parte
del sistema USB que se dedica a hablar con cada controlador en particular (esto
es necesario ya que así se da soporte a todo tipo de controladores, aunque inicialmente
solo existen dos, los UHCI y los OHCI (acrónimos que significan Host Controller
Interface -interfase del controlador-, universal para la U y Open -abierto-
para la O).
Por encima del USBD, y como driver está el HUBD, el driver de los hubs, que
es parte obligada del sistema USBD, ya que es parte activa de la gestión de
la configuración de los dispositivos. Esta parte consta de un demonio en activo
dentro del mismo núcleo llamado khubdd (Kernel Hub Driver Daemon, demonio en
el núcleo del driver de hubs). Este demonio se dedica a esperar a que ocurra
algo en los puertos de los hubs donde se conectan los dispositivos, y cuando
algo ocurre, lo notifica al USBD, que actúa en consecuencia, lanzando secuencias
de desconexión, configuración, desconfiguración, cambio de configuración o forma
de trabajo, etc ... en los dispositivos.
Los drivers actúan de una forma similar al HUBD. Un driver, cuando se carga
o inicializa, se registra a sí mismo en el sistema USB. Cuando se conecta un
dispositivo, se recorre la lista de drivers registrados en busca del que pueda
ser más conveniente para este. Cuando se encuentra, se le pide que configure
el dispositivo. Si no lo logra, se busca otro; si no se encuentra ninguno, se
pedirá que se cargue un módulo con un driver para ese dispositivo. En caso de
que no haya ninguno, se dará por imposible y se dejará el dispositivo como no
configurado y esperando a que se cargue un driver que lo pueda configurar.
Características "Must have"
El término "Must Have" (Debe Tener), está rutinariamente mencionado
en este informe. Está claro que el término hace referencia a la capacidad que
debe tener una computadora para soportar el bus USB.
Adicionalmente, el sistema operativo más difundido en el mundo Windows 95/98,
que es distribuido con los mismos equipos por una gran cantidad de fabricantes,
viene provisto por todos los controladores (drivers) necesarios para poder manipular
este bus sin ningún tipo de problema. El resultado son PCs que están saliendo
al mercado con uno o dos puertos USB en su parte posterior listos para ser empleados,
como se observa en la siguiente figura.
Por supuesto, estas computadoras incluyen los puertos habituales mientras
la transición hacia USB se va desarrollando.
Literalmente, todos los fabricantes del mundo han arrancado su producción de
dispositivos y computadoras USB, nuevos modelos, vistosas publicidades para
equipos como joysticks digitales, teclados, altoparlantes, monitores, etc.,
pueden ser vistos por todos los rincones de Internet, especialmente en los sitios
web de aquellas empresas que venden por esta vía.
Un aspecto más, no todos los sistemas operativos Windows 95 instalados en todas
las computadoras del mundo tiene la misma versión, aunque todos ellos presenten
como portada ese logo. La especificación USB es soportada por los sistemas operativos
Windows 95 cuya versión sea la 4.00.950B o superior (como se señalo anteriormente).
Para averiguar este dato, se debe hacer clic con el botón derecho del ratón
sobre el icono Mi PC del escritorio, y seleccionar la opción Propiedades.
Modelo lógico funcional del USB
El diagrama de la Figura anterior, ilustra el flujo de datos USB a partir de
tres niveles lógicos: entre el Software Cliente y la Función, el Controlador
USB y el dispositivo, y finalmente la capa física, donde la transmisión realmente
sucede. Es importante entender que este modelo es muy parecido al OSI, el estándar
de redes, y su comprensión radica en el hecho de que si bien existe un solo
canal físico, pero los datos son manejados en cada punto por unidades homólogas
o idénticas, tal como si estuviesen sosteniendo una comunicación directa. Por
esta razón se las denomina Capas Lógicas.
El nivel superior lógico es el agente de transporte de datos que mueve la información
entre el Software Cliente y el dispositivo. Existe un Software Cliente en el
host, y un Software De Atención al mismo en cada una de las funciones o periféricos
USB. A este nivel, el host se comunica con cada uno de los periféricos en alguna
de las varias formas posibles de transmisión que soporta USB. El Software Cliente
solicita a los dispositivos diversas tareas y recibe respuestas de ellos a través
de esta capa.
La capa lógica intermedia es administrada por el Software de Sistema USB, y
tiene la función de facilitarles las tareas particulares de comunicación a la
capa superior, cabe decir, administra la parte del periférico con la que la
capa superior desea comunicarse, maneja la información de control y comando
del dispositivo, etc. Su objetivo es permitir a la capa superior concentrarse
en las tareas específicas tendientes a satisfacer las necesidades del usuario,
adicionalmente gestiona el control interno de los periféricos.
El acceso al bus es bajo la modalidad de Ficha o Token, lo que involucra siempre
complejidad de protocolos, especialmente si agregamos dos velocidades posibles:
12Mbps ó 1.5Mbps. Todos estos algoritmos y procesos son administrados por el
Host USB, reduciendo la complejidad del periférico, y lo más importante, el
costo final de los dispositivos USB.
La capa física del modelo lógico USB comprende los puertos físicos, el cable,
los voltajes y señales, el hardware y funcionamiento del hardware. Esta capa
tiene el objetivo de liberar a las capas superiores de todos los problemas relacionados
a la modulación, voltajes de transmisión, saltos de fase, frecuencias y características
netamente físicas de la transmisión.
Electrónica y transmisión del USB
Interfase física (eléctrica)
El interfaz de Bus Universal en Serie (USB) se identifica con este icono que
se encuentra en la parte posterior de la computadora:

Los pines del conector se identifican a continuación.
| Conector |
Pin |
Señal |
|
|
1 |
+5V |
| 2 |
Datos - |
| 3 |
Datos + |
| 4 |
A Tierra |
El Bus Serial Universal transfiere señales de información y energía eléctrica
a través de 4 cables, cuya disposición se muestra en las siguientes figuras.

Por su parte las señales se mueven sobre dos cables y entre segmentos comprendidos
entre un par de dispositivos USB, con rangos de velocidad de 12Mbps o 1.5Mbps,
para transmisiones de alta y baja velocidad respectivamente. Ambos modos de
transmisión son controlados automáticamente por medio de los dispositivos USB
de manera transparente al usuario. Es importante notar que siempre ha sido un
serio problema manejar velocidades diferentes de transmisión de datos por un
mismo cable, y esto no sería posible sin que todos los dispositivos estén preparados
para tal efecto.
Los pulsos de reloj o sincronismo son transmitidos en la misma señal de forma
codificada bajo el esquema NRZI (Non Return To Zero Invert), uno de los más
interesantes sistemas de codificación de información que no vale la pena mencionarlo
ahora por su complejidad eléctrica-electrónica.
Los otros dos cables VBus y GND tienen la misión de llevar suministro eléctrico
a los dispositivos, con una potencia de +5V para VBus. Los cables USB permiten
una distancia que va de los pocos centímetros a varios metros, más específicamente
5 metros de distancia máxima entre un dispositivo USB y el siguiente. La Figura
siguiente muestra el detalle.
Es importante indicar que los cables USB tienen protectores de voltaje a fin
de evitar cualquier daño a los equipos, son estos mismos protectores los que
permiten detectar un dispositivo nuevo conectado al sistema y su velocidad de
trabajo.
Protocolo del bus
Toda transferencia de datos o transacción que emplee el bus, involucra al menos
tres paquetes de datos. Cada transacción se da cuando el Controlador de Host
decide qué dispositivo hará uso del bus, para ello envía un paquete al dispositivo
específico. Cada uno de los mismos tiene un número de identificación, otorgado
por Controlador de Host cuando el computador arranca o bien cuando un dispositivo
nuevo es conectado al sistema. De esta forma, cada uno de los periféricos puede
determinar si un paquete de datos es o no para sí. Técnicamente este paquete
de datos se denomina Paquete Ficha o Token Packet. Una vez que el periférico
afectado recibe el permiso de transmitir, arranca la comunicación y sus tareas
específicas; el mismo informará al host con otro paquete que ya no tiene más
datos que enviar y el proceso continuará con el siguiente dispositivo.
Este protocolo tiene un sistema muy eficiente de recuperación de errores, empleando
uno de los modelos más seguros como es el CRC (Código de Redundancia Cíclica).
Y puede estar implementado al nivel de software y/o hardware de manera configurable.
De hecho si el control es al nivel de hardware, no vale la pena activar el control
por software, ya que sería duplicar tareas innecesariamente.
Transmisión del USB
Transmisión asincrónica
Las distintas formas de transmisión de datos a distancia siempre fueron seriales,
ya que el desfase de tiempos ocasionada por la transmisión paralela en distancias
grandes impide pensar en esta última como apta para cubrir longitudes mayores
a algunos pocos metros.
Sobre ello, la transmisión serial ha topado con el problema de que la información
generada en el transmisor sea recuperada en la misma forma en el receptor, para
lo cual es necesario ajustar adecuadamente un sincronismo entre ambos extremos
de la comunicación. Para ello, tanto el receptor como el transmisor deben disponer
de relojes que funcionen a la misma frecuencia y posibilite una transmisión
exitosa. Como respuesta a este problema surgió la transmisión asincrónica, empleada
masivamente años atrás para la comunicación entre los equipos servidores conocidos
como hosts y sus terminales.
En este modelo cabe entender que ambos equipos poseen relojes funcionando a
la misma frecuencia, por lo cual, cuando uno de ellos desea transmitir, prepara
un grupo de bits encabezados por un BIT conocido como de arranque, un conjunto
de 7 u 8 bits de datos, un BIT de paridad (para control de errores), y uno o
dos bits de parada. El primero de los bits enviados anuncia al receptor la llegada
de los siguientes, y la recepción de los mismos es efectuada. El receptor conocer
perfectamente cuántos bits le llegarán, y da por recibida la información cuando
verifica la llegada de los bits de parada. El esquema de los datos se muestra
en la Figura siguiente.

Se denomina transmisión asincrónica no porque no exista ningún tipo de sincronismo,
sino porque el sincronismo no se halla en la señal misma, mas bien son los equipos
mismos los que poseen relojes o clocks que posibilitan la sincronización. La
sincronía o asincronía siempre se comprende a partir de la señal, no de los
equipos de transmisión o recepción.
Transmisión sincrónica:
En este tipo de transmisión, el sincronismo viaja en la misma señal, de esta
forma la transmisión puede alcanzar distancias mucho mayores como también un
mejor aprovechamiento de canal. En la transmisión asincrónica, los grupos de
datos están compuestos por generalmente 10 bits, de los cuales 4 son de control.
Evidentemente el rendimiento no es el mejor. En cambio, en la transmisión sincrónica,
los grupos de datos o paquetes están compuestos por 128 bytes, 1024 bytes o
más, dependiendo de la calidad del canal de comunicaciones.
Las transmisiones sincrónicas ocupan en la actualidad gran parte del mundo
de las comunicaciones seriales, especialmente las que emplean el canal telefónico.
Transmisiones isocrónicas:
Inicialmente vale la pena aclarar el origen de este término tan extraño, ISO(algún)
CRONOS(tiempo). La transmisión isocrónica ha sido desarrollada especialmente
para satisfacer las demandas de la transmisión multimedial por redes, esto es
integrar dentro de una misma transmisión, información de voz, video, texto e
imágenes. La transmisión isocrónica es una forma de transmisión de datos en
la cual los caracteres individuales están solamente separados por un número
entero de intervalos, medidos a partir de la duración de los bits. Contrasta
con la transmisión asincrónica en la cual los caracteres pueden estar separados
por intervalos aleatorios. La transferencia isocrónica provee comunicación continua
y periódica entre el host y el dispositivo, con el fin de mover información
relevante a un cierto momento. La transmisión isocrónica se encarga de mover
información relevante a algún tipo de transmisión, particularmente audio y video.
Transmisión bulk:
La transmisión Bulk, es una comunicación no periódica, explosiva típicamente
empleada por transferencias que requieren usar todo el ancho de banda disponible
o en su defecto son demoradas hasta que el ancho de banda completo esté disponible.
Esto implica particularmente movimientos de imágenes o video, donde se requiere
de gran potencial de transferencia en poco tiempo.
USB permite dos tipos más de transferencias de datos:
Transmisiones de control:
Es un tipo de comunicación exclusivamente entre el host y el dispositivo que
permite configurar este último, sus paquetes de datos son de 8, 16, 32 o 64
bytes, dependiendo de la velocidad del dispositivo que se pretende controlar.
Transmisiones de interrupción:
Este tipo de comunicación está disponible para aquellos dispositivos que demandan
mover muy poca información y poco frecuentemente. Tiene la particularidad de
ser unidireccional, es decir del dispositivo al host, notificando de algún evento
o solicitando alguna información. Su paquete de datos tiene las mismas dimensiones
que el de las transmisiones de control.
Conjunto integrado de chips:
Un trabajo tan importante como representa USB tiene que de manera alguna mantener
compatibilidad hacia atrás, es decir por algún tiempo, los otros tipos de dispositivos
que en la forma de tarjetas se insertan a la tarjeta madre, deben trabajar de
forma conjunta con el bus USB.
Entre las empresas desarrolladoras de USB, ya antes mencionadas, existen más
de 250 otras empresas menores que fabrican semiconductores, computadoras, periféricos
y software, todas trabajando por poner en el mercado la mayor cantidad
posible de elementos USB. En todos los casos, la estructura esquemática de los
buses es la que se muestra en el esquema siguiente.
El conjunto de chips PCI de Intel, incluye un controlador de sistema, unidades
de control de buses y un chip muy particular desarrollado para integrar las
partes: el 82371SB PCI IDE/ISA Xcelerator - PIIX3. El conjunto PCI provee de
un puente entre la memoria principal de la computadora y el caché L2,
con un ancho de bus de 64 bits para todo tipo de transferencias.
Además de esto, el PIIX3 permite la interconexión entre el bus PCI y el bus
ISA, permitiendo el acceso de los datos al bus USB. Al ser USB un bus serial,
y los internos a la computadora son paralelos, hace falta un serializador y
deserializador, que en este caso es el denominado Serial Interface Engine --
SIE, elemento que maneja los protocolos de comunicación USB, la programación
de secuencia de paquetes, la detección y generación de señales, el control CRC
(Código de Redundancia Cíclica), la codificación NRZI, y la identificación de
los periféricos con los identificadores del paquete de datos.
En realidad la parte más importante de la estructura de la arquitectura de
buses incluyendo al nuevo USB radica en el PIIX3 y el SIE, dos elementos básicos
en el movimiento de datos entre los buses.
Chips controladores de USB
Cada uno de los chips controladores USB de Intel tiene una función específica,
asi es que cuando el mercado se vea saturado de diferentes dispositivos
USB, se presenten algunas diferencias relacionadas al aspecto del controlador
interno del dispositivo. Realmente no es imposible memorizar todos los nombres
de los principales controladores disponibles de Intel, así que a manera de referencia
vamos a mencionarlos:
El 8x930Ax USB Peripheral Controller, ha sido diseñado para periféricos de
PCs, incluyendo joysticks digitales, cámaras y algunos dispositivos relacionados
a telefonía.
El 8x930Hx USB Hub Controller, ha sido diseñado para brindar soporte a aquellos
dispositivos que además de cumplir su objetivo propio, tienen la función de
trabajar como hubs. Entre estos se incluyen monitores, impresoras, teclados,
etc. Este controlador también puede dar soporte a hubs natos.
El 8x931Ax USB Peripheral Controller, desarrollado también para dispositivos
con capacidades complementarias de hub. Este es capaz de soportar 9 múltiples
conexiones. Por cierto que este controlador es mejor que el primero.
El hecho de que la más grande empresa de fabricación de microprocesadores del
planeta esté fabricando no solamente chips controladores USB, sino también tarjetas
madres propias para la tecnología USB está delatando un cambio realmente importante,
seguido muy de cerca por todas las empresas relacionadas a computación del mundo
que desean mantenerse en el mercado.
IEEE 1394 versus USB
IEEE 1394 Firewire
1394 es el estándar del bus serie definido por IEEE (The Institute of Electrical
and Electronic Engineers) denominado así por ser el número del estándar acordado.
Sus principales características son:
-
Velocidad de transferencia de 400 Mega bits por segundo
-
Hasta 63 dispositivos en la misma conexión
-
Permite la conexión en caliente al computador
Captura directa de imágenes desde cámaras digitales que
tengan este interfaz al computador, sin necesidad de convertir las imágenes
y sin perder calidad.
FIRE WIRE, es el interfaz desarrollado por Apple, estándar oficial (IEEE 1394),
ideal para periféricos de alta velocidad y especialmente diseñado para dispositivos
multimedia.
Este interfaz permite la conexión del dispositivo al ordenador en caliente,
sin necesidad de reiniciar el equipo, sin necesidad de asignar ID o utilizar
terminadores.
Diferencias entre 1394, Fire Wire e I-Link
1394 es el estándar del bus serie definido por IEEE (The Institute of Electrical
and Electronic Engineers) denominado así por ser el número del estándar acordado,
Fire Wire es el estándar 1394 desarrollado por Apple e i-Link la iniciativa
1394 desarrollada por Sony, por lo que se podría decir que no se diferencian
técnicamente en nada.
Esto quiere decir que todos los productos con especificación IEEE 1394, independientemente
de la denominación que tengan son compatibles con el estándar especificado.
1394 es el interfaz de audio y video digital que permite la conexión al ordenador
en caliente, esto es, sin necesidad de reiniciar el equipo al conectar el dispositivo. Tampoco son necesarios identificadores ni terminadores. Es la forma más sencilla
de conexión al ordenador.
IEEE 1394, se dio a conocer debido sobre todo a la lista de tecnologías contenidas
en Windows 98, es un nuevo bus que permite conectar hasta 63 dispositivos con
una velocidad de datos media-rápida. En el fondo es similar al USB, pero, como
se verá más adelante, tiene diferencias tanto en aplicaciones como en prestaciones.
Lo mejor de todo es el tipo de cosas que se pueden conectar. Éstas incluyen
discos duros, DVD-ROMs y CD-ROMs de alta velocidad, impresoras, escáneres y
la novedad: cámaras de fotos digitales, videocámaras DV, televisiones, etc.
Gracias al 1394, se podrán conectar cámaras digitales y de DV sin la necesidad
de incómodas tarjetas que vienen opcionalmente con estos aparatos.
En el siguiente diagrama, se mostrará físicamente el conector IEEE 1394.

1394 vs USB
Mucha gente confunde el 1394 y el Universal Serial Bus (USB). Ambos son tecnologías
que persiguen un mismo método de conectar múltiples periféricos a un ordenador.
Ambos permiten que los periféricos sean añadidos o desconectados sin la necesidad
de reiniciar. Ambos usan cables ligeros y flexibles con un empleo sencillo,
y conectores duraderos.
Pero allí terminan las asimilaciones. Aunque los cables de 1394 y USB pueden
parecer a la vista lo mismo, la cantidad de datos que por ellos viaja es bastante
diferente. Como muestra la tabla de abajo, la velocidad y la capacidad de transferencia
marca la principal distinción entre estas dos tecnologías:
|
|
IEEE 1394 Firewire |
USB |
| Número máximo de dispositivos |
63 |
127 |
| Cambio en caliente (agregar o quitar dispositivos sin
tener que reiniciar el ordenador) |
Hot plaggin. |
Hot plaggin. |
| Longitud máxima del cable entre dispositivos |
4,5 metros |
5 metros |
| Velocidad de transferencia de datos |
200 Mbps – 400 Mbps |
12 Mbps (1,5 Mb/s) |
| Tipos de ancho de banda |
400 Mbps (50MB/s)
800 Mbps (100MB/s)
1 Gbps+ (125MB/s+) |
Ninguno |
| Implementación en Macintosh |
Sí (FIRE WIRE) |
No |
| Conexión de periféricos interna |
Sí |
No |
| Tipos de dispositivos conectables |
- Videocámaras DV
- Cámaras digitales de alta resolución
- HDTV (TV de alta definición)
- Cajas de conexiones
- Discos duros
- Unidades DVD-ROM
- Impresoras
- Escáneres |
- Teclados
- Ratones
- Monitores
- Joysticks
- Cámaras digitales de baja resolución
- Unidades CD-ROM de baja velocidad
- Módems |
Hoy por hoy, el 1394 ofrece una transferencia de datos 16 veces superior a
la ofrecida por el USB. Eso es porque el USB fue diseñado para no prevenir futuros
aumentos de velocidad en su capacidad de transferencia de datos. Por otro lado,
el 1394 tiene bien definidos otros tipos de ancho de banda, con velocidad incrementada
a 400 Mbps (50 MB/s) y posiblemente 800 Mbps (100 MB/s), y 1 Gbps+ (125
MB/s) y más allá en los próximos años. Tantos incrementos en la capacidad de
transferencia de datos serán requeridos para los dispositivos que la requieren,
tales como HDTV, cajas de mezclas digitales y sistemas de automatización caseros
que planean incorporar interfaces 1394.
La mayoría de los analistas industriales esperan que los conectores 1394 y
USB coexistirán pacíficamente en los ordenadores del futuro. Reemplazarán a
los conectores que podemos encontrar hoy en las partes de atrás de los PC's.
USB se reservará para los periféricos con un pequeño ancho de banda (ratones,
teclados, módems), mientras que el 1394 será usado para conectar la nueva generación
de productos electrónicos de gran ancho de banda. Aunque hay que recordar algunos
párrafos mas atrás, se hablaba de la evolución de la que estaba siendo objeto
el bus serie universal.
Glosario
Plug & Play : Los dispositivos son detectados automáticamente por el sistema
operativo, el cuál carga los drivers correspondientes para el funcionamiento
del dispositivo.
Hot plugging : no es necesario apagar el computador para conectar cualquier
periférico, es decir conectado
en caliente.
USB: Bus serie universal, tecnología de conexión.
IEEE: Instituto de Ingenieros Eléctricos y Electrónicos.
FIREWIRE: estándar de conexión especificado por Apple.
I-LINK: estándar de conexión especificado por Sony.
DRIVERS: Programas o software, que es capaz de controlar un dispositivo, para
su correcto funcionamiento.
HUBS: dispositivo que permite la conexión de otros dispositivos a la vez, dado
por sus numerosas entradas o puertas.
BUS: Circuito de interconexión eléctrica para transmitir
información.
BYTE: Conjunto de 8 bits. Representa un carácter en lenguaje binario.
BIT: Dígito binario, unidad mínima de información de los dos estados 0/1. Abreviación
de Binary Digit que puede ser 0 o 1. Es la unidad básica de almacenamiento y
proceso de una computadora. 8 bits = 1 byte.
FIRMWARE: Conjunto de programas de sólo lectura que contienen el algoritmo
para una función específica. Algoritmo o pequeño programa de bajo nivel grabado
en un EEPROM para uso del procesador. También se llama Microcode.
INTERFASE: Circuitos físicos (hardware) o lógicos (software) que manejan,
traducen y acoplan la información de forma tal que sea entendible para dos sistemas
diferentes
IRQ: Canal de interrupción. Línea directa entre el microprocesador y la tarjeta
periférica para que ésta solicite atención del CPU.
ISA: Arquitectura de 16 bits para tarjetas y dispositivos
PROTOCOLO: Conjunto de reglas establecidas para fijar la forma en que se realizan
las transacciones.
TOPOLOGÍA: Descripción de las conexiones físicas de la red, el cableado y la
forma en que éste se interconecta. |