Nicolescu/Model-Based Design for Embedded Systems 67842_C000 Finals Page xx 2009-10-13 xx Contributors Donald M.Chiarulli Department of Computer Science University of Pittsburgh Pittsburgh, Pennsylvania MassimilianoD’Angelo PARADES GEIE Rome, Italy Markus Damm Institute of Computer Technology Vienna University of Technology Vienna, Austria ThaoDang Verimag Laboratory Centre National de la Recherche Scientifique Grenoble, France AbhijitDavare Intel Corporation Santa Clara, California Alexandre David Department of Computer Science Center for Embedded Software Systems Aalborg University Aalborg, Denmark Douglas Densmore Department of Electrical Engineering and Computer Science University of California at Berkeley Berkeley, California Samuel J.Dickerson Department of Electrical and Computer Engineering University of Pittsburgh Pittsburgh, Pennsylvania Rolf Ernst Institute of Computer and Network Engineering Technische Universität Braunschweig Braunschweig, Germany Carles Ferrer Instituto de Microelectrònica de Barcelona Centro Nacional de Microelectrónica Universitat Autonòma de Barcelona Barcelona, Spain and Department de Microelectrònica i Sistemes Electrònics Universitat Autonòma de Barcelona Barcelona, Spain VincentGagne STMicroelectronics, Inc. Ottawa, Ontario, Canada Luiza Gheorghe Department of Computer and Software Engineering Ecole polytechnique de Montreal Montreal, Quebec, Canada Christoph Grimm Institute of Computer Technology Vienna University of Technology Vienna, Austria Soonhoi Ha School of Computer Science and Engineering Seoul National University Seoul, Republic of Korea Jan Haase Institute of Computer Technology Vienna University of Technology Vienna, Austria Nicolescu/Model-Based Design for Embedded Systems 67842_C000 Finals Page xxi 2009-10-13 Contributors xxi Arne Hamann Institute of Computer and Network Engineering Technische Universität Braunschweig Braunschweig, Germany MichaelR.Hansen Department of Informatics and Mathematical Modelling Technical University of Denmark Lyngby, Denmark RafikHenia Institute of Computer and Network Engineering Technische Universität Braunschweig Braunschweig, Germany Jacob Illum Department of Computer Science Center for Embedded Software Systems Aalborg University Aalborg, Denmark Ethan Jackson Microsoft Research Redmond, Washington Jan W. M. Jacobs OCE Technologies Venlo, the Netherlands Ahmed Jerraya Atomic Energy Commission Laboratory of the Electronics and Information Technology MINATEC Grenoble, France AndréB.J.Kokkeler Department of Electrical Engineering, Mathematics and Computer Science University of Twente Enschede, the Netherlands Matthias Krause Forschungszentrum Informatik Karlsruhe, Germany Timothy P.Kurzweg Department of Electrical and Computer Engineering Drexel University Philadelphia, Pennsylvania Mich elLangevin STMicroelectronics, Inc. Ottawa, Ontario, Canada Kim G. Larsen Department of Computer Science Center for Embedded Software Systems Aalborg University Aalborg, Denmark BrunoLavigueur STMicroelectronics, Inc. Ottawa, Ontario, Canada EdwardA.Lee University of California at Berkeley Berkeley, California Steven P.Levitan Department of Electrical and Computer Engineering University of Pittsburgh Pittsburgh, Pennsylvania DavidLo STMicroelectronics, Inc. Ottawa, Ontario, Canada Nicolescu/Model-Based Design for Embedded Systems 67842_C000 Finals Page xxii 2009-10-13 xxii Contributors Bibiana Lorente-Alvarez Department de Microelectrònica Universitat Autonòma de Barcelona Barcelona, Spain Jan Madsen Department of Informatics and Mathematical Modelling Technical University of Denmark Lyngby, Denmark Jose A. Martinez Cadence Design Systems, Inc. San Jose, California Michel Metzger STMicroelectronics, Inc. Ottawa, Ontario, Canada TrevorMeyerowitz Sun Microsystems Menlo Park, California Stephen Neuendorffer Xilinx Research Labs San Jose, California Gabriela Nicolescu Department of Computer and Software Engineering Ecole Polytechnique de Montreal Montreal, Quebec, Canada Ian O’Connor Lyon Institute of Nanotechnology Ecole Centrale de Lyon University of Lyon Ecully, France Roberto Passerone Dipartimento di Ingegneia e Scienza dell’ Informazione University of Trento Trento, Italy and PARADES S.c.a.r.l. Rome, Italy Pierre G. Pa ulin STMicroelectronics, Inc. Ottawa, Ontario, Canada SimonPerathoner Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology Zurich Zurich, Switzerland Chuck Pilkington STMicroelectronics, Inc. Ottawa, Ontario, Canada Alessandro Pinto United Technology Research Center Berkeley, California Katalin Popovici TIMA Laboratory Grenoble, France and The MathWorks, Inc. Natick, Massachusetts Joseph Porter Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee Razvan Racu Institute of Computer and Network Engineering Technische Universität Braunschweig Braunschweig, Germany GerardK.Rauwerda Recore Systems Enschede, the Netherlands Nicolescu/Model-Based Design for Embedded Systems 67842_C000 Finals Page xxiii 2009-10-13 Contributors xxiii DavidK.Reed Keynote Systems San Mateo, California WolfgangRosenstiel Forschungszentrum Informatik Karlsruhe, Germany Jonas Rox Institute of Computer and Network Engineering Technische Universität Braunschweig Braunschweig, Germany Alberto Sangiovanni-Vincentelli Department of Electrical Engineering and Computer Science University of California at Berkeley Berkeley, California and Advanced Laboratory on Embedded Systems Roma, Italy Simon Schliecker Institute of Computer and Network Engineering Technische Universität Braunschweig Braunschweig, Germany Jürgen Schnerr Forschungszentrum Informatik Karlsruhe, Germany Alena Simalatsar Dipartimento di Ingegneria e Scienza dell’ Informazione University of Trento Trento, Italy Arne Skou Department of Computer Science Center for Embedded Software Systems Aalborg University Aalborg, Denmark Gerard J. M.Smit Department of Electrical Engineering, Mathematics & Computer Science University of Twente Enschede, the Netherlands Janos Sztipanovits Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee Ryan Thibodeaux South West Research Institute San Antonio, Texas Lothar Thiele Computer Engineering and Networks Laboratory Swiss Federal Institute of Technology Zurich Zurich, Switzerland Stavros Tripakis Verimag Laboratory Centre National de la Recherche Scientifique Grenoble, France Alexander Viehl Forschungszentrum Informatik Karlsruhe, Germany Nicolescu/Model-Based Design for Embedded Systems 67842_C000 Finals Page xxiv 2009-10-13 xxiv Contributors Yosinori Watanabe Cadence Design Systems, Inc. San Jose, California GuangYang National Instruments Corporation Austin, Texas HaiyangZheng University of California at Berkeley Berkeley, California Qi Zhu Intel Corporation Santa Clara, California Nicolescu/Model-Based Design for Embedded Systems 67842_S001 Finals Page 1 2009-10-1 Part I Real-Time and Performance Analysis in Heterogeneous Embedded Systems Nicolescu/Model-Based Design for Embedded Systems 67842_S001 Finals Page 2 2009-10-1 Nicolescu/Model-Based Design for Embedded Systems 67842_C001 Finals Page 3 2009-10-1 1 Performance Prediction of Distributed Platforms Lothar Thiele and Simon Perathoner CONTENTS 1.1 System-LevelPerformanceAnalysis 3 1.1.1 Distributed Embedded Platforms 4 1.1.2 Role of Performance Analysis in the Design Process 4 1.1.3 Approaches to Performance Analysis 5 1.2 ApplicationScenario 7 1.3 RepresentationintheTimeDomain 9 1.3.1 Arrival and Service Functions 9 1.3.2 Simple and Greedy Components 10 1.3.3 Composition 12 1.4 ModularPerformanceAnalysiswithReal-TimeCalculus 12 1.4.1 Variability Characterization 13 1.4.2 Component Model 14 1.4.3 Component Examples 15 1.4.4 System Performance Model 16 1.4.5 Performance Analysis 17 1.4.6 Compact Representation of VCCs 19 1.5 RTCToolbox 22 1.6 Extensions 23 1.7 ConcludingRemarks 24 Acknowledgments 24 References 25 1.1 System-Level Performance Analysis One of the major challenges in the design process of distributed embedded systems is to accurately predict performance characteristics of the final sys- tem implementation in early design stages. This analysis is generally referred to as the system-level performance analysis. In this section, we introduce the relevant properties of distributed embedded systems, we describe the role of the system-level performance analysis in the design process of such plat- forms, and we review different analysis approaches. 3 Nicolescu/Model-Based Design for Embedded Systems 67842_C001 Finals Page 4 2009-10-1 4 Model-Based Design for Embedded Systems 1.1.1 Distributed Embedded Platforms Embedded systems are special-purpose computer systems that are inte- grated into products such as cars, telecommunication devices, consumer electronics, and medical equipment. In contrast to general-purpose computer systems, embedded systems are designed to perform few dedicated func- tions that are typically known at the time of design. In general, the knowl- edge about the specific application domain and the behavior of the system is exploited to develop customized and optimized system designs. Embedded systems must be efficient in terms of power consumption, size, and cost. In addition, they usually have to be fully predictable and highly dependable, as a malfunction or a breakdown of the device they may control is in general not acceptable. The embedding into large products and the constraints imposed by the environment often require distributed implementations of embedded sys- tems. In addition, the components of a distributed platform are typically het- erogeneous, as they perform different functionalities and are adapted to the particular local environment. Also the interconnection networks are often not homogeneous, but may be composed of several interconnected subnet- works, each one with its own topology and communication protocol. The individual processing nodes are typically not synchronized. They operate in parallel and communicate via message passing. They make autonomous decisions concerning resource sharing and scheduling of tasks. Therefore, it is particularly difficult to maintain a global-state information of the system. Many embedded systems are reactive systems that are in a continuous interaction with their environment through sensors and actuators. Thus, they often have to execute at a pace determined by their environment, which means that they have to meet real-time constraints. For these kinds of sys- tems, the predictability in terms of execution time is as important as the result of the processing itself: a correct result arriving later (or even earlier) than expected is wrong. Based on the characteristics described above, it becomes apparent that heterogeneous and distributed embedded real-time systems are inherently difficult to design and to analyze, particularly, as not only the availability and the correctness of the processed results, but also the timeliness of the computations are of major concern. 1.1.2 Role of Performance Analysis in the Design Process Reliable predictions of performance characteristics of a system such as end- to-end delays of events, memory demands, and resource usages are required to support important design decisions. In particular, the designer of a com- plex embedded system typically has to cope with a large design space that is given by the numerous alternatives for partitioning, allocation, and binding in the system design. Thus, he or she often needs to evaluate the performance of many design options in order to optimize the trade-offs between several Nicolescu/Model-Based Design for Embedded Systems 67842_C001 Finals Page 5 2009-10-1 Performance Prediction of Distributed Platforms 5 Application Architecture Allocation, binding, scheduling Performance analysis Design space exploration FIGURE 1.1 Performance analysis in the design space exploration cycle. design objectives. In such a design space exploration, the performance anal- ysis plays a crucial role, as can be seen in Figure 1.1. Methods and tools for expedient and reliable performance analyses of system specifications at a high abstraction level are not only needed to drive the design space exploration but also for verification purposes. In particular, they permit to guarantee the functionality of a system in terms of real-time constraints before much time and resources are invested for its actual imple- mentation. 1.1.3 Approaches to Performance Analysis The need for accurate performance predictions in early design stages has driven research for many years. Most of the approaches for performance analysis proposed so far can be broadly divided into two classes: simulation- based methods and analytic techniques. There are also stochastic methods for performance analysis; however, we will not discuss them further in this context. Simulation-based methods for performance estimation are widely used in industry. There are several commercial tools that support cycle-accurate cosimulation of complete HW/SW systems. Besides commercial tool suites, there also exist free simulation frameworks that can be applied for perfor- mance estimation, such as SystemC [9]. The main advantage of simulation-based performance estimation approaches is their large and customizable modeling scope, which permits to take into account various complex interactions and correlations in a system. . California Nicolescu /Model-Based Design for Embedded Systems 67842_S001 Finals Page 1 2009-10-1 Part I Real-Time and Performance Analysis in Heterogeneous Embedded Systems Nicolescu /Model-Based Design for Embedded. Viehl Forschungszentrum Informatik Karlsruhe, Germany Nicolescu /Model-Based Design for Embedded Systems 67842_C000 Finals Page xxiv 2009-10-13 xxiv Contributors Yosinori Watanabe Cadence Design. Netherlands Nicolescu /Model-Based Design for Embedded Systems 67842_C000 Finals Page xxiii 2009-10-13 Contributors xxiii DavidK.Reed Keynote Systems San Mateo, California WolfgangRosenstiel Forschungszentrum Informatik Karlsruhe,