0% found this document useful (0 votes)
26 views45 pages

ESD Module - 2

The document outlines the characteristics and quality attributes of embedded systems, emphasizing their application-specific design, real-time responsiveness, ability to operate in harsh environments, and power efficiency. It categorizes quality attributes into operational and non-operational aspects, detailing factors such as response time, reliability, maintainability, and security. Additionally, it discusses the importance of hardware-software co-design and various computational models used in embedded system design.

Uploaded by

sadiyamahek727
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views45 pages

ESD Module - 2

The document outlines the characteristics and quality attributes of embedded systems, emphasizing their application-specific design, real-time responsiveness, ability to operate in harsh environments, and power efficiency. It categorizes quality attributes into operational and non-operational aspects, detailing factors such as response time, reliability, maintainability, and security. Additionally, it discusses the importance of hardware-software co-design and various computational models used in embedded system design.

Uploaded by

sadiyamahek727
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

MODULE-II

EMBEDDED SYSTEM
DESIGN CONCEPTS
CHARACTERISTICS AND QUALITY ATTRIBUTES
OF EMBEDDED SYSTEMS
CHARACTERISTICS OF EMBEDDED SYSTEMS
• Unlike general purpose computing systems, embedded systems possess certain specific
characteristics and these characteristics are unique to each embedded system.
• Some of the important characteristics of an embedded system are:
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
1. APPLICATION AND DOMAIN SPECIFIC
• An embedded system is designed for A specific purpose only. It will not
perform any other task.
• Ex. Air conditioner’s embedded control unit, it cannot replace microwave
oven…
• Ex. A washing machine can only wash, it cannot cook..
• Because the embedded control units of microwave oven and air conditioner are
specifically designed to perform certain specific tasks.
• Certain embedded systems are specific to a domain
• Ex. A hearing aid is an application that belongs to the domain of signal
processing and telecom with another control unit designed to serve another
2. REACTIVE AND REAL TIME

• Certain embedded systems are designed to react to the events that occur inthe
nearby environment. These events also occur real-time.
• Ex. Flight control systems, antilock brake systems (ABS), etc. Are examples of
real time systems.
• Ex. An air conditioner adjusts its mechanical parts as soon as it gets A signal
from its sensors to increase or decrease the temperature when the user
operates it using A remote control.
• An embedded system uses sensors to take inputs and has actuators to bring
out the required functionality.
3. OPERATION IN HARSH ENVIRONMENT
• Certain embedded systems are designed to operate in harsh
environments like A dusty one or A high temperature zone or an area
subject to vibrations and shock or very high temperature of the
deserts or very low temperature of the mountains or extreme rains.
• These embedded systems are capable of sustaining the
environmental conditions. It is designed to operate in it .
4. DISTRIBUTED
• The term distributed means that embedded systems may be A part of A larger
system.
• These components are independent of each other but have to work together
for the larger system to function properly.
• Ex. Automatic teller machine (ATM) contains A card reader embedded unit,
responsible for reading and validating the user’s ATM card, transaction unit for
performing transactions, A currency counter for dispatching/vending currency
to the authorized person and A printer unit for printing the transaction details.
• This can visualize these as independent embedded systems but they work
together to achieve a common goal.
5. SMALL SIZE AND WEIGHT
• An embedded system that is compact in size and has light weight
will be desirable or more popular than one that is bulky and heavy.
• Ex. Currently available cell phones.
• The cell phones that have the maximum features are popular but
also their size and weight is an important characteristic.
6. POWER CONCERNS
• It is desirable that the power utilization and heat dissipation of any embedded
system be low.
• If more heat is dissipated then additional units like heat sinks or cooling fans
need to be added to the circuit.
• Select the design according to the low power components like low dropout
regulators , and controllers/processors with power saving modes.
• Also power management is a critical constraint in battery operated application.
• The more the power consumption the less is the battery life.
QUALITY ATTRIBUTES OF EMBEDDED SYSTEMS

• Quality attributes are the non-functional requirements that need to be


documented properly in any system design.
• If the quality attributes are more concrete and measurable, it will give a positive
impact on the system development process and the end product.
• The various quality attributes that needs to be addressed in any embedded system
development are broadly classified into two, namely
• I. Operational quality attributes
• Ii. Non-operational quality attribute
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.
The important quality attributes coming under this category are listed below:
i. Response
ii. Throughput
iii. Reliability
iv. Maintainability
v. Security
vi. Safety
I . RESPONSE
• Response is A measure of quickness of the system.
• It gives you an idea about how fast your system is tracking the input variables.
• Most of the embedded system demand fast response which should be real-time.
• Ex. An embedded system deployed in flight control application should respond in A
real time manner.
• Any response delay in the system will create potential damages to the safety of the
flight as well as the passengers.
• It is not necessary that all embedded systems should be real time in response.
• For example, the response time requirement for an electronic toy is not at all time-
critical.
II. THROUGHPUT
• Throughput deals with the efficiency of system.
• It can be defined as rate of production or process of a defined process
over a stated period of time.
• In case of card reader like the ones used in buses, throughput means
how much transaction the reader can perform in a minute or hour or
day.
III. RELIABILITY
• Reliability is A measure of how much percentage you rely upon the proper
functioning of the system .
• Mean time between failures and mean time to repair are terms used in defining
system reliability.
• Mean time between failures can be defined as the average time the system is
functioning before a failure occurs.
• Mean time to repair can be defined as the average time the system has spent in
repairs.
IV. MAINTAINABILITY
• Maintainability deals with support and maintenance to the end user or A client in case of
technical issues and product failures or on the basis of A routine system checkup
• It can be classified into two types :-
1. Scheduled or periodic maintenance:
• This is the maintenance that is required regularly after A periodic time interval.
• Example : 1.Periodic cleaning of air conditioners
2. Refilling of printer cartridges.
2. Maintenance to unexpected failure:
• This involves the maintenance due to A sudden breakdown in the functioning of the
• System.
• Example:1. Air conditioner not powering on
2. Printer not taking paper in spite of A full paper stack
V. SECURITY
• Confidentiality, integrity and availability are three corner stones of information
security.
• Confidentiality deals with protection data from unauthorized disclosure.
• Integrity gives protection from unauthorized modification.
• Availability gives protection from unauthorized user
• Certain embedded systems have to make sure they conform to the security
measures.
• Ex. An electronic safety deposit locker can be used only with A pin number like
A password.
VI. SAFETY
• Safety deals with the possible damage that can happen to the operating person
and environment due to the breakdown of an embedded system or due to the
emission of hazardous materials from the embedded products.
• A safety analysis is a must in product engineering to evaluate the anticipated
damage and determine the best course of action to bring down the consequence
of damages to an acceptable level.
NON OPERATIONAL ATTRIBUTES
I. TESTABILITY AND DEBUG-ABILITY
• It deals with how easily one can test his/her design, application and by which mean he/she can
test it.
• In hardware testing the peripherals and total hardware function in designed manner.
• Firmware testing is functioning in expected way.
• Debug-ability is means of debugging the product as such for figuring out the probable sources
that create unexpected behavior in the total system.
II. EVOLVABILITY
• For embedded system, the qualitative attribute “evolvability” refer to
ease with which the embedded product can be modified to take
advantage of new firmware or hardware technology.
III. PORTABILITY
• Portability is measured of “system independence”.
• An embedded product can be called portable if it is capable of
performing its operation as it is intended to do in various
environments irrespective of different processor and or controller and
embedded operating systems.
IV. TIME TO PROTOTYPE AND MARKET
• Time to market is the time elapsed between the conceptualization of A product and time at
which the product is ready for selling or use.
• Product prototyping help in reducing time to market.
• Prototyping is an informal kind of rapid product development in which important feature of
the under consider are develop.
• In order to shorten the time to prototype, make use of all possible option like use of reuse,
off the self component etc.
V. PER UNIT AND TOTAL COST
• Cost is an important factor which needs to be carefully monitored. Proper market study and cost
benefit analysis should be carried out before taking decision on the per unit cost of the embedded
product.
• When the product is introduced in the market, for the initial period the sales and revenue will be
low.
• There won’t be much competition when the product sales and revenue increase.
• During the maturing phase, the growth will be steady and revenue reaches highest point and at
retirement time there will be a drop in sales volume.
EMBEDDED SYSTEMS-APPLICATION AND DOMAIN
SPECIFIC
APPLICATION SPECIFIC EMBEDDED SYSTEMS: WASHING MACHINE
• Washing machine is an automatic clothes washing system. It contains status display panel,
switches and dials, motor, power supply and control unit, inner water level sensors, and solenoid
valve.
• Washing machine supports three functional modes.
1. Fully automatic. 2. Semi automatic. 3. Manual mode.
1. Fully automatic mode:
Once the system is started it performs independently without user interface and after the
completion of work it should notify the user about the completion of work.
2. Semi automatic mode: 3. Manual mode:
In this mode, washing condition is predefined. In this mode, user has to specify which
Once the predefined mode is started the system operation he/she wants to do and has to provide
performs its job and after completion it informs related information to the control system.
the user about the completion the work.
• Display panel: it is a touch panel screen to control all the operations of a
machine.
• Sensor: it measures the water level and appropriate amount of soap.
• Water level sensor: it indicates beep sound when water level is low in washing
tub.
• Driving motor: motor can rotate in two directions either ‘reverse’ or ‘forward’.
• Washing machine comes in two categories front loading as well as top loading.
• System controller: such component is used to control the motoe speed. Motor
can move in forward direction as well as in reverse direction.
• Water pump: the water pump is used to re-circulate water and drain out the dirty
water.
DOMAIN SPECIFIC EMBEDDED SYSTEMS- AUTOMOTIVE
• The automotive industry is one of the major application domains of embedded
systems.
• Automotive embedded systems are the one where electronics take control over
the mechanical system. Ex. Simple viper control.
• The number of embedded controllers in a normal vehicle varies somewhere
between 20to 40 and can easily be between 75 to 100 for more sophisticated
vehicles.
• One of the first and very popular use of embedded system in automotive industry
was microprocessor based fuel injection.
• Some of the other uses of embedded controllers in a vehicle are listed below:
a. Air conditioner
b. Engine control
c. Fan control
d. Headlamp control
e. Automatic break system control
f. Wiper control
g. Air bag control
h. Power windows
• AES are normally built around microcontrollers or dsps or a hybrid of the two and are
generally known as electronic control units (ECUS).
• Types of electronic control units(ECU):
1. High-speed electronic control units (HECUs):-
• HECUs are deployed in critical control units requiring fast response.
• They include fuel injection systems, antilock brake systems, engine control, electronic
throttle, steering controls, transmission control and central control units.
• 2. Low speed electronic control units (LECUs):-
• They are deployed in applications where response time is not so critical.
• They are built around low cost microprocessors and microcontrollers and digital signal
processors.
• Audio controller, passenger and driver door locks, door glass control etc.
Automotive communication buses:-
• Embedded system used inside an automobile communicates with each other
using serial buses. This reduces the wiring required.
• Following are the different types of serial interfaces used in automotive
embedded applications:
a. Controller area network (CAN):-
• CAN bus was originally proposed by robert bosch.
• It supports medium speed and high speed data transfer
• CAN is an event driven protocol interface with support for error handling in data
transmission.
b. Local interconnect network (LIN):-
• LIN bus is single master multiple slave communication interface with support for
data rates up to 20 kbps and is used for sensor/actuator interfacing.
• Lin bus follows the master communication triggering to eliminate the bus
arbitration problem.
• Lin bus applications are mirror controls , fan controls , seat positioning controls.
c. Media-oriented system transport(most):-
• MOST is targeted for automotive audio/video equipment interfacing.
• A most bus is a multimedia fiber optics point–to- point network implemented in
a star , ring or daisy chained topology over optical fiber cables.
• Most bus specifications define the physical as well as application layer , network
layer and media access control.
HARDWARE SOFTWARE CO-DESIGN AND PROGRAM
MODELING
• Digital systems designs consists of hardware components and software programs
that execute on the hardware platforms.
• Hardware and software co-design can be defined as meeting system level
objectives by exploiting the cooperation between hardware and software through
their concurrent design.
• Fundamental issues in hardware software co-design are as follows:
1. Partitioning: selecting modules for hardware and software.
2. Testing: co-simulation and verification.
3. Code generation: software controls for hardware.
4. Design issues: hardware software interface.
• Co-design helps meet time-to-market because developed software can be verified
much earlier.
• Co-design improves overall system performance, reliability, and cost
effectiveness because defects found in hardware can be corrected before tape-
out.
• C0-design benefits the design of embedded systems and SOCs, which need
hardware/software tailored for a particular application.
CATEGORIES OF CO-DESIGN PROBLEMS
Co-design of embedded 1. Usually consist of sensors, controller and actuators.
system 2. Are reactive system.
3. Usually have real time constraints.
4. Usually have dependability constraints.

Co-design of ISAs 1. Application specific instruction set processors (asips).


2. Compiler and hardware optimization and trade-offs.

Co-design of reconfigurable 1. Systems that can be personalized after manufacture for a specific
systems application.
2. Reconfiguration can be accomplished before execution or concurrent with
execution.
COMPUTATIONAL MODELS IN EMBEDDED SYSTEM
• Computational model is a set of objects, rules and semantics. There are five
ways of modeling an embedded system.
1. Data flow graph (DFG) model.
2. Control data flow graph (CDFG) model.
3. Finite state machine (FSM) model.
4. Sequential program model.
5. Concurrent/communicating process model.
1. DATA FLOW GRAPH
• Translates the data processing requirement into data flow graph.
• Translates the program as a single sequential process execution.
• Visual model in which operation on data is represented in circle and data flow is represented by
directed arrow.
• An inward arrow to the circle represents the input data and an outward arrow from the circle
represents the output data in DFG.
• A data path is the data flow path from input to output.
• A DFG model is said to be a cyclic DFG, if it doesn’t have multiple values for input variables
and output variables.
2. CONTROL DATA FLOW GRAPH
• The control data flow graph model is used for modelling application involving
conditional program execution.
• CDFG models contains both data operations and control operations.
• CDFG uses data flow graphs as element and conditional as decision makers.
• CDFG contain both data flow nodes and decision nodes.
• Control node is represented by diamond block which is the decision making
element in normal flow chart design.
• CDFG translates the requirement to a concurrent process model.
CONTROL DATA FLOW GRAPH
3. FINITE STATE MACHINE MODEL
• The state machine is used for modelling reactive or event-driven system for
processing behavior are dependent on state transitions.
• The state machine describes the system behavior with states, events, actions and
transitions.
• Ex: seat belt warning in an automotive using FSM model. The system
requirement are captured as.
• When the ignition is turned on and the seat beat is not fastened within 10 seconds
of ignition on, the system generates an alarm signal for 5 seconds.
• The alarm is turned off when the alarm time expires after 5 seconds or if the
driver fastens the belt or if the ignition switch is turned off, whichever happens
first.
FINITE STATE MACHINE MODEL
Figure illustrate the flow chart approach of modelling the seat belt warning
system.
4. SEQUENTIAL PROGRAM MODEL
• In the sequential programming model, the functions or processing requirements are executed in
sequence. It is same as the conventional procedural programming.
• Here the program instruction are iterated and executed conditionally and the data gets
transformed through a series of operations. FSM’s are good choice for sequential program
modelling.
• Another important tool used for modelling sequential program is flow charts.
• The FSM represents states, events, transitions and actions, whereas flow charts models the
execution flow.
5. CONCURRENT/COMMUNICATING PROCESS MODEL
• THE CONCURRENT OR COMMUNICATING PROCESS MODEL MODELS
CONCURRENTLY EXECUTING TASK/PROCESS.
• IT IS EASIER TO IMPLEMENT CERTAIN REQUIREMENTS IN CONCURRENT
PROCESSING MODEL THAN CONVENTIONAL SEQUENTIAL EXECUTION.
• CONCURRENT PROCESSING MODEL REQUIRES ADDITIONAL OVERHEADS IN
TASK SCHEDULING, TASK SYNCHRONIZATION AND COMMUNICATION.
• Seat belt warning system can be designed using concurrent processing model with
following 5tasks:
1. Timer task for waiting 10 seconds(wait timer task).
2. Task for checking the ignition key status (ignition key status monitoring task).
3. Task for checking the seat belt status (seat belt status monitoring task).
4. Task for starting and stopping the alarm (alarm control task).
5. Alarm timer task for waiting 5 seconds (alarm timer tasks).
• We have five tasks here and we cannot execute them randomly or sequentially. We need
to synchronize their execution through some mechanism.
• For example, we need to start the alarm only after the expiration of the 10 seconds wait
timer and that too if the seat belt is OFF and the ignition key is ON.
6. OBJECT ORIENTED MODEL
• The object oriented model is an object based model for modelling system requirements.
• It distributes a complex software requirement into simple well defined pieces called
objects.
• In object oriented modelling, object is an entity used for representing or modelling a
particular piece of the system.
• Each object is characterized by a set of unique behavior and state.
• A class is an abstract description of a set of objects and it can be considered as a
blueprint of an object.
• A class represents the state of an object through member variable and object behavior
through member function. Member variable and function can be private, public or
protected.
EMBEDDED FIRMWARE DESIGN AND DEVELOPMENT
• EMBEDDED FIRMWARE IS RESPONSIBLE FOR CONTROLLING VARIOUS
PERIPHERALS OF THE EMBEDDED HARDWARE AND GENERATING RESPONSES
IN ACCORDANCE WITH THE FUNCTIONAL REQUIREMENTS MENTIONED IN THE
REQUIREMENTS FOR THE PARTICULAR PRODUCT.
• FIRMWARE IS CONSIDERED AS THE MASTER BRAIN OF THE EMBEDDED
SYSTEMS.
• YOUR SYSTEM IS EMBEDDED MEANING THAT IT IS TYPICALLY CONNECTED TO
REAL HARDWARE LIKE MOTORS, SENSORS, COMMUNICATION BUSSES ETC.
MEANS THAT SOFTWARE ERRORS CAN HAVE DRAMATIC AND EXPENSIVE
RESULT.

You might also like