Research Projects

Optimizing for Adaptive CNNs on FPGAs: A Multi-Level Approach

This was my PhD thesis project. We investigated how we can best use the optimizations out there to deliver efficient inference on FPGAs at the edge. From optimizations at the hardware level to optimizations at the algorithmic level, we want to understand how they behave with each other and their joint impact on relevant metrics like accuracy, energy, and performance. My PhD started in March 2020 and ended in May 2024, resulting in several publications, many collaborations, and granted a few funding projects.

phd

A Resource-Aware Multicore CGRA Architecture for Edge Applications

Project carried out during my Mater’s Thesis under supervision of professor Antonio Carlos Beck and Marcelo Brandalero. In this work, we have investigated methods to make Coarse-Grained Reconfigurable Architectures (CGRA) more power-efficient. In particular, we explored power-gating and runtime profilers to adapt the reconfigurable fabric to the running applications, avoiding underutilization of the hardware and increasing efficiency. This project was also selected as Best Poster at the DAC 2020 Young Fellow Program.

CGRA

A FPGA parameterizable multi-layer architecture for CNNs

Work done as my final undergraduate project under supervision of professor Fernando Gehm Moraes at PUCRS. VHDL implementation of a parameterizable FPGA-based CNN accelerator. Processing Element is based on accumulators and an adder tree. We used AlexNet as a case study for this project. Besides the paper, more detailed information about this work can be found here.

Conv. layer

A Lightweight Open Source Command and Control Center and its Interface to Cubesat Flight Software

Project carried out during my internship at CapTech/NASA in 2015. The work was presented at the 2015 Workshop on Spacecraft Flight Software (FSW-15) and the paper can be found here. The Command and Control Center was implemented with several open source software packages. It interfaced with a Raspberry Pi based cubesats. The open source COSMOS software from Ball Aerospace was used. The received telemetry was put up on a web page. Limits alerts were texted to a user’s phone. NASA is looking at this approach to support its own Cubesat Missions.

Cubesat

I am also co-advising bachelor final projects in our group: