- پیش نیاز مدار منطقی (کمی هم در ابتدای دوره گفته میشه)
و کمی زبان برنامه نویسی بلد باشید بهتره
- آموزش از سطح صفر تا سطح حرفه ای
- آموزش سری Xilinx و Altera
- روش آموزش فیلم ضبط شده به صورت
دیدن چند فیلم، انجام تمرین و مجدد فیلمهای بعدی
- پشتیبانی و بررسی تمرینها در حین دوره
- تمرین ها و پروژه های متعدد تا پایان دوره
- برآورد تقریبی دوره حدود 50 ساعت آموزش
- امکان گرفتن مدرک هم وجود ندارد
- نیاز به تهیه برد آموزشی از بازار هم دارد
- آموزش زبان برنامه نویسی VHDL و وریلاگ
سرفصل های تدریس شده
- مرور سریع مدار منطقی
- بررسی کاربردهای مختلف FPGA
- همزمان با طول دوره دستورات VHDL آموزش داده میشه
- نوشتن کد جمع کننده
- ساخت مدارات شمارنده
- روشن خاموش کردن LED و برنامه ریزی روی FPGA
- پیاده سازی PWM بر روی FPGA
- اتصال سون سگمنت به FPGA
- معرفی ماشین های حالت و حل تمرین به کمک آنها
- پروژه مدار آشکار ساز پالس
- پیاده سازی پورت سریال UART در FPGA
- روش های Debug برنامه در FPGA
- پیاده سازی FIFO در FPGA
- پیاده سازی فانکشن ژنراتور قابل پروگرام در FPGA
- انجام تبدیل فوریه سریع (FFT) برای محاسبه طیف فرکانسی پالسها
- پیاده سازی پورت VGA برای نمایش تصویر بر روی مانیتور
- پیاده سازی پروتکل های SPI و I2C به کمک FPGA
- اتصال صفحه کلید و موس PS2 به FPGA
- بررسی کامل دیتاشیت FPGA و سخت افزارهای مورد نیاز
- پیاده سازی میکروکنترلرهای نرم افزاری در FPGA
- در هر بخش از آموزش مثالهای متعددی حل خواهد شد
- بررسی قیدهای مختلف مورد استفاده در FPGA
- نرم افزارهای مورد استفاده ISE، Plan Ahead و Quartus
- بررسی و راه اندازی انواع بخش های FPGA نظیر DCM، RAM و…
- نمونه ای از تمرین ها
ارتباط با میکروکنترلر از طریق ارتباطات سریال
راه اندازی آی سی ساعت
راه اندازی ال سی دی کاراکتری
تشخیص کلیدهای کنترل TV
پیاده سازی فیلتر در FPGA
واحد محاسبه CRC
استفاده از خط لوله (Pipeline)
دیگر مزایای دوره، برخورداری از آپدیت دوره در آینده
تهیه دوره از فروشگاه به نشانی http://lpcarm.ir/shop
ریز جزئیات بیشتر دوره
ویدیوهای چند جلسه اول دوره را از کانال آپارات ما ببینید
فیلم جلسه دوم کار با ISE و برنامه ریزی عملی
فیلم جلسه سوم مدارات جمع کننده
جلسه اول مقدمه
بررسی چیستی FPGA و روند تکامل آن
بررسی کاربردهای FPGA و مزایا و معایب آن
دانلود و نصب نرم افزار ISE
بررسی قابلیت های نرم افزار ISE
جلسه دوم کار با ISE و برنامه ریزی عملی
ساخت پروژه در نرم افزار ISE
نوشتن کد گیت AND در ISE
مفهوم فایل UCF
برنامه ریزی عملی روی برد
جلسه سوم مدارات جمع کننده
معرفی جدول کارنو
نوشتن کد VHDL مدار نیم جمع کننده
طریقه ساخت کامپوننت در FPGA
اتصال کامپوننت ها و ساخت تمام جمع کننده
جلسه چهارم مدارات ترتیبی
معرفی آی سی لچ و فیلیپ فلاپ
استفاده از جمع کننده برای ساخت شمارنده
نوشتن تست بنچ برای مدار جمع کننده
استفاده از primitive های داخلی FPGA برای ساخت فیلیپ فلاپ
جلسه پنجم نکات بسیار مهم برای پیاده سازی
مفهوم clock skew و طریقه رفع آن
حل تمرین ساخت شمارنده
استفاده از generate برای تولید سخت افزار در VHDL
جلسه ششم برنامه نویسی سطح بالا
استفاده از process و ساخت شمارنده
حل تمرین روشن و خاموش کردن LED
استفاده از impact برا برنامه ریزی FPGA
جلسه هفتم نصب برنامه و کار با quartus
طریقه دانلود نرم افزار quartus
طریقه نصب برنامه quartus و ساخت پروژه با آن
اتصال سخت افزار Altera به کامپیوتر و برنامه ریزی FPGA
جلسه هشتم ماشین های حالت
مفهوم ماشین حالت
طراحی ماشین حالت تشخیص پالس
برنامه نویسی ماشین حالت
جلسه نهم پروتکل سریال
بررسی پروتکل سریال و سیگنالینگ آن
نوشتن ماسین حالت برای ارسال داده از پورت سریال
نوشتن تست بنچ برای پروتکل UART
معرفی برد آموزشی
جلسه دهم حل تمرین
حل تمرین تشخیص پالس
نوشتن tesh bench برای تشخیص پالس
نوشتن UART گیرنده و شبیه سازی آن
جلسه یازدهم حافظه FIFO
بررسی مفهوم FIFO و کاربرد آن
تشریح عملکرد FIFO
برنامه نویسی و پیاده سازی یک FIFO در FPGA
جلسه دوازدهم نمایشگر سون سگمنت
معرفی سون سگمنت و ساخت کدهای آن
اجرای پروژه نمایش روی سون سگمنت با برد AX309
چگونگی پیاده سازی شمارنده 6 رقمی با سون سگمنت
جلسه سیزدهم سون سگمنت چند رقمی
بررسی مفهوم مالتی پلکس
برنامه ریزی کد سون سگمنت روی برد آلترا Cyclone IV
بررسی شماتیک برد Altera Cyclone IV
حل تمرین سون سگمنت چند رقمی با FPGA آلترا
جلسه چهاردهم سون سگمنت ماژولار
چگونگی ساده سازی برنامه سون سگمنت به چند component
اجرای پروژه روی برد آموزشی Spartan6 مدل AX309
برنامه نویسی Decimal counter
جلسه پانزدهم پروتکل SPI
تشریح کامل پروتکل SPI
پیاده سازی پروتکل SPI با نرم افزار ISE
تست و عیب یابی پروتکل SPI به کمک isim
جلسه شانزدهم اجرای عملی SPI
معرفی آی سی 74595
معرفی IP Core جهت debug کد FPGA
عیب یابی کد VHDL به کمک IP Core VIO
کار با نرم افزار chip scope pro
برنامه ریزی عملی روی برد XC6SLX16
جلسه هفدهم SPI و دیباگ با برد Altera
چگونگی دیباگ پروژه با FPGA Altera
ساخت IP Vio با آلترا
معرفی ماژول TM1637
انجام پروژه نمایش روی TM1637
برنامه ریزی عملی روی برد Altera
جلسه هجدهم پروتکل I2C
تشریح کامل پروتکل i2C و کاربردهای آن
بررسی دیتاشیت یک مدل آی سی ساعت DS1307
بررسی دیتاشیت یک مدل EEPROM به شماره AT24C512
جلسه نوزدهم پیاده سازی پروتکل IIC
چگونگی طراحی کامپوننت I2C Master
برنامه نویسی صفر تا 100 کامپوننت I2C
جلسه بیستم پیاده سازی عملی I2C
برنامه نویسی و اضافه کردن Virtual IO برای عیب یابی I2C
تست آی سی EEPROM به کمک VIO
تست آی سی ساعت DS1307 به کمک VIO
جلسه بیست و یکم فانکشن ژنراتوز DDS
طریقه ساخت موج سینوسی به کمک نرم افزار MATLAB
مفهوم فرکانس نمونه بردازی و روش سنتز و تولید فرکانس با FPGA
معرفی IP Core لاجیک آنالایزر مجازی برای FPGA به نام ILA
برنامه نویسی صفر تا صد کد فانکشن ژنراتور و تست آن با VIO و ILA
جلسه بیست و دوم تبدیل فوریه FFT و کاربردهای آن
معرفی کاربرد تبدیل فوریه بررسی فرمول آن و محاسبه فرکانس با آن
محاسبه FFT در نرم افزار MATLAB
استفاده از IP FFT برای محاسبه تبدیل فوریه
برنامه نویسی صفر تا 100 تبدیل فوریه و عیب یابی آن
جلسه بیست و سوم بررسی و عیب یابی کد FFT
بررسی عمیق تر IP FFT
حل مشکلات FFT و نوشتن یک کد پایدار برای نمایش FFT
جلسه بیست و چهارم کد FFT برای FPGA Altera
استفاده از لاجیک آنالایزر در Altera با source & probe
استفاده از IP FFT Megacore
برنامه نویسی کامل DDS با FPGA Altera
تکمیل کد FFT برای آلترا
جلسه بیست و پنجم فیلتر دیجیتال با FPGA
چگونگی مکانیزم عملکرد فیلتر
معرفی فیلتر FIR و IIR و ساختار Direct Form برای آنها
بررسی چگونگی محاسبه ضرایب فیلتر و عملکرد فیلتر و استفاده از نرم افزار متلب برای طراحی فیلتر
پیاده سازی فیلتر دیجیتال بر روی FPGA
استفاده از نرم افزار model sim برای شبیه سازی فیلتر
جلسه بیست و ششم بررسی دیتاشیت xilinx
بررسی دیتاشیت یک مدل FPGA شرکت xilinx
بررسی ساختار درونی FPGA و سیم کشی و سوییچ های آن
بررسی بلوک های سازنده FPGA نظیر LUT و IO Block و DCM و …
بررسی بلوک های SERDES و IO Delay و …
جلسه بیست و هفتم بررسی دیتاشیت xilinx
بررسی بلوک های RAM و ضرب کننده و .. در FPGA
بررسی بلوک های توزیع کلاک در FPGA مانند BUFG
بررسی تک تک پایه ها در FPGA و عملکرد آنها که برای طراحی سخت افزار لازم است
بررسی چگونگی سخت افزار لازم برای برنامه ریزی FPGA
بررسی چگونگی مسیر کشی یک برد FPGA در نرم افزار آلتیوم
جلسه بیست و هشتم حل تمرین سون سگمنت
حل یک پروژه stop watch به کمک سون سگمنت و FPGA از صفر تا صد
برنامه ریزی عملی پروژه روی برد Spartan6
برنامه ریزی عملی پروژه روی برد CycloneIV
جلسه بیست و نهم بررسی دیتاشیت Altera
بررسی بخش های مختلف FPGA آلترا خانواده Cyclone
بررسی توزیع کلاک در آلترا
بررسی بلوک های سازنده آلترا نظیر حافظه ها و …
بررسی سیگنالینگ برنامه ریزی Altera
جلسه سی ام پروتکل VGA
طریقه عملکرد تلویزیون های CRT (مفهوم سیگنال HSync و VSync و ..)
بررسی پایه های کانکتور VGA و رزولوشن های مختلف نمایش تصویر
بررسی فایل تصویر BMP و انواع فومت آن مانند RGB888 یا RGB565 یا RGB555 و …
ساخت مبدل آنالوگ به دیجیتال به شکل passive با مقاومت
جلسه سی و یکم برنامه نویسی VGA
طریقه ایجاد سیگنالهای جاروب برای VGA
روش نمایش پیکسل ها در VGA
ساخت یک تصویر با فتوشاپ و انتقال آن به Block RAM در FPGA
نوشتن تست بنچ برای کد نمایش VGA
جلسه سی و دوم زبان برنامه نویسی verilog
بررسی syntax کامل زبان وریلاگ
مفاهیمی نظیر بلوک initial یا wire و reg و طریقه نمونه سازی
مفهوم بلوک always و ساخت شمارنده به کمک آن
نحوه نوشتن ماشین حالت در وریلاگ و کد تست بنچ در وریلاگ
جلسه سی و سوم نمایش فونت روی مانیتور با زبان وریلاگ
تبدیل کد VHDL نوشته شده قبلی به کد وریلاگ
ساخت یک بلوک RAM و اتصال آن به ماژول نمایش روی مانیتور
ایجاد IP Core با زبان وریلاگ
تکمیل کد نمایش روی VGA با Verilog
جلسه سی و چهارم نمایش فونت روی مانیتور با Verilog
این جلسه 2:30 ساعت شد و از صفر پروژه رو ساختیم و مرحله مرحله جلو رفتیم
در نهایت توانستیم یک خروجی مناسب بگیریم
تمامی این جلسه live انجام شده و فیلم قطع نشده
یک جلسه که روند تکامل و عیب یابی پروژه رو کامل مشاهده می کنید و کلی نکته یاد می گیرید
جلسه سی و پنجم کار با Plan Ahead
برنامه Plan Ahead بسیار شبیه به vivado می باشد و از iseV10 به بعد به آن اضافه گردیده است
در این جلسه این نرم افزار معرفی شده و پروژه با آن ساخته شده است
و بخش های مختلف آن مورد بررسی قرار گرفته است
چگونگی Foorplan و Pin Planing هم با Plan Ahead کامل بیان شده است
جلسه سی و ششم پردازنده نرم افزاری
در FPGA می توان پردازنده نرم افزاری تعریف نمود به این معنی که همانند یک میکروکنترلر با آن رفتار کنیم و برایش حافظه جانبی و peripheral هایی نظیر UART و تایمر و .. بگذاریم
در این جلسه از ساخت پروژه و طراحی آن میکرو پروسسور گرفته تا برنامه نویسی زبان سی و برنامه ریزی روی FPGA و دیباگ آن همه بررسی شده است
جلسه سی و هفتم نرم افزار vivado
دانلود و نصب برنامه vivado و vitis
بررسی برد ZynQ7020 و برد Parallella
ساخت پروژه با Vivado و بررسی محیط نرم افزاری آن
معرفی vivado HLS
جلسه سی و هشتم محاسبه CRC
بررسی مفهوم CRC و مفهوم چند جمله ای آن (Polynimial)
معرفی سایتهایی جهت محاسبه آنلاین CRC
بررسی مدارات سیفت رجیستر برای محاسبه CRC
برنامه نویسی CRC با vivado
معرفی فرمول دقیق CRC و پارامتری کردن آن به کمک نرم افزار متلب
جلسه سی و نهم خط لوله pipeline
بررسی مفهوم timing و slack time در FPGA
چگونگی افزایش حداکثر سرعت یک طرح دیجیتال در FPGA
استفاده از خط لوله برای افزایش کارایی یک مدار
چگونگی خواندن داده یک ADC بدون اعوجاج در FPGA
جلسه چهلم پروتکل PS2
بررسی پروتکل صفحه کلید و موس PS2
چگونگی خواندن کلیدهای صفحه کلید و مفهوم make code و break code
برنامه نویسی کد خواندن کلید های صفحه کلید PS2
جلسه چهل و یکم نمایشگر LCD کاراکتری
بررسی پایه ها و عملکرد LCD کاراکتری و تایمینگ های آن
تست LCD کاراکتری به کمک VIO
برنامه نویسی LCD کاراکتری و ساخت ماشین حالت برای آن
دوره بسیار جامع و مفیدی است