0% found this document useful (0 votes)
7 views29 pages

L01 Intro

Uploaded by

fikru
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views29 pages

L01 Intro

Uploaded by

fikru
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 29

Embedded Real-Time Systems

Dimitris Metafas, Ph.D


Embedded Real-Time Systems

Lecture: Introduction to
Embedded Systems
Embedded Systems:
Motivation
Motivation
 Continuously increasing interest (in industrial, research and
education sectors) as well as rapid evolution in embedded
systems in the last years…
 Driving Forces:
 Progress in microelectronics / microprocessor technology,

and real-time operating systems (cost, performance, spread).


 Computer science / engineering is now part of the basic

education in all scientific fields, as well as part of everyday


life.
 Strong Belief: if a system can be controlled, it can be

controlled by a microprocessor!
 Huge industrial activity in embedded systems

Slide 4
Embedded Systems:
Definitions
What is an embedded system?
1. Special Purpose Computer System
2. Embedded or ‘hidden’ in another system
3. Has several restrictions in design / development / operation
4. Embedded systems are Reactive
5. Often, it may have real-time restrictions (requirements for
responding before a deadline expires)

Slide 6
What is an Embedded System?
 First, it is a computer system: anything that uses a
microprocessor, but is not a general-purpose computer:
 Consumer electronics:

 cellular phones, set­top boxes, televisions, remote controls, game


consoles, Internet appliances, PDAs, Alarm Systems, hi-fi systems,
home cinemas,…
4

 Home appliances (“White Appliances”) like refrigerators, washing


machines (…which now-days include microprocessors and may also
have internet connection…)
 Telecommunications systems equipment
 Defense and weapon systems
 Automotive systems
 Systems for Process control
 Robots, Cars, Planes, Nuclear plants,…, include several
microprocessors / embedded systems

Slide 7
What is an Embedded System?
 Second, it is embedded, or ‘hidden’ inside another system:
 the user interacts with a special-purpose system, and not with

the computer inside the system


 the end-user typically does not or cannot modify or upgrade

the internal system himself

Slide 8
What is an embedded system?
 Third, it has many sets of constraints / limitations, from the following:
 Cost (€0.1 adds up over thousand/million units…)

 Processor speed (for cost, size reasons)

 Memory (probably no hard disk, sometimes only few Kbytes only)

 Display and user interface (…also it may target users that are computer

illiterate)
 Network bandwidth (if network connection at all)

 Low Power Consumption (limited battery, lack of cooling system)

 Small Size, Low Weight (handheld devices, transportation cost issues)

 Reliability

 Safety-critical (must function correctly, must not function incorrectly)

 Security

 Operation in Harsh environmental conditions (Heat, vibration, shock,

power fluctuations, RF interference, lightning,…)

Slide 9
What is an embedded system?
 Fourth: Embedded Systems are Reactive:
 computations occur in response to external events, that may

be:
 Periodic events (e.g., rotating machinery and control loops, timers,…)
 Aperiodic events (e.g., button closures, user interactions)
 Fifth: it may have real-time requirements (responding before a
deadline expires)
 Real-Time: timing correctness is part of system

correctness
 Hard real-time
 Absolute deadline, beyond which answer is useless
 Deadline may include minimum time as well as maximum time
 Soft real-time
 Occasionally missing a deadline is not catastrophic
 Utility of answer degrades with time difference from deadline
 In general, Real Time does not mean Real Fast

Slide 10
A Typical Embedded System
An Embedded Designer's View…
CPU: Performance, Compilers, Operating Systems, Cost.
Memory Size, I/O connections, peripherals, Cost.

Functionality, Time­to­market, Cost & Cost. And a customer’s


view…:
Memory Reduced Cost
Increased Functionality

Cache Improved Performance

Microcontroller Increased Dependability

Sensors A/D CPU D/A Actuator

Diagnostic Auxiliary Systems


MMI I/O (power, cooling)
tools
Electro-mechanical
backup and safety

External
Environment

Slide 11
Embedded System Examples – Diverse Restrictions
 Pocket remote control RF transmitter
 100 KIPS, water/crush­proof, fits in pocket, 5­year battery life

 Software hand­crafted for small size (less than 1 KB)

 Industrial equipment controller (e.g., elevator)


 1­10 MIPS for 1 to 10 CPUs, 1 ­8 MB memory

 Safety­critical software; real­time control loops

 Digital TV Set Top Box


 50-350 MIPs, 2-16MB FLASH, 4-32 MB SDRAM

 Software may be handcrafted at low layers, but at upper layers it supports

hardware agnostic applications downloadable over the network!


 Military signal processing (e.g., Radar/Sonar)
 1 GFLOPS, 1 GB/sec I/O, 32 MB memory

 Software hand­crafted for extremely high performance

Slide 12
Trends in Embedded Systems
 Increasing code size
 migration from hand (assembly) coding to high-level

languages
 Reuse of hardware and software components
 processors (micro-controllers, DSPs)

 software components (drivers)

 Increasing integration and system complexity


 integration of RF, DSP, network interfaces,…

 32-bit processors, I/O processors

Slide 13
Microprocessor
 There exists at least one microprocessor in (the heart of) an
embedded system
 Microprocessor: CPU, memory, cache
 Microcontroller:
 Microprocessor, plus:

 Controllers for I/Os, peripherals, A/D-D/As, DMAs,

special devices tailored for specific application, etc.


 Extra Memory / Caches

 Microprocessors are general purpose - target a broad application


area
 Microcontrollers are specialized, tailored for specific
applications (e.g. for DVDs the microcontroller includes MPEG-
2 hardware).

Slide 14
Embedded Systems:
Professional Opportunities
Why embedded systems are important?
 Embedded Systems dominate the worldwide computer system
market
 Yearly:
 The worldwide market of general purpose computers is of the

order of billion US $
 The worldwide market of embedded systems is also of the

order of billion US $
 ~100 million desktop PCs are produced

 ~6 billion microprocessors for embedded systems are

produced (one for each person on earth)


 While Desktop PC market is saturating, embedded market is
growing
 Embedded systems account for 90-95% of all microprocessors
produced worldwide!

Slide 16
Embedded System Categories
 General Computing
 Applications similar to desktop computing, but in an embedded package

(lower cost, targeting also computer illiterates,…)


 Set­top boxes, game consoles, internet appliances, automatic tellers,

wearable computers),…
 Control Systems
 Closed­loop feedback control of real­time systems

 Vehicle engines, chemical process, industrial process, nuclear power,

flight control,…
 Signal Processing
 Computations involving large data streams (signals)

 Radar, Sonar, video compression, Digital TV / HDTV broadcast centers…

 Communication & Networking


 Switching and information transmission

 Telephone systems, Internet, satellite systems…

Slide 17
Examples
 Telecommunications
 Wireline Access Systems

(copper enhancement,
DSLAM)
 Wireless Access Systems

(microwave systems)
 Terminal Equipments

(ISDN modems, DSL


modems, IP phones,
payphones,…)

 Defense Systems
 Secure Communications

 Crypto-systems

Slide 18
Examples
 General Computing
 DiTV Set-top boxes, Home-
Gateways, Home Networking
 Interactive TV Applications /
Electronic Program Guides
(embedded software)
 Content Distribution Systems
 Fleet Management Systems
 Systems and terminal equipment
for lottery operations
 Information kiosks
 Smart Cards Applications
 Cash Registers
 Energy Meters

Slide 19
Several Types of Embedded System Functions
 Application­specific interfacing
 Buttons, bells, lights,...

 High­speed I/O

 Signal processing
 Multimedia data compression

 Digital filtering

 Control Laws
 PID control

 Fuzzy logic

 Sequencing logic
 Finite state machines

 Switching modes between control laws

 Fault response
 Detection & reconfiguration

 Diagnosis

 ...

Slide 20
Embedded Systems:
Education
Embedded Systems Designer’s Knowledge
 Hardware and Software
 The ‘low level’: computer architecture, micro-processors / micro-controllers,
assembly language, A/D-D/A converters, integrated circuit (ASIC/FPGA)
design
 The ‘higher level’: programming languages C/C++, (Java ?), object-oriented
systems
 Operating systems:
 …mainly the “lower half” of the OS (which is connected to h/w):

interrupts, synchronization, process communication, scheduling,


concurrency
 …but also the “upper half” (which is connected to applications)

 Embedded systems often use simple operating system kernels or real-time

operating systems, with typically small footprints and support for real-
time scheduling
 Applications: networking, signal processing, control

Slide 22
Embedded Systems Designer’s Skills
 Global System View
 …the system is not just the microprocessor…

 …not just digital logic…

 HW/SW Boundaries
 …optimal and under constraints (cost, space, performance,…)

 Products
 …from specs to production…

 …performance vs. cost trade-offs…

 …cost, cost, cost…

 …analyzability, how can I be sure that the system functions correctly?…

 …not just design – full product life-cycle…

 Will / Ability for Teamwork


 Communication Skills
 …other field scientists / engineers…

 …marketing, production…

 …end-customer…

Slide 23
Embedded System Designer: Global View
Multi-Discipline
 Electronic Hardware
 Mechanical Hardware
 Software
 Control Algorithms
 Signal Processing
 Humans Multi­Objective
 Society/Institutions  Dependability
 Affordability
 Safety
 Security
 Scalability
 Timeliness Multi­Phase
 Requirements
 Design
 Manufacturing
 Deployment
 Logistics
 Retirement

Slide 24
Education
 Difficulties
 Embedded systems cover a wide spectrum of computer

science and various engineering sectors.


 Embedded Systems Education requires a wide background for

the students.
 Intensive lab training is required.

 Target
 Courses must focus in the System / global view (not just

relevant subjects e.g. operating systems, microprocessors,


etc.)

Slide 25
Embedded System Design approaches
 Embedded problems typically solved using one of the following
three approaches

 Use a combination of custom designed hardware and possibly


some software on an embedded processor that is integrated
with the hardware

 Use custom software designed to run on an off-the-shelf


embedded processor (our focus)

 Use an application specific processor (a processor that has


been optimized to run the specific class of applications
efficiently) with custom software

Slide 26
Pre-Requisite Knowledge/Skills
 Basic, working knowledge of computer architecture

 Knowledge of (and experience with) C programming


 Fundamentals of data structures and algorithms
 Just knowing Java is not enough
 Need to know, understand and manipulate “pointers”

 Some experience with assembly-language programming


 Knowledge of instruction sets of any modern microprocessors
(x86, ARM, PowerPC, 680x0, MIPS) should be a helpful
starting point

Slide 27
Sources and Literature
References
 ARM manuals
 Wayne Wolf, Computers as Components: Principles of
Embedded Computing System Design
 Steve Heath, Embedded Systems Design
 Bryant, O’Hallaron, Computer Systems – A Programmer’s
Perspective
 Ben Ari, Principles of Concurrent and Distributed
Programming
 Jane Liu, Real-Time Systems
 Rajeev Gandhi, Fundamentals of Embedded Systems (CMU
course)

Slide 29

You might also like