EMBEDDED SYSTEMS
& ITS APPLICATIONS
Prepared by
N.SHANMUGASUNDARAM
Professor – ECE Department
Vidyaa Vikas College of Engg & Tech
16-2-2010 11
Overview of the Presentation
1. What is Embedded system?
2. Components of Embedded system
3. Hardware Components
4. Programming languages
5. Embedded system development tools
6. Typical application development
7. Exemplary cases of Embedded applications
8. Opportunities & Career in Embedded systems
16-2-2010 22
Introduction to
Embedded System
16-2-2010 33
What is Embedded System?
§ Embedded systems are combination of
hardware and software.
§ Any CPU based system other than general
purpose computers
§ An embedded system has specific requirements
and performs pre-defined tasks.
§ An embedded system is a programmed
hardware device.
§ Often the user of the device is not even aware that
a computer is present.
16-2-2010 44
What is Embedded System?
DRIVES
Smart
Software + Hardware = Applications
Embedded system is a Hardware with Software embedded in it,
for a dedicated application.
16-2-2010 55
Why Embedded system?
There are Environments where the general purpose
computers system do not really get into action.
For example:
AC has a temperature control sub-system
It is not viable to use a PC’s there for achieving task
16-2-2010 66
Redefining - Embedded System
Embedded system is a
q Microcontroller based hardware
q Software driven
q Real time control system
q Autonomous or Human interactive
q Reliable system
q Operating in diverse environments
16-2-2010 77
SMART Embedded Systems …
16-2-2010 88
SMART Embedded Systems …
16-2-2010 99
SMART Embedded Systems …
16-2-2010 1010
SMART Embedded Systems …
16-2-2010 1111
SMART Embedded Systems …
16-2-2010 1212
SMART Embedded Systems …
16-2-2010 1313
Embedded System in ROBOTICS
ASIMO Robot made by Honda, Japan.
Robot can run at speed of 6 kmph & walking speed 1 kmph
Turns ON light switches, open doors, carry objects, and push carts.
16-2-2010 1414
SMART Embedded Systems …
16-2-2010 1515
Applications of Embedded Systems
Communication
Avionics
Automobile
Consumer Electronics
Office Equipments
Household Appliances
16-2-2010 1616
Applications of Embedded
Systems
n Consumer Electronics
n Industrial Applications
n Automobiles
n Communication systems
n Aerospace
n Robotics
n Medical instrumentation
n Military applications
and Every where in our day-to-day life.
16-2-2010 1717
Classification of
Embedded system
16-2-2010 1818
CLASSIFICATION of Embedded Systems
Classification is made based on the following…
n Processor type
n Complexity of H/w & S/w design
n Usage of RTOS (Real Time Operating System)
n Usage of Source code engg. tools
n Type of Power supplied
16-2-2010 1919
CLASSIFICATION of Embedded Systems
• SMALL SCALE:
8/16 bit CPU, little H/w, less S/w complexity, No RTOS,
Battery operated. Eg. Toys, Washing machine, …
• MEDIUM SCALE:
16/32 bit µC or DSPs, Complex H/w & S/w design, RTOS
Source code Engg tools, IDE. Eg. Mobile phone, ATM, …
• SOPHISTICATED:
Configurable processors, Cutting edge applications,
Highly complex H/w and S/w design. Eg. RT Video processing, …
16-2-2010 2020
SKILLS for Embedded System Engineer
HARDWARE skills required in:
• Processors (µP, µC, DSP, EP, …)
• Memories (EEPROM, RAM, ..)
• Peripheral devices (8255, 8251, 8253, 8279,…)
• Sensors (Temp, Pressure, Light,…),
• Electronic system design,
• Digital electronics,
• Computer architecture,
• Control system,
• Data communication.
16-2-2010 2121
SKILLS for Embedded System Engineer
SOFTWARE skills required in :
Programming languages - Assembly, C, C++,
Java
IDE - Editor, Assemblers, Compilers, Linkers,
Debuggers, Simulator.
RTOS – µC / OS-II, Vxworks, Win CE, RTLinux, etc.
16-2-2010 2222
Components of
Embedded system
16-2-2010 2323
Let us begin with Mobile phone…
16-2-2010 2424
What are the hardware present
in
MOBILE PHONE?
16-2-2010 2525
Contents inside Mobile phone…
• Processors
i.e., GPP, DSP, ASSP, etc.
• Memory
EEPROM (Flash), RAM, etc.
• Peripheral ICs
ADC/DAC, Ports, Timers, etc.
• Communication circuits
Modulation/De-Modulation ckts
• Power supply circuits
16-2-2010 2626
3 MAIN COMPONENTS of Embedded System
q HARDWARE
Processor, RAM, ROM, ADC, DAC, Timers, Ports, etc.
q APPLICATION SOFTWARE
written in Assembly, C, C++, Java, etc.
q RTOS (to supervise the Application Software)
µC OS-II, Win CE, VxWorks, Embedded Linux, etc.
16-2-2010 2727
Hardware Components
16-2-2010 2828
COMPONENTS of Embedded System Hardware
16-2-2010 2929
PROCESSORS for Embedded Systems
PROCESSO
R
ALU
Control
Unit
Types of Processor
• General Purpose Processor (µc, µP, DSP, EP,MP)
• Application Specific System Processor
• Multiprocessor system
• GPP/ASIP core with other hardware integrated in ASIC chip.
16-2-2010 3030
PROCESSORS for Embedded Systems
Microprocessor Vs
Microcontroller
ALU ALU T/C I/O
ACC. ACC. I/O
INT.
REGISTERS REG. ROM UART
PC SP PC SP
CLK INT. INT
CLK INT
RAM
● No in-built ● More in-built Peripherals
Peripherals ● Bit Manipulation
● No Bit operations,
Manipulation, ● Dedicated Purpose
16-2-2010 ● General Purpose 3131
PROCESSORS for Embedded Systems
DSP Processor:
It has additional hardware to perform special operations like
CONVOLUTION, FFT, DFT, DCT, etc.
Embedded Processor:
Processor specially designed for Embedded system applications
with FAST CONTEXT SWITCHING and LATENCY CONTROL.
16-2-2010 3232
PROCESSORS for Embedded Systems
mmonly used PROCESSORS for Embedded system applications are
q Intel 8051 Family (8051, 89C51, 8752…) - 8 bit
q PIC 16Fxx Family (PIC 16F77, …) - 8 bit
q ARM Family (ARM7TDMI, ARM9TDMI, …) - 32 bit
q Other processors from Motorola, Philips, Renaisse, …
16-2-2010 3333
Intel 8051 Family Microcontrollers
16-2-2010 3434
OTHER HARDWARE for Embedded Systems
1. Power supply circuit
2. Memory - EPROM, RAM, EEPROM (flash), CACHE
3. I/O Ports - 8255 (PPI), 8251 (UART)
4. Timers - 8253
5. ADC / DAC - ADC0809, DAC0800
6. Display & Keyboard Controllers - 8279
7. Programmable Interrupt Controllers - 8259
16-2-2010 3535
Types of I/O Devices
16-2-2010 3636
Structure of Serial Port
16-2-2010 3737
Structure of Parallel Port
16-2-2010 3838
BUSES for Communication
I2C : Bus for communication between multiple ICs.
CAN: Bus used in automobiles with centrally
controlled network.
USB: Bus for communication between CPU and
devices like mouse, etc.
ISA,
EISA, PCI are standard buses for parallel
16-2-2010 3939
communication used in PCs, computer network
Types of TIMERS
16-2-2010 4040
Structure of Hardware Timer
16-2-2010 4141
Usage of TIMERS
1 Real Time Clock (RTC) for the system
2 Initiating an Event after a preset time delay
3 Initiating an Event after a comparison of preset times
4 Capturing the count value in timer on an event
5 Finding time interval between two events
6 Watchdog timer
7 Baud rate control for Serial communication
8 Scheduling of various tasks in RTOS
9 Time slicing of various tasks
10 Time division multiplexing
16-2-2010 4242
Software Components
16-2-2010 4343
SOFTWARE Components in Embedded Systems
Programming Languages: 1. Machine code
2. Assembly language
3. High level languages ie., C, C++
Software Tools: Editor Simulator
Assembler Loader
Compiler Stethoscope
Linker Trace scope
Debugger IDE
16-2-2010 4444
SOFTWARE Tools
Editor to TYPE the program. Eg. Notepad, Wordpad, …
Assembler to COVERT Assy program (x.asm) into object file (x.obj).
Compiler to COVERT C program (x.c) into object file (x.obj).
Linker to LINK Object file (x.obj) with Library functions into (x.exe).
Simulator to SIMULATE all Functions of ES hardware circuit.
Debugger to CHECK and TRACE errors.
Stethoscope to dynamically TRACK any variable in program.
RTOS Real Time Operating System
OS for Embedded system. Eg. Vxworks
IDE Integrated Development Environment
A single package comprising of all S/w tools.
16-2-2010 4545
Assembler, Compiler & Linker
16-2-2010 4646
Software Development Chain
16-2-2010 4747
Assembly Language Programming
Advantage
n Assembly Language programming is the efficient
programming language for accessing the hardware
features.
n The assembly language op codes directly work on the
target machine, so it is faster in operation.
Disadvantage
n Tough to understand and Program.
n Have to learn instruction set for different processors.
16-2-2010 4848
Programming using C
q Modularity
q Usage of Scalar data types, Control
statements, …
q Easy maintenance
q Reusable codes
q Portability
q Minimal hardware knowledge required
16-2-2010 4949
Programming Embedded Systems using C++
Combines the advantage of OOPS, C &
Assembly.
Special features: Data Encapsulation,
inheritance, etc.
Disadvantages: : Reusability
Advantages Standard of C++ programming
software
components. makes code complex and lengthy,
due to features like Templates, Multiple
inheritance, Exception handling, Virtual
Solution base classes,
: Special Namespaces,
version of C++ etc.
(Embedded C++)
has provision for selective
disabling of features.
16-2-2010 5050
STRUCTURE of Operating System
USER
SHELL OS
KERNEL
HARDWARE
16-2-2010 5151
KERNEL of Operating System
- OS is a middle layer between Application Software & Hardware.
- It consists of KERNEL and other functions not provided by Kernel.
KERNEL Services
q Process Management
q Memory Management
q Inter Process Communication
q I/O management
q Interrupt Control
q Device drivers
16-2-2010 5252
GENERAL PURPOSE COMPUTER (GPC) and
EMBEDDED SYSTEM
General Purpose EMBEDDED
COMPUTER (GPC)
Application SYSTEM
Application
Operating System
Software
Device Driver combined with
RTOS, DD & FW
Firmware
Hardware Hardware
16-2-2010 5353
Typical Device Driver
16-2-2010 5454
Real Time Operating System (RTOS)
RTOS is an OS for Embedded system
for response time and event controlled processes.
RTOS Services:
• Basic OS functions - PM, RM, MM, DM, FSM, I/o, etc.
• RTOS main functions - RT Task scheduling and Latency control
• Time management - Time Allocation, time slicing & monitoring for efficiency.
• Predictability - Predicting time behaviour and initiation of task
synchronization
• Priorities Management - Allocation and Inheritance
• IPC - Synchronization of Tasks using IPC.
16-2-2010 5555
Why need RTOS?
Reasons for need of RTOS Occasions for NO need of RTOS
n When efficient scheduling in n Small scale embedded system
needed for multitasks with time never use RTOS.
constraints. n Instead of functions in RTOS,
n Task synchronization is standard lib functions in C can be
needed. used.
n Interrupt Latency Control is eg. malloc(), free(),
essential. fopen(), fclose(), etc.
16-2-2010 5656
Real Time Systems
Hard real time - Systems with Hard Deadlines
q No Critical Deadlines can be missed
Eg. Missile Control Systems, Atomic Reactors, …
Soft real time - Timing Constraints a little tolerable
q Occasional misses are permitted
q Average response time for an event should be
within a specified
In RTS, time
“ A late answer is a wrong
Eg.answer
Washing
”. machines, Microwave oven, …
16-2-2010 5757
Options in RTOS
16-2-2010 5858
µC/OS-II (MUCOS)
n µC/OS-II is Free Open-source RTOS designed by
Jean J. Labrosse in 1992.
n µC/OS-II is intended for Non-commercial use.
n µC/OS-II codes are in C and few CPU specific
modules are in ASSY.
n µC/OS-II code Port on MANY Processors that are
commonly used in ES design.
16-2-2010 5959
Embedded
Development Tools
16-2-2010 6060
16-2-2010 6161
EMBEDDED DEVELOPMENT TOOLS
IDE – integrated development environment
{Hardware & peripherals simulator, project
manager, debugger, linker, Compiler,
PROM
Assembler}
Programmer
ROM Emulator
Chip
Programmer
CPU Emulator
In-Circuit-
Emulator
In-Circuit-
Oscilloscope , Logic Probe, DVM, Logic-
Debugger
Analyzer etc…
16-2-2010 6262
PROM Programmer
16-2-2010 6363
ROM Emulator
ROM
EMULATOR
HOST
TARGET
Board
16-2-2010 6464
Chip programmer
CPU
Programmer
HOST
TARGET
Board
16-2-2010 6565
Device Programmer Tools (for PIC µC)
• PRO MATE II Universal Programmer
• PICSTART Plus
• PROPIC XP
16-2-2010 6666
Others Software Tools
MPLAB IDE for PIC Microcontrollers
MPASM (Assembler)
MPLAB-C (C Compiler)
MPLAB-SIM (Simulator)
Other Compilers
Kiel C (for Intel family µCs)
Hi-Tech C
CCS C
Pacific C
16-2-2010 6767
Issues in Embedded System Designs
q Energy-efficient
q Real-time
q Safety
q Upgradeable
q Cost sensitive
q Security
16-2-2010 6868
Energy efficiency:
Must run for years on a tiny battery
(Hearing aid, Pacemaker and Remote operating devices)
Real-time:
Great harm is done, if deadlines are missed.
(process control, avionics, weapons)
Few time constraints (microwave)
16-2-2010 6969
Safety critical:
Device is safety critical (nuclear plant)
Some processes in furnace petrochemical
Upgradeability:
Impossible to update
(spacecraft, pacemaker)
Availability / fault-tolerance
Must be operating all the time (pacemaker, spacecraft control)
Can shutdown at any time (cell phone)
16-2-2010 7070
Typical Application
Development using
AT89C2051
16-2-2010 7171
Architecture of 8051 Family
16-2-2010 7272
Pin Diagram of 8051 µC
16-2-2010 7373
AT89C2051 Micro controller
16-2-2010 7474
Pin configuration of AT89C2051
16-2-2010 7575
Minimum configuration - AT89C2051
16-2-2010 7676
16-2-2010 7777
Compiler for the project
16-2-2010 7878
Operation of the Project
16-2-2010 7979
16-2-2010 8080
Circuit Diagram for the project
16-2-2010 8181
LED Pattern
displayed for different DICE numbers
16-2-2010 8282
16-2-2010 8383
16-2-2010 8484
Software coding (in C)
16-2-2010 8585
16-2-2010 8686
16-2-2010 8787
16-2-2010 8888
16-2-2010 8989
16-2-2010 9090
Exemplary
Embedded system
Applications
16-2-2010 9191
Breakthrough in Embedded System Designs
NOKIA
888
The Real Time
Cell phone
16-2-2010 9292
Embedded systems in Passenger Car
Engine Anti- Power
Control Lock Lighting A/C Locks
Brakes
Trans- Active Dash- Power Power
mission Suspension
board Seats Windows
Control
Airbag
16-2-2010 9393
Automotive embedded systems
•
Today’s high-end automobile have > 80
microprocessors
•
4-bit microcontroller checks seat belt
•
microcontrollers run dashboard devices
•
16/32-bit microprocessor controls engine
•
Millions lines of code
16-2-2010 9494
BMW 850i Brake and Stability control
system
n Anti-lock brake system (ABS):
pumps brakes to reduce skidding.
n Electronic stability control (ASC+T):
controls brakes and engine to improve
stability.
16-2-2010 9595
Embedded system in Digital camera
Digital camera chip
CCD
CCD preprocessor Pixel coprocessor D2A
A2D
lens
JPEG codec Microcontroller Multiplier/Accum
DMA controller Display ctrl
Memory controller ISA bus interface UART LCD ctrl
16-2-2010 9696
Click to edit Master text styles
Second level
● Third level
● Fourth level
● Fifth level
16-2-2010 9797
Market Potential for Embedded Systems
According to analyst firm,
the embedded system opportunity is expected to touch
• US$ 360 billion (in terms of devices)
• US$ 36 billion (up from the existing US$ 2 billion).
Experts also predict that there will be a ten-fold
increase in the number of people employed in the
embedded systems industry,
from the current 60,000 professionals to over six lakh
people by 2015.
16-2-2010 - Source: NASSCOM
9898
A few of the Embedded Majors
q HCL INFOSYS
q TCS Cognizant
q Agilent Technologies Boeing
q BPL Ford
q Hitachi Hyundai
q Philips Playstation
q Sega Siemens
q Sony SCM Microsystems
q TATA ELXSI Texas Instruments
q Tektronix Vestion
16-2-2010 9999
Embedded Systems Companies in Bangalore
Sadhanasoft Click Technologies (I) Pvt. Ltd. Nihar Infoway Ltd. Infobahn (India) Pvt. Ltd.
Vision Comptech Integrators Ltd
Koenig Solutions Pvt. Ltd.
Datamation Consultants Pvt. Ltd. Convergent Communications (India) Pv
Optimal Infotech Pvt. Ltd. Compucom Software Ltd. Surya Soft-Tech Ltd Kale Consultants Ltd
Surya Soft-Tech Ltd
Datamation Consultants Pvt. Ltd. Mphasis-BFL Ltd Rhombus Technologies Pvt. Ltd.
Mphasis-BFL Ltd Global Automation ( Kale Consultants Ltd MindEdge Solutions
Karishma Software Ltd. Parsec Technologies (India) Ltd.Binary Semantics Ltd. Netmumbai
Virgosys Software Pvt. Ltd. Polaris Software Lab Ltd Cybersol Technologies Pvt Ltd SolutionNet India Pvt. Ltd.
IQura Technologies Pvt. Ltd. SDI Infotech Pvt. Ltd. Gateway WebSystems Pvt. Ltd.
Datum Technologys (India) Ltd
Worldwide Infotech Inc. Java Softech Pvt. Ltd. Binary Semantics Ltd. Learnet India Ltd.
Intrepid Solutions Private Ltd KPIT Infosystems Ltd
Global Software Initiatives Pvt. Webspectrum
Ltd. Software Pvt. Ltd.
iBilt Technologies Ltd iTech Workshop Pvt. Ltd. Datum Technologys (India) LtdPerfect E Com Solution Pvt Ltd.
16-2-2010 100100
References
16-2-2010 101101
References (Contd.)
16-2-2010 102102
References (Contd.)
16-2-2010 103103
Thank You
for your PATIENCE.
16-2-2010 104104