0% found this document useful (0 votes)
69 views41 pages

1-Embedded Systems An Introduction-R

This document provides an overview of embedded systems through a lecture presentation. It defines embedded systems as special-purpose computers designed to perform dedicated functions with real-time constraints. Embedded systems control many common devices like washing machines and cameras. The document discusses the characteristics of embedded systems including being special-purpose, tightly constrained, reactive and real-time. It also covers embedded system software development, real-time operating systems, system on chip technology, and challenges in implementing embedded systems.

Uploaded by

ahsankhan01
Copyright
© Attribution Non-Commercial (BY-NC)
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)
69 views41 pages

1-Embedded Systems An Introduction-R

This document provides an overview of embedded systems through a lecture presentation. It defines embedded systems as special-purpose computers designed to perform dedicated functions with real-time constraints. Embedded systems control many common devices like washing machines and cameras. The document discusses the characteristics of embedded systems including being special-purpose, tightly constrained, reactive and real-time. It also covers embedded system software development, real-time operating systems, system on chip technology, and challenges in implementing embedded systems.

Uploaded by

ahsankhan01
Copyright
© Attribution Non-Commercial (BY-NC)
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/ 41

Embedded Systems

Instructor: Shaftab Ahmed

Lecture # 1
Reference
Embedded System Design
Vahid / Givargis
What is an Embedded System

 An embedded system is a special-purpose


computer system designed to perform one or a few
dedicated functions, often with real-time computing
constraints.
 It is usually a part of complete device including
hardware and mechanical parts.
 On the other hand a general-purpose computer like
Personal Computer, can do many different tasks
depending on programming.
 Embedded systems control many of the common
devices in use today e.g. Washing Machine,
Camera, Mobile and Microwave Oven etc.
12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 2
More Examples of Embedded Systems

 Air conditioner  Navigation system


 ATM machine  PDA
 Battery charger
 Photocopier
 Digital camera
 Printer
 Router
 DVD player
 Scanner
 Fax machine  TV
 Home security system  Video game console
 Mobile phone  Wearable computer
 Modem

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 3


History

 In the earliest years of


computers in 1930 – 40s,
computers were sometimes
dedicated to a single purpose
task.

 One of the first recognizably


modern embedded system
was the Apollo Guidance
Computer
Developed by Charles Stark
Draper at the MIT
Instrumentation Laboratory.

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 4


Characteristics (1/4)

 Special-purpose
 Typically designed to

execute a single program


sequence repeatedly
 Washing Machines
 Microwave Oven

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 5


Characteristics (2/4)

 Tightly constrained
 Low cost

 Simple systems

 Fewer components based

 Performs functions fast

enough
 Minimum power

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 6


Characteristics (3/4)

 Reactive and real-time


 Reactive: Continually reacts to external events

 Real-time: Must compute certain results in real-time

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 7


Characteristics (4/4)

 Hardware and software co-


exist
 The software written for

embedded systems is
often called firmware
 Is stored in read-only

memory or Flash memory


chips rather than a disk
drive

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 8


Differences from usual computer programs

 Several components of vastly


different functionalities are found in
embedded system software
 Each software component execution
speed must be optimum
 Software must have controlled
complexity and must be thoroughly
tested and debugged for errors
 Response time constraint and strict
deadlines
 All components must use the
memory optimally

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 9


Real-Time Operating System

 RTOS is essential for large scale embedded systems.


 It is an Operating System for response time-controlled and event-
controlled processes.

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 10


Real-Time Operating System

 Modules of a RTOS include:


1. Basic OS function
2. Time Management
3. Predictability
4. Priorities Management
5. IPC Synchronization
6. Time slicing
7. Hard and soft real-time operability

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 11


Embedded OS players

 Mentor Graphics VRTX


 Palm Computing PalmOS
 Symbian SymbianOS
 Real-time control Embedded NT/XP
 Internet devices Windows CE (CE.NET)
 Handheld PC’s and PDA’s Pocket PC 2002
 Open Software RTLinux
 Tiny Operating System TOS

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 12


System on chip (SoC)

 SoC Integrates all components of a computer or other


electronic system into a single integrated circuit (chip).
 It may contain digital, analog, mixed-signal, and often
radio-frequency functions – all on one chip.
 Typical application of SOC is embedded systems like
Microwave oven controller.
 SiP (System in Package) contains a SoC in an
application package to perform intelligent functions

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 13


Software Development

 The software development process can be


represented by lifecycle e.g.
SDLC System Development Life Cycle
Waterfall or Linear incremental model
 Four stages of developing an embedded system
 Analysis

 Design

 Implementation

 Maintenance

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 14


User Interface

 Embedded systems range from


 No user interface at all

 Dedicated only to one task

 Full user interfaces similar to

desktop operating systems in


devices such as PDAs.

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 15


Digital Camera Functional Block Diagram

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 16


Challenges and Opportunities

Challenges
 Diversity of operating environments and platforms

poses a real challenge in deploying software across


multiple platforms and configurations.
 Portability and reusability of the applications.

Opportunities
 Open Software Development i.e. Use of embedded

operating systems providing POSIX interface.

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 17


Implementation Issues

 Computing performance
In a real time embedded control environment is not simply an
instructions- per-second rating.
 While raw computational performance is important, other

factors which are vital to system performance include interrupt


response characteristics, context switching over head, and I/O
performance.
 Since real time tasks are characterized by frequent, often

unpredictable events, the performance of a processor at


handling interrupts is crucial to its suitability for real time
processing.
 Since a control application usually involves a reasonable

amount of communication with the outside world (such as


reading sensors and activating control circuits), good I/O
performance is also important.
12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 18
Implementation Issues:

 The same resource must be shared between different


tasks.
 Sharing

As a result of this competition for the CPU use, the


timing of the tasks is not fully determined and the
time delays should be taken into account.
 Alternative control algorithms should be ready to get
the control of the process.
 Adaptation:

Working in a changeable environment, the control


goals and options may change and the control
algorithms should be adequate to new scenarios.

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 19


Implementation Issues:


Working conditions, such as priority, allocated time and
memory or signals availability may change.
 Thus, complexity, structure and basic properties of

the control system will change.


 Variable delays should be considered.
 The synchronicity of signals cannot be ensured

anymore.
 Validation and certification.
 Any embedded control system should be proved to be

reliable and safety operation should be ensured.

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 20


General Purpose Processors

Data Path consists of the


circuitry for transforming data
and for storing temporary data.
It contains ALU and Register File

The functionality available in


General Purpose Processors
include:
Control Unit
CPU Register files
On-Chip Multi level Caches
Instruction Set
Architecture
On-Chip peripherals
Pipeline Requirements
Multiplicity of CPU cores
21
12/08/21 Arithmetic
Embedded Systems Spring 2011 Shaftab Ahmed
Computation
Single-purpose processors (SPP)

Single-purpose processors contain


digital circuits designed to execute
exactly one program e.g. coprocessor,
accelerator or peripheral
Features
 Contains only the components
needed to execute a single program
 No program memory
Benefits
 Fast
 Low power
 Small size
 Small Datapath

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 22


Digital Signal Processor (DSP)

 DSP is an example of single purpose processor that is highly


optimized to process large amounts of data
 It usually contains many registers, memory blocks, multipliers
and other arithmetic units
 DSPs are used for filtering, transformation etc using functions
like Multiply and Accumulate etc
 The source for such data may be a digital camera, voice packet or
an audio clip

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 23


Application-specific processors (ASP)

 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

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 24


Embedded Processors

 An Embedded Processor is a special purpose processor which


when used in an embedded system design can perform only
dedicated one or few tasks.
 It differs from the normal general purpose computers like
servers and personal computers in the sense that later can be
programmed to perform diverse range of tasks.
 Why design an embedded processor when the general purpose
can serve the same purpose?
 Cost reduction

 Energy efficiency

 Size reduction (Such as SmartDust in MEMS/mote)

 Tailored for almost anything depending upon requirements

such as specialized Signal Processing capability

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 25


Embedded Processors

Some of the areas of application for Embedded Processors


include:
 Portable Devices: PDA’s, Digital Cameras, MP3 players,
Mobile phones
 Automotives: automobile engine control systems,
Tracking systems, Functionality check systems
 Networking: Ethernet switches, routers
 Medical Equipment: Medical Imaging and video of inside
of body, Ultrasounds etc
 Industrial Controls: Nuclear Reactor Control, Lathe
Machine Controls etc

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 26


Comparison of GPP and Embedded Processor

Functional Block Diagram of the Functional Block Diagram of the


embedded processor General purpose CISC processor.

In addition to differences above


the instruction set architecture is also different
12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 27
Embedded Processing Areas

The latest application and research areas for embedded


processor architectures include:
 Wearable Computing

 Ubiquitous Computing

 System On Chip

 Multiprocessor System On Chip

 Network on Chip

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 28


Full-custom IC

All layers are optimized for an embedded system’s


particular digital implementation like:
 Placing transistors

 Sizing transistors

 Routing wires

Benefits
 Excellent performance, smallest size, low power

 Drawbacks

 High Non-Recurring Engineering (NRE) cost (e.g.,

$300k), long time-to-market, high risk

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 29


Gate Array

Features
 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

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 30


Standard Cell

Features
Instead of designing the actual silicon, the designer
uses pre-built “blocks” that have already been tested
and proven.
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

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 31


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

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 32


PLD (Programmable Logic Device)

Field-Programmable Gate Array (FPGA)


Benefits
 Low NRE costs, almost instant IC availability

Drawbacks
 Bigger, expensive (perhaps $30 per unit), power

hungry, slower

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 33


Independence of processor & IC technologies

Basic tradeoff
 General vs. custom

 Processor technology or IC technology

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 34


ES development methodology

 Classical development was done through separate


hardware and software developer teams who
integrated their work towards the end which lacked in
desired optimization levels and turn around time etc.
 Recent trend is to use a Unified view of the design
process for Hardware and Software
 Hardware synthesis tools have changed the role of
hardware designers essentially to write sequential
programs through HDL
 Hardware / Software Co-Design is a field that
emphasizes a unified view of hardware and software
for which synthesis tools and simulators are used

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 35


Unified View of Design Process

Co Design Ladder
12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 36
Conclusion Revisiting

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 37


Embedded Processor Architecture

Factors influencing embedded processor architecture:


Real-time processing:
Some computation must be done within a certain time frame, or
else the system would fail. Consider the following example:
A system fetching/compressing/sending voice data
Timing constraint:
It must fetch the voice data after every specified interval, it
must compress/decompress/send the audio data within a
certain time frame (e.g. 22.5 msec in a MELP algorithm), and
then transmit it to a remote end or human ear in that
particular time, or else there may be un-acceptable voice quality
degradation.

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 38


Embedded Processor Architecture
The real-time processing can further be divided into two categories:
 Hard real-time system:

It is the one in which there is an absolute maximum time in


which a certain processing has to complete.
 For example voice compression/processing must complete within a
certain dead line always.
 Dynamic branch predictions and cache mechanisms of the general
purpose processors are advantageous for the non-real-time
applications, but would result in a catastrophe in the hard real-time
requirements.
 Soft real-time system:
It is the one in which the average time of a particular task and
the number of instances may exceed by a limited time
 For example nullifying the effect of the varying inter-arrival times of
voice packets through jitter buffers over a digital voice communication
link.

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 39


Embedded Processor Architecture
Special signal processing capabilities
 DSPs are used for filtering, transformation etc using

functions like Multiply and Accumulate etc


 They usually require many registers, memory

blocks, multipliers and other arithmetic units

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 40


Embedded Processor Architecture
 Power consumption:
(i) These are mostly battery operated systems so long operation
life before recharging.
(ii) virtually no special cooling arrangement required decreasing
cost as well as size
(iii) The application code also has to dictate the power
consumption: least instruction + more work by processor =
least power consumption
 Limited memory:
The memory size is always less in an embedded application as
only few or only one program would be required to run on it. This
factor is determined by many things.
(i) size would become smaller
(ii) Overall system cost would be reduced
(iii) System would consume much less power

12/08/21 Embedded Systems Spring 2011 Shaftab Ahmed 41

You might also like