zerkman / zhdmi

A complete HDMI transmitter implementation in VHDL
GNU General Public License v3.0
19 stars 2 forks source link

This code have bch error. #1

Open AndyDengChina opened 6 months ago

AndyDengChina commented 6 months ago

This code have bch error.

zerkman commented 6 months ago

Are you using Vivado ? Which FPGA are you targeting ?

Please give the steps you followed to reproduce that error.

AndyDengChina commented 6 months ago

Thank you for your reply,

FPGA : ARTIX7 XCA7A35T-2FGG484C VIVADO 2023.1 HDMI receiving device prompt: ChecksumErrOrBCHParityErr

zerkman commented 6 months ago

Thank you for reporting this. I must find a way to check this myself and try and fix this.

zerkman commented 1 day ago

I have performed various checks in the BCH and parity encoding, and I did not find any evident error. The different users are not reporting any similar errors. However, I have recently encountered an issue on one specific board, whose HDMI output has part of its TMDS channels' differential pairs swapped for routing optimization reasons. This is equivalent to a logic NOT operation on such channels. This obviously causes signaling errors and also incorrect image display. This could also be the problem with your setup.

The zhdmi demo should display an image like this one: img_0

If nothing is displayed, or if some of the RGB components on the display are incorrect, this could indicate that the HDMI output has some inversion on some channels. The recent commits on this repository enable an INVERTED_TX generic bitfield which allows you to specify which TMDS channels are inverted. With this information the HDMI transmitter is able to invert back the corresponding channel values.

Please let me know if this is helpful to you.