This project (named Chinook) seeks to develop appropriate abstractions for embedded system development, design, implementation, and validation that will enhance retargetability and shorten the design cycle. The abstractions will be provide leverage in automatically synthesizing the most labor intensive and error-prone elements of embedded software that lead to the great majority of errors and hamper design space exploration. The project is vertically integrated, that is, a range of tools and methods to support high-level specification, simulation, communication synthesis, operating system customization and optimization, and debugging and verification. Specific activities include: (1) development of a composition methodology for control-dominated systems, (2) communication and synchronization code synthesis including buffering and protocol specialization, and (3) debugging, verification, and visualization tools for embedded system design.