Nandland Go Board – Your FPGA Playground
My name is Russell and I am the creator of www.nandland.com. I started Nandland to increase the usage of FPGAs by making them easy to use. I am thrilled to announce after months of hard work the creation of the next phase of that plan: The first FPGA development board you should buy!
What is an FPGA?
FPGA stands for Field Programmable Gate Array. An FPGA is a component that can be thought of as a giant ocean of digital components that can be connected together by wires. The code that you write makes real physical connections with wires to perform the function that you need. What makes FPGAs special is that they are very good at performing a large number of operations in parallel (at the same time). They are used in high-speed, high-performance tasks such as image processing, telecommunications, digital signal processing, high-frequency stock market trading, and many others.
FPGAs are also fun to design with! The code that you write is at the lowest possible level. It’s like using simple Lego Bricks to build the Millennium Falcon, FPGAs allow you to make something very complex out of something simple. The Nandland Go Board is an amazing platform for you to become familiar with hardware programming in the two coding languages used: VHDL and Verilog.
How is an FPGA different from Software?
There are two main programming languages that a FPGA designer uses: VHDL and Verilog. This type of code is fundamentally different than software! The main difference is that software code targets a processor, whereas hardware code does not.
A Central Processing Unit (CPU) or just processor, is the central component that software designers need to understand. A CPU processes instructions one at a time to perform a task. A software designer writes code in a language like C that gets compiled by a compiler. The job of the compiler is to take the high-level code that the software designer writes and convert it into low-level code that the processor can understand. It must be understood that in hardware design, there is no compiler! There is nothing to take your code and turn it into instructions the way that a software compiler does.
This is because an FPGA designer does not have a processor to target. Instead, they have thousands or hundreds of thousands of discrete digital components such as Look-Up-Tables, Registers, RAM, Digital Signal Processing components, and others. An FPGA designer writes code at a much lower level than the software engineer. The FPGA designer is targeting the individual components of the FPGA, and has control over everything!
Digital Design is fun to learn, because it is the lowest-level of programming that is possible to do. Your code is used to literally run wires between components such as and-gates and or-gates!
Read more: Nandland Go Board – Your FPGA Playground