3.59 out of 5
3.59
159 reviews on Udemy

FPGA Turbo Series – Implementing a UART

Develop a fully functional UART from start to finish and implement on your own FPGA development board
Instructor:
Your Embedded Systems Guy
1,237 students enrolled
English [Auto-generated]
Gain a solid understanding on how the UART protocol works.
Implement a fully functional UART on their FPGA development board.
Have a UART implementation in VHDL that they have created themselves.
Improve their skill sets in FPGA development platforms, specifically Vivado's Design Suite.
Able to interpret, design, and implement a complex state machine.

This course will explain how the Universal Asynchronous Receiver Transmitter (UART) protocol can be used to transmit and receive information. The UART protocol structure is explained in great detail with many visual representations to help the students understand how a UART works. Once the UART protocol has been sufficiently explained to the students, they will then be guided through the FPGA design and development process in order to implement a fully functional UART on their FPGA development boards. This fully functional UART will be able to accept commands received over the UART serial port and act upon these commands. These actions will include being able to individually select which LED’s are on and which ones are off, as well as being able to set the number displayed on the 7 segment display.

Students will be provided with VHDL design files that can be used as starting points for their UART design. Working with the provided design files and using the lectures as references the students will implement a fully functional UART on their development boards. The students will get to use Xilinx’s development tools for the design and debugging of their UART implementations.

This course is geared towards students who have been exposed to VHDL, FPGA’s, as well as a basic understanding of digital circuits. This is a great supplement to any engineering student who wants to improve upon their hardware design skills before entering the workforce. This course is also great for anyone who is currently employed in the field engineering. Also any electronic hobbyist would benefit greatly from this course!

Upon completing this course students will have all the necessary design files to implement a UART on virtually any FPGA with minimal modifications. Beings that the students will be designing and debugging their own code they will have very detailed knowledge of how this design works and will easily be able to adapt it so that they can add support for many more commands!

Introduction to the Course

1
Introduction

This lecture introduces the instructor as well as the material covered.

2
Board Compatibility

This lecture talks about and discusses which FPGA development boards will work for this course, as well as which development boards are most ideal.

Universal Asynchronous Receiver Transmitter (UART)

1
Introduction to UART

This lecture introduces the UART protocol and how it can be used.

2
UART Protocol

This lecture discusses in detail the UART protocol and how a set of data is transmitted via UART.

3
ASCII

This lecture talks about ASCII and how it is related to UART.

4
UART Transmission Example

This lecture gives an example of how to transmit a message via UART.

5
UART Verification

This lecture walks through the steps to verify that the UART on your development board is working correctly.

UART Transmitter FPGA Design

1
UART Transmitter Design

This lecture discusses how the UART transmitter is designed and what the students will need to do in order to get the transmitter working.

2
UART Transmitter State Machine Design

This lecture walks through and explains the UART transmitter's state machine design.

3
Creating UART Transmitter Vivado Project

This lecture walks through step-by-step the process of creating a project in Xilinx's Vivado Design Suite, in order to develop a UART transmitter FPGA design.

4
UART Transmitter Design Guide

This lecture explains in detail the theory and operation of the UART transmitter. By following the concepts discussed in this lecture students can complete the UART transmitter design.

5
UART Transmitter Simulation and Verification

This lecture walks through the steps required to simulate your UART transmitter in Vivado in order to verify your design is working correctly.

UART Receiver FPGA Design

1
UART Receiver State Machine Design

This lecture describes and explains the UART receiver state machine design in great detail.

2
Creating UART Receiver Vivado Project

This lecture walks through step-by-step to create a project in Xilinx's Vivado Design Suite in order to implement the UART receiver FPGA design.

3
UART Receiver Simulation and Verification

This lecture walks  through the steps required to simulate your UART receiver in order to verify your design is working correctly.

UART Controller FPGA Design

1
UART Controller State Machine Design

This lecture shows the UART controller state machine and explains what causes the transitions between states.

2
Creating UART Controller Vivado Project

This lecture walks students through step-by-step showing them how to create a project in Xilinx's Vivado Design Suite, so they can implement the UART controller on their development board.

3
UART Controller Simulation and Verification

This lecture walks  through the steps required to simulate your UART receiver in order to verify your design is working correctly.

UART Demonstration

1
Programming the BASYS 3 Board

This lecture walks students through the steps to program their development board. In this lecture the BASYS 3 board is being programmed.

2
UART Setup on the BASYS 3 Board

This lecture shows the setup I used while programming and debugging the UART controller design.

3
UART Demonstration on the Basys 3

This lecture shows a demonstration of the fully functional UART running on a BASYS 3 development board.

Development Tools

1
Download and install Xilinx Vivado Tool Suite

This lecture discusses the steps required to download and install Xilinx's Vivado design suite, the tool used to develop, simulate, and program the FPGA development board.

Conclusion

1
Conclusion

This lecture discusses what the students have completed and wraps up the course!

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!
3.6
3.6 out of 5
159 Ratings

Detailed Rating

Stars 5
111
Stars 4
34
Stars 3
10
Stars 2
2
Stars 1
2
9e49cd0e77b4cb97c15fd85f8542b9d4
30-Day Money-Back Guarantee

Includes

2 hours on-demand video
1 article
Full lifetime access
Access on mobile and TV
Certificate of Completion