¿Cuál es la estructura general del controlador del controlador de host USB?
He escrito algunos artículos sobre SPI/I2C/RS-485 antes. Un amigo dejó un mensaje con la esperanza de compartir algún resumen de USB. Hoy lo solucionaré desde el nivel estándar del sistema. A ver si a alguno de tus amigos le gusta. Primero solucionémoslo desde el nivel del sistema. Cuando se trata de estudio personal, estoy acostumbrado a obtener primero una visión general y luego profundizar gradualmente en los detalles de interés.
USB es una pila de protocolos relativamente compleja. Si encuentra algún error en el artículo, corríjalo.
Nota: Este artículo se refiere principalmente al Capítulo 4 de la especificación USB2.0 y resume algunos puntos del estándar que personalmente creo que son importantes de la forma más clara posible. Siento que muchos amigos pueden resistirse un poco a leer los estándares del inglés, así que esta es una de las razones por las que compilé este artículo, espero que sea útil para mis amigos.
Topología de bus
Hablando de topología de bus, todos deben haber visto esta imagen:
El estándar USB dice que la topología de bus USB es una forma de estrella jerárquica. Estructura, algunos puntos clave se extienden de este diagrama de topología:
La llamada forma de estrella es para Hub. Debajo de un Hub, se pueden colgar Hubs o dispositivos, y la capa superior es el host USB del controlador de host USB. Los servidores de control generalmente van acompañados de un concentrador raíz. En teoría, la conexión en cascada de concentradores puede permitir conectar hasta 127 dispositivos a un máximo de 5 capas de buses. La conexión en cascada del concentrador sigue la compatibilidad con versiones anteriores y se puede conectar un host USB2.0 o un concentrador de alta velocidad a un concentrador USB1.1. Una estructura en estrella jerárquica USB tiene un solo cable controlador de host USB. La longitud máxima de la estructura en estrella de 7 capas no excede los 5 metros. Representa un bus USB. Una estructura en estrella jerárquica USB tiene un solo cable controlador de host USB. Un controlador de host USB, pero eso no significa que una computadora tenga solo un bus USB. Por ejemplo, mi computadora tiene dos controladores de host USB Root Hub, que se pueden ver desde el Administrador de dispositivos de Windows:
El. La segunda capa del diagrama de topología de 7 capas solo dibuja un concentrador, lo que no significa que la segunda capa real solo pueda tener un concentrador. Sin embargo, este diagrama no puede mostrar una relación de conexión de bus más detallada. Utilice el software USBTrace para echar un vistazo. :
El primer bus tiene 4 puertos y el concentrador raíz del segundo bus tiene 18 puertos, de los cuales 8, 9 y 10 están ocupados por dispositivos USB dentro de la computadora. Mi computadora portátil tiene dos interfaces USB externas. Al insertar el disco USB en estos dos puertos respectivamente y luego usar la detección USBTrace, se puede inferir que estos dos puertos pertenecen al puerto del segundo bus
3 y. Puerto 4:
Entonces, ¿cómo es el Hub? Por ejemplo, el siguiente es un diagrama esquemático de un concentrador USB de 7 puertos, derivado del estándar USB2.0:
Interfaz física
Descripción general eléctrica
USB transmite señales a través de un cable de cuatro hilos y una fuente de alimentación. La señalización se produce en dos cables en cada segmento de red punto a punto.
VBUS/GND: Alimentación D /D-: Línea de señal diferencial USB. Tiene tres velocidades de datos:
Modo de alta velocidad: 480 Mb/s, a menudo abreviado como modo HS modo de velocidad completa modo de velocidad completa: 12 Mb/s, a menudo abreviado como modo FS modo de baja velocidad baja -velocidad: 1,5 Mb/s, a menudo abreviado como modo LS. En cuanto al modo de codificación de datos, lo ignoraremos aquí.
Descripción general mecánica
La parte mecánica define principalmente qué tamaño de conector utiliza el USB, la definición de color y el número de cable del cable. La resistencia a la tracción del cable, etc. Estandarizar principalmente a partir de los siguientes aspectos:
Especificaciones del tipo de conector principal, dividido principalmente en series A y B. Se definen los encabezados masculino y femenino.
Especificaciones de cables. Los cables de alta velocidad/velocidad máxima constan de pares trenzados de señal, VBUS, GND y blindaje general. Cuando se utilizan cables de alta velocidad/velocidad completa con dispositivos de baja velocidad, el cable debe cumplir con todos los requisitos del dispositivo de baja velocidad. Los dispositivos de baja velocidad no podrán utilizar pares trenzados. El cable de par trenzado puede resistir eficazmente el ruido del modo ***.
Dimensiones mecánicas del conector y requisitos de materiales.
Especificaciones de enchufes de la serie A/B, especificaciones de enchufes de la serie A/B, tamaño del cable y especificaciones de materiales, no los enumeraré aquí, solo sepa dónde buscar. Prácticas de conexión a tierra estándar de cumplimiento eléctrico, mecánico y ambiental, el blindaje debe soldarse al punto de tierra de la carcasa del enchufe. Especificaciones de tamaño de PCB del zócalo. Por lo tanto, si necesita dibujar conectores, puede consultar las dimensiones en la Sección 6.9. Especificación del color del núcleo del cable de posición del logotipo. Especificaciones de tamaño del logotipo USB. Descripción general del protocolo
El USB adopta el modo de comunicación maestro-esclavo y es un bus de sondeo. Todas las transferencias de datos son iniciadas por el controlador del host. Esta es la parte más difícil del estándar USB, por lo que no la resumiré aquí.
Diseño robusto
El estándar ha diseñado los siguientes aspectos relacionados con la robustez del protocolo, también conocida como robustez:
Desde la perspectiva de la integridad de la señal: Utilice controladores diferenciales , receptores diferenciales y blindaje de cables de señal. La estrategia del transceptor diferencial es principalmente efectiva para resistir la interferencia del modo ***, y la capa protectora tiene dos funciones: primero, reduce efectivamente la interferencia del cable USB al mundo exterior a través de ondas de radio; segundo, puede bloquear efectivamente la interferencia inalámbrica externa; La interferencia USB de líneas de señal y líneas eléctricas. Verificación de mensajes CRC. Si hay un error en los datos del mensaje, se puede detectar y manejar en consecuencia. Detección de conexión en caliente y gestión de configuración del sistema de los dispositivos de hardware correspondientes. Este diseño ayuda a mejorar la experiencia del usuario. Los usuarios pueden enchufar y desconectar sin tener que apagar el teléfono. Utilice la detección de tiempo de espera de pérdida o corrupción de datos para implementar un mecanismo de autorrecuperación de comunicación para mejorar la solidez del protocolo. Control de flujo de transmisión de datos para garantizar la sincronización y la gestión del búfer de hardware de envío y recepción subyacente. Separación del canal de datos y del canal de control