Objectives

Although FPGA devices have a lot of advantages for the type of work described in Context and Motivation section most of the developers don’t use it because this approach requires digital design skills and detailed knowledge of FPGA technology. In fact, system developers are more proficient on software programming than in digital hardware design, in spite of the more and more user friendly and easy to use FPGA design tools.

 

The objective of this work is to develop an easy to use reconfigurable system, based on an embedded computer and a FPGA to implement highly customized interfaces with external devices, including dedicated pre-processors to alleviate the load of the main processor (e.g. digital filters or FFT calculators) and also specialized computing modules to accelerate critical parts of the software applications running on main processor.

 

From the FPGA point of view, this work will develop a software tool to automatically generate a complete HDL design for the FPGA device, based on a high-level description of the set of interfacing blocks and protocols configured for the project, from a library of commonly used interfaces in robotic systems (e.g. UART, I2C, SPI, etc). The objective is to hide as most as possible from the system developer all the details of the digital system that implements the software-external hardware interface. The tool will also allow the integration of other custom designed blocks developed by the user and support the inclusion of new modules in the FPGA design framework.

 

In addition, the tool will also create the software application programming interfaces (API) to facilitate the software development and the communication with the interfacing resources implemented in the FPGA.

 

The hardware system to be used is a commercial popular low cost embedded computer (the BeagleBone Black) and a FPGA-based daughter board (Logi Bone) built on the XILINX Spartan6 FPGA.

Reconfigurable peripheral manager for embedded robotic systems

 

@ copyright Filipe Lopes