Ich möchte Videoauflösungen für aktuelle Monitore erzeugen, scheitere
aber an den Videotakten. Die üblichen Verdächtigen 800x600 und 1024,
1280 laufen mit Frequenzen von 50MHz, 60MHz, 75MHz und Abkömmlingen
derselben.
Mein Monitor hat aber 1600 x 1200! Momentan erzeuge ich 800x600@72Hz
über 50MHz, was zwar in die native Auflösung passt, mir aber nicht mehr
reicht.
Als denkbare Modi habe ich gefunden:
1600x1200 @ 60Hz (VESA) hsync: 75.0kHz 162.0 MHz
1600x1200 @ 65Hz (VESA) hsync: 81.3kHz 175.5 MHz
1600x1200 @ 70Hz (VESA) hsync: 87.5kHz 189.0 MHz
1600x1200 @ 75Hz (VESA) hsync: 93.8kHz 202.5 MHz
1600x1200 @ 85Hz (VESA) hsync: 106.3kHz 229.5 MHz
Das sind aber äusserst unschöne Takte. Jemand eine Idee, wie ich die
erzeuge? Mein FPGA-board kann nur 25MHz. Quarz umlöten ginge zur Not.
Weiss jemand, wie genau die Frequenzen eingehalten werden müssen?
Die 175,5 wären mir eigentlich recht sympathisch, aber mein TFT kann
wohl die 65Hz nicht, jedenfalls kam nichts raus.
Wenn du momentan mit 50Mhz arbeitest, wirst du sicherlich eine PLL im
FPGA benutzen, welche dir aus 25Mhz -> 50MHz macht. Je nach FGPA-Typ
sollte also z.B. auch 162MHz erzeugbar sein.
Ist halt die Frage ob dein Design/FPGA das Timing von z.B. 162MHz noch
ermöglicht (sollte eigentlich die Timinganalyse ausspucken (Clocks
definiert?)).
Die nächste Frage wäre, kannst du die Daten (RGB) bei einer solchen
Frequenz noch liefern (wo kommen die her (DRAM?) welches Format (n
Bits,indexed?)),
Lars Laffer schrieb:> also lt xilinx clocking manager wäre für einen spartan3A 160MHz> generierbar.
162,5 MHz sollten eigentlich auch funktionieren (mit 13 multiplizieren
und durch 2 dividieren), ausprobiert habe ich das aber nicht.
Die Frage ist wohl eher, wie du die Daten mit dieser Frequenz an den
VGA-Ausgang bringst. Bei 8 Bit Farbtiefe und 60Hz sind das immerhin
schon mehr als 100MB pro Sekunde.
@Alexander F. (alexf91)
>Die Frage ist wohl eher, wie du die Daten mit dieser Frequenz an den>VGA-Ausgang bringst. Bei 8 Bit Farbtiefe und 60Hz sind das immerhin>schon mehr als 100MB pro Sekunde.
Ja und? Darüber lacht ein halbwegs aktuelles FPGA nur.
1600x1200 = 2 Megapixel
Bei 24 Bit/Pixel und 60 Hz sind das 360 MB/s. Ein DDR-RAM mit 32 Bit und
150 MHz macht 600 MB/s. Aktuelle FPGAs arbeiten mit DDR2 und DDR3 bei
höheren Takten. So what. Ist nur einfaches Datenschieben.
FPGAs sind schon "etwas" leistungsfähiger als die guten alten GALs ;-)
Alexander F. schrieb:> 162,5 MHz sollten eigentlich auch funktionieren (mit 13 multiplizieren> und durch 2 dividieren), ausprobiert habe ich das aber nicht.
Ich hatte das mal probiert und auch ausgehend von 50MHz versucht, eine
162MHz Taktung für einen 1600x1200 Moni zu generieren, erhielt aber nur
sporadisch Bilder. Der Synch fiel immer wieder aus.
Es bleibt also wohl nichts anderes übrig, als einen geeigneten Quarz zu
finden. Ansonsten kannst Du probieren, PLLs zu verketten. Ich würde 9 x
9 x 2 vorschlagen und die 60Hz nehmen. Bei mir sähe das so aus:
50 MUL 18 = 900, DIV 25 = 36 MHz
36 MUL 9 = 324, DIV 2 = 162 MHz
Wenn es ein LCD ist, dann könntest du es mal mit "reduced blanking"
probieren. Der Rechner im VESA Excelsheet (CVTd6r1.xls) wirft für
1600x1200@60Hz dann 130,25MHz aus. Leider ein ziemlich krummer Wert.
W.S. schrieb:> Vorschlag: nen externen CDCE913 benutzen. Die Dinger sind für sowas> gedacht.
Das wäre wie schon eingeworfen auch ein Umbau.
Mike schrieb:> Wenn es ein LCD ist, dann könntest du es mal mit "reduced blanking"> probieren. Der Rechner im VESA Excelsheet (CVTd6r1.xls) wirft für> 1600x1200@60Hz dann 130,25MHz aus. Leider ein ziemlich krummer Wert.
Die Schwierigkeit ist weniger dier hohe Frequenz sondern der Wert an
sich. Die 130,25 wären auch ok, aber ich wüsste spontan jetzt auch
wieder nicht, wie ich auf die kommen soll, ohne wenigstens der Quarz zu
tauschen.
Das Excel habe ich mir geladen. Bin jetzt auf die Idee gekommen auch
HDTV auszugeben für meinen TV. Kann man das noch analog? Die Frequenzen
wären 173,0 MHz bez. 138,5 MHz. Kommt das hin?
Ich habe über WIKI ein Programm entdeckt, dass die Frequenzen berechnen
kann, oder können soll, allerdings kommen auch dort wieder etwas andere
Frequenzen heraus, als sie in den Tabellen zu finden sind.
http://sourceforge.net/projects/umc/
Kann man den Werten trauen?
Danach brauche ich für 1080p 173,1 MHz. Wie kritisch sind die Werte?
Einige Promille sind kein Thema. Wenn es zuviel wird, kann es sein, dass
es Bildaussetzer gibt. Das ist dann auch vom Monitor abhängig. Bei dem
Umweg über 2 PLLs kann es da natürlich früher zu Problemen kommen.
Die 173,1 / 173,0 könnten mit der Rundung zusammenhängen. Im Excel oben
kann man das unten einstellen. Wie das Consolenprogramm rechnet, ist ja
nicht ersichtlich. Ich komme auf eine rechnerische Frequenz von 173,08.
Zu realisieren wäre sie so:
25 x 30 => 750 / 13 => 57,69 x 6 => 346,15 / 2 -> 173,08
Die andere Option wären 50Hz. Das habe ich schon erfolgreich im Spartan
gemacht. 141,8 wären der angebliche ideale HF-Wert.
Gebaut ist es so: 25 x17 -> 425 / 3 -> 141,67
Jürgen S. schrieb:> Einige Promille sind kein Thema. Wenn es zuviel wird, kann es sein, dass> es Bildaussetzer gibt. Das ist dann auch vom Monitor abhängig.
Sehe ich genauso. Ich nehme an das im Monitor auch eine PLL sitzt, die
sich auf den angeboteten Pixeltakt einregelt. Spontane Suche auf
Moni-datenblätter bei reichelt erbrachte aber kein sicheres Ergebniss,
da findet sich keine Angabe für den Fangbereich.
Meine Monis hier quäle ich mit verschiedenenen fpga-gerierten Modi
(kleiner gleich 1024x768 und es klappt eigentlich recht gut. Also gehe
ich optimistischerweise davon aus, das der Moni Pixeltaktmäßig platz
hat. Und im Vergleich zu den Alten Röhrenkasten ist die elektronik
besser vor Beschädigung durch rasantes timing geschützt.
MfG,
Mit dem TV hat es noch nicht geklappt. Möglich, dass der nicht zu
tolerant ist oder die Werte nicht stimmen.
Wie sähe ein timing für einen Computermonitor aus mit 1920x1200?
Gemäss dem Excel wären dies bzw 193,47 MHz. Aus der Tabelle 193.16 MHz.
Ich nehme an, dass das etwas mit GTF zu tun hat.
Da dies wieder schlecht ist würde ich gerne das reduced blanking
probieren, also gemäss Rechung 154,12. Wie stelle ich die her?
Gfs klappt es mit den verketteten PLLs nicht.
>reduced blanking
Ich würde sagen: 25 * 37 / 6, wenn es mit (D)einer PLL geht. Ergibt
154,17. Das müsste aber nun wirklich hinhauen.
>Meine Monis hier quäle
Die CRTs sind da manchmal genügsamer, als die TFT, habe ich
festgestellt.