Many times, developers who want to take their first steps in the world of the FPGAs ask me about a development board which begin to test their first designs. From the newie point of view, I understand that see a led blinking can be very satisfying, but from my point of view, is more interesting to see how the FPGA works internally, how the signals changes its values on the correct, or incorrect, way and it helps the developers to really debug their designs, and overall, learn how works an FPGA. All of this can be done without any development board, only with Vivado and its integrated simulator. Obviously, once the design is simulated, the next step is to configure an FPGA and test the design. On this post, I will show you the development boards I use to test my designs.
When I come back to the world of the FPGAs (I spent several years developing on DSP), I bought a board which, for me, is a really interesting board, and I still use it frequently, the Digilent Arty A7 35T. This board is based on an Artix7 FPGA from Xilinx. One thing that I appreciate a lot of this board is that you don’t need a power adapter, since the board can be powered from the USB. There are 2 versions of this board, on based on the 35t model, and the other one on the 100t model, but the 35t model will be enough for almost all your projects.
From several years ago, SOCs have reduced their cost and the board based on Zynq and Zynq Ultrascale + has been multiplied. If you are working on a project where an Artix FPGA is used, maybe your best option could be the Arty board, but if you are looking for a board that you will use for several years that allow you to work with FPGA ans SOCs, the TUL Pynq Z2 board is a really good option. This board is based on a Zynq 7020, that has a dual core ARM A9, and an FPGA with almost twice of slices than the Arty board. The format of this board is pretty similar than Arty and also can be powered through the USB. This board has a large number of output and input ports, and I use it when I have to test some little development on a SOC.
With the same part than the Pynq Z2, the next board I will talk about is the board that I most ever used, and you can see a lot of post using this board, the Digilent Eclypse Z7. This board, as I said, is based on the Zynq 7020, but the potential of this board are its SYZYGY interfaces. You can find more information of this interface on its webpage. Digilent has developed 2 daughter boards (ZMOD), that you can buy with the Eclypse Z7, with a high speed (100Msps) ADC and DAC. If you want to focus on signal processing, this board with the 2 ZMODS allow you to acquire signals with a 14 bits resolution and 100Msps. You can found this board on several projects that I developed on the blog and hackster.
For the last projects I have developed with MATLAB, I have used the last board I acquired, the Picozed 7015 with the carrier board FMC gen 2. When I bought this board, I needed a board that MATLAB had an available support package for connect MATLAB/Simulink to the board using LibIIO. There are several boards available, and my first option was a Zedboard but finally I bought this board because its Gigabit transceivers. The board has an FMC interface which is compatible with most ADC and DAC boards and also has a PCI interface that allow to connect the board to a PCI x1 port of your computer and research about this interface.
On the blog, I have also developed projects for Zynq Ultrascale+. In order to test those projects I have 3 boards based on Zynq MPSOC. The first on is the popular Ultra96 board. You can find dozens of projects with this board on hackster, overall if you are looking for projects of artificial vision, and it is a very interesting board if you want to develop projects based on hardware acceleration, but in my case, I use many times external hardware to acquire signals, and this is not the purpose of this board, that is the reason because I don’t use it for the blog.
The second one is the Trenz TE0802. This board is based on a small device than Ultra96, and has the same connections of the Ultra96, and also 2 PMODS, an M.2 socket, push buttons, switches… I have used this board in some projects of the blog, the last one I show you how you connect an NVME SSD to a Zynq MPSOC, also I have used this board to develop the DMA projects, and I really like this board because its size, and its connections that allow you to develop interesting projects using some external hardware. I think this board is very interesting to develop FPGA-in-the-Loop projects with MATLAB, because you don’t need a lot of space on the table. Unfortunately, the board needs an external supply, bot in the other hand, it has a Digilent’s JTAG Cable integrated, so you only need the board and the external supply.
The third one is the bigger sister of the Ultrascale boards I have, Digilent’s Genesys ZU. This board has all you will need to develop almost any project you think. It is based on the same part of Ultra96, but in a bigger package, which allow more peripherals. If you don’t want to buy external peripherals, on the board you have an audio codec, wifi module, leds, switches, USB. regarding the connections it has PMOD, an MPCIe socket, 2 MIPI connections and a SYZYGY port. I am using this board to test an FMC board I developed with an ADC that works at 1.8 volts with LVDS interface, that is only full compatible with Ultrascale architecture.
Although on the blog I did mention yet this boards, I also have some board with Microchip’s SmartFusion SOCs, the Hello FPGA Board, and the SmartFusion2 Maker Kit. These boards are based on a SmartFusion2 SOC which integrates in one silicon device a Cortex M3 and an FPGA. Something interesting of Microchip is that they have some RISC-V soft processors, that these boards are capable to run. This will be one of my next projects here.
Last, on one post I have talk you about SDR, and for that post I have used a Digilent’s partner board, the USRP B205mini. This board is designed for SDR and make a great couple with GNU Radio, or even MATLAB ans its Communications Toolbox.
As I said at the beginning, if you want to enter the world of the FPGAs, at first you don’t need a development board, but if you still wants one, there are many manufacturers that have development boards in all ranges of prices. To start, I recommend you that think in a board that allow you to develop what you already know, and what you can learn in a mid term, for example, if you are focused on the FPGA, I recommend you the Arty board because it has all the peripherals connected to the FPGA, and you can play with the Ethernet PHY, or even the DDR memory. In other case, Pynq Z2 board is a very interesting option since it is based on a SOC, and you can experiment with the ARM coore and its connections to the FPGA. If you are looking for a Microchip board, the Maker Kit is the cheapest board, but the inout ports are very limited, so if you want to experiment with external hardware, Hello FPGA will be more interesting for you.