Hello FPGA

Demo Board Overview

Last modified by Microchip on 2025/01/29 16:40

   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.

Hello FPGA Demo Kit

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.

Hello FPGA Block Diagram

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.

Back to Top

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. 

Hello FPGA GUI

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. 

Hello FPGA Input Signals and FFT

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.

Hello FPGA Filter Output Graph and FFT

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. 

Hello FPGA Text Viewer

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.

Hello FPGA Autosweep Screen

Figure 7: Autosweep

Back to Top

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.

Hello FPGA Power Graph Viewer

Figure 8: Flash Freeze Button

Back to Top

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.

Hello FPGA Image Processing Demo

Figure 9: Image Processing Demo

Back to Top

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.

Hello FPGA Handwritten Digit Recognition Example

Figure 10: Artificial Intelligence Demo

Back to Top

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".

Back to Top