آموزش برنامه‌نویسی کامل Verilog HDL با مثال و پروژه‌ها - آخرین آپدیت

دانلود Complete Verilog HDL programming with Examples and Projects

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

آموزش جامع و بهینه سازی شده Verilog HDL برای طراحی FPGA و ASIC

سرفصل‌های دوره آموزش Verilog HDL

  • مبانی Verilog HDL: مفاهیم اساسی، جریان طراحی، سطوح مدل‌سازی، انواع داده، بُنچ تست (Test Bench)، وظایف (Tasks) و وظایف سیستمی (System Tasks)
  • ماشین حالت متناهی (FSM): طراحی و پیاده‌سازی با مثال‌هایی از مدل‌های Mealy و Moore
  • پروژه‌ها و مثال‌های عملی: کنترل‌کننده حافظه، کنترل‌کننده FIFO، رمزگذار و رمزگشای کد همینگ (Hamming Code) برای تشخیص و تصحیح خطا
  • آشنایی با FPGA: مفاهیم پایه و نحوه بارگذاری فایل بیت (Bit File)

یادگیری برنامه نویسی Verilog HDL

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

جریان طراحی VLSI: FPGA در مقابل ASIC

با جریان طراحی در دنیای VLSI، شامل طراحی برای FPGA و ASIC، و همچنین تفاوت‌های کلیدی بین این دو فناوری آشنا شوید.

متدولوژی‌های مختلف طراحی در Verilog HDL

با سبک‌های مختلف برنامه نویسی در Verilog HDL از جمله سطح گیت (Gate level)، جریان داده (Data flow)، رفتاری (Behavioral) و سطح سوئیچ (Switch level) آشنا شده و با مثال‌های کاربردی آن‌ها را درک کنید.

مدل‌سازی رفتاری با مفاهیم Blocking و Non-Blocking

درک عمیقی از مدل‌سازی رفتاری با تمرکز بر مفاهیم Blocking و Non-Blocking در Verilog HDL و مثال‌های واقعی به دست آورید.

طراحی بُنچ تست (Test Bench) در Verilog

نحوه نوشتن بُنچ تست‌های کارآمد در Verilog را با مثال‌های عملی یاد بگیرید تا روند شبیه‌سازی و تست طراحی‌های خود را بهبود بخشید. این بخش شامل مثال‌هایی مانند شمارنده، مولد پالس و تقسیم‌کننده کلاک (Clock Divider) است.

وظایف (Tasks) و وظایف سیستمی (System Tasks) در Verilog

با قابلیت‌های وظایف و وظایف سیستمی در Verilog آشنا شوید و نحوه استفاده از آن‌ها برای تولید داده تصادفی، عملیات فایل (خواندن و نوشتن) و بارگذاری داده در حافظه را با مثال‌های کاربردی بیاموزید.

پیاده‌سازی ماشین حالت متناهی (FSM)

با جزئیات طراحی ماشین حالت متناهی (FSM) آشنا شوید، از جمله نحوه ترسیم دیاگرام، پیاده‌سازی در مدل سخت‌افزاری و تبدیل آن به کد Verilog برای هر دو نوع Mealy و Moore، همراه با مثال‌های متنوع.

پروژه‌های عملی طراحی FPGA

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

مفاهیم پایه FPGA

با مفاهیم اساسی FPGA و فرآیند بارگذاری فایل بیت در FPGA آشنا شوید.

پیش‌نیازهای دوره

  • تمایل به یادگیری
  • آشنایی پایه با زبان C
  • آشنایی با مفاهیم طراحی دیجیتال (اختیاری)

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

مقدمه دوره Introduction to the course

  • پیش‌نمایش محتوای دوره Preview - course content

  • نمونه برنامه در edaplayground Sample program on edaplayground

مقدمه‌ای بر Verilog HDL Introduction to Verilog HDL

  • مبانی Verilog Verilog fundamentals

جریان طراحی VLSI (FPGA & ASIC) VLSI design flow ( FPGA & ASIC)

  • جریان طراحی VLSI (FPGA & ASIC) VLSI Design flow (FPGA & ASIC)

  • FPGA در مقابل ASIC FPGA vs ASIC

سه سطح توصیف طراحی Verilog Three levels of verilog design Description

  • سه سطح توصیف طراحی Verilog Three levels of verilog design Description

  • مثال: mux_2x1 با 3 مدل انتزاعی Example: mux_2x1 with 3 abstracts models

ساختارهای زبان Verilog، انواع داده و دستورالعمل‌های کامپایلر Verilog Language constructs, Data types & Compiler Directives

  • ساختارهای زبان - نظرات، کلمات کلیدی، شناسه، مشخصات عددی، عملگرها Language constructs -Comments, keywords, identifier, Number specific, Operators

  • انواع داده - net، reg، integer، real، string، time، Parameter، Vector، Array، Memory Datatypes - net,reg, integer, real, string, time, Parameter, Vector,Array,Memory

  • دستورالعمل‌های کامپایلر Compiler Directives

ساختار برنامه Verilog Verilog Program structure

  • ساختار برنامه Verilog - Module Verilog Program Structure -Module

  • پورت‌ها Ports

  • قوانین اتصال پورت Port Connection Rules

  • رویکردهای روش‌های طراحی Design Methodologies Approaches

مدل‌سازی سطح گیت Gate level modeling

  • مقدمه مدل سطح گیت Gate Level Model Introduction

  • مثال: 4x1 Mux Example: 4x1 Mux

  • مثال: Full Adder Example: Full Adder

  • بافرهای سه حالته با مثال Tri-state Buffers with Examples

  • آرایه نمونه با مثال Array of Instance with example

مدل‌سازی جریان داده Data flow modeling

  • مدل‌سازی جریان داده: دستورالعمل assign Data flow Modeling : assign statement

  • عملگرها Operators

  • عملگرهای حسابی Arithmetic Operators

  • عملگرهای منطقی Logical Operators

  • مثال: Full Adder: عملگرهای منطقی Example : Full Adder: Logical operators

  • مثال: Full Adder: عملگرهای حسابی Example : Full Adder: Arithmetic operators

  • مثال: مبدل کد باینری به گری Example: Binary to Gray code converter

  • Logical and , Logical or (&&, ||) Logical and , Logical or (&&, ||)

  • عملگرهای شیفت: شیفت به چپ/راست Shift operators : Left/right Shift

  • شیفت بدون عملگر شیفت، فقط با عملگر الحاق Shifting without shift operator , just with concatenation operator

  • عملگر سه‌تایی: مثال: 2x1 MUX, 4x1 MUX Ternary operator : Example : 2x1 MUX, 4x1 MUX

  • عملگرهای رابطه‌ای - مثال: مقایسه‌گر Relational operators Example: Comparator

  • عملگرهای برابری (==) و برابری مورد (===) Equality (==) , case Equality (===) operators

  • عملگر کاهش: مثال: تولیدکننده پاریتی Reduction operator : Example: Parity Generator

مدل‌سازی رفتاری Behavioral Modeling

  • مدل‌سازی رفتاری - مقدمه Behavioral Modeling - Introduction

  • ساختارهای مدل‌سازی رفتاری Behavioral Modeling Constructs

  • بلوک‌های رویه‌ای - initial & always Procedural Blocks- initial & always

  • مثال: تولید کلاک Example: Clock Generation

  • دستورالعمل‌های تخصیص - مسدودکننده و غیرمسدودکننده Assignment Statements - Blocking & Non-blocking

  • مکانیزم در غیرمسدودکننده Mechanism in Non-blocking

  • همزمانی Concurrency

  • مزیت تخصیص غیرمسدودکننده: مثال: جابجایی Advantage of Non-blocking assignment: Example: swapping

  • مزیت تخصیص غیرمسدودکننده: مثال: پایپ‌لاینینگ Advantage of Non-blocking assignment: Example : Pipelining

  • دستورالعمل if-else: مثال: 4x1 Mux if-else: statement: Example : 4x1 Mux

  • دستورالعمل Case: مثال: 4x1 Mux Case – statement : Example : 4x1 Mux

  • مزیت Case نسبت به if-else Advantage of Case over if-else

  • حلقه‌ها: while, for, repeat, forever Loops: while, for, repeat, forever

  • بلوک‌های موازی - fork-join Parallel blocks - fork-join

  • مدارهای منطق ترکیبی: لیست مثال‌ها Combinational Logic circuits: List of Examples

  • مثال: 8x1 mux با 4x1 و 2x1 Example: 8x1 mux with 4x1 and 2x1

  • مثال: گیت AND با استفاده از 2x1 Mux Example: AND gate using 2x1 Mux

  • مثال: 1x8 Demux Example: 1x8 Demux

  • مثال: Full Adder و Full Adder 4 بیتی Example: Full Adder & 4-bit Full Adder

  • مثال: 3x8 Decoder و 3x8 Decoder با استفاده از 2x4 decoder Example : 3x8 Decoder and 3x8 Decoder using 2x4 decoder

  • مثال: 8x3 encoder Example : 8x3 encoder

  • مثال: Priority encoder Example : Priority encoder

  • مثال: نمایشگر هفت قسمتی Example : Seven Segment Display

  • مثال: ALU Example : ALU

  • مدارهای منطق ترتیبی: لیست مثال‌ها Sequential Logic Circuits: List of Examples

  • مثال: D Flip Flop در مقابل D-Latch Example: D Flip Flop vs D-Latch

  • مثال: D-Flip flop با ریست سنکرون، D-Flip flop با ریست آسنکرون Example: Synchronous Reset D-Flip flop , Asynchronous Reset D-Flip flop

  • مثال: T-Flip Flop Example : T-Flip Flop

  • مثال: Master-slave JK Flip Flop Example : Master-slave JK Flip Flop

  • مثال: شمارنده Example: Counter

  • مثال: شمارنده صعودی/نزولی Example: UP/Down Counter

  • مثال: تقسیم‌کننده کلاک با استفاده از شمارنده - تقسیم بر 2، 4، 8، ... Example: clock divider using counter- Divide by 2,4,8,....

  • مثال: تولید کننده پالس: تولید کننده پالس Mod-3 Example: Pulse Generator: Mod-3 pulse generator

  • مثال: کلاک تقسیم بر 3 Example: Divide by 3 clock

  • مثال: Ring Counter در مقابل Jonson Counter Example : Ring Counter vs Jonson Counter

  • مثال: رجیسترهای شیفت: SISO, SIPO, PISO, PIPO Example : Shift Registers : SISO, SIPO, PISO,PIPO

  • مثال: LFSR (Linear Feedback Shift Register) - تولید کننده تصادفی Example: LFSR (Linear Feedback Shift Register)- Random Generator

  • طراحی حافظه memory design

مدل‌سازی سطح سوئیچ Switch level modeling

  • مدل‌سازی سطح سوئیچ Switch level modeling

Test bench Test bench

  • شبیه‌سازی عملکردی Functional simulation

  • مثال - Test bench برای طراحی شمارنده Example - Test bench for counter design

  • مثال - Test bench برای تولید کننده پالس Example - Test bench for Pulse generator

توابع و وظایف و وظایف سیستمی Functions & Task and system tasks

  • توابع و وظایف و وظایف سیستمی Functions & tasks and system tasks

  • وظایف سیستمی مبتنی بر فایل و وظیفه سیستمی تولید کننده تصادفی File based system tasks and random generator system task

  • وظیفه سیستمی خواندن فایل و نوشتن در حافظه Read file and write in to memory system task

  • رابط زبان برنامه‌نویسی Programming Language Interface

FSM FSM

  • موضوعات FSM FSM Topics

  • چرا FSM؟ Why FSM ?

  • FSM چیست؟ What is FSM ?

  • پیاده‌سازی سخت‌افزاری FSM: اجزاء یا ماژول‌ها در FSM Hardware Realization of FSM : Component or Modules in FSM

  • انواع FSM و تفاوت‌های FSM Mealy و Moore Types of FSM and Mealy Moore FSM differences

  • مثال: FSM Mealy Example : Mealy FSM

  • مثال: FSM Moore Example: Moore FSM

  • مثال: Verilog HDL برای FSM Mealy Example: Verilog HDL for Mealy FSM

  • مثال: Verilog HDL برای FSM Moore Example: Verilog HDL for Moore FSM

  • عملی: Verilog HDL برای FSM Mealy و اجرای آن Hands-on : Verilog HDL for Mealy FSM and run the execution

  • مثال: کلاک تقسیم بر 2 با استفاده از FSM Example: Divide by 2 clk using FSM

  • مثال: کلاک تقسیم بر 3 با استفاده از FSM Example: Divide by 3 clk using FSM

  • مثال: تولید کلاک با دوره وظیفه 33 درصد با استفاده از FSM Example: 33 perecent duty cycle clock generation using FSM

آشکارساز دنباله با استفاده از FSM با طراحی و TB کامل Sequence detector using FSM with complete Design & TB

  • آشکارساز دنباله با استفاده از FSM Sequence Detector using FSM

پروژه 1: کنترلر حافظه Project 1: Memory controller

  • کنترلر حافظه با طراحی و TB Memory controller with Design & TB

پروژه 2: FIFO Project 2: FIFO

  • درس FIFO FIFO Lecture

  • مقدمه ای بر FIFO Introduction to FIFO

  • عملیات خواندن و نوشتن RAM معمولی Write Read Operation of Normal RAM

  • ورودی و خروجی FIFO FIFO I/O (input & Outputs)

  • بلوک دیاگرام و معماری FIFO Block Diagram and Architecture of FIFO

  • اتصال طراحی FIFO و محیط Test bench Connection of FIFO design & Test bench environment

  • طراحی FIFO با Verilog HDL Verilog HDL for FIFO design

  • کد Verilog HDL برای Test Bench FIFO Verilog HDL code for FIFO Test Bench

  • اجرای شبیه‌سازی و یافتن خطاها و تجزیه و تحلیل نتایج شکل موج Run the simulation and finding errors and Analyze the waveform Results

پروژه 3: کد Hamming با طراحی و TB کامل برای تشخیص و تصحیح خطا Project 3 : Hamming code complete Design & TB for error detection & correction

  • کد Hamming با طراحی و TB کامل برای تشخیص و تصحیح خطا Hamming code complete Design & TB for error detection & correction

FPGA FPGA

  • FPGA FPGA

نمایش نظرات

آموزش برنامه‌نویسی کامل Verilog HDL با مثال و پروژه‌ها
جزییات دوره
8 hours
105
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,344
4.2 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Surender Reddy T Surender Reddy T

توسعه‌دهنده