A Method to Abstract RTL IP Blocks into C++ Code and Enable High-Level Synthesis