A Simulink-based Approach to System Level Design and Architecture Selection