Zynq Image Enhancement System (2 / 8 steg)
Steg 2: Utgång - VGA-styrenhet del 1
Vi kommer ut våra visuella data med hjälp av HDMI-porten finns i styrelsen. HDMI-porten är ansluten till PL (programmerbart = FPGA) sida av ZYNQ och vi måste utforma en controller i VHDL för det. Om du har designat en VGA-styrenhet hittar detta mycket liknande. Tiderna för HDMI och VGA är faktiskt samma, i själva verket kan du bygga på en befintlig VGA-styrenhet skaffa en HDMI-styrenhet.
För en bättre förståelse av vad som faktiskt händer kommer vi först design en VGA-styrenhet
Vi vill visa med en upplösning på 1920 x 1080.
VGA-styrenhet är ansvarig för att överföra pixeldata (i RGB-format) sekventiellt, pixel för pixel display. Utanför själva visningsområdet område på 1920 x 1080 finns det också några "gränsen" områden, nämligen: främre veranda, tillbaka veranda och spåra. Storleken i pixlar på dessa områden är standard och specifika för varje resolution. Dessa områden faktiskt visas inte på skärmen men de är obligatoriska och färgen på pixlarna i detta område måste vara svart. En viktig fråga är varför dessa extra områden behövs. Denna fråga trotsar syftet med detta instructable, men om du är nyfiken jag vill uppmuntra er att ytterligare forskning på nätet.
Detta är en bra video som förklarar VGA gränssnitt https://goo.gl/vfSw6o
I vårt fall vill vi visar med en upplösning på 1920 * 1080, och dessa är tiderna:
Horisontella visningsområdet = 1920 pixlar
Horisontella Fron veranda = 88 pixlar
Horisontella tillbaka veranda = 148 pixlar
Horisontella Retrace = 44 pixlar
Vertikala visningsområdet = 1080 pixlar
Vertikala veranda = 4 pixlar
Vertikala tillbaka veranda = 36 bildpunkter
Vertikala Retrace = 5 pixlar
(Här kan du hitta tiderna för andra resolutioner http://goo.gl/hFNRVb )
Så blir våra faktiska upplösningen 2200 x 1125. Vi vill ha 60 fps (frames per sekund) så våra pixel clock blir 60 * 2200 * 1125 = 148.5 MHz. I Zybo styrelse en 125 Mhz föreskrivs klocka. Vi använder en MMCM IP för att generera 148.5 MHz Pixel klockan vi behöver.