Sunteți pe pagina 1din 81

EmbeddedSystemsandIts

Scope Scope
EmbeddedSystem EmbeddedSystem
An embedded system is a special-
purpose system in which is designed
for specific applications
Hardwareisdrivenandcontrolled
bysoftware
Interface
Hardware
Software
WhatisanEmbeddedSystem? WhatisanEmbeddedSystem? WhatisanEmbeddedSystem? WhatisanEmbeddedSystem? WhatisanEmbeddedSystem? WhatisanEmbeddedSystem? WhatisanEmbeddedSystem? WhatisanEmbeddedSystem?
A AA A general general general general- -- -purpose purpose purpose purpose definition definition definition definition of of of of
embedded embedded embedded embedded systems systems systems systems is is is is that that that that they they they they are are are are
devices devices devices devices used used used used to to to to monitor monitor monitor monitor ,control ,control ,control ,control or or or or
assist assist assist assist the the the the operation operation operation operation of of of of equipment, equipment, equipment, equipment, assist assist assist assist the the the the operation operation operation operation of of of of equipment, equipment, equipment, equipment,
machinery machinery machinery machinery or or or or plant plant plant plant. .. . Embedded Embedded Embedded Embedded reflects reflects reflects reflects
the the the the fact fact fact fact that that that that they they they they are are are are an an an an integral integral integral integral part part part part of of of of
the the the the system system system system. .. .
Hardware+Software Hardware+Software Hardware+Software Hardware+Software
An An An An An An An An embedded embedded embedded embedded embedded embedded embedded embedded system system system system system system system system is is is is is is is is a aa aa aa a special special special special special special special special- -- -- -- -purpose purpose purpose purpose purpose purpose purpose purpose
computer computer computer computer computer computer computer computer system system system system system system system system designed designed designed designed designed designed designed designed to to to to to to to to perform perform perform perform perform perform perform perform one one one one one one one one or or or or or or or or
a aa aa aa a few few few few few few few few dedicated dedicated dedicated dedicated dedicated dedicated dedicated dedicated functions, functions, functions, functions, functions, functions, functions, functions, often with real-time
computing constraints. It is usually embedded
as part of a complete device including
hardware and mechanical parts. In contrast, a hardware and mechanical parts. In contrast, a
general-purpose computer, such as a
personal computer, can do many different
tasks depending on programming. Embedded Embedded Embedded Embedded
systems systems systems systems control control control control many many many many of of of of the the the the common common common common devices devices devices devices
in in in in use use use use today today today today. .. .
-- Wikipedia
Definition
Hardtodefine Hardtodefine Hardtodefine Hardtodefine
Computingsystemsembeddedwithin Computingsystemsembeddedwithin Computingsystemsembeddedwithin Computingsystemsembeddedwithin
electronicdevices electronicdevices electronicdevices electronicdevices electronicdevices electronicdevices electronicdevices electronicdevices
Nearlyanycomputingsystemother Nearlyanycomputingsystemother Nearlyanycomputingsystemother Nearlyanycomputingsystemother
thanadesktopcomputer thanadesktopcomputer thanadesktopcomputer thanadesktopcomputer
GeneralDefinition GeneralDefinition GeneralDefinition GeneralDefinition
Inbuiltintelligence
UsesDedicatedSoftware UsesDedicatedSoftware
Oftennorealkeyboard
Oftenlimiteddisplay
CLASSIFICATIONSOFEMBEDDEDSYSTEM CLASSIFICATIONSOFEMBEDDEDSYSTEM CLASSIFICATIONSOFEMBEDDEDSYSTEM CLASSIFICATIONSOFEMBEDDEDSYSTEM
1. 1. 1. 1. SmallScaleEmbeddedSystem SmallScaleEmbeddedSystem SmallScaleEmbeddedSystem SmallScaleEmbeddedSystem
2. 2. 2. 2. MediumScaleEmbeddedSystem MediumScaleEmbeddedSystem MediumScaleEmbeddedSystem MediumScaleEmbeddedSystem
3. 3. 3. 3. SophisticatedEmbeddedSystem SophisticatedEmbeddedSystem SophisticatedEmbeddedSystem SophisticatedEmbeddedSystem
SMALLSCALEEMBEDDEDSYSTEM SMALLSCALEEMBEDDEDSYSTEM SMALLSCALEEMBEDDEDSYSTEM SMALLSCALEEMBEDDEDSYSTEM
Single8bitor16bitMicrocontroller. Single8bitor16bitMicrocontroller. Single8bitor16bitMicrocontroller. Single8bitor16bitMicrocontroller.
Littlehardwareandsoftwarecomplexity. Littlehardwareandsoftwarecomplexity. Littlehardwareandsoftwarecomplexity. Littlehardwareandsoftwarecomplexity.
TheyMayevenbebatteryoperated. TheyMayevenbebatteryoperated. TheyMayevenbebatteryoperated. TheyMayevenbebatteryoperated.
UsuallyCisusedfordevelopingthesesystem. UsuallyCisusedfordevelopingthesesystem. UsuallyCisusedfordevelopingthesesystem. UsuallyCisusedfordevelopingthesesystem.
Theneedtolimitpowerdissipationwhensystemisrunning Theneedtolimitpowerdissipationwhensystemisrunning Theneedtolimitpowerdissipationwhensystemisrunning Theneedtolimitpowerdissipationwhensystemisrunning
continuously. continuously. continuously. continuously.
Programmingtools: Programmingtools: Programmingtools: Programmingtools:
Editor,AssemblerandCrossAssembler Editor,AssemblerandCrossAssembler Editor,AssemblerandCrossAssembler Editor,AssemblerandCrossAssembler
MEDIUMSCALEEMBEDDEDSYSTEM MEDIUMSCALEEMBEDDEDSYSTEM MEDIUMSCALEEMBEDDEDSYSTEM MEDIUMSCALEEMBEDDEDSYSTEM
Single Single Single Single or or or or few few few few 16 16 16 16 or or or or 32 32 32 32 bit bit bit bit microcontrollers microcontrollers microcontrollers microcontrollers or or or or
Digital Digital Digital Digital Signal Signal Signal Signal Processors Processors Processors Processors (DSP) (DSP) (DSP) (DSP) or or or or Reduced Reduced Reduced Reduced
Instructions Instructions Instructions Instructions Set Set Set Set Computers Computers Computers Computers (RISC) (RISC) (RISC) (RISC). .. .
Both Both Both Both hardware hardware hardware hardware and and and and software software software software complexity complexity complexity complexity. .. .
Programming Programming Programming Programming tools tools tools tools: :: :
RTOS, RTOS, RTOS, RTOS, Source Source Source Source code code code code Engineering Engineering Engineering Engineering Tool, Tool, Tool, Tool,
Simulator, Simulator, Simulator, Simulator, Debugger Debugger Debugger Debugger and and and and Integrated Integrated Integrated Integrated
Development Development Development Development Environment Environment Environment Environment (IDE) (IDE) (IDE) (IDE). .. .
SOPHISTICATEDEMBEDDEDSYSTEM SOPHISTICATEDEMBEDDEDSYSTEM SOPHISTICATEDEMBEDDEDSYSTEM SOPHISTICATEDEMBEDDEDSYSTEM
Enormous Enormous Enormous Enormous hardware hardware hardware hardware and and and and software software software software complexity complexity complexity complexity
Which Which Which Which may may may may need need need need scalable scalable scalable scalable processor processor processor processor or or or or configurable configurable configurable configurable processor processor processor processor and and and and
programming programming programming programming logic logic logic logic arrays arrays arrays arrays. .. .
Constrained Constrained Constrained Constrained by by by by the the the the processing processing processing processing speed speed speed speed available available available available in in in in their their their their hardware hardware hardware hardware
units units units units. .. .
Programming Programming Programming Programming Tools Tools Tools Tools: :: :
For For For For these these these these systems systems systems systems may may may may not not not not be be be be readily readily readily readily available available available available at at at at a aa a
reasonable reasonable reasonable reasonable cost cost cost cost or or or or may may may may not not not not be be be be available available available available at at at at all all all all. .. . A AA A compiler compiler compiler compiler or or or or
retargetable retargetable retargetable retargetable compiler compiler compiler compiler might might might might have have have have to to to to br br br br developed developed developed developed for for for for this this this this. .. .
EmbeddedSystemSegments EmbeddedSystemSegments EmbeddedSystemSegments EmbeddedSystemSegments
1. 1. 1. 1. Microprocessor Microprocessor Microprocessor Microprocessor
2. 2. 2. 2. Microcontroller Microcontroller Microcontroller Microcontroller 2. 2. 2. 2. Microcontroller Microcontroller Microcontroller Microcontroller
3.DSP 3.DSP 3.DSP 3.DSP
4.DCS 4.DCS 4.DCS 4.DCS
5.VHDL 5.VHDL 5.VHDL 5.VHDL
GENERALMICROCOMPUTERARCHITECTURE GENERALMICROCOMPUTERARCHITECTURE GENERALMICROCOMPUTERARCHITECTURE GENERALMICROCOMPUTERARCHITECTURE
CPU CPU CPU CPU
MEMORY MEMORY MEMORY MEMORY
UNIT UNIT UNIT UNIT
CONTROL
UNIT
ALU
CPU CPU CPU CPU
INPUT INPUT INPUT INPUT
UNIT UNIT UNIT UNIT
OUTPUT OUTPUT OUTPUT OUTPUT
UNIT UNIT UNIT UNIT
CONTROL CONTROL CONTROL CONTROL
UNIT UNIT UNIT UNIT
ALU ALU ALU ALU
EMBEDDEDPROCESSOR EMBEDDEDPROCESSOR EMBEDDEDPROCESSOR EMBEDDEDPROCESSOR
Special Special Special Special microprocessors microprocessors microprocessors microprocessors & && & microcontrollers microcontrollers microcontrollers microcontrollers
often often often often called, called, called, called, Embedded Embedded Embedded Embedded processors processors processors processors. .. .
An An An An embedded embedded embedded embedded processor processor processor processor is is is is used used used used when when when when fast fast fast fast An An An An embedded embedded embedded embedded processor processor processor processor is is is is used used used used when when when when fast fast fast fast
processing processing processing processing fast fast fast fast context context context context- -- -switching switching switching switching & && & atomic atomic atomic atomic ALU ALU ALU ALU
operations operations operations operations are are are are needed needed needed needed. .. .
Examples:ARM7,INTELi960,AMD29050. Examples:ARM7,INTELi960,AMD29050. Examples:ARM7,INTELi960,AMD29050. Examples:ARM7,INTELi960,AMD29050.
EmbeddedDevelopments EmbeddedDevelopments EmbeddedDevelopments EmbeddedDevelopments
Microcontroller Microcontroller Microcontroller Microcontroller Microprocessor Microprocessor Microprocessor Microprocessor Microcontroller Microcontroller Microcontroller Microcontroller Microprocessor Microprocessor Microprocessor Microprocessor
PROCESSOR PROCESSOR PROCESSOR PROCESSOR
A AA A Processor Processor Processor Processor is is is is the the the the heart heart heart heart of of of of the the the the Embedded Embedded Embedded Embedded
System System System System. .. .
For For For For an an an an embedded embedded embedded embedded system system system system designer designer designer designer knowledge knowledge knowledge knowledge of of of of
microprocessor microprocessor microprocessor microprocessor and and and and microcontroller microcontroller microcontroller microcontroller is is is is must must must must. .. . microprocessor microprocessor microprocessor microprocessor and and and and microcontroller microcontroller microcontroller microcontroller is is is is must must must must. .. .
Two Two Two Two Essential Essential Essential Essential Units Units Units Units: :: : Operations Operations Operations Operations
Control Control Control Control Unit Unit Unit Unit (CU), (CU), (CU), (CU), Fetch Fetch Fetch Fetch
Execution Execution Execution Execution Unit Unit Unit Unit (EU) (EU) (EU) (EU) Execute Execute Execute Execute
VARIOUSPROCESSOR VARIOUSPROCESSOR VARIOUSPROCESSOR VARIOUSPROCESSOR
1.GeneralPurposeprocessor(GPP) 1.GeneralPurposeprocessor(GPP) 1.GeneralPurposeprocessor(GPP) 1.GeneralPurposeprocessor(GPP)
Microprocessor Microprocessor Microprocessor Microprocessor
Microcontroller Microcontroller Microcontroller Microcontroller
EmbeddedProcessor EmbeddedProcessor EmbeddedProcessor EmbeddedProcessor
DigitalsignalProcessor DigitalsignalProcessor DigitalsignalProcessor DigitalsignalProcessor
2.ApplicationSpecificSystemProcessor 2.ApplicationSpecificSystemProcessor 2.ApplicationSpecificSystemProcessor 2.ApplicationSpecificSystemProcessor
(ASSP) (ASSP) (ASSP) (ASSP)
3.MultiProcessorSystemusingGPPs 3.MultiProcessorSystemusingGPPs 3.MultiProcessorSystemusingGPPs 3.MultiProcessorSystemusingGPPs
MICROPROCESSOR MICROPROCESSOR MICROPROCESSOR MICROPROCESSOR
A AA A microprocessor microprocessor microprocessor microprocessor is is is is a aa a single single single single chip chip chip chip semi semi semi semi conductor conductor conductor conductor
device device device device also also also also which which which which is is is is a aa a computer computer computer computer on on on on chip, chip, chip, chip, but but but but not not not not a aa a
complete complete complete complete computer computer computer computer. .. .
Its Its Its Its CPU CPU CPU CPU contains contains contains contains an an an an ALU, ALU, ALU, ALU, a aa a program program program program counter, counter, counter, counter, a aa a
stack stack stack stack pointer, pointer, pointer, pointer, some some some some working working working working register, register, register, register, a aa a clock clock clock clock
timing timing timing timing circuit circuit circuit circuit and and and and interrupt interrupt interrupt interrupt circuit circuit circuit circuit on on on on a aa a single single single single chip chip chip chip. .. .
To To To To make make make make complete complete complete complete micro micro micro micro computer, computer, computer, computer, one one one one must must must must add add add add
memory memory memory memory usually usually usually usually ROM ROM ROM ROM and and and and RAM, RAM, RAM, RAM, memory memory memory memory
decoder, decoder, decoder, decoder, an an an an oscillator oscillator oscillator oscillator and and and and a aa a number number number number of of of of serial serial serial serial and and and and
parallel parallel parallel parallel ports ports ports ports. .. .
VARIOUSMICROPROCESSORS VARIOUSMICROPROCESSORS VARIOUSMICROPROCESSORS VARIOUSMICROPROCESSORS
Intel Intel Intel Intel
4004,4040 4004,4040 4004,4040 4004,4040
8080,8085 8080,8085 8080,8085 8080,8085
8086,8088, 8086,8088, 8086,8088, 8086,8088,
80186,80188 80186,80188 80186,80188 80186,80188
80286,80386 80286,80386 80286,80386 80286,80386
x86 x86 x86 x86- -- -64 64 64 64 , ,, ,
Zilog Zilog Zilog Zilog
Z80,Z180,eZ80 Z80,Z180,eZ80 Z80,Z180,eZ80 Z80,Z180,eZ80
Z8,eZ8 Z8,eZ8 Z8,eZ8 Z8,eZ8
andothers andothers andothers andothers
x86 x86 x86 x86- -- -64 64 64 64 , ,, ,
Pentium1,2,3,4 Pentium1,2,3,4 Pentium1,2,3,4 Pentium1,2,3,4
Motorola Motorola Motorola Motorola
6800 6800 6800 6800
6809 6809 6809 6809
68000 68000 68000 68000
G3,G4,G5 G3,G4,G5 G3,G4,G5 G3,G4,G5
ProjectDevelopmentUsingMicroprocessor ProjectDevelopmentUsingMicroprocessor ProjectDevelopmentUsingMicroprocessor ProjectDevelopmentUsingMicroprocessor
Programmable Programmable Programmable Programmable
Peripheral Peripheral Peripheral Peripheral
Interface Interface Interface Interface
(PPI)8255 (PPI)8255 (PPI)8255 (PPI)8255
Keyboard Keyboard Keyboard Keyboard
Interface Interface Interface Interface
8279 8279 8279 8279
DirectMemory DirectMemory DirectMemory DirectMemory
Access Access Access Access
Controller Controller Controller Controller
8259 8259 8259 8259
Microprocessor Microprocessor Microprocessor Microprocessor
8085 8085 8085 8085
CPU CPU CPU CPU
RAM RAM RAM RAM
7414,7412 7414,7412 7414,7412 7414,7412
USART USART USART USART
16C550 16C550 16C550 16C550
TimerIC TimerIC TimerIC TimerIC
8253 8253 8253 8253
ROM ROM ROM ROM
8741 8741 8741 8741
Interrupts Interrupts Interrupts Interrupts
8214 8214 8214 8214
MICROCONTROLLER MICROCONTROLLER MICROCONTROLLER MICROCONTROLLER
A microcontroller microcontroller microcontroller microcontroller is a functional computer
system-on-a-chip. It contains a processor,
memory, and programmable input/output
peripherals. peripherals.
Microcontrollers include an integrated
CPU, memory (a small amount of RAM,
program memory, or both) and peripherals
capable of input and output.
VARIOUSMICROCONTROLLERS VARIOUSMICROCONTROLLERS VARIOUSMICROCONTROLLERS VARIOUSMICROCONTROLLERS
INTEL
8031,8032,8051,8052,8751,8752
PIC
8-bitPIC16,PIC18,
16-bitDSPIC33/PIC24,
PIC16C7x
Motorola
MC68HC11
Microcontroller Microcontroller
ProjectDevelopmentUsingMicrocontroller ProjectDevelopmentUsingMicrocontroller ProjectDevelopmentUsingMicrocontroller ProjectDevelopmentUsingMicrocontroller
Microcontroller Microcontroller Microcontroller Microcontroller
PIC16F877A PIC16F877A PIC16F877A PIC16F877A
CPU CPU CPU CPU
Timer/ Timer/ Timer/ Timer/
Counter Counter Counter Counter
3 33 3
I/Oports I/Oports I/Oports I/Oports
33lines 33lines 33lines 33lines
ADC ADC ADC ADC
8Channel 8Channel 8Channel 8Channel
10bit 10bit 10bit 10bit
Additional Additional Additional Additional
Features Features Features Features
USART,SPI, USART,SPI, USART,SPI, USART,SPI,
I2C,PWM, I2C,PWM, I2C,PWM, I2C,PWM,
ICSP ICSP ICSP ICSP
ROM ROM ROM ROM
8K 8K 8K 8K
RAM RAM RAM RAM
368Bytes 368Bytes 368Bytes 368Bytes
EEPROM EEPROM EEPROM EEPROM
256Bytes 256Bytes 256Bytes 256Bytes
OTHERHARDWARE OTHERHARDWARE OTHERHARDWARE OTHERHARDWARE
PowerSource PowerSource PowerSource PowerSource
ClockOscillator ClockOscillator ClockOscillator ClockOscillator
RealTimeClock(RTC) RealTimeClock(RTC) RealTimeClock(RTC) RealTimeClock(RTC)
ResetCircuit,Power ResetCircuit,Power ResetCircuit,Power ResetCircuit,Power- -- -upResetandwatchdogtimerReset upResetandwatchdogtimerReset upResetandwatchdogtimerReset upResetandwatchdogtimerReset
Memory Memory Memory Memory
I/OPorts,I/OBuses I/OPorts,I/OBuses I/OPorts,I/OBuses I/OPorts,I/OBuses
InterruptHandler InterruptHandler InterruptHandler InterruptHandler
DACandADC DACandADC DACandADC DACandADC
LCDandLEDDisplay LCDandLEDDisplay LCDandLEDDisplay LCDandLEDDisplay
Keypad/Keyboard Keypad/Keyboard Keypad/Keyboard Keypad/Keyboard
SOFTWARE
SIMULATOR SIMULATOR SIMULATOR SIMULATOR
Masm Masm Masm Masm
SOFTWARE SOFTWARE SOFTWARE SOFTWARE
C CC C
C++ C++ C++ C++
DotNet DotNet DotNet DotNet
COMPILER COMPILER COMPILER COMPILER
RIDE RIDE RIDE RIDE
KEIL KEIL KEIL KEIL
ExampleofEmbeddedSystem
ExampleofEmbeddedSystem
Householdappliances: Householdappliances: Householdappliances: Householdappliances:
Microwaveovens,Television,DVD Microwaveovens,Television,DVD Microwaveovens,Television,DVD Microwaveovens,Television,DVD
Players&Recorders Players&Recorders Players&Recorders Players&Recorders
Audioplayers Audioplayers Audioplayers Audioplayers
Integratedsystemsinaircraftsand Integratedsystemsinaircraftsand Integratedsystemsinaircraftsand Integratedsystemsinaircraftsand
missiles missiles missiles missiles
APPLICATIONS APPLICATIONS APPLICATIONS APPLICATIONS
missiles missiles missiles missiles
Cellulartelephones Cellulartelephones Cellulartelephones Cellulartelephones
ElectricandElectronicMotorcontrollers ElectricandElectronicMotorcontrollers ElectricandElectronicMotorcontrollers ElectricandElectronicMotorcontrollers
Enginecontrollersinautomobiles Enginecontrollersinautomobiles Enginecontrollersinautomobiles Enginecontrollersinautomobiles
Calculators Calculators Calculators Calculators
Medicalequipments Medicalequipments Medicalequipments Medicalequipments
Videogames Videogames Videogames Videogames
Digitalmusicalinstruments,etc. Digitalmusicalinstruments,etc. Digitalmusicalinstruments,etc. Digitalmusicalinstruments,etc.
ExampleofEmbeddedSystem
TrafficSignal
ExampleofEmbeddedSystem
MP3PLAYER
ExampleofEmbeddedSystem
CAR
ExampleofEmbeddedSystem
ExampleofEmbeddedSystem
Examples
Examples
Airconditioner
ATMmachine
Batterycharger
Digitalcamera
Navigationsystem
PDA
Photocopier
Printer
Digitalcamera
DVDplayer
Faxmachine
Homesecuritysystem
Mobilephone
Modem
Printer
Router
Scanner
TV
Videogameconsole
Wearablecomputer
Designedtodoaspecifictask.
Simplifiedsystemhardware.
Lesscostly.
Intheformofsmallcomputerizedpartsin
largerdevices.
Requiredlimited computerhardware
resources.
Littlememoryandsmallkeyboardor
screen.
MP3players
Mobilephones
GPSreceivers
Printers
Programmabledataterminal
MobilePhone MobilePhone
HomeAppliances
Satellites
Communications
Automotiveautomaticbraking
Militaryapplications Missileguidancesystems
Industrialapplications
Robotics
EmbeddedSystemSegments EmbeddedSystemSegments EmbeddedSystemSegments EmbeddedSystemSegments
EMBEDDEDAUTOMATIONSIN EMBEDDEDAUTOMATIONSIN EMBEDDEDAUTOMATIONSIN EMBEDDEDAUTOMATIONSIN
EVERYYEAR EVERYYEAR EVERYYEAR EVERYYEAR
MPMCDSPDCSVHDL MPMCDSPDCSVHDL MPMCDSPDCSVHDL MPMCDSPDCSVHDL
Marketishere!
Source:BCC,Inc Source:BCC,Inc Source:BCC,Inc Source:BCC,Inc
History
In the earliest years of
computers in 1930
40s, computers were
sometimes dedicated
to a single purpose to a single purpose
task.
One of the first
recognizably modern
embedded system
was the Apollo
Guidance Computer,
developed by Charles
Stark Draper at the
MIT Instrumentation
Laboratory.
History
Since these early applications in
the 1960s, embedded systems
have come down in price and
there has been a dramatic rise in
processing power and functionality. processing power and functionality.
The first microprocessor for
example, the Intel 4004 was
designed for calculators and other
small systems but still required
many external memory and
support chips.
History
By the mid-1980s, most of the
common previously external system
components had been integrated
into the same chip as the processor
and this modern form of the and this modern form of the
microcontroller allowed an even
more widespread use, which by the
end of the decade were the norm
rather than the exception for almost
all electronics devices.
Characteristics(1/4)
Special-purpose
Typically,isdesigned
toexecuteasingle
program,repeatedly program,repeatedly
Itusedtobesingle-
purpose
Now,multi-functioned,
butsingle-purpose
TacticandStrategy
Characteristics(2/4)
Tightlyconstrained
Lowcost
Simplesystems
Fewercomponents Fewercomponents
based
Performsfunctions
fastenough
Minimumpower
Characteristics(3/4)
Reactiveandreal-
time
Reactive:Continually
reactstoexternal reactstoexternal
events
Real-time:Must
computecertain
resultsinreal-time
Characteristics(4/4)
Hardwareandsoftware
co-exist
The software written for
embedded systems is embedded systems is
often called firmware
Is stored in read-only
memory or Flash memory
chips rather than a disk
drive
Embeddedsystemdesign Embeddedsystemdesign Embeddedsystemdesign Embeddedsystemdesign Embeddedsystemdesign Embeddedsystemdesign Embeddedsystemdesign Embeddedsystemdesign
requirement requirement requirement requirement requirement requirement requirement requirement
Computerdesignrequirement
System-levelrequirement
ChallengesandIssuesin
EmbeddedSoftwareDevelopment
EmbeddedSystem EmbeddedSystem EmbeddedSystem EmbeddedSystem EmbeddedSystem EmbeddedSystem EmbeddedSystem EmbeddedSystem
DevelopmentProcess DevelopmentProcess DevelopmentProcess DevelopmentProcess DevelopmentProcess DevelopmentProcess DevelopmentProcess DevelopmentProcess
Determinetherequirementsoftheembeddedsystem
Designthesystemarchitecture Designthesystemarchitecture
Selecttheoperatingsystem
Choosetheprocessorandtheassociated
peripherals
Choosethedevelopmentplatform
Codetheapplicationandoptimizethecode
accordingtocodeoptimizationguidelines
Verifythesoftwareonthehostsystem
Verifythesoftwareonthetargetsystem
EmbeddedTools EmbeddedTools EmbeddedTools EmbeddedTools EmbeddedTools EmbeddedTools EmbeddedTools EmbeddedTools
CrossAssembler/Compiler
Linker
Debugger Debugger
Simulator
InCircuitEmulator
SIMULATOR SIMULATOR SIMULATOR SIMULATOR
EmbeddedSystem EmbeddedSystem EmbeddedSystem EmbeddedSystem EmbeddedSystem EmbeddedSystem EmbeddedSystem EmbeddedSystem
DevelopmentIDE DevelopmentIDE DevelopmentIDE DevelopmentIDE DevelopmentIDE DevelopmentIDE DevelopmentIDE DevelopmentIDE
[IntegratedDevelopmentEnvironment] [IntegratedDevelopmentEnvironment] [IntegratedDevelopmentEnvironment] [IntegratedDevelopmentEnvironment] [IntegratedDevelopmentEnvironment] [IntegratedDevelopmentEnvironment] [IntegratedDevelopmentEnvironment] [IntegratedDevelopmentEnvironment]
KEIL KEIL KEIL KEIL - -- - ATMEL80XX ATMEL80XX ATMEL80XX ATMEL80XX KEIL KEIL KEIL KEIL - -- - ATMEL80XX ATMEL80XX ATMEL80XX ATMEL80XX
CCSCCOMPILER CCSCCOMPILER CCSCCOMPILER CCSCCOMPILER - -- - PIC12,14,16,18 PIC12,14,16,18 PIC12,14,16,18 PIC12,14,16,18
CODEVISIONSTUDIO CODEVISIONSTUDIO CODEVISIONSTUDIO CODEVISIONSTUDIO - -- - AVRATMEGA AVRATMEGA AVRATMEGA AVRATMEGA
CODECOMPOSERSTUDIO CODECOMPOSERSTUDIO CODECOMPOSERSTUDIO CODECOMPOSERSTUDIO - -- - TMS20XX TMS20XX TMS20XX TMS20XX
MPLAB- IDE
MPLAB MPLAB MPLAB MPLAB MPLAB MPLAB MPLAB MPLAB- -- -- -- - IDE IDE IDE IDE IDE IDE IDE IDE
MPLABIDEisasoftwareprogramthat MPLABIDEisasoftwareprogramthat MPLABIDEisasoftwareprogramthat MPLABIDEisasoftwareprogramthat
runsonaPCtodevelopapplicationsfor runsonaPCtodevelopapplicationsfor runsonaPCtodevelopapplicationsfor runsonaPCtodevelopapplicationsfor
usingMicrochipmicrocontrollers.Itis usingMicrochipmicrocontrollers.Itis usingMicrochipmicrocontrollers.Itis usingMicrochipmicrocontrollers.Itis
calledanIntegratedDevelopment calledanIntegratedDevelopment calledanIntegratedDevelopment calledanIntegratedDevelopment calledanIntegratedDevelopment calledanIntegratedDevelopment calledanIntegratedDevelopment calledanIntegratedDevelopment
Environment,orIDE. Environment,orIDE. Environment,orIDE. Environment,orIDE.
ComponentsofMPLABIDE ComponentsofMPLABIDE ComponentsofMPLABIDE ComponentsofMPLABIDE ComponentsofMPLABIDE ComponentsofMPLABIDE ComponentsofMPLABIDE ComponentsofMPLABIDE
ProjectManager ProjectManager ProjectManager ProjectManager- -- -Editor Editor Editor Editor
Assembler/LinkerandLanguage Assembler/LinkerandLanguage Assembler/LinkerandLanguage Assembler/LinkerandLanguage
Tools Tools Tools Tools Tools Tools Tools Tools
Debugger Debugger Debugger Debugger
Simulator Simulator Simulator Simulator
CompilerLanguageTools CompilerLanguageTools CompilerLanguageTools CompilerLanguageTools
Programmers Programmers Programmers Programmers
In In In In- -- -CircuitDebugger CircuitDebugger CircuitDebugger CircuitDebugger
ProjectDevelopment ProjectDevelopment ProjectDevelopment ProjectDevelopment ProjectDevelopment ProjectDevelopment ProjectDevelopment ProjectDevelopment
Lowlevellanguages:Assembly
language
Highlevellanguages:C,C++,Linux Highlevellanguages:C,C++,Linux
microcontrollerassemblycodesare
transparenttotheuser
Ceasilyportable
mayrequirelotofmemoryspace
CCompiler CCompiler CCompiler CCompiler
FieldsofEmbeddedSystem FieldsofEmbeddedSystem FieldsofEmbeddedSystem FieldsofEmbeddedSystem
MARKETSEGMENTATION MARKETSEGMENTATION MARKETSEGMENTATION MARKETSEGMENTATION
Chemicalindustry Chemicalindustry Chemicalindustry Chemicalindustry
Cementindustry Cementindustry Cementindustry Cementindustry
NuclearPowerindustry NuclearPowerindustry NuclearPowerindustry NuclearPowerindustry
ThermalPowerindustry ThermalPowerindustry ThermalPowerindustry ThermalPowerindustry ThermalPowerindustry ThermalPowerindustry ThermalPowerindustry ThermalPowerindustry
HydroPowerindustry HydroPowerindustry HydroPowerindustry HydroPowerindustry
PulpandPaperindustry PulpandPaperindustry PulpandPaperindustry PulpandPaperindustry
GlassManufacturingindustry GlassManufacturingindustry GlassManufacturingindustry GlassManufacturingindustry
SugarIndustry SugarIndustry SugarIndustry SugarIndustry
AluminumPlant AluminumPlant AluminumPlant AluminumPlant
SteelPlant SteelPlant SteelPlant SteelPlant
FieldsofEmbeddedSystem FieldsofEmbeddedSystem FieldsofEmbeddedSystem FieldsofEmbeddedSystem
MachineControlApplications MachineControlApplications MachineControlApplications MachineControlApplications
BuildingManagementSystems BuildingManagementSystems BuildingManagementSystems BuildingManagementSystems
Textileindustry Textileindustry Textileindustry Textileindustry
TelecommunicationIndustry TelecommunicationIndustry TelecommunicationIndustry TelecommunicationIndustry TelecommunicationIndustry TelecommunicationIndustry TelecommunicationIndustry TelecommunicationIndustry
Biomedicalindustry Biomedicalindustry Biomedicalindustry Biomedicalindustry
Fertilizerindustry Fertilizerindustry Fertilizerindustry Fertilizerindustry
Automobileindustry Automobileindustry Automobileindustry Automobileindustry
Toysindustry Toysindustry Toysindustry Toysindustry
ConsumerElectronicsindustry ConsumerElectronicsindustry ConsumerElectronicsindustry ConsumerElectronicsindustry
Aeronauticalindustry Aeronauticalindustry Aeronauticalindustry Aeronauticalindustry
CraftsonLegoNXT
3.5millionjobsby2015,buttalentmissing 3.5millionjobsby2015,buttalentmissing 3.5millionjobsby2015,buttalentmissing 3.5millionjobsby2015,buttalentmissing
AccordingtoanISA-Ernst&Youngreportof2011,thisindustry
wasabout$6.5billionin2009andisexpectedtologacompound
annualgrowthrateof17.3percenttoreach$10.6billionin2012.
Thereportalsosuggeststhattheindustrypromises3.5millionjobs
by2015.Butunfortunately,theindustryisgrapplingwiththe
problemoftalentshortage.
Embeddedsoftwaresegmentnowoffersmorehigh-valueactivities
relatingtomiddleware,driverdesignandassociatedapplications.
Themainreasonforincreasedadoptionofembeddedsoftwareis
itsusebyelectronicscompaniesforincreaseddevicefunctionality,
reducedtime-to-marketandreductionincosts.
Rawtalent:keychallengeforcompanies Rawtalent:keychallengeforcompanies Rawtalent:keychallengeforcompanies Rawtalent:keychallengeforcompanies
Severalengineeringuniversitiesinthecountryarefar
fromunderstandingtherequirementsoftheindustry
andtrainthestudentsaccordingly.
Thishasresultedintotwoextremes,whereonone Thishasresultedintotwoextremes,whereonone
handtheindustryneedstalentandontheotherhand
thereisanabundanceofengineerswhohavenot
beentrainedinnecessaryskills.
Industryveteranstermtheseengineersasrawtalent
andtrainingtomakethemproductiveisakey
challengeforthem.
Companiesfaceatoughtimetryingtorecruittherightsetof
people.Therearecertainportionsintheentireembedded
ecosystemwheregenericelectronicsknowledgewillhelp.
Hardwaredesignisoneexample.Butthentherearecertain
othersegments,whichrequireagoodexperienceindevice
driver,softwareamplification,etc.Theindustryismissingthis
talentbigtime.
Roles Roles Roles Rolesavailable available available available
EmbeddedengineerswritethesoftwarethatcontrolstheVLSIchips.
Embeddedsoftwarecanbeanycodewhichinteractswiththehardware
layer,rangingfromthehardwareabstractionlayer,devicedrivers,
kernelprogrammingtoapplicationprogramming.
Totakeupembeddedsoftwaredevelopmentascareer,youneed
tohaveaworkingknowledgeofC,C++andJava,withsome
exposureto applicationsoftwaredevelopment.Ifyouhave
alreadydonesomeprogrammingforanembeddedsystem,you
canexpandyourhorizonsbybroadeningyourskillsets
Embeddedsoftwareisbeingdevelopedusingavarietyof
embeddedandreal-timeoperatingsystems,suchasembedded
NT,WindowsCEandRTLinux.Inaddition,avarietyof
developmenttoolsandIDEsforC,C++andJavaareavailable.
Youneedtolearnapplicationdevelopmentinthesevarious
environments.
Tobeasuccessfulprogrammer,youneedagood
understandingofdesignalternativeshowtochoosea
processor,anoperatingsystem,aprogramminglanguageso
thatyoucandevelopcost-effective,reliableembeddedsoftware
withminimaldevelopmenttime.Asmanyofthesystems
becomenetworkenabled,aworkingknowledgeofnetwork
programmingisalsoimportant.Also,youneedtobeawareof
thediversityofapplicationareasandthespecificrequirements
ofeach.
Asahardware/boarddesigner,youcouldworkonreference
boarddesign,newboarddesign,andboarddesignderivatives
andmodificationsonexistingboards.Referenceboardsare
usedtovalidatethecapabilitiesofdesignedsiliconchips.
Theembeddedhardwaredesignerisresponsibleforhardware
designschematic,PCBlayout,BOMcreation,hardware
boarddebuggingandtesting,andsystemintegrationtesting. boarddebuggingandtesting,andsystemintegrationtesting.
Desiredskillsarehardwaredesignusing8-/16-/32-bit
microcontrollers,microprocessor-basedsystems,designof
medium-frequencyboards,hardwaredesignofanalogue,
mixedsignalanddigital,andunderstanding/implementation
oftheEMIandEMCconceptstohardwaredesign.
Desiredqualificationsand Desiredqualificationsand Desiredqualificationsand Desiredqualificationsandskillset skillset skillset skillset
Theminimumrequirementisabachelors/mastersdegreein
engineeringwithspecialisationinelectronicsandelectricalor
computerscience.Butitispreferableforacandidatetohavesome
hardwareintegrationexperience,goodsoftwarecodingskillsand
theabilitytodealwithanddevelopalgorithmstosolveproblems. theabilitytodealwithanddevelopalgorithmstosolveproblems.
Today,universitiesareofferingspecialstreamslikesoftwaredesign
andengineering,microelectronicsandautomotiveembedded
system.Itisagreatideatoundergosuchacourseasitwillprovide
therequisiteindustryknowledgeinthefieldyouwanttopursuea
career.
VERYIMPORTANT
Oneimportantthingtorememberthough,
isthatyoushouldnotthinkaboutyourself
asonlyasoftwareguyorahardwareguy.
Rather,seeyourselfasmoreofasystems Rather,seeyourselfasmoreofasystems
person.Youshouldbeversatileenoughto
beabletotakerisksandchallengeswhen
troubleshootingaproblemattheboard
movingbetweenhardwareandsoftware
areas.
Career Career Career Careergrowthovertime growthovertime growthovertime growthovertime
Asyougainexperienceandknowledge,youwillberequired
toworkmoreindependentlymakingdecisions,developing
designsandsolvingproblems.Withfurtherexperience,you
maybecomeatechnicalspecialistorsupervisorinateamof
engineersortechnicians.Eventually,youmaybecomean
engineeringmanagerormoveintoothermanagerialor engineeringmanagerormoveintoothermanagerialor
completelytechnicaldomain.
Asafresheryoumighttypecastyourselfintoacertainrole.
Lateron,thisboundaryhastoblurtotally.Youhavetostart
understandingbothhardwareandsoftware,devicedrivers,
registermappingandapplicationsoftwaredevelopment.
Also,asembeddedsystemispartofmanyapplications,you
havetofigureoutthedomainknowledge.Forexample,ifyou
areworkingonembeddedsystemsfortelecomapplications,
youshouldbeabletofindouttheuserexperienceandwith
bettercreativitydecidewhichlayoutorcolourwilllookbetter.
Youstartbecomingasystemarchitectfinally.
Automotive,telecomandsecurityaretheindustrieswherea Automotive,telecomandsecurityaretheindustrieswherea
lotofembeddedworkisgoingon.Industrialandmedical
applications,whichwerelaggingbehind,arealsomaking
significantimprovements.Asaprofessional,youcanswitch
fromoneverticaltoanotherasyougainknowledgeofhowan
embeddedsystemworks.Oneaddedadvantageherewillbe
knowingtheparticularverticalrequirementsandapplyingthe
relatedskillset.
CETPAinNews
FutureofEmbeddedTechnology
Companies
SAMSUNG
STELECTRONICS
NOKIA NOKIA
APPLE
MOTOROLA
DRDO
ANDMANYMORE..
QUESTIONSPLEASE QUESTIONSPLEASE

S-ar putea să vă placă și