تلفن : 02177221223 - 02177223107
ایمیل : info@revsa.ir
ساعت کاری : شنبه الی چهارشنبه (8 تا 17)

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

Submitted by admin on سه شنبه, 03/25/1400 - 17:57

معرفی دوره:

عمده افرادی که با FPGA کار میکنند به آن به عنوان یک قطعه قابل برنامه ریزی شبیه یک پروسسور نگاه میکنند، با این تفاوت که با یک زبان دیگر (مثلا VHDL) برای آن برنامه نویسی میکنند و بعضا افراد به دنبال زبانهای جایگزین مانند زبان C هستند که برنامه نویسی راحتتری را انجام دهند. این دیدگاه از آنجا شکل گرفته که افراد یا در محل کار خود و یا با شروع چند مثال به صورت جسته گریخته یاد میگیرند و یک روند یادگیری از بالا به پایین را طی میکنند و در وسط های راه احساس کفایت میکنند و هیچگاه به پایین(اصول اساسی) نمیرسند. نتیجه این میشود که در حین انجام پروژه ها همیشه درگیر خطاهایی میشوند که از رفع آن عاجز می مانند و نهایتا به این نتیجه میرسند که یا تراشه خوب نیست و یا نرم افزار Bug  دارد. و لذت طراحی واقعی با FPGA را هیچوقت تجربه نمیکنند و چقدر حیف است عدم داشتن این تجربه. این سردرگمی زمان پروژه ها را افزایش میدهد و واقعا عذاب آور است. خطایی را که میشود با افزودن یک خط به برنامه رفع کرد ممکن است هفته ها و ماه ها شخص را درگیر کند بدون اینکه بداند ریشه مشکل از کجاست. ریشه این مشکلات به آنجا برمیگردد که فرد شناخت صحیحی از FPGA نداشته و نمی تواند با ابزارهای در دسترس به خوبی کار کند و طراحی را تحلیل کند. اگر خیلی خلاصه در مورد FPGA صحبت کنیم این است که طراحی با FPGA یعنی طراحی یک IC مخصوص یا همان ASIC که باید حواستان به خیلی چیزها باشد وگرنه تضمینی برای عملکرد صحیح آن وجود ندارد. و طراحی یک IC بسیار لذت بخش تر از برنامه نویسی برای یک پروسسور است به شرطی که بدانیم داریم چه کار میکنیم وگرنه خسته کننده خواهد شد. پس شما میخواهید طراح IC خاص شوید و باید بدانید با موضوع سطح بالایی سر و کار دارید .

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

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

سرفصل دوره:

  • معرفی گیت ها و بلوک های منطقی از دیدگاه برنامه پذیر بودن آنها (AND , Adder, Mux, … )
  • شرح ساختار تراشه های قابل برنامه ر یزی و روند تکاملی آنها ( PLA , PAL , CPLD ,FPGA )
  • معرفی تراشه های Xilinx و تشریح امکانات خانواده SPARTAN3
  • بررسی منابع داخلی FPGA شامل Routing Resource, Global Clock و اهمیت آن در طراحی سطح بالا 
  • یک طراحی چگونه بر روی FPGA پیاده میشود؟
  • آشنایی با زبان توصیف سخت افزار  VHDL
  • ماژولار کردن برنامه ها 
  • کار با نرم افزار ISE  و تشریح مراحل کار از توصیف طرح و سنتز تا پیاده سازی بر روی تراشه 
  • تشریح فایل های خروجی هر مرحله (Synthesis, Translate, MAP, Place&Route, BitGen) 
  • ایجاد فایل TestBench و شبیه سازی برنامه 
  • بررسی مشخصات استاندارهای IO ,LVCMOS, LVDS, SSTL, HSTL,  …
  • تخصیص پین و تعیین عملکرد I/O  ها.(I/O Type, Pull Up, IO Speed, …)
  • آشنایی با برد آموزشی  FPGA و کار با قسمتهای مختلف آن 
  • پروگرام کردن تراشه ی FPGA  و PROM با نرم افزار iMPACT از طریق رابط JTAG
  • ایجاد IP Core دلخواه با نرم افزار Core Generator
  • تکنیک های برنامه نویسی با تشریح چند نمونه برنامه و سنتز آن بر روی تراشه 
  • طراحی State Machine  
  • مانیتور کردن داخل FPGA با نرم افزار ChipScope
  • تنظیمات سنتز و پیاده سازی در نرم افزار ISE
  • معرفی پروسسورهای قابل پیاده سازی در FPGA و طراحی با نرم افزار ( XPS, SDK, EDK )
  • طراحی مدارات واسط برای ارتباط برد FPGA با قطعات دیگر
  • بررسی  قابلیت های اضافه شده در FPGA های سری Virtex 4,5,6,7 و امکانات داخلی آنها
  • در چه پروژه هایی باید از  FPGA استفاده کنیم ؟ (مقایسه MCU , DSP , ASIC )
  • معرفی منابع و فایلهای مرتبط

 

مدت دوره : 28 ساعت ( 6 جلسه 4:30 ساعته ) 

پیش نیاز : الکترونیک و مدار منطقی

محل برگزاری دوره : در محل شرکت

وضعیت دوره : فعلا برگزار نمی گردد