Hallo,
wie im Betreff schon erwähnt möchte ich gerne einen Bildschirm mittels
einem FPGA und dem DVI-Transiver CH7301 ansteuern.
Mein problem besteht darin das ich in dem Datenblatt des CH7301 keine
genauen angaben über das "Input Clock and Data Timing" finde, speziell
über das timing von V_sync oder H_sync??? Bzw. das dort so komisch
beschriben/gezeichnet wurde das ich es nicht verstehe.
Vielleicht bin ich auch blind? Würde mich über Hilfe freuen.
gruß
matthias
Wie wärs denn, wenn du die relevanten Timing-Diagramme mal reinstellen
würdest ;O) ? Sonst wird es schwierig zu erahnen, wo die
Verständnisschwierigkeit liegt ...
Gruß,
SuperWilly
Da das leider momentan nicht möglich ist, ist hier mal der link des
Datenblattes. Input Clock and Data Timing Diagram ist auf Seite 7 und
dann noch mal was auf Seite 26 (Timing Information).
Ich verstehe die Signale H und V nicht wirklich, d.h. wann die nun genau
high und low sein mussen?
http://www.chrontel.com/pdf/7301ds.pdf
Was gedenkst du zu verwenden: "1x pixel rate method" oder "2x pixel rate
method" ? Für zweiteres bräuchtest du eine DDR-Zelle im FPGA ...
Gruß,
SuperWilly
Du benötigst sowohl für den X1 als auch für den X2-Takt-Modus
ein DDR-Template im FPGA.
1. Woher stammt der Takt, mittels dessen du den Chrontel-Baustein
taktest ?
2. Was für Auflösungen möchtest du unterstützen ?
3. Welchen FPGA-Baustein verwendest du ?
Gruß,
SuperWilly
>Ich hatte eigentlich vor dies über SDR zu machen, weil mir das für den>Anfang leichter erscheint.
Es gibt keinen SDR-Modus. Du hast ein 12bit-Daten-Interface, die Daten
werden also mit steigender UND fallender Flanke im Chrontel-Baustein
eingelesen.
Gruß,
SuperWilly
Ich dachte das der chrontel Chip DDR und SDR hat, jenachdem was man
möchte hat. ("1x pixel rate method" oder "2x pixel rate method")
Bei der 2x Pixel Methode werden die Signale doch nur mit steigender
Flanke übernommen. ?SDR?
Die Takterzeugung geschiet im FPGA... ist ein Virtex 5 der auf dem ML505
Board sitzt, auf dessen auch der Chrontel Chip sitzt.
Die Auflösung beträgt eigentlich 384x288, aber soweit ich das sehe muss
für DVI noch nen paar Pixel drangehangen werden um auf eine Auflösung zu
kommen die ein Bildschierm verarbeiten kann. Hab da so an 640x480
gedacht.
"1x pixel rate method" = einfache Taktrate z.B. 100MHz
"2x pixel rate method" = doppelte Taktrate z.B. 200MHz
In beiden Fällen benötigst du ein DDR-Template
das trifftet zwar etwas von meiner eigentlichen Fragestellung ab, aber
bei der doppelten Taktrate (dein Bsp. 200MHz) werden die Daten doch nur
mit der steigenden Flanke übernommen und das ist doch kein DDR...
In Abschnitt "3. INPUT INTERFACE" wird es klar gesagt:
"For the multiplexed data, clock at 2X pixel rate, the data applied to
the CH7301C is latched with one edge of the clock".
Also
1X clock mode : DDR
2x clock mode : SDR
Muss mich also korrigieren: Nur für "1X clock mode" benötigst du
FPGA-DDR-Zellen.
Gruß,
SuperWilly
Die aktive Taktflanke muss mind. 0,5 ns nach dem Datenwechsel kommen
(tSU),
außerdem müssen die Daten mind. 0,5 ns nach einer aktiven Taktflanke
stabil sein (tH). --> Table 3. Interface Timing
Gruß,
SuperWilly
also
clk _|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|
v _|---|___________________________________________________________
H _|---|_______________________________|---|______________________
DE _|-------------------------------|__________|--------------------|
DATA _||||||||||||||||||||||||||||||||____________||||||||||||||||||||||
Pixel0->Pixel_end erste zeile Pixel0->Pixel_end zweite zeile
und bei dem nächsten Bild wird V wider kurz hihg (bzw. low das kann man
ja einstellen), also alles wider von vorne???
noch ne kleine korrektur
also
clk _|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|_|-|
v _|---|___________________________________________________________
H _|---|_______________________________|---|______________________
DE _______|-------------------------|__________|--------------------|
DATA ________||||||||||||||||||||||||____________||||||||||||||||||||||
Pixel0->Pixel_end erste zeile Pixel0->Pixel_end zweite zeile
und bei dem nächsten Bild wird V wider kurz hihg (bzw. low das kann man
ja einstellen), also alles wider von vorne???
Ja schon klar, aber das ist ja nicht die Aufgabe eines Datenblattes. Die
Aufgabe besteht darin, alle für den Baustein relevaten
Timing-Informationen
zur Verfügung zu stellen, und das hat Chrontel geleistet.
Du solltest dir andere Papers mal anschauen, die das DVI/VGA-Timing
beschreiben. Und dann kann du dir überlegen, wie du die Daten, die Syncs
und den Takt richtig (bezüglich Phasenlagen) in den Chrontel bekommst.
Gruß,
SuperWilly
Hast du da zufällig einen Link zu so nem Paper? :-)
Und ich dachte das NUR der Ausgang DVI ist und der Eingang
Herstellerspezifisch realisiert werden kann?
Hallo,
ich habe nun mal versucht ein Bild Über den Chrontelchip auszugeben,
indem ich das Test Pattern Register auf "Color Bars" gestellt hab. Wenn
ich allerdings meinen tft an den chip anschließe geht dieser sofort in
den Standbye. Hat jemand eventuell eine Erklärung woran dies liegen
könnte?
Zieh ich den Bildschirm ab kommt "No Signal".
Habe "Hardware Hot Plug Interupt" disabled, kann das daran liegen?
danke matthias
Ich hab jetzt diverse Einstellung ausprobiert, auch den RGB Bypass aber
es tu sich einfach nix??? Hat jemand eventuell eine Idee, wie ich meine
I2C Schnittstelle testen kann. Obwohl ich mit dieser schon einen Audio
IC Konfiguriert hab und im Simulator auch alles so ist wie es sein soll.
Wenn ich mein Eval Board einschalte wird der FPGA konfiguriert
(testprogramm), was auch über die DVI schnittstelle ausgegeben wird,
also gehen an sich tuts auch. Programmiert hab ich in den FPGA unter
anderem das VGA Timing für 640x480 60Hz, dass Timming stimmt im
Simulator auch. Hat nicht noch jemand eventuell eine Idee auf was ich
noch achten muss oder vergessen haben könnte???
Gruß
matthias