Isi kandungan:

Reka bentuk Pengawal VGA ringkas dalam VHDL dan Verilog: 5 Langkah
Reka bentuk Pengawal VGA ringkas dalam VHDL dan Verilog: 5 Langkah

Video: Reka bentuk Pengawal VGA ringkas dalam VHDL dan Verilog: 5 Langkah

Video: Reka bentuk Pengawal VGA ringkas dalam VHDL dan Verilog: 5 Langkah
Video: RBT TINGKATAN 3 BAB 1 (MENYATAKAN MAKSUD REKA BENTUK MEKATRONIK DAN MENGENALPASTI ELEMEN MEKATRONIK) 2024, Jun
Anonim
Reka bentuk Pengawal VGA Mudah di VHDL dan Verilog
Reka bentuk Pengawal VGA Mudah di VHDL dan Verilog

Dalam arahan ini, kita akan merancang Pengawal VGA ringkas di RTL. VGA Controller adalah litar digital yang direka untuk memacu paparan VGA. Ini dibaca dari Frame Buffer (VGA Memory) yang mewakili bingkai yang akan ditampilkan, dan menghasilkan data yang diperlukan dan menyegerakkan isyarat untuk tujuan paparan.

Sekiranya anda mencari kod verilog Verilog / Sistem: Lawati blog saya Sistem Pengawal dan Video VGA di Verilog

Langkah 1: Antaramuka Pengawal VGA

Berikut adalah isyarat antara muka utama dalam Pengawal VGA

  • Jam Pixel atau Jam VGA
  • Isyarat HSYNC dan VSYNC

Untuk paparan VGA yang dipilih, anda harus terlebih dahulu mengira frekuensi Jam Pixel yang diperlukan untuk menggerakkannya. Ia bergantung pada 3 parameter: Total Horizontal Pixel, Total Vertical Pixel, Screen Refresh Rate.

Biasanya, F = THP * TVP * Refresh Rate

Cari dokumentasi pada jam piksel yang diperlukan untuk pelbagai paparan VGA, dalam RAR yang dilampirkan.

Isyarat HSYNC dan VSYNC dihasilkan dari jam Pixel. Masa isyarat HSYNC dan VSYNC bergantung pada bilangan parameter: Hororontal dan Vertical Frontporch, Horizontal and Vertical Backporch, Horizontal and Vertical Display Pixels, Horizontal and Vertical Sync Pulse Widths and Polarities.

Parameter ini diseragamkan untuk paparan VGA yang dipilih. Cari dokumen-dokumen ini di RAR yang dilampirkan.

Parameter ini adalah parameter yang dapat dikonfigurasi di IP Pengawal VGA kami.

Langkah 2: Mengintegrasikan Pengawal VGA Dengan Paparan VGA

Mengintegrasikan Pengawal VGA Dengan Paparan VGA
Mengintegrasikan Pengawal VGA Dengan Paparan VGA

Gambar menunjukkan cara menggabungkan VGA Controller dengan paparan VGA. Anda memerlukan dua komponen lagi untuk menyelesaikan sistem:

  • Frame Buffer: Memori yang menahan bingkai yang akan dipaparkan.
  • Video DAC: DAC yang menukar data digital RGB dan menggerakkan Paparan VGA dengan isyarat analog RGB pada tahap voltan yang sesuai.

Salah satu DAC Video yang paling mudah dan popular adalah ADV7125. Ia adalah DAC 8-bit yang menukar perkataan digital RGB menjadi isyarat analog 0-0.7 V dan memacu paparan VGA.

Langkah 3: Reka Bentuk Penampan Rangka

Ingatan inilah yang 'menyimpan' gambar yang akan dipaparkan. Ia biasanya RAM atau kadang-kadang ROM. Kami akan membincangkan bagaimana merancang bingkai penyangga untuk mewakili gambar. Frame buffer menyampaikan maklumat digital ini ke Video DAC atas arahan dari VGA Controller.

Mula-mula kita harus menentukan kedalaman piksel yang diperlukan. Ini menentukan kualiti gambar, pelbagai warna yang dapat ditunjukkan oleh piksel. Untuk DAC 8-bit, kita perlu mewakili komponen warna utama piksel: R, G, dan B masing-masing dalam 8 bit. Maksudnya, piksel berukuran 24-bit.

Setiap piksel disimpan secara bersebelahan di lokasi memori Frame Buffer.

Anggaplah gambar yang akan dipaparkan adalah 800x600 piksel.

Oleh itu Frame Buffer yang diperlukan ialah memori 800x600 = 480000 x 24 bit

Jumlah saiz memori ialah 800x600x24 = 1400 kB lebih kurang.

Sekiranya gambar hitam putih, 800x600x1 = 60 kB lebih kurang.

Blok RAM mungkin digunakan untuk mewakili Frame Buffer dalam Xilinx FPGAs.

Langkah 4: Catatan

  • Isyarat tambahan diperlukan pada VGA Controller bergantung pada DAC yang dipilih. Saya telah menggunakan ADV7125.
  • Tambahkan kelewatan kitaran melalui flip-flop pada VSYNC dan HSYNC sebelum memacu paparan VGA. Ini kerana latensi DAC dan Memory. Isyarat piksel harus diselaraskan dengan HSYNC dan VSYNC. Dalam kes saya, ia adalah kelewatan 2 kitaran.
  • Sekiranya Frame Buffer dengan ukuran tertentu tidak dapat dirancang pada FPGA kerana batasan ukuran ram ram, gunakan memori yang lebih kecil untuk mewakili gambar dan hanya mengedit kod untuk menggulung alamat di batas memori yang tersedia, dan bukannya batas bingkai penuh. Ini akan meniru gambar yang sama berulang-ulang di seluruh skrin. Kaedah lain adalah penskalaan piksel di mana setiap piksel direplikasi untuk menunjukkan keseluruhan gambar dalam layar penuh, dalam resolusi yang lebih rendah. Ini dapat dilakukan dengan mengubah logik kenaikan alamat dalam kod.
  • IP sepenuhnya mudah alih di semua FPGA dan masa disahkan sehingga 100 MHz pada Virtex-4 FPGA.

Langkah 5: Fail yang dilampirkan

RAR mengandungi:

  • Kod Pengawal VGA
  • PDF standard VGA.

Disyorkan: