RGB zu LVDS Converter (VHDL-Code) Wo ist der Fehler?

OP #6186535
Lesenswert?

Hallo zusammen

Ich bin derzeit daran, einen RGB zu LVDS Konverter mittels FPGA zu 
entwickeln.

Dazu habe ich mir bereits eine HW gebaut, an welcher ein Display hängt.
Derzeit bin ich daran, das ganze mit einem Lattive FPGA umzusetzen.

Anbei der VHDL-Code.

Leider funktioniert das ganze noch nicht so wie es sollte.
Auf dem Display wird nichts angezeigt.
Ich habe ebenfalls einen RGB zu LVDS konverter von TI auf dem Board (zu 
Referenzzwecken) an diesem funktioniert das Display. FPGA und dieser 
zweite Chip erhalten beide die selben RGB Daten.

Die LVDS-Pegel stimmen nun (dank einem anderen Thread).
Ich habe DE, VSYNC, HSYNC einmal auf zwei alternative Ports mit LEDs 
herausgeführt. Das toggelt wie es soll. Damit habe ich geprüft, ob die 
Signale auch beim FPGA ankommen und nich evtl. ein Lötfehler vorliegt.

Dass DE, VSYNC und HSYNC stimmen müssen ist eine tatsache, denn 
ansonsten würde das Display auch am zweiten Chip nicht funktionieren.

Folglich muss der Fehler also irgendwo beim FPGA liegen.

Was ich bisher bereits gemacht habe:

1) gleicher Code, jedoch mit 80MHz und einer LVDS-Leitung zusammen mit 
einem MachXO3 Eval board un einem ANDEREN Display erfolgreich am laufen

2) code wie im Anhang mit eigenem Board und neuem Display. Dabei 
Dual-LVDS und 40MHz Clock. -> funktioniert nicht

Das Display bleibt schwarz.

Mit meinem Equipment konnte ich die 40MHz am Clock-Ausgang prüfen. Diese 
sind vorhanden. Ebenfalls konnte ich prüfen, dass an allen anderen 
LVDS-Paaren signale anliegen (da diese zu hochfrequent sind sehe ich die 
einzelnen Bits nicht mehr. Nur ob etwas anliegt)


Nun frage ich mich, ob jemand eine Idee hätte, wo noch zu suchen wäre?
Die Simulation zeigt eigentlich schön, dass die Signale (Meiner Meinung 
nach) stimmen sollten. Auch DE kommt regelmässig, sowie VSYNC und HSYNC.

Danke für eure Inputs!
Angehängte Dateien:
Gast #6187898
Lesenswert?

HSYNC sollte doch nur einmal pro Pixelzeile einen Puls machen und VSYNC 
entsprechend einmal pro Bild, also bei 50 Hz Framerate alle 20 ms.
In deiner Simulation wackelt VSYNC bei jedem Pixel.

Hier ist das mal etwas beschrieben:
https://www.nxp.com/wcm_documents/techzones/microcontrollers-techzone/Presentations/graphics.lcd.technologies.pdf

Welches Display und welche Bildauflösung willst Du verwenden?

Duke

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