Constraints-driven design space exploration for distributed embedded systems

This paper presents a new method for design space exploration for distributed embedded systems. The method is based on constraint logic programming (CLP) and make it possible to model distributed embedded systems and design requirements using finite domain constraints. Design space exploration tools can then use this model to find different solutions satisfying constraints. An advantage of this method is its flexibility to defined design constraints and ability to mix both manual design decisions and automatic optimization methods. The solution of the set of constraints provides a final system implementation which, by definition, satisfies all imposed design constraints. Both algorithms guaranteeing optimal solutions and heuristic methods can be used in the optimization phase.

[1]  Giovanni De Micheli,et al.  A co-synthesis approach to embedded system design automation , 1996, Des. Autom. Embed. Syst..

[2]  Alice C. Parker,et al.  SOS: Synthesis of application-specific heterogeneous multiprocessor systems , 2001, J. Parallel Distributed Comput..

[3]  Petru Eles,et al.  System Level Hardware/Software Partitioning Based on Simulated Annealing and Tabu Search , 1997, Des. Autom. Embed. Syst..

[4]  Daniel Gajski,et al.  A scheduling and pipelining algorithm for hardware/software systems , 1997, Proceedings. Tenth International Symposium on System Synthesis (Cat. No.97TB100114).

[5]  Alice C. Parker,et al.  Synthesis of application-specific multiprocessor systems including memory components , 1994, J. VLSI Signal Process..

[6]  Nikil D. Dutt,et al.  EXPRESSION: a language for architecture exploration through compiler/simulator retargetability , 1999, Design, Automation and Test in Europe Conference and Exhibition, 1999. Proceedings (Cat. No. PR00078).

[7]  Niraj K. Jha,et al.  COSYN: hardware-software co-synthesis of embedded systems , 1997, DAC.

[8]  Michael J. Maher,et al.  Constraint Logic Programming: A Survey , 1994, J. Log. Program..

[9]  Gaetano Borriello,et al.  An approach to symbolic timing verification , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[10]  Peter Marwedel,et al.  Retargetable Self-Test Program Generation Using Constraint Logic Programming , 1995, 32nd Design Automation Conference.

[11]  Armin Bender,et al.  Design of an optimal loosely coupled heterogeneous multiprocessor system , 1996, Proceedings ED&TC European Design and Test Conference.

[12]  Krzysztof Kuchcinski Synthesis of distributed embedded systems , 1999, Proceedings 25th EUROMICRO Conference. Informatics: Theory and Practice for the New Millennium.

[13]  Krzysztof Kuchcinski Embedded system synthesis by timing constraints solving , 1997, Proceedings. Tenth International Symposium on System Synthesis (Cat. No.97TB100114).

[14]  Wayne Wolf,et al.  Communication synthesis for distributed embedded systems , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[15]  Krzysztof Kuchcinski,et al.  Low-energy directed architecture selection and task scheduling for system-level design , 1999, Proceedings 25th EUROMICRO Conference. Informatics: Theory and Practice for the New Millennium.

[16]  Frank Vahid,et al.  Specification and Design of Embedded Hardware-Software Systems , 1995, IEEE Des. Test Comput..

[17]  Günter Grünsteidl,et al.  TTP - A Protocol for Fault-Tolerant Real-Time Systems , 1994, Computer.

[18]  Eduard Cerny,et al.  Interface timing verification with delay correlation using constraint logic programming , 1997, Proceedings European Design and Test Conference. ED & TC 97.

[19]  Nikil D. Dutt,et al.  V-SAT: a visual specification and analysis tool for system-on-chip exploration , 2001, Proceedings 25th EUROMICRO Conference. Informatics: Theory and Practice for the New Millennium.

[20]  Jörg Henkel,et al.  Hardware-software cosynthesis for microcontrollers , 1993, IEEE Design & Test of Computers.

[21]  Petru Eles,et al.  Scheduling of conditional process graphs for the synthesis of embedded systems , 1998, DATE.

[22]  Krzysztof R. Apt,et al.  Logic Programming , 1990, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[23]  Kai Hwang,et al.  Advanced computer architecture - parallelism, scalability, programmability , 1992 .

[24]  Wayne Wolf,et al.  Hardware-software co-design of embedded systems , 1994, Proc. IEEE.

[25]  Krzysztof Kuchcinski,et al.  Design space exploration in system level synthesis under memory constraints , 1999, Proceedings 25th EUROMICRO Conference. Informatics: Theory and Practice for the New Millennium.

[26]  Peter J. Stuckey,et al.  Programming with Constraints: An Introduction , 1998 .