mikrocontroller.net

Forum: FPGA, VHDL & Co. TFT Ansteuerung mittels CH7301


Autor: matthias (Gast)
Datum:

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

Autor: matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hat keiner ne Hilfestellung?

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bei so einem thema mit spezifischem controller nach 16 minuten???

ruuuhig, brauner!

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
60...

Autor: matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok sorry

Autor: SuperWilly (Gast)
Datum:

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

Autor: matthias (Gast)
Datum:

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

Autor: SuperWilly (Gast)
Datum:

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

Autor: matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hatte eigentlich vor dies über SDR zu machen, weil mir das für den 
Anfang leichter  erscheint.

Autor: Michael X. (Firma: vyuxc) (der-michl)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Datenblatt zum SIL164 ist das 12-Bit Mapping drin. Dürfte das selbige 
sein, da beide Chips für DVO->DVI verwendet wurden.

Autor: SuperWilly (Gast)
Datum:

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

Autor: SuperWilly (Gast)
Datum:

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

Autor: matthias (Gast)
Datum:

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

Autor: SuperWilly (Gast)
Datum:

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

Autor: matthias (Gast)
Datum:

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

Autor: SuperWilly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nein

Autor: SuperWilly (Gast)
Datum:

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

Autor: SuperWilly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>das trifftet zwar etwas von meiner eigentlichen Fragestellung ab

Was genau war denn Deine Frage ?

Autor: matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das ich das timing der H_synch und V_synch Signale nicht verstehe

Autor: SuperWilly (Gast)
Datum:

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

Autor: matthias (Gast)
Datum:

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

Autor: matthias (Gast)
Datum:

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

Autor: SuperWilly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm, ich glaube dass dein Problem nicht Chrontel-spezifisch ist, 
sondern
du fragst dich, wie das H/V/De-Timing für DVI allgemein aussieht ???

Autor: matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja was heißt für DVI... der Input is doch bestimmt nicht Sandart 
sondern Chip abhängig... und ja genau das meine ich :-)

Autor: matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
und... wenn die bei "Input Clock and Data Timing Diagram" das Diagramm 
etwas weiter gezeichnet hätten, wäre es auch (für mich) etwas 
verständlicher

Autor: SuperWilly (Gast)
Datum:

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

Autor: matthias (Gast)
Datum:

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

Autor: matthias (Gast)
Datum:

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

Autor: matthias (Gast)
Datum:

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

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.