Red de conocimiento informático - Problemas con los teléfonos móviles - La diferencia entre usbhost y usb2.0

La diferencia entre usbhost y usb2.0

Universal Serial Bus (USB) es un estándar de interfaz periférico de computadora simple. Tiene las ventajas de plug-and-play y fácil expansión, y se ha convertido en una interfaz esencial para las computadoras. Este artículo presenta brevemente la función, la topología y el proceso de transmisión de datos del bus USB e ilustra la aplicación práctica de la interfaz USB con ejemplos.

1. Antecedentes de la interfaz USB

En los primeros sistemas informáticos, los puertos serie o paralelos se utilizaban habitualmente para conectar dispositivos periféricos. Cada interfaz necesita ocupar los recursos del sistema de la computadora (como interrupciones, direcciones de E/S, canales DMA, etc.). Tanto los puertos serie como los puertos paralelos son conexiones punto a punto y una interfaz solo admite un dispositivo. Por lo tanto, cada vez que se agrega un nuevo dispositivo, es necesario agregar una tarjeta ISA/EISA o PCI para admitirlo y es necesario reiniciar el sistema para controlar el nuevo dispositivo.

El bus USB es un nuevo estándar de bus serie propuesto conjuntamente por INTEL, DEC, MICROSOFT, IBM y otras empresas. Se utiliza principalmente para la interconexión entre PC y dispositivos periféricos. El bus USB tiene las características de bajo costo, uso simple, soporte plug-and-play y fácil expansión. Ha sido ampliamente utilizado en PC y sistemas integrados.

2. Ventajas y desventajas del bus USB

1. Ventajas

(1) Fácil de usar

Las interfaces del USB Los sistemas utilizados son los mismos y la conexión La línea es sencilla. El sistema puede detectar y configurar automáticamente el dispositivo y admite el intercambio en caliente. Los dispositivos recién agregados no requieren reiniciar el sistema.

(2) Amplia gama de aplicaciones

Los paquetes de datos del sistema USB tienen menos información adicional, una alta utilización del ancho de banda y pueden admitir tanto la transmisión síncrona como la transmisión asíncrona. Un sistema USB puede admitir hasta 127 dispositivos físicos. El ancho de banda de los dispositivos USB puede variar desde unos pocos Kbps hasta varios Mbps (en la versión USB2.0, hasta varios cientos de Mbps). Un sistema USB puede admitir dispositivos de diferentes velocidades al mismo tiempo, como teclado y mouse de baja velocidad, RDSI de alta velocidad, voz, disco de alta velocidad, imagen, etc. (solo la versión USB2.0 admite dispositivos de alta velocidad ). (3) Gran capacidad de corrección de errores

El sistema USB puede gestionar la inserción y extracción del dispositivo en tiempo real. El protocolo USB incluye funciones como gestión de errores de transmisión y recuperación de errores, y maneja errores de transmisión según diferentes tipos de transmisión.

(4) Fuente de alimentación del bus

El bus USB puede proporcionar una fuente de alimentación de voltaje de 5 V/corriente de 100 mA a los dispositivos conectados a él, y puede proporcionar una corriente máxima de 500 mA. Los dispositivos USB también pueden ser autoalimentados.

(5) Bajo costo

El circuito de interfaz USB es simple y fácil de implementar, especialmente para dispositivos de baja velocidad. La interfaz/cable del sistema USB también es relativamente simple y el costo es menor que el puerto serie/puerto paralelo.

2. Desventajas

La tecnología USB aún no está muy madura, especialmente para dispositivos de alta velocidad. Los dispositivos USB existentes en el mercado son relativamente caros, pero a medida que la tecnología USB se vuelva cada vez más madura y los dispositivos se utilicen cada vez más, sus precios disminuirán.

3. Topología del sistema USB

Un sistema USB incluye tres tipos de dispositivos de hardware: HOST USB, DISPOSITIVO USB y HUB USB.

(1) HOST USB

En un sistema USB, si y sólo si existe un HOST USB, el HOST USB tiene las siguientes funciones:

◇ Sistema USB de gestión;

◇ Genera un cuadro de datos cada milisegundo;

◇ Envía una solicitud de configuración para configurar el dispositivo USB;

◇ Responde a errores en; el autobús Gestión y recuperación.

(2) DISPOSITIVO USB

En un sistema USB, el número total de DISPOSITIVOS USB y HUB USB no puede exceder 127.

El DISPOSITIVO USB recibe todos los paquetes de datos en el bus USB y utiliza el campo de dirección del paquete de datos para determinar si el paquete de datos se envía a sí mismo: si la dirección no coincide, simplemente descarta el paquete de datos; si la dirección coincide, lo descarta; responde al USB HOST. Los paquetes de datos se transmiten al USB HOST.

(3) HUB USB

El HUB USB se utiliza para la conexión de expansión del dispositivo y todos los DISPOSITIVOS USB están conectados al puerto HUB USB. Un HOST USB siempre está conectado a un HUB raíz (USB ROOT HUB). USB HUB proporciona corriente de 100 mA a cada uno de sus puertos para uso de dispositivos. Al mismo tiempo, USB HUB puede diagnosticar el funcionamiento del dispositivo mediante los cambios eléctricos del puerto e informar el estado del puerto al USB HOST respondiendo al paquete de datos del USB HOST. En términos generales, la longitud de la conexión entre el dispositivo USB y el HUB USB no supera los 5 m, y la conexión en cascada del sistema USB no puede superar los 5 niveles (incluido el HUB ROOT).

4. Transmisión de datos por bus USB

La estructura de transmisión de datos en el bus USB se muestra en la Figura 2.

Desde una estructura física, el sistema USB es una estructura en estrella; pero desde una estructura lógica, cada dispositivo lógico USB está conectado directamente al HOST USB para la transmisión de datos. En el bus USB, se transmite 1 cuadro de datos cada ms. Cada cuadro de datos puede consistir en el proceso de transmisión de múltiples paquetes de datos. El dispositivo USB puede determinar si debe responder a la transferencia de datos en función de la información de dirección en el paquete de datos. En la versión 1.1 del estándar USB, se especifican 4 métodos de transmisión para adaptarse a diferentes necesidades de transmisión:

(1) Transferencia de control (transferencia de control)

La transferencia de control envía información de solicitud del dispositivo, se utiliza principalmente para leer información de configuración del dispositivo y el estado del dispositivo, configurar la dirección del dispositivo, configurar los atributos del dispositivo, enviar comandos de control y otras funciones. Un dispositivo de velocidad completa puede tener una carga útil máxima de 64 bytes por transferencia de control, mientras que un dispositivo de baja velocidad puede tener una carga útil máxima de sólo 8 bytes por transferencia de control.

2) Transferencia isócrona (transferencia isócrona)

La transferencia isócrona solo es aplicable a dispositivos de velocidad completa/alta velocidad. La transmisión síncrona transmite una vez cada ms, tiene un ancho de banda mayor y se utiliza a menudo en equipos de voz. Las transferencias isócronas pueden tener una carga útil máxima de 1023 bytes por transferencia.

(3) Transferencia interrumpida (transferencia interrumpida)

La transferencia interrumpida se utiliza para respaldar los requisitos de transmisión periódica con una pequeña cantidad de datos. El período de interrupción de la transmisión de dispositivos de velocidad completa puede ser de 1 a 255 ms, mientras que el período de interrupción de la transmisión de dispositivos de baja velocidad es de 10 a 255 ms. Un dispositivo de velocidad completa puede transferir una carga útil máxima de 64 bytes por interrupción, mientras que un dispositivo de baja velocidad puede transferir una carga útil máxima de sólo 8 bytes por interrupción.

(4) Transferencia masiva de datos (transferencia masiva)

La transferencia de datos en bloque es una transferencia de datos aperiódica. Solo los dispositivos de velocidad completa/alta velocidad admiten la transferencia de datos en bloque al mismo tiempo. , si y sólo si la transferencia de datos en bloque se produce sólo cuando el ancho de banda del bus está disponible. Transferencia de datos en bloque La carga útil máxima por transferencia de datos puede ser de 64 bytes.

5. Aplicaciones típicas

Sistemas USB típicos

En el sistema, el monitor, el audio y el módem son todos dispositivos de alta velocidad, y el teclado y El mouse son dispositivos de baja velocidad. La transmisión de datos es:

◇ USB HOST cambia las propiedades de visualización a través de la transmisión de control.

◇ USB HOST envía los datos que se mostrarán a la pantalla mediante transmisión de datos en bloque.

◇ USB HOST cambia las propiedades del teclado y el mouse mediante la transmisión de control.

◇ USB HOST requiere que la entrada del teclado y el mouse se lea en el sistema mediante interrupción de la transmisión.

◇ USB HOST cambia las propiedades de Audio controlando la transmisión.

◇ USB HOST transmite datos con el dispositivo de Audio mediante transmisión sincrónica.

◇ USB HOST cambia las propiedades del módem mediante la transmisión de control.

◇ USB HOST transmite datos con el dispositivo Módem mediante transmisión de datos en bloque.

Diseño de software y hardware de una interfaz USB HOST

Hay muchos dispositivos de interfaz USB proporcionados por muchas empresas en el mercado, como PDIUSBD11/PDIUSBD12 de PHILIPS, MSM60581 de OKI y USBN9602 de NATIONAL. , USS-820/USS-620 de LUCENT, SL11 de SCANLOGIC, etc.

También hay muchos procesadores con interfaces USB, como el EZ-USB de CYPRESS, el AM186CC de AMD, el AT43320 de ATMEL, el PPC823/PPC850 de MOTOROLA, etc. El siguiente es un ejemplo del uso del dispositivo de interfaz USB SL11HT de SCANLOGIC para implementar un HOST USB integrado.

1.Características del SL11HT

◇ Cumple con el estándar USB1.1

◇ Admite transmisión de velocidad completa/baja velocidad

◇ Admite host/Dos modos en el lado del dispositivo;

◇ Fuente de alimentación de 3,3/5,0 V

◇ El chip contiene 256 bytes de SRAM; >◇ Entrada de oscilador de cristal de 48MHz.

Cuando se utiliza SL11HT como interfaz HOST USB, el sistema tiene los siguientes requisitos:

◇ El número de fotogramas SOF lo mantiene el sistema

; ◇ CRC5 es generado por el código de verificación del sistema

◇ Se requiere que la latencia de interrupción del sistema sea inferior a 1,5 μs.

2.Diagrama de bloques del hardware de la interfaz SL11HT

La Figura 4 simplemente muestra el diagrama de bloques del uso de SL11HT para expandir la interfaz USB. Para diagramas de conexión de hardware más detallados, consulte las referencias 2 y 3. .

3. Estructura del software USB HOST

La estructura del software USB HOST se muestra en la Figura 5.

(1) Controlador de interfaz USB

El controlador de interfaz USB debe implementar las siguientes funciones:

◇ Inicialización de dispositivos de interfaz USB

<; p >◇ Calcule la suma de verificación del paquete de datos de la capa superior y envíe el paquete de datos de la capa superior;

◇ Envíe la trama SOF

◇ Reciba los datos transmitidos desde la interfaz USB; comprobar la validez de los datos

◇ Envía los datos recibidos a la capa superior.

(2) Controlador de pila de protocolo USB

El controlador de pila de protocolo USB debe implementar las siguientes funciones:

◇ Proporcionar una interfaz con el controlador del dispositivo <; /p>

p>

◇ Lea y analice el descriptor del dispositivo USB y configure el descriptor

◇ Asigne una dirección única al dispositivo USB

◇ Usar; la configuración predeterminada para configurar el dispositivo;

◇ Admite solicitudes de comando USB básicas

◇ Conecte el dispositivo y el controlador correspondiente

◇ Reenvíe el paquete de datos; del controlador del dispositivo.

(3) Controlador de dispositivo

El controlador de dispositivo debe implementar las siguientes funciones:

◇ Proporcionar una interfaz con el programa de aplicación

<; p> ◇ Leer y analizar el descriptor específico del dispositivo USB para obtener el canal de transmisión proporcionado por el dispositivo;

◇ Enviar solicitudes de comando USB básicas y específicas del dispositivo

◇; proporcionado por el dispositivo El canal de transmisión realiza la transmisión de datos con el dispositivo;

◇ Solicita la reconfiguración del dispositivo a través de comandos USB.