Scenario-based design flow for mapping streaming applications onto on-chip many-core systems