Embedded and Real Time Systems Lecture #2 David Andrews

Slides:



Advertisements
Similar presentations
© Alan Burns and Andy Wellings, 2001 Real-Time Systems and Programming Languages n Buy Real-Time Systems: Ada 95, Real-Time Java and Real-Time POSIX by.
Advertisements

EE5900 Advanced Embedded System For Smart Infrastructure
Real-time software Sommerville, Hfst. 13. Sommerville, Ch. 132 Real-time systems A real-time system is a software system where the correct functioning.
Real-Time Embedded Systems
Lecture 11: Operating System Services. What is an Operating System? An operating system is an event driven program which acts as an interface between.
INSE - Lectures 19 & 20 SE for Real-Time & SE for Concurrency  Really these are two topics – but rather tangled together.
CS599 Software Engineering for Embedded Systems1 Software Engineering for Real-Time: A Roadmap Presentation by: Mandar Samant Raghbir Singh Banwait.
1 of 30 June 14, 2000 Scheduling and Communication Synthesis for Distributed Real-Time Systems Paul Pop Department of Computer and Information Science.
Embedded and Real Time Systems Lecture #4 David Andrews
Embedded and Real Time Systems Lecture #2 David Andrews
Chapter 13 Embedded Systems
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Real-Time Systems and Programming Languages
1 Chapter 13 Embedded Systems Embedded Systems Characteristics of Embedded Operating Systems.
EMBEDDED SOFTWARE Team victorious Team Victorious.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 15 Slide 1 Real-time Systems 1.
Embedded Software Design Peter R. Wihl (former Guest Lecturer)
Distributed Real-Time systems 1 By: Mahdi Sadeghizadeh Website: Sadeghizadeh.ir Advanced Computer Networks.
Computer System Architectures Computer System Software
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Real Time Process Control (Introduction)
Real Time & Embedded Systems Lecture 1: Real Time Systems Software (RTSS) RTSS: the software half of the Real Time & Embedded Systems unit What do we mean.
INTRODUCTION TO CLOUD COMPUTING CS 595 LECTURE 2.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 16 System Architecture and Design II.
Task Scheduling By Dr. Amin Danial Asham.
Introduction to Real-Time Systems
1. Introduction 1.1 Background 1.2 Real-time applications 1.3 Misconceptions 1.4 Issues in real-time computing 1.5 Structure of a real-time system.
© Wiley Chapter 2 Operations Strategy and Competitiveness Operations Management by R. Dan Reid & Nada R. Sanders 2 nd Edition © Wiley 2005 PowerPoint.
CS4730 Real-Time Systems and Modeling Fall 2010 José M. Garrido Department of Computer Science & Information Systems Kennesaw State University.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
Real Time Operating Systems Introduction to Real-Time Systems Course originally developed by Maj Ron Smith 17-Oct-151Dr. Alain Beaulieu.
1 of 14 1/15 Synthesis-driven Derivation of Process Graphs from Functional Blocks for Time-Triggered Embedded Systems Master thesis Student: Ghennadii.
Multiprocessor and Real-Time Scheduling Chapter 10.
Chapter 101 Multiprocessor and Real- Time Scheduling Chapter 10.
 Architecture and Description Of Module Architecture and Description Of Module  KNOWLEDGE BASE KNOWLEDGE BASE  PRODUCTION RULES PRODUCTION RULES 
Architectural Design lecture 10. Topics covered Architectural design decisions System organisation Control styles Reference architectures.
Reference: Ian Sommerville, Chap 15  Systems which monitor and control their environment.  Sometimes associated with hardware devices ◦ Sensors: Collect.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Introduction to Real-Time Systems.
Project Portfolio Management Business Priorities Presentation.
Real-time Software Design King Saud University College of Computer and Information Sciences Department of Computer Science Dr. S. HAMMAMI.
Embedded and Real Time Systems Lecture #2 David Andrews
CS4730 Real-Time Systems and Modeling Fall 2010 José M. Garrido Department of Computer Science & Information Systems Kennesaw State University.
O PERATING S YSTEM. What is an Operating System? An operating system is an event driven program which acts as an interface between a user of a computer,
1 CS145 Lecture 26 What’s next?. 2 What software questions do we study? Where is software headed?
Introduction to Embedded Systems Rabie A. Ramadan 5.
Real-Time Systems, Events, Triggers. Real-Time Systems A system that has operational deadlines from event to system response A system whose correctness.
Embedded Systems Design 1 Lecture Set 8 MCS-51 Interrupts.
Real-Time Operating System Design
For a good summary, visit:
1 May-2014 Automotive Protocols & Standards. 2 CAN (Controller Area Network)  Overview Controller Area Network is a fast serial bus designed to provide.
Discovering Sensor Networks: Applications in Structural Health Monitoring Summary Lecture Wireless Communications.
1 Maintenance Management. 2 Equipment Malfunctions l Equipment malfunctions have a direct impact on: l Production capacity l Production costs l Product.
Embedded System Design and Development Introduction to Embedded System.
Chapter 1 What is Simulation?. Fall 2001 IMSE643 Industrial Simulation What’s Simulation? Simulation – A broad collection of methods and applications.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 5:Architectural Design l Establishing the overall structure of a software.
CONCEPTS OF REAL-TIME OPERATING SYSTEM. OBJECTIVE  To Understand Why we need OS?  To identify Types of OS  To Define Real - Time Systems  To Classify.
Real-Time Operating Systems RTOS For Embedded systems.
CHaRy Software Synthesis for Hard Real-Time Systems
Real-time Software Design
Lecture 1: Operating System Services
Wayne Wolf Dept. of EE Princeton University
Real Time Operating System
Real-time Software Design
Introduction to Realtime Systems (& Embedded Systems)
Tiny Computers, Hidden Control
CS 501: Software Engineering Fall 1999
Multiprocessor and Real-Time Scheduling
CS703 - Advanced Operating Systems
Presentation transcript:

Embedded and Real Time Systems Lecture #2 David Andrews

Centralized vs. Distributed Systems Centralized vs. Dispersed vs. Distributed Determined by granularity and distribution of computers Centralized One computer, single set of I/ O channels “Old- style” embedded systems before cheap microcontrollers Common in jet aircraft engines OOoOOo actuator sensor CPUCPU

Dispersed Clustered compute+ I/ O modules “Several” computers (often 3- 10) Each computer has fixed I/ O capability, with a “few” channels Common practice in vehicles (engine, transmission, dashboard, …) Car Parts S A A A SS S SS S SS A A A A A A Engine CPU Trans CPU Ejector Seat CPU Network

Distributed Individual compute+ I/ O modules “Many” computers (dozens or hundreds) One (or a “few”) I/ O channels per computer – Controls a single physical item – “Smart” sensor/ actuator -- I/ O- centric instead of compute- centric Only now becoming widely used (especially building automation) cc Car Parts s a cc s a cc s a cc s a cc s a cc s a Network

What Is “Real Time”? Real time is not just “real fast” Real time means that correctness of result depends on both functional correctness and time that the result is delivered Soft real time Utility degrades with distance from deadline Hard real time System fails if deadline window is missed Firm real time Result has no utility outside deadline window, but system can withstand a few missed results

Typical Real- Time Embedded Characteristics See table 1.2 for summary

Fail Safe vs. Fail Operational Fail safe systems -- when in doubt, turn off Radiation therapy machines Car engines Power tools Nuclear power plant SCRAM system In general, things with a readily attainable safe condition Fail operational systems -- when in doubt, keep working Aircraft engines Military combat systems Difference is not always clear- cut Should an elevator move or not move with an open door in a fire? Pacemaker with a possibly faulty sensor Outcome generally decided by lawyers and liability insurance underwriters

Guarantees vs. Best Effort Guarantee – 100% certain Generally corresponds to hard/ firm real time systems ( e. g., spark plug timing) Can be wasteful; must reserve capacity for worst case Generally ignores possibility of equipment failure (so it’s only …%) Best effort – 0% certain Used in soft real time systems Can be more efficient, but breaks in the worst case Hybrid systems (research area) Provide guaranteed response as a fall- back strategy in the worst case Provide best effort in the average case

Event- Triggered vs. Time- Triggered Event- triggered Computation/ communication responds to an event Events happen whenever they want to happen Think “interrupt- driven I/ O” Efficient -- only do things when they need doing High peak load -- what if all possible events happen simultaneously? Time- triggered Computation/ communication responds to a system clock time Events happen according to a schedule (fixed or changeable) Think “I/ O polling” Inefficient -- do things periodically whether they need it or not Easily characterized load -- a spreadsheet can schedule the whole system

Review System includes many pieces, including the user Key issues are observability & controllability Latency is critical for stable control loops Degree of centralization is a tradeoff Trend is to decentralize as silicon becomes cheaper Real- time systems are more than simply “real fast” Typical tradeoffs with safety, guarantees, resource constraints, triggering Time-“ triggered” really means “periodic”; event- triggered means asynchronous Embedded computers are spreading everywhere Next lecture: Flight Controller Architecture