A new approach called Percolation Based Synthesis for the scheduling phase of High Level Synthesis (HLS) is pre-sented. We discuss some new techniques (which are imple-mented in our tools) for compaction of flow graphs beyond basic blocks limits, which can produce order of magnitude speed ups versus serial execution. Our algorithm applies to programs with conditional jumps, loops and multicycle pipelined opemtions. In order to schedule under resource constraints we start by first finding the optimal schedule (without constraints) and then add heuristics to map the optimal schedule onto the given system. We argue that starting from an optimal schedule is one of the most im-portant factors in scheduling because it offers the user flex-ibility to tune the heuristics and gives him a good bound for the resource constrained schedule. This scheduling al-gorithm is integrated with synthesis tool which uses VHDL as input description and produces a structural netlist of generic register-transfer components and a unit based con-trol table as output. We show that our algorithm obtains better results than previously published algorithms.
To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.