00:00 / 00:00
1.8x
1.4x
1.0x
0.7x
HD SD
HD
SD
ثبت‌نام رایگان
  • دسترسی به 8 جلسه نمونه از دوره
  • دسترسی به 8 جلسه نمونه از دوره
  • عضویت در تالار گفت‌وگوی دوره
  • اضافه شدن دوره به پروفایل
فقط محتوا
  • دسترسی کامل و نامحدود به محتوای دوره
  • تمام قابلیت‌‌های پلن رایگان
    +
  • دسترسی کامل و نامحدود به محتوا
179,000 تومان
دوره کامل
  • دسترسی به تمام قابلیت‌های دوره
  • تمام قابلیت‌های پلن محتوا
    +
  • گواهی‌نامه مکتب‌خونه
  • پروژه محور
  • تمرین و آزمون
  • تالار گفتگو
  • تسهیل استخدام
279,000 تومان
00:00 / 00:00
1.8x
1.4x
1.0x
0.7x
HD SD
HD
SD
مکتب‌خونه مکتب‌خونه

آموزش FPGA مقدماتی

دوره‌های مکتب‌پلاس
40 ساعت
89٪ (95 رای)

دوره آموزش FPGA چیست؟

FPGA یا Field Programmable Gate Array یک مدار مجتمع است که می ­توان آن را پس از اتمام فرآیند تولید، مطابق نیاز طراح برنامه ­ریزی نمود و روابط منطقی بین پایه ­های ورودی و خروجی را تغییر داد. این تراشه­ ها نیمه رساناهایی هستند که از تعداد زیادی جزء کوچک الکترونیکی یا سلول  به نام بلوک منطقی (Logic Block) ساخته شده‌­اند. این سلول از نظر منطقی چیزی بین یک مدار الکترونیکی و یک میکروکنترلر است. در واقع، FPGA یک تراشه قابل برنامه‌ریزی است. این تراشه‌ها برای توسعه سخت افزارهای دیجیتالی پیچیده و اجتناب از ساخت بردهایی با تراشه­‌های گسسته به وجود آمده‌­اند. با استفاده از تراشه­‌های FPGA بردهایی که قبلاً با تعداد زیادی از تراشه‌های دیجیتال ساخته می­‌شدند، در یک تراشه FPGA با سرعت بالاتر و امکان به‌روزرسانی کردن سخت افزار پیاده‌سازی می‌­شوند.

 

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

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

هدف از دوره آموزشی FPGA مقدماتی آشنایی با معماری داخلی FPGAها، نحوه برنامه‌ریزی و استفاده از آن‌­ها، بهینه‌سازی برنامه­‌ها، شبیه­‌سازی برنامه­‌ها، معرفی ابزارهای مورد استفاده جهت کار با تراشه­ های FPGA و استفاده از تراشه‌­ها در پروژه‌های جدی با نرخ بالا و حجم پردازش سنگین است. 

 

دوره آموزش FPGA مقدماتی مناسب چه کسانی است؟

این دوره­‌ برای کسانی که علاقمند به کار در حوزه‌­های الکترونیکی و فضاها‌ی مرتبط آن در ایران و یا خارج از کشور هستند، مناسب است. همچنین دانشجویانی که در زمینه‌­های تحقیقاتی مشغول هستند، می‌­توانند از مفاهیم گفته شده استفاده نمایند. به­ طورکلی، یکی از قدرتمندترین تراشه‌هایی که امروزه در کاربردهای مختلف الکترونیکی، مخابراتی و کنترل مورد استفاده شرکت­‌های بزرگ دنیا و ایران می‌باشد ، تراشه‌های FPGA است که با فراهم آوردن بسترهایی برای پردازش سیگنال، و با بهبود قابلیت­‌های پردازنده‌ها و ... در بسیاری از کاربردها مورد استفاده قرار گرفته‌اند.

 

بعد از فراگیری دوره آموزش FPGA در مکتب خونه چه مهارت­هایی کسب خواهید کرد؟

این دوره آموزشی در دو دوره مقدماتی و پیشرفته ارائه می­‌شود که شما پس از گذراندن دوره مقدماتی با مفاهیم اساسی مربوط به معماری FPGAها، مقایسه آن‌­ها با دیگر پردازنده‌ها، ساختارهای برنامه ­نویسی موجود برای FPGAها، فرآیند شبیه‌سازی و پیاده‌­سازی آن‌ها آشنا می­‌شوید و با انجام پروژه‌های درنظر گرفته شده، در این مباحث به تسلط خوبی خواهید رسید. 

 

سرفصل‌های دوره آموزش FPGA مقدماتی

فصل1- پردازنده‌ها و قابلیت‌های آن‌ها
01:56 ساعت
00:56
Combined Shape Created with Sketch. 4 جلسه
بارم:
3%
نمایش جلسات فصل  

در این فصل معماری داخلی پردازنده­‌ها بصورت کلی مورد بررسی قرار می­‌گیرد. در ابتدا به بررسی تفاوت میکروپروسسورها و میکروکنترلرها پرداخته می­‌شود و بعد از آن امکانات داخلی مهم آنها تبیین می‌­شود. پس از مرور امکانات داخلی، DSPها به عنوان یک نوع پردازنده مختص الگوریتم‌های پردازش سیگنال بررسی می‌­شود. در این فصل، به برخی از ضعف‌های پردازنده­‌ها در موازی­‌سازی الگوریتم‌ها اشاره می­‌شود و روال‌هایی که برای بهبود این ضعف ارائه شده بیان می‌­شود.

معرفی کلیات میکروکنترلرها و میکروپروسسورها
"16:03
معماری کلی پردازنده‌ها
"22:03
معرفی پردازنده‌های DSP
"18:14
تمرین شماره1- بررسی معماری پردازنده‌های جدید و روش‌های مورد استفاده برای افزایش سرعت در آن‌ها

 (الزامی)

100.0%
     
"60:00
فصل2- آشنایی با FPGAها
04:05 ساعت
01:35
Combined Shape Created with Sketch. 9 جلسه
بارم:
9%
نمایش جلسات فصل  

در این فصل پس از معرفی شرکت‌های مهم سازنده FPGA و انواع تراشه‌­ها و نرم ­افزارهای آن‌ها، معماری داخلی FPGAها مورد بررسی قرار می‌­گیرد. برخی از بلوک‌های مهم FPGAها بررسی می­‌شود و لزوم استفاده از آنها بیان می­‌شود. به چگونگی استفاده از بلوک‌ها برای استفاده جهت ساخت مدارات منطقی پرداخته می­‌شود و تعدادی از تراشه­‌های مختلف شرکت Xilinx مرور می‌شود و امکانات آنها مقایسه می‌­شود. در انتها چند بورد نمونه توضیح داده می­‌شود و امکاناتی که بر روی این بوردها وجود دارد، ذکر می­‌شود.

تفاوت پردازنده‌ها، ASIC و FPGA
"19:26
معرفی شرکت‌های معروف سازنده FPGA
"09:17
معرفی سایت‌های مرتبط با تراشه‌های Xilinx، Intel و Actel
"09:44
معماری داخلی FPGA، بخش CLB و پردازنده‌های داخلی
"17:06
تمرین شماره2- مقایسه LUTها و دلیل انتخاب ورودی‌های 4، 5 و 6 برای آن‌ها

 (الزامی)

22.2%
     
"60:00
حافظه‌های BRAM در FPGA، معرفی چند بورد نمونه FPGA
"28:08
مقایسه تعدادی از تراشه‌های FPGA از شرکت Xilinx
"11:39
تمرین شماره3- بررسی معماری FPGAهای Zynq، سری RFSoC و MPSoC

 (الزامی)

33.3%
     
"60:00
کوییز شماره 1
44.4%
     
"30:00
فصل3- آشنایی با کلیات زبان‌های توصیف سخت‌افزار، بدنه‌های ترکیبی و ترتیبی
11:12 ساعت
04:42
Combined Shape Created with Sketch. 18 جلسه
بارم:
23%
نمایش جلسات فصل  

در این فصل در ابتدا مروری بر زبان‌های توصیف سخت­‌افزار و قابلیت‌های آن‌ها صورت می­‌گیرد. سپس قواعد کلی در استفاده از زبان VHDL بیان می‌­شود. نحوه تعریف ورودی-خروجی و انواع داده­‌های موجود در VHDL توضیح داده می­‌شود. برنامه‌­هایی برای مدارات ترکیبی و ترتیبی نوشته می­‌شود و دستوراتی که برای نوشتن این برنامه‌­ها مورد نیاز است ذکر می­‌شود. ساختارهای هم‌روند و ترتیبی و دستورات مرتبط با هر یک توضیح داده می­‌شود. به انواع متغیر قابل تعریف در VHDL پرداخته می­‌شود. با آوردن مثال‌های متعدد سعی می‌­شود مفاهیم مورد نظر به خوبی ملکه ذهن شود.

مرور کلیات زبان‌های مورد استفاده برای برنامه‌نویسی و کار با FPGA
"19:09
شروع کار با نرم‌افزار ISE
"16:36
سنتز و شبیه‌سازی یک برنامه ساده گیت منطقی NOT در محیط ISE
"14:12
پروژه میانی اول- نوشتن برنامه f=a.b با استفاده از گیت AND و با استفاده از مالتی‌پلکسر

 (الزامی)

8.7%
     
"60:00
تعریف کتابخانه‌ها و نوع متغیرها در VHDL
"21:52
آشنایی با ساختارهای dataflow، structural و behavioral
"27:19
مثال‌هایی از بدنه‌های ترکیبی در زبان VHDL
"19:53
پروژه میانی دوم- برنامه ضرب‌کننده دو عدد 2-بیتی بدون علامت

 (الزامی)

17.4%
     
"90:00
آشنایی با Language Template در نرم‌افزار ISE
"25:01
برنامه یک جمع‌کننده 4 بیتی با فراخوانی Full-Adderها در ISE
"22:57
پروژه میانی سوم- برنامه مرتب‌کننده 4 عدد بدون علامت

 (الزامی)

21.7%
     
"90:00
مثال‌هایی از ساختارهای منطقی ترتیبی مانند Latch، فلیپ فلاپ، رجیسترها و ...
"23:50
شیفت رجیستر، شمارنده‌ها، LFSR و کاربردهای آن
"33:54
مثال‌هایی ازکدنویسی در ISE
"18:04
نوشتن برنامه یک شمارنده در ISE
"20:33
مثالی از بدنه‌های ترکیبی و ترتیبی، حافظه ROM، تفاوت signal و variable
"19:01
پروژه میانی چهارم- برنامه تقریب تکه‌خطی یک تابع ریاضی

 (الزامی)

30.4%
     
"120:00
کوییز شماره 2
21.7%
     
"30:00
فصل4- ماشین حالت و برنامه‌های کنترل داده، فراخوانی‌های مکرر، زیربرنامه‌ها و توابع در VHDL
12:11 ساعت
02:57
Combined Shape Created with Sketch. 13 جلسه
بارم:
36%
نمایش جلسات فصل  

در این فصل در ابتدا به نحوه نوشتن کنترل­‌کننده در VHDL پرداخته می‌­شود. انواع ماشین‌های حالت و نحوه کدنویسی آن‌ها در چند مثال بررسی می­‌شود. نحوه فراخوانی برنامه­‌های از قبل نوشته شده و نحوه برنامه‌­نویسی ساختارهای تکراری مرور می­‌شود. زیربرنامه­‌ها و توابع در VHDL معرفی می­‌شود. همچنین نحوه ساخت Package توضیح داده می­‌شود. در انتها هم برای هر کدام از موارد فوق­‌الذکر مثال‌های متعددی آورده می­‌شود تا نحوه عملکرد این بخش‌ها به خوبی جا بیفتد.

ماشین حالت- قسمت اول
"17:38
ماشین حالت- قسمت دوم
"24:38
پروژه میانی پنجم- برنامه انکدر CRC

 (الزامی)

25.0%
     
"120:00
استفاده از for-generate
"22:14
معرفی Package، Function و Procedure
"22:16
برنامه محاسبه بزرگترین مضرب مشترک دو عدد
"16:12
برنامه Funnel Shifter
"22:29
پروژه میانی ششم- برنامه ضرب‌کننده Baugh-Wooly

 (الزامی)

27.8%
     
"180:00
برنامه تابع ضرب‌کننده و استفاده از Package
"15:40
مثال‌هایی از برنامه‌نویسی VHDL
"26:23
مثال‌هایی از برنامه‌نویسی VHDL
"10:27
پروژه میانی هفتم- برنامه ضرب دو ماتریس 3×3

 (الزامی)

38.9%
     
"240:00
کوییز شماره 3
8.3%
     
"14:00
فصل5- ملاحظات برنامه‌های تست و مطالب مرتبط با پیاده‌سازی سخت‌افزاری
10:15 ساعت
02:26
Combined Shape Created with Sketch. 13 جلسه
بارم:
29%
نمایش جلسات فصل  

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

اصول کلی برنامه‌های تست
"13:24
ساخت سیگنال‌های متناوب، استفاده از Record، استفاده از دستور Assert
"16:28
کار با فایل‌ها برای تست برنامه
"16:24
برنامه محاسبه فیلتر میانه
"14:55
ادامه برنامه محاسبه فیلتر میانه
"16:57
پروژه میانی هشتم- برنامه مولد اعداد گوسی

 (الزامی)

31.0%
     
"150:00
گزارش‌گیری Timing در نرم‌افزار ISE
"22:43
گزارش‌گیری توان مصرفی در نرم‌افزار ISE
"15:29
نحوه مشخص کردن پین‌ها و پیکربندی FPGA
"12:46
آشنایی با محیط Vivado و نحوه کار در این محیط
"17:27
پروژه میانی نهم- برنامه محاسبه جذر، لگاریتم و ...

 (الزامی)

24.1%
     
"120:00
پروژه پایانی- برنامه محاسبه هیستوگرام یک تصویر

 (الزامی)

31.0%
     
"180:00
کوییز شماره 4
13.8%
     
"19:00

تالار گفت‌وگو

استاد دوره
مهدی آیت مهدی آیت

دکتر مهدی آیت دانش‌­آموخته دکترای رشته برق الکترونیک از دانشگاه علم و صنعت ایران می‌­باشد. ایشان از سال 1387 بطور تخصصی مشغول به کار در حوزه­‌های راداری، جنگ الکترونیک، مخابرات ماهواره و ... هستند. از جمله فعالیت‌های کاری ایشان، انجام یک سری فعالیت‌های تحقیقاتی در حوزه‌­های مخابراتی، همکاری با چند موسسه برای تدریس مباحث پیشرفته پردازش سیگنال، مخابرات و FPGA، مشاوره و همکاری با چند شرکت معتبر در پروژه‌­های ساخت رادار، جنگ الکترونیک و ماهواره و همچنین طراحی این سیستم‌ها می­‌باشد.

درباره گواهینامه
مکتب‌خونه مکتب‌خونه
حد نصاب قبولی در دوره:
80.0 نمره
فارغ‌التحصیل شدن در این دوره نیاز به ارسال تمرین‌ها و پروژه‌های الزامی دارد.

ویژگی‌های دوره آموزش FPGA مقدماتی

Combined Shape1 Created with Sketch. گواهی‌نامه مکتب‌خونه

در صورت قبولی در دوره، گواهی نامه رسمی پایان دوره توسط مکتب‌خونه به اسم شما صادر شده و در اختیار شما قرار می گیرد.

 

مشاهده نمونه گواهینامه

خدمات منتورینگ

خدمات منتورینگ به معنای برخورداری دانشجو از راهنما یا پشتیبان علمی در طول گذراندن دوره می‌باشد. این خدمات شامل پاسخگویی به سوالات آموزشی(در قالب تیکتینگ)، تصحیح آزمون یا پروژه های دوره و ارائه باز خورد موثر به دانشجو می‌باشد.

پروژه محور

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

تمرین و آزمون

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

تالار گفتگو

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

تسهیل استخدام

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

 

مشاهده اطلاعات بیشتر

نظرات  (2 نظر)

محمدامین
12:50 - 1400/06/27
دانشجوی دوره
دوره بسیار خوبی هست استاد به کل مطلب کاملا مسلط هستن نحوه بیان وبقیه موارد هم به نظرم خوب هست با تشکر از مکتبخونه برای این دوره مفید
علی
02:02 - 1400/01/30
دانشجوی دوره
به نظر میاد اولین نفری هستم که توی این دوره ثبت نام کردم باقدرت بریم که ببینیم چه میکنیم

سوالات پرتکرار

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

اطلاعات بیشتر

سرفصل­ های دوره آموزش FPGA مقدماتی در مکتب خونه چیست؟

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

 

فصل دوم دوره آشنایی با FPGAهاست. در بخش اول آن تفاوت پردازنده ­ها، ASIC و FPGA بیان می­‌شود. در بخش دوم، به معرفی شرکت­‌های معروف سازنده FPGA، بخش سوم، معرفی سایت­‌های مرتبط با تراشه ­های Xilinx، Intel و Actel در بخش چهارم، به معماری داخلی FPGA، بخش CLB و پردازنده­‌های داخلی پرداخته­ می­‌گردد. پس از پایان بخش چهارم، نوبت به تمرین دوم می‌­رسد که مقایسه LUTها و دلیل انتخاب ورودی‌های 4، 5 و 6 برای آن­ها با آن انجام می­‌گیرد. بخش پنجم این فصل، به حافظه های BRAM در FPGA و معرفی چند بورد نمونه FPGA اختصاص دارد. در بخش ششم نیز مقایسه تعدادی از تراشه­‌های FPGA از شرکت Xilinx مورد بررسی قرار می­‌گیرد. در پایان این فصل، تمرین سوم آورده شده­ است که معماری FPGAهای Zynq، سری RFSoC و MPSoC را در آن بررسی می‌­کنیم و برای تثبیت آموخته‌ها یک کوییز نیز از علاقمندان گرفته می­‌شود. 

 

در فصل سوم از دوره آموزش FPGA به آشنایی با کلیات زبان­‌های توصیف سخت‌­افزار، بدنه‌های ترکیبی و ترتیبی پرداخته می‌­شود. در بخش اول این فصل کلیات زبان­‌های مورد استفاده برای برنامه ­نویسی و کار با FPGA بررسی و مرور می­‌شوند. در بخش دوم، کار با نرم­‌افزار ISE را شروع می‌­کنیم و در بخش سوم، یک برنامه ساده گیت منطقی NOT در محیط ISE سنتز و شبیه‌­­سازی می­‌شود. در پروژه اول این فصل، برنامه f=a.b را با استفاده از گیت AND و با استفاده از مالتی‌­پلکسر می‌­نویسیم. بعد از پایان پروژه بخش چهارم این فصل آغاز می‌­شود، در این بخش  کتابخانه‌­ها و نوع متغیرها در VHDL تعریف می‌­شوند.

در بخش پنجم، با ساختارهای dataflow، structural و behavioral آشنا می‌­شویم و در بخش ششم، از بدنه‌­های ترکیبی در زبان VHDL مثال­‌هایی آورده می‌­شود. بعد از آن پروژه دوم، یعنی برنامه ضرب­‌کننده دو عدد 2-بیتی بدون علامت را مورد بررسی قرار می­‌دهیم. در بخش هفتم از فصل دوم دوره آموزش FPGA با Language Template در نرم­ افزار ISE آشنا می‌­شویم و در بخش هشتم، برنامه یک جمع ­کننده 4 بیتی با فراخوانی Full-Adderها در ISE آموزش داده می‌­شود.

بعد از این بخش، پروژه سوم این فصل یعنی برنامه مرتب­ کننده 4 عدد بدون علامت را آموزش خواهیم دید. در بخش‌های نهم، دهم، یازدهم، دوازدهم و سیزدهم به مثال‌­هایی از ساختارهای منطقی ترتیبی مانند Latch، فلیپ فلاپ، رجیسترها و ...، شیفت رجیستر، شمارنده­‌ها، LFSR و کاربردهای آن، مثال­‌هایی ازکدنویسی در ISE، نوشتن برنامه یک شمارنده در ISE و مثالی از بدنه‌های ترکیبی و ترتیبی، حافظه ROM، تفاوت signal و variable پرداخته می­‌شود. در پایان، این فصل با  پروژه برنامه تقریب تکه ­خطی یک تابع ریاضی به انتها می‌­رسد و کوییز دوم نیز برگزار می‌­شود. 

 

فصل چهارم از دوره آموزش FPGA در مورد ماشین حالت و برنامه­‌های کنترل داده، فراخوانی­‌های مکرر، زیربرنامه­‌ها و توابع در VHDL است. در بخش اول این فصل قسمت اول از ماشین حالت و در بخش دوم، قسمت دوم ماشین حالت معرفی می‌شود. پس از آن، پروژه پنجم این دوره آموزشی یعنی برنامه انکدر CRC انجام می‌­شود. در بخش سوم استفاده از for-generate را می‌­آموزیم. در بخش چهارم Package، Function و Procedure معرفی می‌­شوند. در بخش پنجم، برنامه محاسبه بزرگترین مضرب مشترک دو عدد نوشته می‌­شود و در بخش ششم، برنامه Funnel Shifter آموزش داده می‌­شود. سپس پروژه ششم یعنی برنامه ضرب‌­کننده Baugh-Wooly آموزش داده می­‌شود. 

در بخش هفتم این فصل، برنامه تابع ضرب­‌کننده و استفاده از Package معرفی می‌­شود. در بخش‌­های هشتم و  نهم، مثال‌هایی از برنامه­ نویسی VHDL آورده می‌­شود. پس از آن پروژه هفتم یعنی برنامه ضرب دو ماتریس 3×3 آموزش داده می‌­شود و مجدداً برای تعمیق و تثبیت آموخته‌ها، کوییز سوم برگزار می‌­شود. 

 

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

در بخش ششم، گزارش‌­گیری Timing در نرم­‌افزار ISE معرفی می­‌شود. بخش هفتم، به گزارش­‌گیری توان مصرفی در نرم‌­افزار ISE پرداخته می­‌شود. در بخش­‌های هشتم و نهم، نحوه مشخص کردن پین‌­ها و پیکربندی FPGA و همینطور آشنایی با محیط Vivado و نحوه کار در این محیط بررسی می­‌گردد. در پایان، پروژه نهم یعنی برنامه محاسبه جذر، لگاریتم و پروژه دهم یعنی برنامه محاسبه هیستوگرام یک تصویر انجام می‌­گیرد و در خاتمه دوره نیز، کوییز چهارم برگزار می‌­شود. 

 

×

ثبت نظر

به این دوره از ۱ تا ۵ چه امتیازی می‌دهید؟

فصل1- پردازنده‌ها و قابلیت‌های آن‌ها
01:56 ساعت
00:56
Combined Shape Created with Sketch. 4 جلسه
بارم:
3%
نمایش جلسات فصل  

در این فصل معماری داخلی پردازنده­‌ها بصورت کلی مورد بررسی قرار می­‌گیرد. در ابتدا به بررسی تفاوت میکروپروسسورها و میکروکنترلرها پرداخته می­‌شود و بعد از آن امکانات داخلی مهم آنها تبیین می‌­شود. پس از مرور امکانات داخلی، DSPها به عنوان یک نوع پردازنده مختص الگوریتم‌های پردازش سیگنال بررسی می‌­شود. در این فصل، به برخی از ضعف‌های پردازنده­‌ها در موازی­‌سازی الگوریتم‌ها اشاره می­‌شود و روال‌هایی که برای بهبود این ضعف ارائه شده بیان می‌­شود.

معرفی کلیات میکروکنترلرها و میکروپروسسورها
"16:03
معماری کلی پردازنده‌ها
"22:03
معرفی پردازنده‌های DSP
"18:14
تمرین شماره1- بررسی معماری پردازنده‌های جدید و روش‌های مورد استفاده برای افزایش سرعت در آن‌ها

 (الزامی)

100.0%
     
"60:00
فصل2- آشنایی با FPGAها
04:05 ساعت
01:35
Combined Shape Created with Sketch. 9 جلسه
بارم:
9%
نمایش جلسات فصل  

در این فصل پس از معرفی شرکت‌های مهم سازنده FPGA و انواع تراشه‌­ها و نرم ­افزارهای آن‌ها، معماری داخلی FPGAها مورد بررسی قرار می‌­گیرد. برخی از بلوک‌های مهم FPGAها بررسی می­‌شود و لزوم استفاده از آنها بیان می­‌شود. به چگونگی استفاده از بلوک‌ها برای استفاده جهت ساخت مدارات منطقی پرداخته می­‌شود و تعدادی از تراشه­‌های مختلف شرکت Xilinx مرور می‌شود و امکانات آنها مقایسه می‌­شود. در انتها چند بورد نمونه توضیح داده می­‌شود و امکاناتی که بر روی این بوردها وجود دارد، ذکر می­‌شود.

تفاوت پردازنده‌ها، ASIC و FPGA
"19:26
معرفی شرکت‌های معروف سازنده FPGA
"09:17
معرفی سایت‌های مرتبط با تراشه‌های Xilinx، Intel و Actel
"09:44
معماری داخلی FPGA، بخش CLB و پردازنده‌های داخلی
"17:06
تمرین شماره2- مقایسه LUTها و دلیل انتخاب ورودی‌های 4، 5 و 6 برای آن‌ها

 (الزامی)

22.2%
     
"60:00
حافظه‌های BRAM در FPGA، معرفی چند بورد نمونه FPGA
"28:08
مقایسه تعدادی از تراشه‌های FPGA از شرکت Xilinx
"11:39
تمرین شماره3- بررسی معماری FPGAهای Zynq، سری RFSoC و MPSoC

 (الزامی)

33.3%
     
"60:00
کوییز شماره 1
44.4%
     
"30:00
فصل3- آشنایی با کلیات زبان‌های توصیف سخت‌افزار، بدنه‌های ترکیبی و ترتیبی
11:12 ساعت
04:42
Combined Shape Created with Sketch. 18 جلسه
بارم:
23%
نمایش جلسات فصل  

در این فصل در ابتدا مروری بر زبان‌های توصیف سخت­‌افزار و قابلیت‌های آن‌ها صورت می­‌گیرد. سپس قواعد کلی در استفاده از زبان VHDL بیان می‌­شود. نحوه تعریف ورودی-خروجی و انواع داده­‌های موجود در VHDL توضیح داده می­‌شود. برنامه‌­هایی برای مدارات ترکیبی و ترتیبی نوشته می­‌شود و دستوراتی که برای نوشتن این برنامه‌­ها مورد نیاز است ذکر می­‌شود. ساختارهای هم‌روند و ترتیبی و دستورات مرتبط با هر یک توضیح داده می­‌شود. به انواع متغیر قابل تعریف در VHDL پرداخته می­‌شود. با آوردن مثال‌های متعدد سعی می‌­شود مفاهیم مورد نظر به خوبی ملکه ذهن شود.

مرور کلیات زبان‌های مورد استفاده برای برنامه‌نویسی و کار با FPGA
"19:09
شروع کار با نرم‌افزار ISE
"16:36
سنتز و شبیه‌سازی یک برنامه ساده گیت منطقی NOT در محیط ISE
"14:12
پروژه میانی اول- نوشتن برنامه f=a.b با استفاده از گیت AND و با استفاده از مالتی‌پلکسر

 (الزامی)

8.7%
     
"60:00
تعریف کتابخانه‌ها و نوع متغیرها در VHDL
"21:52
آشنایی با ساختارهای dataflow، structural و behavioral
"27:19
مثال‌هایی از بدنه‌های ترکیبی در زبان VHDL
"19:53
پروژه میانی دوم- برنامه ضرب‌کننده دو عدد 2-بیتی بدون علامت

 (الزامی)

17.4%
     
"90:00
آشنایی با Language Template در نرم‌افزار ISE
"25:01
برنامه یک جمع‌کننده 4 بیتی با فراخوانی Full-Adderها در ISE
"22:57
پروژه میانی سوم- برنامه مرتب‌کننده 4 عدد بدون علامت

 (الزامی)

21.7%
     
"90:00
مثال‌هایی از ساختارهای منطقی ترتیبی مانند Latch، فلیپ فلاپ، رجیسترها و ...
"23:50
شیفت رجیستر، شمارنده‌ها، LFSR و کاربردهای آن
"33:54
مثال‌هایی ازکدنویسی در ISE
"18:04
نوشتن برنامه یک شمارنده در ISE
"20:33
مثالی از بدنه‌های ترکیبی و ترتیبی، حافظه ROM، تفاوت signal و variable
"19:01
پروژه میانی چهارم- برنامه تقریب تکه‌خطی یک تابع ریاضی

 (الزامی)

30.4%
     
"120:00
کوییز شماره 2
21.7%
     
"30:00
فصل4- ماشین حالت و برنامه‌های کنترل داده، فراخوانی‌های مکرر، زیربرنامه‌ها و توابع در VHDL
12:11 ساعت
02:57
Combined Shape Created with Sketch. 13 جلسه
بارم:
36%
نمایش جلسات فصل  

در این فصل در ابتدا به نحوه نوشتن کنترل­‌کننده در VHDL پرداخته می‌­شود. انواع ماشین‌های حالت و نحوه کدنویسی آن‌ها در چند مثال بررسی می­‌شود. نحوه فراخوانی برنامه­‌های از قبل نوشته شده و نحوه برنامه‌­نویسی ساختارهای تکراری مرور می­‌شود. زیربرنامه­‌ها و توابع در VHDL معرفی می­‌شود. همچنین نحوه ساخت Package توضیح داده می­‌شود. در انتها هم برای هر کدام از موارد فوق­‌الذکر مثال‌های متعددی آورده می­‌شود تا نحوه عملکرد این بخش‌ها به خوبی جا بیفتد.

ماشین حالت- قسمت اول
"17:38
ماشین حالت- قسمت دوم
"24:38
پروژه میانی پنجم- برنامه انکدر CRC

 (الزامی)

25.0%
     
"120:00
استفاده از for-generate
"22:14
معرفی Package، Function و Procedure
"22:16