Published November 16, 2021 | Version v1
Conference paper Open

Unified OpenCL Integration Methodology for FPGA Designs

  • 1. Tampere University
  • 2. University of the Peloponnese

Description

OpenCL is a widely adopted open standard for general purpose programming of diverse heterogeneous parallel platforms that can harness various device types such as CPUs, DSPs, GPUs, FPGAs and hardware accelerators. It is an extensive and explicit low level API serving well as a platform portability layer. However, using OpenCL for diverse heterogeneous programming in multi-vendor platforms is not practical due to device vendors each providing their own OpenCL implementations which do not interoperate efficiently, leading to inefficient execution coordination and collaborative execution between various device types from different vendors. To this end, this paper proposes a vendor-independent open source method for integration of custom FPGA components to a common OpenCL platform. The method relies on a streamlined memory-mapped hardware control interface implemented by the integrated components. The required OpenCL driver integration is then automatically provided, enabling easy inclusion of different types of FPGA accelerators to the control of a single OpenCL runtime. The ease of integration and portability is demonstrated by integrating two hardware devices in two different FPGA devices. The resource overhead of the hardware interface is shown to be negligible and the clock frequency overheads small enough to not pose efficiency challenges.

Files

Unified_OpenCL_Integration.pdf

Files (198.7 kB)

Name Size Download all
md5:6f387a6f1a93fcb4f269c097ae72f406
198.7 kB Preview Download

Additional details

Funding

FITOPTIVIS – From the cloud to the edge - smart IntegraTion and OPtimization Technologies for highly efficient Image and VIdeo processing Systems 783162
European Commission
CPSoSaware – Cross-layer cognitive optimization tools & methods for the lifecycle support of dependable CPSoS 871738
European Commission
Energy Efficient Instruction Supply Using Emerging Memories 331344
Academy of Finland