Optimal and Greedy Heuristic Approaches for Scheduling and Mapping of Hardware Tasks to Reconfigurable Computing Devices - Guetttatfi, Zakarya; Kaufmann, Paul; Platzner, Marco (Proceedings of the International Workshop on Applied Reconfigurable Computing (ARC))

Comparison of Feature Selection Techniques to Improve Approximate Circuit Synthesis - Chandrakar, Khushboo

Evaluation of a ReconOS-ROS Combination based on a Video Processing Application - Henke, Luca-Sebastian
Robots are becoming increasingly autonomous and more capable. Because of a limited portable energy budget by e.g. batteries, and more demanding algorithms, an efficient computation is of interest. Field Programmable Gate Arrays (FPGAs) for example can provide fast and efficient processing and the Robot Operating System (ROS) is a popular middleware used for robotic applications. The novel ReconROS combines version 2 of the Robot Operating System with ReconOS, a framework for integrating reconfigurable hardware. It provides a unified interface between software and hardware. ReconROS is evaluated in this thesis by implementing a Sobel filter as the video processing application, running on a Zynq-7000 series System on Chip. Timing measurements were taken of execution and transfer times and were compared to theoretical values. Designing the hardware implementation is done by C code using High Level Synthesis and with the interface and functionality provided by ReconROS. An important aspect is the publish/subscribe mechanism of ROS. The Operating System interface functions for publishing and subscribing are reasonably fast at below 10 ms for a 1 MB color VGA image. The main memory interface performs well at higher data sizes, crossing 100 MB/s at 20 kB and increasing to a maximum of around 150 MB/s. Furthermore, the hardware implementation introduces consistency to the execution times and performs twice as fast as the software implementation.

Adaptable Realization of Industrial Analytics Functions on Edge-Devices using Reconfigurable Architectures - Gatica, Carlos Paiz; Platzner, Marco (Machine Learning for Cyber Physical Systems (ML4CPS 2017))

Proof-carrying Approximate Circuits - Witschen, Linus Matthias; Wiersema, Tobias; Platzner, Marco (IEEE Transactions On Very Large Scale Integration Systems)
Approximate circuits trade-off computational accuracy against improvements in hardware area, delay, or energy consumption. IP core vendors who wish to create such circuits need to convince consumers of the resulting approximation quality. As a solution we propose proof-carrying approximate circuits: The vendor creates an approximate IP core together with a certificate that proves the approximation quality. The proof certificate is bundled with the approximate IP core and sent off to the consumer. The consumer can formally verify the approximation quality of the IP core at a fraction of the typical computational cost for formal verification. In this paper, we first make the case for proof-carrying approximate circuits and then demonstrate the feasibility of the approach by a set of synthesis experiments using an exemplary approximation framework.
Keywords: Approximate circuit synthesis; approximate computing; error metrics; formal verification; proof-carrying hardware

Evolution of Application-Specific Cache Mappings - Ho, Nam; Kaufmann, Paul; Platzner, Marco (International Journal of Hybrid intelligent Systems)

Search Space Characterization for AxC Synthesis - Witschen, Linus Matthias; Wiersema, Tobias; Platzner, Marco (Fifth Workshop on Approximate Computing (AxC 2020))
On the circuit level, the design paradigm Approximate Computing seeks to trade off computational accuracy against a target metric, e.g., energy consumption. This trade-off is possible for many applications due to their inherent resiliency against inaccuracies. In the past, several automated approximation frameworks have been presented, which either utilize designated approximation techniques or libraries to replace approximable circuit parts with inaccurate versions. The frameworks invoke a search algorithm to iteratively explore the search space of performance degraded circuits, and validate their quality individually. In this paper, we propose to reverse this procedure. Rather than exploring the search space, we delineate the approximate parts of the search space which are guaranteed to lead to valid approximate circuits. Our methodology is supported by formal verification and independent of approximation techniques. Eventually, the user is provided with quality bounds of the individual approximable circuit parts. Consequently, our approach guarantees that any approximate circuit which implements these parts within the determined quality constraints satisfies the global quality constraints, superseding a subsequent quality verification. In our experimental results, we present the runtimes of our approach.

ReconROS: Flexible Hardware Acceleration for ROS2 Applications - Lienen, Christian; Platzner, Marco; Rinner, Bernhard (Proceedings of the 2020 International Conference on Field-Programmable Technology (FPT))

Implementing Machine Learning Functions as PYNQ FPGA Overlays - Thiele, Simon

Extension and Evaluation of Python-based High-Level Synthesis Tool Flows - Jaganath, Vivek

An Adaption Mechanism for the Error Threshold of XCSF - Hansmeier, Tim; Kaufmann, Paul; Platzner, Marco (GECCO '20: Proceedings of the Genetic and Evolutionary Computation Conference Companion)

Dynamic Reliability Management for FPGA-Based Systems - Anwer, Jahanzeb; Meisner, Sebastian; Platzner, Marco (International Journal of Reconfigurable Computing)
Radiation tolerance in FPGAs is an important field of research particularly for reliable computation in electronics used in aerospace and satellite missions. The motivation behind this research is the degradation of reliability in FPGA hardware due to single-event effects caused by radiation particles. Redundancy is a commonly used technique to enhance the fault-tolerance capability of radiation-sensitive applications. However, redundancy comes with an overhead in terms of excessive area consumption, latency, and power dissipation. Moreover, the redundant circuit implementations vary in structure and resource usage with the redundancy insertion algorithms as well as number of used redundant stages. The radiation environment varies during the operation time span of the mission depending on the orbit and space weather conditions. Therefore, the overheads due to redundancy should also be optimized at run-time with respect to the current radiation level. In this paper, we propose a technique called Dynamic Reliability Management (DRM) that utilizes the radiation data, interprets it, selects a suitable redundancy level, and performs the run-time reconfiguration, thus varying the reliability levels of the target computation modules. DRM is composed of two parts. The design-time tool flow of DRM generates a library of various redundant implementations of the circuit with different magnitudes of performance factors. The run-time tool flow, while utilizing the radiation/error-rate data, selects a required redundancy level and reconfigures the computation module with the corresponding redundant implementation. Both parts of DRM have been verified by experimentation on various benchmarks. The most significant finding we have from this experimentation is that the performance can be scaled multiple times by using partial reconfiguration feature of DRM, e.g., 7.7 and 3.7 times better performance results obtained for our data sorter and matrix multiplier case studies compared with static reliability management techniques. Therefore, DRM allows for maintaining a suitable trade-off between computation reliability and performance overhead during run-time of an application.

Self-aware Cyber-Physical Systems - Bellman, K.; Dutt, N.; Esterle, L.; Herkersdorf, A.; Jantsch, A.; Landauer, C.; R. Lewis, P.; Platzner, Marco; TaheriNejad, N.; Tammemäe, K. (ACM Transactions on Cyber-Physical Systems)

A Hybrid Synthesis Methodology for Approximate Circuits - Awais, Muhammad; Ghasemzadeh Mohammadi, Hassan; Platzner, Marco (Proceedings of the 30th ACM Great Lakes Symposium on VLSI (GLSVLSI) 2020)
Automated synthesis of approximate circuits via functional approximations is of prominent importance to provide efficiency in energy, runtime, and chip area required to execute an application. Approximate circuits are usually obtained either through analytical approximation methods leveraging approximate transformations such as bit-width scaling or via iterative search-based optimization methods when a library of approximate components, e.g., approximate adders and multipliers, is available. For the latter, exploring the extremely large design space is challenging in terms of both computations and quality of results. While the combination of both methods can create more room for further approximations, the Design Space Exploration~(DSE) becomes a crucial issue. In this paper, we present such a hybrid synthesis methodology that applies a low-cost analytical method followed by parallel stochastic search-based optimization. We address the DSE challenge through efficient pruning of the design space and skipping unnecessary expensive testing and/or verification steps. The experimental results reveal up to 10.57x area savings in comparison with both purely analytical or search-based approaches.

Enabling XCSF to Cope with Dynamic Environments via an Adaptive Error Threshold - Hansmeier, Tim; Kaufmann, Paul; Platzner, Marco (GECCO '20: Proceedings of the Genetic and Evolutionary Computation Conference Companion)

MigHEFT: DAG-based Scheduling of Migratable Tasks on Heterogeneous Compute Nodes - Lösch, Achim; Platzner, Marco (2020 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW))

MigHEFT: DAG-based Scheduling of Migratable Tasks on Heterogeneous Compute Nodes - Lösch, Achim; Platzner, Marco (2020 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW))

Design and Implementation of a ReconOS-based TensorFlow Lite Delegate Architecture - Jentzsch, Felix P.
Modern machine learning (ML) techniques continue to move into the embedded system space because traditional centralized compute resources do not suit certain application domains, for example in mobile or real-time environments. Google’s TensorFlow Lite (TFLite) framework supports this shift from cloud to edge computing and makes ML inference accessible on resource-constrained devices. While it offers the possibility to partially delegate computation to hardware accelerators, there is no such “delegate” available to utilize the promising characteristics of reconfigurable hardware. This thesis incorporates modern platform FPGAs into TFLite by implementing a modular delegate framework, which allows accelerators within the programmable logic to take over the execution of neural network layers. To facilitate the necessary hardware/software codesign, the FPGA delegate is based on the operating system for reconfigurable computing (ReconOS), whose partial reconfiguration support enables the instantiation of model-tailored accelerator architectures. In the hardware back-end, a streaming-based prototype accelerator for the MobileNet model family showcases the working order of the platform, but falls short of the desired performance. Thus, it indicates the need for further exploration of alternative accelerator designs, which the delegate could automatically synthesize to meet a model’s demands.

CIRCA: Towards a Modular and Extensible Framework for Approximate Circuit Generation - Witschen, Linus Matthias; Wiersema, Tobias; Ghasemzadeh Mohammadi, Hassan; Awais, Muhammad; Platzner, Marco (Microelectronics Reliability)
Existing approaches and tools for the generation of approximate circuits often lack generality and are restricted to certain circuit types, approximation techniques, and quality assurance methods. Moreover, only few tools are publicly available. This hinders the development and evaluation of new techniques for approximating circuits and their comparison to previous approaches. In this paper, we ﬁrst analyze and classify related approaches and then present CIRCA, our ﬂexible framework for search-based approximate circuit generation. CIRCA is developed with a focus on modularity and extensibility. We present the architecture of CIRCA with its clear separation into stages and functional blocks, report on the current prototype, and show initial experiments.
Keywords: Approximate Computing; Framework; Pareto Front; Accuracy

Jump Search: A Fast Technique for the Synthesis of Approximate Circuits - Witschen, Linus Matthias; Ghasemzadeh Mohammadi, Hassan; Artmann, Matthias; Platzner, Marco (Fourth Workshop on Approximate Computing (AxC 2019))
State-of-the-art frameworks for generating approximate circuits usually rely on information gained through circuit synthesis and/or verification to explore the search space and to find an optimal solution. Throughout the process, a large number of circuits may be subject to processing, leading to considerable runtimes. In this work, we propose a search which takes error bounds and pre-computed impact factors into account to reduce the number of invoked synthesis and verification processes. In our experimental results, we achieved speed-ups of up to 76x while area savings remain comparable to the reference search method, simulated annealing.
Keywords: Approximate computing; parameter selection; search space exploration; verification; circuit synthesis