Enabling reconfigurable hardware acceleration for ROS-based robotics applications
Creators: name: Lienen, Christian
Publisher: name: Universität Paderborn
Year: 2024

description: Das Robot Operating System (ROS) hat sich in letzter Zeit zum de-facto-Standard für die Entwicklung von Software im Bereich Robotik entwickelt und beinhaltet ein Designparadigma basierend auf Dekomposition, einer Infrastruktur zur Kommunikation und Bibliotheken.Für die Ausführung von Robotik Anwendungen bestehen moderne Computerplattformen aus einer Reihe heterogener Plattformen wie z.B. Multi-Core-CPUs, eingebettete GPUs und FPGAs. Durch angepasste Hardwarearchitekturen verspricht die Nutzung von FPGAs eine schnellere und energieeffizientere Berechnung als verwandte Plattformen wie Multi-Core-CPUs und GPUs. Moderne System-on-Chip Architekturen kombinieren eine Multi-Core CPU mit rekonfigurierbarer Logik, was in einer dichteren Komposition von Hardware und Software und die Unterstützung von partieller Rekonfiguration resultiert. Ein wichtiger Aspekt ist daher die standardisierte Integration von Hardwarebeschleunigern in bestehende ROS-basierte Softwareanwendungen, da die komplette Neuentwicklung von Anwendungen ineffizient und aufgrund ihrer Komplexität meist nicht realisierbar ist. Weitere Herausforderungen neben der standardisierten Integration sind die Nutzung einer effizienteren Ressourcennutzung durch dynamische partielle Rekonfiguration und die Verringerung des Overheads durch Datentransfers zwischen Hardware und Software.In dieser Arbeit wird ReconROS vorgestellt, ein neuartiger Ansatz zur Integration rekonfigurierbarer Hardware in Robotik Anwendungen, der das ReconROS-Framework, den ReconROS Executor und fpgaDDS umfasst. Das ReconROS Framework kombiniert ReconOS und ROS 2 und ermöglicht es Robotik-Entwicklern, ROS 2-Knoten vollständig in Hardware zu implementieren. Dank des konsistenten Programmiermodells für Hardware und Software und des vollständigen Zugriffs auf den virtuellen Speicher können Entwickler ROS 2 Nodes leicht von Software ...
description: The Robot Operating System (ROS) has recently become the de-facto standard for developing robotics applications comprising a design paradigm based on decomposition, communication infrastructure, and libraries.For the execution of these robotic applications, modern computing platforms comprise a set of heterogeneous computing platforms, e.g., multi-core CPUs, embedded GPUs, and FPGAs. Due to custom hardware architectures, FPGAs promise faster and more energy-efficient computation for many applications than related computing platforms such as multi-core CPUs and GPUs. Modern reconfigurable system-on-chip architectures combine a multi-core CPU with reconfigurable logic, resulting in a tighter composition of hardware and software and supporting more advanced functionality, such as dynamic partial reconfiguration.Therefore, an important research aspect is the standardized integration of reconfigurable hardware accelerators into existing ROS-based software applications since the complete redevelopment of projects is inefficient and usually not feasible due to their complexity.Other research aspects besides the standardized integration are, e.g., the support for dynamic partial reconfiguration for increased hardware utilization or the reduction of memory transfer overheads into the reconfigurable logic.This thesis presents ReconROS, a novel approach for integrating reconfigurable hardware accelerators into robotics applications. The contribution of this thesis comprises the ReconROS framework, the ReconROS executor, and fpgaDDS. The ReconROS framework combines ReconOS and ROS 2, enabling robotics developers to implement ROS 2 nodes entirely in hardware.Due to its consistent programming model for hardware and software and full virtual memory access, developers can easily migrate nodes from software to hardware and vice versa.The ReconROS executor extends the concept ...