“…Given a dataflow graph (DFG) and architectural constraints, the HLS aims to generate the task schedule with processor assignment. Typically, the HLS performs algorithmic transformation, such as retiming, scaling, and unfolding, on the DFG to meet the architectural constraints, and allocates resources accordingly (Madisetti and Curtis, 1994;Dung and Yang, 2004;Ito et al, 1998;Parhi, 1995;Chao and Sha, 1997). Both algorithmic transformation and resource allocation require complex procedures.…”