Professional Documents
Culture Documents
1-1
The course will enable you to:
Understand and design embedded systems and real-time systems
For embedded systems it will enable you to :
1-3
What is Embedded System?
An Electronic/Electro mechanical system which is designed to perform a specific
function and is a combination of both hardware and firmware (Software)
E.g. Electronic Toys, Mobile Handsets, Washing Machines, Air Conditioners,
Automotive Control Units, Set Top Box, DVD Player etc…
Embedded Systems are:
Computer based systems that do not appear to be computers – Complexity is hidden from
the user
Complexity is embedded inside the device- the user doesn’t have to deal with the
complexity
Much more common that laptops or desktops
1-4
They interact with users via simple interfaces
Digital camera, TV, Cellphone
Embedded systems tend to be application specific
Perform one task or set of related tasks
Some devices blur the line(e.g. cellphones)
Design is focused on one application— unlike general purpose systems(e.g.
laptops)
High design efficiency is possible: Special purpose Vs. General purpose(e.g.
Video games)
What is Embedded System?
Hardware and software often designed together:
General purpose systems use hardware and software developed by different
companies
Takes data from the outside world and output data to the outside world
1-6
Embedded Systems Definition
Precisely defining embedded system is difficult. The following definitions holds true :
An embedded system is a special-purpose computer system designed to perform one or a
few dedicated functions, sometimes with real-time computing constraints
Specialized computer system hardware that is used in larger systems or machines to
control devices such as automobiles, home appliances, and office equipment .
Any electronic system that uses a CPU chip, but that is not a general-purpose,
workstation, desktop or laptop computer. Such systems generally use microprocessors, or
they may use custom-designed chips or both.
1-7
Embedded Systems Definition
An embedded system is some combination of computer hardware and software, either fixed
in capability or programmable, that is specifically designed for a particular kind of
application device.
An embedded system is a combination of computer circuitry and software that is built into a
product for purposes such as control, monitoring and communication without human
intervention.
IEEE defines Embedded Systems as: “the devices used to control, monitor or assist the
operation of equipment, machinery or plant’’. “Embedded” reflects the fact that they are an
integral part of the system.
1-8
Classification of Embedded Systems
Based on Generation Based on deterministic behavior
Based on Complexity & Performance Requirements Based on Triggering
Embedded Systems - Classification based on Generation
First Generation: The early embedded systems built around 8-bit microprocessors like 8085 and Z80
Second Generation: Embedded Systems built around 16-bit microprocessors and 8 or 16-bit microcontrollers, following the
Third Generation: Embedded Systems built around high performance 16/32 bit Microprocessors/controllers, Application
Specific Instruction set processors like Digital Signal Processors (DSPs), and Application Specific Integrated Circuits
Small Scale: The embedded systems built around low performance and low cost 8 or 16 bit microprocessors/
microcontrollers. It is suitable for simple applications and where performance is not time critical. It may or
may not contain OS.
Medium Scale: Embedded Systems built around medium performance, low cost 16 or 32 bit
microprocessors / microcontrollers or DSPs. These are slightly complex in hardware and
firmware. It may contain GPOS/RTOS.
Large Scale/Complex: Embedded Systems built around high performance 32 or 64 bit RISC
processors/controllers, RSoC or multi-core processors and PLD.
It requires complex hardware and software. These system may contain multiple
processors/controllers and co-units/hardware accelerators for offloading the processing
requirements from the main processor. It contains RTOS for scheduling, prioritization and
management.
3.Embedded Systems - Classification Based on deterministic behavior: It is applicable for Real Time systems. The
application/task execution behavior for an embedded system can be either deterministic or non-deterministic
1. Soft Real time Systems: Missing a deadline may not be critical and can be tolerated to a certain degree
2. Hard Real time systems: Missing a program/task execution time deadline can have catastrophic consequences
4.Embedded Systems - Classification Based on Triggering: These are classified into two types
1. Event Triggered : Activities within the system (e.g., task run-times) are dynamic and depend upon occurrence of different
events .
2. Time triggered: Activities within the system follow a statically computed schedule (i.e., they are allocated time
Components of embedded system
a) Hardware :The hardware of embedded systems is based around microprocessors
and microcontrollers. Microprocessors are very similar to microcontrollers and, typically,
refer to a CPU (central processing unit) that is integrated with other basic computing
components such as memory chips and digital signal processors (DSPs). Microcontrollers
have those components built into one chip.
In terms of hardware, a basic embedded system would consist of the following elements:
Sensors convert physical sense data into an electrical signal.
Analog-to-digital (A-D) converters change an analog electrical signal into a digital one.
Processors process digital signals and store them in memory.
Digital-to-analog (D-A) converters change the digital data from the processor into analog data.
Actuators compare actual output to memory-stored output and choose the correct one.
Component of embedded system cont.…
b). Real times operating system: These are not always included in
embedded systems, especially smaller-scale systems. RTOSes define how the
system works by supervising the software and setting rules during program
execution.
systems usually run very simple software that requires little memory .
Block diagram of embedded system
1-15
Embedded Systems Characteristics cont.…
The important characteristics of an embedded system are
2. Maintainability: Maintainability is the probability that a failing system can be repaired within a certain
time-frame.
3. Availability: Availability is the probability that the system is available. Both the reliability and the
maintainability must be high in order to achieve a high availability.
4. Safety: This term describes the property that a failing system will not cause any harm.
5. Security: This term describes the property that confidential data remains confidential
1. Energy: Many embedded systems are mobile systems obtaining their energy through
2. Code-size: the code-size should be as small as possible for the intended application.
3. Weight: All portable systems must be of low weight. Low weight is frequently an
competitiveness on the market is an extremely crucial issue, and efficient use of hardware
5. Run-time efficiency: We should be able to meet time constraints using the least amount of
hardware resources and energy. In order to reduce the energy consumption, clock frequencies
1-19
Embedded Systems Characteristics cont.…
These systems are dedicated towards a certain application.
For example, processors running control software in a car or a train will always run that
software, and there will be no attempt to run a computer game or spreadsheet program on
the same processor.
There are mainly two reasons for this:
Running additional programs is only feasible if resources such as memory are unused.
No unused resources should be present in an efficient system.
1-20
Embedded Systems Characteristics cont.…
wheels, pedals etc. Because of this, the user hardly recognizes that information processing is
involved.
Many embedded systems must meet real-time constraints. Not completing computations
within a given time-frame can result in a serious loss of the quality provided by the system.
A time-constraint is called hard if not meeting that constraint could result in a catastrophe.
Many embedded systems are hybrid systems in the sense that they include analog and
digital parts.
Typically, embedded systems are reactive systems. A reactive system is one that is in
continual interaction with its environment and executes at a pace determined by that
environment.
1-22
Embedded Systems Characteristics cont.…
Embedded Systems application
Even though often nearly invisible, embedded systems are ubiquitous(being everywhere at the
same time).
Embedded systems are present in many industries, including industrial automation, defense,
For example, NASA’s Mars Path Finder, Lockheed Martin’s missile guidance system, and the
Every day, people throughout the world use embedded systems without even knowing it.
Remarkably adaptable and versatile, embedded systems can be found at home, at work,
1-24
Indeed, it is difficult to find a segment of daily life that does not involve embedded systems in
Major Application Areas of Embedded Systems
Automotive electronics: Modern cars can be sold only if they contain a significant amount of electronics.
These include air bag control systems, engine control systems, anti-braking systems (ABS), air-
conditioning, GPS systems, safety features, and many more.
Aircraft electronics: A significant amount of the total value of airplanes is due to the information processing
equipment, including flight control systems, anti-collision systems, pilot information systems, and others.
Dependability is of utmost importance.
Consumer Electronics: Camcorders, Cameras etc.
Trains: Again, safety features contribute significantly to the total value of trains, and dependability is
extremely important..
Medical systems: There is a huge potential for improving the medical service by taking advantage of
information processing taking place within medical equipment.
Military applications: Information processing has been used in military equipment for many years. In fact,
1-25
Authentication systems: Embedded systems can be used for authentication purposes.
Fabrication equipment: Fabrication equipment is a very traditional area in which
embedded systems have been employed for decades. Safety is very important for such
systems, the energy consumption is less a problem
Telecom: Cellular Telephones, Telephone switches, Handset Multimedia Applications
etc
Computer Networking Systems: Network Routers, Switches, Hubs, Firewalls etc.
Health Care: Different Kinds of Scanners, EEG, ECG Machines etc
Banking & Retail: Automatic Teller Machines (ATM) and Currency counters, Point of
Sales POS)
Card Readers: Barcode, Smart Card Readers, Hand held Devices etc
Embedded Systems Examples
Smart buildings: Information processing can be
used to increase the comfort level in buildings, can
reduce the energy consumption within buildings,
and can improve safety and security.
Designers can decide the number of memory Fixed number for memory or I/O makes a
or I/O ports needed. micro-controller ideal for a limited but specific task.
Programming microcontrollers
• Write code on a host machine– regular desktop or laptop
• Programming the microcontroller– transferring the program from host to microcontroller
• Programming hardware can be used to place program in microcontroller memory
1-29
Components of Embedded Systems
Sensors: Receives information from the environment
Provide simple information
• Thermistor: reports temperature
• Photoresistor: reports light intensity
Complex sensors: more complicated data
• CMOS camera: Captures images
• Ethernet controller: enables network communication
Actuators: Cause events to occur in the environment
Simple actuators
• Light emitting diodes(LEDs)– Small lights
• LCD display– simple display
Complex actuators
• Servo motor: moves something
• Ethernet controller: enables network communication
1-30
Categories of Embedded Systems
Embedded systems are classified based on performance and functional
requirements, as well as the performance of microcontrollers.
These classifications can be further divided into categories and subcategories.
When classifying embedded systems based on performance and functional
requirements, embedded systems are divided into four categories:
1. Real-time embedded systems
2. Standalone embedded systems
3. Network, or networked, embedded systems
4. Mobile embedded systems
1-31
Categories of Embedded Systems
Real-time embedded systems
Real-time embedded systems must provide results or outputs promptly. Priority
is assigned to output generation speed, as real-time embedded systems are
often used in mission-critical sectors, such as defense and aerospace, that need
important data,
Examples of real-time embedded systems include:
• Aircraft controls
• Land-vehicle and flight computers that process and transmit sensor-acquired
data
1-32
Real-time embedded systems
Real-time embedded systems are further divided into soft real-time embedded systems and
hard real-time embedded systems to account for the importance of output generation speed.
Soft real-time embedded systems have lenient output timeframes or deadlines. If outputs are not provided in
a specified timeframe, performance decline may ensue, but the consequences of this decline are relatively
insignificant, do not constitute a system or application failure, and are unlikely to result in a harmful
outcome. The system's outputs are also still considered valuable, despite their tardiness.
Hard real-time embedded systems are the antithesis of soft real-time embedded systems. These systems must
consistently meet their assigned output deadlines, as not doing so is considered a system or application
failure, which, in many cases, could have catastrophic outcomes because of the hard real-time embedded
system's typical deployment in mission-critical programs and applications.
Categories of Embedded Systems
Standalone embedded systems
Standalone embedded systems don't require a host computer to function. They
can produce outputs independently.
1-34
Categories of Embedded Systems
Networked embedded systems
Network, or networked, embedded systems rely on wired or wireless networks and
communication with web servers for output generation.
All mobile embedded systems are standalone embedded systems, but not all standalone embedded systems
are mobile embedded 1-35
Categories of Embedded Systems
When classifying embedded systems based on the performance of microcontrollers,
embedded systems are divided into three categories:
• Small-scale embedded systems
• Medium-scale embedded systems
• Sophisticated embedded systems
1-36
What is a Real-Time Embedded System?
Real-time embedded systems combine the functionality of a real-time operating system with a microcontroller (hardware) and
There are three types of RTOS that differ in function based on the time constraints associated with their application.
1. Hard RTOS: A hard RTOS is implemented when it is crucial that no deadlines are missed and all tasks are completed within
the prescribed time frame. In a hard RTOS, delays in the system are strictly time-bound to ensure that deadlines are met at a
2. Firm RTOS: In a firm RTOS, errors are occasionally permissible but there is an understanding that missed deadlines result in
3. Soft RTOS: In a soft RTOS, user experience is optimized when tasks are completed on-time but performance is not totally
degraded when deadlines are missed. Consider a video game console that runs a game engine: it must schedule tasks and
complete them on time for the game to run smoothly, but a little bit of lag or an occasional hiccup in performance does not