www.mikrocontroller.net

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


Autor: Stefan M. (gremlin2000)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: SteKu (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Stefan M. (gremlin2000)
Datum:

Bewertung
0 lesenswert
nicht 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_doc...

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

Gruß
Stefan

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.