Diagrama de ojo deficiente, ¿dónde empezar a buscar?

9

Estoy tratando de depurar una tarjeta ethernet de 100Mbit y me estoy topando con un problema que tengo problemas para resolver.

Este es el diagrama de ojo para el par de transmisión. El par de recepción es muy similar. Es un PHY LAN8700, y tengo la interfaz MII desactivada, por lo que el PHY está transmitiendo secuencias de código IDLE. Se fuerza en 100Mbit / FDX según la hoja de datos. 100Mbit / HDX es idéntico.

Corrección: el diseño está utilizando la fuente interna de 1.8V de LAN8700 para alimentar su red VDD_CORE; Debo haber estado confundiendo la fuente lógica de 1.8V con la fuente VDD_CORE en mi descripción anterior. Me parece que el ruido de la fuente de alimentación no es una probabilidad tan alta, ya que los niveles alto, cero y bajo son en realidad bastante decentes. Es decir, el ojo no está "aplastado". El hecho de que todas las violaciones parecen muy buenas transiciones, solo "sesgadas" a tiempo me hace pensar que el problema radica en el cristal o en el suministro del controlador de cristal / PLL en la PHY.

Si dejo que el diagrama del ojo se ejecute (aproximadamente 15 minutos), las violaciones en la máscara se "rellenan" de manera que las violaciones en blanco que ves en la imagen se conviertan en formas de chevron blanco (>) en los lados derechos del azul mascaras Esto me diría que los errores de tiempo se distribuyen de forma más o menos aleatoria en lugar de algún tipo de ruido discreto que tira del tiempo de una cantidad exacta.

El cristal que está usando la PHY tiene una especificación de 30 ppm que está bien dentro de la especificación de 80 ppm de 100 ppm, e incluso dentro de la especificación recomendada de 50 ppm que especifica la PHY. Estoy usando condensadores de carga que coinciden con lo que el cristal está buscando, y está muy cerca de lo que LAN8700 especifica como su capacidad nominal.

Antes de deshabilitar la interfaz MII vería errores de trama (como se informó en el programa ifconfig de mi Linux). No hay errores si fuerzo el enlace a 10Mbit.

Una de las cosas más extrañas que he notado es que si configuro el alcance para activar la señal RX_ER (error de recepción) de la PHY a la MAC, nunca señala un error a pesar de que los errores de trama se acumulan en la Informes de MAC. Ahora, al leer la hoja de datos de PHY, queda claro que en realidad hay muy pocas situaciones en las que RX_ER afirmaría, pero me resulta muy difícil creer que con un diagrama de ojo como el que veo los errores en realidad están entre PHY y el MAC.

Entiendo lo básico de los diagramas oculares, pero estoy viendo algunos de los carteles más experimentados, con la esperanza de que puedan compartir algunas de sus experiencias en la traducción de violaciones de la máscara de patrón ocular específicas a fuentes probables.

(edición: fuente de suministro VDD_CORE corregida y esquemática agregada)

    
pregunta akohlsmith

2 respuestas

8

Veo muchas cosas que podrían causar los problemas del diagrama ocular que usted ve. No hay una "pistola humeante", pero hay algunas cosas que podrían arruinar las cosas.

Usted tiene 0.01 uF de tapas (C211, C212, C214, y C217) en los pines no utilizados del RJ-45 y las tomas centrales del transformador. Recomiendo poner en cortocircuito esas gorras. El uso de gorras aquí es inusual y podría causar problemas más adelante, aunque es poco probable que estén causando los problemas del diagrama ocular que está teniendo. Como puedo decir, la única razón para tener estos límites es como un esquema de bloqueo de CC para cuando alguien está usando un esquema de alimentación a través de Ethernet no estándar. El POE estándar no necesita esta protección, y como el estándar de POE ahora es "antiguo", es poco probable que encuentre un equipo que no sea de POE.

Elimine C19 y C25, 10 pF en las resistencias de terminación de Ethernet. Estos son demasiado pequeños y están muy lejos de cualquier cosa crítica para ser de alguna utilidad.

Cambie C18 y C24, tapas de 0.01 uF en las resistencias de terminación de Ethernet, a por lo menos 0.1 uF. Incluso podrías probar 4.7 uF. El "riel de alimentación" que estos límites están desacoplando debe ser bastante estable, y podría haber una sorprendente cantidad de corriente que fluye a través de las resistencias de terminación. Si L4 / L5 restringe demasiado el flujo de corriente, y los límites no están disminuyendo, entonces podría haber errores de datos.

Elimine C16, C17, C22 y C23: todos los límites de 10 pF en las líneas de datos de Ethernet. La única razón para esto es el filtrado de EMI y no son necesarios para la depuración. Retírelos para asegurarse de que no estén causando otros problemas. Siempre puedes devolverlos más tarde si lo necesitas.

Cambie C20 y C21, tapas de 0.022 uF en los grifos centrales del transformador, a por lo menos 0.1 uF. 1.0 uF puede ser bueno intentarlo también. Esta línea podría estar cayendo demasiado dada la resistencia de 10 ohmios y L4 / L5. Incluso podría hacer un cortocircuito a VCC para la depuración. La única razón para la resistencia (y en menor medida la tapa) es para el filtrado EMI. Cuando vuelva a girar el PCB, debe conectar las resistencias de 10 ohmios directamente a VDD33 en lugar de pasar por L4 / L5. La resistencia de 10 ohmios y L4 / L5 son redundantes. Al ir directamente a VDD33, puede evitar que se inyecte ruido en sus resistencias de terminación y también facilita la optimización del filtrado en esta área.

Necesitará más tapas en el pin VDDIO, o cortocircuitar la cuenta. Este pin está suministrando energía a muchos pines de E / S y tendrá mucha corriente. Si la corriente está muerta de hambre debido al filtro LC (perla + 0,4 uF), habrá mucho ruido de conmutación simultánea en los pines de E / S. Eso realmente causará más ruido que lo que estás filtrando con esa cuenta. Incluso es posible que este ruido llegue a las salidas de Ethernet.

Verifique que tenga los pin-outs en su transformador correctos. Si bien es poco probable, es posible tener el toque central y otro pin intercambiado. Vale la pena pasar 5 minutos verificando cosas. En ese caso, verifique también los pin-outs del LAN8700.

Si nada de eso mejora las cosas, entonces obtén un oscilador de lata de metal de 25 MHz y reemplaza tu cristal. He visto circuitos de cristal que hacen cosas raras, así que, solo por tranquilidad, vale la pena piratear tu placa prototipo para asegurarte de que tu clk sea estable.

Eso es todo lo que veo en este momento. Espero que esto ayude!

    
respondido por el user3624
1

Mis 2 centavos: Estoy de acuerdo con tu recomendación de elegir el oscilador de cristal correcto para 25 MHz. Usé el DP83865DVH de NSC en modo de 1 Gbit y cuando se puso en un estado no estable en un cable de prueba largo ("especial", de mala calidad, 5 cat y cerca de 110 m), el reemplazo del XTAL marcó una gran diferencia. El circuito se volvió muy estable y el precio de tal "mejora" es de ~ 10 centavos solamente.

    
respondido por el Konstantin

Lea otras preguntas en las etiquetas