Embedded System Design Concepts: Roopesh Kumar B N, Assistant Professor, Cse, Ksit
Embedded System Design Concepts: Roopesh Kumar B N, Assistant Professor, Cse, Ksit
Embedded System Design Concepts: Roopesh Kumar B N, Assistant Professor, Cse, Ksit
VTUPulse.com
VTUPulse.com
❑ Each embedded system is having 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. It will not do any other task.
Ex. Air conditioner’s embedded control unit cannot be replaced with microwave
oven control unit .
Ex. A washing machine can only wash, it cannot cook.
❑ 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 domain like consumer
electronics.
2
ROOPESH KUMAR B N,CSE,KSIT
2. Reactive and Real Time
❑ Certain embedded systems are designed to react to the events that occur in the
nearby environment. These events also occur real-time.
❑ 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.
❑ Ex. Flight control systems, Antilock Brake Systems (ABS), etc. are examples of
VTUPulse.com
Real Time systems.
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 have to be capable of sustaining the environmental
conditions it is designed to operate in.
3
ROOPESH KUMAR B N,CSE,KSIT
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. An automatic vending machine is a typical example for this. The vending
machine contains a card reader (for pre-paid vending systems), a vending unit,
etc. Each of them are independent embedded units but they work together to
perform the overall vending function.
Ex. Automatic Teller Machine (ATM) contains a card reader embedded unit,
responsible for reading and validating the user’s ATM card, transaction unit for
VTUPulse.com
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.
4
ROOPESH KUMAR B N,CSE,KSIT
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
VTUPulse.com
need to be added to the circuit.
Ex. The production of high amount of heat demands cooling requirements like
cooling fans which in turn occupies additional space and make the system bulky.
❑ Nowadays ultra low power components are available in the market. 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.
5
ROOPESH KUMAR B N,CSE,KSIT
Quality Attributes of Embedded Systems
❑ The various quality attributes that needs to be addressed in any embedded
system development are broadly classified into two, namely
❑ Operational Quality Attributes
❑ Non-Operational Quality Attributes
VTUPulse.com
Response
Throughput
Reliability
Safety
Security
Maintainability
2. Throughput
VTUPulse.com
❑ 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 one used in buses, throughput means how
much transactions the Reader can perform in a minute or hour or day.
❑ Throughput is generally measured in terms of ‘Benchmark’. A ‘Benchmark’ is a
reference point by which something can be measured.
VTUPulse.com
❑ For an embedded system with critical application need, it should be of the
order of minutes.
4. Safety
❑ Safety deals with the possible damages that can happen to the operators,
public and the environment due to the breakdown of an embedded system or
due to the emission of radioactive or hazardous materials from the
embedded products.
❑ The breakdown of an embedded system may occur due to a hardware failure
or a firmware failure.
8
ROOPESH KUMAR B N,CSE,KSIT
5.Security
❑ ‘Confidentially’, ‘Integrity’, and ‘Availability’ are three major measures of
information security.
❑ ‘Confidentially’ deals with the 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.
measures. VTUPulse.com
❑ Certain embedded systems have to make sure that they conform to the security
❑ Ex. An electronic safety Deposit Locker can be used only with a pin number like
a password.
9
ROOPESH KUMAR B N,CSE,KSIT
6. Maintainability
❑ Maintainability deals with support and maintenance to the end user or client in
case of technical issues and product failures or on the basis of a routine system
checkup.
❑ Maintainability can be classified into two types:
1. Scheduled or Periodic Maintenance (Preventive Maintenance)
An inkjet printer uses ink cartridges, which are consumable components and as
per the printer manufacturer the end use should replace the cartridge after
each ‘n’ number of printouts to get quality prints.
VTUPulse.com
2. Maintenance to Unexpected Failures (Corrective Maintenance)
If the paper feeding part of the printer fails the printer fails to print and it
requires immediate repairs to rectify this problem.
❑ The ideal value for availability is expressed as
𝑨𝒊 = 𝑴𝑻𝑩𝑭/(𝑴𝑻𝑩𝑭 + 𝑴𝑻𝑻𝑹)
10
ROOPESH KUMAR B N,CSE,KSIT
❑ Non-Operational Quality Attributes
1.Testability & Debug-ability
Non-Operational Quality Attributes
Testability & Debug-ability
Evolvability
Portability
Time to prototype and market
Per unit and total cost
VTUPulse.com
❑ Testability deals with how easily one can test his/her design, application.
❑ For an embedded product, testability is applicable to both the embedded
hardware and firmware.
❑ Debug-ability means debugging the product to figure out the probable sources
that create unexpected behavior in the total system.
❑ Debug-ability has two aspects in the embedded system development context,
namely, hardware level debugging and firmware level debugging.
VTUPulse.com
❑ 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.
VTUPulse.com
VTUPulse.com
VTUPulse.com
❑ The sensor data is fed back to the control unit and the control unit
generates the necessary actuator outputs.
❑ The control unit also provides connectivity to user interfaces like keypad
for setting the washing time, selecting the type of material to be washed like
light, medium, heavy duty, etc.
❑ User feedback is reflected through the display unit and LEDs connected to the
control board.
VTUPulse.com
Heavy duty and washing time setting, etc.
❑ The output interface consists of LED/LCD displays, status indication LEDs, etc.
connected to the I/O bus of the controller.
❑ It is to be noted that this interface may vary from manufacturer to manufacturer
and model to model.
VTUPulse.com
VTUPulse.com
units (HECUs) are deployed in critical control units requiring fast response, like
fuel injection systems, antilock brake systems, etc.
❑ Low speed Electronic Control Units (LECUs) : Low speed electronic control
units are deployed in applications where response time is not so critical.
❑ They are generally built around low cost microprocessors/microcontrollers and
digital signal processors.
❑ Audio controllers, passenger and driver door locks, door glass controls, etc., are
examples for LECUs.
VTUPulse.com
communication interface. LIN is a low speed, single wire communication
interface with support for data rates up to 20 kbps and is used for
sensor/actuator interfacing.
❑ MOST bus is targeted for automotive audio video equipment interfacing.
❑ MOST bus is a multimedia fiber-optic point-to point network implemented in a
star, ring or daisy chained topology over optical fibers cables.
VTUPulse.com
❑ Controller architecture
❑ Datapath architecture
❑ Finite state machine datapath architecture(FSMD)
❑ CISC architecture
❑ Very long instruction word architecture(VLIW)
❑ Parallel processing architecture such as Single instruction multiple data
architecture(SIMD) and Multiple instruction multiple data architecture(MIMD)
VTUPulse.com
hardware or software.
❑ Various hardware software trade off can be used for decision making for
hardware software partitioning.
VTUPulse.com
VTUPulse.com
❑ As shown in the figure if flag=1,operation
is represented as x=a+b otherwise it is
represented as y=a-b
❑ Capturing of image and storing it in the
format selected (bmp, jpg, tiff, etc.) in a
digital camera is a typical example of an
application that can be modeled with
CDFG.
VTUPulse.com
❑ Finite state machine (FSM) is a term used by programmers, mathematicians,
engineers and other professionals to describe a mathematical model for any
system that has a limited number of conditional states.
❑ Examples
❑ FSM Model for automatic seat belt warning system.
❑ FSM Model for automatic Tea/Coffee vending machine.
❑ FSM Model for coin operated Telephone System.
VTUPulse.com
❑ Timer state can be either ‘IDLE’ or ‘READY’ or ‘RUNNING’.
❑ Initially timer is in its normal state then it is said to be in ‘IDLE’ state.
❑ When it is loaded with count then it is said to be in ‘READY’ state. It remains
in ‘READY’ state until ‘Start Timer’ event occurs.
❑ On receiving ‘Start Timer’ event timer changes from ‘READY’ to ‘RUNNING’
state. It remains in ‘RUNNING’ state till ‘Stop Timer’ event occurs.
❑ On receiving ‘Stop Timer’ event timer changes from ‘RUNNING’ to ‘IDLE’
state.
VTUPulse.com
VTUPulse.com
VTUPulse.com
❑ Data gets transformed through a
series of operations.
❑ Flow Chart is another important
tool used for modeling sequential
program.
❑ Figure depicts sequential
program model for seat belt
warning system.
VTUPulse.com
❑ Task 1: Timer Task for waiting 10 seconds.
VTUPulse.com
❑ A class is an abstract description of set of objects.
❑ A class represents the state of an object through member variables and behaviour
through member functions.
VTUPulse.com
❑ Very similar to a conventional procedural programming where the code is
executed task by task.
❑ The tasks are executed in a never ending loop.
❑ The task listed on top on the program code is executed first and the tasks just
below the top are executed after completing the first task.
❑
devices.
VTUPulse.com
‘Windows CE’,‘Windows Mobile’,‘QNX’, ‘VxWorks’, ‘ThreadX’, ‘MicroC/OS-
II’, ‘Embedded Linux’, ‘Symbian’ etc are examples of RTOSs employed in
Embedded Product development.
❑ Mobile Phones, PDAs, Flight Control Systems etc are examples of embedded
devices that runs on RTOSs
VTUPulse.com
❑ The software program called linker/locater is responsible for assigning absolute
address to object files during the linking process.
❑ The Absolute object file created from the object files corresponding to different
source code modules contain information about the address where each
instruction needs to be placed in code memory.
❑ A software utility called ‘Object to Hex file converter’ translates the absolute
object file to corresponding hex file (binary file).
❑
VTUPulse.com
instruction needs to be placed in code memory.
A software utility called ‘Object to Hex file converter’ translates the absolute
object file to corresponding hex file (binary file).
VTUPulse.com
implementing certain features like ISR.
❑ Mixing ‘C’ and assembly is little complicated.
❑ The programmer must be aware of how to pass parameters from the ‘C’ routine
to assembly and values returned from assembly routine to ‘C’ and how
Assembly routine is invoked from the ‘C’ code.
❑ Passing parameter to the assembly routine and returning values from the
assembly routine to the caller ‘C’ function and the method of invoking the
assembly routine from ‘C’ code is cross compiler dependent.
VTUPulse.com
applications.
❑ In cross-platform development, the compiler running on a particular target
processor/OS converts the source code to machine code for a target processor
whose architecture and instruction set is different from the processor on which
the compiler is running or for an operating system which is different from the
current development environment OS.
❑ Embedded system development is a typical example for cross-platform
development.
❑ Keil C51compiler from Keil software is an example for cross-compiler for 8051
family architecture.
ROOPESH KUMAR B N, CSE,KSIT 48