Perhaps nothing characterizes the inherent heterogeneity in embedded sys- tems than the ability to choose between hardware and software implementations of a given system function. Indeed, most embedded systems at their core repre- sent a careful division and design of hardware and software parts of the system To do this task effectively, models and methods are necessary functionality. to capture application behavior, needs and system implementation...