18
Embedded System: Definition An embedded system is some combination of computer hardware and software, with either fixed or programmable capabilities, that is specifically designed for a particular kind of application device. Industrial machines, automobiles, airplanes, trains, medical equipment, video cameras, phones, PDAs, home appliances, vending machines, and toys are among the many possible hosts of an embedded system. Embedded Systems were initially used for large, safety- critical and business-critical applications such as rocket & satellite control, energy production control, telephone switches, flight control; They now include a very large proportion of the advanced products designed in the world, spanning transport (avionics, space, automotive, trains), electrical and electronic appliances (cameras, toys, televisions, home appliances / domotics, audio systems, and cellular phones), process control (energy production and distribution, factory automation and optimization), telecommunications (satellites, mobile phones and telecom networks), energy (production, distribution, optimized use), security (e-commerce, smart cards), and health (hospital equipment, mobile monitoring), etc. Over 95% of all electronic chips produced today are for Embedded Systems. The extensive and increasing use of embedded systems and their integration in everyday products marks a significant evolution in information science and technology. We expect that within a short timeframe embedded systems will be a part of nearly all equipment designed or manufactured in Europe, the USA, and Asia. There is now a strategic shift in emphasis for embedded systems designers: from simply achieving feasibility, to achieving optimality. Optimal design of embedded systems means targeting a given market segment at the lowest cost and delivery time possible. Optimality implies seamless

Embedded System

Embed Size (px)

Citation preview

Page 1: Embedded System

Embedded System: DefinitionAn embedded system is some combination of computer hardware and software, with either fixed or programmable capabilities, that is specifically designed for a particular kind of application device.Industrial machines, automobiles, airplanes, trains, medical equipment, video cameras, phones, PDAs, home appliances, vending machines, and toys are among the many possible hosts of an embedded system.

Embedded Systems were initially used for large, safety-critical and business-critical applications such as rocket & satellite control, energy production control, telephone switches, flight control; They now include a very large proportion of the advanced products designed in the world, spanning transport (avionics, space, automotive, trains), electrical and electronic appliances (cameras, toys, televisions, home appliances / domotics, audio systems, and cellular phones), process control (energy production and distribution, factory automation and optimization), telecommunications (satellites, mobile phones and telecom networks), energy (production, distribution, optimized use), security (e-commerce, smart cards), and health (hospital equipment, mobile monitoring), etc.

Over 95% of all electronic chips produced today are for Embedded Systems.

The extensive and increasing use of embedded systems and their integration in everyday products marks a significant evolution in information science and technology. We expect that within a short timeframe embedded systems will be a part of nearly all equipment designed or manufactured in Europe, the USA, and Asia.

There is now a strategic shift in emphasis for embedded systems designers: from simply achieving feasibility, to achieving optimality. Optimal design of embedded systems means targeting a given market segment at the lowest cost and delivery time possible. Optimality implies seamless integration with the physical and electronic environment while respecting real-world constraints such as hard deadlines, reliability, availability, robustness, power consumption, and cost. In our view, optimality can only be achieved through the emergence of embedded systems as a discipline in its own right.

Embedded systems are of strategic importance in modern economies. They are used in mass-market products and services, where value is created by supplying either functionality or quality. Europe currently has a strong position in sectors where embedded technologies play a central role. It has a lead in civil avionics where fly-bywire technology provides an overwhelming competitive advantage in the cost of operating aircraft. Europe is also well positioned in the space sector, specifically for launch vehicles and satellites. In the automotive industry, European manufacturers and their suppliers enjoy a leading technological advantage for engine control, and emerging technologies such as brake-by-wire and drive-by-wire. Railway signalling in Europe relies on embedded systems, and allows faster, safer, and heavier traffic. Embedded applications will be extensively used to make energy distribution more flexible, especially in view of the coming market liberalization. Embedded technologies are strategic for the European telecommunications sector. Finally, Europe is also well

Page 2: Embedded System

positioned for e-services (e-banking, e-health, e-training), based on the leading edge in smart-card related technologies.

Embedded Systems are generally constrained by limited resources: Processor speed Power consumption

Memory

Real-time constraints Network bandwidth

Human supervision

Cost

Embedded Systems: a few products Anti-lock brakes Auto-focus cameras Automatic teller

machines Automatic toll

systems Automatic

transmission Automotive systems Avionic systems Battery chargers Camcorders Cell phones Cell-phone base

stations Cordless phones Cruise control Curbside check-in

systems Deep-space probes Digital cameras Disk drives Dvd players Electronic card

readers Electronic

instruments Electronic toys/games Distribution of

Energy Factory

control/automation

Fax machines

Fingerprint identifiers GPS receivers Home security

systems HVAC (heating,

ventilation, air conditioning) systems

Hybrid vehicles Inertial guidance

systems Life-support systems Medical instruments Microwave ovens Missiles Mobile phones Modems Motor controllers Mp3 players MPEG decoders Network cards Network

switches/routers On-board navigation Pagers Personal Digital

Assistants (PDAs) Photocopiers Point-of-sale systems

Portable video games

Printers Satellites Scanners Smart

ovens/dishwashers Speech recognizers Speed radars Stereo systems Teleconferencing

systems Televisions Temperature

controllers Trains:

o Automatic Train Protection (ATP)

o Automatic Train Control (ATC)

o Beaconso Passenger

Information System

o Public Address System

Theft tracking systems

TV set-top boxes UAVs VCR’s, Video game consoles Video phones

Washers and dryers

Page 3: Embedded System

A Brief History of Informatics and Embedded Systems

Informatics is a young discipline. Its theoretical foundations were developed just before World War II.

Its evolution is strongly linked to its applications and the development of electronics, which is why its perimeter and scope have steadily expanded in the last 60 years. Although it was initially a science for Scientific Computing, Information Technology has been propelled forward by the development of arms systems and the early space programs.

In the 1970's, computers were widely used in commercial and administrative applications. Microprocessors also became available, bringing together on a single chip all the functionalities of a processor. This is the start of a race to miniaturize electronic components - allowing the capacity of electronic chips to double every two years (Moore's Law). This exponential growth in computing power is expected to continue at least until 2020.

In the 1980s, the availability of computer networks brings together Information Technology and Telecommunications. The computer mouse, Windows and graphical interfaces also appear.

In the 1990s, internet and and the world wide web become available, allowing widespread access to digital technologies. The concept of "Information Technologies" appears.

Finally, towards the beginning of the 2000s, a second parallel revolution occurs for Embedded Systems. It is less visible, but has deeper impacts. In the end, the Embedded Systems revolution will join the world wide web revolution, as will be explained below.

It is important to correctly assess the digital revolution, and to anticipate its changes on technology, the economy, and society, to prepare for the future.

 What are Embedded Systems?

An Embedded System is an electronic component that is embedded within a device, such as an airplane, a camera, a home appliance, a cell phone, an electric counter, medical equipement, etc.

Over 95% of all electronic chips produced today are for embedded systems. Their use in everyday products is a major evolution for Information and Communication Technologies.

The miniaturisation of ICT hardware now makes it possible to make wireless, implantable medical devices and monitors that can transmit vital statistics and alerts to external devices.

Page 4: Embedded System

 Economic Challenges

Embedded technologies are of strategic importance for modern economies. They are vital for systems and service developers, because they can impact their competitivity and generate value. Embedded software plays an increasingly significant role with respect to hardware: software functionalities allow differentiation between products that are based on the same hardware.

For example, embedded technologies allow an automotobile to increase fuel economy and reduce emissions, by adjusting to the state of the motor. It is also possible to improve the comfort and security of passengers through airbags that are more dependable and efficient, and also through assisted braking. In high-end cars, there are over 80 distinct processors for handling these various emerging functionalities - that allow manufacturers to increase improve security, performance, attractiveness, and in the end, their market share.

Europe now has strong positions in rail transport, avionics, automotive, space, and consumer electronics, smart cards, telecommunications equipment, and intelligent distribution of energy. Continued competitivity in these sectors increasingly depends on the capacity for innovation using embedded technologies. Thus, it is essential that Europe play a leadership position in Embedded Technologies.

Page 5: Embedded System
Page 6: Embedded System

Application Software Development

OverviewEmbedded software is significantly more complex than non-embedded software, because it needs to interact with the physical world while performing the functionalities it was designed for. The great majority of all embedded applications face some or all of these constraints:

Real-Time constraintsIt needs to respond in a timeframe that is compatible with the real-world events that concern it. This may include keeping up with:

o the rotations of the motor for engine controlo while controling the radio frequency modulation for a mobile phone or

GPSo calculating trajectory and regulating thrust for a rocketo calculating contrast and color saturation for an image on a television

(before the next frame)

Page 7: Embedded System

Safety constraintsMany embedded applications are safety-critical, which means that a software error would pose serious problems, depending on the application. This includes navigational/flight control for avionics, trajectory control for an automobile, production control at a power plant, etc.

Power constraintsAny embedded system that is not connected to a permanent power source needs to manage the energy that it uses. This includes shutting off memory that is not in use, programming technniques that use less power, incorporating knowledge about the real world to predict when power will become available (eg: for a satelite which knows when sunlight will be available), etc.

Cost constraintsThe overall costs related to both development and production play a significant role in the design choices when developing an embedded system in a competitive market.

Overall complexity constraintsThe size and complexity of embedded applications is now becoming difficult to manage. While the adoption of model-based techniques has allowed developers to work at higher levels of abstraction (and keep better control over complexity), this remains an important issue.

Other resources constraintsOther resources, such as total memory, network bandwidth, expected performance, time to market, etc.

The amount and complexity of embedded software is growing every day. This embedded software is critical to the product’s operation and increasingly the main determinant of its differentiation. To help address the growing importance of embedded software and the associated challenges to develop it, developers are turning to Model Driven Development (MDD).

-- See also (internal links) --

Feature Design Software Architecture Definition Software Coding Software Module Definition Software Requirements Specification Software Testing and Integration Software Validation Task Design

Middleware

Page 8: Embedded System

OverviewIn a distributed, possibly heterogeneous environment, Middleware serves to hide both these aspects by providing uniform, standard, high-level interfaces to the application developers and integrators, so that applications can be easily composed, reused, ported, and made to interoperate. Middleware services provide common services to perform various general purpose functions.Embedded Operating System

 

Overview

Page 9: Embedded System

Operating systems for embedded applications are generally (but not always) real-time. In some cases, they may allow real-time tasks to co-exist with non-real-time tasks.

Embedded operating systems generally provide services allowing the embedded device to meet a number of non-functional requirements, that are specific to that type of application.

These non-functional requirements almost exclusively concern resource consumption. These generally imply finding appropriate trade-offs between:

Power consumption Any embedded system that is not connected to a permanent power source needs to conserve power to extend its autonomy. This includes nearly all mobile or battery-operated devices such as mobile phones, PDAs, satellites, alarm systems, etc.

CPU consumption Meeting real-time constraints implies (but is not limited to) efficient software execution.

Memory use The efficient use of memory is tightly linked to power and CPU consumption. In many optimized devices (such as mobile phones), memory is turned off when it is not in active use.

Network bandwidth In some distributed applications, such as automotive systems, network bandwidth needs to be optimized.

Hardware Node

Page 10: Embedded System

OverviewThe Hardware Nodes of an embedded system may be physically distant, and each may be considered as an embedded system, and interacting with the physical world.

Each Hardware Node:

can be considered as a separate Embedded System; may be implemented on a single chip, or across several chips; may be composed of one or more Processors, DSPs, FPGAs, ASICs, peripherals,

connected by a Bus or Network; may have software that is shared and coordinated across several Hardware Nodes

via a Middleware software layer.

A typical example of a Hardware Node in the automotive sector is the Electronic Control Unit (ECU).Buses and Networks for Embedded Systems

Page 11: Embedded System

OverviewEmbedded systems are increasingly distributed. The most active sector is currently for automotive, where Electronic Control Units (ECU's) are the nodes of a sophisticated interacting system.

Wide ranges of buses and networks exist, ranging from on-chip buses, to the internet.

Subtopics covered in this section include:

Page 12: Embedded System

Design Tools View

Product Requirements Specification

Page 13: Embedded System

OverviewIn requirements engineering for embedded systems the fundamental functional and non-functional requirements for a system with an embedded software system are discussed, captured, analysed, validated, and documented.

A good system architecture depends on the availability and understanding of the requirements. The system architect captures and uses the requirements and within the framework of the product creation process.

Functional RequirementsThis is the full set of services that the system is expected to provide to actors in its environment. This is the "useful" part of the system.

Generally, the high-level functional requirements are defined through the Use Cases written by the design team.

Software Non-functional RequirementsNon-functional Requirements for software include:

Real-time constraints Synchronous vs Non-synchronous Execution Software performance Safety/Reliability: Low-cost reliability with minimal redundancy. Resource constraints: power, cpu, bandwidth, memory, etc. Level of autonomy (no human interaction)

Page 14: Embedded System

Architectural RequirementsThe Architectural requirements or constraints on the system may include:

Software- and I/O-driven hardware synthesis vs to hardware-driven software compilation/synthesis.

Distribute system tradeoffs among analog, power, mechanical, network, and digital hardware plus software.

Physical RequirementsThe physical requirements or constraints on the system may include:

Power consumption Safety/Reliability: Low-cost reliability with minimal redundancy. Physical size and weight (eg: packaging and integration contraints for digital,

analog, and power circuits) Geometries may be non-rectangular, non-planar Power consumption (in various system modes) Physical robustness: (eg: accurate thermal modelling; de-rating components

differently for each design, depending on the operating environment). Overall weight

Lifecycle RequirementsThe Lifecycle requirements or constraints on the system may include:

Component supply chain management: product line, cross-design cost models for components vs simple unit costs.

Certification (eg: proper partitioning and synthesis may minimize recertification costs).

Maintenance requirements:o Upgrades: Ensuring complete interface, timing, and functionality

compatibility when upgrading designs.o Long-term component availability: Cost-effectively update old designs to

incorporate new components.

Industrial / Business RequirementsThe business requirements or constraints on the system may include:

Product robustness vs cost. Design vs. production costs: Intelligently trade off design time versus production

and maintenance cost. Cycle time: Rapid redesign to accommodate changing form factors, control

algorithms, and functionality requirements. Reduce the number of types of components within product families. Designs may be optimized to minimize inventory for spare parts Investing in diagnosis and self-test at system level may reduce overall costs.

Page 15: Embedded System