LVDS aus RGB Daten generieren

Gast #6037326
Lesenswert?

Hallo zusammen

Ich habe hier ein LCMXO3L-6900-C-EVN Board von Lattice.
Nun möchte ich ein HDMI Signal mittels eines entsprechenden Receivers 
(z.B. ADV7610) in RGB Daten umwandeln. Diese sample ich dann in mein 
FPGA.

Der Pixelclock bei HDMI mit 1920x1080 @ 60Hz liegt glaube ich bei 
165MHz.
Dies sollte für das Board machbar sein (glaube ich).

Nun frage ich mich, ob es mit diesem FPGA möglich ist, aus den internen 
RGB-Daten wieder LVDS-Signale für ein geeignetes Display zu generieren.

Bei besagtem Chip:
https://www.digikey.com/product-detail/en/lattice-semiconductor-corporation/LCMXO3L-6900C-5BG256C/220-1886-ND/4740913

Steht da im Datenblatt etwas von Max. Speed. 150MHz (Bild angehängt).
Daher gehe ich mal davon aus, dass ich einen externen RGB->LVDS 
Converter benötigen werde?

Gibt es preisgünstige (<10 USD in 100er Stückzahlen) FPGAs, welche über 
entsprechende Treiber verfügen?

Danke schonmal!
Angehängte Dateien:
(Firma: www.elpra.de) Persönliche Seite #6037358
Lesenswert?

Simon schrieb:
> Der Pixelclock bei HDMI mit 1920x1080 @ 60Hz liegt glaube ich bei
> 165MHz.

Hmmm, in der Regel hat man einen Total Frame (also inkl. Blanking) von 
2200x1125 und kommt dann auf eine Pixelclock von 148.5 MHz.

Simon schrieb:
> Steht da im Datenblatt etwas von Max. Speed. 150MHz (Bild angehängt).
> Daher gehe ich mal davon aus, dass ich einen externen RGB->LVDS
> Converter benötigen werde?

Da muss man immer aufpassen. Auch der MachXO3 hat verschiedene Clock 
Netze und Hard-IPs die jeweils unterschiedliche max. Frequenzen haben.

Eine Uebersicht findest du hier: 
https://www.latticesemi.com/view_document?document_id=50121

Der Primary Clock Tree kann z.B. auf jedenfall 323 MHz, das reicht die 
laessig um die Daten zu verarbeiten (siehe Tabelle 3.21). LVDS gehst du 
dann wieder raus via 7:1 LVDS Outputs. Die koennen da 756 Mb/s DDR, 
sprich mit einer 378 MHz Clock getrieben werden.

Haengt jetzt im Detaild avon ab wie genau du LVDS maesig wieder raus 
moechtest, bzw. was fuer ein Display du drenn treiben willst.

Lange Rede kurzer Sinn: Ich sehe da aktuell noch nicht, dass der MachXO3 
das nicht koennen sollte. Haengt jetzt halt ganz von den Details ab.
#6037361
Lesenswert?

Moin,

Simon schrieb:
> Der Pixelclock bei HDMI mit 1920x1080 @ 60Hz liegt glaube ich bei
> 165MHz.

Ohne jedes Blanking waerst du bei der Aufloesung und Framerate bei 
124.416MHz. Ein gaengiger Takt waere mit ueblichen Blankingzeiten z.b. 
148.5MHz.

Wenn du damit ein LVDS Display (mit z.b. 4 Datenlanes und 1 Clklane) 
treiben willst, musst du im Baustein mit der 7 fachen Pixelclk operieren 
koennen. Also dann 1039.5MHz. Wenn dein LVDS Display ueber mehr 
Datenlanes angeschlossen ist, reduziert sich die Clk. Also bei 2x4 
Datenlaenes waeren es "nurnoch" 519.75MHz.
Sieht aber erstmal deutlich zu schnell aus fuer den Baustein...

Bei Xilinx heisst das Feature IOSERDES, und da gibts eine xapp1064, wo 
das beschrieben wird.

Gruss
WK
Gast #6037383
Lesenswert?

Vielen Dank für eure Antworten.
Ich bin mir aktuell nicht sicher, ob da ein SERDES im Chip ist oder 
nicht.

Habe aber soeben noch gelesen, dass bei Displays üblicherweise TMDS zum 
zug kommt. Was ja im Grunde auch LVDS ist, jedoch mit zusätzlicher 
Kodierung. Fragt sich, ob sich dies ohne grössere Probleme auch noch ins 
FPGA kriegen lässt. Habe da leider noch zu wenig Erfahrungen sammeln 
können um das abschätzen zu können.

Als Alternative könnte ich den TFP410 von TI verwenden, welcher direkt 
aus RGB TMDS macht.

Leider weiss ich aktuell noch nicht, ob das Display LVDS oder TMDS 
benötigt, da dieses noch nicht definiert wurde.
#6037418
Lesenswert?

LVDS geht mit dem MachXO2 (siehe 7:1 gearboxen), TMDS habe ich bisher 
nur mit ECP3 probiert, wuerde ich bei der Pixel-Clock aber mit Vorsicht 
angehen. Wenn kein HDMI-Kabel dazwischen sitzt, koennte es elektrisch 
gehen, aber man sollte vielleicht ein passendes GHz-Oszi+Proben zur Hand 
haben, wenn's doch mal nicht recht zappelt.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren