Learn how to program an Fpga

This programming course is made for a first time beginner.
Rating: 4.1 out of 5 (68 ratings)
2,482 students
Learn how to program an Fpga
Rating: 4.1 out of 5 (68 ratings)
2,483 students
I want to show you how to program 15 digital circuits into an FPGA trainer board using the Xilinx ISE software tool. Each lesson starts by explaining how the logic works in one of the digital circuits. In this course, the programming code for the circuit, in the fpga, will be described with Vhdl programming code. The programming code for each of the 15 circuits, are converted to a bit file and the bit file programs the circuit into an fpga trainer board. The trainer board is now ready to test the circuit. Step by step procedures will show you exactly how to do this course. Learning how to program an FPGA is just like learning how to drive a car. You can read all about driving a car, but until you get behind the wheel and try it for yourself you won't be able to do it. If you view this entire course and complete everything in it, you will have the knowledge to be able program an FPGA by yourself.
You will learn how to describe a circuit using Vhdl code
15 circuits of Vhdl programming code have already been written for this course.


  • If you know something about these topics it will help you in this course: binary numbers, hexadecimal numbers, programming, wiring a circuit, digital circuits, basic electronics


This 3 ½ hour video course is divided into sections showing 16 hardware code routines. To see the routines working, you will need a $30.00 fpga trainer board. The last lesson in  this course will show you where to buy the trainer board. You will also need to download a free software tool called the -Xilinx ISE- so you can write and test hardware code routines on your computer.

If you take the hardware code for a digital circuit part and program it into an fpga, the hardware code will configure the circuit into the fpga. The best thing about an fpga is, a whole circuit board full of digital parts can be programmed into one fpga. This technology is very important and I want to show you how it is done. Reading a book is not the easiest way to learn how to program an fpga. A better way is to view step by step explanation videos. Digital circuit boards today using an fpga are less expensive, contain fewer parts, and the design process takes less time.

Because hardware coding is different than conventional programming, examining working code routines is a better way to learn how to program an fpga. I have put together 16 different hardware code routines. Each routine is explained in a video lesson. Because hardware code routines can be very difficult to understand, each routine is explained by me in detail. After explaining the code, you will see a video of me testing the code on the fpga trainer board. Your computer's usb plug and cable sends the programming code to the fpga trainer board.

It is a long process to learn how to program an fpga, but your effort will be rewarded if you stick with the course. When you end this course you will be one of the very few who know how to program an fpga.

If you have any trouble understanding this course, or you have trouble downloading the -Xilinx ISE- or anything else, I will be glad to help you. I learned a lot making this course, I think you will too.

Who this course is for:

  • Anyone with some hardware knowledge
  • Anyone that wants to program hardware code

Course content

2 sections • 20 lectures • 3h 28m total length
  • Why learn my course
  • Introduction


Learn how to program an Fpga
James Buchanan
  • 4.1 Instructor Rating
  • 68 Reviews
  • 2,482 Students
  • 1 Course

My name is James Buchanan. I have been retired for a few years now, and I would like to share with you some of my experiences, working in Silicon Valley. The company I liked the best, was Atari games. I worked there for 20 years. Atari is gone now, but it was the best place to learn digital circuits. Single logic hardware parts were used years ago, but today, single logic circuits are imbedded deep, in custom hardware parts. For many years at Atari, I was the top circuit board trouble shooter. At Atari, if you did a job well, they would let you do it, even if you didn't have the educational degrees for it. During Atari's most prosperous years, there were about 100 technicians troubleshooting, arcade circuit boards. My job was to train and help those technicians troubleshoot. When a new circuit board design was assembled in manufacturing, and tested for the first time, I was the one that tested the board and I was the one that interfaced with engineering, when there was a problem. After Atari, I worked at Ikos and Mentor Graphics. Mentor Graphics bought Ikos. I was the lead technician for the Ikos FPGA simulator. The simulator had 8 large circuit boards with about 50 FPGA's on each board. Each FPGA, was soldered to a small board that had connectors. Unfortunately, when the small boards were mounted to the large boards, there were connection issues. It was a big problem for the company, but I came up with a troubleshooting method, to deal with those problems. I trained all the customer service technicians, with my method.

Computer science students are required to learn some hardware programming, on an FPGA trainer board, before they get their computer science degree. Beginners and computer science students have a lot trouble learning how to program hardware, because it is very different than computer programming. It is very important to understand how a digital circuit works, before you program it into an Fpga. Hardware programming is nothing like computer programming. Hardware programming can only duplicate a digital logic circuit in an Fpga, and wire it up to inputs and outputs. Because of that, you must understand how a digital circuit works, before you will be able to program the hardware code for it. The hardware codes make no sense, without this knowledge. My lessons start with easy digital circuits, and easy hardware programming code, that duplicates the circuits. Each lesson gets progressively harder. At the end of this course, you will understand how 16 different digital circuits work, and how to use the hardware programming code, to program those circuits into an Fpga. You will also see a video of me, testing the Fpga circuits. I hope you have an enjoyable time, learning about Fpga's.