Design Technology For Heterogeneous Embedded Systems