Forum: FPGA, VHDL & Co. DVI mit CH7301C Verständnisfragen


von Stefan M. (gremlin2000)


Lesenswert?

Hallo,

ich bin gerade dabei den "CH7301C DVI Transmitter Device" von Chrontel 
auf dem ML505 anzusteuern und hätte da ein paar Fragen ob ich das 
Datenblatt richtig verstanden habe.

Angeschlossen an den FPGA sind die Datenleitungen D[11:0], H_SYNC, 
V_SYNC, DE, die Clk Siganle sowie der PIN GPIO1 und RESET.

Das einzige was ich zu Begin machen will ist ein Rotes Bild auf dem 
Bildschrim auszugeben.

Für das Timing habe ich jetzt mal 640x480 verwendet und einen Pixeltakt 
vom 25MHz.

Versteh ich das Diagramm richtig das das H_Sync Signal 64Pixel auf Low 
sein muss und das V_Sync alle 480 Zeilen eine komplette Zeile auf Low 
sein muss?

Für die Werte t1 und t2 steht im Datenblatt das diese min 0,5ns betragen 
müssen. Ich versteh das so das diese Zeit eingehalten werden muss damit 
der CH7301C solange braucht um das Signal auszuwerten und können diese 
Zeiten auch 10ns betragen?

Ist es dann richtig das eine Zeile 640Pixel + 64Pixel(H_Sync) lang ist? 
und ein Bild dann sozusagen 481 Zeilen mit der V_Sync Zeile?

Dem Timing Diagramm entnehme ich das nach dem H_Sync zwei Pixeltakte 
gewartet wird bis das DE Signal auf High geht müssen diese Takte 
eingehalten werden oder können das auch mehr sein? solange die 25MHz 
ausreichen um 60Hz zu übertragen?

Wenn ich jetzt von 640x480 ausgehe und eine Line 704Pixel hat und eine 
V_Sync Zeile dazu kommt hab ich 704x481x60hz = ca 20,3175Mhz muss ich 
nach genau 60 Bildern die Übertragung zum Chip aufhören? oder kann ich 
diese einfach weiterlaufen lassen dann wären das ja mehr als 60Hz

Über Anworten bin ich dankbar denn irgendwie ist mir das ganze noch 
nicht so verständlich :-)

Gruß
Stefan

von SteKu (Gast)


Lesenswert?

Hallo Stefan
ich schreibe gerade meine Diplomarbeit über einen Videoframegrabber ich 
denke ich kann dir da etwas helfen. Ohne das ich jetzt genau den 
Chrontel kenne können ein paar allgemeine Aussagen getroffen werden, die 
das timing von digitalen videosignalen betreffen.
1. Zunächst wird unterschieden zwischen progressiver übertragung (immer 
gesamter frame) und interlaced (jede zweite zeile). Ich gehe hier mal 
von einer progressiven übertragung aus.
2.
Jede Zeile ist wie folgt aufgebaut
hs pixel hsync -> hsync=1 oder 0 je nach definition
hbp zeilen backporch
z.b. 640 pixel daten ->DE_H=1
hfp pixel frontporch

3. Jeder frame ist ähnlich aufgebaut
vs zeilen vsync -> vsync=1 oder 0 je nach definition
vbp zeilen backporch
z.b. 480 zeilen daten  -> DE_V=1
vfp zeilen frontporch

das von dir oben erwähnte DE Signal ist die verundung von DE_H und DE_V 
(DE<=DE_H and DE_V)

Wie gesagt das ist hier ganz allgemien beschrieben. Je nach verwendetem 
display könnte es eventuell vorkommen das die porches auch NULL sind und 
damit entfallen, kann ich mir aber eigentlich nicht vorstellen...
Bei interlaced werden die porches noch variiert um zwischen odd und even 
frame (besser field) unterscheiden zu können aber das verwirtt hier nur. 
ich gehe mal davon aus das du ein progressiven std. hast.
Noch ein Tipp: versuch die das mal aufzumalen, wenn du nicht 
weiterkommst kann ich dir da auch mal ein bild schicken (hab das nur 
gerade nicht hier...)
vieleciht hilft dir auch folgender link noch etwas weiter:
http://www.epanorama.net/faq/vga2rgb/calc.html
versuche mal ein timing einzugeben, und das bild über die taser hin-und 
herzuschieben, und dir zu überlegen was da passiert.
soweit erstmal
gruß steku

von Stefan M. (gremlin2000)


Lesenswert?

Hallo Steku,

danke für den Link mit den Timing Infos ist genau das was ich gesucht 
habe und denke das hilft mir vom verständis auf jedenfall weiter. Ich 
habe auch noch ein Dokument zu einem XPS Core gefunden in dem auch das 
Timing mit dem CH7301C beschrieben ist und es stimmt mit den errechneten 
überein, so das ich dies mal ausprobieren werde.

http://www.xilinx.com/support/documentation/ip_documentation/xps_tft.pdf

ICh bin dann mal gespannt ob der Bildschirm etwas anzeigt oder ob er 
weiterhin im StandBy bleibt :-) aber danke erstmal dafür.

Gruß
Stefan

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.