Computation and communication refinement for multiprocessor SoC design: A system-level perspective

Continuous advancements in semiconductor technology enable the design of complex systems-on-chips (SoCs) composed of tens or hundreds of IP cores. At the same time, the applications that need to run on such platforms have become increasingly complex and have tight power and performance requirements. Achieving a satisfactory design quality under these circumstances is only possible when both computation and communication refinement are performed efficiently, in an automated and synergistic manner. Consequently, formal and disciplined system-level design methodologies are in great demand for future multiprocessor design. This article provides a broad overview of some fundamental research issues and state-of-the-art solutions concerning both computation and communication aspects of system-level design. The methodology we advocate consists of developing abstract application and platform models, followed by application mapping onto the target platform, and then optimizing the overall system via performance analysis. In addition, a communication refinement step is critical for optimizing the communication infrastructure in this multiprocessor setup. Finally, simulation and prototyping can be used for accurate performance evaluation purposes.

[1]  William J. Dally,et al.  Route packets, not wires: on-chip inteconnection networks , 2001, DAC '01.

[2]  Mahmut T. Kandemir,et al.  Fault tolerant algorithms for network-on-chip interconnect , 2004, IEEE Computer Society Annual Symposium on VLSI.

[3]  Lothar Thiele,et al.  Rate analysis for streaming applications with on-chip buffer constraints , 2004 .

[4]  Jari Nurmi,et al.  Buffer implementation for Proteo network-on-chip , 2003, Proceedings of the 2003 International Symposium on Circuits and Systems, 2003. ISCAS '03..

[5]  Radu Marculescu,et al.  Communication architecture optimization: making the shortest path shorter in regular networks-on-chip , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[6]  E.A. Lee,et al.  Synchronous data flow , 1987, Proceedings of the IEEE.

[7]  Gilles Kahn,et al.  The Semantics of a Simple Language for Parallel Programming , 1974, IFIP Congress.

[8]  Radu Marculescu,et al.  Design space exploration and prototyping for on-chip multimedia applications , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[9]  Kang G. Shin,et al.  Execution Time Analysis of Communicating Tasks in Distributed Systems , 1996, IEEE Trans. Computers.

[10]  Cristian Constantinescu,et al.  Impact of deep submicron technology on dependability of VLSI circuits , 2002, Proceedings International Conference on Dependable Systems and Networks.

[11]  Luca Benini,et al.  Low power error resilient encoding for on-chip data buses , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[12]  Radu Marculescu,et al.  System-level power/performance analysis of portable multimedia systems communicating over wireless channels , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[13]  Ge-Ming Chiu,et al.  The Odd-Even Turn Model for Adaptive Routing , 2000, IEEE Trans. Parallel Distributed Syst..

[14]  W. Stewart,et al.  The numerical solution of stochastic automata networks , 1995 .

[15]  Jan Beran,et al.  Statistics for long-memory processes , 1994 .

[16]  Cristian Constantinescu Dependability analysis of a fault-tolerant processor , 2001, Proceedings 2001 Pacific Rim International Symposium on Dependable Computing.

[17]  Radu Marculescu,et al.  Communication and task scheduling of application-specific networks-on-chip , 2005 .

[18]  Petru Eles,et al.  Analysis and optimization of distributed real-time embedded systems , 2004, ACM Trans. Design Autom. Electr. Syst..

[19]  Wojciech Maly IC design in high-cost nanometer-technologies era , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[20]  Petru Eles,et al.  Fault and energy-aware communication mapping with guaranteed latency for applications implemented on NoC , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[21]  Giovanni De Micheli,et al.  Physical planning for on-chip multiprocessor networks and switch fabrics , 2003, Proceedings IEEE International Conference on Application-Specific Systems, Architectures, and Processors. ASAP 2003.

[22]  Luciano Lavagno,et al.  Metropolis: An Integrated Electronic System Design Environment , 2003, Computer.

[23]  Alain Greiner,et al.  Micro-network for SoC: implementation of a 32-port SPIN network , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[24]  Alberto L. Sangiovanni-Vincentelli,et al.  Coping with Latency in SOC Design , 2002, IEEE Micro.

[25]  Luca Benini,et al.  ×pipesCompiler: A Tool for Instantiating Application Specific Networks on Chip , 2004, DATE.

[26]  Robert W. Horst,et al.  The risk of data corruption in microprocessor-based systems , 1993, FTCS-23 The Twenty-Third International Symposium on Fault-Tolerant Computing.

[27]  Norman T. J. Bailey,et al.  The Mathematical Theory of Infectious Diseases , 1975 .

[28]  Alberto L. Sangiovanni-Vincentelli,et al.  Efficient synthesis of networks on chip , 2003, Proceedings 21st International Conference on Computer Design.

[29]  William J. Stewart,et al.  Introduction to the numerical solution of Markov Chains , 1994 .

[30]  Axel Jantsch,et al.  Network on Chip : An architecture for billion transistor era , 2000 .

[31]  Li Shang,et al.  PowerHerd: a distributed scheme for dynamically satisfying peak-power constraints in interconnection networks , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[32]  Rudy Lauwereins,et al.  Highly scalable network on chip for reconfigurable systems , 2003, Proceedings. 2003 International Symposium on System-on-Chip (IEEE Cat. No.03EX748).

[33]  Radu Marculescu,et al.  Energy- and performance-driven NoC communication architecture synthesis using a decomposition approach , 2005, Design, Automation and Test in Europe.

[34]  Srinivasan Murali,et al.  Bandwidth-constrained mapping of cores onto NoC architectures , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[35]  Alvise Bonivento,et al.  System level design paradigms: Platform-based design and communication synthesis , 2006, ACM Trans. Design Autom. Electr. Syst..

[36]  Petru Eles,et al.  Analysis and optimization of communication-dominated real-time embedded systems , 2004, DAC '04.

[37]  Jane Hillston,et al.  A compositional approach to performance modelling , 1996 .

[38]  Radu Marculescu,et al.  Key research problems in NoC design: a holistic perspective , 2005, 2005 Third IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS'05).

[39]  Luca Benini,et al.  Networks on Chips : A New SoC Paradigm , 2022 .

[40]  Radu Marculescu,et al.  DyAD - smart routing for networks-on-chip , 2004, Proceedings. 41st Design Automation Conference, 2004..

[41]  David Flynn,et al.  AMBA: enabling reusable on-chip designs , 1997, IEEE Micro.

[42]  Radu Marculescu,et al.  System-level power/performance analysis for embedded systems design , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[43]  Edward A. Lee,et al.  Dataflow process networks , 1995, Proc. IEEE.

[44]  Ilkka Norros,et al.  A storage model with self-similar input , 1994, Queueing Syst. Theory Appl..

[45]  Arthur L. Liestman,et al.  A survey of gossiping and broadcasting in communication networks , 1988, Networks.

[46]  Luca Benini,et al.  Analysis of power consumption on switch fabrics in network routers , 2002, DAC '02.

[47]  Sudhakar Yalamanchili,et al.  Interconnection Networks: An Engineering Approach , 2002 .

[48]  Lionel M. Ni,et al.  The turn model for adaptive routing , 1998, ISCA '98.

[49]  Narayanan Vijaykrishnan,et al.  Thermal-aware IP virtualization and placement for networks-on-chip architecture , 2004, IEEE International Conference on Computer Design: VLSI in Computers and Processors, 2004. ICCD 2004. Proceedings..

[50]  Jan A. Bergstra,et al.  Algebra of Communicating Processes with Abstraction , 1985, Theor. Comput. Sci..

[51]  Krishnan Srinivasan,et al.  Linear-programming-based techniques for synthesis of network-on-chip architectures , 2004, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[52]  Dimitri P. Bertsekas,et al.  Data Networks , 1986 .

[53]  Ker-I Ko,et al.  On Some Natural Complete Operators , 1985, Theor. Comput. Sci..

[54]  Radu Marculescu,et al.  On-Chip Stochastic Communication , 2003, DATE.

[55]  Kishor S. Trivedi Probability and Statistics with Reliability, Queuing, and Computer Science Applications , 1984 .

[56]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[57]  Ed F. Deprettere,et al.  A Methodology for Architecture Exploration of Heterogeneous Signal Processing Systems , 2001, J. VLSI Signal Process..

[58]  Jean-Michel Fourneau,et al.  A Methodology for Solving Markov Models of Parallel Systems , 1991, J. Parallel Distributed Comput..

[59]  Lawrence T. Pileggi,et al.  Throughput-driven IC communication fabric synthesis , 2002, ICCAD 2002.

[60]  Radu Marculescu,et al.  "It's a small world after all": NoC performance optimization via long-range link insertion , 2006, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[61]  Axel Jantsch,et al.  Networks on chip , 2003 .

[62]  Radu Marculescu,et al.  On-chip traffic modeling and synthesis for MPEG-2 video applications , 2004, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[63]  Radu Marculescu,et al.  System-Level Buffer Allocation for Application-Specific Networks-on-Chip Router Design , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[64]  Alberto L. Sangiovanni-Vincentelli,et al.  System design: traditional concepts and new paradigms , 1999, Proceedings 1999 IEEE International Conference on Computer Design: VLSI in Computers and Processors (Cat. No.99CB37040).

[65]  Lawrence T. Pileggi,et al.  An interconnect channel design methodology for high performance integrated circuits , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[66]  Shuvra S. Bhattacharyya,et al.  Embedded Multiprocessors: Scheduling and Synchronization , 2000 .

[67]  Vincenzo Catania,et al.  Multi-objective mapping for mesh-based NoC architectures , 2004, International Conference on Hardware/Software Codesign and System Synthesis, 2004. CODES + ISSS 2004..

[68]  Radu Marculescu,et al.  Application-specific network-on-chip architecture customization via long-range link insertion , 2005, ICCAD-2005. IEEE/ACM International Conference on Computer-Aided Design, 2005..

[69]  Aviral Shrivastava,et al.  Architecture description language (ADL)-driven software toolkit generation for architectural exploration of programmable SOCs , 2004, DAC '04.

[70]  Srinivasan Murali,et al.  SUNMAP: a tool for automatic topology selection and generation for NoCs , 2004, Proceedings. 41st Design Automation Conference, 2004..

[71]  Radu Marculescu,et al.  Energy- and performance-aware mapping for regular NoC architectures , 2005, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[72]  Radu Marculescu,et al.  Application-specific buffer space allocation for networks-on-chip router design , 2004, ICCAD 2004.

[73]  Lionel M. Ni,et al.  A survey of wormhole routing techniques in direct networks , 1993, Computer.

[74]  Norbert Götz,et al.  Multiprocessor and Distributed System Design: The Integration of Functional Specification and Performance Analysis Using Stochastic Process Algebras , 1993, Performance/SIGMETRICS Tutorials.

[75]  James Lyle Peterson,et al.  Petri net theory and the modeling of systems , 1981 .

[76]  Sander Stuijk,et al.  Minimising buffer requirements of synchronous dataflow graphs with model checking , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[77]  Brigitte Plateau,et al.  Stochastic Automata Network For Modeling Parallel Systems , 1991, IEEE Trans. Software Eng..

[78]  Alberto L. Sangiovanni-Vincentelli,et al.  Separation of concerns: overhead in modeling and efficient simulation techniques , 2004, EMSOFT '04.