آشنایی مختصر با دوره FPGA پیشرفته

 

در دوره آموزشی  FPGA پیشرفته ، یادگیری مهارت های سطح بالا و پیاده سازی آن ها بر روی پردازنده های SPARTAN3 خانواده Xilinx صورت می گیرد . مواردی از قبیل برقراری ارتباط از طریق پروتکل های ارتباطی همچون USB و LAN ، آشنایی با ایجاد پردازنده های MICROBLAZE ، اصول طراحی بردهای مبتنی بر FPGA با فرکانس بالا و هم چنین آشنایی با نرم افزار های قدرتمند در این حوزه در این دوره مورد بحث و بررسی قرار می گیرد .

تحلیل بازار کار

 

تراشه های FPGA دارای قدرت و سرعت بالا در انجام محاسبات پیچیده و همچنین توان مصرفی پایین هستند اما به دلیل اینکه مانند میکروکنترلر ها واحدهای جانبی متعددی رادر اختیار کاربر قرارنمی دهند استفاده از آن ها هزینه بر بوده و دارای قیمت بالایی نیز هستند.

معمولادر صنایع و شرکت هایی که به تولید محصولات برق و الکترونیک می پردازند، هزینه تمام شده محصول اولویت بیشتری نسبت به سرعت و کارایی دارد بنابراین از میکروکنترلرهای رایجی چون AVR ، ARM و PIC استفاده می شود. اما در کاربردهای نظامی همچون مخابرات، هوا فضا و ... این سرعت و کارایی سیستم است که حرف اول را می زند و هزینه اهمیت چندانی ندارد. بنابراین این صنایع عمدتا از پردازنده های FPGA استفاده می کنند. پس مسلما این صنایع نیازمند متخصصین با دانش کافی در حوزه FPGA جهت انجام پروژه های مختلف خواهند بود.

 

البته این بدان معنی نیست که این دو بخش مختلف صرفا از پردازنده های معرفی شده استفاده کنند بلکه هر صنعت و شرکتی با توجه به نیازها و اهداف اصلی خود، بهترین گزینه را انتخاب می کند. بنابراین یادگیری راه اندازی و کار با تمامی پردازنده های متداول و مورد استفاده تمامی صنایع باعث می شود تا یک مهندس با قابلیت های تمامی این پردازنده ها آشنا شده و در مواقع لزوم بهترین و مناسب ترین گزینه را برای کار انتخاب نماید.

توانایی دانشجو پس از پایان دوره FPGA پیشرفته

 

پس از پایان دوره از شرکت کنندگان انتظار می رود پروژه های سطح بالا توسط پردازنده FPGA انجام دهند. دانشجویان این دوره قادر خواهند بود با پروتکل های ارتباطی همچون CAN و USB کار کرده و همچنین با بکارگیری اصول و مهارت های آموزش داده شده در طول دوره به طراحی بردهای پیشرفته و فرکانس بالا مبتنی بر تراشه های FPGA بپردازند.

شیوه برگزاری کلاس

 

در این دوره کدنویسی پردازنده توسط زبان توصيف سخت افزاری (VHDL) انجام می پذیرد که آموزش این زبان در طی دوره انجام خواهد گرفت. در بخش نرم افزاری این دوره، پروژه ها در نرم افزار ISE ساخته شده و روی برد آموزشی شرکت نیراسیستم که به تعداد کافی در اختیار دانشجویان قرار می گیرد به صورت سخت افزاری پیاده سازی خواهند شد. هسته مرکزی این برد Spartan3 و از خانواده Xilinx بوده و دارای امکانات و واحدهای مختلف جهت راه اندازی در این دوره می باشد.

 

سرفصل آموزشی دوره پردازنده های FPGA پیشرفته :

 

• آموزش اصول کار با نرم افزار XILINX CHIPSCOPE و دیباگ سخت افزاری پروژه

• آموزش نرم افزار XILINX PLAN AHEAD

• آموزش کار با نرم افزار XILINX EDK و ایجاد پردازنده های MICROBLAZE

•​​​​​​​ آموزش کار با نرم افزار XILINX SYSTEM GENERATOR در محیط MATLAB

•​​​​​​​ آشنایی با FPGA Editor

•​​​​​​​ نحوه طراحی سخت افزار برای FPGA های خانواده XILINX

•​​​​​​​ اصول طراحی بردهای فرکانس بالا برای پروژهای مبتنی بر FPGA

•​​​​​​​ پیاده سازی شبکه LAN در FPGA 

•​​​​​​​ آموزش مقدماتی vivado

 

در حال بروز رسانی

 

در پردازنده های FPGA مدارات دیجیتال به صورت سخت افزاری در داخل تراشه پیاده می شوند بنابراین علاقمندان به شرکت در دوره FPGA و کار با این پردازنده باید تسلط نسبی در حوزه الکترونیک دیجیتال و مدارات منطقی داشته باشند.

ساختار داخلی این پردازنده ها با میکروکنترلرهای AVR و ARM کاملا متفاوت است و باتوجه به اینکه اکثر دانشجویان مهندسی برق در دانشگاه با میکروکنترلرها آشنا می شوند، ممکن است در ابتدای کار با FPGA ، بدلیل عدم ارتباط با ساختار این تراشه به کندی پیش بروند که امری کاملا طبیعی است.

 

همچنین به دلیل عدم وجود منابع  آموزشی کافی به زبان فارسی، دانشجویان نیازمند رجوع به منابع به زبان انگلیسی هستند که برخورداری از سطح خوبی از زبان انگلیسی را می طلبد.

در حال بروز رسانی

 

.آیا سپری نمودن دوره مقدماتی برای دوره پیشرفته و یا حرفه ای ضروری است ؟

بله ؛ تسلط کافی به مباحث دوره مقدماتی برای سپری نمودن دوره سطح بالاتر بسیار لازم است اما الزامی به گذراندن دوره در مجموعه نیراسیستم نیست و اگر فردی به صورت شخصی و یا توسط سایر آموزشگاه ها دارای سطح لازم است می تواند در دوره پیشرفته و یا حرفه ای شرکت نماید .

.چه خانواده ای از FPGA تدریس میشه و آیا فرقی داره ؟

در ایران خانواده های Xilinx و Altera بسیار محبوب هستن و در صنایع نظامی و شرکت های مختلف الکترونیکی از هر دو برند استفاده می شود . نکته مهم در فراگیری FPGA این هست که ساختار طراحی مدارهای دیجیتال مبتنی بر FPGA حائز اهمیت است و به صورت کلی می توان گفت با یادگیری هر یک از برندهای نام برده شده می توان به برند دیگر هم رجوع کرد و نیازی به یادگیری مجدد نیست . ضمن اینکه به دلیل استقبال بیشتر مخاطبین از برند Xilinx دوره های این برند به تعداد بیشتری در نیراسیستم تشکیل می شود .

. به نظر شما فردی که تسلط زیادی به مبانی دیجیتال ندارد بهتر است برای یادگیری میکرو ARM  را انتخاب کند یا FPGA ؟

به صورت کلی حوزه  میکروکنترلر و FPGA دو مقوله جداگانه هستند و حتی می‌شود هر دو مهارت را به صورت موازی پیگیری کرد. هر دو حوزه بسیار خوب هستند و می‌توانند از نظر شغلی به شما کمک زیادی کنند. اما توجه شود که برای یادگیری میکروکنترلرها و هم چنین FPGA تسلط به مدارمنطقی بسیار حائز اهمیت است .

. از چه نرم افزاری برای آموزش استفاده می شود ؟

در دوره های Xilinx از نرم افزار ISE و در دوره های Altera از نرم افزار Quartus استفاده می شود .

.یادگیری FPGA با کدام زبان برنامه نویسی مناسب تر است ؟

برای پیاده‌سازی طراحی دیجتیال با استفاده از FPGA ابتدا باید یک زبان توصیف سخت‌افزاری را به خوبی یاد بگیرید و به آن مسلط شوید. هر کدام از زبان‌های VHDL و Verilog برای این کار مناسب هستند و هیچ تفاوتی از لحاظ قدرت پیاده‌سازی ندارند.

.آیا در طول دوره از سخت افزار هم جهت یادگیری استفاده می شود؟

بله؛ باتوجه به اینکه دوره های نیراسیستم به صورت کاملا عملی برگزار می شوند، برد آموزشی و سخت افزارهای موردنیاز نیز در اختیار دانشجویان قرارداده می شود و دانشجویان در طول دوره پروژه های متعددی را توسط بردهای آموزشی انجام می دهند.

. آیا برای استفاده از سخت افزار و بردهای آموزشی باید هزینه جداگانه ای پرداخت کرد؟

خیر؛ بردهای آموزشی در طول دوره و جهت استفاده در کلاس به صورت رایگان در اختیار دانشجویان قرار می گیرد.

. آیا امکان تهیه برد آموزشی برای استفاده خارج از کلاس نیز وجود دارد؟

بله؛ در صورتی که دانشجو جهت انجام تمرینات خارج از کلاس و انجام پروژه های شخصی نیازمند برد آموزشی باشد می تواند برد مورد نیاز را از مرکز آموزش نیراسیستم خریداری نماید اما هیچ اجباری در این خصوص وجود ندارد.

. آیا در انتهای دوره برای شرکت کنندگان گواهینامه صادر می شود؟

در صورتی که دانشجو در پایان دوره نمره ی لازم را کسب کند موفق به دریافت گواهینامه خواهید شد. حد نصاب نمره 70 از 100 بوده و از مجموع نمرات فعالیت های کلاسی، کوییز ها ، تمرینات و آزمون پایانی دانشجو محاسبه می شود.

. نحوه برگزاری آزمون پایانی دوره به چه صورت است؟

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

.آیا برای این دوره جزوه یا کتاب خاصی باید خریداری شود ؟

در تمامی دوره های آموزشی کتاب ها ، مراجع و فایل های آموزشی مختلفی توسط اساتید معرفی می گردد .