Você está na página 1de 104

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

Você também pode gostar