modified new embedded systems
-
Upload
priya-kosuri -
Category
Documents
-
view
218 -
download
0
Transcript of modified new embedded systems
-
8/7/2019 modified new embedded systems
1/36
Embedded System In Industrial ViewEmbedded System In Industrial View
Accel IT Academy, Chennai.Accel IT Academy, Chennai.
-
8/7/2019 modified new embedded systems
2/36
AgendaAgenda
Embedded SystemsEmbedded Systems
Domains of Embedded SystemsDomains of Embedded Systems
Building Blocks of Embedded Systems through an applicationBuilding Blocks of Embedded Systems through an application
-
8/7/2019 modified new embedded systems
3/36
Embedded SystemsEmbedded Systems
-
8/7/2019 modified new embedded systems
4/36
What is an Embedded System?What is an Embedded System?
ItIt isis thethe combinationcombination ofof hardwarehardware andand softwaresoftware forfor somesome controlcontrol
specificspecific applicationapplication
FormsForms aa componentcomponent ofof aa largerlarger systemsystem
ExpectedExpected toto functionfunction withwith minimalminimal humanhuman interventionintervention
IsIs aa realreal timetime systemsystem
-
8/7/2019 modified new embedded systems
5/36
Do we need Embedded Systems?Do we need Embedded Systems?
The world needs SYSTEMSThe world needs SYSTEMS
PredictabilityPredictability -- Should respond in a predictable way to unpredictableShould respond in a predictable way to unpredictablesituationssituations
Fault TolerantFault Tolerant -- Should continue operations despite the presence ofShould continue operations despite the presence ofhardware and/or software faultshardware and/or software faults
SafetySafety -- Should avoid physical or economic damage to person &Should avoid physical or economic damage to person &propertyproperty
-
8/7/2019 modified new embedded systems
6/36
Embedded SystemsEmbedded Systems --
Building BlocksBuilding Blocks
Micro Processors / Micro Controllers.Micro Processors / Micro Controllers.
Advance C / Embedded C / Assembly Programming.Advance C / Embedded C / Assembly Programming.
Bus Standards.Bus Standards.
PCB Design.PCB Design.
RTOS.RTOS.
Networking.Networking.
Device Drivers.Device Drivers.
-
8/7/2019 modified new embedded systems
7/36
Micro Processors / Micro Controllers.Micro Processors / Micro Controllers.
A microprocessor is a general purpose central processing unit ofA microprocessor is a general purpose central processing unit ofa digital computera digital computer
A chip on a computerA chip on a computer
E.G. Intel 8086, Intel 80186 , etcE.G. Intel 8086, Intel 80186 , etc
A micro controller is a true computer on a chipA micro controller is a true computer on a chip
A computer on a chip.A computer on a chip.
E.G intel 8051, PIC 16F873E.G intel 8051, PIC 16F873
-
8/7/2019 modified new embedded systems
8/36
Micro Processor versus Micro ControllerMicro Processor versus Micro Controller
ALU
ACC.
REGISTERS
PC
INT
SP
CLK
MICROPROCESSOR
ALU
REG.
ACC.
INT.RAM
SP
T/C
INT.ROM
I/O
I/O
INTCLK
PC
MICRO CONTROLLER
UART
-
8/7/2019 modified new embedded systems
9/36
Micro Processor versus Micro ControllerMicro Processor versus Micro Controller
MicroprocessorMicroprocessor
general purpose CPUgeneral purpose CPU
a chip in a computera chip in a computer
Are built on Von Neumann architecture.Are built on Von Neumann architecture. e.g. Intel x86/ Motorola 680x0 familiese.g. Intel x86/ Motorola 680x0 families
MicroMicro--ControllerController
true computer on a chip.true computer on a chip.
Are built on Harvard architecture.Are built on Harvard architecture.
e.g. Intel 8051, 80196/ Motorola 68HCxx familiese.g. Intel 8051, 80196/ Motorola 68HCxx families
-
8/7/2019 modified new embedded systems
10/36
Controller & ProcessorController & Processor
ApplicationApplication
processor is for simple system designprocessor is for simple system design
controller is for special purpose complex system designcontroller is for special purpose complex system design
SpeedSpeed
processor is used when speed of operation of system is notprocessor is used when speed of operation of system is not
criticalcritical
controller is used when speed is importantcontroller is used when speed is important
-
8/7/2019 modified new embedded systems
11/36
Advance C / Embedded C / Assembly Programming.Advance C / Embedded C / Assembly Programming.
-
8/7/2019 modified new embedded systems
12/36
Compiler versus Cross CompilerCompiler versus Cross Compiler
NativeNative CompilerCompiler
NativeNative compilercompiler isis aa programprogram whichwhich convertsconverts aa highhigh
levellevel programmingprogramming languagelanguage toto machinemachine understandableunderstandable formatformat
withwith respectrespect toto thethe targettarget processorprocessor availableavailable inin thethe systemsystem boxbox..
CrossCross CompilerCompiler
CrossCross compilercompiler isis aa programprogram whichwhich convertsconverts aa highhigh
levellevel programmingprogramming languagelanguage toto machinemachine understandableunderstandable formatformatwithwith respectrespect toto thethe targettarget processorprocessor selectedselected inin thethe crosscross
compilercompiler softwaresoftware..
-
8/7/2019 modified new embedded systems
13/36
Assembly language programmingAssembly language programming
AdvantageAdvantage
Assembly Language programming is the efficient programmingAssembly Language programming is the efficient programming
language for accessing the hardware.language for accessing the hardware.
The assembly language op codes directly work on the targetThe assembly language op codes directly work on the target
machine so it is faster in operationmachine so it is faster in operation
DisadvantageDisadvantage
Tough to understand and Program.Tough to understand and Program.
-
8/7/2019 modified new embedded systems
14/36
Advance CAdvance C
Ways of accessing the hardware through CWays of accessing the hardware through C
Using runtime library functions, getch( ).Using runtime library functions, getch( ).
Using ROMUsing ROM--BIOS functions.BIOS functions.
Using DOS functions.Using DOS functions.
Directly programming the hardwareDirectly programming the hardware
-
8/7/2019 modified new embedded systems
15/36
Advance CAdvance C
Direct reference to the hardwareDirect reference to the hardware
One must have a detailed knowledge of the hardware one isOne must have a detailed knowledge of the hardware one is
trying to program.trying to program.
Program written for one hardware in one computer may not beProgram written for one hardware in one computer may not beportable to another computerportable to another computer
Use of runtime library functionsUse of runtime library functions
They work very slowly when compared to others.They work very slowly when compared to others.
They are limited to what the function is designed to doThey are limited to what the function is designed to do
-
8/7/2019 modified new embedded systems
16/36
Advance CAdvance C
WHYWHY ROMROM--BIOSBIOS andand DOSDOS
TheThe mostmost importantimportant reasonreason forfor usingusing ROMROM--BIOSBIOS andand DOSDOS
areare theythey areare availableavailable inin systemsystem memorymemory onceonce thethe systemsystem isis onon..
ROMROM--BIOSBIOS functionsfunctions performsperforms somesome basicbasic fundamentalfundamental
operationoperation withwith thethe peripheralsperipherals likelike readingreading datadata andand writingwriting datadata..
DOSDOS isis usedused forfor thesethese basicbasic functionsfunctions andand enhancedenhanced toto
makemake aa particularparticular processprocess moremore efficientefficient..
-
8/7/2019 modified new embedded systems
17/36
Embedded CEmbedded C
Why Embedded C ?Why Embedded C ?
Easy control of multilevel functionsEasy control of multilevel functions
ModularityModularity
Easy maintenanceEasy maintenance
Reusable codesReusable codes
PortablePortable
Minimal hardware knowledge requiredMinimal hardware knowledge required
-
8/7/2019 modified new embedded systems
18/36
Bus StandardsBus Standards
Bus standard provides a easy way of communicationBus standard provides a easy way of communicationmechanism between the chips in the computer.mechanism between the chips in the computer.
ItIt reducesreduces thethe numbernumber ofof controlcontrol lineslines extendedextended betweenbetween thethe
chipschips soso electroelectro magneticmagnetic inductioninduction isis greatlygreatly reducedreduced inin thethe
circuitcircuit
SpeedSpeed of of datadata transmissiontransmission betweenbetween thethe chipschips isis greatlygreatly
increasedincreased.. EE..GG 33..44 MBPSMBPS inin II22cc busbus operatingoperating inin highhigh speedspeed
modemode..
EE..GG
II22c,c, PCI,PCI, USB,USB, EISAEISA etcetc
-
8/7/2019 modified new embedded systems
19/36
PCB Design.PCB Design.
PCBPCB designdesign isis aa techniquetechnique ofof positionposition hundredshundreds ofof componentscomponents
andand thousandsthousands ofof trackstracks intointo anan intricateintricate designdesign thatthat meetsmeets aa
wholewhole hosthost ofof physicalphysical andand electricalelectrical requirementsrequirements..
PCBPCB designdesign givesgives thethe basicbasic thumbthumb rulerule for for placingplacing thethe
componentscomponents andand routingrouting anan effectiveeffective pathpath betweenbetween thethe
componentscomponents withinwithin aa smallsmall placeplace..
ItIt mustmust alsoalso bebe rememberedremembered thatthat PCBPCB tracestraces havehave resistance,resistance,inductance,inductance, andand capacitance,capacitance, justjust likelike youryour circuitcircuit doesdoes..
-
8/7/2019 modified new embedded systems
20/36
Real Time SystemsReal Time Systems
-
8/7/2019 modified new embedded systems
21/36
Real Time SystemsReal Time Systems
Systems that respond in a predictable way to unpredictableSystems that respond in a predictable way to unpredictable
external stimuliexternal stimuli
Computer system with timing constraintsComputer system with timing constraints
RTS depends uponRTS depends upon
logical correctness of computationlogical correctness of computation
time at which result is producedtime at which result is produced
In RTSIn RTS a late answer is a wrong answer a late answer is a wrong answer
-
8/7/2019 modified new embedded systems
22/36
Real Time SystemsReal Time Systems -- TypesTypes
Hard real timeHard real time -- Systems with Hard DeadlinesSystems with Hard Deadlines
no Critical Deadlines can be missedno Critical Deadlines can be missed
E.g. Control Systems of Aircraft,Atomic ReactorsE.g. Control Systems of Aircraft,Atomic Reactors
Soft real timeSoft real time -- Timing Constraints a little tolerableTiming Constraints a little tolerable
occasional misses are permittedoccasional misses are permitted
the average response time for an event should be within athe average response time for an event should be within a
specified timespecified time
E.g.Weather Monitors, Vending MachinesE.g.Weather Monitors, Vending Machines
-
8/7/2019 modified new embedded systems
23/36
Preemptive Kernel Versus Non preemptive KernelPreemptive Kernel Versus Non preemptive Kernel
Preemptive KernelPreemptive Kernel
System response is faster.System response is faster.
Highest Priority task gets the CPU time for execution.Highest Priority task gets the CPU time for execution.
Non Preemptive KernelNon Preemptive Kernel
System response time is slower than preemptive.System response time is slower than preemptive.
Currently executing task gets the CPU time for execution.Currently executing task gets the CPU time for execution.
-
8/7/2019 modified new embedded systems
24/36
QQC/OSC/OS--IIII
High performanceHigh performance
DeterministicDeterministic
ROMableROMable
ScalableScalable
Portable to different processorsPortable to different processors
Low costLow cost
-
8/7/2019 modified new embedded systems
25/36
Real Time SystemsReal Time Systems -- Critical UsersCritical Users
Automobile IndustryAutomobile Industry
Instrumentation & Control Engineering IndustryInstrumentation & Control Engineering Industry
Defence OrganizationDefence Organization
Aerospace IndustryAerospace Industry
Medical Equipment IndustryMedical Equipment Industry
Nuclear PlantsNuclear Plants
-
8/7/2019 modified new embedded systems
26/36
TCP/IPTCP/IP
-
8/7/2019 modified new embedded systems
27/36
Introduction to NetworkIntroduction to Network
Computer network mean an a interconnection between theComputer network mean an a interconnection between the
collection of autonomous computers.collection of autonomous computers.
Two computers are said to be interconnected if they are able toTwo computers are said to be interconnected if they are able to
exchange information.exchange information.
Network goals areNetwork goals are
resource sharingresource sharing
high reliabilityhigh reliability
powerful communication mediumpowerful communication medium
-
8/7/2019 modified new embedded systems
28/36
TCP/IP Internet layering modelTCP/IP Internet layering model
TCP/IP software is organized into four conceptual layers thatTCP/IP software is organized into four conceptual layers thatbuild on a fifth layer of hardware.build on a fifth layer of hardware.
Network Interface
Internet
Transport
Application
Hardware
Conceptual LayerObjects passes between layers
Messages or streams
Transport Protocol packets
IP Datagrams
Network-Specific Frames
-
8/7/2019 modified new embedded systems
29/36
A quick look at TCP/IP NetworkingA quick look at TCP/IP Networking
Internetlayer
Network
Application
Applicationlayer
Transportlayer TCP UDP
IP ARPRARP
NetworkAccess layer
Token ringEthernet
Physical network
either ?
Internetlayer
-
8/7/2019 modified new embedded systems
30/36
A quick look at TCP/IP NetworkingA quick look at TCP/IP Networking
Programs can access the network through either TCP or UDP,Programs can access the network through either TCP or UDP,
depending on program requirements.depending on program requirements.
TCP is a connectionTCP is a connection--oriented protocol.oriented protocol.
UDP is a connectionless protocolUDP is a connectionless protocol
Then the data segment passes to the internet level, where the IP protocolThen the data segment passes to the internet level, where the IP protocol
provides logical addressing .provides logical addressing .
Then the IP datagram enter the network access layer.Then the IP datagram enter the network access layer.
-
8/7/2019 modified new embedded systems
31/36
DEVICE DRIVERSDEVICE DRIVERS
-
8/7/2019 modified new embedded systems
32/36
Device DriversDevice Drivers
A set of functions that manipulates a hardware deviceA set of functions that manipulates a hardware device..
KEY BOARD
CPUwith
OS A
KEYBOARDDRIVER
FOR
OS A
-
8/7/2019 modified new embedded systems
33/36
History ofWDMHistory ofWDM
Introduced afterWindows 95 launchIntroduced afterWindows 95 launch
First available inWindows 98First available inWindows 98
Now available inWindows 2000Now available inWindows 2000
Is present onWindows ME with enhancements fromWindows 98Is present onWindows ME with enhancements fromWindows 98
-
8/7/2019 modified new embedded systems
34/36
EnvironmentEnvironment
PortablePortable -- binary and source compatiblebinary and source compatible
ConfigurableConfigurable -- Avoid direct references to device or systemAvoid direct references to device or system
characteristicscharacteristics
Preemptible and interruptiblePreemptible and interruptible
More than one application will use the driverMore than one application will use the driver
HotHot--pluggable busespluggable buses
-
8/7/2019 modified new embedded systems
35/36
Device DriversDevice Drivers -- ApplicationApplication
DEVICE DRIVERSDEVICE DRIVERS
FORFOR
STANDARD &STANDARD &
CUSTOMCUSTOM
DEVICESDEVICES
-
8/7/2019 modified new embedded systems
36/36
WISH YOU ALL A GREAT CAREER INEMBEDDED SYSTEMS