Interconnect-aware scheduling and resource allocation for high-level synthesis