Es CH - 1

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 39

Chapter One

Introduction to Embedded systems


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:

 Unique in character and behavior


 With specialized hardware and software
Embedded Systems Vs General Computing Systems:
General Purpose Computing System Embedded System
A system which is a combination of generic hardware A system which is a combination of special purpose
and General Purpose Operating System for executing hardware and embedded OS for executing a specific
a variety of applications set of applications
Contain a General Purpose Operating System May or may not contain an operating system for
(GPOS) functioning
Applications are alterable (programmable) by user (It The firmware of the embedded system is pre-
is 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 Application specific requirements (like performance,
selection of the system. Always „Faster is Better‟ 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.
Response requirements are not time critical For certain category of embedded systems like
mission critical systems, the response time
requirement is highly critical
Need not be deterministic in execution behavior Execution behavior is deterministic for certain type
of embedded systems like „Hard Real Time‟ systems
History of Embedded Systems:
 First Recognized Modern Embedded System: Apollo Guidance Computer (AGC)
developed by Charles Stark Draper at the MIT Instrumentation Laboratory.
 It has two modules
1.Command module(CM)
2.Lunar Excursion module(LEM)
 RAM size 256 , 1K ,2K words
 ROM size 4K,10K,36K words
 Clock frequency is 1.024MHz
 5000 ,3-input RTL NOR gates are used
 User interface is DSKY(display/Keyboard)
First Mass Produced Embedded System: Autonetics D-17 Guidance computer for
Minuteman-I missile.
Classification of Embedded Systems:
 Based on Generation
 Based on Complexity & Performance Requirements
 Based on deterministic behavior
 Based on Triggering
Embedded Systems - Classification based on Generation
1. First Generation: The early embedded systems built around
8-bit microprocessors like 8085 and Z80 and 4-bit microcontrollers
EX. stepper motor control units, Digital Telephone Keypads etc.
2. Second Generation: Embedded Systems built around 16-bit
microprocessors and 8 or 16-bit microcontrollers, following the first
generation embedded systems
EX.SCADA, Data Acquisition Systems etc.
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 (ASICs).The instruction set is complex and powerful.

EX. Robotics, industrial process control, networking etc.

Fourth Generation: Embedded Systems built around System on Chips


(SoC’s), Reconfigurable processors and multicore processors. It brings
high performance, tight integration and miniaturization into the embedded
device market

EX. Smart phone devices, MIDs etc.


2. Embedded Systems - Classification based on Complexity & Performance


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

These are classified in to two types

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 (financial, human loss of life, etc.)

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 slots during which they
can take place) and thus by nature are predictable.
Major Application Areas of Embedded Systems:
 Consumer Electronics: Camcorders, Cameras etc.
 Household Appliances: Television, DVD players, washing
machine, Fridge, Microwave Oven etc.
 Home Automation and Security Systems: Air conditioners,
sprinklers, Intruder detection alarms, Closed Circuit Television
Cameras, Fire alarms etc.
 Automotive Industry: Anti-lock breaking systems (ABS), Engine
Control, Ignition Systems, Automatic Navigation Systems etc.
 Telecom: Cellular Telephones, Telephone switches, Handset
Multimedia Applications.
 Computer Peripherals: Printers, Scanners, Fax machines etc.
 Computer Networking Systems: Network Routers, Switches,
Hubs, Firewalls etc.
 Health Care: Different Kinds of Scanners, EEG, ECG
Machines etc.
 Measurement & Instrumentation: Digital multi meters,
Digital CROs, Logic Analyzers PLC systems etc.
 Banking & Retail: Automatic Teller Machines (ATM) and
Currency counters, Point of Sales (POS)
 Card Readers: Barcode, Smart Card Readers, Hand held
Devices etc.
Purpose of Embedded Systems: Each Embedded Systems is
designed to serve the purpose of any one or a combination of
the following tasks.
 Data Collection/Storage/Representation
 Data Communication
 Data (Signal) Processing
 Monitoring
 Control
 Application Specific User Interface
1. Data Collection/Storage/Representation:-
 Performs acquisition of data from the external world.
 The collected data can be either analog or digital Data
collection is usually done for storage, analysis, manipulation
and transmission.
 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.
2. Data Communication:- Embedded Data communication systems are
deployed in applications ranging from complex satellite communication
systems to simple home networking systems.
 Embedded Data communication systems are dedicated for data
communication .
 The data communication can happen through a wired interface (like
Ethernet, RS-232C/USB/IEEE1394 etc.) or wireless interface (like Wi-Fi,
GSM,/GPRS, Bluetooth, ZigBee etc.) Network hubs, Routers, switches,
Modems etc. are typical examples for dedicated data transmission
embedded systems.
3. Data (Signal) Processing:- Embedded systems with Signal
processing functionalities are employed in applications demanding
signal processing like Speech coding, synthesis, audio video codec,
transmission applications etc.
 Computational intensive systems Employs Digital Signal Processors
(DSPs).
4. Monitoring:- Embedded systems coming under this category are
specifically designed for monitoring purpose
 They are used for determining the state of some variables using
input sensors.
 They cannot impose control over variables. Electro Cardiogram
(ECG) machine for monitoring the heart beat of a patient is a typical
example for this
 The sensors used in ECG are the different Electrodes connected to
the patient’s body Measuring instruments like Digital CRO, Digital
Multi meter, Logic Analyzer etc. used in Control & Instrumentation
applications are also examples of embedded systems for monitoring
purpose.
5. Control:- Embedded systems with control functionalities are
used for imposing control over some variables according to the
changes in input variables.
 Embedded system with control functionality contains both
sensors and actuators.
 Sensors are connected to the input port for capturing the
changes in environmental variable or measuring variable.
 The actuators connected to the output port 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
 Air conditioner for controlling room temperature is a typical
example for embedded system with „Control‟ functionality.
 Air conditioner contains a room temperature sensing element
(sensor) which may be a thermistor and a handheld unit for
setting up (feeding) the desired temperature.
 The air compressor unit acts as the actuator. The compressor is
controlled according to the current room temperature and the
desired temperature set by the end user.
6. Application Specific User Interface:- Embedded systems which are
designed for a specific application Contains Application Specific User
interface (rather than general standard UI ) like key board, Display
units etc. Aimed at a specific target group of users Mobile handsets,
Control units in industrial applications etc. are examples.
 Characteristics of Embedded systems: Embedded systems possess
certain specific characteristics and these are unique to each Embedded
system.

1. Application and domain specific


2. Reactive and Real Time
3. Operates in harsh environments
4. Distributed
5. Small Size and weight
6. Power concerns
7. Single-functioned
8. Complex functionality
9. Tightly-constrained
10. Safety-critical
1. Application and Domain Specific:-
 Each E.S has certain functions to perform and they are
developed in such a manner to do the intended functions only.
 They cannot be used for any other purpose.
Ex – The embedded control units of the microwave oven
cannot be replaced with AC‟S embedded control unit because
the embedded control units of microwave oven and AC are
specifically designed to perform certain specific tasks.
2. Operates in Harsh Environment :–

 The design of E.S should take care of the operating conditions


of the area where the system is going to implement.
Ex – If the system needs to be deployed in a high temperature
zone, then all the components used in the system should be of
high temperature grade.
 Also proper shock absorption techniques should be provided
to systems which are going to be commissioned in places
subject to high shock.
3. Reactive and Real Time:-
 E.S are in constant interaction with the real world through sensors and
user-defined input devices which are connected to the input port of the
system.
 Any changes in the real world are captured by the sensors or input devices
in real time and the control algorithm running inside the unit reacts in a
designed manner to bring the controlled output variables to the desired
level.
 E.S produce changes in output in response to the changes in the input, so
they are referred as reactive systems.
 Real Time system operation means the timing behavior of the system
should be deterministic i.e. the system should respond to requests in a
known amount of time.
Example – E.S which are mission critical like flight control systems,
Antilock Brake Systems (ABS) etc. are Real Time systems.
4. Distributed: –
 It means that embedded systems may be a part of a larger
system.
 Many numbers of such distributed embedded systems form a
single large embedded control unit.
Ex – Automatic vending machine. It contains a card reader, a
vending unit etc. Each of them are independent embedded units
but they work together to perform the overall vending function.
5. Small Size and Weight:-
 Product aesthetics (size, weight, shape, style, etc) is an
important factor in choosing a product.
 It is convenient to handle a compact device than a bulky
product.
6. Power Concerns:-
 Power management is another important factor that needs to be
considered in designing embedded systems.
E.S should be designed in such a way as to minimize the heat
dissipation by the system.
7. Single-functioned:- Dedicated to perform a single function
8. Complex functionality: - We have to run sophisticated algorithms
or multiple algorithms in some applications.
9. Tightly-constrained:- Low cost, low power, small, fast, etc.
10. Safety-critical:- Must not endanger human life and the
environment
Quality Attributes of Embedded System: Quality attributes are the
non-functional requirements that need to be documented properly in
any system design.
Quality attributes can be classified as
I. Operational quality attributes
II. Non-operational quality attributes.
I. Operational Quality Attributes: The operational quality attributes
represent the relevant quality attributes related to the embedded system
when it is in the operational mode or online mode.
Operational Quality Attributes are:
1. Response :- It is the measure of quickness of the system. It tells how
fast the system is tracking the changes in input variables. Most of the
E.S demands fast response which should be almost realtime.
Ex – Flight control application.
2. Throughput :- It deals with the efficiency of a system. It can
be defined as the rate of production or operation of a defined
process over a stated period of time.
 The rates can be expressed in terms of products, batches
produced or any other meaningful measurements.
Ex – In case of card reader throughput means how many
transactions the reader can perform in a minute or in an hour or
in a day.
Throughput is generally measured in terms of “Benchmark”. A
Benchmark is a reference point by which something can be
measured.
3. Reliability :-

 It is a measure of how much we can rely upon the proper


functioning of the system.
 Mean Time Between Failure (MTBF) and Mean Time To
Repair (MTTR) are the terms used in determining system
reliability.
 MTBF gives the frequency of failures in hours/weeks/months.
 MTTR specifies how long the system is allowed to be out of
order following a failure.
 For embedded system with critical application need, it should
be of the order of minutes.
4. Maintainability:-

 It deals with support and maintenance to the end user or client in


case of technical issues and product failure or on the basis of a
routine system checkup.
 Reliability and maintainability are complementary to each other.
 A more reliable system means a system with less corrective
maintainability requirements and vice versa.
 Maintainability can be broadly classified into two categories
1. Scheduled or Periodic maintenance (Preventive maintenance)
2. Corrective maintenance to unexpected failures
5. Security:-
 Confidentiality, Integrity and availability are the three major
measures of information security.
 Confidentiality deals with protection of data and application from
unauthorized disclosure.
 Integrity deals with the protection of data and application from
unauthorized modification.
 Availability deals with protection of data and application from
unauthorized users.
6. Safety :- Safety deals with the possible damages that can happen
to the operator, public and the environment due to the breakdown of
an Embedded System.

 The breakdown of an embedded system may occur due to a


hardware failure or a firmware failure.

 Safety analysis is a must in product engineering to evaluate the


anticipated damages and determine the best course of action to
bring down the consequences of damage to an acceptable level.

II. Non-Operational Quality Attributes: The quality attributes that


needs to be addressed for the product not on the basis of operational
aspects are grouped under this category.
1. Testability and Debug-ability:-
 Testability deals with how easily one can test the design, application and
by which means it can be done.
 For an E.S testability is applicable to both the embedded hardware and
firmware.
 Embedded hardware testing ensures that the peripherals and total
hardware functions in the desired manner, whereas firmware testing
ensures that the firmware is functioning in the expected way.
 Debug-ability is a means of debugging the product from unexpected
behavior in the system
 Debug-ability is two level process

1. Hardware level: It is used for finding the issues created by hardware


problems.
2. Software level: It is employed for finding the errors created by the
flaws in the software.
2. Evolvability :-
 It is a term which is closely related to Biology.
 It is referred as the non-heritable variation.
 For an embedded system evolvability refers to the ease with which
the embedded product can be modified to take advantage of new
firmware or hardware technologies.
3. Portability:-
 It is the measure of system independence.
 An embedded product is said to be portable if the product is capable
of functioning in various environments, target processors and
embedded operating systems.
 „Porting‟ represents the migration of embedded firmware written
for one target processor to a different target processor.
4. Time-to-Prototype and Market:-
 It is the time elapsed between the conceptualization of a product and the
time at which the product is ready for selling.
 The commercial embedded product market is highly competitive and time
to market the product is critical factor in the success of commercial
embedded product.
 There may be multiple players in embedded industry who develop
products of the same category (like mobile phone).
5. Per Unit Cost and Revenue:-
 Cost is a factor which is closely monitored by both end user and product
manufacturer.
 Cost is highly sensitive factor for commercial products
 Any failure to position the cost of a commercial product at a nominal rate
may lead to the failure of the product in the market.
 Proper market study and cost benefit analysis should be carried out before
taking a decision on the per-unit cost of the embedded product.
 The ultimate aim of the product is to generate marginal profit so the budget
and total cost should be properly balanced to provide a marginal profit.
EMBEDDED SYSTEM DESIGN PROCESS

 A design methodology is important for three reasons:


1. it allows us to keep a scorecard on a design to ensure that we have
done everything we need to do, such as optimizing performance or
performing functional tests.
2. it allows us to develop computer-aided design tools.
3. a design methodology makes it much easier for members of a
design team to communicate.
Major levels of abstraction in the design process
Requirements:

 The initial stages of the design process capture this information for
use in creating the architecture and components.
 First, we gather an informal description from the customers known
as requirements, and
 Secondly we refine the requirements into a specification that
contains enough information to begin designing the system
architecture.
 Requirements may be functional or nonfunctional.
 Typical nonfunctional requirements include: Performance , cost ,
Physical size and weight , power consumption.
Specification

 The specification is more precise—it serves as the contract between


the customer and the architects.
 Must be carefully written so that it accurately reflects the customer’s
requirements and does so in a way that can be clearly followed
during design.
 Should be understandable enough so that someone can verify that it
meets system requirements and overall expectations of the customer.
Architecture Design

 specification does not say how the system does things, only what the
system does.
 Describing how the system implements those functions is the
purpose of the architecture.
 The architecture is a plan for the overall structure of the system that
will be used later to design the components that make up the
architecture.
 The creation of the architecture is the first phase of what many
designers think of as design.
System Integration:

 Only after the components are built do we have the satisfaction of


putting them together and seeing a working system.
 Of course, this phase usually consists of a lot more than just
plugging everything together and standing back.
 Bugs are typically found during system integration, and good
planning can help us find the bugs quickly.

You might also like