0% found this document useful (0 votes)
19 views

Embedded Systems Lec1

This document discusses embedded systems design, verification, and testing. It introduces embedded systems and their important characteristics like resource constraints, reactivity, real-time behavior, fault tolerance, and low power. It also discusses computer-aided design approaches like modeling, design, analysis, and model-based development for embedded systems.

Uploaded by

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

Embedded Systems Lec1

This document discusses embedded systems design, verification, and testing. It introduces embedded systems and their important characteristics like resource constraints, reactivity, real-time behavior, fault tolerance, and low power. It also discusses computer-aided design approaches like modeling, design, analysis, and model-based development for embedded systems.

Uploaded by

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

Embedded Systems:

Design, Verification
and Test
Arnab Sarkar
Dept. of CSE, IIT Guwahati

Embedded Systems 1
Setting the Stage
 Computers are no longer isolated desktop entities
 They are integrated into our lives via the gadgets /
systems we directly / indirectly use:
 Mobilephones, washing machines, microwaves,
automotive control, flight control, Smart Grids etc.

 Embedded Systems
A device that includes a computer but is not itself a
general-purpose computer
 Computers as components

Embedded Systems 2
What’s Important for Embedded Systems

 Stringent resource constraints Suppose you want to design a


 Compact systems pacemaker
 Simple processors

 Limited memory

 Reactive
 High Performance

 Real-time
 Predictable

 Ensured-worst case response

 Fault-Tolerant
 Low power
 Time-to-market

Embedded Systems 3
Computer Aided Design
 Modern designs are too complex to be developed manually
 Increasing levels of integration of devices on a substrate
 Multi-million gate chips – VLSI
 Diminishing cost per transistor
 Efforts towards system level integration
 Reduces number of components
 Enhances performance
 Reduces design cost
 Improves reliability
 CAD provides a systematic step-by-step design procedure
 From initial requirements specification to final implementation

Embedded Systems 4
Computer Aided Design
 Higher integration has led to huge power dissipation
 Handling hot-spots
 Focus towards low power design at each stage
 Paradigm shift towards fault-tolerant designs
 safety-critical embedded devices – wearable healthcare devices
 Manufacturing systems with specified levels of reliability
 Increasingly stringent design metrics
 Huge design space
 Consider a pacemaker
 performance sensitive, small size, low power, fault-tolerant, verifiable,
testable, low cost
 Efficient algorithms are required at each design stage
 To find an optimal solution from an enormous set of feasible
implementation choices
Embedded Systems 5
Modeling, Design and Analysis
 Modeling is the process of gaining a
deeper understanding of a system
through imitation. Models express what a
system does or should do.
 Design is the structured creation of
artifacts. It specifies how a system
does what it does.
 Analysis is the process of gaining a
deeper understanding of a system
through dissection. It specifies why a The three phases
system does what it does (or fails to do are overlapped and
what a model says it should do). iterative

Embedded Systems 6
Model-based Development
 Models are abstract and high level descriptions
of design objects
 Shows relevant features without associated details
 Can be rigorously validated
 Formal Verification
 Models can be debugged and revised
 Automatic generation of final design
 Traceability

 The paradigm
(Model – Design – Verify – Debug)+
– Implement – Validate
Embedded Systems 7
Embedded Systems
FSM Based Behavioral Modeling
 Behavioral or Functional Model: Control flow among components
 Architectural or Structural Model: Interconnection among components
 Finite State Machines – One of the most popular behavioral modeling
formalisms
 The system moves in discrete steps from one state to another by
executing transitions
 State: denotes a specific valuation of the system variables
 Transition: denotes a change in valuation

press?
Off Light

Press?

Torch Light Control


Embedded Systems 8
Real-time Systems
 A major class Embedded Systems are real-time

 Real-time Systems
A system whose specification includes both functional as
well as temporal notions of correctness.
 Logical Correctness: Produces correct outputs.

 Temporal Correctness: Produces outputs at the right time.


 It is not enough to say that “brakes were applied”
 You want to be able to say “brakes were applied at the right time”

Embedded Systems 9
Modelling RT Embedded Systems
Intelligent Light Control

press?

press? Press?
Off Light Bright

Press?

WANT: If press is issued twice quickly


then the light will get brighter; otherwise the light is
turned off.

Embedded Systems 10
Timed Automata
Intelligent Light Control

press?
X<=3
press? X:=0 Press?
Off Light Bright

Press?
X>3

Solution: Add real-valued clock x

Embedded Systems 11
Schematic of a Control System
Many real-time systems are control systems.

Example: A simple one-sensor, one-actuator control system.

reference rk
A/D uk
input r(t) control-law
yk computation D/A
A/D

y(t) u(t)

sensor plant actuator

The system
being controlled
Embedded Systems 12
Example of a Real-Time Task
Pseudo-code for the control task:

set timer to interrupt periodically with period T;


at each timer interrupt do
do analog-to-digital conversion to get y;
compute control output u;
output u and do digital-to-analog conversion;
end do

T is called the sampling period. T is a key design choice.


Typical range for T: seconds to milliseconds.

Embedded Systems 13
Characteristics of a Real-time Task
 Task: A sequential piece of code.
 Tasks require resources to execute.
 Example resources: CPU, network, disk, critical section.
 Design: Choose resources; schedule and map tasks on
resources
 Job: Instance of a task.
 Release time of a job: The time at which the job becomes
ready to execute.
 Absolute Deadline of a job: The time instant by which the
job must complete execution.
 Relative deadline of a job: “Deadline  Release time”.

Embedded Systems 14
Example

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

= job release

= job deadline

• Job is released at time 3.


• Its (absolute) deadline is at time 10.
• Its relative deadline is 7
• Its response time is 6.

Embedded Systems 15
Real-Time Periodic Task
 Task : A sequence of similar jobs
 Periodic task (p,e)
 Jobs repeat regularly
 Period p = inter-release time (0 < p)
 Execution time e (maximum execution time; 0 < e < p)
 Utilization U = e/p

0 5 10 15

Embedded Systems 16
Schedulability – Analyze and Validate
 Property indicating whether a real-time system (a
set of real-time tasks) can meet their deadlines
 latency - worst-case system response time to events
 stability in overload means the system meets critical
deadlines even if all deadlines cannot be met

(4,1)

(5,2)

(7,2)

Embedded Systems 17
Schematic of a Cyber-Physical System

Embedded Systems 18
Internet of Things (IoT)

IoT is the use of Internet technology for


Cyber-Physical Systems

The term “IoT” includes the technical solution


“Internet technology” in the problem statement
“connect things”.

Embedded Systems 19
Why is Connectivity Important?
 Manufacturers can add value once their products
 Customers to remotely connect to, control, and monitor
their products – say through Apps
 Provide APIs to allow third parties to develop additional
connections to those products.
 Expands a product’s value by offering not only new
functionality but also new ways to interact with it
 Systems of Systems

 Make easy product updates


 Upgrades will increasingly be delivered via software
 Example – Over-the-air updates for Model S of the electric-
car company Tesla - Autopilot update.
Embedded Systems 20
Why is Connectivity Important?
 Allows value addition to services offered with products
 Services can take advantage of cached data generated
by an IoT product (and stored in say, the cloud)
 Combined with big data analytics, these services can
become the secret recipes that gives competitive edge to
a manufacturer
 Will help to draw conclusions from the past and make
predictions about the future
 Example – Could detect that energy consumption is too
high under certain conditions and find ways to improve a
product’s efficiency
 Example – Could help explain why a specific part is failing
often and suggest design changes to avoid the problem
Embedded Systems 21
Why is Connectivity Important?
 Predictive Maintenance
 Manufacturer could detect when a part is about to fail and schedule
maintenance during planned downtime

Embedded Systems 22
Why is Connectivity Important?
 Providing service to systems consisting of products from
multiple manufacturers
 Manufacturer or a third-party system level integrator could
monitor the performance of each device in the system
 Adjust device parameters and behavior to optimize the
performance of the system as a whole

 New business models


 Customer pays for proactive maintenance services
 Product-as-a-Service
 Customer “subscribes” to the product and pays a fixed
amount on a predetermined schedule, be that monthly,
annually, or quarterly.
Embedded Systems 23
Embedded System Development
 Functionality decomposition and modeling
 Architecture Selection:
 Choice of processing elements
 standard / custom / semi-custom HW
 Memories, Interfacing, communication

 Mapping of functionality to HW and SW


 Design of an integrated system
 Such that end-to-end performance goals are satisfied
 Prototyping, verification and validation

Embedded Systems 24
End-to-End Performance Validation
In RT systems, validation is almost always linked to satisfying
constraints on time
A control system acquires data at the rate on n samples per second
 Can we ensure that each data item will be processed in less than
1/n seconds?

Embedded Systems 25
Timing Analysis - Issues
Analyses timing behavior in the face of:
 Micro-architectural intricacies
 Resource contention among programs running on the same
processing element (uni-processor scheduling)
 Resource contention among programs running on different
processing elements (multiprocessor scheduling)
 Contention due to other shared resources; e.g. Last level caches
 Communication times over bus or interconnection network
 Asynchronously coming interrupts from peripheral devices

Embedded Systems 26
Books
 Embedded System Design – A Unified HW/SW Introduction
 Frank Vahid, Tony Givargis
 Introduction to Embedded Systems
 Edward Ashford Lee, Sanjit A. Seshia
 Embedded Systems and Software Validation
 Abhik Roychoudhury
 Hard Real-Time Computing Systems
 Giorgio C. Buttazzo
 Real-Time Embedded Systems
 Meikang Qiu, Jiayin Li
 Synthesis and Optimization of Digital Circuits
 Giovanni De Micheli

Embedded Systems 27

You might also like