A compact hardware-software co-processing platform

FPGAs are powerful devices to be used in a large variety of applications such as intensive numerical processing, image and video processing due to their parallel processing ability. Therefore, more and more interest in using FPGA to be a computing accelerator device working with a general-purpose pr...

Full description

Saved in:
Bibliographic Details
Main Author: Shasha, Tian
Other Authors: Chen Shoushun
Format: Final Year Project
Language:English
Published: 2015
Subjects:
Online Access:http://hdl.handle.net/10356/64466
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
Description
Summary:FPGAs are powerful devices to be used in a large variety of applications such as intensive numerical processing, image and video processing due to their parallel processing ability. Therefore, more and more interest in using FPGA to be a computing accelerator device working with a general-purpose processor. This report explores using a hardware-software co-processing approach for doing intensive data processing. The co-processing platform uses a Raspberry Pi as a PC in conjunction with an FPGA-based board and a mini LCD display interfacing to the Raspberry Pi. All the devices in this co-processing platform are credit card sized which can be installed in moving application such as unmanned aerial vehicle (UVA) to improve performance of image processing. This hardware-software co-processing platform is designed to implement a floating-point adder on the FPGA-base board and develop an interface application on the host Raspberry Pi for interconnection and communication. The single precision 32-bits floating-point adder was designed in HDL Verilog according to IEEE 754. The method to configure and interface to the hardware is using the concept of FrontPanel Endpoints provided by Opal Kelly. The hose PC-side interface application using for loading configuration files and data exchanging is developed in C++. Once the FPGA is configured, Raspberry Pi can transmit values to the hardware for data processing, which can return the result back to Raspberry Pi and displayed on the mini LCD.