ik moet voor een project een vga maken in VHDL die gebruik maakt van een clock van 6.144 mhz. Maar de laagste resolutie die ik kan vinden gebruikt 25 MHZ (640x480). Dus nu zou ik alles door 4 moeten delen maar dit is heel lastig voor het verticale gedeelte. Kan iemand me helpen met wat nu de waardes worden van de back porch, front porch, vsync en het gedeelte dat echt op je scherm te zien is.

De VGA resolutie van 640x480 MOET gewoon van een 25MHz klok gemaakt worden.

Als je geen PLL of iets dergelijks kan regelen, dan kan je alle HORIZONTALE getallen door vier delen. Alle vertikale getallen blijven het zelfde. Je krijgt dan een 160x480 display. Ziet er niet uit, denk ik.

Mogelijk kan je een 12MHz klok simuleren door de hoge en de lage periode van de klok apart te gebruiken. (je zet twee pixels klaar, en stuurt de ene met "if clock" en de andere met "if !clock" naar buiten).

Dan zou 320x480 haalbaar moeten zijn. Door nu vertikaal ook nog eens alles twee keer te sturen krijg je 320x240, iets wat weer een beetje vierkante pixels heeft.

Op 24 december 2014 19:56:14 schreef rew:

Door nu vertikaal ook nog eens alles twee keer te sturen krijg je 320x240, iets wat weer een beetje vierkante pixels heeft.

Hoe moet ik dit zien ?

De meeste schermen voor VGA zijn bedoeld om op 640x480 vierkante pixels te hebben. Door vertikaal en horizontaal steeds twee keer dezelfde pixel te sturen, krijg je grotere pixels, maar nog steeds ongeveer vierkant. Je zal vast "320x480" kunnen sturen, maar dan zijn de pixels dus ongeveer 2x zo breed als dat ze hoog zijn. Als je iets met die extra resolutie kan, veel plezier er mee, maar veel mensen vinden dat lastig, dan is 320x240 makkelijker.

Aha....

Nooit gedacht dat een pixel vierkant was.

hartelijk dank voor jullie reacties nu kan ik eindelijk verder met mijn code. Vooral rew bedankt ik kon nergens vinden dat de verticale getallen het zelfde blijven

Mijn eerste "goede" scherm was een 19" monochroom scherm wat "fixed frequency" was. Had ik samen met de eerste video-accelerator kaart (8 cores!) gekocht.... Mijn Linux systeem draaide de X-server als PID=5 of zo, anders kon ik het boot-proces niet zien. (ifconfig lo 127.0.0.1 up was pid=2 geloof ik, wat er verder nog moest voordat X wilde weet ik niet meer....)

Anyway, in die tijd geleeerd hoe video werkt... :-)