ABSTRACT

Application domains have had a considerable impact on the evolution of embedded systems in terms of required methodologies and supporting tools, and resulting technologies. Multimedia and network applications, themost frequently reported implementation case studies at scientific conferences on embedded systems, have had a profound influence on the evolution of embedded systems with the trend now toward multiprocessor systems-on-chip (MPSoCs), which combine the advantages of parallel processing with the high integration levels of systems-on-chip (SoCs). Many SoCs today incorporate tens of interconnected processors; as projected in the  edition of the International Technology Roadmap for Semiconductors, the number of processor cores on a chip will reach over  by . The design of MPSoCs invariably involves integration of heterogeneous hardware and software IP components, an activity which still lacks a clear theoretical underpinning, and is a focus of many academic and industry projects. Embedded systems have also been used in automotive electronics, industrial automated systems,

building automation and control (BAC), train automation, avionics, and other fields. For instance, trends have emerged for the SoCs to be used in the area of industrial automation to implement complex field-area intelligent devices that integrate the intelligent sensor/actuator functionality by providing on-chip signal conversion, data and signal processing, and communication functions. Similar trends can also be seen in the automotive electronic systems. On the factory floor, microcontrollers are nowadays embedded in field devices such as sensors and actuators. Modern vehicles employ as many as hundreds of microcontrollers. These areas, however, do not receive, for various reasons, as much attention at scientific meetings as the SoC design as it meets demands for computing power posed by digital signal processing (DSP), and network and multimedia processors, for instance. Most of the mentioned application areas require real-time mode of operation. So do some mul-

timedia devices and gadgets, for clear audio and smooth video. What, then, is the major difference between multimedia and automotive embedded applications, for instance? Braking and steering systems in a vehicle, if implemented as Brake-by-Wire and Steer-by-Wire systems, or a control loop of a high-pressure valve in offshore exploration, are examples of safety-critical systems that require a high level of dependability.These systems must observe hard real-time constraints imposed by the system dynamics, that is, the end-to-end response times must be bounded for safety-critical systems. A violation of this requirement may lead to considerable degradation in the performance of the control system, and other possibly catastrophic consequences. On the other hand, missing audio or video data may result in the user’s dissatisfaction with the performance of the system. Furthermore, in most embedded applications, the nodes tend to be on some sort of a network.

There is a clear trend nowadays toward networking embedded nodes. This introduces an additional constraint on the design of this kind of embedded systems: systems comprising a collection of embedded nodes communicating over a network and requiring, in most cases, a high level of dependability. This extra constraint has to do with ensuring that the distributed application tasks execute in a deterministic way (need for application tasks schedulability analysis involving distributed nodes and the communication network), in addition to other requirements such as system availability, reliability, and safety. In general, the design of this kind of networked embedded systems (NES) is a challenge in itself due to the distributed nature of processing elements, sharing common communicationmedium,