High-level synthesis approaches are currently very popular. They use specifications on rather high abstraction levels like C or SystemC to describe the required system functionality and automatically generate a hardware implementation for this specification. Shifting this process to the runtime of the system leads to so called online synthesis. The advantage of this approach is that only heavily used parts for the current run of the software need to be synthesized and also profiling information of the current run can be used to optimize the implementation, which enables an adaptive system behavior. Additionally, synthesis will only use the amount of currently available resources. Obviously, in this case the synthesis algorithms must run sufficiently fast such that the hardware implementation is created quickly enough. In this contribution we discuss the feasibility and the efficiency of different high-level optimizations which are usually performed by sophisticated compilers and synthesis systems.
['Lukas Johannes Jung', 'Christian Hochberger']
Feasibility of high level compiler optimizations in online synthesis