90 likes | 177 Views
Prototípus készítés Verilog nyelven. VGA – PROM számláló. Készítette: Fazekas Gergő, 2012.05.17. Mit is takar jelen esetben a PROM. Egy paraméterként definiált „ROM”, mely 16 darab, 32 betűs szót takar. (32X16-os mátrixként felfogható)
E N D
Prototípus készítés Verilog nyelven VGA – PROM számláló Készítette: Fazekas Gergő,2012.05.17
Mit is takar jelen esetben a PROM • Egy paraméterként definiált „ROM”, mely 16 darab, 32 betűs szót takar. (32X16-os mátrixként felfogható) • Egyfajta módszer arra, hogy megadjuk, hogy a képernyőn egy adott pixelt kivilágítsunk, vagy sem. Minden mátrix érték egy pixelt fog szimbolizálni. Ahol a mátrixban az érték 0, ott a pixel nem fog „világítani”, ahol 1-es ott pedig igen. • Ezzel a módszerrel bármilyen alakzatot beleírhatunk a mátrixunkba, ami feltöltés után meg fog jelenni a képernyőnkön.
A program működése • A VGA kimeneten keresztül a képernyőn megjelenő egyszerű számláló, minden számjegy egy 32X16-os mátrixban van eltárolva. • Ilyen elven pl. egy digitális órát könnyen meg lehet valósítani.
A program felépítése • 5 modult tartalmaz: • Vga_sprite_top : A topmodul • CLKDIV: 25 MHz-es órajeladó • CLK1Hz: 1 Hz-es órajeladó • Vga_640x480: A képernyőt definiáló modul • Vga_sprite: A képernyőn alakzatok megjelenítésére szolgáló modul • Prom: A ROM-ot definiáló modul
Fontosabb Modulok bemutatása:A PROM modul • Bemenete: • Addr : 4 bites, a mátrix sorát jelöli. • Kimenete: • M: 32 bites, a mátrix Addr által meghatározott sorát fogja tartalmazni. Paraméterként meg vannak adva a mátrixok, amik a számokat formáját tartalmazzák. Majd egy 1 mp-ként váltó multiplexer határozza meg, hogy az M-be melyik szám alakzata kerüljön be.
Fontosabb Modulok bemutatása:A vga_sprite modul • Bemenetei: • Vidon: A Vga_640x480 modultól kapja, és 1-es, ha a hc(horizontalcounter) és vc(verticalcounter) a képernyő látható részén jár. (Azaz olyan pixelre mutatnak, ami a képernyőn van). • Hc,vc: Horizontal-Verticalcounter • M: A ROM egyik mátrixának egy sorát tartalmazza
Fontosabb Modulok bemutatása:A vga_sprite modul • Kimenetei: • Rom_addr4: Ő jelöli meg a PROM modul számára, hogy a mátrix mely sorát töltse be az M-be. • Red,Green,Blue: Közvetlenül a VGA portra kapcsolódó kimenetek, a Red és Green 3, a Blue 2 bites, így összesen 8 bites színmélység, azaz 256 féle színárnyalat érhető el.
Fontosabb Modulok bemutatása:A vga_sprite modul • C1,R1: Eltolás a képernyő (1,1) pontjához képest. • Rom_addr4: Ő jelöli meg a PROM modul számára, hogy a mátrix mely sorát töltse be az M-be. • Rom_pix: Oszlopazonosító, így a rom_addr4-el közösen meghatározzák egy adott sor adott pixelét. • Spriteon: 1, ha a (hc,vc) látható sprite régión belül tartózkodik, különben 0.