A High Level Synthesis (HLS) Design Flow for Scaling to Multiple IP, SoC, and Process Targets