4.27 out of 5
4.27
956 reviews on Udemy

Learn VHDL and FPGA Development

Learn how to create a VHDL design that can be simulated and implemented on a Xilinx or Altera FPGA development board.
Instructor:
Your Embedded Systems Guy
6,262 students enrolled
English [Auto-generated]
Understand the design process for implementing a digital design onto a FPGA
Learn how to simulate a design in Altera’s ModelSim and Xilinx Isim
Learn how to use Xilinx ISE tool to program FPGA
Debug a VHDL design using ModelSim
Simulate a VHDL design using ModelSim
Familiarize yourself with Altera and Xilinx tools
Program a FPGA

This course supports both the Xilinx and Altera FPGA development boards.

VHDL and FPGA Development for Beginners and Intermediates is a course that is designed to teach students how to create and successfully simulate their VHDL design. We will also be implementing these designs on a Xilinx BASYS 3 or BASYS 2 FPGA development board so that the students can see their designs actually running. This course starts from beginning to end in teaching the user how to turn their digital logic design into VHDL designs that can be simulated in ModelSim or ISim and then implemented on an FPGA development board. This course also covers how to use Altera’s tools so students are not limited to Xilinx development boards.

Course Structure:

This course contains over 20 lectures that will teach students the syntax and structure of VHDL. The student will be able to understand the syntax and use of specific VHDL keywords by taking this course. There are lectures included in each lab to give a background on the digital logic circuit the student will be implementing.

This course contains 7 labs that are designed so that the student will learn how to develop VHDL code. For each lab I will give the student a set of VHDL files that they will have to modify or change in order to get the project to simulate correctly in ModelSim and so they can implement the design on their FPGA board. These labs are design to help the students learn VHDL by actually coding it themselves.

Please message me before you sign up for this course!

Contact Information

1
Contact Information

This contains the information required to contact me, please download and use this if you have any questions.

2
Extra Resources for Using FPGAs

If you are interested in learning more about FPGA development, these links contain resources that cover more advanced FPGA development topics.

Introduction

1
Introduction to the Course

This lecture introduces this course, I will introduce myself as well as explain what will be covered in this course. The course layout is explained in this course.

2
Introduction to VHDL

Introduction to VHDL and the different ways you can use VHDL. This will give you a better understanding of what VHDL is doing and how it differentiates from a software programming language.

VHDL Data Types

1
Data Types Introduction

This lecture introduces the various data types used in the VHDL language. All of these data types are then explained more thoroughly in the later lectures.

2
Signals / Variables / Constants

This lecture talks about what variables, signals, and constants are and how they are used in the VHDL language.

3
Unsigned / Signed Data Types

This lecture discusses signed and unsigned data types in the VHDL language.

4
Standard Logic Vector / Standard Logic

This lecture discusses the VHDL data types standard logic vector and standard logic.

5
Integer / Boolean Data Types

This lecture talks about the Integer and Boolean data types in VHDL.

6
Initializing Values in VHDL

This lecture walks through an example VHDL file that shows various data types in VHDL being initialized.

7
Data Type Examples in VHDL Designs Part 1

This lecture walks through a VHDL design while talking about the various data types being used in the VHDL language.

8
Data Type Examples in VHDL Designs Part 2

This lecture takes students through an example VHDL design and discusses the various data types being used throughout the design.

VHDL Syntax

1
VHDL Syntax Introduction

This lecture introduces the VHDL Syntax section and explains everything that will be covered in this section.

2
If Statement / Case Statement

If statements and case statements are commonly used in various programming languages. These statements are also used in VHDL and I will explain how in this lecture.

3
For Loop / While Loop

This lecture walks through and discusses how for loops and while loops are used in VHDL.

4
VHDL For Loop Example

This lecture explains the differences between a for loop in VHDL verses a for loop in a software programming language such as c++.

5
When Else Statement With Select When Statement

This lecture discusses two different statements in VHDL, the when-else statement as well as the with-select-when statement.

6
VHDL Processes and Concurrent Statement

In VHDL things happen concurrently by nature, however with the use of processes and variables we can make things happen sequentially. In this lecture I will discuss the difference between them.

7
VHDL Syntax Design Example

This lecture walks through a VHDL design and discusses the layout and structure of the VHDL syntax.

8
1 VHDL Basics

This is a quiz that goes over the material covered in section 2 VHDL Language Basics

VHDL Coding Structure

1
Organizing Your VHDL Designs

This lecture shows students a way they can organize their VHDL designs. As you create more designs it becomes important to organize them in a way it's easy to find and re-use your designs.

2
VHDL Design Structure

This lecture talks about the various aspects of a VHDL design and the structure of these designs.

3
VHDL Design Architecture Styles

This lecture discusses the different architecture design styles used in VHDL designs.

4
Data Flow Architecture Example - Full Adder

This lecture walks through a full adder VHDL design. this full adder design is implemented using a data flow architecture style.

5
Behavioral Architecture Example - Full Adder

This lecture walks through a full adder VHDL design. this full adder design is implemented using a behavioral architecture style.

6
Concept of VHDL Modeling
7
VHDL Coding Structure

This quiz is used to test your understanding of VHDL coding structures.

Test Bench

1
Test Benches Introduction

This lecture explains what a test bench is and how they are used in the VHDL language.

2
Test Bench Structure Walkthrough

This lecture walks through the design of a test bench and explains the structure of a VHDL test bench.

3
Walkthrough of a Completed Test Bench

This lecture walks through a completed test bench as an example of how a test bench is constructed.

4
VHDL Test Benches

This quiz covers material explain in the Test Bench Section of this course.

Implementing State Machines in VHDL

1
State Machine Introduction

This lecture introduces state machine in VHDL and explains how they are used.

2
Designing a State Machine

This article explains how to design a state machine. There are various ways to design a state machine and this article covers one of them.

FPGA Development Boards

1
Supported FPGA Development Boards

This article lists various FPGA development boards that students could use to complete this course. FPGA development boards not listed in this article can still be used, just message me and see if your board will work!

2
BASYS 3 Board Overview

This lecture is an overview of the BASYS 3 development board.

3
BASYS 3 Board User Guide

This is the user guide provided by digilent that explains all the different components and aspects of the BASYS 3 development board.

4
BASYS 3 Board Schematic

The schematic of the BASYS 3 development board.

5
BASYS 2 Board

An overview of the BASYS 2 FPGA development board.

6
BASYS 2 Board User Guide

This lecture contains the BASYS 2 user manual provided by digilent.

7
BASYS 2 Board Schematic

This is the actual schematic of the BASYS 2 development board.

8
BASYS 2 Board Overview

This lecture gives an overview of the BASYS 2 development board.

Altera Tools

1
Altera Tools Introduction

This is a brief overview of a few of the Altera tools available.

2
ModelSim VHDL Simulation Tool

Lecture 8 is a step by step tutorial on how to use ModelSim to simulate and verify the VHDL designs.

3
Quartus II FPGA Development Tool

A step by step tutorial on how to create a project in Quartus II and implement the design on an Altera FPGA or CPLD.

4
Altera Tools

This quiz is used to test your knowledge of Altera's toolset.

Xilinx Tools

1
Xilinx Tools Introduction

A brief overview of a few of the Xilinx tools available.

2
Download the Vivado Tool Suite for the BASYS 3
3
ISim VHDL Simulation Tool

Here we introduces you to ISim and how to simulate your design using ISim

4
Xilinx ISE FPGA Development Tool

A detailed step by step tutorial on how to use Xilinx's ISE tool to take your VHDL design and create a programming file to load onto a CPLD or FPGA.

5
Programming The BASYS 2 FPGA Development Board

This will show you how to load the FPGA programming file onto the BASYS 2 board.

6
Xilinx Tools

This quiz will test your knowledge of the Xilinx tool set.

Lab 1 - Full Adder

1
Introduction

A introduction to the full adder.

2
BASYS 3 Full Adder Demonstration
3
BASYS 2 Full Adder Demonstration

This video shows a full adder implemented on a BASYS 2 board.

4
BASYS 2 Full Adder Solution

If you are struggling with getting the Lab 1 Demonstration to work, Lab 1 Solution is a walk through to help you complete this lab as a step-by-step guide.

Lab 2 - Shift Register

1
Introduction

A introduction to shift registers and their uses.

2
BASYS 3 Shift Register Demonstration
3
BASYS 2 Shift Register Demonstration
4
Shift Register Completed Design

The completed VHDL design of the Shift Register.

Lab 3 - Universal Shift Register

1
Introduction

A introduction to the universal shift register and many other shift registers.

2
BASYS 3 Universal Shift Register Demonstration
3
BASYS 2 Universal Shift Register Demonstration

A demonstration showing a universal shift register implemented on the BASYS 2 board.

4
BASYS 2 Universal Shift Register Solution

If you are struggling with getting the Lab 3 Demonstration to work, Lab 3 Solution is a walk through to help you complete this lab as a step-by-step guide.

5
Universal Shift Register VHDL Design

This lecture contains the completed VHDL design for the Universal Shift Register lab.

Lab 4 - 7 Segment Display

1
Introduction

An introduction to 7 segment displays and how we will be using them in lab 4.

2
BASYS 3 - 7 Segment Display Demonstration
3
BASYS 2 - 7 Segment Display Demonstration

This video shows a demonstration on lab 4 running on the BASYS 2 board.

4
Hexadecimal to 7 Segment Display VHDL Design

This lecture contains the completed VHDL design for the Hex to 7 Seg lab.

Lab 5 - Counter

1
Introduction

An introduction to counters in digital logic.

2
BASYS 3 Counter Demonstration
3
BASYS 2 Counter Demonstration

This video shows a counter implemented on the BASYS 2 board.

4
Counter VHDL Design

This lecture contains the completed VHDL design for the counter lab.

Lab 6 - Multiplier

1
Introduction

An introduction to how FPGA's implement multiplication.

2
BASYS 3 Multiplier Demonstration
3
BASYS 2 Multiplier Demonstration
4
Multiplier VHDL Design File

This lecture contains the completed VHDL design for the RC Servo Lab.Multiplier lab.

Lab 7 - RC Servo

1
Introduction

A quick background on RC servos and what they are used for. You will also learn what methods are used to control RC servos.

2
BASYS 3 RC Servo Demonstration
3
BASYS 2 RC Servo Demonstration

This is a demonstration of lab 7 implemented on the BASYS 2 board.

4
RC Servo VHDL Design Files

This lecture contains the completed VHDL design for the RC Servo lab.

Lecture Notes

1
Introduction to VHDL Notes
2
Data Types Notes
You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.3
4.3 out of 5
956 Ratings

Detailed Rating

Stars 5
486
Stars 4
297
Stars 3
131
Stars 2
31
Stars 1
11
2b96f7d41877efa55b6e7534e16ed076
30-Day Money-Back Guarantee

Includes

5 hours on-demand video
11 articles
Full lifetime access
Access on mobile and TV
Certificate of Completion