• DocumentCode
    3738276
  • Title

    Using type transformations to generate program variants for FPGA design space exploration

  • Author

    Syed Waqar Nabi;Wim Vanderbauwhede

  • Author_Institution
    School of Computing Science, University of Glasgow, Glasgow G12 8QQ
  • fYear
    2015
  • Firstpage
    1
  • Lastpage
    6
  • Abstract
    We present preliminary results with the TyTra design flow. Our aim is to create a parallelising compiler for high-performance scientific code on heterogeneous platforms, with a focus on Field-Programmable Gate Arrays (FPGAs). Using the functional language Idris, we show how this programming paradigm facilitates generation of different correct-by-construction program variants through type transformations. We have developed a custom Intermediate Representation (IR) language, the TyTra-IR, which is similar to the LLVM IR, with extensions to express parallelism, allowing us to designs variants associated with each program variant. The key innovation of the TyTra-IR is the ability to construct and cost design variants for FPGAs. Our prototype compiler generates Verilog code for FPGA synthesis from a given IR description. Using a real-world Successive Over-Relaxation (SOR) kernel, we illustrate generation of program variants in Idris, their representation in TyTra-IR, and evaluation of variants using our cost-model. We compare the estimates from the cost-model with results from synthesis and simulation of equivalent HDL.
  • Keywords
    "Field programmable gate arrays","Random access memory","Hardware design languages","Kernel","Parallel processing","Programming","Computational modeling"
  • Publisher
    ieee
  • Conference_Titel
    ReConFigurable Computing and FPGAs (ReConFig), 2015 International Conference on
  • Type

    conf

  • DOI
    10.1109/ReConFig.2015.7393365
  • Filename
    7393365