آموزش سنتز سطح بالا برای FPGA، بخش 1 - مدارهای ترکیبی

High-Level Synthesis for FPGA, Part 1-Combinational Circuits

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: طراحی منطقی با Vitis-HLS طراحی مدارهای منطق ترکیبی با زبان C/C++ با استفاده از رویکرد HLS درک مفاهیم اساسی سنتز سطح بالا (HLS) استفاده از مفاهیم HLS برای طراحی مدارهای منطق ترکیبی جریان طراحی HLS برای FPGA ها کار با Xilinx Vitis-HLS و مجموعه ابزار Vivado نحوه تولید IPهای سخت افزاری RTL با استفاده از Vitis-HLS Writing C-testbench در HLS اجرای دو پروژه هیجان انگیز با HLS پیش نیازها: درک مفاهیم اساسی کدگذاری C/C++ درک مفاهیم اولیه عملگرهای منطقی (به عنوان مثال، AND، OR، XOR، SHIFT ) هیئت ارزیابی BASYS3 Xilinx Vitis-HLS و Vivado (دانلود Vivado ML Edition، یا Vivado Design Suite - HLx Editions برای Windows یا Linux)

این دوره مقدماتی مقدماتی بر جریان طراحی سنتز سطح بالا (HLS) است. اهداف این دوره، توصیف، اشکال زدایی و پیاده سازی مدارهای منطق ترکیبی بر روی FPGA ها با استفاده از زبان C/C++ بدون هیچ کمکی از HDL ها (به عنوان مثال VHDL یا Verilog) است. HLS اخیرا توسط چندین رهبر صنعت (مانند انویدیا و گوگل) برای طراحی پلتفرم های سخت افزاری و نرم افزاری خود استفاده می شود. جریان طراحی HLS آینده طراحی سخت‌افزار است که به سرعت برای هر مهندس سخت‌افزار یا نرم‌افزاری که مشتاق استفاده از FPGA برای عملکرد استثنایی و مصرف انرژی کم است، به یک مهارت ضروری تبدیل می‌شود.

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

این دوره اولین دوره از مجموعه دوره های HLS در طراحی ماژول های سخت افزاری و الگوریتم های شتاب بر روی یک FPGA هدف است. در حالی که این دوره بر مدارهای ترکیبی تمرکز دارد. سایر دوره های این مجموعه نحوه استفاده از HLS در طراحی مدارهای منطقی ترتیبی، شتاب الگوریتم و سیستم های ناهمگن ترکیبی CPU+ FPGA را توضیح خواهند داد.



سرفصل ها و درس ها

پیش درآمد Prologue

  • معرفی Introduction

  • ساختار دوره Course Structure

پیش درآمد Prologue

مفاهیم FPGA FPGA Concepts

  • معرفی Introduction

  • ویژگی ها و برنامه های کاربردی Features and Applications

  • رویکرد طراحی Design Approach

  • پلتفرم FPGA در مقابل پلتفرم CPU FPGA Platform vs CPU Platform

  • FPGA پایه FPGA Basic

  • LUT LUT

  • فلیپ فلاپ و سایر عناصر Flip-Flop And Other Elements

  • هیئت توسعه Basys3 FPGA Basys3 FPGA Development Board

  • چرا HLS؟ Why HLS?

  • قیاس سخت افزار و نرم افزار Hardware and Software Analogy

مفاهیم FPGA FPGA Concepts

راه اندازی سخت افزار/نرم افزار Hardware/Software Setup

  • معرفی Introduction

  • Vivado-HLx Vivado-HLx

  • Vivado و Vivado-HLS Vivado and Vivado-HLS

  • Vivado-HLx را نصب کنید Install Vivado-HLx

  • نصب آزمایشی Test Installation

راه اندازی سخت افزار/نرم افزار Hardware/Software Setup

خروجی پایه Basic Output

  • معرفی Introduction

  • پیکربندی خروجی Output Configuration

  • مفهوم کنترلر Controller Concept

  • نمای کلی طراحی HLS HLS Design Overview

  • جریان طراحی HLS HLS Design Flow

  • طراحی HLS C/C++ HLS C/C++ Design

  • پورت های HLS HLS Ports

  • آزمایشگاه HLS HLS LAB

  • ویوادو Vivado

  • آزمایشگاه ویوادو Vivado LAB

  • هیئت مدیره Basis3 Basis3 Board

  • تمرینات Exercises

خروجی پایه Basic Output

ورودی/خروجی پایه Basic Input/Output

  • معرفی Introduction

  • پیکربندی Configuration

  • مفهوم کنترلر Controller Concept

  • پورت های HLS HLS Ports

  • آزمایشگاه HLS HLS LAB

  • آزمایشگاه ویوادو Vivado LAB

  • ورزش Exercise

ورودی/خروجی پایه Basic Input/Output

مدار ترکیبی Combinational Circuit

  • معرفی Introduction

  • تعریف Definition

  • درگاه های منطقی Logic Gates

  • تاخیر انتشار Propagation Delay

  • تاخیر جمع کننده باینری Binary Adder Delay

  • مدار ترکیبی در HLS Combinational Circuit in HLS

  • مدار ترکیبی در Vivado-HLS Combinational Circuit in Vivado-HLS

  • مدار ترکیبی در ویوادو Combinational Circuit in Vivado

  • کارکرد Functions

  • گردش داده ها Dataflow

  • چراغ راهنمایی و رانندگی Traffic Light

  • چراغ راهنمایی-Vivado-HLx Traffic Light-Vivado-HLx

  • تمرینات Exercises

مدار ترکیبی Combinational Circuit

C/C++ Testbench C/C++ Testbench

  • معرفی Introduction

  • تعریف Definition

  • جریان شبیه سازی Simulation Flow

  • کدگذاری HLS Test Bench HLS Testbench Coding

  • ویوادو HLS Vivado HLS

  • تمرینات Exercises

C/C++ Testbench C/C++ Testbench

نوع داده Data Type

  • معرفی Introduction

  • انواع داده های بومی Native Datatypes

  • سنتز Synthesis

  • Bit Precision: Declaration Bit Precision: Declaration

  • Bit Precision: مقداردهی اولیه Bit Precision: Initializing

  • Bit Precision: Assignment Bit Precision: Assignment

  • دقت بیت: چاپ Bit Precision: Print

  • Bit Precision: Bitlevel Bit Precision: Bitlevel

  • Bit Precision: Bitwise Logical Operators Bit Precision: Bitwise Logical Operators

  • دقت بیت: Shift/Rotate Bit Precision: Shift/Rotate

  • تمرینات Exercises

نوع داده Data Type

اظهارات مشروط Conditional Statements

  • معرفی Introduction

  • تعریف Definition

  • مولتی پلکسر Multiplexer

  • Multiplexer: General Case Multiplexer: General Case

  • HLS HLS

  • رمزگذار/رمزگشا Encoder/Decoder

  • پیشرو Leading One

  • آزمایشگاه LAB

  • تمرینات Exercises

اظهارات مشروط Conditional Statements

هفت بخش Seven Segments

  • معرفی Introduction

  • تعریف Definition

  • کدهای 7-بخشی 7-Segment Codes

  • Basys3 Basys3

  • یک رقمی One Digit

  • کد BCD BCD Code

  • BCD تا 7-segment: Div/Mod BCD TO 7-segment: Div/Mod

  • BCD تا 7-Segment: Double Dabble BCD TO 7-Segment: Double Dabble

  • دو رقمی Two Digits

  • آزمایشگاه LAB

  • تمرینات Exercises

هفت بخش Seven Segments

حلقه های ترکیبی Combinational Loops

  • معرفی Introduction

  • تعریف Definition

  • حلقه باز کردن Loop Unroll

  • Loop Unroll Conditions Loop Unroll Conditions

  • بیت برابری: تعریف Parity Bit: Definition

  • بیت برابری: طراحی Parity Bit: Design

  • بیت برابری: بهینه سازی طراحی Parity Bit: Design Optimisation

  • بیت برابری: HLS Parity Bit: HLS

  • بیت برابری: Vivado-HLS Parity Bit: Vivado-HLS

  • تمرینات Exercises

حلقه های ترکیبی Combinational Loops

حساب عدد صحیح Integer Arithmetic

  • معرفی Introduction

  • تعریف Definition

  • اضافه بار Overloading

  • محدودیت زمان Timing Constraint

  • منابع DSP DSP Resources

  • محدودیت منابع Resource Constraint

  • بخش/مدول Division/Modulus

  • تمرینات Exercises

حساب عدد صحیح Integer Arithmetic

پروژه ها: Home_Alarm_System Projects: Home_Alarm_System

  • تعریف Definition

  • ساختار کد Code Structure

  • Vivado-HLx Vivado-HLx

پروژه ها: Home_Alarm_System Projects: Home_Alarm_System

پروژه: ماشین حساب ساده Project: Simple Calculator

  • تعریف Definition

  • ساختار کد Code Structure

  • Vivado-HLx Vivado-HLx

پروژه: ماشین حساب ساده Project: Simple Calculator

نمایش نظرات

نظری ارسال نشده است.

آموزش سنتز سطح بالا برای FPGA، بخش 1 - مدارهای ترکیبی
خرید اشتراک و دانلود خرید تکی و دانلود | 160,000 تومان (5 روز مهلت دانلود) زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
7.5 hours
110
Udemy (یودمی) udemy-small
20 دی 1400 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
1,871
4.5 از 5
دارد
دارد
دارد

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Udemy (یودمی)

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

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