TY - JOUR AB - Verification of software and processor hardware usually proceeds separately, software analysis relying on the correctness of processors executing machine instructions. This assumption is valid as long as the software runs on standard CPUs that have been extensively validated and are in wide use. However, for processors exploiting custom instruction set extensions to meet performance and energy constraints the validation might be less extensive, challenging the correctness assumption. In this paper we present a novel formal approach for hardware/software co-verification targeting processors with custom instruction set extensions. We detail two different approaches for checking whether the hardware fulfills the requirements expected by the software analysis. The approaches are designed to explore a trade-off between generality of the verification and computational effort. Then, we describe the integration of software and hardware analyses for both techniques and describe a fully automated tool chain implementing the approaches. Finally, we demonstrate and compare the two approaches on example source code with custom instructions, using state-of-the-art software analysis and hardware verification techniques. AU - Jakobs, Marie-Christine AU - Pauck, Felix AU - Platzner, Marco AU - Wehrheim, Heike AU - Wiersema, Tobias ID - 27841 JF - IEEE Access KW - Software Analysis KW - Abstract Interpretation KW - Custom Instruction KW - Hardware Verification TI - Software/Hardware Co-Verification for Custom Instruction Set Processors ER - TY - CONF AU - Ahmed, Qazi Arbab ID - 29138 T2 - 2021 IFIP/IEEE 29th International Conference on Very Large Scale Integration (VLSI-SoC) TI - Hardware Trojans in Reconfigurable Computing ER - TY - CONF AB - The battle of developing hardware Trojans and corresponding countermeasures has taken adversaries towards ingenious ways of compromising hardware designs by circumventing even advanced testing and verification methods. Besides conventional methods of inserting Trojans into a design by a malicious entity, the design flow for field-programmable gate arrays (FPGAs) can also be surreptitiously compromised to assist the attacker to perform a successful malfunctioning or information leakage attack. The advanced stealthy malicious look-up-table (LUT) attack activates a Trojan only when generating the FPGA bitstream and can thus not be detected by register transfer and gate level testing and verification. However, also this attack was recently revealed by a bitstream-level proof-carrying hardware (PCH) approach. In this paper, we present a novel attack that leverages malicious routing of the inserted Trojan circuit to acquire a dormant state even in the generated and transmitted bitstream. The Trojan's payload is connected to primary inputs/outputs of the FPGA via a programmable interconnect point (PIP). The Trojan is detached from inputs/outputs during place-and-route and re-connected only when the FPGA is being programmed, thus activating the Trojan circuit without any need for a trigger logic. Since the Trojan is injected in a post-synthesis step and remains unconnected in the bitstream, the presented attack can currently neither be prevented by conventional testing and verification methods nor by recent bitstream-level verification techniques. AU - Ahmed, Qazi Arbab AU - Wiersema, Tobias AU - Platzner, Marco ID - 20681 T2 - 2021 Design, Automation & Test in Europe Conference & Exhibition (DATE) TI - Malicious Routing: Circumventing Bitstream-level Verification for FPGAs ER - TY - CONF AU - Clausing, Lennart ID - 30909 T2 - Proceedings of the 11th International Symposium on Highly Efficient Accelerators and Reconfigurable Technologies TI - ReconOS64: High-Performance Embedded Computing for Industrial Analytics on a Reconfigurable System-on-Chip ER - TY - CONF AU - Ghasemzadeh Mohammadi, Hassan AU - Jentzsch, Felix AU - Kuschel, Maurice AU - Arshad, Rahil AU - Rautmare, Sneha AU - Manjunatha, Suraj AU - Platzner, Marco AU - Boschmann, Alexander AU - Schollbach, Dirk ID - 30908 T2 - Machine Learning and Principles and Practice of Knowledge Discovery in Databases TI - FLight: FPGA Acceleration of Lightweight DNN Model Inference in Industrial Analytics ER - TY - CONF AU - Guetttatfi, Zakarya AU - Kaufmann, Paul AU - Platzner, Marco ID - 3583 T2 - Proceedings of the International Workshop on Applied Reconfigurable Computing (ARC) TI - Optimal and Greedy Heuristic Approaches for Scheduling and Mapping of Hardware Tasks to Reconfigurable Computing Devices ER - TY - GEN AU - Chandrakar, Khushboo ID - 21324 TI - Comparison of Feature Selection Techniques to Improve Approximate Circuit Synthesis ER - TY - GEN AB - 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. AU - Henke, Luca-Sebastian ID - 21432 TI - Evaluation of a ReconOS-ROS Combination based on a Video Processing Application ER - TY - CONF AU - Gatica, Carlos Paiz AU - Platzner, Marco ID - 21584 SN - 2522-8579 T2 - Machine Learning for Cyber Physical Systems (ML4CPS 2017) TI - Adaptable Realization of Industrial Analytics Functions on Edge-Devices using Reconfigurable Architectures ER - TY - JOUR AB - 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. AU - Witschen, Linus Matthias AU - Wiersema, Tobias AU - Platzner, Marco ID - 17358 IS - 9 JF - IEEE Transactions On Very Large Scale Integration Systems KW - Approximate circuit synthesis KW - approximate computing KW - error metrics KW - formal verification KW - proof-carrying hardware SN - 1063-8210 TI - Proof-carrying Approximate Circuits VL - 28 ER -