arXiv ScienceSearch

arXiv · 1509.00025

GCC-Plugin for Automated Accelerator Generation and Integration on Hybrid FPGA-SoCs

Abstract

In recent years, architectures combining a reconfigurable fabric and a general purpose processor on a single chip became increasingly popular. Such hybrid architectures allow extending embedded software with application specific hardware accelerators to improve performance and/or energy efficiency. Aiding system designers and programmers at handling the complexity of the required process of hardware/software (HW/SW) partitioning is an important issue. Current methods are often restricted, either to bare-metal systems, to subsets of mainstream programming languages, or require special coding guidelines, e.g., via annotations. These restrictions still represent a high entry barrier for the wider community of programmers that new hybrid architectures are intended for. In this paper we revisit HW/SW partitioning and present a seamless programming flow for unrestricted, legacy C code. It consists of a retargetable GCC plugin that automatically identifies code sections for hardware acceleration and generates code accordingly. The proposed workflow was evaluated on the Xilinx Zynq platform using unmodified code from an embedded benchmark suite.

Explore related subjects

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Markus Vogt, Gerald Hempel, Jeronimo Castrillon, Christian Hochberger. 2015-09-23. GCC-Plugin for Automated Accelerator Generation and Integration on Hybrid FPGA-SoCs. https://arxiv.org/abs/1509.00025

Cite the original work for its findings. Save a collection to share your selection of sources.

KEEP EXPLORING

Related papers

Bidirectional Temporal Dynamics Modeling for EEG-based Driving Fatigue Recognition

Driving fatigue is a major contributor to traffic accidents and poses a serious threat to road safety. Electroencephalography (EEG) provides a direct measurement of neural activity, yet EEG-based fatigue recognition is hindered by strong non-stationarity and asymmetric neural dynamics. To address these challenges, we propose DeltaGateNet, a novel framework that explicitly captures Bidirectional temporal dynamics for EEG-based driving fatigue recognition. Our key idea is to introduce a Bidirectional Delta module that decomposes first-order temporal differences into positive and negative components, enabling explicit modeling of asymmetric neural activation and suppression patterns. Furthermore, we design a Gated Temporal Convolution module to capture long-term temporal dependencies for each EEG channel using depthwise temporal convolutions and residual learning, preserving channel-wise specificity while enhancing temporal representation robustness. Extensive experiments conducted under both intra-subject and inter-subject evaluation settings on the public SEED-VIG and SADT driving fatigue datasets demonstrate that DeltaGateNet consistently outperforms existing methods. On SEED-VIG, DeltaGateNet achieves an intra-subject accuracy of 81.89% and an inter-subject accuracy of 55.55%. On the balanced SADT 2022 dataset, it attains intra-subject and inter-subject accuracies of 96.81% and 83.21%, respectively, while on the unbalanced SADT 2952 dataset, it achieves 96.84% intra-subject and 84.49% inter-subject accuracy. These results indicate that explicitly modeling Bidirectional temporal dynamics yields robust and generalizable performance under varying subject and class-distribution conditions.

cs.OH

Fixing ill-formed UTF-16 strings with SIMD instructions

UTF-16 is a widely used Unicode encoding representing characters with one or two 16-bit code units. The format relies on surrogate pairs to encode characters beyond the Basic Multilingual Plane, requiring a high surrogate followed by a low surrogate. Ill-formed UTF-16 strings -- where surrogates are mismatched -- can arise from data corruption or improper encoding, posing security and reliability risks. Consequently, programming languages such as JavaScript include functions to fix ill-formed UTF-16 strings by replacing mismatched surrogates with the Unicode replacement character (U+FFFD). We propose using Single Instruction, Multiple Data (SIMD) instructions to handle multiple code units in parallel, enabling faster and more efficient execution. Our software is part of the Google JavaScript engine (V8) and thus part of several major Web browsers.

cs.OH

MRSeqStudio: MRI Sequence Design and Simulation as a Service in a Free and Open-Source Web Platform

MRI sequence prototyping increasingly relies on graphical design environments and numerical simulators to accelerate development and validation. While several platforms support interactive sequence construction, fully web-based solutions that combine integrated phantom management, high-fidelity Bloch simulation, and scalable multi-user deployment remain limited. We present MRSeqStudio, a web-based platform for interactive MR sequence design and simulation. The tool adopts a block-based representation model with real-time visualization and native JSON/Pulseq export. Simulations are performed using the GPU-enabled Bloch simulator KomaMRI, which enables accurate modeling of arbitrary pulse sequences and phantoms within an installation-free architecture. The system separates front-end interaction from back-end simulation services to support concurrent multi-user access. Sequence validity was assessed by comparing GRE and bSSFP implementations against equivalent sequences designed in mtrk and gammaSTAR. The resulting images showed minimal absolute differences and high mean structural similarity indices (SSIM). Stress testing under burst-request conditions demonstrated stable performance with up to 100 concurrent users on a high-performance desktop deployment. A comparative workflow analysis with mtrk and gammaSTAR further examined differences in representation models, parameter propagation strategies, and integration levels across platforms, highlighting the relative strengths and limitations of each tool. Results indicate that MRSeqStudio provides a reliable and accessible environment for MR sequence prototyping, combining web-native deployment with Bloch-level simulation fidelity and integrated phantom visualization.

cs.OH