Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-23 15:10
Në këtë udhëzues, ne do të hartojmë një kontrollues të thjeshtë VGA në RTL. Kontrolluesi VGA është qark dixhital i krijuar për të drejtuar ekranet VGA. Lexohet nga Frame Buffer (VGA Memory) e cila përfaqëson kornizën që do të shfaqet, dhe gjeneron të dhënat e nevojshme dhe sinjalet e sinkronizimit për qëllimin e shfaqjes.
Nëse jeni duke kërkuar kodin verilog Verilog/System: Vizitoni blogun tim VGA Controller dhe Video System në Verilog
Hapi 1: Ndërfaqja e një kontrolluesi VGA
Më poshtë janë sinjalet kryesore të ndërfaqes në një Kontrollues VGA
- Ora Pixel ose Ora VGA
- Sinjalet HSYNC dhe VSYNC
Për ekranin e zgjedhur VGA, së pari duhet të llogaritni frekuencën e Pixel Clock të nevojshëm për ta drejtuar atë. Varet nga 3 parametra: Pikselë Totalë Horizontale, Piksele Gjithsej Vertikale, Shkalla e Rifreskimit të Ekranit.
Në mënyrë tipike, F = THP * TVP * Shkalla e rifreskimit
Gjeni dokumentacionin mbi orën pixel të nevojshme për ekranet e ndryshme VGA, në RAR të bashkangjitur.
Sinjalet HSYNC dhe VSYNC gjenerohen nga ora Pixel. Koha e sinjaleve HSYNC dhe VSYNC varet nga numri i parametrave: Horizontal dhe Vertical Frontporch, Horizontal and Vertical Backporch, Pixels Horizontal and Vertical Display, Horizontal and Vertical Sync Pulse Widths and Polarities.
Këta parametra janë të standardizuar për një ekran VGA të zgjedhur. Gjeni këto dokumente në RAR të bashkangjitur.
Këta parametra janë parametra të konfigurueshëm në IP -në tonë të VGA Controller.
Hapi 2: Integrimi i kontrolluesit VGA me një ekran VGA
Figura tregon se si të integroni VGA Controller me një ekran VGA. Ju duhen dy komponentë të tjerë për të përfunduar sistemin:
- Frame Buffer: Kujtesa që mban kuadrin që do të shfaqet.
- Video DAC: DAC që konverton të dhënat dixhitale RGB dhe drejton Ekranin VGA me sinjale analoge RGB në nivelin e duhur të tensionit.
Një nga DAC -të më të thjeshta dhe më të njohura të videove është ADV7125. Shtë një DAC 8-bit që konverton fjalët dixhitale RGB në sinjale analoge 0-0.7 V dhe drejton ekranin VGA.
Hapi 3: Dizajni i Buferit të Kornizës
Theshtë kujtesa që 'ruan' imazhin që do të shfaqet. Zakonisht është një RAM ose ndonjëherë ROM. Ne do të diskutojmë se si të krijojmë një tampon kornizë për të përfaqësuar një imazh. Tamponi i kornizës e kalon këtë informacion dixhital në një video DAC me komandë nga VGA Controller.
Së pari ne duhet të vendosim thellësinë e pikselit të nevojshëm. Ajo vendos cilësinë e figurës, larminë e ngjyrave që mund të përfaqësojë një piksel. Për një DAC 8-bit, ne duhet të përfaqësojmë përbërësit kryesorë të ngjyrave të një pixel: R, G dhe B në 8 bit secila. Do të thotë, një piksel është 24-bit.
Çdo piksel ruhet në mënyrë të vazhdueshme në vendet e kujtesës Frame Buffer.
Supozoni se një imazh që do të shfaqet është 800x600 piksele.
Prandaj Frame Buffer i nevojshëm është 800x600 = 480000 x 24 bit memorie
Madhësia totale e kujtesës është 800x600x24 = 1400 kB përafërsisht.
Nëse imazhi bardhë e zi, 800x600x1 = 60 kB përafërsisht.
Bllokimi i RAM -ve ndoshta përdoret për të përfaqësuar një Frame Buffer në Xilinx FPGA.
Hapi 4: Shënime
- Nevojiten sinjale shtesë në VGA Controller në varësi të DAC të zgjedhur. Unë kam përdorur ADV7125.
- Shtoni vonesa të ciklit përmes flip-flops në VSYNC dhe HSYNC para se të drejtoni ekranin VGA. Kjo është për shkak të vonesave të DAC dhe Memory. Sinjalet pixel duhet të sinkronizohen me HSYNC dhe VSYNC. Në rastin tim, ishte 2 cikle vonesë.
- Nëse Buffer Frame i madhësisë së dhënë nuk mund të dizajnohet në FPGA për shkak të kufizimit të madhësisë së ramit, përdorni memorie më të vogël për të përfaqësuar imazhin dhe thjesht redaktoni kodin për të rrokullisur mbi adresën në kufirin e kujtesës në dispozicion, në vend të kufirit të kornizës së plotë. Kjo do të përsërisë të njëjtën imazh pa pushim përgjatë gjithë ekranit. Një metodë tjetër është shkallëzimi i pikselit në të cilin çdo piksel përsëritet për të treguar të gjithë imazhin në ekran të plotë, në një rezolucion më të vogël. Kjo mund të bëhet duke ndryshuar logjikën e rritjes së adresës në kod.
- IP-ja është plotësisht e lëvizshme në të gjitha FPGA-të dhe koha vërtetohet deri në 100 MHz në Virtex-4 FPGA.
Hapi 5: Skedarët e bashkangjitur
RAR përmban:
- Kodi i kontrolluesit VGA
- PDF të standardeve VGA.
Recommended:
Kontrolluesi dhe kontrolluesi i zënies së dhomës MicroBit: 4 hapa
Kontrolluesi dhe kontrolluesi i zënies së dhomës MicroBit: Gjatë një pandemie, një mënyrë për të zvogëluar transmetimin e virusit është të maksimizoni distancën fizike midis njerëzve. Në dhoma ose dyqane, do të ishte e dobishme të dini se sa njerëz janë në hapësirën e mbyllur në çdo kohë. Ky projekt përdor një palë
Dizajni i marrjes, përforcimit dhe filtrimit të një qarku të një elektrokardiogrami bazë: 6 hapa
Dizajni i marrjes, përforcimit dhe filtrimit të qarkut të një elektrokardiogrami bazë: Për të përfunduar këtë udhëzues, të vetmet gjëra që nevojiten janë një kompjuter, qasje në internet dhe disa softuerë simulues. Për qëllimet e këtij dizajni, të gjitha qarqet dhe simulimet do të funksionojnë në LTspice XVII. Ky program simulimi përmban
Dizajni i një kontrolluesi të programueshëm të ndërprerjeve në VHDL: 4 hapa
Dizajni i një Kontrolluesi Ndërprerje të Programueshëm në VHDL: Jam i tronditur nga lloji i përgjigjeve që marr në këtë blog. Faleminderit djema që vizituat blogun tim dhe më motivuat të ndaja njohuritë e mia me ju. Këtë herë, unë do të paraqes modelin e një moduli tjetër interesant që shohim në të gjitha SOCs - Ndërprerja C
Dizajni i një kontrolluesi të thjeshtë të cache në VHDL: 4 hapa
Dizajni i një Kontrolluesi të Thjeshtë Cache në VHDL: Unë po e shkruaj këtë gjë të udhëzueshme, sepse e pashë pak të vështirë të merrja një kod referimi VHDL për të mësuar dhe filluar hartimin e një kontrolluesi të cache. Kështu që unë krijova një kontrollues të cache vetë nga e para dhe e testova me sukses në FPGA. Kam p
Dizajni i PCB me hapa të thjeshtë dhe të lehtë: 30 hapa (me fotografi)
Dizajni i PCB -së me hapa të thjeshtë dhe të lehtë: MIRELL SHOQR Tutoriali i tij shumë i dobishëm dhe i lehtë për ata që duan të mësojnë modelimin e PCB -së le të fillojë