Parallelization of Recursive Function in RubyBased HighLevel Synthesis This paper proposes a method for highlevel synthesis focusing on recursive expressions with parallelization. For the purpose, we have implemented a synthesizing tool on Mulvery which is a highlevel synthesis environment based on Ruby language. Combining static and dynamic analysis allows a recursive function in order to generate a control data flow graph (CDFG). CDFG is converted into an RTL module to be synthesized into an appropriately pipelined circuit. We have compared performance of some algorithms with our proposed HLS system with parallelization against performance of synthesized call stackbased hardware from a recursive function similar to software, performance in executing Ruby programs by software as well as performance with an IP core. As a result, highlevel synthesized and parallelized FFT performs 7.76x faster than the call stack based hardware and 408.88x faster than the software execution. Against an IP core, 1.28x faster performance has been gained.

Lina: TimingConstrained HighLevel Synthesis Performance Estimator for Fast DSE The adoption of FieldProgrammable Gate Array (FPGA) for general use in the HighPerformance Computing scenario has been limited by its complex development flow required to get optimised designs coupled with a timeconsuming compilation. HighLevel Synthesis (HLS) tools are adopted to improve programmability, however the developer must perform several iterations of optimisation schemes in order to achieve reasonable performance results, which is tedious and not trivial. Several works employ Design Space Exploration (DSE) through different optimisation possibilities, coupled with fast performance estimators to avoid the unacceptable compilation times. This paper presents Lina, an expansion of the LinAnalyzer fast peformance estimator for CC HLS including timingconstrained scheduling and an extended analysis for nested loops. Results over the PolyBench benchmark show that the average relative error dropped from 8.85% to 3.02% when loop unrolling and pipelining directives were considered. As a result Lina becomes a better estimator for nonperfect loop nests and for different timing constraints, which can be adopted as an additional design space exploration knob.