دوره آموزشی کار با FPGA

FPGA ها تراشه هایی برای ایجاد یک سیستم با انعطاف پذیری بالا و کارایی مورد نیاز می باشند. FPGA ها
با ارائه یک معماری برنامه پذیر، قیمت پایین و زمان راه اندازی اندک و مهم تر از همه ، ایجاد امکان
پردازش موازی مشکلات متعدد مهندسین و طراحان مدارات دیجیتال را رفع نموده اند. از دیگر مزایای
استفاده از FPGA ها در طراحی ها ، می توان به سرعت بالای پردازش و فرکانس کاری بسیار بالای آن ها
اشاره کرد .این تراشه ها در حوزه های گسترده ای از جمله پردازش سیگنال ، پردازش تصویر ، فیلترهای
دیجیتال ، سیستم های انتقال دیتاهای دیجیتال ، سیستم های مخابراتی و سیستم های مختلف کنترلی به کار برده
می شوند. میتوان گفت تمام چیپ های موجود که در الکترونیک دیجیتال مورد استفاده قرار میگیرند, دارای
یک ساختار پایه ایی بر مبنای الگوریتم های طراحی دیجیتال میباشند که میتوان در این زمینه به انواع IC ها,
پردازنده ها, کنترلر ها و … اشاره کرد. قبل از آنکه تکنولوژی مدار های منطقی قابل برنامه ریزی مطرح
شود, طراحی دیجیتال در مقیاس بزرگ و صرف وقت و هزینه بود,با معرفی این تکنولوژی و گسترش آن,
شرکت های بزرگی همچون XILINX , ALTERA , ACTEL و … شروع به تولید چیپ بسیار پیشرفته با
سرعت در حد چند صد مگاهرتز و بالاتر و ظرفیت گیت های بسیار نمودند. امروزه بوسیله این المان ها
میتوان طراحی های بسیار بزرگ و پیشرفته را با حداکثر دقت و سرعت و حداقل نویز پذیری و خطا انجام
داد. بصورتی که حوزه استفاده این المان ها در سیستم های فضایی, موشک ها, انواع ادوات نظامی, پردازش
تصویر و … میباشد. در کلاس FPGA با استفاده از نرم افزار ISE می توان برای تراشه های FPGA از
خانواده ی Xilinx برنامه نوشت.در این دوره برنامه نویسی و شبیه سازی برنامه ها و تست برنامه ها روی
برد آموزشی انجام می شود. برنامه هایی مانند Pipeline، اینترفیس (I2C، UART و غیره) و فیلتر های
دیجیتال. به دلیل ماهیت FPGA که می تواند دستورات را موازی اجرا کند، سرعت آن گاهی دها برابر
سرعت یک میکروکنترلر می باشد.
تراشه های FPGA کاربرد های خاصی دارند که از این کاربرد ها می توان به موارد زیر اشاره نمود:
1) پردازش سیگنال های رادار
2) پردازش تصویر (به عنوان مثال تشخیص پلاک خودرو)
3) پردازش صدا
4) فیلتر های دیجیتال (مثلا در دستگاه های گیرنده دیجیتال یا مانیتور و تلویزیون LCD)
5) سوییچ های مخابراتی
6) اترنت گیگا بیتی و ارتباط با پورت PCI

سرفصل های دوره:
آموزش کامل VHDL

روند تکاملی ساخت تراشه هایFPGA
معرفی خانواده های مختلف FPGA و خانواده ی Xilinx
معرفی نرم افزار ISE و ساخت پروژه با آن
نوشتن برنامه ی نمایش عدد روی سون سگمنت
توصیف فرکانس متر و بستن عملی آن
کامپوننت کردن و نمونه گیری
چگونگی نوشتن تست بنچ
توصیف بافر سه حالته، ساخت ROM، توصیف FIFO، ساخت RAM
معرفی ماشین های حالت و بلوک مدیریت کلاک
پیاده سازی UART با FPGA
اضافه کردن FIFO به UART
ساخت فیلتر ساده
مرتب کردن اعداد
معرفی بلوک های سازنده ی FPGA و چگونگی کنترل آنها با Plan Ahead و FPGA Editor
اتصال LCD کاراکتری به FPGA و دریافت از UART و نمایش بر روی آن
اتصال صفحه کلید کامپیوتر به FPGA و اسکن کردن آن و نمایش کد های آن روی LCD کاراکتری
روش های پروگرم و پیکربندی FPGA
استفاده از ابزار textio برای شبیه سازی
ساخت کتابخانه، تابع و پکیج در VHDL
آموزش استفاده از IPCORE ها و انجام پروژه های ترکیبی

مخاطبین دوره :دانشجویان کلیه گرایش های برق و کامپیوتر و همینطور مهندسین و تکنسین های برق و
کامپیوتر و افرادی که در زمینه نظامی و طراحی های زیر ساختی فعالیت دارند
پیش نیاز دوره:آشنایی اولیه با مدار منطقی (طراحی دیجیتال)

عنوان: دوره ی FPGA پیشرفته
سرفصل های دوره:
استفاده از امکانات داخلی FPGA مانند DCI)، DDR و( DIFF-IOپایه های دیفرانسیلی
ساخت یک تصویر HD با FPGA برای پورت VGA
ساخت انواع فیلتر با نرم افزار MATLAB و پیاده سازی آن بر رویFPGA

معرفی Core های آماده ی نرم افزار Altium Designer
آموزش اصول کار با نرم افزار XILINX CHIPSCOPE و دیباگ سخت افزاری پروژه
آموزش کار با نرم افزار XILINX EDK و ایجاد پردازنده های MICROBLAZE
​​​​​​​ پیاده سازی شبکه LAN در FPGA
پیاده سازی پروتکل USB و تحلیل نسل های مختلف آن درFPGA
مخاطبین دوره :دانشجویان کلیه گرایش های برق و کامپیوتر و همینطور مهندسین و تکنسین های برق و
کامپیوتر
پیش نیاز دوره:تسلط بر زبان توصیف سخت افزار Verilog ویا VHDL و مباحث دوره ی عمومی(راه
اندازی پرتکل ها)