Restructuring Software Code for High-Level Synthesis using a Graph-based Approach Targeting FPGAs - Afonso Soares Canas Ferreira (2018)