• DocumentCode
    169701
  • Title

    Code generation from a domain-specific language for C-based HLS of hardware accelerators

  • Author

    Reiche, O. ; Schmid, M. ; Hannig, F. ; Membarth, R. ; Teich, J.

  • Author_Institution
    Dept. of Comput. Sci., Friedrich-Alexander Univ. Erlangen-Nurnberg (FAU), Erlangen, Germany
  • fYear
    2014
  • fDate
    12-17 Oct. 2014
  • Firstpage
    1
  • Lastpage
    10
  • Abstract
    As today´s computer architectures are becoming more and more heterogeneous, a plethora of options including CPUs, GPUs, DSPs, reconfigurable logic (FPGAs), and other application-specific processors come into consideration for close-to-sensor processing. Especially, in the domain of image processing on mobile devices, among numerous design challenges, a very stringent energy budget is of utmost importance, making embedded GPUs and FPGAs ideal targets for implementation. Recently, the HIPAcc framework was proposed as a means for automatic code generation of image processing algorithms for embedded GPUs, based on a Domain-Specific Language (DSL). Despite of huge advancements in High-Level Synthesis (HLS) for FPGAs, designers are still required to have detailed knowledge about coding techniques and the targeted architecture to achieve efficient solutions. As a remedy, in this work, we propose code generation techniques for C-based HLS from a common high-level DSL description targeting FPGAs. Our approach includes FPGA-specific memory architectures for handling point and local operators, numerous high-level transformations, and automatic test bench generation. We evaluate our approach by comparing the resulting hardware accelerators to existing frameworks in terms of performance and resource requirements. Moreover, we assess the achieved energy efficiency in contrast to software implementations, generated by HIPAcc from the same code base, executed on GPUs.
  • Keywords
    field programmable gate arrays; graphics processing units; high level synthesis; image processing; memory architecture; multiprocessing systems; program compilers; C-based HLS; CPU; DSL; DSP; FPGA-specific memory architectures; HIPA; automatic code generation techniques; coding techniques; computer architectures; domain-specific language; embedded GPU; hardware accelerators; high-level synthesis; image processing algorithms; mobile devices; reconfigurable logic; Computer architecture; DSL; Field programmable gate arrays; Hardware; Image processing; Kernel; Laplace equations; Code generation; FPGA; GPU; domain-specific language; hardware accelerator; high-level synthesis; image processing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Hardware/Software Codesign and System Synthesis (CODES+ISSS), 2014 International Conference on
  • Conference_Location
    New Delhi
  • Type

    conf

  • DOI
    10.1145/2656075.2656081
  • Filename
    6971833