• DocumentCode
    2606873
  • Title

    Specifying Compiler Strategies for FPGA-based Systems

  • Author

    Cardoso, João M P ; Teixeira, João ; Alves, José C. ; Nobre, Ricardo ; Diniz, Pedro C. ; Coutinho, José G F ; Luk, Wayne

  • Author_Institution
    Dept. de Eng. Inf., Univ. do Porto, Porto, Portugal
  • fYear
    2012
  • fDate
    April 29 2012-May 1 2012
  • Firstpage
    192
  • Lastpage
    199
  • Abstract
    The development of applications for high-performance Field Programmable Gate Array (FPGA) based embedded systems is a long and error-prone process. Typically, developers need to be deeply involved in all the stages of the translation and optimization of an application described in a high-level programming language to a lower-level design description to ensure the solution meets the required functionality and performance. This paper describes the use of a novel aspect-oriented hardware/software design approach for FPGA-based embedded platforms. The design-flow uses LARA, a domain-specific aspect-oriented programming language designed to capture high-level specifications of compilation and mapping strategies, including sequences of data/computation transformations and optimizations. With LARA, developers are able to guide a design-flow to partition and map an application between hardware and software components. We illustrate the use of LARA on two complex real-life applications using high-level compilation and synthesis strategies for achieving complete hardware/software implementations with speedups of 2.5× and 6.8× over software-only implementations. By allowing developers to maintain a single application source code, this approach promotes developer productivity as well as code and performance portability.
  • Keywords
    aspect-oriented programming; electronic engineering computing; field programmable gate arrays; hardware-software codesign; program compilers; FPGA-based system; LARA; aspect-oriented hardware-software design; compiler strategy; domain-specific aspect-oriented programming language; embedded system; field programmable gate array; high-level compilation; high-level programming language; high-level specification; performance portability; source code; FPGA; aspect-oriented programming; compilation; hardware acceleration; hardware synthesis; strategies;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Field-Programmable Custom Computing Machines (FCCM), 2012 IEEE 20th Annual International Symposium on
  • Conference_Location
    Toronto, ON
  • Print_ISBN
    978-1-4673-1605-7
  • Type

    conf

  • DOI
    10.1109/FCCM.2012.41
  • Filename
    6239814