formas de señal de datos USB vs TTL

2

Tengo mucha curiosidad por ver cómo se ve una señal USB, pero no pude encontrar ningún artículo ni gráfico relacionados. ¿Es posible ver las formas de las señales de datos USB y TTL utilizando un osciloscopio? ¿Serán ondas cuadradas y se verán muy similares?

Mi pregunta puede sonar un poco rara, pero siempre leo que el USB es muy complicado de entender, así que al menos esperaba visualizar el cambio en la señal del USB cuando se convierte a RS232. Las representaciones gráficas en el dominio del tiempo. Tiempo vs amplitud.

Tengo muchas preguntas en mi mente, como por ejemplo: "¿Son los datos serie USB menos ruidosos que el RS232?" (bajo las mismas circunstancias con RS232) Realmente quiero ver cómo se ven los datos USB y TTL.

Encontré un buen artículo con formas de onda de RS232 y TTL. Aquí parece que TTL es una forma de onda más ruidosa que RS232 que se convierte por MAX232.

Pero todavía no pude encontrar información sobre USB.

    
pregunta user16307

4 respuestas

11

USB - Bus serie universal - Señalización (WikiPedia)

El problema real con USB no está en la señalización física. Supongamos que captura una forma de onda con un alcance justo después de conectar el dispositivo. Es probable que sea parte de un paquete de instalación que es parte de una transferencia de control que es parte de una solicitud de descriptor que es parte de la enumeración del dispositivo, y eso es solo para que el host reconozca su dispositivo. La transferencia de datos real aún no ha comenzado, y se integrará dentro de transferencias (de 4 tipos diferentes) a algún punto final que pertenece a alguna interfaz que implementa alguna clase de dispositivo, una estándar como HID o completamente personalizada. Es muy parecido a tratar de entender HTTP observando la señal de Ethernet con un alcance. De hecho, es probable que tenga dificultades para encontrar sus datos UART incluso en un registro de sniffer USB (a diferencia de un sniffer TCP / IP, un sniffer USB puede no conocer el protocolo exacto que usa FTDI para transferir datos). p>

Junto con el excelente USB in a Nutshell tutorial ( versión HTML ), encontré este libro es una excelente referencia si realmente desea un conocimiento práctico de USB, por ejemplo crea tus propios dispositivos USB.

    
respondido por el Thorn
6

Eléctricamente, la señalización USB ocurre en serie sobre un solo par diferencial (D + y D-). Creo que la complejidad a la que te estás refiriendo es a nivel de protocolo. ¿Ha tenido la oportunidad de leer USB en una cáscara de nuez ? Es una cartilla decente.

    
respondido por el vicatcu
3

Mirar las señales USB te dirá muy cerca de nada. La correspondencia entre las señales de salida TTL de un convertidor de USB a TTL y la señal USB correspondiente que produjo la señal TTL será absoluta y completamente inobjetiva para el ojo / cerebro en tiempo real y se podrá determinar a partir de una grabación solo por un experto que estaba absolutamente empapado en el tema.

Se pueden encontrar algunos diagramas oculares para variantes de USB a través de una búsqueda de imágenes de Google .

Aquí están los diagramas de ojo para el nuevo sistema USB 3 tal como fue producido por un Le Croy QPHY Analizador USB3

Noséquésistema los diagramas de los ojos aquí son para pero dan excelentes ilustraciones de cambios en la forma y amplitud de los ojos con velocidades de datos crecientes.

Una muestra:

    
respondido por el Russell McMahon
2

Sí, las señales USB son menos ruidosas.

La principal afirmación de USB de la fama es que es diferencial. En lugar de tener una señal referenciada a tierra (esto se denomina "extremo único"), hay dos señales referenciadas entre sí. Cuando uno es alto, el otro es bajo. Esto mantiene el circuito de circuito muy pequeño, lo que dificulta el acoplamiento inductivo. Dado que las líneas están cercanas entre sí, cualquier cosa que se junte capacitivamente se unirá a ambas líneas; por lo tanto, cualquier ruido inyectado en una línea también se inyecta en la otra línea, y el receptor diferencial puede rechazarlo (la capacidad del receptor para hacerlo se denomina "rango de rechazo de modo común")

Imagina que tienes dos cables, uno es 5V y el otro es 0V. Ahora digamos que un pico de ruido inyecta un voltio en ambas líneas. Ahora son 6V y 1V. Un receptor de un solo extremo vería 6V como resultado de este ruido. Un receptor diferencial ve que la diferencia entre 6 y 1 es igual a 5 y 0, por lo tanto, no ve ningún ruido.

¿Qué aspecto tiene en un alcance? Si bien el diagrama de ojo de Russell se ve bonito, el diagrama de ojo es más una herramienta de diagnóstico y no un ejemplo de transmisión de datos en el mundo real.

Un diferencial "1" es D + alto y D- bajo. Un diferencial "0" es el inverso, D + es bajo y D- es alto. Entonces, si lo conectas a un alcance, verás que los dos trazos se mueven uno frente al otro; cuando D + se pone alto, D- comenzará a bajar simultáneamente, y viceversa.

Más allá de este punto, se vuelve terriblemente complicado. Por ejemplo, USB es un protocolo NRZI. En lugar de un diferencial 1 que representa un bit "1" de la PC, un bit "1" de la PC se codifica como una transición . Entonces, un bit 1 sería una transición diferencial 1 a un diferencial 0, o una transición diff0 a diff1. Mientras tanto, un bit "0" se codifica como sin transición . Estas transiciones son importantes porque el reloj del USB está implícito en los datos, por lo tanto, el protocolo USB requiere relleno de bits (el acto de insertar 1 "s" falsos "en el flujo de datos) para garantizar que se produzca una transición con la frecuencia suficiente para que los relojes puedan permanecer. sincronizados entre sí. Sin el relleno de bits, una cadena muy larga de 0 podría resultar en una pérdida de sincronización; el host podría enviar 500 "0" y el dispositivo recibe 499 o 501 "0" s.

RS232 también tiene un reloj implícito en los datos. Sin embargo, en lugar de rellenar los bits, los bits de inicio y finalización garantizarán que se produzca una transición de vez en cuando.

Además del relleno de bits, tiene que preocuparse por el resto del protocolo de software. RS232 es prácticamente un estándar eléctrico que determina cómo usted señaliza 1 y 0, y deja interpretar esos 1s y 0s hasta los dispositivos. No hay encabezados, por ejemplo. USB es bastante diferente. Una pequeña parte del tráfico USB no es su información, sino su "administración". Por ejemplo, un paquete de datos tiene un CRC de 16 bits de los datos que está enviando; este CRC se utilizará para volver a intentar cualquier transferencia no isócrona que tenga errores. Incluso hay otros paquetes que no tienen ninguna relación con el hecho de que su dispositivo circule por el cable, por ejemplo, el paquete de sincronización que se envía al inicio de cada microframe.

Incluso el mero hecho de enviar datos a la PC requiere primero que la PC envíe un token de IN al dispositivo. La PC es propietaria del cable y no se permite que el dispositivo envíe ningún dato hasta que la PC lo solicite. Este token IN es otro ejemplo de tráfico adicional en la línea de datos que requiere USB y RS232 no.

    
respondido por el ajs410

Lea otras preguntas en las etiquetas