Hello FPGA
Demo Board Overview
Demo Overview | Demo |
Hello FPGA Kit Contents
This kit consists of an LCD display, the Hello FPGA board, and a camera sensor board as shown in Figure 1. You can connect the kit to a host PC via a USB 2.0 A to Mini-B cable to provide power and communication with the host.

Figure 1: FPGA Kit Contents
Hello FPGA Board
The Hello FPGA board is based on the Microchip SmartFusion® 2 SoC Field Programmable Gate Array (FPGA) with an Arm® Cortex®-M3 microcontroller. An external 50 MHz oscillator provides the clocking. The board includes 8 megabytes of Serial Peripheral Interface (SPI) flash memory and 8 gigabytes of DDR3 memory. Three LEDs and three switches are provided for you to develop applications.
The board features a PIC32 microcontroller that you use to program the SmartFusion 2 FPGA, monitor power, and perform general-purpose functions. There's a Joint Test Action Group (JTAG) header for developing Arm Cortex-M3 applications and a PICkit™ tool header for developing PIC32 applications. A USB 2.0 connector provides power for the board and communication with the host PC.
Refer to the block diagram in Figure 2. There's an I2C, SPI, and Universal Asynchronous Receiver-Transmitter (UART) interface between the PIC32 and SmartFusion 2 FPGA. Two LEDs are present for developing PIC® MCU applications or for debugging. The kit offers expansion headers, Arduino®, and mikroBUS™ connectors for flexibility in prototyping.

Figure 2: FPGA Board Block Diagram
Microchip Hello FPGA Kit:
- Designed for beginners and enthusiasts
- Ideal for developing control logic and data acquisition, image processing, signal processing, and artificial intelligence applications
The kit includes several demos provided by Microchip.
Hello FPGA Kit DSP Demo
The Digital Signal Processing (DSP) demo highlights the SmartFusion 2 SoC FPGA features for implementing digital signal processing. In this demo, Finite Impulse Response (FIR) filters are implemented in the fabric for low-pass, high-pass, bandpass, and band-reject filtering operations, and the Fast Fourier Transform (FFT) is performed on the waveforms. The Hello FPGA GUI is used to generate the filter coefficients and input signals and to plot the input and output waveforms.
In the Hello FPGA GUI shown in Figure 3, in the filter generation pane, you can choose the filter type as Low-pass, High-pass, Bandpass, or Band-stop. You might leave the default of Low-pass. You also have different filter windows from which to choose. You can enter your high cutoff frequency. For example, change it to 30 MHz and generate your filter.
Below the Filter Generation pane, you can set up your input signals. Set a 10 MHz signal and a 55 MHz signal and generate your waveforms.

Figure 3: Filter Generation
In the Filter Input tab shown in Figure 4, you can see the signals and the frequency spectrum of your 10 MHz and 55 MHz signals.

Figure 4: Input Signal Frequency
Click Start. Now, look at the Filter Output shown in Figure 5. As you can see, you only have your 10 MHz component and there's the waveform.

Figure 5: Filter Output
When you look at the Text Viewer shown in Figure 6, you can see the numerical values for the graphs plotted in the filter input and output tabs.

Figure 6: Text Viewer
Figure 7 shows that clicking Autosweep in the GUI automatically sweeps one of the input frequencies through a range of values and sends them to the FPGA to perform filtering operations.

Figure 7: Autosweep
Power Measurement Demo
The power measurement demo displays the power consumption of any of the demo designs. It also demonstrates the use of the SmartFusion 2 SoC FPGA Flash*Freeze ultra-low-power mode. The Power Graph tab shown in Figure 8, is available for all the Hello FPGA demos. It displays the power consumption of the demo design.
Pressing the Flash Freeze Entry button enables the SmartFusion 2 SoC FPGA Flash*Freeze mode. Flash*Freeze is an ultra-low-power mode that suspends the operation of the FPGA fabric while retaining the states of the flip-flops and the memory contents. The GUI displays the power consumption while in Flash*Freeze mode.
Pressing the Flash Freeze Exit button restores the device to normal operation. The GUI displays the Flash Freeze Exit to FPGA functional time.

Figure 8: Flash Freeze Button
Image Processing Demo
In the image processing demo, video captured from the camera is displayed on the LCD module as shown in Figure 9. The FPGA processes the image to adjust contrast, brightness, and color balance using inputs from the Hello FPGA GUI.
Using the sliders, you can adjust the contrast, the brightness, the red color balance, the green color balance, and the blue color balance. You can make multiple adjustments simultaneously. The signal processing is done in the SmartFusion 2 SoC FPGA.

Figure 9: Image Processing Demo
Artificial Intelligence Demo
The artificial intelligence demo shows the machine learning interface capability within SmartFusion 2 SoC FPGA by performing real-time handwritten digit recognition. You point the camera to align the green box around a digit in the GUI with the green box on the LCD as shown in Figure 10. The recognized digit is displayed on the LCD and on the left side of the GUI window.
Three-digit sets are provided to allow testing with different fonts.

Figure 10: Artificial Intelligence Demo
Summary
The Hello FPGA Kit is ideal for end-users with low to medium FPGA experience. The demos included get you up and running quickly. Refer to the core syllabus for links to additional information on the Hello FPGA Kit.
In the next session, you'll learn how to create a design from the Hello FPGA Kit from scratch.
Video Course
You can also find this training in video format from Microchip University as "Hello FPGA".