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

EE-522: Embedded Systems: © Adeel Pasha, LUMS, Spring 2018

Uploaded by

junaid ahmad
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)
60 views

EE-522: Embedded Systems: © Adeel Pasha, LUMS, Spring 2018

Uploaded by

junaid ahmad
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/ 40

© Adeel Pasha, LUMS, Spring 2018

EE-522: Embedded Systems

Introduction
© Adeel Pasha, LUMS, Spring 2018

About the Instructor


 Muhammad Adeel Pasha
 https://lums.edu.pk/lums_employee/2985
 PhD in Embedded Systems and Digital System Design (EE/CS)
 from University of Rennes France
 MS in Embedded Systems (EE)
 from University of Nice Sophia Antipolis
 BSc in Electrical Engineering (EE)
 from University of Engineering & Technology Lahore
 Director Electronics and Embedded Systems Lab (EESL)
 Teaching @ LUMS since 2011
 Computer Architecture and Embedded Systems related subjects
 Core Subjects for EE and CS (Under)Grad Students

2 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

About the Instructor


 Some key research areas
 Design Automation of Digital Systems
 Energy-efficient Scheduling for Multi-Core Processors
 High-Level Energy Estimation Tools for Embedded Processors
 System Level Design for IoT Applications
 Efficient HW Implementation of DSP and Comm. Algos
 E.g. 5G Comm., Machine Learning, Image Processing
 Real-Time Monitoring and Control for Cyber Physical Systems
(CPS)
 E.g. Energy Efficient Routing and MAC for Sensor Networks / IoT

3 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

About the Instructor

 Office: 9-201A, EE Dept., 2nd Floor, SBASSE Building


 Office Hours: TBA
 Email: adeel.pasha@lums.edu.pk

 TAs: TBA

4 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Course Description
 Embedded Systems is a major class of computing systems
 Covers a wide spectrum of applications & devices:
 Communications such as PDAs, smart phones, mobile phones
 Avionics & Space exploration
 Automobiles
 Household appliances (Micro-wave ovens, refrigerators, etc.)
 In this course, we will get familiarized with the issues and
challenges faced by real-time embedded systems and their
evolution trends.
5 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Textbooks
 Real-time Systems Theory and Practice
Rajib Mall, Pearson Education, 2007
 Computers as Components: Principles of Embedded Computer
System Design
WayneWolf, Morgan Kaufmann/Elsevier, 2005

 Hand-outs for certain topics from different books

6 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Course Info
Pre-requisites:
 Microprocessor Programming & Interfacing (forced)
 Operating Systems (highly desired)

Delivery Method:
 Two lectures, 1.5 hrs. (TR) each
 Replaced by two lab sessions of 2 – 2.5 hrs. each, during
scheduled lab weeks
 1 Recitation of 100 minutes
 will be used mostly for lab assignment completion
7 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Grading Scheme

 Midterm 25%
 Quizzes (~6-7) 15%
 Lab Completion 17%
 Lab Attendance 03%
 Lab Project 10%
 Final 30%

8 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

CLOs – PLOs for BS-EE Students

Course Learning Outcomes

In EE-522 The students should be able to:


CLO1: Analyze the impact of real-time scheduling in centralized and distributed embedded systems designs.
CLO2: Analyze the tradeoffs when using real time resource sharing and real time communications in embedded systems designs.
CLO3: Port Embedded or Real Time Operating Systems (RTOSs) to various embedded development platforms.
CLO4: Develop device drivers for embedded OS (e.g. Linux) that would help them in their future embedded systems projects in industry.

EE-522 CLOs Related PLOs Levels of learning Teaching Methods CLO Attainment checked in
CLO1 PLO2 Cog-4 Instruction Quizzes, Midterm, Final
CLO2 PLO2 Cog-4 Instruction Quizzes, Final
CLO3 PLO3 Cog-4 Instruction, Lab Manuals and Demos Labs
CLO4 PLO3 Cog-4 Instruction, Lab Manuals and Demos Labs

9 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Course Outline: Theory


Course Overview
Recommended
Lecture Topics CLO Covered
Readings
1. Embedded Systems, introduction, issues, challenges, trends, etc. Chap-1 RTS1
2. Real Time Task Scheduling Chap-2 RTS
3. Static Scheduling Algorithms Chap-2 RTS
4. Dynamic Scheduling Algorithms Chap-2 RTS
5. Priority-driven Schedulers Chap-2 RTS
CLO1
6. Memory-mapped I/Os vs. Interrupt-driven I/Os, device drivers, etc. Chap-2,3 CAC2
7. Case Studies of RTOS(s), Posix, Unix, Windows embedded, embedded Linux etc. Chap-5 RTS
8. RTOS, processes, threads, context switching, process synchronization,
Chap-5 RTS
interrupts, etc.
9. Device Drivers: Linux Hands-outs3
10. Aperiodic Scheduling Servers Hands-outs3
Midterm
11. Resource Sharing in RT Tasks Chap-3 RTS
12. Scheduling RT Tasks in Multiprocessors Chap-4 RTS
CLO2
13. Real time Communications Chap-6 RTS
14. Real time Communications: Routing and Rate Control Chap-6RTS
15. Real time Data bases Chap-7 RTS
Final Exam

10 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Course Outline: Lab


Practical Work
Recommended
Lab Topics CLO Covered
Readings
Getting familiarized with EasyPIC V.6/7 development board, PICC compiler and
1.
RTOS APIs
2. Developing an application using EasyPICV.6/7 boards and the RTOS APIs
Installing Virtual Machines using Vmware or VirtualBox manager, installing Hands-outs3 CLO3
3.
Ubuntu (Linux) on VM, Linux kernel compilation
Understanding device drivers and developing “misc”, “char” type drivers for
4.
Linux desktops
Midterm
5.
“Taking it to the board”: Preparing mini6410-board by compiling kernel,
6.
installing Debian® and related development tools
7.
8. Writing your first device driver for mini6410 board
9. Writing driver for ARQ interrupts and using timer for PWM generation Hands-outs3 CLO4
10. Developing complete embedded application using device drivers for GPIOs,
11. timer interrupts and QT-based GUI interface.
12.
Working on course project
13.
Final Project Demo (before dead week)

Note: Labs and theory will differ in content coverage since theory covers basics and research aspects of real-
time systems while lab is designed to build skill-set required for embedded job market. Each lab will have a
significant lab lecture at the start of lab session. However, there will be significant amount of self-learning.
11 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

EE-522 Term Schedule


W2:30/1 W2:01/2
W1:23/1 W1:25/1 W3:06/2
Static Scheduling Dynamic Scheduling
Intro RT-Scheduling Aperiodic Schedulers
Algos Algos
W3:08/2
Mem-mapped I/Os, W4:13/2 W4:15/2 W5:22/2
W5:20/2
GPIO etc. Lab1 Lab2 Linux Device
Commercial RTOS
Resource Sharing (EasyPICV6/7) (EasyPICV6/7) Drivers

W6:27/2 W7:08/3 W8:13/3


W6:01/3 W7: 06/3
Lab3 Resource Sharing in Lab4
Commercial RTOS Resource Sharing
(VM-Linux Kernel) MP (Mini6410)
W9:27/3 W10:05/4
W8:15/3 W9:29/3 W10:03/4
Lab5 Lab6
Mid term RT Comm. RT Comm.
(Mini6410) (Mini6410)
W11:10/4 W12:17/4 W12:19/4 W13:24/4
W11:12/4
Lab7 Lab8 Lab9 Lab10
RT Databases
(Mini6410) (Mini6410) (Mini6410) (Mini6410)
W13:26/4 W14:03/5 W14:05/4 08/5
Lab11 Lab12 Lab13 Lab14
12(Mini6410) (Lab Project)
EE-522: Embedded Systems
(Lab Project) (Lab Project Demo) 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

EE-522 Term Schedule


Schedule for Lab Sessions (Week: 4, 5, 6, 8, 9, 10, 11, 12, 13, 14)
Day Time Venue
Tuesday 5:00pm – 7:30pm EE LAB – 2/7
Thursday 5:00pm – 7:30pm EE LAB – 2/7

• Pre-labs or pending tasks are to be completed during


• Priority 1: Recitation slot (e.g. let’s say Friday 2:00pm – 3:50pm) in EE LAB – 2/7
• Priority 2: Any free slot available to students in-between the lab sessions

• EE LAB-7: Embedded/DSP Lab (on the right side of Asif Sb. Office)
• EE LAB-2: Microprocessor Interfacing and Digital Circuits Lab (on the left side of Asif Sb. Office)

13 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2017

Introduction to Embedded systems

14 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Computing Systems Today Massive Cluster

Gigabit EthernetClusters

 Microprocessors in everything
Clusters

Internet Servers
Connectivity
Databases
Information Collection
PDA
Remote Storage
Online Games
Sensor E-Commerce
Nets Cars …

Robots
Routers
15 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Classes of Computing Systems


 Desktop Computing
 First and still the largest market in monetary terms
 Well organized in terms of applications and benchmarks
 Cost-effectiveness is the most critical compromise
 Price vs. Performance vs. Power

16 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Classes of Computing Systems


 Servers
 Provide large-scale and more reliable data bases and
computing services
 Reliability is the most crucial characteristic
 Scalability is another required feature
 Computing capacity, storage, I/O bandwidth, memory

17 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Classes of Computing Systems


 Embedded Computing
 The fastest growing portion of computing market
 Vastly deployed from automobiles to smart phones and
gaming consoles
 Constraints
 Price
 Real-time performance
 Power consumption
 Memory (chip area)
 Reliability (Mission Critical Systems)
18 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Embedded Systems Applications


 Communications
 Multi-media
 Manufacturing
 Consumer electronics
 Health care
 Defense and security
 Software
 Automotive

19 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Embedded Systems Applications


 Historically
 Micro-processors were expensive
 Limited applications: defense and space mostly
 Today
 Most probably every appliance you touch (IoT naam to suna hoga!)
 Consumer electronics (microwave oven, AC, refrigerator)
 Modem, PDA, Mobile phones, Cameras
 Smart power grids (smart meters, intelligent switches, etc.)
 Video game consoles
 Fax machine, laser printers, PABX
 Industrial automation
 Space, avionics, automobile
 Internet routers, switches in cellular networks
 Robotics (embedded control)
 Most of them have real-time requirements
20 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Trends in Computing Systems


 70% of all processors built today are destined for
embedded systems
 Even multi-cores: e.g. Quad-core1.4 GHz ARM Cortex-A8/9
 Why?
 Moore’s law!
 Transistor is cheaper => Processor is cheaper
 Cost-effectiveness: couldn’t afford a Rs.10,000 processor in
a Rs. 20,000 Microwave oven
 Now, embedded processor IC < US$ 10.0 (in bulk < US$1.0)
 PIC18F452 = ~Rs. 400

21 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Moore’s Law No. of transistors on cost-effective integrated


circuit (IC) doubles every 18 months

From Hennessy and Patterson, Computer Architecture: A Quantitative Approach, 4th ed.

22 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Trends in Computing Systems

23 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Trends in Computing Systems

24 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Trends in Computing Systems

25 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Trends in Computing Systems

26 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Trends in Computing Systems

27 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2017

Real-Time (Embedded) Systems

28 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

What is Real-Time?
 Real-Time means quantitative notion of time
 There is a physical mean to measure time
 Say, a physical clock
 Example: an automatic fire-extinguishing system

 Logical Time: qualitative notion of time


 Described with event ordering such as before, after, during,
succeeds, precedes
 Example: Query from a web-server or data-base

 Does a real-time system have all notions quantitative?


 No!! But at least some parts have quantitative notion of time
29 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Examples of Real-Time Systems


T1 T2 T3 T4 T5 T6

30 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Examples of Real-Time Systems


 Automated Industrial Plants

 Robotics: Line tracking and Obstacle avoidance

 Automotive: Electronic Fuel Injection (EFI)

 Safety Critical Systems: Flight-Control, Missile Guidance

 Video Conferencing & other multi-media apps


31 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Basic Model of a Real-Time System

32 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Basic Model of a Real-Time System


 Sensor:
 Physical characteristic of a phenomenon  electrical signal
 Actuator:
 Inverse function to a sensor
 Conditioning Units:
 Voltage amplification
 Voltage level shifting
 Sensor generates -0.5V to +0.5V, Processor needs 0V to 1V
 Frequency range shifting and filtering
33 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Basic Model of a Real-Time System


 Interface Units:
 AD and DA convertors

34 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2017

Real-Time System Characteristics

35 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Real-Time System Characteristics


 Timing Constraints
 Deadline-constrained Systems
 You and your assignments 
 Delay-constrained Systems
 Dialing a phone number on a landline phone
 Duration-constrained Systems
 Forced shutdown of a PC/Smartphone
 Responsibility of Real-Time OS (RTOS) to ensure timing
constraints
36 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Real-Time System Characteristics


 Different Correctness Perspective
 Difference between real-time (RT) and conventional system

 Embedded

 Safety-Reliability
 Safe: A system that doesn’t cause damage upon failure
 Reliable: A system that works for long durations without failure
 Can the two be related??
 We will come back to it!
37 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Real-Time System Characteristics


 Concurrency
 A RT system must handle several independent events within
very brief time bounds to ensure success
 Distributed nature
 in control and architecture
 Task Criticality
 The cost if a task fails varies according to the task
 Heavier the cost, more critical is the task
 More you should make it reliable
 Failure detection and recovery should be faster

38 EE-522: Embedded Systems 1/23/2018


© Adeel Pasha, LUMS, Spring 2018

Real-Time System Characteristics


 Reactivity
 On-going interaction between computer and environment
 A RT system can be considered as non-terminating system
 Satellite Systems, Automated Industrial Plants

 Stability
 Under overload conditions, at least critical tasks should meet their
deadlines to keep the system stable
 Fairness can be sacrificed
 Non-critical tasks may miss deadlines
39 EE-522: Embedded Systems 1/23/2018
© Adeel Pasha, LUMS, Spring 2018

Safety and Reliability: A Closer Look


 Non-RT systems: Safety and Reliability are independent
 A word processing software (might be unreliable but safe)
 A handgun (might be reliable but unsafe)
 Fail-Safe State
 If system enters this state upon failure, no damage would be done
 Every non-RT system has ≥1 fail-safe state(s)
 It makes an unreliable & unsafe system into a safe & reliable system
 Examples:
 MS Word when crashes, saves the last modifications
 Traffic signals
 Fail-safe state??
 Every RT-system does not necessarily have a fail-safe state
 Failure of the system can cause severe damage  safety-critical

40 EE-522: Embedded Systems 1/23/2018

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy