El chip TMDS falla, pero funciona la conexión directa a FPGA

Hemos estado intentando hacer algunos gráficos a través de HDMI usando un FPGA. He construido una placa que tiene dos conexiones HDMI. Uno de estos vincula las líneas de video requeridas directamente al FPGA. La segunda conexión HDMI está conectada a un chip TMDS, el TMDS141 de Texas Instruments, y luego a la FPGA.

Logramos obtener video de 720p de nuestra conexión FPGA directa, lo que parece bastante bueno. Sin embargo, sería bueno usar el chip de almacenamiento en búfer TMDS para obtener una conexión más confiable y resoluciones más altas. Lamentablemente, la conexión TMDS parece no funcionar.

He tenido bastantes problemas para analizar lo que está mal. No tengo ningún punto de prueba, el paquete de chips es incómodo y la velocidad de HDMI es demasiado rápida para cualquier analizador lógico al que tenga acceso. Me pregunto dónde me he equivocado.

Aquí está el esquema (Admito que no es el mejor, soy un principiante):

ingrese la descripción de la imagen aquí

Y aquí hay un primer plano del TMDS en la pizarra. Puedes ver dos enchufes FFC. El de la derecha hace video HDMI a través del chip TMDS en el centro. El de arriba se conecta directamente a la FPGA.

ingrese la descripción de la imagen aquí

La conexión directa se ve así:

ingrese la descripción de la imagen aquí

Las partes relevantes de FPGA se ven así:

ingrese la descripción de la imagen aquí

Algunos de los pensamientos sobre esto son:

  1. El chip está al revés. Creo que el punto está en el lugar correcto: es la esquina donde está el pin 1. Pero tal vez me equivoqué; no estoy seguro de cómo probar eso.
  2. El paquete no se soldó a la derecha. Lo horneé con un poco de pasta de soldadura, luego pasé por encima de las uniones con fundente, un poco más de soldadura y mi hierro. Todas las conexiones se ven bien por lo que puedo decir, pero es difícil de probar. Nuevamente, no estoy seguro de cómo.
  3. Temporización y valores de resistencia/límite. Tal vez estoy un poco fuera de lugar y demasiado arrogante cuando se trata de obtener la precisión. Esto es algo de alta velocidad después de todo.
  4. Los caminos diferenciales son demasiado diferentes. Verifiqué esto en KiCAD y el conector HDMI normal funciona, así que dudo que sea eso.
  5. Algo más debe suceder con la señal TMDS que sale del FPGA. Necesito consultar con mi colega FPGA, pero usar la misma señal para las salidas HDMI directas y del chip TMDS puede no ser correcto.
  6. El FPGA no se soldó correctamente cuando se horneó. Quiero decir, usamos diferentes pines en el FPGA para cada salida HDMI (en teoría, podríamos tener dos señales saliendo de esta cosa), por lo que podría ser que una conexión no funcionó.

A veces, cuando conecto un monitor, obtenemos una señal, pero el monitor afirma que no puede decodificarla, usarla o mostrar nada de otra manera. A veces no recibo ese mensaje, pero permanece 'encendido': una pequeña luz verde y sin modo de suspensión. En otras ocasiones dice que no hay señal y simplemente se va a dormir. ¿Suena como una conexión suelta quizás? Pero habría pensado que habría logrado obtener al menos algo en la pantalla. ¿Quizás es ruido? Pero entonces, seguramente nuestra conexión directa no hubiera funcionado.

Realmente, estoy un poco atascado sobre dónde ir a continuación y cómo obtener más información para diagnosticar el problema. Puede que tenga que rediseñar otra placa con más puntos de prueba.

Estoy un poco fuera de mi liga aquí. Cualquier ayuda en absoluto sería grande. Sé que tendré que volver a la mesa de dibujo en algún momento, pero está bien. Espero haber hecho algo tonto y que sea una solución fácil.

El TMDS141 parece un repetidor y no un búfer de salida. Las entradas del TMDS141 ya se comportan como un receptor HDMI (incluida la terminación del receptor incorporado) y no deberían funcionar directamente con los niveles lógicos del FPGA. Básicamente, las entradas a TMDS141 deben tratarse como otro conector HDMI, con todas las tapas seriales y/o resistencias requeridas. Todo el propósito de ese chip es repetir HDMI entre placas dentro del televisor, etc.
¿El otro conector HDMI se maneja de manera similar? ¿Por qué los pines que no deben estar conectados a tierra están conectados a tierra? ¿Por qué la carcasa del conector no está conectada a tierra sino flotando? @Vlad de qué condensadores en serie está hablando, HDMI no usa tapas en serie.
@Justme No soy un experto aquí, pero mirando el Vidor 4K como referencia, hay tapas de 100nF en serie con líneas hdmi. Algunos otros diseños que busqué rápidamente en Google también hablan sobre el acoplamiento de CA y mencionan los mismos límites de 100nF y algunos menús desplegables.
@Justme Aunque ahora veo que el HDMI está acoplado a CC por diseño, y está en la especificación.
Hola. Gracias por las respuestas allí. Que yo sepa, no quedan pines flotando. Todos los pines que no se requieren para video HDMI simple están conectados a tierra. La carcasa del conector no está conectada a tierra. Tuve la tentación de hacerlo, pero decidí no hacerlo. El conector HDMI directo se maneja de la misma manera. Es un poco más simple, no tiene líneas I2C, estas están conectadas a tierra. Agregará la imagen a la pregunta.
@Oni Mi punto era que si no usa algunos pines, a veces es incorrecto conectarlos a tierra, si se supone que no deben conectarse a tierra cuando no se usan. ¿Hay incluso condensadores de derivación para el chip TMDS? Además, dado que la distribución de pines no es para el conector HDMI, sino para el conector FFC, ahora tiene una distribución de pines subóptima, ya que ahora un par diferencial no se maneja como un par diferencial, lo que podría provocar una falta de coincidencia de impedancia. Incluso funciona, los cables de diferentes pares se manejan como un par, lo que podría causar demasiada diafonía entre pares.
Hola. Gracias por la aclaración. Si hubiera un problema con el FFC o los pares diferenciales, pensaría que afectarían a la segunda conexión HDMI directa, pero esta conexión está perfectamente bien y transmite video con éxito. Sospecho firmemente que el problema es cómo conecté el chip TMDS.
El hecho de que su conexión directa funcione sugiere que, salvo un error de cableado, no son los pares de alta velocidad. El HPD se envía desde el dispositivo aguas abajo, por lo que conectarlo a tierra es una mala idea. CEC es un protocolo de un solo cable al que probablemente tampoco le guste estar conectado a tierra.
Hola. Gracias por la respuesta. Bien-o. Definitivamente es algo con lo que puedo trabajar: hay una buena posibilidad de que pueda dejarlos flotando o desconectados de cualquier cosa en el tablero y ver si funciona. Salud. Sin embargo, debo decir que el CEC y el HPD también están conectados a tierra en la conexión directa.

Respuestas (1)

¿Puede FPGA controlar directamente TMDS141? Quiero decir, ¿cuáles son las configuraciones de pines de FPGA, TMDS? ¿LVDS? LMC? Si no es TMDS puro, entonces necesita condensadores de acoplamiento de CA en el medio y no olvide agregar resistencias pullup en el lado del controlador (lado FPGA en su diseño).