EMBEDDED SYSTEM BASICS
AND APPLICATION
TOPICS TO BE DISCUSSED
System
Embedded System
Components
Classifications
Processors
Other Hardware
Software
Applications
2
INTRODUCTION
What is a system?
A system is a way of working,
organizing or doing one or many tasks
according to a fixed plan, program or
set of rules.
A system is also an arrangement
in which all its units assemble and
work together according to the plan or
program.
3
SYSTEM EXAMPLES
WATCH
It is a time display SYSTEM
Parts: Hardware, Needles, Battery, Dial,
Chassis and Strap
Rules
1.All needles move clockwise only
2.A thin needle rotates every second
3.A long needle rotates every minute
4.A short needle rotates every hour
5.All needles return to the original position after 12 hours
4
SYSTEM EXAMPLES
WASHING MACHINE
It is an automatic clothes washing SYSTEM
Parts: Status display panel, Switches & Dials, Motor,
Power supply & control unit, Inner water level sensor and
solenoid valve.
Rules
1.Wash by spinning
2.Rinse
3.Drying
4.Wash over by blinking
5.Each step display the process stage
6.In case interruption, execute only the remaining
5
EMBEDDED SYSTEM
Definition: An Embedded System is one that has
computer hardware with software embedded in it as
Its software embeds
one of its important components.
in
ROM
(Read
Only
Memory). It does not need
secondary memories as in
a computer
SOFTWARE PROGRAM
HARDWARE
#include <16f876a.h>
#use delay (clock=20000000)
#byte PORTB=6
main()
{
set_tris_b(0);
portb=255;
//decimal
delay_ms(1000);
portb=0x55;
//hexadecimal
delay_ms(1000);
portb=0b10101010; //binary
delay_ms(500);
}
COMPUTER HARDWARE
A Microprocessor
A Large Memory
(Primary and Secondary)
(RAM, ROM and caches)
Input Units
(Keyboard, Mouse, Scanner, etc.)
Output Units
(Monitor, printer, etc.)
Networking Units
(Ethernet Card, Drivers, etc.)
I/O Units
(Modem, Fax cum Modem, etc.)
7
COMPONENTS OF EMBEDDED SYSTEM
It has Hardware
Processor, Timers, Interrupt controller, I/O Devices, Memories, Ports,
etc.
It has main Application Software
Which may perform concurrently the series of tasks or multiple tasks.
It has Real Time Operating System (RTOS)
RTOS defines the way the system work. Which supervise the application
software. It sets the rules during the execution of the application
program. A small scale embedded system may not need an RTOS.
EMBEDDED SYSTEM HARDWARE
10
EMBEDDED SYSTEM CONSTRAINTS
An embedded system is software designed to keep
in view three constraints:
Available system memory
Available processor speed
The need to limit the power dissipation
When running the system continuously in cycles of wait for
events, run, stop and wakeup.
11
What makes embedded systems different?
Real-time operation
size
cost
time
reliability
safety
energy
security
12
CLASSIFICATIONS OF EMBEDDED SYSTEM
1.
Small Scale Embedded System
2.
Medium Scale Embedded System
3.
Sophisticated Embedded System
13
SMALL SCALE EMBEDDED SYSTEM
Single 8 bit or 16bit Microcontroller.
Little hardware and software complexity.
They May even be battery operated.
Usually C is used for developing these system.
The need to limit power dissipation when system is running
continuously.
Programming tools:
Editor, Assembler and Cross Assembler
14
MEDIUM SCALE EMBEDDED SYSTEM
Single or few 16 or 32 bit microcontrollers or Digital
Signal Processors (DSP) or Reduced Instructions
Set Computers (RISC).
Both hardware and software complexity.
Programming tools:
RTOS, Source code Engineering Tool,
Simulator, Debugger and Integrated Development
Environment (IDE).
15
SOPHISTICATED EMBEDDED SYSTEM
Enormous hardware and software complexity
Which may need scalable processor or configurable processor
and programming logic arrays.
Constrained by the processing speed available in their
hardware units.
Programming Tools:
For these systems may not be readily available at a
reasonable cost or may not be available at all. A compiler or
retargetable compiler might have to be developed for this.
16
PROCESSOR
A Processor is the heart of the Embedded
System.
For
an
embedded
system
designer
knowledge
of
microprocessor
and
microcontroller is a must.
Two Essential Units:
Operations
Control Unit (CU),
Execution Unit (EU)
Fetch
Execute
17
VARIOUS PROCESSOR
1. General Purpose processor (GPP)
Microprocessor
Microcontroller
Embedded Processor
Digital signal Processor
2. Application Specific System Processor
(ASSP)
3. Multi Processor System using GPPs
18
MICROPROCESSOR
A microprocessor is a single chip semi conductor
device also which is a computer on chip, but not a
complete computer.
Its CPU contains an ALU, a program counter, a stack
pointer, some working register, a clock timing circuit
and interrupt circuit on a single chip.
To make complete micro computer, one must add
memory usually ROM and RAM, memory decoder, an
oscillator and a number of serial and parallel ports.
19
Processor technology
The architecture of the computation engine used to implement a systems
desired functionality
Processor does not have to be programmable
Processor not equal to general-purpose processor
Controller
Datapath
Controller
Datapath
Controller
Datapath
Control
logic and
State register
Control logic
and State
register
Registers
Control
logic
index
Register
file
Custom
ALU
State
register
IR
PC
General
ALU
IR
Data
memory
total = 0
for i =1 to
General-purpose (software)
PC
Data
memory
Program
memory
Assembly code
for:
total
Data
memory
Program memory
Assembly code
for:
total = 0
for i =1 to
Application-specific
Single-purpose (hardware)
20
Processor technology
Processors vary in their customization for the problem at
hand
total = 0
Desired
functionality
General-purpose
processor
for i = 1 to N loop
total += M[i]
end loop
Application-specific
processor
Single-purpose
processor
21
General-purpose processors
Programmable device used in a
variety of applications
Also known as microprocessor
Features
Program memory
General datapath with large
register file and general ALU
User benefits
Low time-to-market and NRE
costs
High flexibility
Pentium the most well-known,
but there are hundreds of others
Controller
Datapath
Control
logic and
State
register
Register
file
IR
PC
Program
memory
General
ALU
Data
memory
Assembly code
for:
total = 0
for i =1 to
22
Single-purpose processors
Digital circuit designed to execute exactly one
program
a.k.a. coprocessor, accelerator or peripheral
Features
Contains only the components needed to
execute a single program
No program memory
Benefits
Fast
Low power
Small size
Controller
Datapath
Control
logic
index
total
State
register
Data
memory
23
Application-specific processors
Programmable processor optimized for a
particular class of applications having
common characteristics
Compromise between general-purpose
and single-purpose processors
Features
Program memory
Optimized datapath
Special functional units
Benefits
Some flexibility, good performance, size
and power
Controller
Datapath
Control
logic and
State
register
Registers
IR
Custom
ALU
PC
Program
memory
Data
memory
Assembly code
for:
total = 0
for i =1 to
24
IC technology
The manner in which a digital (gate-level)
implementation is mapped onto an IC
IC: Integrated circuit, or chip
IC technologies differ in their customization to a
design
ICs consist of numerous layers (perhaps 10 or more)
IC technologies differ with respect to who builds each layer
and when
IC package
IC
source
gate
oxide
channel drain
Silicon substrate
25
IC technology
Three types of IC technologies
Full-custom/VLSI
Semi-custom ASIC (gate array and standard
cell)
PLD (Programmable Logic Device)
26
Full-custom/VLSI
All layers are optimized for an embedded
systems particular digital implementation
Placing transistors
Sizing transistors
Routing wires
Benefits
Excellent performance, small size, low power
Drawbacks
High NRE cost (e.g., $300k), long time-tomarket
27
Semi-custom
Lower layers are fully or partially built
Designers are left with routing of wires and
maybe placing some blocks
Benefits
Good performance, good size, less NRE cost
than a full-custom implementation (perhaps
$10k to $100k)
Drawbacks
Still require weeks to months to develop
28
PLD (Programmable Logic
Device)
All layers already exist
Designers can purchase an IC
Connections on the IC are either created or destroyed
to implement desired functionality
Field-Programmable Gate Array (FPGA) very popular
Benefits
Low NRE costs, almost instant IC availability
Drawbacks
Bigger, expensive (perhaps $30 per unit), power
hungry, slower
29
MICROCONTROLLER
A microcontroller is a functional
computer system-on-a-chip. It contains a
processor, memory, and programmable
input/output peripherals.
Microcontrollers include an integrated
CPU, memory (a small amount of RAM,
program memory, or both) and peripherals
capable of input and output.
30
VARIOUS MICROCONTROLLERS
INTEL
8031,8032,8051,8052,8751,8752
PIC
8-bit PIC16, PIC18,
16-bit DSPIC33 / PIC24,
PIC16C7x
Motorola
MC68HC11
31
MICROPROCESSOR Vs MICROCONTROLLER
MICROPROCESSOR
MICROCONTROLLER
It includes functional blocks of
The functional blocks are ALU, microprocessors & in addition has
registers, timing & control units
timer, parallel i/o, RAM, EPROM,
ADC & DAC
Bit handling instruction is less, One
Many type
or two type only
instruction
of
bit
handling
Rapid movements of code and
Rapid movements of code and
data between external memory & MP data within MC
They are used for designing
It is used for designing general
application
specific
dedicated
purpose digital computers system
systems
32
EMBEDDED PROCESSOR
Special microprocessors & microcontrollers
often called, Embedded processors.
An embedded processor is used when fast
processing fast context-switching & atomic
ALU operations are needed.
Examples : ARM 7, INTEL i960, AMD 29050.
33
DIGITAL SIGNAL PROCESSOR
DSP as a GPP is a single chip VLSI unit.
It
includes
the
computational
capabilities
of
microprocessor and multiply & accumulate units (MAC).
DSP has large number of applications such as image
processing,
audio,
video
&
telecommunication
processing systems.
It is used when signal processing functions are to be
processed fast.
Examples : TMS320Cxx, SHARC, Motorola 5600xx
34
APPLICATION SPECIFIC SYSTEM
PROCESSOR (ASSP)
ASSP is dedicated to specific tasks and
provides a faster solution.
An ASSP is used as an additional processing
unit for running the application in place of
using embedded software.
Examples : IIM7100, W3100A
35
MULTI PROCESSOR SYSTEM USING
GPPs
Multiple processors are used when a
single processor does not meet the
needs of different task.
The operations of all the processors
are synchronized to obtain an optimum
performance.
36
Moores Law
Moore's law describes a long-term trend in the history of
computing hardware.
Since the invention of the integrated circuit in 1958, the number
of transistors that can be placed inexpensively on an integrated
circuit has increased exponentially, doubling approximately
every two years.
The trend was first observed by Intel co-founder Gordon E.
Moore in 1965.
Almost every measure of the capabilities of digital electronic
devices is linked to Moore's law: processing speed, memory
capacity, etc.
37
Moores law
38
39
OTHER HARDWARE
Power Source
Clock Oscillator
Real Time Clock (RTC)
Reset Circuit, Power-up Reset and watchdog timer Reset
Memory
I/O Ports, I/O Buses
Interrupt Handler
DAC and ADC
LCD and LED Display
Keypad/Keyboard
40
SOFTWARE
SOFTWARE
SIMULATOR
C
C++
Dot Net
Masm
COMPILER
RIDE
KEIL
41
APPLICATIONS
Household appliances:
Microwave ovens, Television, DVD
Players & Recorders
Audio players
Integrated systems in aircrafts and
missiles
Cellular telephones
Electric and Electronic Motor controllers
Engine controllers in automobiles
Calculators
Medical equipments
Videogames
Digital musical instruments, etc.
42
43
44
Automotive embedded
systems
Todays high-end automobile may have 100
microprocessors:
4-bit microcontroller checks seat belt;
microcontrollers run dashboard devices;
16/32-bit microprocessor controls engine.
Source:
45
Embedded Systems...
react on the environment at the speed of the
environment
often real-time requirements
are designed for one single task
have often to be power-efficient
are mass products and have to be cheap
must be reliable
46
47
Thus ...
Microprocessors are used
As key components in an embedded design
Programmable Logic and ASICs are used
for critical parts in a design
An obective for an embedded system designer is to
find the cheapest solution that meets the requirements
Do not use a Pentium, when you
only want to control a freezer...
48
Challenges in embedded system design
How much hardware do we need?
How big is the CPU? Memory?
How do we meet our deadlines?
Faster hardware or cleverer software?
How do we minimize power?
Turn off unnecessary logic? Reduce memory
accesses?
49
Challenges, etc.
Does it really work?
Is the specification correct?
Does the implementation meet the spec?
How do we test for real-time characteristics?
How do we test on real data?
How do we work on the system?
Observability, controllability?
What is our development platform?
50
Learn by Doing
Excel Thru Experimentation
Lead by Example
Acquire skills and get employed
Update skills and stay employed
THANK YOU
51