در این مقاله قصد داریم در رابطه با راهاندازی VGA با FPGA صحبت کنیم. اما قبل از آن بهتر است کمی در رابطه با خود VGA توضیحاتی را بیان کنیم.
شاید برای شما مفید باشد: آموزش FPGA
VGA (Video Graphics Array)
VGA مخفف عبارت Video Graphics Array است. این درگاه در سال ۱۹۸۷ توسط IBM طراحی و جایگزین استانداردهای EGA، MDA و CGA شد.
درگاه VGA دارای ۱۵ پین (DB-15) به صورت سه ردیفی است البته در استاندارد مینی وی جی ای (Mini-VGA) تعداد این پینها ۱۴ و به صورت دو ردیفی است. این درگاه دادههای تصویری را به صورت آنالوگ منتقل میکند. دادههای رنگها متمایز از همدیگر هستند، یعنی دادههای مربوط به هر یک از رنگهای قرمز، سبز و آبی از طریق سه پین متفاوت ارسال میشوند. پینهای یک تا سه به ترتیب وظیفه انتقال دادههای مربوط به رنگ قرمز، سبز و آبی را برعهده دارند.
حداکثر رزولیشن (Resolution) پشتیبانی شده (در حالت استاندارد) برای درگاه وی جی ای، ۲۰۴۸ در ۱۵۳۶ پیکسل (۲۰۴۸*۲۵۳۶ px) است.
وظیفه درگاه VGA انتقال دادههای تصویری به صورت آنالوگ از کامپیوتر (یا سایر دستگاهها) به دستگاههای پخش کننده نظیر صفحههای نمایش (Monitors)، پروژکتورها (Projectors)، برخی از تلوزیونها و … است. اکثر صفحات نمایش (Monitors) حداقل دارای یک پورت VGA هستند. به این ترتیب توسط درگاه VGA میتوانیم تصاویر را منتقل کرده و آنها را مشاهده کنیم.
VGA pinout
Pin | Name | Dir | Description |
---|---|---|---|
1 | RED | Red Video (75 ohm, 0.7 V p-p) | |
2 | GREEN | Green Video (75 ohm, 0.7 V p-p) | |
3 | BLUE | Blue Video (75 ohm, 0.7 V p-p) | |
4 | RES | – | Reserved |
5 | GND | Ground | |
6 | RGND | Red Ground | |
7 | GGND | Green Ground | |
8 | BGND | Blue Ground | |
9 | +5V | +5 VDC | |
10 | SGND | Sync Ground | |
11 | ID0 | Monitor ID Bit 0 (optional) | |
12 | SDA | DDC Serial Data Line | |
13 | HSYNC or CSYNC | Horizontal Sync (or Composite Sync) | |
14 | VSYNC | Vertical Sync | |
15 | SCL | DDC Data Clock Line |
در جدول بالا شرح و دایرکشن هر یک از این پینها به خوبی توضیح داده شده است و نیاز به هیچ گونه توضیح اضافی نیست.
تصویری از چگونگی pinout را در تصویر زیر نیز مشاهده میکنید:
بازی تتریس با FPGA
ما با استفاده از زبان وریلاگ و برد آموزشی ALINX بازی تتریس را بر روی FPGA پیاده کردیم.
بر روی برد آموزشی ALINX یک کانکتور VGA وجود دارد ما یک سر کابل VGA را به برد و سر دیگر کابل را مانیتور وصل میکنیم و همچنین با استفاده از کلیدهایی که بر روی برد وجود دارد بازی میکنیم.
این مقاله برگرفته از این پروژه در گیتهاب است، که شما میتوانید کدهای مربوطه را از سایت گیتهاب دانلود کنید.
همچنن فیلم زیر تست و راهاندازی این پروژه میباشد که میتوانید مشاهده کنید.
سلام.
جالب بود. ولی آیا میشه تو یک برد ارزون تر این رو اجرا کرد؟ این برد توی فیلم مدل گرونیه! مدل سبک قیمت تر میشه معرفی کنید و آیا همین برنامه روی اون اجرا خواهد شد؟