Chapter 1 Introduction to Embedded System
Chapter 1 Introduction to Embedded System
TRIBHUVAN UNIVERSITY
INSTITUTE OF ENGINEERING
THAPATHALI CAMPUS
DHARAN-8
1
Embedded Systems (CT655)
2
Embedded Systems (CT655)
3
Embedded Systems (CT655)
4
References
5
Marks Distribution
6
Chapter 1 Introduction to Embedded System
• Embedded Systems Overview
• Classification of Embedded Systems
• Hardware and Software in a System
• Purpose and Application of Embedded Systems
Lecture Hours : 3
Marks Weightage : 4
7
Embedded Systems Overview
• Computing systems are everywhere
• Most of us think of “desktop” computers
– PC’s
– Laptops
– Mainframes
– Servers
• But there’s another type of computing system
– Far more common...
9
Embedded Systems Overview
• Embedded computing systems
– Computing systems embedded Computers are in here...
within electronic devices
and here...
10
A “short list” of embedded systems
Anti-lock brakes Modems
Auto-focus cameras MPEG decoders
Automatic teller machines Network cards
Automatic toll systems Network switches/routers
Automatic transmission On-board navigation
Avionic systems Pagers
Battery chargers Photocopiers
Camcorders Point-of-sale systems
Cell phones Portable video games
Cell-phone base stations Printers
Cordless phones Satellite phones
Cruise control Scanners
Curbside check-in systems Smart ovens/dishwashers
Digital cameras Speech recognizers
Disk drives Stereo systems
Electronic card readers Teleconferencing systems
Electronic instruments Televisions
Electronic toys/games Temperature controllers
Factory control Theft tracking systems
Fax machines TV set-top boxes
Fingerprint identifiers VCR’s, DVD players
Home security systems Video game consoles
Life-support systems Video phones
Medical testing systems Washers and dryers
• Single-functioned
– Executes a single program, repeatedly
• Tightly-constrained
– Low cost, low power, small, fast, etc.
• Reactive and real-time
– Continually reacts to changes in the system’s
environment
– Must compute certain results in real-time without
delay eg. Pacemaker, Car's Cruise Controller,etc
12
An embedded system example -- a digital camera
CCD/ Digital camera chip
CMOS
CCD preprocessor Pixel coprocessor D2A
A2D
lens
13
Design challenge – optimizing design metrics
14
Design challenge – optimizing design metrics
• Common metrics
– NRE cost (Non-Recurring Engineering cost): The one-time
monetary cost of designing the system
– Unit cost: the monetary cost of manufacturing each copy of the system,
excluding NRE cost
15
Design challenge – optimizing design metrics
• Common metrics (continued)
– Time-to-prototype: the time needed to build a working version of the
system
16
Design metric competition -- improving one may
worsen others
Power • Expertise with both software
and hardware is needed to
Performance Size
optimize design metrics
– Not just a hardware or
software expert, as is common
NRE cost – A designer must be
comfortable with various
technologies in order to choose
Digital camera chip the best for a given application
CCD
A2D
CCD preprocessor Pixel coprocessor D2A and constraints
lens
JPEG codec Microcontroller Multiplier/Accum
17
Time-to-market: a demanding design metric
18
Losses due to delayed market entry
entry
– Time of market entry defines
On-time
a triangle, representing
Market rise Market fall market penetration
Delayed – Triangle area equals revenue
• Loss
– The difference between the
D W 2W
on-time(On-time) and
On-time Delayed Time
delayed (Delayed)triangle
entry entry
areas
19
Losses due to delayed market entry (cont.)
On-time
delayed entry
• Percentage revenue loss =
Market rise Market fall (D(3W-D)/2W2)*100%
Delayed • Try some examples
– Lifetime 2W=52 wks, delay D=4 wks
D W 2W
– (4*(3*26 –4)/2*26^2) = 22%
On-time Delayed Time – Lifetime 2W=52 wks, delay D=10 wks
entry entry – (10*(3*26 –10)/2*26^2) = 50%
– Delays are costly!
20
NRE and unit cost metrics
• Costs:
– Unit cost: the monetary cost of manufacturing each copy of the system,
excluding NRE cost
– NRE cost (Non-Recurring Engineering cost): The one-time monetary cost of
designing the system
– total cost = NRE cost + unit cost * # of units
– per-product cost = total cost / # of units
= (NRE cost / # of units) + unit cost
• Example
– NRE=$2000, unit=$100
– For 10 units
– total cost = $2000 + 10*$100 = $3000
– per-product cost = $2000/10 + $100 = $300
21
NRE and unit cost metrics
• Compare technologies by costs -- best depends on quantity
– Technology A: NRE=$2,000, unit=$100
– Technology B: NRE=$30,000, unit=$30
– Technology C: NRE=$100,000, unit=$2
$200,000 $200
A A
B B
$160,000 $160
C C
tota l c ost (x1000)
p er p rod uc t c ost
$120,000 $120
$80,000 $80
$40,000 $40
$0 $0
0 800 1600 2400 0 800 1600 2400
Numb er of units (volume) Numb er of units (volume)
23
Three key embedded system technologies
• Technology
– A manner of accomplishing a task, especially using
technical processes, methods, or knowledge
• Three key technologies for embedded systems
– Processor technology
– IC technology
– Design technology
24
Processor technology
• The architecture of the computation engine used to implement a
system’s desired functionality
• Processor does not have to be programmable
– “Processor” not equal to general-purpose processor but we can think of
many other ,non-programmable,digital systems as being processors also.
– Each such processor differs in its specialization towards a particular
function(eg. Image compression)
25
Processor technology
26
Processor Technology
Controller Datapath Controller Datapath Controller Datapath
Control index
Control Register Control Registers logic
logic and file logic and total
State State
Custom State
register register +
ALU register
General
ALU IR PC
IR PC
Data Data
memory memory
27
General-purpose processors
• Programmable device used in a variety of
applications
Controller Datapath
– Also known as “microprocessor”
Control
• Features logic and
Register
file
State
– Program memory register
– General datapath with large register file and General
general ALU IR PC ALU
• User benefits
– Low time-to-market and NRE costs Program Data
memory
– High flexibility memory
29
Single-purpose processors
• Benefits
– Fast
– Low power
– Small size
30
Application-specific processors
• It is a programmable processor
optimized for a particular class of Controller Datapath
• Features Data
memory
– Program memory Program
memory
– Optimized datapath Assembly code
– Special functional units for:
• Benefits total = 0
for i =1 to …
31
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
gate
oxide
IC package IC
source channel drain
Silicon substrate
32
IC technology
33
Full-custom/VLSI
34
Semi-custom
35
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
36
Moore’s law
• The most important trend in embedded systems
– Predicted in 1965 by Intel co-founder Gordon Moore
IC transistor capacity has doubled roughly every 18 months for the past several decades
10,000
1,000
0.1
Note:
logarithmic scale 0.01
0.001
37
Moore’s law
• Wow
– This growth rate is hard to imagine, most people
underestimate
– How many ancestors do you have from 20 generations ago
• i.e., roughly how many people alive in the 1500’s did it
take to make you?
• 220 = more than 1 million people
– (This underestimation is the key to pyramid schemes!)
38
Graphical illustration of Moore’s law
10,000 150,000,000
transistors transistors
39
Design Technology
To final implementation
40
Design productivity exponential increase
100,000
10,000
Productivity
100
10
0.1
0.01
2005
1993
2001
2003
1983
1987
1985
1991
1989
1999
1997
1995
2007
2009
• Exponential increase over the past few decades
41
The co-design ladder
• Hardware/software
“codesign”
Implementation
Microprocessor plus VLSI, ASIC, or PLD
program bits: “software” implementation: “hardware”
The choice of hardware versus software for a particular function is simply a tradeoff among various
design metrics, like performance, power, size, NRE cost, and especially flexibility; there is no
fundamental difference between what hardware or software can implement.
42
Independence of processor and IC technologies
• Basic tradeoff
– General vs. custom
– With respect to processor technology or IC technology
– The two technologies are independent
General- Single-
purpose ASIP purpose
General, processor processor Customized,
providing improved: providing improved:
Flexibility
Power efficiency
Maintainability
Performance
NRE cost
Size
Time- to-prototype
Cost (high volume)
Time-to-market
Cost (low volume)
43
Classification of Embedded Systems
1. Based on Generation
2. Based on Complexity
3. Based on Performance and Functional Requirements
4. Based on Deterministic Behavior
5. Based on Triggering
44
Classification of Embedded Systems
Based on Generation
a) First Generation
➢ Built around 8-bit microprocessors(8085) and 4-bit
microcontrollers.
➢ Simple hardware and firmware developed using
assembly code.
➢ Examples : Digital telephone keypads, stepper motor
control, etc.
45
Classification of Embedded Systems
Based on Generation
b) Second Generation
➢ After the evolution of the second generation embedded
systems, the 8-bit microprocessor and 4-bit controllers
are replaced by 16-bit microprocessors and 8-bit or 16-bit
microcontrollers.
➢ They are more powerful and complex compared to
previous generation processors, may contain OS
➢ Examples: Data acquisition systems, SCADA(Supervisory
Control and Data Acquisition) ICS(Industrial Control System)
46
Classification of Embedded Systems
Based on Generation
c) Third Generation
➢ The embedded system of this period has powerful 32-bit
microprocessors and 16-bit microcontrollers.
➢ During this period, domain-specific processors/controllers
like Digital Signal Processors (DSP), Application-Specific
Integrated Circuits (ASICs) and the concept of instruction
pipelining, embedded real-time operating system evolved into
the embedded system industry.
➢ Eg : Robotics, industrial process control, networking
47
Classification of Embedded Systems
Based on Generation
d) Fourth Generation
➢ New concepts like System-on-Chip(SOC), reconfigurable
processors, multicore processors, coprocessors also
emerged into the embedded market to add more powerful
performance in the embedded system.
➢ These systems also make use of the high-performance
real-time operating system for their operation.
➢ Smart devices, digital cameras, etc are examples of fourth
generation embedded systems.
48
Classification of Embedded Systems
Based on Complexity
a) Small Scale Embedded Systems:
➢ Built with a single 8 or 16-bit microprocessor or
microcontroller.
➢ Main programming tools used are an editor,
assembler, cross assembler and integrated development
environment (IDE).
➢ The hardware and software complexities are very low.
➢ May or may not contain an OS for its functioning.
➢ Example : An electronic toy
49
Classification of Embedded Systems
Based on Complexity
b) Medium Scale Embedded Systems:
➢ The Embedded system with medium performance 16-bit
or 32-bit microprocessor or controller, ASICs or DSPs
fall under the medium scale embedded systems.
➢ They have both hardware and software complexities.
➢ The main programming tools used are C, C++, JAVA,
Visual C++, RTOS, debugger, source code engineering
tool, simulator and IDE.
50
Classification of Embedded Systems
Based on Complexity
c) Large Scale/Sophisticated Embedded Systems:
➢ They have highly complex hardware and software, built
around 32-bit or 64-bit processors/controllers, RISC
processors, SoC, scalable and configurable processors.
➢ They are used for cutting-edges applications that need
hardware and software co-design, where components
have to be assembled into the final system.
➢ They also contain a high-performance real-time OS for
task scheduling, prioritization and management.
51
Classification of Embedded Systems
Based on performance and functional requirements
a) Standalone Embedded Systems
➢ Standalone embedded systems are independent systems
that do not depend on other systems. They work by
themselves.
➢ Examples of stand-alone embedded systems are mp3
players, digital cameras, video game consoles,
microwave ovens and temperature measurement systems.
52
Classification of Embedded Systems
Based on performance and functional requirements
b) Real Time Embedded Systems
➢ A real-time embedded system is a system that gives a
required output within a specified time.
➢ They follow the time deadlines for completion of a task.
➢ Classified into two types : soft real-time embedded
systems and hard real-time embedded systems.
➢ Automotive airbag control systems, flight control
systems are examples of realtime embedded systems.
53
Classification of Embedded Systems
Based on performance and functional requirements
c) Networked Embedded Systems:
➢ These types of embedded systems are related to a
network to access the resources from one place.
➢ The connected network can be LAN, WAN or the
internet.
➢ Home security system, ATM machines, card swipe
machines are examples of networked embedded systems.
54
Classification of Embedded Systems
Based on performance and functional requirements
d) Mobile Embedded Systems:
➢ Mobile embedded systems are compact, easy to use and
require fewer resources.
➢ They are used in portable embedded devices like mobile
phones, digital cameras, mp3 players and personal digital
assistants, etc.
55
Classification of Embedded Systems
Based on deterministic behavior
a) Hard Real time system:
➢ The system should strictly adhere to the timing constraints for
a task.
➢ A hard real-time system must meet the timing deadlines
without any delay.
➢ Missing the deadline would cause failure to the system or
user.
➢ Examples : Airbag control system and antilock braking
system of vehicles
➢ For a hard real-time system, “A late answer is always a
wrong answer”.
56
Classification of Embedded Systems
Based on deterministic behavior
b) Soft Real time system:
➢ In these types of embedded systems deadline is not
strictly followed.
➢ Missing deadlines for tasks are acceptable for soft real-
time systems, but the frequency of deadlines missing
should be within the compliance limit.
➢ Eg. ATM In this case, “A late answer is an acceptable
answer”, but it could have been done a bit faster.
57
Classification of Embedded Systems
Based on triggering
➢ The embedded systems are classified into two types
based on the triggering of the systems: time-triggered
and event-triggered.
➢ If a system is activated or triggered based on the pre-
defined task or preset time, then such a system is said
to be the time-triggered embedded system.
➢ On the other hand, if the system is triggered based on
some activity like change in temperature or change in
pressure, such system is said to be an event triggered
embedded system.
58
Application of Embedded Systems
Automotive Industry Household Appliances Biomedical And Healthcare Communications
• Gateways
• Active Suspension • Answering Machines • Ambulance
• Hubs
• Antilock Brakes • Battery Chargers • Blood Pressure Monitor
• Modems
• Cruise Control • Clothes Dryer • Cardiac Monitors
• Network Bridges
• Fuel Injection • Coffee Maker • Dialysis Machines
• Network Switches
• Navigation • Cooker • Electric Wheelchair
• Routers
• Transmission Control • Lighting Systems • Electronic Stethoscopes
• Satellites
• Microwave Ovens • Hearing Aid
Consumer Electronics • MP3 Player • Infusion Pumps
Computer Peripherals
• • Remote Controls • Medical Imaging
Calculators • Hard Disk Drives
• • Smart Phones • Pacemaker
Camcorders • Network Adapters
• • Smart Refrigerator • Patient Monitoring System
Cell Phones • Printers
• Digital Cameras • Smart Speakers • Prosthetic Devices
• Games • Thermostats • Smart Bed
• Personal Digital Assistants • Trash Compactor
• Smart Briefcase • TV Set-Top Boxes Defense Special
• • Washing Machines
Smart Watch • Missiles • Avionic Systems
• Toys • Signal Tracking Systems • Elevators
Business Equipment •
• Wearable Computer Fire Control
Office Automation • Alarm Systems • Life Support Systems
• Automated Teller Machines Industrial Control • Police Vehicle
• Fax Machines
• Automatic Toll Systems • Robotics • Robots
• Monitors
• Card Readers • Factory Control • Satellite Phones
• Multifunction Device
• Card Registers • Teleconferencing Systems
• Photocopiers
• Electronic Instruments Entertainment • Traffic Light Controller
• Printers
• Point Of Sales Terminals • Multimedia Systems • Video Conferencing
• Scanners
• Product Scanners
59
Classification of Embedded Systems
1.Data Collection/ Storage/ Representation
2.Data Communication
3.Data (signal) Processing
4. Monitoring
5. Control
6.Application Specific User Interface
60
Design productivity gap
61
Design productivity gap
62
The mythical man-month
63
Summary
• Embedded systems are everywhere
• Key challenge: optimization of design metrics
– Design metrics compete with one another
• A unified view of hardware and software is necessary to improve
productivity
• Three key technologies
– Processor: general-purpose, application-specific, single-purpose
– IC: Full-custom, semi-custom, PLD
– Design: Compilation/synthesis, libraries/IP, test/verification
64
For further references,please scan me:
65