Embedded computer systems are ubiquitous, integrated into many devices we interact with on a daily basis. Driven by ever increasing application demands and technological advances that allow us to put complete multi-processor systems on a chip (MPSoCs), system complexities are growing exponentially. Together with tight constraints and market pressures, this makes the process of designing embedded systems a tremendous challenge and traditional design methods infeasible.
In this talk, I will present an approach for automation of the design process at the system level. The key to any automated design flow are well-defined abstraction levels, models and transformation steps in between. We have developed such concepts and techniques for modeling both system computation and communication at various levels of abstraction and across hardware and software boundaries. Models support validation through simulation and analysis with generally high accuracy and little overhead. In a complete flow, all models down to the final system hardware and software can be automatically generated from an abstract input specification. Tools based on this work have been integrated under a common GUI in the System-On-Chip Environment (SCE), and we have applied SCE to a wide variety of industrial-size design examples. Results show the feasibility and benefits of the approach, demonstrating that significant productivity gains can be achieved.