Altera FPGAs: Learning Through Labs using VHDL
4.7 (50 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
211 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Altera FPGAs: Learning Through Labs using VHDL to your Wishlist.

Add to Wishlist

Altera FPGAs: Learning Through Labs using VHDL

Grab your Altera FPGA development board and get a hands on approach to learning all about your FPGA through labs
4.7 (50 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
211 students enrolled
Created by Jordan Christman
Last updated 5/2017
English
Current price: $10 Original price: $100 Discount: 90% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 2 hours on-demand video
  • 29 Articles
  • 25 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Understand the design process for implementing a digital design onto a FPGA
  • Program a FPGA
  • Replicate all the labs demonstrated in this lab
View Curriculum
Requirements
  • Purchase an Altera FPGA Development Board, we cover supported boards in the course
  • Basic understanding of binary notation
  • Basic understanding of hexadecimal notation
  • Basic understanding of logic gates
  • Basic understanding of VHDL
Description

Altera FPGAs: Learning Through Labs with VHDL teaches students digital design using the hands on approach. This course focuses on the actual VHDL implementation compared to the theory. The best most efficient way to learn VHDL is by actually writing and creating designs yourself. This courses includes 10 labs which include design for the following:

  1. BCD Display
  2. Random Number Generator
  3. Signed Multiplier
  4. Barrel Shifter
  5. Arithmetic Logic Unit
  6. Temperature Sensor
  7. Tilt Sensor
  8. Microphone Interface
  9. Potentiometer Interface
  10. Character LCD Interface

This course is structured such that each section contains a specific topic that is briefly discussed and then you will be given a design to start with to complete the lab. All the completed code solutions for each project will be available for download as a resource. Each section will contain a setup lecture that explains how to setup the lab. There is also a demonstration video given as a reference for a working design.

Who is the target audience?
  • Engineering Students
  • Engineering Managers
  • Digital Logic Enthusists
  • Individuals pursuing Electrical Engineering
  • Anyone who wants to learn more about VHDL
  • Anyone who wants to take it for fun!
Students Who Viewed This Course Also Viewed
Curriculum For This Course
59 Lectures
02:02:54
+
Introduction to the Course
5 Lectures 03:18

In this lecture, I will introduce myself and explain what is covered in this course. I also will explain what you can expect to get out of the course.

Preview 01:56

This lecture provides students with links to websites were they can buy FPGA development boards.

Where should you buy your FPGA board?
00:13

This lecture talks about all the FPGA development boards covered in this course.

FPGA Board's Covered in this Course
00:25

This lecture provides a link to a survey which will help me better understand which development boards everybody is using.

Which FPGA Board Are You Using?
00:17

This lecture lays out the structure of this course and explains all the content that will be covered.

Course Structure
00:27
+
Lab 1 - BCD Display
4 Lectures 13:04

This lecture explains what a BCD display is and ways that they can be used. We will be implementing this design in the lab.

Preview 06:45

This lecture explains whats the student needs to do in order to complete the assignment. This lecture also contains recommended steps to complete the assignment. This lecture contains designs the students may download for reference.

BCD Display Assignment
00:54

This lecture walks through to show you how to setup the BCD Display lab.

Preview 02:04

DE0 Nano SOC Board - BCD Display Demonstration
03:21
+
Lab 2 - Linear Feedback Shift Register
4 Lectures 11:49

This lecture explains Linear Feedback Shift Registers (LFSR). LFSR’s can be used for various applications, in this lab we will be using the LFSR to generate pseudo random numbers.

Linear Feedback Shift Register Explained
05:31

This lecture explains whats the student needs to do in order to complete the assignment. This lecture also contains recommended steps to complete the assignment. This lecture contains designs the students may download for reference.

Linear Feedback Shift Register Assignment
00:59

This lecture is a demonstration of the LFSR running on the DE0-Nano-SoC board.

Linear Feedback Shift Register Lab Setup
02:04

DE0 Nano SOC Board - LFSR Demonstration
03:15
+
Lab 3 - Booth's Algorithm
4 Lectures 15:22

This lecture introduces booth’s algorithm and how it works. This is the algorithm that we will be implementing for this lab.

Booth's Algorithm Explained
06:40

This lecture explains whats the student needs to do in order to complete the assignment. This lecture also contains recommended steps to complete the assignment. This lecture contains designs the students may download for reference.

Booth's Algorithm Assignment
01:19

Booth's Algorithm Lab Setup
02:57

DE0 Nano SOC Board - Booth's Algorithm Demonstration
04:26
+
Lab 4 - Barrel Shifter
4 Lectures 15:31

This lecture explains what a barrel shifter is and how they are used in digital designs. The designed explained in this lecture will be used to complete lab 4.

Barrel Shifter Explained
06:00

This lecture explains whats the student needs to do in order to complete the assignment. This lecture also contains recommended steps to complete the assignment. This lecture contains designs the students may download for reference.

Barrel Shifter Assignment
00:55

This lecture walks through to show you how to setup the Barrel Shifter lab.

Barrel Shifter Lab Setup
02:21

DE0 Nano SOC Board - Barrel Shifter Demonstration
06:15

Barrel Shifter Quiz
2 questions
+
Lab 5 - ALU (Arithmetic Logic Unit)
4 Lectures 18:10

This lecture describes what ALU’s are and how they relate to digital designs. We will be implementing an ALU in VHDL for this lab assignment.

ALU (Arithmetic Logic Unit) Explained
07:14

This lecture explains whats the student needs to do in order to complete the assignment. This lecture also contains recommended steps to complete the assignment. This lecture contains designs the students may download for reference.

Arithmetic Logic Unit Assignment
01:07

ALU Lab Setup
02:57

DE0 Nano SOC Board - ALU Demonstration
06:52
+
Lab 6 - Temperature Sensor Interface
4 Lectures 11:52

This lecture explains how the temperature sensor used in this lab works. I will explain how to read the data and how to convert the values to an actual temperature reading.

Temperature Sensor Interface Explained
05:11

This lecture explains whats the student needs to do in order to complete the assignment. This lecture also contains recommended steps to complete the assignment. This lecture contains designs the students may download for reference.

Temperature Sensor Assignment
00:49

Temperature Sensor Lab Setup
03:09

DE0 Nano SOC Board - Temperature Sensor Demonstration
02:43
+
Lab 7 - Tilt Sensor Interface
4 Lectures 07:53

This lecture explains how a tilt sensor works and various applications they can be used in. This lecture explains how we will be using the tilt sensor in this lab. 

Tilt Sensor Interface Explained
01:50

This lecture explains whats the student needs to do in order to complete the assignment. This lecture also contains recommended steps to complete the assignment. This lecture contains designs the students may download for reference.

Tilt Sensor Assignment
00:41

Tilt Sensor Lab Setup
02:50

DE0 Nano SOC Board - Tilt Sensor Demonstration
02:32
+
Lab 8 - Microphone Interface
4 Lectures 10:13

This lecture discusses how you can interface a microphone with an FPGA. In this lab, we will be interfacing the FPGA with a microphone.

Microphone Interface Explained
04:44

This lecture explains whats the student needs to do in order to complete the assignment. This lecture also contains recommended steps to complete the assignment. This lecture contains designs the students may download for reference.

Microphone Interface Assignment
00:56

Microphone Interface Lab Setup
01:53

DE0 Nano SOC Board - Microphone Demonstration
02:40

Microphone Interface Quiz
2 questions
+
Lab 9 - Potentiometer Interface
4 Lectures 09:26

This lecture talks about how a potentiometer can be interfaced with an FPGA. We will be interfacing the FPGA with a potentiometer for this lab.

Potentiometer Interface Explained
03:01

This lecture explains whats the student needs to do in order to complete the assignment. This lecture also contains recommended steps to complete the assignment. This lecture contains designs the students may download for reference.

Potentiometer Interface Assignment
01:01

This lecture walks through to show you how to setup the Potentiometer Interface lab.

Potentiometer Interface Lab Setup
02:42

DE0 Nano SOC Board - Potentiometer Demonstration
02:42
3 More Sections
About the Instructor
Jordan Christman
4.7 Average rating
845 Reviews
4,245 Students
8 Courses
Your FPGA Guy

Jordan Christman graduated from the University of Dayton with his Bachelor's degree in Electronic and Computer Engineering Technology. He also graduated from UD with his Master's degree in Electrical Engineering. Jordan currently has a patent pending for an electronic monitoring device. He has strong knowledge in FPGA (Field Programmable Gate Array) development, Digital Electronics, Circuit Board design, and VHDL design and modeling of hardware systems. Jordan's focus of study in school was embedded systems which involves circuit design, firmware development, implementation of computer hardware, and the interfacing of computer operating systems. Jordan's hobbies include mobile application development, layout and assembly of PCB's (Printed Circuit Boards), computer application programming, and anything related to electrical engineering.