You are on page 1of 74

Introduction to

Embedded
Systems
Chifundo Polska Mlangeni
Embedded Systems
• In computing disciplines (computer engineering, software
engineering, computer science, information systems and
technology), the term “embedded system” is used to refer to an
electronic system that is designed to perform a dedicated
function and is often embedded within a larger system.
• Embedded systems differ from general-purpose computing
devices mainly in two aspects:
• First, an embedded system is designed simply for a specific
function, whereas a general-purpose computing device, such as
smartphone, laptop, or desktop computer, is not; they can be
used as Web servers or data warehouses, or can be used for
writing articles, reading news, playing games, or running
scientific experiments, to mention only a few applications.
• Second, an embedded system is traditionally built together with
the software intended to run on it. Such a parallel model of
developing hardware and software together is known as
hardware-software co-design.
General Computing Systems: Embedded Systems
A system which is a combination of generic hardware A system which is a combination of special purpose
and General Purpose Operating
Embedded SystemsSystem for executing
Vs General a hardware
Computing and embedded OS for executing a specific set
Systems:
variety of applications of applications

Contain a General Purpose Operating System May or may not contain an operating system
(GPOS) for functioning

Applications are alterable (programmable) by user (It is The firmware of the embedded system is pre-
possible for the end user to re-install the Operating programmed and it is non-alterable by end-user
System, and add or remove user applications)

Performance is the key deciding factor on the selection Application specific requirements (like performance,
of the system. “Faster is Better” always. power requirements, memory usage etc) are the key
deciding factors

Less/not at all tailored towards reduced operating Highly tailored to take advantage of the power saving
power requirements, options for different levels of modes supported by hardware and Operating System
power management. 4
CLASSIFICATION OF EMBBEDDED SYSTEM

CRETERIA

COMPLEXITY AND
GENERATION PERFORMANCE DETERMINISTIC
N REQUIREMENT BEHAVIOUR
CLASSIFICATION BASED ON GENERATION
• Based on the order in which embedded systems evolved.
• As per this criterion ,embedded systems can be classified as

FIRST SECOND THIRD FOURTH


GENERATION GENERATION GENERATION GENERATION
FIRST GENERATION EMBEDDED SYSTEMS
• built around 8 bit microprocessors ( 8085 and Z80)and 4 bit
microcontrollers
• Simple in hardware circuits with firmware developed in Assembly
code.
• Telephone keypads and stepper motor control units
SECOND GENERATION EMBEDDED SYSTEMS
• Built around 16 bit microprocessors and 8 or 16 bit
microcontrollers
• much more complex and powerful instruction set than the
first generation microprocessors /controllers
• Some of the second generation embedded systems
contained operating system for their operation
• Data acquisition systems and SCADA systems
THIRD GENERATION EMBEDDED SYSTEMS
• Built around 32 bit processors and 16 bit microcontrollers
• The instruction set more powerful and complex than those
used in the previous generations.
• Used in areas such robotics ,media, industrial process
control, networking etc
• Digital signal processors and application specific integrated
circuits(ASIC)
FOURTH GENERATION EMBEDDED SYSTEMS
• System on chips(SoC),reconfigurable processors and
multicore processors
❖ high performance, tight integration and miniaturization
• The SoC technique implements a total system on a chip
integrating different functionalities with a processor core on
an integrated circuit.
• Smart phones, mobile internet devices etc
CLASSIFICATION BASED ON COMPLEXICITY
AND PERFORMANCE

Small scale Medium scale Large scale


SMALL-SCALE EMBEDDED SYSTEMS
• Simple in application needs and the performance requirements is not
time critical
• Usually built around low performance and low cost 8 or 16 bit
microprocessors /microcontrollers.
• They may or may not contain an operating system for its functioning
• Electronic toy
MEDIUM SCALE EMBEDDED SYSTEMS
• Slightly complex in hardware and firmware requirements
• Usually built around medium performance ,low cost 16 or 32 bit
microprocessors/microcontroller
• Usually contain an embedded operating system for functioning
LARGE SCALE EMBEDDED SYSTEMS
• They involve highly complex hardware and firmware requirements
• Employed in mission critical applications demanding high
performance.
• Commonly built around high performance 32 or 64 bit RISC
processors/controllers or Reconfigurable system on chip (RSoC) or
multi-core processors and programmable logic devices.
• The may contain multiple processors/controllers and co-units
/hardware accelerators for offloading the processing requirements
from the main processor of the system
• .
Embedded system
When an embedded system is powered
on,
its microprocessor reads software
instructions stored in memory,
executes the instructions to process
input information from peripheral
components (through sensors,
signals, buttons, etc.),
and produces output to meet the
needs of the external embedding
system.
• An embedded system is a combination of computer hardware and
software, and sometimes mechanical components as well.
• Figure 1 gives a bird’s-eye view of a generic embedded system
architecture, where the microprocessor and the memory blocks are
the heart and the brain, respectively.
• Embedded software is commonly stored in nonvolatile memory
devices such as read-only memory (ROM), erasable programmable
ROM (EPROM), and flash memory.
• The microprocessor also needs another type of memory—random-
access memory (RAM)—for its run-time computation
Real-Time Systems
• There are systems that need to respond to a service request within a
certain amount of time: they are called real-time systems.
• To a real-time system, each incoming service request imposes a task (job)
that is typically associated with a real-time computing constraint, or simply
called its timing constraint.
• The timing constraint of a task is normally specified in terms of its deadline,
which is the time instant by which its execution (or service) is required to
be completed. Depending on how serious missing a task deadline is, a
timing constraint can be either a hard or a soft constraint:
• A timing constraint is hard if the consequence of a missed deadline is fatal. A
late response (completion of the requested task) is useless, and sometimes
totally unacceptable. A timing constraint is soft if the consequence of a
missed deadline is undesirable but tolerable.
• A late response is still useful if it is within some acceptable range (say, it
occurs occasionally with some acceptably low probability).
• Actual systems may have both hard and soft timing constraints. A system in
which all tasks have soft timing constraints is a soft real-time system. A system
is a hard real-time system if its key tasks have hard timing constraints.
Soft Real-Time Systems
• A soft real-time system offers best-effort services; its service of a
request is almost always completed within a known finite time.
• It may occasionally miss a deadline, which is usually considered
tolerable. It is worth noting that although missing a deadline will not
cause catastrophic effects, the usefulness of a result may degrade
after its deadline, thereby degrading the system’s quality of service.
• Soft timing constraints are typically expressed in probabilistic or
statistical terms, such as average performance and standard
deviation. Table 1 gives some example soft real-time systems.
Hard Real-Time System
• In a hard real-time system, missing some deadlines is completely
unacceptable, because this could result in catastrophic effects such as
safety hazards or serious financial consequences.
• A hard real-time system offers guaranteed services. Hence, the correctness
of a hard real-time system is twofold: functional correctness and timing
correctness.
• Here, the timing correctness of a system means that its service of a request
is guaranteed to be completed within a strict deadline. In most cases
timing correctness is even more important than functional correctness,
because a partially functional system may be used as is and still has its
values, whereas a fully functional system is useless if the offered services
have no guaranteed service completion time.
• Since breaking a hard timing constraint is unaffordable, it is
normally a requirement that the designers/developers of a hard
real-time system should validate rigorously that the system can
meet its hard timing constraints.
• In the literature, the proof techniques include design-time
schedulability analysis, exhaustive simulation, combinatorial
performance testing, and symbolic reasoning tools based on
temporal logics (e.g., model checking).
• While many of these techniques are beyond the scope of this
book, we will cover basic approaches to schedulability analysis
when it comes to real-time scheduling.
• Hard timing constraints are typically expressed in deterministic terms. Table 2
gives some example hard real-time systems.
• What if a system at run time anticipates that a deadline might be missed? A
hard real-time system will try its very best to avoid such a bad thing happening.
• For example, an antimissile system may have implemented two ways of locking
onto an incoming missile: one takes a longer but can calculate precise firing
coordinates, and the other takes less time but can compute only an
approximate firing range, which demands more weapons being activated to
cover the firing range. Since the first approach consumes fewer resources, it is
the default
• approach employed by the system to handle incoming missiles. However, the
system would switch to the second approach if it predicts that waiting for the
precise calculation would take too much time for the incoming missiles to be
safely destroyed.
PURPOSE OF EMBEDDED SYSTEMS

Data
Data communication Signal (data)
storage/collection
processing
/Representation

Application Specific
Monitoring Control
User Interface
DATA COLLECTION/STORAGE/REPRESENTATION
• These systems perform acquisition of data from the external world.
• Data collection is usually done for storage,analysis,manipulation and
transmission
• Data can be either analogue(continuous) or digital(discrete)
• Embedded systems with analogue data capturing techniques collect
data directly in the form of analogue signals where as embedded
systems with digital data capturing mechanism converts the analog
signal to corresponding digital signal using analog to digital converters
and then collects the binary equivalent of the analog data
• The collected data may be stored directly in the system or
may be transmitted to some other systems or it may be
processed by the system or it may be deleted instantly after
giving a meaningful representation
❖ These actions are dependent on the purpose for which
the embedded system is designed
Embedded Systems Without Built In Memory

• Embedded systems designed for pure measurement


applications without storage ,used in control and
instrumentation domain ,collects Data and give a
meaningful representation of the collected data by means of
graphical representation or quantity value and deletes the
collected data when new data arrives at the data collection
terminal
• Measuring equipment's used in the medical domain for
monitoring without storage functionality are examples of
such systems.
Embedded Systems With Built In Memory
• Store the collected data for processing and analysis.
• Incorporate a built in/plug –in storage memory for storing the
captured data
• Some of them give the user a meaningful representation of the
collected data by visual (graphical/quantative) or audible means
using display units (liquid crystal displays (LCD),Light emitting
diodes, buzzers ,alarms etc)
• Measuring instruments with storage memory and monitoring
instruments with storage memory used in medical domain fall
under this category
A Digital Camera For Image Capturing
/Storage /Display
• A digital camera is a typical example of an embedded system
with data collection/storage/representation capabilities
• Images are captured and the captured images may be stored
within the memory of the camera.
• The captured image can also be presented to the user
through a graphic LCD unit.
DATA COMMUNICATION
• Embedded data communication systems are deployed in applications
ranging from complex satellite communication systems to simple
home networking systems.
• Data collected by an embedded system may require transferring to
some other systems located remotely
❖The transmission is achieved by either a wireline medium or a
wireless medium
❖ A wireless medium offers cheaper connectivity solutions and
make the communication link free from the hassle of wire
bundles
• wireless modules (Bluetooth , ZigBee, Wi-Fi,EDGE,GPRS etc) or
wireline modules(RS-232C,USB,TCP/IP,PS2 etc)
• Some embedded systems act as dedicated transmission units
between the sending and receiving terminals, offering sophisticated
functionalities like data packetizing, encrypting and decrypting.
❖Network hubs ,routers ,switches
A WIRELESS NETWORK ROUTER FOR DATA
COMMUNICATION
DATA (SIGNAL) PROCESSING
• Embedded systems with signal processing functionalities are
employed in applications demanding signal processing like
• Speech coding
• Audio video codec
• Transmission applications
• A digital hearing aid is a typical example of an embedded system
employing data processing techniques
• They improve the hearing capacity of hearing impaired
persons.
A DIGITAL HEARING AID
MONITORING
• Determine the state of some variables using sensors.
• They cannot impose control over some variables
• An electrocardiogram (ECG) machine for monitoring the heart beat
of patient.
• The machine is intended to do the monitoring of heart beat
• It cannot impose control over the heart beat
• Some other examples are digital CROs,digital multimeters , logic
analyzers etc
AN ECG MACHINE
CONTROL
• Impose control over some variables according to the changes in
input variables
• These systems contain both sensors and actuators
• Sensors are connected to the input port for capturing the
changes in environmental variable
• Actuators are connected to the output port and are
controlled according to the changes in input variable to put
an impact on the controlling variable to bring the controlled
variable to the specified range
AN AIR CONDITIONER FOR CONTROLLING ROOM TEMPERATURE .
• Air conditioner contains a room temperature sensing
element(sensor) which may be a thermistor and a
handheld unit for setting the desired temperature
• The handheld unit may be connected to the central
embedded unit (compressor) through a wireless link
or through a wired link
❖The compressor acts as the actuator
✓ It is controlled according to the current room
temperature and the desired temperature
set by the end user
• The input variable is the current room temperature and the
controlled variable is also the room temperature
• The controlling variable is the cool air flow by the
compressor unit .
APPLICATION SPECIFIC USER INTERFACE

• Embedded systems with application specific user interfaces like


buttons, switches ,keypads, display units etc
• A good example is a mobile phone
AN EMBEDDED SYSTEM WITH APPICATION
SPECIFIC USER INTERFACE
THANK YOU

You might also like