EMBEDDED SYSTEMS
An embedded system is a special-purpose computer system, which is
completely encapsulated by the device it controls. An embedded
system has specific requirements and performs pre-defined tasks,
unlike a general-purpose personal computer.
An embedded system is a programmed hardware device. A
programmable hardware chip is the 'raw material' and it is programmed
with particular applications. This is to be understood in comparison to
older systems with full functional hardware or systems with general
purpose hardware and externally loaded software. Embedded systems
are a combination of hardware and software which facilitates mass
production and variety of application
A combination of computer hardware and software, and perhaps
additional mechanical or other parts, designed to perform a
dedicated function.
In some cases, embedded systems are part of a larger system or
product, as in the case of an antilock braking system in a car.
EMBEDDED SYSTEM is a combination of SOFTWARE and
HARDWARE.
An Embedded system is a system, that has a computing
device embedded into it.
These are the controllers, processors, arrays or other
hardware using dedicated (embedded) logic or programming
(code) called “firmware” or a “microkernel
Embedded systems are designed around a µC which
integrates Memory & Peripherals
Embedded systems: What are they?
A special purpose computer built into a larger device
• ‘Special-purpose’
Embedded systems have a (more or less) well-defined purpose
Contrast with: general purpose computers (PCs etc)
• ‘Built into a larger device’
Embedded systems are (usually) part of a larger device,
augmenting its capabilities
WHY EMBEDDED SYSTEMS
It is EMBEDDED because the Micro Controller is ‘inside’ some
other system.
For Example a Micro Controller is ‘EMBEDDED’ into your TV, car,
or appliance
The consumer need not think about how to make it perform or
process
Avoids lots of Electronics Components
Built in rich Features
Reduces the cost, space
Less Down Time for Maintenance
Probability of Failure is reduced
Easy interface with Computers
CHARACTERISTICS OF AN EMBEDDED
SYSTEM
Sophisticated functionality
Real-Time Operation
Low Manufacturing Cost
Low Power Consumption
Eliminates Necessity of Complex Circuitry
Smarter Products
Smaller Size
User Friendly
State of the Art Technology
Four General Embedded Systems Types
General Computing
• Applications similar to desktop computing, but in an embedded
package
• Video games, set- top boxes, wearable computers, automatic
tellers
Control Systems
• Closed- loop feedback control of real- time system
• Vehicle engines, chemical processes, nuclear power, flight control
Signal Processing
• Computations involving large data streams
• Radar, Sonar, video compression
Communication & Networking
• Switching and information transmission
• Telephone system, Internet
FEATURES OF AN EMBEDDED SYSTEM
Real-Time Operation
• Reactive: computations must occur in response to external events
• Correctness is partially a function of time
Small Size, Low Weight
• Hand- held electronics and Transportation applications -- weight
costs money
Low Power
• Battery power for 8+ hours (laptops often last only 2 hours)
Harsh environment
• Heat, vibration, shock, power fluctuations, RF interference,
lightning, corrosion
Safety- critical operation
• Must function correctly and Must not function in correctly
Extreme cost sensitivity
EMBEDDED SYSTEMS COMPONENTS
MICRO CONTROLLERS (µC)
MICRO PROCESSORS (µP)
DIGITAL SIGNAL CONTROLLERS (DSC)
DIGITAL SIGNAL PROCESSORS (DSP)
BUSSES (Data, Address, Input/output)
SYSTEM CLOCK - Steps µC / µP Through Each Instruction
READ ONLY MEMORY (ROM): Permanently Loaded With
Instructions (FIRMWARE)
RANDOM ACCESS MEMORY (RAM)
STORES DATA IN PROCESSING / SHARES DATA WITH
EXTERNAL PARTNERS
REAL TIME CLOCK (RTC)
COMMUNICATIONS CIRCUITRY - Ethernet Port, Printer
Port, Communications Port (RS232c, RS485, RS422,
IEEE488)
EXAMPLES OF EMBEDDED SYSTEMS
Automatic Teller Machines or ATM's & Bank Vaults
Automotive & Automobile Engine Management systems:
Electronic Dashboards, ABS brakes, transmission controls.
Blue Tooth enabled Network Synchronization Applications
Control Systems (Manufacturing, Cryogenics, Electric
Power)
Controls for Digital Equipment: CD Players, TV Remote,
Programmable Sprinklers, Household Appliances, etc.
Computer motherboards (BIOS chips, RTCs)
Global Positioning and Navigation Systems
Household Appliances
Medical instrument’s controls - CT scanners, MRI
Scanners, ECG, Pacemakers and implanted pumps,
implanted heart monitors, etc.
Supervisory Control and Data Acquisition (SCADA)
systems
Telecommunications (Private Branch Exchanges, Custom
Premises Equipment)
EMBEDDED - DESIGN METHODOLOGIES
A procedure for designing a system
Understanding your methodology helps you ensure you didn’t
skip anything.
Compilers, software engineering tools, computer-aided design
(CAD) tools, etc., can be used to:
help automate methodology steps;
keep track of the methodology itself.
EMBEDDED – DESIGN GOALS
Performance.
Overall speed, deadlines.
Functionality and user interface.
Manufacturing cost.
Power consumption.
Other requirements (physical size, etc.)
LEVELS OF ABSTRACTION – STEP BY STEP
DEVELOPMENT OF EMBEDDED SYSTEM
REQUIREMENTS
SPECIFICATION
ARCHITECTURE
COMPONENT
SYSTEM
TYPICAL EMBEDDED SYSTEM HARDWARE
• COMMERCIAL OFF-THE-SHELF COMPONENTS
(COTS)
e.g. wireless radios, sensors, I/O devices, –Cheap
• APPLICATION-SPECIFIC ICS (ASICS)
ICs tailored to meet application needs, Good performance
for their intended task(s), Original Ess were ASICs only
• DOMAIN-SPECIFIC PROCESSORS
DSPs
Microcontrollers
Digital Signal Controllers
Microprocessors
EMBEDDED SYSTEMS - EARLY HISTORY
• Late 1940’s: MIT Whirlwind computer was designed for real-
time operations.
– Originally designed to control an aircraft simulator.
• First microprocessor was Intel 4004 in early 1970’s.
• HP-35 calculator used several chips to implement a
microprocessor in 1972.
• Automobiles used microprocessor - based engine
controllers starting in 1970’s.
– Control fuel/air mixture, engine timing, etc.
– Multiple modes of operation: warm-up, cruise, hill
climbing, etc.
– Provides lower emissions, better fuel efficiency.
EMBEDDED SYSTEMS
MICROCONTROLLERS
Atmel, Microchip – PIC, Maxim, Motorola
DIGITAL SIGNAL CONTROLLERS
Microchip – dsPIC, Texas Instruments
DSP & RTOS
Analog Devices, Texas Instruments
VLSI
Altera, Cypress, Cirrus Logic, Xilinx
MICROCONTROLLERS
• Microcontroller is a highly integrated chip that contains all
the components comprising a controller.
• Typically, this includes a CPU, RAM, some form of ROM, I/O
ports, and timers. A Microcontroller is designed for a very
specific task – to control a particular system.
• As a result, the parts can be simplified and reduced, which
cuts down on production costs
DIGITAL SIGNAL CONTROLLER
• The Digital Signal Controller (DSC) is a powerful 16-bit (data)
modified Harvard RISC machine that combines the control
advantages of a high performance 16-bit Microcontroller
(MCU) with the high computation speed of a fully
implemented digital signal processor (DSP) to produce a
tightly coupled single-chip single-instruction stream solution
for embedded systems design.
DSP
• Specialized digital microprocessor used to efficiently and
rapidly perform calculations on digitized signals that were
originally analog in form (eg voice)
• The big advantage of DSP lies in the programmability of the
processor, allowing parameters to be easily changed
VLSI
• Very large-scale integration, the process of placing
thousands (or hundreds of thousands) of electronic
components on a single chip.
• Nearly all modern chips employ VLSI architectures, or ULSI
(ultra large scale integration)
TYPES OF MICRO CONTROLLER
More than 140 Types of Micro Controllers Available
Some of the examples are
• Microchip – PIC, dsPIC, • Texas Instruments
rfPIC • ST Microcontrollers
• Atmel – AVR, ARM, 89cxx • Zilog, Cypress, Maxim,
• Analog Devices Dallas, Motorola, etc.,
EMBEDDED SYSTEMS IN TODAY’S WORLD
SIGNAL PROCESSING SYSTEMS -
Real-Time Video, Set-top Boxes, DVD Players, Medical Equipment,
Residential Gateways
DISTRIBUTED CONTROL -
Network Routers, Switches, Firewalls, Mass Transit Systems,
Elevators
SMALL SYSTEMS -
Mobile Phones, Pagers, Home Appliances, Toys, Smart Cards, MP3
players, PDAs, Digital Cameras, Sensors, Smart Badges
BENEFITS OF EMBEDDED CONTROL
DESIGN
• Eliminates necessity of • Lower cost
complex circuitry
• User friendly
• Smarter products
• State of the art technology
• Smaller size
FUTURE OF EMBEDDED CONTROL
• Intelligent products are used everyday - Mobile Phones,
Printers, Washing Machines, Microwave Ovens, Water
Purifier, Air Conditioners etc.
• New generation Embedded Control will include Internet
connectivity, RF controls & Blue Tooth.
THE JOB OPPORTUNITIES IN THE AREAS OF
• Hardware Design Engineer • Network Engineer
• Software Design Engineer • RTOS Programmer
• Device Driver Developer • Software Engineer in
• Kernel Developer Research & Development
COMPANIES ARE WORKING ON EMBEDDED
SYSTEMS AND APPLICATIONS
• AXES technologies • Visteon
• CG Smith • WIPRO
• Converge Labs • TCS
• Future Software • Infosys
• IBM • Robert Bosch
• LUCENT • Kshema Technologies
• MASCON and so on…
• Sundaram Telematics
NEW TRENDS IN EMBEDDED SYSTEM H/W
• Systems-on-chip –Usual (or desired) specs:
• 32-bit RISC CPU
• Built-in interfaces to RAM and ROM
• Built-in DMA, interrupt and timing controllers
• Built-in interfaces to disk or flash memory
• Built-in Ethernet/802.11 interfaces
• Built-in LCD/CRT interfaces –New SOCs appearing almost
every week!
• Examples – Intel StrongARM SA-1110, Motorola PowerPC
MPC823e
– NEC VR4181
– Many, many more
EMBEDDED SOFTWARE PROPERTIES
• Timeliness • Liveness • Heterogeneity
• Concurrency • Interfaces • Reactivity
TIMELINESS
• Time: systematically removed from theories of computation
• RTOSes often reduce the characterization of a task to a single
number (its priority)
• But: computation does take time
– However, even with infinitely fast computers, time would still
have to be dealt with
• Physical processes evolve over time
• Need to find abstractions that regain control of time!
CONCURRENCY
• In the physical world, multiple things happen at once
• Challenge: reconcile sequentially of software with the
concurrency of the real world
– Classic approaches (semaphores, monitors etc) provide good
foundation
• But: potentially insufficient
– One approach: compile concurrency away (Estrel)
• Estrel: synchronous/reactive language
– FSM based, deterministic behavior
• Pros: Higly reliable programs
• Cons: Too static for some systems
– Middle ground is needed
LIVENESS
• Programs must not terminate
– Unlike the traditional Turing model of computation, halting is
undesirable
–Deadlock is an absolute ‘no- no’
• Correctness isn’t just about getting the right final answer
– Must consider things like timing, power consumption, fault
recovery, security and robustness
REACTIVITY
• Interactive systems:
– react at their own speed (or the speed of the controlling
human)
• Transformational systems
– Transform a data input to a data output (e.g. matrix
multiplication)
• Reactive systems
– react continuously with environment, at the same speed
– Must adapt to changing conditions
• Resources and demands may change frequently
– Real-time constraints
– Safety-critical
• Fault-tolerance can be a major issue