Abstract

Several classes of modern applications demand very high performance from systems with minimal resources. These applications must also be flexible to operate in a rapidly changing environment. Achieving high performance from limited resources demands application-specific architectures, while flexibility requires architectural adaptation capabilities. Reconfigurable computing devices promise to meet both needs. While these devices are currently available, the issue of how to design these systems is unresolved. This paper describes an environment for design capture, analysis and synthesis of dynamically adaptive computing applications. The representation methodology is captured in a Domain-Specific, Model-Integrated Computing framework. Formal analysis tools are integrated into the design flow to analyze the design space to produce a constrained set of solutions. HW/SW Co-simulations verify the function of the system prior to implementation. Finally, a set of hardware and software subsystems are synthesized to implement the multi-modal, dynamically adaptive application. The application executes under a runtime environment, which supports common execution semantics across software and hardware. An application example is presented.