Microchip logo
  • All
  • Products
  • Documents
  • Applications Notes
 

Getting Started with Microchip FPGAs is as Easy as Saying ‘Hello’

Does your design require parallel computing, security, efficiency, speed, flexibility and scalability? Say hello to FPGAs! 

 

Why FPGAs? 

 

FPGAs are reconfigurable integrated circuits (ICs) used to implement complex logic functions supporting multiple system implementations and revisions. They can implement anything as simple as a gate or as complex as a multicore processing system.  

 

An FPGA empowers you to build future-proof and scalable designs, conform to evolving standards and reconfigure hardware for revised specifications, even after a product has been deployed in the field. If your MIPI based image processing system requires an upgrade to support additional camera sensor interfaces, you can do so on an FPGA with no modification to the system. This gives you a cost and time advantage over having to determine and purchase new parts to redesign your system. 

 

Traditionally FPGAs have been thought to be complex devices, insurmountable for people without prior FPGA development experience. However, we devised a plan to change this perception and make the FPGA an accessible and easy to use platform for everyone.  

 

How Does the Hello FPGA Kit Work? 


We engineered the Hello FPGA kit to be a low-cost, compact, versatile hardware that serves as an easy tool to familiarize yourself with FPGAs. 

 

We have introduced the Hello FPGA Kit, based on the SmartFusion®2 FPGA with its Arm® Cortex®-M3 processor with embedded Flash to enable you to kickstart your FPGA journey. The kit simplifies FPGA evaluation, allowing you to experience the benefits of employing an FPGA in your design and accelerate prototype development.  
 

The Hello FPGA platform supports compelling demos in image processing, signal processing and artificial intelligence. The kit features universal connectors such as Arduino and mikroBUS™ to allow for flexibility in prototyping and developing expansion kits, thereby ensuring easy adoption in future projects. 

 

Riding on the benefits of low risk of product obsolescence, rapid prototyping and easy debugging, FPGAs have slowly gained popularity across diverse market segments. FPGA market growth is being driven by their growing adoption in the telecom, consumer electronics, automotive and industrial applications in addition to the more classical sectors of military, aerospace and defense.  

 

The Hello FPGA supports an extensive range of easy to use pre-built demonstrations to enable you to get started quickly and use FPGAs in your next project. 

 

Hello FPGA can be used to develop applications from simple control logic to data acquisition, image processing, signal processing and AI applications. The kit measures live FPGA core power consumption and enable users to use the unique Flash Freeze mode while maintaining the I/O state for low power applications. The Hello FPGA board includes Microchip’s PIC32 microcontroller (MCU) that is used to program the SmartFusion®2 SoC FPGA, monitor power and perform general housekeeping functions. The kit can work as a standalone unit, as well as an extension to existing Microchip kits over the PICkit™ Header. It also demonstrates key FPGA features and processing capabilities like DSP, Instant ON, machine learning interface and low power. 

 

The Hello FPGA kit combines the Hello FPGA baseboard, the LCD board and the camera sensor board. The baseboard is a powerful board and houses the M2S010-1VF256 SmartFusion2 SoC FPGA, PIC32MX79SF512L PIC® MCU, a host of memory devices, expansion headers and compatible connectors. The camera sensor and LCD are accessory boards that plug into the baseboard via 20-pin expansion headers and aid in image sensing and rendering applications such as the included demonstrations for image processing and digit recognition. SmartFusion2 SoC FPGAs offer 5K–150K LEs with a 166 MHz Arm® Cortex®-M3 processor, including ETM and instruction cache with on-chip eSRAM and eNVM and a complete microcontroller subsystem (MSS) with extensive peripherals, including CAN, TSE and USB. The onboard FPGA functions as the organ of intelligence and manages all computing and processing functions including running a convolutional neural network (CNN) while the MSS pilots the Flash Freeze operations and configuration of the camera and display. The PIC32 MCU runs Direct C to program the FPGA via a dedicated GUI. Additionally, it helps measure power consumption, bridge the UART communication channel between the PC and the FPGA and accept and respond to commands from the FPGA. The onboard memory devices include an 8 GB DDR3 and an 8 MB SPI Flash used to store bootup images. 

 

The camera board employs a camera sensor from OmniVision and supports resolutions of up to 640px480p in the RGB 5-6-5 format. The display board uses an LCD from Ilitek and supports resolutions of 480px320p.  

 

The dedicated Hello FPGA GUI is an intuitive tool that automatically detects the program on the FPGA and simultaneously switches views to display the corresponding demonstration. The necessary USB-to-UART MCP2221 Drivers are installed along with the GUI. It further measures the FPGA core power with realtime options to enter and exit Flash Freeze mode.  

 

In addition to power measurement, the hello FPGA includes three ready to use illustrations for image processing, object detection and recognition and FIR filter. For the image processing demonstration, the FPGA scales an incoming live video from the camera from 640x480 down to 480x320 before running it through image enhancement functions for brightness, contrast and color balance and then displays it on the LCD while consuming the lowest power. The artificial intelligence-based digit recognition demo uses underlying image processing to read digits, either handwritten or displayed on the GUI, and display the recognized output on the LCD. This is accomplished using a 4-layer deep, parallel, fully connected CNN built using TensorFlow and trained using the MNIST database. The FIR/FFT demonstration accepts input parameters from you over the GUI to process and display a corresponding waveform on the GUI. It also allows an auto sweep function to sweep a single input frequency through a range of values for the FPGA to process.  

 

Get Started Today 

 

We offer a variety of resources to help you become familiar with Hello FPGA and enhance your FPGA development experience. You can access all related information at  https://www.microsemi.com/existing-parts/parts/150925#overview.