Hallo, ich hab da mal ne Frage,
wäre es möglich einen VGA zu PAL konverter in einen CPLD wie z.B. XC9572
zu packen?
Ich stell mir sowas in der art vor wie : das erste gefundene VGA frame
wird zur initialisierung genutzt, sozusagen erkennen der VGA Auflösung
etc. sagen wir mal max 1024x768.
Danach wird eine empfangene VGA Zeile auf entsprechende PAL Zeile
skaliert und ausgegeben oder weggelassen. Vieleicht dabei eine art
zwischenspeicher nutzen.
Wäre sowas überhaupt möglich? Wäre der CPLD überhaupt schnell genug das
hinzubekommen oder müsste man für sowas auf nen FPGA zurückgreifen? Und
wenn FPGA, kann man die überhaupt noch auf ner lochrasterplatine zum
experimentieren benutzen wenn die mit 100MHz oder so getaktet werden
oder hab ich dann einfach nur ne gute Störquelle gebaut?
Grobi
> Wäre sowas überhaupt möglich? Wäre der CPLD überhaupt schnell genug das> hinzubekommen oder müsste man für sowas auf nen FPGA zurückgreifen?
Schnell genug wäre das CPLD schon...
...aber mit nur 72 FFs kannst du nicht viel ausrichten.
> sozusagen erkennen der VGA Auflösung etc. sagen wir mal max 1024x768.
Eine dynamische Erkannung ist mit einem derart kleinen Baustein
garantiert nicht möglich...
> Danach wird eine empfangene VGA Zeile auf entsprechende PAL Zeile> skaliert und ausgegeben oder weggelassen. Vieleicht dabei eine art> zwischenspeicher nutzen.
Wenn du dir die Zeiten der Signale ansiehst, dann wirst du sehen, dass
es ohne Zwischenspeicher garantiert nicht geht.
> Und wenn FPGA, kann man die überhaupt noch auf ner lochrasterplatine zum> experimentieren benutzen wenn die mit 100MHz oder so getaktet werden> oder hab ich dann einfach nur ne gute Störquelle gebaut?
Ein FPGA bekommst du nicht mehr (sinnvoll) auf eine Lochrasterplatte.
Bei diesen Frequenzen und Signalanstiegszeiten empfiehlt sich ein
wohldurchdachtes mindestens zweiseitiges Layout.
rechne doch mal aus, wieviel speicher 1024*768@16 bit sind ;)
(ok. ich bin ein spielverderber und verrate es im voraus: es sind 1536
kByte!)
mit ner lochrasterplatine macht es spätestens dann keinen spaß mehr,
wenn du den externen speicher, den du für das zwischenspeichern der
einzelnen bilder brauchst, anbindest! ;) (für diese größe des speichers
brauchst du 20 bit adressleitung + 16 bit datenleitung)
die daten bei der von dir gewünschten auflösung kommen mit (je nach
bildwiederholrate) 75 MHz pixelclock daher! (bei pal hab ich grad keine
ahnung, wie schnell die daten gebraucht werden.) aber du wirst wohl
einen dual-port-ram wegen der zwei clocking-domains brauchen. -> doppelt
so viele verbindungen.
(gibts dual-port-ram in der größe? oder kann man vielleicht doch mit nem
normalen ram hinkommen, der schnell genug angesprochen wird? keine
ahnung - vielleicht kann da ja einer der profis hier nen wort dazu
verlieren ;) )
was ich eigentlich sagen wollte: ich glaub nicht, dass es spaß macht das
von hand zusammenzukleistern! da gibt man gerne das bisschen geld für ne
platine aus...
> oder kann man vielleicht doch mit nem normalen ram hinkommen,> der schnell genug angesprochen wird?
Jawohl, man kann das. Allerdings nicht von jetzt auf nachher ;-)
Denkbar wäre auch, doppelt soviel RAM zu spendieren und einen Frame
zwischenzuspeichern.
hmm danke für die Antworten, bin zwar jetzt etwas enttäuscht das mein
vorhaben nich so ohne weiteres möglich ist aber nun gut ;-)
Hab ich wohl ein paar Dinge nicht bedacht, aber sofort aufgeben will ich
noch nicht, wäre wäre denn wenn man den externen speicher sehr klein
hält (max 2 oder 3 Zeilen), den takt für den CPLD aus der Pixelclock
gewinnt, leider hab ich nur nen 15ns cpld, der käme nur auf 66MHz und
nicht auf die erwähnten 75Mhz. Da das PAL timing langsamer ist als das
VGA müsste es doch irgendwie möglich sein diesen "Zeitpuffer" für die
benötigte skalierung zu benutzen, im Prinzip bräuchte man bei 1024x768
max VGA auflösung sehr vereinfacht doch nur 2 VGA pixel zu einem PAL
pixel zusammenfügen. Aber vielleicht wäre es einfacher das auf 2 cplds
aufzuteilen, einer analysiert und bearbeitet das skalierte vga frame (da
wäre dann wieder viel speicher von nöten) und der zweite gibt das pal
frame wieder aus.
Grobi
Fang mal bei den Frequenzen an. Wenn du es schaffst, dem VGA-Ausgang
eine Vollbildfrequenz von 50Hz mit gegenüber PAL doppelter
Zeilenfrequenz zu entlocken, dann wird es tatsächlich deutlich
einfacher. Denn dann ist kein Vollbildspeicher erforderlich, sondern
eine Zeile reicht.
Wenn die Bildfrequenz des VGA-Ausgangs aber nicht 50Hz beträgt, dann
kommst du um eine Bildspeicherung nicht herum, denn PAL will nun einmal
50Hz Halbbildfrequenz sehen.
> Aber vielleicht wäre es einfacher das auf 2 cplds aufzuteilen
Dann nimm besser ein schnuckelig kleines FPGA z.B. MachXO von Lattice
;-)
PAL ist allerdings noch einiges mehr, als nur das Timing... :-o
Wie machst du die nötigen Farbumrechnungen?
Wie modulierst du den Farbträger?
Lothar Miller schrieb:
> Wie machst du die nötigen Farbumrechnungen?> Wie modulierst du den Farbträger?
Gibt's dazu keine fertigen Konverter-ICs, die das RGB-Signal
entsprechend vergewaltigen? Steckt heute doch in jeder Grafikkarte drin,
jedenfalls in älteren noch getrennt.
> Gibt's dazu keine fertigen Konverter-ICs, die das RGB-Signal> entsprechend vergewaltigen?
Doch, sicher, aber es geht um einen "VGA to PAL konverter" im CPLD :-o
>>>>> Hallo, ich hab da mal ne Frage,>>>>> wäre es möglich einen VGA zu PAL konverter in einen CPLD zu packen?
das mit dem vga auf 50 hz ist doch so eine sache für sich, soweit mir
bekannt ist, kann das garnicht jede graka manche onboard dinger z.B. und
von irgendwelchen treibern die z.B. unter xp garnicht mehr funktionieren
will ich garnicht erst anfangen. Hatte da auch ne schaltung wo man
einfach 2 oder 3 widerstände und nen transistor zwischen vga und scart
hängt und mit irgendnem treiber das pal signal simuliert, aber das hat
nie wirklich funktioniert. Darum wäre ich da eher für so eine all-round
lösung, halt anstöpseln und loslegen. Ich hab irgendwo noch einen
konverter aus China oder so total günstig bei *bay geschossen mit nem
altera irgendwas fpga und speicher und sonstigem drauf der vga zu lvds
für n laptop tft display machen soll, vielleicht kann man das ding
irgendwie umfunktionieren.
Mist muss ich wohl doch erstmal den keller aufräumen um das zu finden.
Grobi
Grobi schrieb:
> das mit dem vga auf 50 hz ist doch so eine sache für sich, soweit mir> bekannt ist, kann das garnicht jede graka
Es gibt alte Karten, die für TV und VGA noch keine getrennten
Wiedergabekanäle verwendeten, sondern bei angeschlossenem TV den
VGA-Ausgang auf 50/60Hz Vollbild und gegenüber PAL/NTSC doppelter
Zeilenfrequenz schalteten. Daraus wurde dann mit einem vergleichsweise
einfachen und anfangs separaten Chip mit internem Speicher für 1-2
Zeilen das PAL/NTSC Signal abgeleitet.