Go Board - Setting Up APIO, open source FPGA build and program tools This page details the steps to get set up with APIO, an all inclusive open source toolchain for building and programming your FPGA. It works on Windows, Linux, and Mac operating systems. It's easy to get setup and works great with the| Nandland
Tutorial - Writing Combinational and Sequential Code Using VHDL Process or Verilog Always Blocks This tutorial shows how to write blocks of either VHDL or Verilog that are contained in either a Process or an Always Block respectively. Processes (in VHDL) and Always Blocks (in Verilog) are fundamental and they need to be well understood. They behave| Nandland
Generics in VHDL Generics are important enough to warrant their own example. They are used by the digital designer for two main purposes: Purpose #1: Create code that is flexible and easily reused. This might add a little bit of extra work up front, but it will decrease development time later on significantly. Making a change to| Nandland
Tutorial: Your FPGA Program: An LED Blinker Part 2: Simulation of VHDL/Verilog Simulation is a critical part of any design. It is very important to check that the code you wrote is behaving the way you expect it to behave. This is done with a simulator. The simulator that is most popular in the commercial world is| Nandland
What is a UART? AKA Serial Port, RS-232, COM Port, RS-485 This type of functionality has been referred to by many different names: Serial Port, RS-232 Interface, COM Port, but the correct name is actually UART (Universal Asynchronous Receiver Transmitter). A UART is one of the simplest methods of talking to your FPGA. It can be used| Nandland
Tutorial - Sequential Code on your FPGA Using Process (in VHDL) or Always Block (in Verilog) with Clocks If you are unfamiliar with the basics of a Process or Always Block, go back and read this page about how to use a Process/Always Block to write Combinational Code. Writing sequential| Nandland
Function - VHDL Example Functions are part of a group of structures in VHDL called subprograms. Functions are small sections of code that perform an operation that is reused throughout your code. This serves to cleanup code as well as allow for reusability. Functions always use a return statement. They are generally good for doing a small| Nandland
Tutorial for dealing with unused signals in VHDL. Leave signals unconnected if they are not used.| Nandland
Go Board - UART (Universal Asynchronous Receiver/Transmitter) Learn to Communicate with the Computer (Part 2 - Transmitter) In the previous project, you learned how to receive data from the computer and display the received byte on the two digit 7-Segment display. You saw that the data being displayed was showing the| Nandland