A System-Level Methodology for HW/SW Co-Design of Heterogeneous Parallel Dedicated Systems