• DocumentCode
    3602048
  • Title

    Synthesis and Optimization of Pipelines for HW Implementations of Dataflow Programs

  • Author

    Prihozhy, Anatoly ; Bezati, Endri ; Al-Hadi Ab Rahman, Ab ; Mattavelli, Marco

  • Author_Institution
    Ecole Polytech. Fed. de Lausanne, Lausanne, Switzerland
  • Volume
    34
  • Issue
    10
  • fYear
    2015
  • Firstpage
    1613
  • Lastpage
    1626
  • Abstract
    This paper introduces a new methodology for pipeline synthesis with applications to data flow high-level system design. The pipeline synthesis is applied to dataflow programs whose operators are translated into graphs and dependencies relations that are then processed for the pipeline architecture optimization. For each pipeline-stage time, a minimal number of pipeline stages are first determined and then an optimal assignment of operators to stages is generated with the objective of minimizing the total pipeline register size. The obtained “optimal” pipeline schedule is automatically transformed back into a dataflow program that can be synthesized to efficient hardware implementations. Two new pipeline scheduling: “least cost search branch and bound” and a heuristic technique have been developed. The first algorithm yields global optimum solutions for middle size designs, whereas the second one generates close-to-optimal solutions for large designs. Experimental results on FPGA designs show that the total pipeline register size gain in a range up to 4.68× can be achieved. The new algorithms overcome the known downward and upward direction dataflow graph traversal algorithms concerning the amount of pipeline register size by up to 100% on average.
  • Keywords
    data flow computing; field programmable gate arrays; high level synthesis; pipeline processing; processor scheduling; tree searching; FPGA designs; data flow high-level system design; dataflow program HW implementations; downward direction dataflow graph traversal algorithms; heuristic technique; least cost search branch and bound scheduling; pipeline architecture optimization; pipeline scheduling; pipeline-stage time; pipelines synthesis; total pipeline register size; upward direction dataflow graph traversal algorithms; Algorithm design and analysis; Delays; Optimization; Pipeline processing; Pipelines; Registers; Schedules; Branch and bound algorithm; Data flow; branch and bound algorithm; data flow; hardware design; heuristic algorithm; high level synthesis; high-level synthesis; optimization; pipeline;
  • fLanguage
    English
  • Journal_Title
    Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0278-0070
  • Type

    jour

  • DOI
    10.1109/TCAD.2015.2427278
  • Filename
    7097015