Title: Lecture-1 Time: 9:00-9:50 am
1Lecture-1 Time 900-950 am
Welcome to IS ZC 424 Software for Embedded
Systems Instructor in charge Virendra S Shekhawat
- Course Objective and Introduction
- Introduction to Real Time Embedded Systems
- Timeliness Constraints
- Questions???
2Course Objective
- Primary focus on
- Introduction to embedded and real-time system
software process - Issues and challenges in developing software for
embedded systems - Methodologies, tools and techniques for
developing such kind of software - Why we need a software development process for
embedded and real time systems???
3The course will enable you to
- Identify the unique characteristics of real-time
and embedded system - Explain the general structure of a real-time and
embedded system - Define the unique design problems and challenges
of real-time and embedded systems using UML - Apply real-time systems design techniques to
various software programs
4What is an embedded system? -1
- Definition(s)
- A embedded system contains a computer as a part
of a large system and does not exist primarily to
provide standard computing services to the user - An embedded system is a special-purpose computer
system designed to perform one or a few dedicated
functions. - A specialized computer system that is part of a
larger system or machine. Typically, an embedded
system is housed on a single microprocessor board
with the programs stored in ROM
5What is an embedded system? -2
- Is a special purpose system designed to perform a
few dedicated functions. - Small foot prints (in memory)
- Highly optimized code
- Examples
- Robot controller, Microwave Oven, VCR, Cell
phones, mp3 players - The components in an mp3 player are highly
optimized for storage operations. (For example,
no need to have a floating point operation on an
mp3 player!)
6What are Real Time Systems?
- Definition(s)
- Real time systems are concurrent systems with
timing constraints. - Real time systems are computer systems that
monitor, respond to, or control external
environment. This environment is connected to the
computer system through sensors, actuators and
other input-output devices - Examples
- Medical systems, Manufacturing systems with
robots, chemical plants, firing weapons, traffic
control systems, process control for power
plants, aircraft monitoring system etc
7Example Real-time systems
8Realtime System Characteristics
- RTS have to respond to events in a certain
pre-determined amount of time. - The time constraints have to be considered during
planning, design, implementation and testing
phases. - Internal failures due to software and hardware
fault have be handled satisfactorily. - You cannot simply pop-up a dialog box that says
send report or dont send report. - Also external failures due to outside sources
need to be handled.
9Real-time system concepts
- A system is a mapping of a set of input into a
set of outputs. - Example A digital camera
- Set of input including sensors and imaging
devices producing control signals and display
information - Real time system can be viewed as a sequence of
job to be scheduled. - Response time
- It is the time between presentation of a set of
inputs to a system and the realization of the
required behavior, including availability of all
associated outputs
10Computing in Real Time Systems
- By Computers we often mean
- General-purpose, digital computers that interact
with humans and possibly with each other. - Change in Trend
- More special purpose-computers
- More scenarios without humans in the loop
- More environments where computing is not the
explicit / main goal.
11Contrast with traditional system
- Computers
- Interactive
- Discrete Time not counted
- Stand-alone / Networked
- Isolated Environment
- Embedded RT Systems
- Reactive (Event-driven)
- Timeliness is important to critical
- Computing Component may be controlled by external
system - Alien Environment (may affect function)
12Implications (of being embedded) 1
- Low cost hardware
- Software Development cost (one-time) vs.
Per-shipped-item cost (recurring) - Very Limited Storage Space
- Convoluted Algorithms and Aggressive Optimization
- Development Environment is different from
execution environment - Constrained process innovative techniques?
13Implications (of being embedded) 2
- Long and un-interrupted running times
- Cant reset flight control system or cardiac
pacemaker at whim - Alien (Uncontrolled) Environments
- Increase reliability constraints
- Timeliness expectations
- Specific approaches for design, development and
testing
14Basic Model of A Real-Time System1
Input Interface
Input Conditioning Unit
Sensor
Human Computer Interface
Real Time Computer
Output Interface
Output Conditioning Unit
Operators
Actuator
15Basic Model of A Real-Time System 2
- Sensor
- Converts some physical characteristic of its
environment into electrical signals - Ex. Photo-voltaic cell, thermocouple
- Actuator
- Takes inputs from the output interface of the
computer and converts electrical signals into
physical actions - Ex. Motion, change of thermal, electrical
characteristic of some objects - Heaters and motors are common examples of
Actuators
16Basic Model of A Real-Time System 3
- Signal Conditioning Unit
- Signals have to be improved before sending to
computer/actuator - Ex. Voltage amplification, voltage level
shifting, frequency range shifting and filtering - Interface Unit
- A/D or D/A conversion by using a register
17Notions of (Real) Time
- Real-time system is the one in which logical
correctness is based on both the correctness of
the output as well as their timeliness. - Time Constraints 3 common types
- Hard, Soft and Firm
- A soft real-time system is one in which
performance is degraded by failure to meet
response-time constraints. - A hard real-time system is one in which failure
to meet a single deadline may lead to complete
and catastrophic failure.
18Hard Time
- Correctness of a response (to a stimulus)
includes a description of timeliness - Delay is unacceptable (i.e. treated as failure)
- Deadlines specified as points in time fixed
relative to an event - Cardiac pacemakers pacing time
- Robot
- Tasks are communication with the host system,
logging all completed activities, sensing the
environment to detect any obstacles present,
tracking the objects of interest, path planning,
effecting next move, etc. - Hard Real time tasks Detecting obstacles and
reacting to it
19Soft Time
- Timeliness constraints that do not strictly
affect correctness - Delays in individual computations acceptable
- Accumulated delays may lead to failure
- Typical scenarios Transactions, User Interfaces
- Delay in booking a ticket is tolerable
repeated/accumulated delays may close the booking
counter - Delay in refreshing the screen is annoying but
acceptable. Repeated/Accumulated delays can make
the system unusable. - Web browsing
20Firm Time
- A combination of hard and soft constraints
- Short term softness and long term hardness
- Cumulative hard deadline
- Monitoring software if a system does not
respond within a certain deadline it is
pronounced dead (which is a form of failure) - Example Video conferencing, Satellite based
tracking of enemy movements
21Events in a Real Time System
- Stimulus Events
- Generated by environment act on the system
- Produced asynchronously (i.e. aperiodically) or
periodically - Response Events
- Usually produced by the system in response to
some stimulus events - Ex temperature exceeds 1000 degree in a chemical
plant ?system responds by switching off the
heater
22Source of time constraints
- Time bound between a (stimulating) event and its
reaction - Reaction includes one or more tasks (sequential
or concurrent) - Bound determined by external often physical
requirements - Time bound is distributed (i.e. budgeted for each
task that must be performed)
23Expectations of Timeliness
- Timeliness of behavior
- Expressed as actual execution time
- An associated budget time constraint
- Extreme case deadline (single time value)
- Schedulability of a system
- Hard real time systems all deadlines can be
guaranteed (to be met) under all scenarios - Often hard real-time is easier to specify and
analyze (used as extreme case for others as well)
24Classification of timing Constraints
- Delay Constraint
- Notion of the minimum time that must elapse
between the occurrence of two arbitrary events. - t(e2) - t(e1) gt d
- Deadline Constraint
- Notion of permissible maximum separation between
any two arbitrary events - t(e2) - t(e1) lt d
- Duration Constraint
- Period of time over which event acts
25Source of time constraints
- Time bound between a (stimulating) event and its
reaction - Reaction includes one or more tasks (sequential
or concurrent) - Bound determined by external often physical -
requirements - Time bound is distributed (i.e. budgeted for each
task that must be performed)
26Summary
- Basic characteristics of Real time Embedded
systems - Basic model of a RT system
- Various timing constraints
27