ArtistDesign NoE - Embedded Systems Seminar

June 18-19, 2009       Brussels, Belgium organised and funded by ARTIST 


Click on the title of a course, to see the corresponding slides.

Professor Luis Almeida

University of Porto, Portugal
Course: Networks and Middleware
Computer comunication technologies have strongly evolved along the past decades and have deeply affected many domains, embedded systems included. They fostered the proliferation of distributed embedded systems, exploiting potential advantages such as increased modularity, maintainability, dependability and composability, and are now paving the way for networks of embedded systems targeting cooperative devices for unbounded connectivity. Network protocols became, thus, fundamental components in this distributed scenario to support the necessary interoperability among the computing elements. On the other hand, developing applications for such distributed platforms became more complex, requiring an effective middleware layer to provide adequate abstractions and cooperation models.
In this talk we will do a brief tour of networking and middleware technologies for embedded systems. Starting from the basics of digital communication, we will visit relevant issues in the physical and data link layers of the communication protocol stack, observe several examples of existing network protocols that are typically used in embedded systems of different kinds and discuss common middleware layers and their properties. Finally, the talk will also point to open issues and on-going efforts in this domain.

Professor Karl-Erik Arzen

Lund University, Sweden
Course: Adaptive Embedded Systems
An embedded hardware-software system is adaptive, if it can modify its behavior and/or architecture to changing requirements. Adaptivity is increasingly important as the complexity and autonomy of embedded systems increases. Adaptivity is required both off-line at design-time and on-line at run-time. Off-line adaptivity is required to handle changing system specifications and to support platform-based or product-family based development. On-line adaptivity is required to be able to dynamically respond to changing conditions and contexts and through this improve performance and resource utilization. The changes can involve different types of resource requirements, changing system objectives, and changing external conditions. Adaptivity is a cross-cutting system characteristic that affects both hardware and software. At the software-level adaptivity is mainly concerned with flexible and adaptive resource scheduling, e.g., CPU time scheduling. At the hardware-level adaptivity includes both adaptation of operation modes, e.g., supply voltage and clock frequency, and dynamic management of hardware resources, e.g., processing elements and memory. This keynote will discuss why we need adaptivity in embedded systems, what we really mean by adaptivity and give example of how adaptivity can be achieved. The relations between adaptivity, robustness, sustainability, predictability and dependability will be discussed. Connections will be made between adaptivity in embedded systems and adaptivity in the field of control.

Professor Luca Benini

University of Bologna, Italy
Course: Multi-Core Architectures
In this talk I will give an overview of recent trends in many-core platforms for embedded computing. The shift toward many-core architectures has been imposed by technology reasons (power consumption and design closure issues in nanometer technology) and not by the "coming of age" of parallel programming models, compilation, analysis and verification environments. Thus, we may be building terascale architectures that we cannot program efficiently (in terms of performance and power). Even worse, we may not be able to give any guarantees on execution timing, constraints and real-time properties of applications.
This is a challenge AND an opportunity for the software design and verification community: I will give some views on what is being done in hardware and software, what could be done, and what I hope will be done to build efficient and predictable multi-core platforms.

Professor Sebastian Hack

Saarland University, Germany
Course: Compilers and Timing Analysis
Run-time guarantees play an important role in the area of embedded systems and especially hard real-time systems. These systems are typically subject to stringent timing constraints which result from the interaction with the surrounding physical environment. Therefore, a schedulability analysis has to be performed which guarantees that all timing constraints will be met. All existing techniques for schedulability analysis require the knowledge of safe upper bounds on the execution times of each task in the system. These upper bounds they should be tight, i.e., the overestimation should be as small as possible.
In modern microprocessor architectures caches and pipelines are key features for improving performance. Unfortunately, they make the analysis of the execution behaviour of instructions very difficult since this behaviour now depends on the execution history. Therefore, the classical approaches to worst case execution time prediction are not directly applicable or lead to results exceeding the real execution time by orders of magnitude.

The problem of determining safe and precise upper bounds on execution times has been solved for tasks with uninterrupted execution executed on quite complex uniprocessor architectures. The methods and tools (developed in Europe!) have been used in the certification of the Airbus A380.

Professor Brian Nielsen

CISS, Aalborg University, Denmark
Course: Testing and Verification of Embedded Systems
Embedded Software systems have high demands on quality, correctness and reliability. At the same time it is growing dramatically in size and complexity. Besides functional correctness, quantitative aspects including real-time constraints and constraints on quality of services are of utmost importance. In today’s industrial practice, validation is primarily done using testing, and typically consumes between 30% and 50% of software development resources.
Automated model-based testing and verification are advanced promising techniques to improve current practice in terms of both quality and cost. A key point is that testing and verification are complementary techniques that need to be effectively combined to provide a coherent solution. In both cases, abstract models play an important role, either for early analysis of model-properties, or for generating and executing test cases. Moreover, tool implementers often face the same algorithmic challenges.

This lecture will explain the key points of testing and verification of embedded systems, survey the principal issues and challenges, as well as exemplify new techniques and tools.

Joseph Sifakis

VERIMAG Laboratory, France
Course: Introduction to Embedded Systems Design
The development of a satisfactory Embedded Systems Design Science provides a timely challenge and opportunity for reinvigorating Computer Science.
Embedded systems are components integrating software and hardware jointly and specifically designed to provide given functionalities, which are often critical. They are used in many applications areas including transport, consumer electronics and electrical appliances, energy distribution, manufacturing systems, etc. Embedded systems design requires techniques taking into account extra-functional requirements regarding optimal use of resources such as time, memory and energy while ensuring autonomy, reactivity and robustness.
Jointly taking into account these requirements raises a grand scientific and technical challenge: extending Computer Science with paradigms and methods from Control Theory and Electrical Engineering. Computer Science is based on discrete computation models not encompassing physical time and resources which are by their nature very different from analytic models used by other engineering disciplines. We summarize some current trends in embedded systems design and point out some of their characteristics, such as the chasm between analytical and computational models, and the gap between safety critical and best-effort engineering practices. We call for a coherent scientific foundation for embedded systems design, and we discuss a few key demands on such a foundation: the need for encompassing several manifestations of heterogeneity, and the need for design paradigms ensuring constructivity and adaptivity.
We discuss main aspects of this challenge and associated research directions for different areas such as modelling, programming, compilers, operating systems and networks.

(c) Artist Consortium, All Rights Reserved - 2006, 2007, 2008, 2009

Réalisation Axome - Création de sites Internet