MOCSYN: multiobjective core-based single-chip system synthesis

In this paper we present a system synthesis algorithm, called MOCSYN, which partitions and schedules embedded system specifications to intellectual property cores in an integrated circuit. Given a system specification consisting of multiple periodic task graphs as well as a database of core and integrated circuit characteristics, MOCSYN synthesizes real-time heterogeneous single-chip hardware software architectures using an adaptive multiobjective genetic algorithm that is designed to escape local minima. The use of multiobjective optimization allows a single system synthesis run to produce multiple designs which trade off different architectural features. Integrated circuit price, power consumption, and area are optimized under hard real-time constraints. MOCSYN differs from previous work by considering problems unique to single-chip systems. It solves the problem of providing clock signals to cores composing a system-on-a-chip. It produces a bus structure which balances ease of layout with the reduction of bus contention. In addition, it carries out floorplan block placement within its inner loop allowing accurate estimation of global communication delays and power consumption.

[1]  R. M. Mattheyses,et al.  A Linear-Time Heuristic for Improving Network Partitions , 1982, 19th Design Automation Conference.

[2]  Peter Pirsch,et al.  A formal approach for the optimization of heterogeneous multiprocessors for complex image processing schemes , 1995, Proceedings of EURO-DAC. European Design Automation Conference.

[3]  Wayne H. Wolf,et al.  TGFF: task graphs for free , 1998, Proceedings of the Sixth International Workshop on Hardware/Software Codesign. (CODES/CASHE'98).

[4]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[5]  Joseph L. Breeden,et al.  Optimizing Stochastic and Multiple Fitness Functions , 1995, Evolutionary Programming.

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

[7]  E. Knoll,et al.  An interpolating clock synthesizer , 1996 .

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

[9]  Kamran Eshraghian,et al.  Principles of CMOS VLSI Design: A Systems Perspective , 1985 .

[10]  Jason Cong,et al.  Interconnect design for deep submicron ICs , 1997, 1997 Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[11]  N.K. Jha,et al.  CORDS: hardware-software co-synthesis of reconfigurable real-time distributed embedded systems , 1998, 1998 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (IEEE Cat. No.98CB36287).

[12]  Luciano Lavagno,et al.  Hardware-Software Co-Design of Embedded Systems , 1997 .

[13]  Wayne H. Wolf,et al.  Process Partitioning for Distributed Embedded Systems , 1996, CODES.

[14]  Wayne H. Wolf,et al.  Communication synthesis for distributed embedded systems , 1995, ICCAD.

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

[16]  Giovanni De Micheli,et al.  Computer-aided hardware-software codesign , 1994, IEEE Micro.

[17]  Alice C. Parker,et al.  Synthesis of Application-Specific Heterogeneous Multiprocessor Systems , 1992, [1992] Proceedings the 19th Annual International Symposium on Computer Architecture.

[18]  Gaetano Borriello,et al.  The Chinook hardware/software co-synthesis system , 1995 .

[19]  Niraj K. Jha,et al.  MOGAC: a multiobjective genetic algorithm for the co-synthesis of hardware-software embedded systems , 1997, 1997 Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[20]  Debanjan Saha,et al.  Hardware software partitioning using genetic algorithm , 1997, Proceedings Tenth International Conference on VLSI Design.

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

[22]  Peter J. Fleming,et al.  Multiobjective genetic algorithms made easy: selection sharing and mating restriction , 1995 .

[23]  Neil Weste,et al.  Principles of CMOS VLSI Design , 1985 .

[24]  Giovanni De Micheli,et al.  Automated composition of hardware components , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[25]  Wayne Wolf,et al.  Hardware-Software Co-Synthesis of Distributed Embedded Systems , 1996 .

[26]  Luciano Lavagno,et al.  Hardware-software codesign of embedded systems , 1994, IEEE Micro.

[27]  Niraj K. Jha,et al.  Hardware-software co-synthesis of fault-tolerant real-time distributed embedded systems , 1995, Proceedings of EURO-DAC. European Design Automation Conference.

[28]  Jianwen Zhu,et al.  Specification and Design of Embedded Systems , 1998, Informationstechnik Tech. Inform..

[29]  Jörg Henkel,et al.  An approach to the adaptation of estimated cost parameters in the COSYMA system , 1994, CODES '94.

[30]  Jordi Cortadella,et al.  Asynchronous interface specification, analysis and synthesis , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[31]  Charles U. Martel,et al.  Scheduling Periodically Occurring Tasks on Multiple Processors , 1981, Inf. Process. Lett..

[32]  Larry J. Stockmeyer,et al.  Optimal Orientations of Cells in Slicing Floorplan Designs , 1984, Inf. Control..

[33]  Xiaobo Hu,et al.  Configuration-level hardware/software partitioning for real-time embedded systems , 1994, Third International Workshop on Hardware/Software Codesign.