Describir: Design Technology for Heterogeneous Embedded Systems